diff --git a/src/chainparams.cpp b/src/chainparams.cpp index cc13cc692b..bbb337bbb1 100644 --- a/src/chainparams.cpp +++ b/src/chainparams.cpp @@ -486,7 +486,7 @@ class CCustomParams : public CRegTestParams { consensus.signblockscript = CScript(sign_bytes.begin(), sign_bytes.end()); // Default signature size is the size of dummy push, and single 72 byte DER signature consensus.max_block_signature_size = gArgs.GetArg("-con_max_block_sig_size", 74); - g_signed_blocks = gArgs.GetBoolArg("-con_signed_blocks", false); + g_signed_blocks = gArgs.GetBoolArg("-con_signed_blocks", true); // Custom chains connect coinbase outputs to db by default consensus.connect_genesis_outputs = gArgs.GetArg("-con_connect_coinbase", true); diff --git a/test/bitcoin_functional/functional/test_framework/util.py b/test/bitcoin_functional/functional/test_framework/util.py index ed16741f6d..a90d19a3b1 100644 --- a/test/bitcoin_functional/functional/test_framework/util.py +++ b/test/bitcoin_functional/functional/test_framework/util.py @@ -310,6 +310,7 @@ def initialize_datadir(dirname, n, chain): f.write("con_connect_coinbase=0\n") f.write("anyonecanspendaremine=0\n") f.write("con_blockheightinheader=0\n") + f.write("con_signed_blocks=0\n") f.write("walletrbf=0\n") # Default is 1 in Elements f.write("con_bip34height=100000000\n") f.write("con_bip65height=1351\n") diff --git a/test/functional/data/rpc_getblockstats.json b/test/functional/data/rpc_getblockstats.json index 5b9c51dcc6..a35eb10e38 100644 --- a/test/functional/data/rpc_getblockstats.json +++ b/test/functional/data/rpc_getblockstats.json @@ -1,117 +1,117 @@ { "blocks": [ - "010000000000000000000000000000000000000000000000000000000000000000000000b06696878794563cc591e4185f99a217001cbfc0b2f19998ee3e2866e775212ddae5494d00000000ffff7f20020000000101000000010000000000000000000000000000000000000000000000000000000000000000ffffffff2120b304aafc7606a923a709600e7f6192e96441dc453629f2fe4dd31d18095b27a5ffffffff010000000000000000016a00000000", - "000000205bab2249c4cd12490b257cc9f6368eca98a8fe2a088f1dbc1882b6f7fce0f008c51fcd6ee31f1addee393fa60f7959e2f511807d2ab104b8ce7965fc066ba9675edb125c01000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03510101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020fc6b4c8356573f5f0361efa1e9765030bfaaa51a5fe0b06514e56e383036565400be842fd15bcbe80c97c7028546d9c7cdf9698f581cec1b53144e72a075a5a55fdb125c02000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03520101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020caf55e7481a161310c2d26cb63bb8e9c576d572b6c72e5ae9f6ba81c1dc01d121731a841cc72f59726e3eec37cb255147c768a2b843f618dbff5646c0e1b0f625fdb125c03000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03530101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000206c80116d6ffab41449423fe9df497b4e3042bd39ffae00a6dfcfac5933d4740b8fbd69bc6c2503081f52f544eac75c6db38cbc831500a260fcc60f8d3dc6104c60db125c04000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03540101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020e2eaa3374ba400d937615a0ddb9ef069b98be19099511b7951191b7650f798589fa2a45f4e9dffb28b594ce24e9a81b396a9526d7921ce6485d4d795b73ba34f60db125c05000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03550101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020a98c8be87bdc92924653cad2a9763f9080bede7aab51ef34fafcf4433134c7128d698d2a67bfa58e3a8c4ea9a7e30931e37ec251651589ce74024121414b943060db125c06000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03560101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020db868e1d9c21850eb5b83383294410588ff53ed681a679ef5b25d7a9c3f91624d711660a655dce5894f39fa9073e439db74e5bf469308273bc538bea280c814560db125c07000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03570101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020051b74ec38b204b1e9e09a8b7d9754b9119cde088744de4e3405410a15942e5a98b15c55b37b8cef7cd07f0c971f75292b893974786a216043bb31556eed042461db125c08000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03580101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002079c17a4e793dd45f9bd98af98cbcf95b32d95f02ac19d0beaed856d2f9087f2eea2cac3be3e1b3f1ac6f0e6afe83230c67b8c1bc4aff89e6a3a980b333feb05a61db125c09000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03590101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020ee8386e549cbc8cd9f7250d19f50937587d372fd6d2e858b1ce1c01a9299574656bf0d2f28ed14ef9cd57d78c8e519731e0b6f6f2dcf08206797124152db032961db125c0a000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff035a0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020f89ecf631f7b05e1b47f3d57a683b385ec694857bd54552f7c39e6f00e274a23cd850303798046196f5459f11c5590a795cbe15d5bc34af1672e5fe26822240561db125c0b000000ffff7f200500000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff035b0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020da530df70106660d2247600d44f32120d628311d184339e6aa67d2afd10d826b2adea4ee012f1d35ec07b55466ae6c42613050667d9746def512b7850e76eb9061db125c0c000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff035c0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020d109a5967b919ebb61ccb2742fa1f52312611add0ab401a9c8a4a0aedcf8ee568eaf6fc54e222d3767fc2c6567d9164520e1fa9febf30c767b9c7d1fc94e070461db125c0d000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff035d0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000200ffb2eccd6113e283ad5406c6f7d8aa5414a0404146bbb4b04604cd307c1b510c4585ebf14c63daf2b7d3916e672f195fcf454561cb8c93635c457874cdf929b62db125c0e000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff035e0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020c85ad4d8b52afb671a247a5bbc9735093020dcbe1b2c729a328d35efdfb20621539517013ff66bc4584a5eaf8a7049a60584578fdbbdbdebd7e7e68c96f3739e62db125c0f000000ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff035f0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020829d293348a094e965b2c403f8e0593bac11a05a796f07b1b9d981b6c0cd63158bf928b1790f4b650c142155e4af347c51a0619860210d188132e599711f08b062db125c10000000ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03600101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000209f3cab28ebcb6f9c0ad44462ad7059456a0b1581700ba3023323d2c019300d5996dd8d045f4644edb04860e55d93f1f2d14a949b4c730d82a55f63e3e3346fc462db125c11000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401110101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002029b9988c51a7ca6a7e87a576b38a4262c1b80a7fb6fa03609f44ed118c1a1f3119274dd5850bced63055776ad47ef50b53e9bedc6f4546eb5bd91fefc1e2316462db125c12000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401120101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020eeb7ad1cc7c9c8c8a96b031c4cf67e00e07cea6cac60eab5b7a022737433d6790ae4d2e0acb9e75141e619a99697104dad69932111d3c0127e2adde9b18f2f8f62db125c13000000ffff7f200400000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401130101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020d5e365634698f7e7428cc747a39d45859d2b4adbf3d1034c3ec7232581fe007b730d9b0a06e9037a43cba4b00f1ceb9e79e29b82911ba186c7efd7a578ec0fe763db125c14000000ffff7f200300000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401140101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020fec5044d1761356697b91318272998bd9a0e65b9770a35b8d74cfeeba62af41d0315863809144e5a5642405108cd98cf23532bc2d88cac9a2aec3200f75a0b1463db125c15000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401150101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000202d77fc3aba173cfcd5dbc7b61e05ea429b5f014f2071b26c8cf37474eb4dca35f7a7a405e05ef3722dc8afd58fbe6d87f80a5d6bec7cd5fa908bd1cc65ebb5e663db125c16000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401160101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000206c7eb565881c9ea612a63684ef578eb77f811246ceb01c4e66caa951ce4e012b48d909ef99ca2385380af12b72b95f6bf322e8d330d3c49543b720fffc3a287463db125c17000000ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401170101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002052b5c9ee61eb640896ac44b07b304e2904a45912f9fc1200efa852805e947556ee7218091cdd753abfca65a403eab02346d7f18dcd2c3c130f8cec4d443541bd63db125c18000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401180101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002094d8f46da8dc13e31c02d6182a1630cdc58e906dc1a291196c34cab7b3917e53740025cee4777bcbae87f4f1083600feecc845ba5684f543f5a2d08983f4532f63db125c19000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401190101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000209a2a87f10062a9e08a256783f63c3a781cde26a43c047f4119be6cc92b89691f32d994825d4d30844e0a8a0825175b44856ce7bd425d51bb751e069661960f6064db125c1a000000ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04011a0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000204171d1f719712ff66406e528bc876096574caffc3ccd53c4eba8e1466448711c2bba0fb2eda87fffce60543825597c810899e18435d7be937a798d9e241dc62764db125c1b000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04011b0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020129e3675ddea8673eaec7ae33fdbd3572787a1955e490dc8423f1a9c1f47200976bfdbb341ff3c523c7cac0a3f5b808d65887e101b2c0f92505674a8013176a764db125c1c000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04011c0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020919068e73a7e7b59ba39354213ca25d99cdfde0c402e11f30a1c3412b640b56c4967dfe9ccc44ffa3648ef9c5d7e53a69a4a33b1fab24c67b58097ede555a45264db125c1d000000ffff7f200900000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04011d0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000203a357597ca1b50f3f89180b64702e53b88cd102ed384302e9e6e0b134914e801dd21ff5fc6328dd77c7d0c3292903c8a8b0c8ca87f21b0ad1d075989c3073aca64db125c1e000000ffff7f200500000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04011e0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020d81e3233c4f23ab47452cc5e35e0c87280f638ff07c9ad4bea4b3dd50daff54383fe76df6edf8425919a6d41d33baff6cbf8ea33fbe29a9089b0018593bf9cb964db125c1f000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04011f0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000203cdb0db44912853a88ed69e5c1fb4a5852b6276f72549232cf4fd8a4c48e984f094407821b7475a88aec22405863bc52fb7d5faa3d02f0bda2862bc46ef0acb265db125c20000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401200101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020d36c197f39d24173601e7f6ef5290744e468284725e7c7b0a25f1687d458e00f77a7ae6bec0d3b304a83910b8a3d34de44efcc0989cd7d1a920bbd4743b53ab865db125c21000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401210101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020d25e06d2d8493d4472fb1321358bbea1ef1c72c1681118f15dc89a820af84b2820e84c4d104aa5f72ad9ffd19ff5853baaedd4a9d31e57f460741e08d19a7ef965db125c22000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401220101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020a59a766b625b52f32e0739de579edf70f398c2603bd3e39de74e5d6b5e476b3cfc7c461f1f4f03b0e1ebc81660ed01e243e6156d5afbe44f0bb4479628a7caf265db125c23000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401230101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000202e2748fbc7854a682eb392a5c53dc73532ddb29b630a6269ca5e3cba6246193cb71ab86f213eee5dc9eb14a53dd2cd792fcf772e90ea839e7cb86993649187f265db125c24000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401240101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002044d1174fcf56be5e7d166f82649f5a904ce01a5b385b78c5c233b7064631331d3339a90275d55f886566f146fc94299e7f3c8c0b8f1bbde48661507d65a0ccc965db125c25000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401250101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000202784720c0f8ba680644d4ec69d7bc40d83313ebd29404565f97ccc7f9332cd0a74290264f8dcaf74a6558c138acfa280d679c21364bddfe41a7f0df31837058866db125c26000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401260101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020ecd1d58df584959a6d46b6f8430a6b5a6a53e98f6620ed795404502f9c29312e8de85af8f6d3cdea06a5bf5d7b75c093c1a847ae4a85bfc818f06db3a2776e1066db125c27000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401270101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020513e563665230699514a651784c47b112442790c0ebd92e3ff77cf4c01b81032a3a42c86533a04e3c818bda87371452b0df58297e2c8f0516a1694f727f32f3966db125c28000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401280101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000207328bb1817decca3273fb4515abc6471dfb2d2edb346718d7b1d5b0819035e2d92f8f01dda4f10a031209c5783e5f15b4ebebcad762d85fed06a2c7c5ddc2f7966db125c29000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401290101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000209c2bd32f84f04b25867a60e92316bb7fa0ccc3acc6d3530c08487606856964003d749f00f0ad869d2ee8946376407bc8bcb96ac0dab7492bc6b3718d892adc8266db125c2a000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04012a0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000207bd00b9b862005040b3d2b88a11928959589a52589d72548d0c5fb220c4a7303bf366dcd343914bc9a15ba47731103d92f675c0b6894fad65194a1f6d811de5b66db125c2b000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04012b0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002063e431d9d2c2c13f5e2348cf3c27ba3ea6546fb420962e0a18d1bb5c24ec3f096f40099c62954254fe466128e0274165d45900deab868b98800d5287b9388d5567db125c2c000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04012c0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000209dd691523a6bafa70e8cf0a10c3b4aba05b88bbfb0c130fe12a43c5712c980783507826ca1ec4ee6701915442ddcc84de5009f25d9b83177cd45491cf50a8ee367db125c2d000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04012d0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000206788bfd0495430272be7e21474d3712d4bd59b75fd6428e775afd22d6f5afb7f4b985f57aaf222afb9761a6bf2f7fcc84ed78074744764bd99366efce690c96d67db125c2e000000ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04012e0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020304109a3942cca7bc6172a371ad06ed783c050c3268db0c6b5cb4f34c47185108ffbbc7902e09fe858cc01e63560815b8ec231c926398d616f4d88439e9c1f5367db125c2f000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04012f0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000209f0ce8651c309dfda9bc4a320dd094b845fe65942782aedb4939445b7c35284cabf8ae9e6432bfb1246d33229d47d52281b96c3ea92813d76846e4da47a63cbb67db125c30000000ffff7f200300000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401300101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020ea2a1c996e3d9d4e2aab0ed0d569271975efd8dd9f23f61aff6a4af5240f436646a5a29d13bf48c31d6c0e4e3eaf2021ff0daf730eaabb4d217fcbe3f72f2c0767db125c31000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401310101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002039bfa34253b64bd8a9c8f74940958e27e748f716fa0c0beee66cd783a811d23fd18dbbfd2740c7e49f8d199879c52861fc37e65f70b6d3422c7d764c6658c70c68db125c32000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401320101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002064fe9ce60752ae54d5dbc02ea51cb85de64716b5e650782243025ecb100ccc40a6c36097462df078f4b5095837467fa9db3fe433062238908d33dacfefc4867068db125c33000000ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401330101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002079e26f4044764cb84eb48b3d2dcc61014beffd127e3667d9f4c83b337148bb312ce228c65d68babd65506bea2219ad16aaf03620ab56c1b2548f5ef592ec220c68db125c34000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401340101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000207bc773705a6d6ac93145e9d3f89e8e269391672d230df083f191fddb87f0541d6ded328fcd2d3481ae37fab141bd44ce6814e16934065f0c59e824b352646dc268db125c35000000ffff7f200400000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401350101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020d9135f073717f0b8bf5587f1cb5855e6d88a4ccba0bbfebbb8b4a6db4ce354195ccddea97f7d9927a878ab8073698cc3bc30e3bbb6d4a4c3ef8903e90cfeabce68db125c36000000ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401360101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020df8a4367df0afc14e27c927cd0bc26b22bc5bb0ca4fe9a2c93077b054405c12d61e124bf9dbc64b25f1fefbdc908e9463992472e2da29a111d3c08619b5b3cbf68db125c37000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401370101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020d7bfd4eb220b37bb7dfa5a79c6d64d3250f13f19805ce6407bcd6c2d450e2630d2d6e71b111cab48da691bc26054d750fff45a171c0071d7dee32053677e8d6f69db125c38000000ffff7f200400000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401380101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000200494067adfdf1748d0993d431879df2f347f8c8acbe7d65c6eb291598b8ccd20c9c111ab0631f071db7acfbbbfb50f0290907260b80bc8edd4687bdda7cad9b569db125c39000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401390101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020c7056602d4f8814cd487c320f0370fc97de89ce9b93e0879fb87158bef0d0d4442e9711285ddb44c1261d0cbde57ec17a333c5e7e2293a24d374d97088c66b7f69db125c3a000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04013a0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002008cc74a9c9488c14e5b12d9db10e6307384ae5e3f48ec12e67c76b370203242ade32601938bc64d77c925a951d4f6b24302ec7b813b720ab0fae52b9dd3dd93e69db125c3b000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04013b0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000209f45a34059b7152b7b12b972629e587bc713aba8344915336d2a4b1766269a46253aaf754db1d39cef5e66966d31d8cd97745a2d25d7f49bd26d10227a67a82769db125c3c000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04013c0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020814bec4764ca313b620eb2f2948b198e6bd675242731479ee29f3acbf363fd7034e002ac415f66387f001376651a0f8b13adfdb2e7c6d6e85d6722d2caed67c369db125c3d000000ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04013d0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020e0c30585c41b2e28e673577dbfb050e0114ff51930e2713dca9c7c73478be4037bac776fc7f4fa9f512460be2f0bf094d35ef42464f059b842440f9c8945a0096adb125c3e000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04013e0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020988d19d3887b321240964cbbec8593509c97b6edaa6b15673868f67117d85027da8c07d691f3f02e72da4991066a1b23305adf5e09ce4280ad625a372e6999ee6adb125c3f000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04013f0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002093067ef5d576711e0e92db2f15ef607b76b8cb717fa327dd0f69042d14da8159d4f9789f5c75ea0453ab959455a94df060fedad42d1697f66c9e8ee0391e39646adb125c40000000ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401400101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000208edb6631b389e779f5e7e13a4b4728a5f80cc7e55fa41ad342d31e760f40be7654459551c6317a4a00ac7b438f4423765e060588976422d20d282c93ac2d04c26adb125c41000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401410101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020ceda3165683ca96395589ac7453eb2296997a72f1afb310de694e8555d6da01620369ff68d15b873cc83b0e0a872d8ea07e7beb6b3bb018eb9f92e842136f7176adb125c42000000ffff7f200500000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401420101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020da86283d709899587ab2efa07a85623b28e06ca365b30465a44b83bee972d13f1e70a3737eb68bdf24e6409e71fa62cc69cf3fa4cd4c1fa3b7e317f527bf996d6adb125c43000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401430101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000209a8e7637569689f8f5af94289db426a81225eca23119a5ca0934621b157dfa4c898dc031aed880dd980044a1b2ac9a38891cd98eefcd61da510c82c901b5663c6bdb125c44000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401440101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000207b9f7f2c1a40813346d1453c87141526fa32969c96c083c5e07c730111048431df042b72be26caf246e20aa4402b25e0d94617cbf8b5b29c672f778e8b2e7d056bdb125c45000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401450101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002015c192e8ddb4816cfda116125c1d24f90cd902691523686f24f4cf312235272bd98d2709971969c79079c4ac510a284cc0949d49aecfed4cf04689312cca8f116bdb125c46000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401460101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000205b307a7e94a0b4a297f36c3715213726bb9f6e0095e05f09fc61229646893740f548193a9bafc30b6c7836228198b83852f8f484f85792942b0845c8a72981d56bdb125c47000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401470101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002062b6328bed0ede6fd0ad201446d7127b1f63363171ac90d69d996984a6f4c70308fde76a27c22b91fd09585d977897debaaa7b5fddefdd49b73b3d2bf0c581d96bdb125c48000000ffff7f200300000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401480101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000207cf638816155e5190cee8c2dca3f1662861e7ad296cb1d48817203fb209fe2049a0736653c18a765569f78ea285f64308c5ba5d0c33af5d21fc87554b14c1a2d6bdb125c49000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401490101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020212d3e6ed1fb2d7a936a7363dc03fa79cc104df5a1889b54fc7667d04b957b4c11e9d36d23e3f1b1dd47535adf37dc10c3341e46ece1aebf0077c716f50bd9366cdb125c4a000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04014a0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000204b56257f30a89cfc4640eb79687c4322e9335d90e080610f28f2d9b9c4860105b0fdb7a922d3fb2ef93ed035286ee5fe5803c4ba3484b9e927f77d5d12ebdac36cdb125c4b000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04014b0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000205a9eff2fc7091264111401cdcac97fb34dea7441c04a5d1923b120eef1e73b5024f24c4b3bbee5d1833a20d6332904c393c658b3734f19ebcef6c34f29c847eb6cdb125c4c000000ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04014c0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002028cc37ce983c33d56cc435eec3a13c96bfb4c40d06cc0ef2719fd364ec760b7e55fadaeba858f7d9cdc050653b7cbc52706831c78a67e7fb318c2873761c1bea6cdb125c4d000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04014d0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000206178f78ed8fdcf059ed9deccf0e7169120b2cbd1c59c6279cc21e3b630bc7557348c601a230453c90988d256a7f7ea22c145879f0d375743f3e9008ebc9dd0526cdb125c4e000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04014e0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020847349a62d967776e82597670f941ed711917075fbfa8cfd5a97d90dca637d5fafd128948449c97a5069d6cc9891180e6f10277bedb57a44de6e3769e7c4b8826cdb125c4f000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04014f0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020f62c9ad0075a1715e026de113083ef6652f6ff56b8d5c3aa6dcd9b658e134e4f2868cc7300c37917c8fbb0e05829e570ca9e9e208651ac3f28876a147d1da4216ddb125c50000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401500101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020a482bff852e0780701c98b94a6bb79bca01bddef9bcf03668c7a04257afc4536ec0271e5232763401024a2aa5e5172c7ef46a6222b85e05a20cf930d36eb66046ddb125c51000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401510101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000204b4278b607cd656e467cfad6933b50be14889083e29962ccc65424f3e3875a4b800576ca1a1122988d0adca06f62cabbf3e1f990288d546460343b00166065f66ddb125c52000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401520101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000209e1020d71e973f43414ebed43859c120b6b62b6a0763646a2ef36094a923d36900792d102e771fb4df276a4b068ae3f4b4aeca36f738c59fd138912e2fe2ec736ddb125c53000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401530101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000206c4b14c9f511f0373dc766e8997586f3b1bdc14c8d394d96710cbf8bb468ec4cd7d897fb42a6e3df4566af7d4576ce105470a7859173c8e876abb993e58c03ac6ddb125c54000000ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401540101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002040359beed3dab6a401bd8b8cd14e590f06a99153eb11183f5b6b7786d90b01399c08c152c3bcb02dd22bf78914112a86f0997b063a848d4555d6d527587da6266ddb125c55000000ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401550101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020a96f075fbeadcf3a3356191c61c02f8c934c5fb06b5a205d982ab913b7cd5707074e676fd55c6f52098ce47be437231bc1af305912c74e41b064e9a7e594a9aa6edb125c56000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401560101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020f7274ef83f17acba9814acc603cae976188db8e8795391dac4dfe2d378ca1a0d80a34dfcfdb21a784511b1290d81901c2f493c26373a49c4d76e5bd61efeb1826edb125c57000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401570101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020248d13234e45f4091e34415295296c9e984dbbeb5a3a4d1ead10177974f3a73154b97490b897ecdc2675ea78581dd1eb00958f03045af53e597fc20cbc197fff6edb125c58000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401580101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002063fc75825cc7ff42d17ce65c260458a01f82b90f5666d0d31630add6a640a13175206c1c872fb763728948ad0b24b142eda0ac7d0b8e42a03511e5b7d5dd27066edb125c59000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401590101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020a9689e63b28a60b7c5d13f5eecf9849eeec8601b16e4f257ad9ea77a2c9c5370472d54635835aa401046ed86d55d385e2423395c3691a135b73cc8b06af12f4d6edb125c5a000000ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04015a0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000204722e5bddd7afd726e2933961d5ebd8919089c29c357aae254e75f52a76ce2760e2b4cb217887958e4d27e859732c3424f39f5a701168632e76148f527cebd596edb125c5b000000ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04015b0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020c8949411e83b8ec47425c27603e0605bed05661adadf59c0b65cd5737ab3864425fd3d5d9378712c60eef6de5d744cffa9c9a2905ef308b8d1b3baffb96a75bd6fdb125c5c000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04015c0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020e474c8c9c073fa8db93e08f47774c96e5502bf78880c61c3b903d24e1a69390bd28eabe63dec0a71c8e8defdef11809bc14f8731be8666a5f0fbc0f534017ed76fdb125c5d000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04015d0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020a04250654942b10d8b3403555bbe0d7e265f132f985858ede5cb0020ff54b72bd840a882240372ec86adec72ecb84cb887f1235708dfbd53a518a166007383e46fdb125c5e000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04015e0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020f960f5ef665904a382bef6f4ea7e3410e1a7d4967c90b951c19aecbff058eb1b44fe9036edaf94d7ea27b347ef6f32241a5421b62f11c000245a91d7acd5f8996fdb125c5f000000ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04015f0101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020f1689a1cb3362e3874a70d48f2049556e534579a0b7cd521f9dff8d5b81479504220c7c8c5b6802638594966e17af2e0dc2bfbd15046a8d35c6ce6c3924685966fdb125c60000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401600101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002037f9b427a109cc717270b4443bb172180831ec3c6b713ef19fde6b31eb0ef0125e8bc9f50025887f8d5d3bb335e0b50ebe39f0b0a2c2d3c78dfe13f6341d94546fdb125c61000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401610101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "000000201b48764109ea2105b0f7c74f1d740eef60421f17b49336c8f3190847a90e4a2fdceb37d8b8f7555853d39ff2bac814b29f3db3f65706bd9f5624a8b0a93f562f70db125c62000000ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401620101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020aaf2798519d52105e7e5bf3c9455e7b6fc1b9096aa157f743d22e58a934fe40e7885baebaace3eff5ab323a3aaa42e5847660e4c95259d95fbc1b3734b74525c70db125c63000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401630101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002033ac4875991ab2d727e3ac50b9d8c76f61045888eeafc3ebb3f1540fd7a59240c34a37cbe380800292b0dd3dcb103b9806ce360a60bb1652db7119dc974a9a0d70db125c64000000ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401640101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "0000002060a1337f7ffb431a5d1bfc98e828b8a1f0d29889c0ae5f1de8baa99d02be4322a3d12762f4edf95dedc17fe9007c2daccaa0fd25bb4cdf3f18ee60a56ddaae6670db125c65000000ffff7f200500000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401650101ffffffff0200f2052a01000000232102bcc0efe6fc3b518ac7b9c399ea7d7818649b996594ea559b1e0e99122ba90a0aac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", - "00000020402ab8968b4fed0de810b0ca327fff8d74202e17882227aa29135abf0b794e1404037f26efd6735b543387136ed79787d1979ae9534319454c04464ecdbbc4f170db125c66000000ffff7f200200000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401660101ffffffff029c00062a0100000023210345215f1013bec6492f8aa47fcc5e7e124d96aefab68eeb756ed5e31d7e41459fac0000000000000000266a24aa21a9ed2e19604721875fb5dbc23d3ca585ebebf26dcda746eecf2e4cd18fd50459143001200000000000000000000000000000000000000000000000000000000000000000000000000200000001c51fcd6ee31f1addee393fa60f7959e2f511807d2ab104b8ce7965fc066ba9670000000048473044022014aad9a16bb07b0303243f474e2e0cc7171a553d8a70f5e292cde9f4a33325490220506ccc22d729c1bfc60bc2e4e1de8655bd712518adc2a710da5e37c0d1532fe901feffffff0200286bee0000000017a914d9652a1c218adf9f8b20d33028e0c772fd0049b68764bb9a3b0000000017a914e41ba763f2eb5edba51d0e7b3c9691ca7a907c1d8765000000", - "0000002006cc8589137ba3882a4bcb83c0ab83495685487bb534ae1c34459b58a7430a2b86a808b139f6e1d891f8c3acbd094971319cf2ea11f6fe9d5181955759dedb9470db125c67000000ffff7f200100000004020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401670101ffffffff021cd0062a0100000023210229c484fad0d6ba286d1ce0d7b9dcd8b9a6018d2504e59c0b50832223878ca58fac0000000000000000266a24aa21a9ed86ed32d7a0be2f561ae39513923cdefb547670c68f43b65cc78f7ebcebc3401e012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101ba6e2f7962df9b84b207adfd8fc5f6f6fc39137969a26f63b0859fbb08b9418b0100000017160014d4141821adcc1e1d6852a1d56e0ee5c00f90ef31feffffff02781ef5050000000017a9148940f8502b2d88f00b1208baeb2cde00018bb7e08764daa4350000000017a914823c2079e3d135a96f63c0a80fd47e4a0e5702b9870247304402205fe7d114ab821ddb233a6ff796e800592a4da5c427ec510c859efaa96953b2890220784694ed0fe023f548e2f0eb32fd714093c2c19ba7b5bb730bafb75073e8b8610121032da76b32883b60086a9a47f0b36e820bea1a12f3d1cef00ec59c22911171154e6600000002000000000101ba6e2f7962df9b84b207adfd8fc5f6f6fc39137969a26f63b0859fbb08b9418b000000001716001438f6e22b523a18a49dfd9db06da0487c2190a380feffffff0208bd9a3b0000000017a914634c6ae932c03f85fbeb7312e48b92c074725a4287005ed0b20000000017a9142f6dd95b9a81095aab79280ccc7b7ff5d6b80e21870247304402202003d96ff586b710d89ac905ecf6b12b536a4314a0c3d7768a92dcb62d51f2b10220603a4d87204a45953f07dc01f89572e522d386af7ef5c2a037bc11229f32de69012102b39c30a4e68d7923199924cb87f52010a4b3b769b8b7ab54bb6678f6807c922266000000020000000100be842fd15bcbe80c97c7028546d9c7cdf9698f581cec1b53144e72a075a5a5000000004847304402203bab333eaa460ac603898b40562181cd7edaa18b875b7d376ec90c67e0355ab30220463c0a9069829a028403a89b13be3996bffd37d19e670abfc74a087ae28eb2ad01feffffff0264196bee0000000017a914afb2c5479f69cdb6525624ba8ae70efdd59e4f7c8700ca9a3b0000000017a914c5525477452687f6b4cae01040619c2924596a5a8766000000" + "010000000000000000000000000000000000000000000000000000000000000000000000b06696878794563cc591e4185f99a217001cbfc0b2f19998ee3e2866e775212ddae5494d000000000151000101000000010000000000000000000000000000000000000000000000000000000000000000ffffffff2120b304aafc7606a923a709600e7f6192e96441dc453629f2fe4dd31d18095b27a5ffffffff010000000000000000016a00000000", + "0000002014b2a8af34ecc4e3755cb6ec33102b5d36ddd522e52c3afca7035cc27bcf1b38644696c44a0beac99f79e72eea3ee45f845beb7a07e1b09ec513e1cd4f2a6479006c195c0100000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03510101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000202f0b48e95921bafd5848d9fb26d5ba03c6d89ec4f3d68ff0d02b785e8a4c3cf8159e40cc09d7ac6d3b8a84e2196255841dd5130010a17ecff345f04743cced4a016c195c0200000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03520101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002007915dbb0713fac0738a2d15d0e550aa4cb63b9378fc9d24dd91ab14b1267e1580147b55eff52bffad2fb0608eac2f3797df67ad87a9e823c14a828b5b82e324016c195c0300000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03530101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000200488b4ae28341302bede17462d916a644618cadcee897505eeb06d2d1a3be9d0a6285d5cd1cabca15a3caca606673678d9478be4c2c53901eee83b315089d366026c195c0400000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03540101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000203ab029d3dcecf7ded04dc4844ade715eeb7645ff1bca8ade30f5e5c57b244666887724d573d06e90ff47492d1b1e6be7122294a27a2f488da29a4fad8b8af2e5026c195c0500000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03550101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000204342752e63a977c22fb16d6992789c17fa32786bfd317627de5e9b3c8392926f6b9061a3052ae569ea41117ad8f79dfaf80b933ca2a516d1294f943886643999026c195c0600000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03560101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000207a0a57577439dbf6bab3fd70c6beeaf5b9b361503285ecadcd8e3e0bba16e15ba777db3f776db9e0f4150a259a21a82a8ee8d71c32ce9c631685a62230444576026c195c0700000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03570101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002059692bc431541c0609b693032aeb887a578554094765e91563b2a1ace83ccf89b481247fa00fbf63f57f516325f0aea0f2620d20c800f89df626ac7952f87ef6036c195c0800000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03580101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000207236444478ef4fea5c294d01cb9782b948c7f0823d632f389d8e26ab7dac9573c9b1f233ee37b50420c7e248cbaaed3c32468a392b93f32b10af6ed363b6f023036c195c0900000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03590101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020327905a3a0d3e976f9cced4a439662d704c96a084342f081ff2ff6c14aa158c4a498b2411df89122e50ce3d2c067430e4f25c661f04d4e3aef4cc115b437b786036c195c0a00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff035a0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020501c07a276cc8a1d044ad178ac738fd5aabc34442e15191d65dbc22603da86d048683404e59a3a4941d955b238febbfd4ae708a8a64c983cfe9dc37c88f125b6036c195c0b00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff035b0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002009bf932879f080181c360ed87568d7d9edb1bed2cc202ba73df50fa6bcebd8035c9763949cc7a00c39ce1f6da84fa274e6a51b9239944fc020725ce5ccbc9718036c195c0c00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff035c0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000209795d68fd7453eef9a33b284921bf7edc522a87fd961a05923aed1f8c5ba0b2d267fe62dd679e4e32fc160f1d5aa263b432fabdac54898ebdcdc2731fe963539036c195c0d00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff035d0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020491dbd3454a3e9c145a5505449fbdb003e8163392098e587fae3a1a4b9693433ac5ffe33966ff3ed3691fe1262335f9ad87a455448a42927a9cf7b94b2a18d11046c195c0e00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff035e0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020cd8a400ed93f386401ff755dd3ea3428516c5cbbb5f1f39301ab6d7a0c404780a28fc594a3064b6789e71ab2e61dc5e7189e2e44bc9f56737c1f9b7e1c3295fb046c195c0f00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff035f0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002040adffa0e734e76ad5a168acf5340addd8ea8b2386cda69b17974f55bed613b197a255050ef1cfbb174fcd0f98a120ed786cffeda2c2f838c000b3339e7aa8ab046c195c1000000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03600101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020a052b3af52e0140e6fd9c1aee80ce76ffe53e70418da9cdf0bed1e1157d369bd17b694d534c1ee07d83122f671face8436fd60e0677cce442caec255671363d7046c195c1100000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401110101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020a7a93df7f976a35dc8f9a026ae500891c4af438310c9ebb4dec455e5e355026c81554620e125cf5132555a1a41021c6fdba737cdf48c4979bf678e7651e1b224046c195c1200000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401120101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020c76de214776d086cc5dc1002e90c07045fb99cd145e1fe320862065f4f50c711afe2fe3ceea10923b388bdb3371fbf06ef01ea181a3edf17da32443705e7dbf0046c195c1300000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401130101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002098e143e47d6d7a5551657a47ccc771991053f9c26b3c5dce6c10601cbef2e16dfabbee7fce7d2493d99ccff434039b2b78f1ea48faac0b801e8e79dedbd7d135056c195c1400000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401140101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000208b006cf0dc58235c37473e37f6b4086f7a499f0c7cab1ea78c1d83ad577d271da9031ef63ef0ed48edda791906aa194bc046d3181c87a46fd7f54e5c0da0c970056c195c1500000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401150101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020f2e7fbc95c60f81401c84d913a74c1cabda476ec6c7ac43a96dbcabbb86a8a5959c903959d0c694ecc3482ab23cfd91ecf7178a49f22e9af6435cb736d330cdd056c195c1600000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401160101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002096ff3691fbd885c6f9cbc7880d493c2f7ef44c70cea839099c936ae0abf3c17acf3d4c0fdd664c21fde51afa8a13606b4acc8a8c39a86ec9f2eb772e06f7244d056c195c1700000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401170101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002051eb76e50df5759f6f4791a0656a0c939cf5037716cc53a8cbdeea79e3573528b316d5596b19ea15458d20e8ca48b1cafb330ff552e6bcdcb96adf6da8393fa8056c195c1800000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401180101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020522b8e285468aed3a903226b9b489c5c4f837c3ceb9f793e83db8b8cb1ca5f42faae812c7a486d92385c82bb3704e4d5970ee82513934f783c1891f2fd815cfa056c195c1900000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401190101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020e584f2b0563063865811d81c84447f3fc46338418b9473105231c57e00c8e5f214a5d166d9da8c65e7a3b92eead7cf5f7014f89ea4545cade450c7bcb7559aba066c195c1a00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04011a0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020582022cf43d1f67d62953a8b46a8d8a2d453407772cb93286716106d49237d2c00cc7365130a1640bd02dc0f65772e0566c5920bd90c9af14013cc654627e57c066c195c1b00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04011b0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002017ce372743fba45caf2b61dc7553db2c03338e12bf6fa2ab0ad6a8a6f3e81f58559e82d5c7ca3f13fa1cea37f013773f55a22a468d78a0ec1f31ab8710bf3883066c195c1c00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04011c0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020203e20fffac904dc5a595fac3de47e2483b190c18d89c826ce847877ce0b2ef929733d4de7956a5922c0c4f669ef28137240b5f3a4dbfdab816810815592ccf7066c195c1d00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04011d0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002002e510dc930f96cfc361da4cd465f3aaa0d21f8e61c1519a4bba57394af683bd96d2e563151d121e95a7c2efd814c11115bd5089e46fc233cf3a648600460040066c195c1e00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04011e0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002094064507cfa53e1f58ee17259447a1aaf4f5d1491b156a9c5778f7b9b23dd30b16a8435b303f5fae91679931daf8bdc92c48ae4332c3ed40fafac513f68322b7066c195c1f00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04011f0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000202bce25329f5ed56b24644b931c76307f449e4b253541fe1d24869189ba63d1b7e774338137d3b549bf31b41c289f63e2410944269047e9913f7b612f3c1fe8e2076c195c2000000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401200101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020eb8abf7165d6aa807d126a810f11e2021a90d6ac9a303cb7f6c30fb340ccc2e2212b905eaa177b5bbc7efcc7a3a299c3d6d8a0f72ff66e0e26708e42d148aa6d076c195c2100000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401210101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002075f270ba429bc9ab69cd76b9fc4d2e9832d67e27e14d0693c56c9e56df8dfa96997e0410d2e5d9799694de9f6c5e1c5dd969a9512fcbe3e479bd4b10b60ba422076c195c2200000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401220101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020c969e0582d150c16e5a6d9e8add2a38faf25d3c9fc6182d8d29660e9b94725d6520f9680a2f883194ce5bda1b1260d9a8ac83293c4fbd3529c91586c2a6bd302076c195c2300000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401230101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020843155026b0a2da46b0c6ef68e24c5c4c488d825e87aace5c4a2450c7c530a95bbd7967523f1885636f5f185091c0862e6056f05fdb2acb03d3ffc97e6b8e585076c195c2400000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401240101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020158f549b683550ec37b18fbb212c473e0e2984687400e9c7d4ded7cb1bef186a3454c6c17d60c6aacde69488c1a4b081f1a6b73c6998d4d0ddb1ae089c490f9a076c195c2500000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401250101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020cb6f7304631bc32ec924e1e28ead62aa299e5ba3aa3318504cb98d3cf8bd60f930404ace9af754529319f2fcf307c97cce82538afb940d21dba525a5af15536e086c195c2600000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401260101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002032f82130f5b8812ba7e1a3dc6bbde2274be6ccd9f942bbbd8d0b0445f5c40d6be0e63d9d1ef1a224b8e148090963dbcc7a0fb54f4f355a8082895aa45989bb60086c195c2700000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401270101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002075ee7e8cd8e3d24a63b29d5120abfe0783119e8dd1d62f2e5d1c711d0e9e03feee815b9cba03df6314c5860611d391d815ae3d5ec1ae8b6b2b0f420500b90737086c195c2800000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401280101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020cc5a1019e94ca17448662c9e1698782155e54e33ed5e4ea19d4a229701d335e12a6eb4e956a88dcf4f961487a0263a8fa1f64990b2050b54ae13c132e47d291c086c195c2900000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401290101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020e6dbe5677a8bd1c13783236738dc176d9f17e0149ede84c7f5f6b8e799443d093bdeb744a2efad8f29516772ac233c72d09ff68c0625bd33b4bc1de7321d9c75086c195c2a00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04012a0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000203fe0fe43356a1987f34e3d669ef3097754c77f664b71811a838a7bb2ffc537537d4f8fd017e95924a51e46af603ac6600020060767823a2a2e285a37def63165086c195c2b00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04012b0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002016b8524b479f4a07f5b6218666d402a0df129ef74f2fd797a746d0246d5e80d83f7a38aa83068b1b6b3544f8d07121d7e5fa4424a1d0bc841f20d68cdb49a95e096c195c2c00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04012c0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002033d3981aa9dc51cd31ca2598ab3ec754fe5c3e3a9baee28b87ed7c5e2488c3b4fd3340a5f697a9f9fbdf2158559e9a51ae5f6d8cd6db289ceb4417e1dbd63b40096c195c2d00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04012d0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000207311a40a9fd66087ba4f1382aee7ec2f2bed8c70ebffc8eaedb4685b8fd9fc90ea1c0ff1f916c8aab625944b77ffd07b136ee7bc66d7e2d8d3b0d7a2863f4bb8096c195c2e00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04012e0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020bd4d8a9221f34d3d879cdd794c3e468c6037513a0d67342f5f97d2b07b1facbd716f9041c82a7d4e3b8db01e22dc98fa90c50dedfc83814e848f23cdf8e154ea096c195c2f00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04012f0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020bc8b4d91e58e90f35e526fbb7347fbd6f914d6631cbc5d06ce734183b14c56279cc72a2ab611ff9298079ac200edeb68d37bfe3368513a894aedeb727449497e096c195c3000000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401300101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000208b09125d21a3ea0c7907d2e04327e858e02ca21ee22b49e7a82b3066eeae82dd4719606037fcc995801f2703b0c6dac6005a39d2298d429d76086d360482a991096c195c3100000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401310101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020214dbe291bdd050ea09b732723ae86e5fca512e8433f734e85a09aba508770e9d094ad495852a21d848ca68f1d6b66712833e5763a024a32b0c7c3b9902b348f0a6c195c3200000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401320101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020d8da622d81fa24bc5f586af0eacf18d113cbc764df101ef7e68abe8da46a55d9dd337451ef784a586e716cbdb49789df0763c76088322a7272dae1092cab44300a6c195c3300000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401330101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000200e29e6342533d8d46b48d6242a55e8ecdfc42599b2801aac7d20c77743a5dd19c258d77738fdd5f4b21f04f50a8740971ed17ff728d744ca15f0a07348165ed30a6c195c3400000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401340101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002080ff1563e326e6c5e7a5d1869cde67ec2f388b90833d978e3244d6fc651d05c8875551f6044d7f5e6c33585ab3dc69213a06c2d724a325cb363f3ca9004fdd580a6c195c3500000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401350101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020ce1bdec3e13672ab561c1d8f721ee766a15afa19471974c7ae7bd5d5dd84ec2b95e646056d6c00030a7e06cda3580496b2a3428d1a78e6a784b808b3833630960a6c195c3600000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401360101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002005d6c2b59e07b3b8792606c3bb7773dd648c5174ce841d571609c84b94245af4ab9b3bc0e9db6b8755acf35bd9582a753bc4ef4b0bce052a537fed51d138dada0a6c195c3700000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401370101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000202b97880102b015baa5d0cf42d7e82c5ede27ca2e00b0d5ef1ca1f1ac0e0fa6ad7b4a9ce8b43fc087093bcbdaec90f14e67319d2b79dcdc009564f363353705020b6c195c3800000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401380101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000200e384d94cf1338458b1f06b0148cdc12d368872e797c3ea5641a263e908253db13199b583f408e7f2fd354c719b5bb9052432bbc51fc6b9c3291f76a5c93cc9e0b6c195c3900000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401390101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000203d4be0c6cb418c6f041a87b36359a31407395404fed2e5da538246df01aab5eaacb2b4ce65ec18e892da502ced452ca3e3926eda0148ac73ce8b5d857091c41e0b6c195c3a00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04013a0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000209c7e1a8348d095a2642ac73754b526cea12f8cb7efc4d33ab01ba06770e84a298ff9382dc2e64da57a0918a2e1eee726a4dba9e194d0cd345c2d7098de4e6b320b6c195c3b00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04013b0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000207c0c6167280fd56330e80e1406bbb6c7484e73d8b4ced1061742e72bdb58afb88adee948bcb830073c488d1b270ddedeeaa3cd865144616fe0c2818cde1dc9840b6c195c3c00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04013c0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020785ff3ba984798c8ad5ea9191a074c98e7e54441b8b1ae299ec5c10fb16d55e6f7db44a7f84e24186a4d5f2472805ef7c33759afcd1c242fecdc7dba010401730b6c195c3d00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04013d0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002048380f9793b926cd7742cb49a364a6be95d7031d9e4a33d546d0e1dd480646ff23d74cdf6bd69feba9966a7c6583090a12ea50eed73523ed8ae867049cfbf7570c6c195c3e00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04013e0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020b4e0f361459e2356d220435dcc8d4bba551292259c5ebbd5594ee9fb8d5eb3afdcb13418cb5c2151fbea0027a222a7af48adedea07ed081d183687b3399a7c690c6c195c3f00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04013f0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002078dd4371038136e2b9796d2e1fc8b837888f8469a1fbea2f86ba73a8390e9324f8c6eeb74215fdc9435a23e8a6373c3bf3abf91583771579e24047dfc4d7388c0c6c195c4000000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401400101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020a677c77c81d65dc42b797244f02e326ab33210cb53357aa2e77e9c87c38fc2d904f9039806a61b4cb73bae9662409f43cd20b631e6002d751f3a32bb60c7548a0c6c195c4100000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401410101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020226219d3329beac226525a196dba2133ebdde4927831a3b8332e5fdbd046d787af8eee361e6f84aa0f0c4a92917407edf8c5564eb3fa765305ad11608b049bf50c6c195c4200000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401420101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020ac9784e7cc0dab86f40c49395ee8af0663948f452958bf35e41e465b6001a7798fd1315ea2684d72dcbd2ae446e65d19d6d0e2a2874ac864cac76205e11f3bf90c6c195c4300000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401430101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020f98aa6add6bc73368d883bbd3dd56f972198b54858b4cc11ed860713411c13d9b5af60d038bea6294224b5e08889dbf2428430f8f4e92cd688fbffd819b82c7f0d6c195c4400000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401440101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000200cc1a6e254637c546ed9726e6d5ffa2e3e2e1ac316eb5b051bfabc9f84326169773212dbac7cd5cfe49da9d4c7b2d464ed4e7ce9af712e05b4a30e02ef979c600d6c195c4500000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401450101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000209769f63268750ebaa6b98d9db81b43f399f90fa80c1b9f644c244bb7292b89ca1d6f04eb45ac374023b2bc88c128866b537332bb077f414f4d85f2f70a54db720d6c195c4600000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401460101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020b5b1fd4441a0f3c4bece7be90bf7dfd5458049512c622f09efc8910221154c52b6a6224678c409db44b60efc4fce1d6dc4b3e1bbc627ee44172e5f70600ac9df0d6c195c4700000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401470101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000203c04c95b922d22a451f7ef7fecb86e4c660b308510e13157ac7e22be1d3c93570e5c2e40e7cbfb6593ad217a7f40739ba3056e1c56a39fcf798005ef3a94f9f80d6c195c4800000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401480101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020d32397a940e23fb8738a89e092b656a7da284632f57d3bc1727698e85eaba2627bf3975bca2eb4ca001405ad34063075b45fc62513dc61ce8badd0d0644395670d6c195c4900000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401490101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020e98a77276a13d0a30b39eaebe72883a825a12112b3e90ac267eb6b7a0e319025e160f88cef9b3bf6a4e29c5bd5c8e0572a911b5bbfb704df4b37b8714e46425f0e6c195c4a00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04014a0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020521e55debcd51b41a5d9ebef76753a18963da7f328065e137ee3c7851080dce071c331433ff57d398abd9dc9d41f291a0374a99c46f946fac54572f7017acf340e6c195c4b00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04014b0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020184a72f88e6247f4283b68734a9d7aa5a66a9a844e15e65683faf974549cd026df0c7c9deffb62f22eaee6725949affc79778e564fc78aa87d7f162edb18c1b90e6c195c4c00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04014c0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020bb8072e47b7b022edbd67e7baacc651745d1072acc631ae86346a82a54bc7894e7583036c79abdb315f10897d8709120dcaa8a81d09a1c72e698b0a1411adb0a0e6c195c4d00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04014d0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000205d1fd56de620588e5a5b9baf24a7645e38d91e9fd9a9256c9b77cdb0bdb0d818e39fa51d01c821046c1f2bcc0313dbee1b5b62cdbaf8736116f0ad17c475fede0e6c195c4e00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04014e0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002095e6bb52b5fb95d099515777ce4977904e1d2947858a4cbccef92a43f8f412ccdf4c2017364ee605e966a2e0806cce20d335aff3bee135853261c1bdca61c8fd0e6c195c4f00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04014f0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000207f4140b2621efb8652b5ac9a2cc66f6c39c10807192c7a3be1053e1006176fbf98055730ae5f9ff94c1a1f50bfcd7f2b0def8e3deaadc04c68b168998ae192cb0f6c195c5000000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401500101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002029e77c7423ccce5ff9d9fc134f9f834715ca09a18451deb909d325e04a7d8da2c8cba79f44ab539d438f3944b6be68661abe38274df8e70ab6645ea4b6360e060f6c195c5100000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401510101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002009524c9b626ae47d17728b6b109bf9e45b37d11a3895099b564b3fd3b27515fb5a943f8ad30994837f4f12aed7d66e829917a35ae49217d89ca37aa3dbe1e0f60f6c195c5200000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401520101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020aff23a10f40cbe5649e9795c5f16ff805e86cb90f45d6a92d2b3fe397624927393ab7f7e4fdb4656089363fb3d56dc05cb88c7caaa67c859bedc5d1befa5ce650f6c195c5300000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401530101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002054fe4778f26d1ca0abe920e8daceb653fb1d813665b7792d641e858b70189b3b2df43bb0588af773af18e403154c667b7f7ce55e3c885426abbc51475608db970f6c195c5400000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401540101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000204be9183bfdccfcd1b743d8842253769d798bf1ab659d75669682a54dd0bbe2555a2a9c72d629f851ef6a3e9b3f3e9b4029ef40aabbf904b241d7a410272df5690f6c195c5500000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401550101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000209b0eeafbf25f02bdf778191645545887d62e0ffd0e89d99d6ae616a86368377f94cf0f17b0058a45b3b5573bb01f5a43193a980ebb588d043a73bcaffa03d082106c195c5600000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401560101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020421163374cfeb27795e7e239dca6e5d4d36d6ba73bad68551c65ca37d4d940824022f9571a4636d6e7f31768991b27a566fb3f532238e39600ec97c5e2d4c7a8106c195c5700000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401570101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002086e98fa8c49e2e1f69aa41df8abd2828bba24ca9726e408e44ac4cc17335ee06c5041bb638f2f5c67d6aa37de2af49c706fc5ef83d6683f25be4b2b7001cc1ad106c195c5800000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401580101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000202ae8f9d477b8c486ee3d206cb618aeaafe3d767fc952da4d8bdd813ba4e64d92a4634e20c8e8133a0feae50531da8cb686a60f2049a1ba0f91acac95205c950e106c195c5900000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401590101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000207bbbad496cec34f0ca621774191f070fea122be24ebdcfcc8b689e792e5043782add2bdcfa50726208573159dddde61e8495b594ddc94a5d6cfa4db7522e3f70106c195c5a00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04015a0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "000000202976c43ab4eb234c64342e94d59172bf9f9c2bef326a975f9262624a4dd484d91e6a26658a009aaecdf58c1c9ec9a7a0f3e87d3d9d0d0de195c7d019da0c174a106c195c5b00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04015b0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002083625f03f43d294f710b63dd79f50c5299253970d66dcf4d217882470369e567c67af7e5bab473fd9e2aa09b511bef9bd3db45b53d6b01ea07cff0f44930de78116c195c5c00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04015c0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020d42626eb5a194f7e672a26803651ad4b483ebfd604c9e0e00c07eaf2c46da86c678ab65a809242854172d8f48b426c41426883f2e1f557c6c749b8a9dc0e3c34116c195c5d00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04015d0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020f903c9611e212681911954656bd75d2e21d199212ff4813753eb319fbc468fcafe74a3681f0e15c3b8204e47c2a12dc274ca34f19f56077e31f17544dc6eced8116c195c5e00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04015e0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020b69ba4489c0d17e565a6eaf2e19423a09efdcbd2409baebdc3496068944a26ea5f682aa17f8fbdcd5993554fce9b288fbc6de144835ad0399a99c0d1395240ad116c195c5f00000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04015f0101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020589a5e2737ac7f62d4c8d50a76ab207178f41c2a3092b7c243120fe2954ae921d5f3475ceff86e0dd7fd51db5eb0cceb123c3e900f59802e01224aabbb1c6a1e116c195c6000000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401600101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020857e99052c1552ab2beee27220e2cbbcd208d26c6c9c8eb83aeeeef2619b8b7cca88f404043f6e9955b23bc93ef4e8fa79f6dc30cccfebbfa8dc2318d978f12c116c195c6100000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401610101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020155a0f66e1f3c6b3d8c9641d7d1b9fbb44c10bbf7623e179bc7bc822c7aaf08477e9533f511e4ac24c974ba263e2dde18d928b3299242f0c04777c3404c86962126c195c6200000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401620101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020160b42ef082c0f654767edbc66a2e2b9e5ca5a68ebff99bbd00a519476425c0e86ad3d9762bc433ad8b324eb8d209ed30667278bb4756530c5bd579471d764ea126c195c6300000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401630101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "0000002081d046162cbf4160842e239a555816c8730e4bd6daec841718ecdb49dd46b3df29e7933071e2307dc18cf9342e124213968e025a927acbfae2e315881f4ab047126c195c6400000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401640101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020e0cf0bfd8eb6b366e1bcd7417282b68a6cdc6ed34f637a57f33d8468f3d7ab9728577f6e02e94f07015d1677289735c957f643ca6f69ac2c474a6a96c67570dd126c195c6500000001510001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401650101ffffffff0200f2052a010000002321034e717c3895820257a5a0cf56c03c63617366adef952f7c7374f1b4d0529a11b0ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + "00000020f17d8dab6e29e5c54cb9d7c2e16db463852ee015d43bb44b195c6d0fd90f31f4e6c6e9f40cfcd1033c1580584fc3e9840a836280e21cdec2a2205dc962d8259e126c195c6600000001510002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401660101ffffffff029c00062a01000000232102d547d2b5af0603d3f45dd754a1c98824506e946e84063d20edfa80fa8340f903ac0000000000000000266a24aa21a9ed9c1fb33c9c7b3964788a29f8c7fc9eda937d0eb85061259231f3e183e9b1879b01200000000000000000000000000000000000000000000000000000000000000000000000000200000001644696c44a0beac99f79e72eea3ee45f845beb7a07e1b09ec513e1cd4f2a64790000000048473044022058f2e2f95891a57a30cec517e42a1b2c05e9a6bbe8ca7868fa6d6f265108556802204334f5f0f0cd1855b6f32674453c40a14a11961b9de40d05919f651506f3860201feffffff0200286bee0000000017a914540a2ddfa4217fbff431cf6597a3a8c329123bfd8764bb9a3b0000000017a91421434e3a64c8ae9e521eefbada45b8ec3ef255cf8765000000", + "000000207d46c042750e1f8af57f900288339e2e21d0043c1bdabdfcccf61ce344ff4123635d44c20878901a0478927e3b4a6785d3ebfd598700a5a61633098f906f25df126c195c6700000001510004020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0401670101ffffffff021cd0062a010000002321027a8a1870007a7e2282bcf7dcdc2412070ba09f286cb8184b604f71822c52be55ac0000000000000000266a24aa21a9edb632c738f562b858c56db4d6d623a51640c0f150669cb9fd6d31f157b72e62300120000000000000000000000000000000000000000000000000000000000000000000000000020000000001015dadfd8c7487ca993f1f01daafaba8cb59e9fa7a69a792a55faf33fe29fcff8801000000171600141d14ac8104154bc5a21abb42016510c0fbf75f00feffffff0264daa4350000000017a9146aa53d6d08046059dd6dda5432c15b4a57f8327487781ef5050000000017a914d8a9c64903ed7d081ceeee22cc1b40b779fb196a870247304402207d1b12b7619c0b4b2535093c030d9955ecdee15426f84d023ae535831e90d0be02200b0c3a04ec1008385cca249735ddd2f8001c78ede8dd4452d326dfa9a98b088001210205744e1aa4fa3a32e0ee80934cd66c64bb2e7d1ef0fe8898d3b0b727ae2ada8e410000000200000001159e40cc09d7ac6d3b8a84e2196255841dd5130010a17ecff345f04743cced4a0000000048473044022078895ae1e8a4c49f0a0bd8bc1d91e850dfed74b165a1113ce81460f46dc0246102204ff4954ffb512d5e42ea4d48136f6d9e09bbac23484aecb6c03ed7edd7fc990501feffffff0264196bee0000000017a914f77c726c82a8e4baa3e9f5e88e523a3775a014c58700ca9a3b0000000017a91413b85a10ca63f37e0b584801c8918d35f654382b8766000000020000000001015dadfd8c7487ca993f1f01daafaba8cb59e9fa7a69a792a55faf33fe29fcff88000000001716001439981b9ab6f2e4533dadf28c516e1b9a1e7718ddfeffffff02005ed0b20000000017a91472f26631383726246205c39a793e11bcf7ed052f8708bd9a3b0000000017a9148e26832f358dc4c84548f81284d6ed4c8f5b20f7870247304402206c122ee7dcb44376b893b59b55d82cc75c7e854635bc952d0f9c69936c6408d3022011415d4ff94cc376de32ffcbb8569fb554af19f005ea74bbd749df19a3cd2cea0121022bb3ba31532c894da0f9b2eb42d9a2898f8d2e229000d3e6846d16b9e89add2e66000000" ], - "mocktime": 1544739678, + "mocktime": 1545169920, "stats": [ { "avgfee": 0, "avgfeerate": 0, "avgtxsize": 0, - "blockhash": "144e790bbf5a1329aa272288172e20748dff7f32cab010e80ded4f8b96b82a40", + "blockhash": "f4310fd90f6d5c194bb43bd415e02e8563b46de1c2d7b94cc5e5296eab8d7df1", "feerate_percentiles": [ 0, 0, @@ -125,7 +125,7 @@ "maxfeerate": 0, "maxtxsize": 0, "medianfee": 0, - "mediantime": 1544739695, + "mediantime": 1545169937, "mediantxsize": 0, "minfee": 0, "minfeerate": 0, @@ -135,7 +135,7 @@ "swtotal_size": 0, "swtotal_weight": 0, "swtxs": 0, - "time": 1544739696, + "time": 1545169938, "total_out": 0, "total_size": 0, "total_weight": 0, @@ -148,7 +148,7 @@ "avgfee": 3740, "avgfeerate": 20, "avgtxsize": 187, - "blockhash": "2b0a43a7589b45341cae34b57b4885564983abc083cb4b2a88a37b138985cc06", + "blockhash": "2341ff44e31cf6ccfcbdda1b3c04d0212e9e338802907ff58a1f0e7542c0467d", "feerate_percentiles": [ 20, 20, @@ -162,7 +162,7 @@ "maxfeerate": 20, "maxtxsize": 187, "medianfee": 3740, - "mediantime": 1544739695, + "mediantime": 1545169937, "mediantxsize": 187, "minfee": 3740, "minfeerate": 20, @@ -172,7 +172,7 @@ "swtotal_size": 0, "swtotal_weight": 0, "swtxs": 0, - "time": 1544739696, + "time": 1545169938, "total_out": 4999996260, "total_size": 187, "total_weight": 748, @@ -185,7 +185,7 @@ "avgfee": 18953, "avgfeerate": 109, "avgtxsize": 227, - "blockhash": "3786a71b2e49ccf92b0be9f63316c83dbe23a4332c3422f035bef0588faf0ff4", + "blockhash": "ef5d7f98c579a9666b916cc11b74cd7c3044467960d48ab0f7408217f4c70698", "feerate_percentiles": [ 20, 20, @@ -199,7 +199,7 @@ "maxfeerate": 301, "maxtxsize": 247, "medianfee": 3740, - "mediantime": 1544739696, + "mediantime": 1545169938, "mediantxsize": 247, "minfee": 3320, "minfeerate": 20, @@ -209,7 +209,7 @@ "swtotal_size": 494, "swtotal_weight": 1322, "swtxs": 2, - "time": 1544739696, + "time": 1545169938, "total_out": 9999939400, "total_size": 681, "total_weight": 2070, diff --git a/test/functional/feature_block.py b/test/functional/feature_block.py index 6486d7c66b..0ce6034b4f 100755 --- a/test/functional/feature_block.py +++ b/test/functional/feature_block.py @@ -17,7 +17,6 @@ from test_framework.messages import ( CTxIn, CTxOut, MAX_BLOCK_BASE_SIZE, - uint256_from_compact, uint256_from_str, ) from test_framework.mininode import P2PDataStore @@ -533,7 +532,6 @@ class FullBlockTest(BitcoinTestFramework): b44 = CBlock() b44.nTime = self.tip.nTime + 1 b44.hashPrevBlock = self.tip.sha256 - b44.nBits = 0x207fffff b44.vtx.append(coinbase) b44.block_height = height b44.hashMerkleRoot = b44.calc_merkle_root() @@ -548,7 +546,6 @@ class FullBlockTest(BitcoinTestFramework): b45 = CBlock() b45.nTime = self.tip.nTime + 1 b45.hashPrevBlock = self.tip.sha256 - b45.nBits = 0x207fffff b45.vtx.append(non_coinbase) b45.block_height = height+1 b45.hashMerkleRoot = b45.calc_merkle_root() @@ -564,7 +561,6 @@ class FullBlockTest(BitcoinTestFramework): b46 = CBlock() b46.nTime = b44.nTime + 1 b46.hashPrevBlock = b44.sha256 - b46.nBits = 0x207fffff b46.vtx = [] b46.block_height = height+1 b46.hashMerkleRoot = 0 @@ -575,14 +571,15 @@ class FullBlockTest(BitcoinTestFramework): self.blocks[46] = b46 self.sync_blocks([b46], False, 16, b'bad-blk-length', reconnect=True) - self.log.info("Reject a block with invalid work") - self.move_tip(44) - b47 = self.next_block(47, solve=False) - target = uint256_from_compact(b47.nBits) - while b47.sha256 < target: - b47.nNonce += 1 - b47.rehash() - self.sync_blocks([b47], False, request_block=False) + # No testing PoW +# self.log.info("Reject a block with invalid work") +# self.move_tip(44) +# b47 = self.next_block(47, solve=False) +# target = uint256_from_compact(b47.nBits) +# while b47.sha256 < target: +# b47.nNonce += 1 +# b47.rehash() +# self.sync_blocks([b47], False, request_block=False) self.log.info("Reject a block with a timestamp >2 hours in the future") self.move_tip(44) @@ -598,12 +595,13 @@ class FullBlockTest(BitcoinTestFramework): b49.solve() self.sync_blocks([b49], False, 16, b'bad-txnmrklroot', reconnect=True) - self.log.info("Reject a block with incorrect POW limit") - self.move_tip(44) - b50 = self.next_block(50) - b50.nBits = b50.nBits - 1 - b50.solve() - self.sync_blocks([b50], False, request_block=False, reconnect=True) + # No testing PoW +# self.log.info("Reject a block with incorrect POW limit") +# self.move_tip(44) +# b50 = self.next_block(50) +# b50.nBits = b50.nBits - 1 +# b50.solve() +# self.sync_blocks([b50], False, request_block=False, reconnect=True) self.log.info("Reject a block with two coinbase transactions") self.move_tip(44) diff --git a/test/functional/feature_block_subsidy.py b/test/functional/feature_block_subsidy.py index 4da1d075db..20dcfa0c7a 100755 --- a/test/functional/feature_block_subsidy.py +++ b/test/functional/feature_block_subsidy.py @@ -8,7 +8,7 @@ from binascii import b2a_hex from decimal import Decimal from test_framework.blocktools import create_coinbase -from test_framework.messages import CBlock +from test_framework.messages import CBlock, CProof from test_framework.test_framework import BitcoinTestFramework from test_framework.util import assert_equal @@ -34,7 +34,6 @@ class BlockSubsidyTest(BitcoinTestFramework): # Block will have 10 satoshi output, node 1 will ban addr = self.nodes[0].getnewaddress() sub_block = self.nodes[0].generatetoaddress(1, addr) - raw_coinbase = self.nodes[0].getrawtransaction(self.nodes[0].getblock(sub_block[0])["tx"][0]) decoded_coinbase = self.nodes[0].decoderawtransaction(raw_coinbase) @@ -69,6 +68,7 @@ class BlockSubsidyTest(BitcoinTestFramework): block.nBits = int(tmpl["bits"], 16) block.nNonce = 0 block.block_height = int(tmpl["height"]) + block.proof = CProof(bytearray.fromhex('51')) block.vtx = [coinbase_tx] assert_template(self.nodes[0], block, "bad-cb-amount") diff --git a/test/functional/feature_mandatory_coinbase.py b/test/functional/feature_mandatory_coinbase.py index 253b938727..b942afb9eb 100755 --- a/test/functional/feature_mandatory_coinbase.py +++ b/test/functional/feature_mandatory_coinbase.py @@ -7,7 +7,7 @@ from binascii import b2a_hex from test_framework.blocktools import create_coinbase -from test_framework.messages import CBlock +from test_framework.messages import CBlock, CProof from test_framework.test_framework import BitcoinTestFramework from test_framework.util import assert_equal, assert_raises_rpc_error @@ -39,7 +39,6 @@ class MandatoryCoinbaseTest(BitcoinTestFramework): node0.importprivkey(mandatory_privkey) self.log.info("generatetoaddress: Making blocks of various kinds, checking for rejection") - # Create valid blocks to get out of IBD and get some funds (subsidy goes to permitted addr) node0.generatetoaddress(101, mandatory_address) @@ -62,6 +61,7 @@ class MandatoryCoinbaseTest(BitcoinTestFramework): block.nTime = tmpl["curtime"] block.nBits = int(tmpl["bits"], 16) block.nNonce = 0 + block.proof = CProof(bytearray.fromhex('51')) block.vtx = [coinbase_tx] block.block_height = int(tmpl["height"]) diff --git a/test/functional/feature_minchainwork.py b/test/functional/feature_minchainwork.py deleted file mode 100755 index a1cced0bc7..0000000000 --- a/test/functional/feature_minchainwork.py +++ /dev/null @@ -1,89 +0,0 @@ -#!/usr/bin/env python3 -# Copyright (c) 2017-2018 The Bitcoin Core developers -# Distributed under the MIT software license, see the accompanying -# file COPYING or http://www.opensource.org/licenses/mit-license.php. -"""Test logic for setting nMinimumChainWork on command line. - -Nodes don't consider themselves out of "initial block download" until -their active chain has more work than nMinimumChainWork. - -Nodes don't download blocks from a peer unless the peer's best known block -has more work than nMinimumChainWork. - -While in initial block download, nodes won't relay blocks to their peers, so -test that this parameter functions as intended by verifying that block relay -only succeeds past a given node once its nMinimumChainWork has been exceeded. -""" - -import time - -from test_framework.test_framework import BitcoinTestFramework -from test_framework.util import connect_nodes, assert_equal - -# 2 hashes required per regtest block (with no difficulty adjustment) -REGTEST_WORK_PER_BLOCK = 2 - -class MinimumChainWorkTest(BitcoinTestFramework): - def set_test_params(self): - self.setup_clean_chain = True - self.num_nodes = 3 - - self.extra_args = [[], ["-minimumchainwork=0x65"], ["-minimumchainwork=0x65"]] - self.node_min_work = [0, 101, 101] - - def setup_network(self): - # This test relies on the chain setup being: - # node0 <- node1 <- node2 - # Before leaving IBD, nodes prefer to download blocks from outbound - # peers, so ensure that we're mining on an outbound peer and testing - # block relay to inbound peers. - self.setup_nodes() - for i in range(self.num_nodes-1): - connect_nodes(self.nodes[i+1], i) - - def run_test(self): - # Start building a chain on node0. node2 shouldn't be able to sync until node1's - # minchainwork is exceeded - starting_chain_work = REGTEST_WORK_PER_BLOCK # Genesis block's work - self.log.info("Testing relay across node %d (minChainWork = %d)", 1, self.node_min_work[1]) - - starting_blockcount = self.nodes[2].getblockcount() - - num_blocks_to_generate = int((self.node_min_work[1] - starting_chain_work) / REGTEST_WORK_PER_BLOCK) - self.log.info("Generating %d blocks on node0", num_blocks_to_generate) - hashes = self.nodes[0].generate(num_blocks_to_generate) - - self.log.info("Node0 current chain work: %s", self.nodes[0].getblockheader(hashes[-1])['chainwork']) - - # Sleep a few seconds and verify that node2 didn't get any new blocks - # or headers. We sleep, rather than sync_blocks(node0, node1) because - # it's reasonable either way for node1 to get the blocks, or not get - # them (since they're below node1's minchainwork). - time.sleep(3) - - self.log.info("Verifying node 2 has no more blocks than before") - self.log.info("Blockcounts: %s", [n.getblockcount() for n in self.nodes]) - # Node2 shouldn't have any new headers yet, because node1 should not - # have relayed anything. - assert_equal(len(self.nodes[2].getchaintips()), 1) - assert_equal(self.nodes[2].getchaintips()[0]['height'], 0) - - assert self.nodes[1].getbestblockhash() != self.nodes[0].getbestblockhash() - assert_equal(self.nodes[2].getblockcount(), starting_blockcount) - - self.log.info("Generating one more block") - self.nodes[0].generate(1) - - self.log.info("Verifying nodes are all synced") - - # Because nodes in regtest are all manual connections (eg using - # addnode), node1 should not have disconnected node0. If not for that, - # we'd expect node1 to have disconnected node0 for serving an - # insufficient work chain, in which case we'd need to reconnect them to - # continue the test. - - self.sync_all() - self.log.info("Blockcounts: %s", [n.getblockcount() for n in self.nodes]) - -if __name__ == '__main__': - MinimumChainWorkTest().main() diff --git a/test/functional/interface_bitcoin_cli.py b/test/functional/interface_bitcoin_cli.py index 251ee0dcc4..ac37097f02 100755 --- a/test/functional/interface_bitcoin_cli.py +++ b/test/functional/interface_bitcoin_cli.py @@ -61,7 +61,6 @@ class TestBitcoinCli(BitcoinTestFramework): assert_equal(cli_get_info['timeoffset'], network_info['timeoffset']) assert_equal(cli_get_info['connections'], network_info['connections']) assert_equal(cli_get_info['proxy'], network_info['networks'][0]['proxy']) - assert_equal(cli_get_info['difficulty'], blockchain_info['difficulty']) assert_equal(cli_get_info['testnet'], blockchain_info['chain'] == "test") assert_equal(cli_get_info['balance'], wallet_info['balance']) assert_equal(cli_get_info['keypoololdest'], wallet_info['keypoololdest']) diff --git a/test/functional/interface_rest.py b/test/functional/interface_rest.py index 423e0b02b3..91c614b96f 100755 --- a/test/functional/interface_rest.py +++ b/test/functional/interface_rest.py @@ -198,6 +198,9 @@ class RESTTest (BitcoinTestFramework): self.log.info("Test the /block and /headers URIs") bb_hash = self.nodes[0].getbestblockhash() + # Elements note: We stripped nBits and nNonce from headers when in signed block mode + # Each header has a OP_TRUE challenge script + # Check binary format response = self.test_rest_request("/block/{}".format(bb_hash), req_type=ReqType.BIN, ret_type=RetType.OBJ) assert_greater_than(int(response.getheader('content-length')), 84) @@ -205,21 +208,21 @@ class RESTTest (BitcoinTestFramework): # Compare with block header response_header = self.test_rest_request("/headers/1/{}".format(bb_hash), req_type=ReqType.BIN, ret_type=RetType.OBJ) - assert_equal(int(response_header.getheader('content-length')), 84) + assert_equal(int(response_header.getheader('content-length')), 79) response_header_bytes = response_header.read() - assert_equal(response_bytes[:84], response_header_bytes) + assert_equal(response_bytes[:79], response_header_bytes) # Check block hex format response_hex = self.test_rest_request("/block/{}".format(bb_hash), req_type=ReqType.HEX, ret_type=RetType.OBJ) - assert_greater_than(int(response_hex.getheader('content-length')), 160) + assert_greater_than(int(response_hex.getheader('content-length')), 151) response_hex_bytes = response_hex.read().strip(b'\n') assert_equal(binascii.hexlify(response_bytes), response_hex_bytes) # Compare with hex block header response_header_hex = self.test_rest_request("/headers/1/{}".format(bb_hash), req_type=ReqType.HEX, ret_type=RetType.OBJ) - assert_greater_than(int(response_header_hex.getheader('content-length')), 160) - response_header_hex_bytes = response_header_hex.read(168) - assert_equal(binascii.hexlify(response_bytes[:84]), response_header_hex_bytes) + assert_greater_than(int(response_header_hex.getheader('content-length')), 75*2) + response_header_hex_bytes = response_header_hex.read(79*2) + assert_equal(binascii.hexlify(response_bytes[:79]), response_header_hex_bytes) # Check json format block_json_obj = self.test_rest_request("/block/{}".format(bb_hash)) @@ -232,7 +235,7 @@ class RESTTest (BitcoinTestFramework): # Compare with normal RPC block response rpc_block_json = self.nodes[0].getblock(bb_hash) - for key in ['hash', 'confirmations', 'height', 'version', 'merkleroot', 'time', 'nonce', 'bits', 'difficulty', 'chainwork', 'previousblockhash']: + for key in ['hash', 'confirmations', 'height', 'version', 'merkleroot', 'time', 'previousblockhash']: assert_equal(json_obj[0][key], rpc_block_json[key]) # See if we can get 5 headers in one response diff --git a/test/functional/interface_zmq.py b/test/functional/interface_zmq.py index c032c967d2..0e77f2976c 100755 --- a/test/functional/interface_zmq.py +++ b/test/functional/interface_zmq.py @@ -96,7 +96,8 @@ class ZMQTest (BitcoinTestFramework): # Should receive the generated raw block. block = self.rawblock.receive() - assert_equal(genhashes[x], bytes_to_hex_str(hash256(block[:84]))) + # 79 bytes, last byte is saying block solution is "", ellide this for hash + assert_equal(genhashes[x], bytes_to_hex_str(hash256(block[:78]))) self.log.info("Wait for tx from second node") payment_txid = self.nodes[1].sendtoaddress(self.nodes[0].getnewaddress(), 1.0) diff --git a/test/functional/mempool_packages.py b/test/functional/mempool_packages.py index da254181fe..0b6f56fc6b 100755 --- a/test/functional/mempool_packages.py +++ b/test/functional/mempool_packages.py @@ -9,6 +9,7 @@ from decimal import Decimal from test_framework.messages import COIN from test_framework.test_framework import BitcoinTestFramework from test_framework.util import assert_equal, assert_raises_rpc_error, satoshi_round, sync_blocks, sync_mempools +import time MAX_ANCESTORS = 25 MAX_DESCENDANTS = 25 @@ -34,6 +35,23 @@ class MempoolPackagesTest(BitcoinTestFramework): return (txid, send_value) def run_test(self): + + # Create transaction with 3-second block delay, should fail to enter the template + txid = self.nodes[0].sendtoaddress(self.nodes[0].getnewaddress(), 1) + block = self.nodes[0].getnewblockhex(min_tx_age=3) + self.nodes[0].submitblock(block) + assert(txid in self.nodes[0].getrawmempool()) + time.sleep(3) + block = self.nodes[0].getnewblockhex(min_tx_age=3) + self.nodes[0].submitblock(block) + assert(txid not in self.nodes[0].getrawmempool()) + # Once more with no delay (default is 0, just testing default arg) + txid = self.nodes[0].sendtoaddress(self.nodes[0].getnewaddress(), 1) + block = self.nodes[0].getnewblockhex(min_tx_age=0) + self.nodes[0].submitblock(block) + assert(txid not in self.nodes[0].getrawmempool()) + assert_raises_rpc_error(-8, "min_tx_age must be non-negative.", self.nodes[0].getnewblockhex, -1) + ''' Mine some blocks and have them mature. ''' self.nodes[0].generate(101) utxo = self.nodes[0].listunspent(10) diff --git a/test/functional/mining_basic.py b/test/functional/mining_basic.py index 87acbbad88..9e30131a67 100755 --- a/test/functional/mining_basic.py +++ b/test/functional/mining_basic.py @@ -10,7 +10,6 @@ import copy from binascii import b2a_hex -from decimal import Decimal from test_framework.blocktools import create_coinbase from test_framework.messages import CBlock @@ -40,8 +39,6 @@ class MiningTest(BitcoinTestFramework): assert_equal(mining_info['chain'], self.chain) assert_equal(mining_info['currentblocktx'], 0) assert_equal(mining_info['currentblockweight'], 0) - assert_equal(mining_info['difficulty'], Decimal('4.656542373906925E-10')) - assert_equal(mining_info['networkhashps'], Decimal('0.003333333333333334')) assert_equal(mining_info['pooledtx'], 0) # Mine a block to leave initial block download @@ -61,7 +58,7 @@ class MiningTest(BitcoinTestFramework): block.hashPrevBlock = int(tmpl["previousblockhash"], 16) block.nTime = tmpl["curtime"] block.block_height = node.getblockcount()+1 - block.nBits = int(tmpl["bits"], 16) + block.nBits = 0 block.nNonce = 0 block.vtx = [coinbase_tx] @@ -110,10 +107,11 @@ class MiningTest(BitcoinTestFramework): bad_block_sn[TX_COUNT_OFFSET] += 1 assert_raises_rpc_error(-22, "Block decode failed", node.getblocktemplate, {'data': b2x(bad_block_sn), 'mode': 'proposal'}) - self.log.info("getblocktemplate: Test bad bits") - bad_block = copy.deepcopy(block) - bad_block.nBits = 469762303 # impossible in the real world - assert_template(node, bad_block, 'bad-diffbits') + # No PoW test +# self.log.info("getblocktemplate: Test bad bits") +# bad_block = copy.deepcopy(block) +# bad_block.nBits = 469762303 # impossible in the real world +# assert_template(node, bad_block, 'bad-diffbits') self.log.info("getblocktemplate: Test bad merkle root") bad_block = copy.deepcopy(block) diff --git a/test/functional/rpc_blockchain.py b/test/functional/rpc_blockchain.py index d681cdc8ab..c6731d683d 100755 --- a/test/functional/rpc_blockchain.py +++ b/test/functional/rpc_blockchain.py @@ -7,17 +7,14 @@ Test the following RPCs: - getblockchaininfo - gettxoutsetinfo - - getdifficulty - getbestblockhash - getblockhash - getblockheader - getchaintxstats - - getnetworkhashps - verifychain Tests correspond to code in rpc/blockchain.cpp. """ - from decimal import Decimal import http.client import subprocess @@ -29,7 +26,6 @@ from test_framework.util import ( assert_greater_than_or_equal, assert_raises, assert_raises_rpc_error, - assert_is_hex_string, assert_is_hash_string, ) from test_framework.blocktools import ( @@ -54,8 +50,6 @@ class BlockchainTest(BitcoinTestFramework): self._test_getchaintxstats() self._test_gettxoutsetinfo() self._test_getblockheader() - self._test_getdifficulty() - self._test_getnetworkhashps() self._test_stopatheight() self._test_waitforblockheight() assert self.nodes[0].verifychain(4, 0) @@ -68,17 +62,18 @@ class BlockchainTest(BitcoinTestFramework): 'bip9_softforks', 'blocks', 'chain', - 'chainwork', - 'difficulty', 'headers', 'initialblockdownload', 'mediantime', 'pruned', + 'signblock_asm', + 'signblock_hex', 'size_on_disk', 'softforks', 'verificationprogress', 'warnings', ] + res = self.nodes[0].getblockchaininfo() # result should have these additional pruning keys if manual pruning is enabled @@ -212,29 +207,14 @@ class BlockchainTest(BitcoinTestFramework): assert_equal(header['height'], 200) assert_equal(header['confirmations'], 1) assert_equal(header['previousblockhash'], secondbesthash) - assert_is_hex_string(header['chainwork']) assert_equal(header['nTx'], 1) assert_is_hash_string(header['hash']) assert_is_hash_string(header['previousblockhash']) assert_is_hash_string(header['merkleroot']) - assert_is_hash_string(header['bits'], length=None) assert isinstance(header['time'], int) assert isinstance(header['mediantime'], int) - assert isinstance(header['nonce'], int) assert isinstance(header['version'], int) assert isinstance(int(header['versionHex'], 16), int) - assert isinstance(header['difficulty'], Decimal) - - def _test_getdifficulty(self): - difficulty = self.nodes[0].getdifficulty() - # 1 hash in 2 should be valid, so difficulty should be 1/2**31 - # binary => decimal => binary math is why we do this check - assert abs(difficulty * 2**31 - 1) < 0.0001 - - def _test_getnetworkhashps(self): - hashes_per_second = self.nodes[0].getnetworkhashps() - # This should be 2 hashes every 10 minutes or 1/300 - assert abs(hashes_per_second * 300 - 1) < 0.0001 def _test_stopatheight(self): assert_equal(self.nodes[0].getblockcount(), 200) diff --git a/test/functional/test_framework/blocktools.py b/test/functional/test_framework/blocktools.py index 2094d7baa1..a964caa991 100644 --- a/test/functional/test_framework/blocktools.py +++ b/test/functional/test_framework/blocktools.py @@ -27,6 +27,7 @@ from .messages import ( ser_uint256, sha256, uint256_from_str, + CProof, ) from .script import ( CScript, @@ -61,6 +62,7 @@ def create_block(hashprev, coinbase, ntime=None): block.hashPrevBlock = hashprev block.nBits = 0x207fffff # difficulty retargeting is disabled in REGTEST chainparams block.vtx.append(coinbase) + block.proof = CProof(bytearray.fromhex('51'), bytearray.fromhex('')) block.hashMerkleRoot = block.calc_merkle_root() block.calc_sha256() return block diff --git a/test/functional/test_framework/messages.py b/test/functional/test_framework/messages.py index 465cfca5cf..b6c6ed13c6 100755 --- a/test/functional/test_framework/messages.py +++ b/test/functional/test_framework/messages.py @@ -496,6 +496,35 @@ class CTransaction(): % (self.nVersion, repr(self.vin), repr(self.vout), repr(self.wit), self.nLockTime) +class CProof(object): + # Default allows OP_TRUE blocks + def __init__(self, challenge=bytearray.fromhex('51'), solution=b""): + self.challenge = challenge + self.solution = solution + + def set_null(self): + self.challenge = b"" + self.solution = b"" + + def deserialize(self, f): + self.challenge = deser_string(f) + self.solution = deser_string(f) + + def serialize(self): + r = b"" + r += ser_string(self.challenge) + r += ser_string(self.solution) + return r + + def serialize_for_hash(self): + r = b"" + r += ser_string(self.challenge) + return r + + def __repr__(self): + return "CProof(challenge=%s solution=%s)" \ + % (self.challenge, self.solution) + class CBlockHeader(): def __init__(self, header=None): if header is None: @@ -506,8 +535,7 @@ class CBlockHeader(): self.hashMerkleRoot = header.hashMerkleRoot self.nTime = header.nTime self.block_height = header.block_height - self.nBits = header.nBits - self.nNonce = header.nNonce + self.proof = header.proof self.sha256 = header.sha256 self.hash = header.hash self.calc_sha256() @@ -518,8 +546,7 @@ class CBlockHeader(): self.hashMerkleRoot = 0 self.nTime = 0 self.block_height = 0 - self.nBits = 0 - self.nNonce = 0 + self.proof = CProof() self.sha256 = None self.hash = None @@ -529,8 +556,7 @@ class CBlockHeader(): self.hashMerkleRoot = deser_uint256(f) self.nTime = struct.unpack(" target: - return False +# TODO: check signatures +# target = uint256_from_compact(self.nBits) +# if self.sha256 > target: +# return False for tx in self.vtx: if not tx.is_valid(): return False @@ -630,15 +655,15 @@ class CBlock(CBlockHeader): def solve(self): self.rehash() - target = uint256_from_compact(self.nBits) - while self.sha256 > target: - self.nNonce += 1 - self.rehash() +# target = uint256_from_compact(self.nBits) +# while self.sha256 > target: +# self.nNonce += 1 +# self.rehash() def __repr__(self): - return "CBlock(nVersion=%i hashPrevBlock=%064x hashMerkleRoot=%064x nTime=%s nBits=%08x nNonce=%08x vtx=%s)" \ + return "CBlock(nVersion=%i hashPrevBlock=%064x hashMerkleRoot=%064x nTime=%s vtx=%s)" \ % (self.nVersion, self.hashPrevBlock, self.hashMerkleRoot, - time.ctime(self.nTime), self.nBits, self.nNonce, repr(self.vtx)) + time.ctime(self.nTime), repr(self.vtx)) class PrefilledTransaction(): diff --git a/test/functional/test_runner.py b/test/functional/test_runner.py index ea821d2223..19f0144e10 100755 --- a/test/functional/test_runner.py +++ b/test/functional/test_runner.py @@ -155,7 +155,6 @@ BASE_SCRIPTS = [ 'rpc_uptime.py', 'wallet_resendwallettransactions.py', 'wallet_fallbackfee.py', - 'feature_minchainwork.py', 'rpc_getblockstats.py', 'p2p_fingerprint.py', 'feature_uacomment.py',