Merge branch 'beta' into mergemaster

# Conflicts:
#	src/main.cpp
This commit is contained in:
jl777
2018-04-16 10:16:01 +03:00
parent 9226f69ef1
commit e73b2055c6
910 changed files with 112009 additions and 11364 deletions
+1 -1
View File
@@ -22,7 +22,7 @@ BOOST_FIXTURE_TEST_SUITE(Checkpoints_tests, BasicTestingSetup)
/*
BOOST_AUTO_TEST_CASE(sanity)
{
const Checkpoints::CCheckpointData& checkpoints = Params(CBaseChainParams::MAIN).Checkpoints();
const CCheckpointData& checkpoints = Params(CBaseChainParams::MAIN).Checkpoints();
BOOST_CHECK(Checkpoints::GetTotalBlocksEstimate(checkpoints) >= 134444);
}
*/
+5 -2
View File
@@ -8,6 +8,7 @@
#include "consensus/upgrades.h"
#include "keystore.h"
#include "main.h"
#include "net.h"
@@ -119,6 +120,8 @@ CTransaction RandomOrphan()
BOOST_AUTO_TEST_CASE(DoS_mapOrphans)
{
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
CKey key;
key.MakeNewKey(true);
CBasicKeyStore keystore;
@@ -151,7 +154,7 @@ BOOST_AUTO_TEST_CASE(DoS_mapOrphans)
tx.vout.resize(1);
tx.vout[0].nValue = 1*CENT;
tx.vout[0].scriptPubKey = GetScriptForDestination(key.GetPubKey().GetID());
SignSignature(keystore, txPrev, tx, 0);
SignSignature(keystore, txPrev, tx, 0, SIGHASH_ALL, consensusBranchId);
AddOrphanTx(tx, i);
}
@@ -171,7 +174,7 @@ BOOST_AUTO_TEST_CASE(DoS_mapOrphans)
tx.vin[j].prevout.n = j;
tx.vin[j].prevout.hash = txPrev.GetHash();
}
SignSignature(keystore, txPrev, tx, 0);
SignSignature(keystore, txPrev, tx, 0, SIGHASH_ALL, consensusBranchId);
// Re-use same signature for other inputs
// (they don't have to be valid for this test)
for (unsigned int j = 1; j < tx.vin.size(); j++)
+2 -2
View File
@@ -476,7 +476,7 @@ BOOST_AUTO_TEST_CASE(caddrinfo_get_new_bucket)
// this test could be a security issue.
BOOST_CHECK(info1.GetNewBucket(nKey1) != info1.GetNewBucket(nKey2));
// Test 31: Ports should not effect bucket placement in the addr
// Test 31: Ports should not affect bucket placement in the addr
CAddrInfo info2 = CAddrInfo(addr2, source1);
BOOST_CHECK(info1.GetKey() != info2.GetKey());
BOOST_CHECK(info1.GetNewBucket(nKey1) == info2.GetNewBucket(nKey1));
@@ -518,4 +518,4 @@ BOOST_AUTO_TEST_CASE(caddrinfo_get_new_bucket)
// than 64 buckets.
BOOST_CHECK(buckets.size() > 64);
}
BOOST_AUTO_TEST_SUITE_END()
BOOST_AUTO_TEST_SUITE_END()
+1 -1
View File
@@ -745,7 +745,7 @@ BOOST_AUTO_TEST_CASE(coins_coinbase_spends)
BOOST_CHECK(tx.IsCoinBase());
CValidationState state;
UpdateCoins(tx, state, cache, 100);
UpdateCoins(tx, cache, 100);
// Create coinbase spend
CMutableTransaction mtx2;
+1 -1
View File
@@ -53,7 +53,7 @@
"in=4d49a71ec9da436f71ec4ee231d04f292a29cd316f598bb7068feccabdc59485:0",
"set=privatekeys:[\"5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip4nEB3kEsreAnchuDf\"]",
"set=prevtxs:[{\"txid\":\"4d49a71ec9da436f71ec4ee231d04f292a29cd316f598bb7068feccabdc59485\",\"vout\":0,\"scriptPubKey\":\"76a91491b24bf9f5288532960ac687abb035127b1d28a588ac\"}]",
"sign=ALL",
"sign=1:ALL",
"outaddr=0.001:t1Ruz6gK4QPZoPPGpHaieupnnh62mktjQE7"],
"output_cmp": "txcreatesign.hex"
}
+28 -70
View File
@@ -523,14 +523,14 @@
],
["Increase DERSIG test coverage"],
["0x4a 0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0 CHECKSIG NOT", "DERSIG", "Overly long signature is incorrectly encoded for DERSIG"],
["0x25 0x30220220000000000000000000000000000000000000000000000000000000000000000000", "0 CHECKSIG NOT", "DERSIG", "Missing S is incorrectly encoded for DERSIG"],
["0x27 0x3024021077777777777777777777777777777777020a7777777777777777777777777777777701", "0 CHECKSIG NOT", "DERSIG", "S with invalid S length is incorrectly encoded for DERSIG"],
["0x27 0x302403107777777777777777777777777777777702107777777777777777777777777777777701", "0 CHECKSIG NOT", "DERSIG", "Non-integer R is incorrectly encoded for DERSIG"],
["0x27 0x302402107777777777777777777777777777777703107777777777777777777777777777777701", "0 CHECKSIG NOT", "DERSIG", "Non-integer S is incorrectly encoded for DERSIG"],
["0x17 0x3014020002107777777777777777777777777777777701", "0 CHECKSIG NOT", "DERSIG", "Zero-length R is incorrectly encoded for DERSIG"],
["0x17 0x3014021077777777777777777777777777777777020001", "0 CHECKSIG NOT", "DERSIG", "Zero-length S is incorrectly encoded for DERSIG"],
["0x27 0x302402107777777777777777777777777777777702108777777777777777777777777777777701", "0 CHECKSIG NOT", "DERSIG", "Negative S is incorrectly encoded for DERSIG"],
["0x4a 0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0 CHECKSIG NOT", "", "Overly long signature is incorrectly encoded"],
["0x25 0x30220220000000000000000000000000000000000000000000000000000000000000000000", "0 CHECKSIG NOT", "", "Missing S is incorrectly encoded"],
["0x27 0x3024021077777777777777777777777777777777020a7777777777777777777777777777777701", "0 CHECKSIG NOT", "", "S with invalid S length is incorrectly encoded"],
["0x27 0x302403107777777777777777777777777777777702107777777777777777777777777777777701", "0 CHECKSIG NOT", "", "Non-integer R is incorrectly encoded"],
["0x27 0x302402107777777777777777777777777777777703107777777777777777777777777777777701", "0 CHECKSIG NOT", "", "Non-integer S is incorrectly encoded"],
["0x17 0x3014020002107777777777777777777777777777777701", "0 CHECKSIG NOT", "", "Zero-length R is incorrectly encoded"],
["0x17 0x3014021077777777777777777777777777777777020001", "0 CHECKSIG NOT", "", "Zero-length S is incorrectly encoded"],
["0x27 0x302402107777777777777777777777777777777702108777777777777777777777777777777701", "0 CHECKSIG NOT", "", "Negative S is incorrectly encoded"],
["Automatically generated test cases"],
[
@@ -578,140 +578,98 @@
[
"0x47 0x304402200060558477337b9022e70534f1fea71a318caf836812465a2509931c5e7c4987022078ec32bd50ac9e03a349ba953dfd9fe1c8d2dd8bdb1d38ddca844d3d5c78c11801",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG",
"DERSIG",
"",
"P2PK with too much R padding"
],
[
"0x48 0x304502202de8c03fc525285c9c535631019a5f2af7c6454fa9eb392a3756a4917c420edd02210046130bf2baf7cfc065067c8b9e33a066d9c15edcea9feb0ca2d233e3597925b401",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG",
"DERSIG",
"",
"P2PK with too much S padding"
],
[
"0x47 0x30440220d7a0417c3f6d1a15094d1cf2a3378ca0503eb8a57630953a9e2987e21ddd0a6502207a6266d686c99090920249991d3d42065b6d43eb70187b219c0db82e4f94d1a201",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG",
"DERSIG",
"",
"P2PK with too little R padding"
],
[
"0x47 0x30440220005ece1335e7f757a1a1f476a7fb5bd90964e8a022489f890614a04acfb734c002206c12b8294a6513c7710e8c82d3c23d75cdbfe83200eb7efb495701958501a5d601",
"0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 CHECKSIG NOT",
"DERSIG",
"",
"P2PK NOT with bad sig with too much R padding"
],
[
"0x47 0x30440220005ece1335e7f657a1a1f476a7fb5bd90964e8a022489f890614a04acfb734c002206c12b8294a6513c7710e8c82d3c23d75cdbfe83200eb7efb495701958501a5d601",
"0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 CHECKSIG NOT",
"",
"P2PK NOT with too much R padding but no DERSIG"
],
[
"0x47 0x30440220005ece1335e7f657a1a1f476a7fb5bd90964e8a022489f890614a04acfb734c002206c12b8294a6513c7710e8c82d3c23d75cdbfe83200eb7efb495701958501a5d601",
"0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 CHECKSIG NOT",
"DERSIG",
"P2PK NOT with too much R padding"
],
[
"0x47 0x30440220d7a0417c3f6d1a15094d1cf2a3378ca0503eb8a57630953a9e2987e21ddd0a6502207a6266d686c99090920249991d3d42065b6d43eb70187b219c0db82e4f94d1a201",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG",
"DERSIG",
"BIP66 example 1, with DERSIG"
"",
"BIP66 example 1"
],
[
"0x47 0x304402208e43c0b91f7c1e5bc58e41c8185f8a6086e111b0090187968a86f2822462d3c902200a58f4076b1133b18ff1dc83ee51676e44c60cc608d9534e0df5ace0424fc0be01",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG NOT",
"",
"BIP66 example 2, without DERSIG"
],
[
"0x47 0x304402208e43c0b91f7c1e5bc58e41c8185f8a6086e111b0090187968a86f2822462d3c902200a58f4076b1133b18ff1dc83ee51676e44c60cc608d9534e0df5ace0424fc0be01",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG NOT",
"DERSIG",
"BIP66 example 2, with DERSIG"
"BIP66 example 2"
],
[
"0",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG",
"",
"BIP66 example 3, without DERSIG"
],
[
"0",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG",
"DERSIG",
"BIP66 example 3, with DERSIG"
"BIP66 example 3"
],
[
"1",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG",
"",
"BIP66 example 5, without DERSIG"
],
[
"1",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG",
"DERSIG",
"BIP66 example 5, with DERSIG"
"BIP66 example 5"
],
[
"1",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG NOT",
"DERSIG",
"BIP66 example 6, with DERSIG"
"",
"BIP66 example 6"
],
[
"0 0x47 0x30440220cae00b1444babfbf6071b0ba8707f6bd373da3df494d6e74119b0430c5db810502205d5231b8c5939c8ff0c82242656d6e06edb073d42af336c99fe8837c36ea39d501 0x47 0x3044022027c2714269ca5aeecc4d70edc88ba5ee0e3da4986e9216028f489ab4f1b8efce022022bd545b4951215267e4c5ceabd4c5350331b2e4a0b6494c56f361fa5a57a1a201",
"2 0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 2 CHECKMULTISIG",
"DERSIG",
"BIP66 example 7, with DERSIG"
"",
"BIP66 example 7"
],
[
"0 0x47 0x30440220b119d67d389315308d1745f734a51ff3ec72e06081e84e236fdf9dc2f5d2a64802204b04e3bc38674c4422ea317231d642b56dc09d214a1ecbbf16ecca01ed996e2201 0x47 0x3044022079ea80afd538d9ada421b5101febeb6bc874e01dde5bca108c1d0479aec339a4022004576db8f66130d1df686ccf00935703689d69cf539438da1edab208b0d63c4801",
"2 0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 2 CHECKMULTISIG NOT",
"",
"BIP66 example 8, without DERSIG"
],
[
"0 0x47 0x30440220b119d67d389315308d1745f734a51ff3ec72e06081e84e236fdf9dc2f5d2a64802204b04e3bc38674c4422ea317231d642b56dc09d214a1ecbbf16ecca01ed996e2201 0x47 0x3044022079ea80afd538d9ada421b5101febeb6bc874e01dde5bca108c1d0479aec339a4022004576db8f66130d1df686ccf00935703689d69cf539438da1edab208b0d63c4801",
"2 0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 2 CHECKMULTISIG NOT",
"DERSIG",
"BIP66 example 8, with DERSIG"
"BIP66 example 8"
],
[
"0 0 0x47 0x3044022081aa9d436f2154e8b6d600516db03d78de71df685b585a9807ead4210bd883490220534bb6bdf318a419ac0749660b60e78d17d515558ef369bf872eff405b676b2e01",
"2 0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 2 CHECKMULTISIG",
"",
"BIP66 example 9, without DERSIG"
],
[
"0 0 0x47 0x3044022081aa9d436f2154e8b6d600516db03d78de71df685b585a9807ead4210bd883490220534bb6bdf318a419ac0749660b60e78d17d515558ef369bf872eff405b676b2e01",
"2 0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 2 CHECKMULTISIG",
"DERSIG",
"BIP66 example 9, with DERSIG"
"BIP66 example 9"
],
[
"0 0 0x47 0x30440220da6f441dc3b4b2c84cfa8db0cd5b34ed92c9e01686de5a800d40498b70c0dcac02207c2cf91b0c32b860c4cd4994be36cfb84caf8bb7c3a8e4d96a31b2022c5299c501",
"2 0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 2 CHECKMULTISIG NOT",
"DERSIG",
"BIP66 example 10, with DERSIG"
"",
"BIP66 example 10"
],
[
"0 0x47 0x30440220cae00b1444babfbf6071b0ba8707f6bd373da3df494d6e74119b0430c5db810502205d5231b8c5939c8ff0c82242656d6e06edb073d42af336c99fe8837c36ea39d501 0",
"2 0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 2 CHECKMULTISIG",
"",
"BIP66 example 11, without DERSIG"
],
[
"0 0x47 0x30440220cae00b1444babfbf6071b0ba8707f6bd373da3df494d6e74119b0430c5db810502205d5231b8c5939c8ff0c82242656d6e06edb073d42af336c99fe8837c36ea39d501 0",
"2 0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 2 CHECKMULTISIG",
"DERSIG",
"BIP66 example 11, with DERSIG"
"BIP66 example 11"
],
[
"0x48 0x304402203e4516da7253cf068effec6b95c41221c0cf3a8e6ccb8cbf1725b562e9afde2c022054e1c258c2981cdfba5df1f46661fb6541c44f77ca0092f3600331abfffb12510101",
"0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 CHECKSIG",
"DERSIG",
"P2PK with multi-byte hashtype, with DERSIG"
"",
"P2PK with multi-byte hashtype"
],
[
"0x48 0x304502203e4516da7253cf068effec6b95c41221c0cf3a8e6ccb8cbf1725b562e9afde2c022100ab1e3da73d67e32045a20e0b999e049978ea8d6ee5480d485fcf2ce0d03b2ef001",
+2 -78
View File
@@ -690,16 +690,6 @@
"2-of-2 CHECKMULTISIG NOT with both pubkeys valid, but second signature invalid. Valid pubkey fails, and CHECKMULTISIG exits early, prior to evaluation of second invalid signature."
],
["Increase test coverage for DERSIG"],
["0x4a 0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0 CHECKSIG NOT", "", "Overly long signature is correctly encoded"],
["0x25 0x30220220000000000000000000000000000000000000000000000000000000000000000000", "0 CHECKSIG NOT", "", "Missing S is correctly encoded"],
["0x27 0x3024021077777777777777777777777777777777020a7777777777777777777777777777777701", "0 CHECKSIG NOT", "", "S with invalid S length is correctly encoded"],
["0x27 0x302403107777777777777777777777777777777702107777777777777777777777777777777701", "0 CHECKSIG NOT", "", "Non-integer R is correctly encoded"],
["0x27 0x302402107777777777777777777777777777777703107777777777777777777777777777777701", "0 CHECKSIG NOT", "", "Non-integer S is correctly encoded"],
["0x17 0x3014020002107777777777777777777777777777777701", "0 CHECKSIG NOT", "", "Zero-length R is correctly encoded"],
["0x17 0x3014021077777777777777777777777777777777020001", "0 CHECKSIG NOT", "", "Zero-length S is correctly encoded for DERSIG"],
["0x27 0x302402107777777777777777777777777777777702108777777777777777777777777777777701", "0 CHECKSIG NOT", "", "Negative S is correctly encoded"],
["Automatically generated test cases"],
[
"0x47 0x304402200a5c6163f07b8d3b013c4d1d6dba25e780b39658d79ba37af7057a3b7f15ffa102201fd9b4eaa9943f734928b99a83592c2e7bf342ea2680f6a2bb705167966b742001",
@@ -743,83 +733,17 @@
"P2SH",
"P2SH(2-of-3)"
],
[
"0x47 0x304402200060558477337b9022e70534f1fea71a318caf836812465a2509931c5e7c4987022078ec32bd50ac9e03a349ba953dfd9fe1c8d2dd8bdb1d38ddca844d3d5c78c11801",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG",
"",
"P2PK with too much R padding but no DERSIG"
],
[
"0x48 0x304502202de8c03fc525285c9c535631019a5f2af7c6454fa9eb392a3756a4917c420edd02210046130bf2baf7cfc065067c8b9e33a066d9c15edcea9feb0ca2d233e3597925b401",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG",
"",
"P2PK with too much S padding but no DERSIG"
],
[
"0x47 0x30440220d7a0417c3f6d1a15094d1cf2a3378ca0503eb8a57630953a9e2987e21ddd0a6502207a6266d686c99090920249991d3d42065b6d43eb70187b219c0db82e4f94d1a201",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG",
"",
"P2PK with too little R padding but no DERSIG"
],
[
"0x47 0x30440220005ece1335e7f757a1a1f476a7fb5bd90964e8a022489f890614a04acfb734c002206c12b8294a6513c7710e8c82d3c23d75cdbfe83200eb7efb495701958501a5d601",
"0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 CHECKSIG NOT",
"",
"P2PK NOT with bad sig with too much R padding but no DERSIG"
],
[
"0x47 0x30440220d7a0417c3f6d1a15094d1cf2a3378ca0503eb8a57630953a9e2987e21ddd0a6502207a6266d686c99090920249991d3d42065b6d43eb70187b219c0db82e4f94d1a201",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG",
"",
"BIP66 example 1, without DERSIG"
],
[
"0",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG NOT",
"",
"BIP66 example 4, without DERSIG"
],
[
"0",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG NOT",
"DERSIG",
"BIP66 example 4, with DERSIG"
],
[
"1",
"0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 CHECKSIG NOT",
"",
"BIP66 example 6, without DERSIG"
],
[
"0 0x47 0x30440220cae00b1444babfbf6071b0ba8707f6bd373da3df494d6e74119b0430c5db810502205d5231b8c5939c8ff0c82242656d6e06edb073d42af336c99fe8837c36ea39d501 0x47 0x3044022027c2714269ca5aeecc4d70edc88ba5ee0e3da4986e9216028f489ab4f1b8efce022022bd545b4951215267e4c5ceabd4c5350331b2e4a0b6494c56f361fa5a57a1a201",
"2 0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 2 CHECKMULTISIG",
"",
"BIP66 example 7, without DERSIG"
],
[
"0 0 0x47 0x30440220da6f441dc3b4b2c84cfa8db0cd5b34ed92c9e01686de5a800d40498b70c0dcac02207c2cf91b0c32b860c4cd4994be36cfb84caf8bb7c3a8e4d96a31b2022c5299c501",
"2 0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 2 CHECKMULTISIG NOT",
"",
"BIP66 example 10, without DERSIG"
"BIP66 example 4"
],
[
"0 0x47 0x30440220b119d67d389315308d1745f734a51ff3ec72e06081e84e236fdf9dc2f5d2a64802204b04e3bc38674c4422ea317231d642b56dc09d214a1ecbbf16ecca01ed996e2201 0",
"2 0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 2 CHECKMULTISIG NOT",
"",
"BIP66 example 12, without DERSIG"
],
[
"0 0x47 0x30440220b119d67d389315308d1745f734a51ff3ec72e06081e84e236fdf9dc2f5d2a64802204b04e3bc38674c4422ea317231d642b56dc09d214a1ecbbf16ecca01ed996e2201 0",
"2 0x21 0x038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508 0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 2 CHECKMULTISIG NOT",
"DERSIG",
"BIP66 example 12, with DERSIG"
],
[
"0x48 0x304402203e4516da7253cf068effec6b95c41221c0cf3a8e6ccb8cbf1725b562e9afde2c022054e1c258c2981cdfba5df1f46661fb6541c44f77ca0092f3600331abfffb12510101",
"0x21 0x03363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640 CHECKSIG",
"",
"P2PK with multi-byte hashtype, without DERSIG"
"BIP66 example 12"
],
[
"0x48 0x304502203e4516da7253cf068effec6b95c41221c0cf3a8e6ccb8cbf1725b562e9afde2c022100ab1e3da73d67e32045a20e0b999e049978ea8d6ee5480d485fcf2ce0d03b2ef001",
+501 -501
View File
File diff suppressed because one or more lines are too long
+31
View File
@@ -86,12 +86,43 @@
[[["b3da01dd4aae683c7aee4d5d8b52a540a508e1115f77cd7fa9a291243f501223", 0, "HASH160 0x14 0xb1ce99298d5f07364b57b1e5c9cc00be0b04a954 EQUAL"]],
"01000000012312503f2491a2a97fcd775f11e108a540a5528b5d4dee7a3c68ae4add01dab300000000fdfe000048304502207aacee820e08b0b174e248abd8d7a34ed63b5da3abedb99934df9fddd65c05c4022100dfe87896ab5ee3df476c2655f9fbe5bd089dccbef3e4ea05b5d121169fe7f5f401483045022100f6649b0eddfdfd4ad55426663385090d51ee86c3481bdc6b0c18ea6c0ece2c0b0220561c315b07cffa6f7dd9df96dbae9200c2dee09bf93cc35ca05e6cdf613340aa014c695221031d11db38972b712a9fe1fc023577c7ae3ddb4a3004187d41c45121eecfdbb5b7210207ec36911b6ad2382860d32989c7b8728e9489d7bbc94a6b5509ef0029be128821024ea9fac06f666a4adc3fc1357b7bec1fd0bdece2b9d08579226a8ebde53058e453aeffffffff0180380100000000001976a914c9b99cddf847d10685a4fabaa0baf505f7c3dfab88ac00000000", "P2SH"],
["The following is 23b397edccd3740a74adb603c9756370fafcde9bcc4483eb271ecad09a94dd63"],
["It is of particular interest because it contains an invalidly-encoded signature which OpenSSL accepts"],
["See http://r6.ca/blog/20111119T211504Z.html"],
["It is also the first OP_CHECKMULTISIG transaction on the Bitcoin block chain in standard form"],
[[["60a20bd93aa49ab4b28d514ec10b06e1829ce6818ec06cd3aabd013ebcdc4bb1", 0, "1 0x41 0x04cc71eb30d653c0c3163990c47b976f3fb3f37cccdcbedb169a1dfef58bbfbfaff7d8a473e7e2e6d317b87bafe8bde97e3cf8f065dec022b51d11fcdd0d348ac4 0x41 0x0461cbdcc5409fb4b4d42b51d33381354d80e550078cb532a34bfa2fcfdeb7d76519aecc62770f5b0e4ef8551946d8a540911abe3e7854a26f39f58b25c15342af 2 OP_CHECKMULTISIG"]],
"0100000001b14bdcbc3e01bdaad36cc08e81e69c82e1060bc14e518db2b49aa43ad90ba26000000000490047304402203f16c6f40162ab686621ef3000b04e75418a0c0cb2d8aebeac894ae360ac1e780220ddc15ecdfc3507ac48e1681a33eb60996631bf6bf5bc0a0682c4db743ce7ca2b01ffffffff0140420f00000000001976a914660d4ef3a743e3e696ad990364e555c271ad504b88ac00000000", "P2SH"],
["The following is a tweaked form of 23b397edccd3740a74adb603c9756370fafcde9bcc4483eb271ecad09a94dd63"],
["It is an OP_CHECKMULTISIG with an arbitrary extra byte stuffed into the signature at pos length - 2"],
["The dummy byte is fine however, so the NULLDUMMY flag should be happy"],
[[["60a20bd93aa49ab4b28d514ec10b06e1829ce6818ec06cd3aabd013ebcdc4bb1", 0, "1 0x41 0x04cc71eb30d653c0c3163990c47b976f3fb3f37cccdcbedb169a1dfef58bbfbfaff7d8a473e7e2e6d317b87bafe8bde97e3cf8f065dec022b51d11fcdd0d348ac4 0x41 0x0461cbdcc5409fb4b4d42b51d33381354d80e550078cb532a34bfa2fcfdeb7d76519aecc62770f5b0e4ef8551946d8a540911abe3e7854a26f39f58b25c15342af 2 OP_CHECKMULTISIG"]],
"0100000001b14bdcbc3e01bdaad36cc08e81e69c82e1060bc14e518db2b49aa43ad90ba260000000004a0048304402203f16c6f40162ab686621ef3000b04e75418a0c0cb2d8aebeac894ae360ac1e780220ddc15ecdfc3507ac48e1681a33eb60996631bf6bf5bc0a0682c4db743ce7ca2bab01ffffffff0140420f00000000001976a914660d4ef3a743e3e696ad990364e555c271ad504b88ac00000000", "P2SH,NULLDUMMY"],
["The following is a tweaked form of 23b397edccd3740a74adb603c9756370fafcde9bcc4483eb271ecad09a94dd63"],
["It is an OP_CHECKMULTISIG with the dummy value set to something other than an empty string"],
[[["60a20bd93aa49ab4b28d514ec10b06e1829ce6818ec06cd3aabd013ebcdc4bb1", 0, "1 0x41 0x04cc71eb30d653c0c3163990c47b976f3fb3f37cccdcbedb169a1dfef58bbfbfaff7d8a473e7e2e6d317b87bafe8bde97e3cf8f065dec022b51d11fcdd0d348ac4 0x41 0x0461cbdcc5409fb4b4d42b51d33381354d80e550078cb532a34bfa2fcfdeb7d76519aecc62770f5b0e4ef8551946d8a540911abe3e7854a26f39f58b25c15342af 2 OP_CHECKMULTISIG"]],
"0100000001b14bdcbc3e01bdaad36cc08e81e69c82e1060bc14e518db2b49aa43ad90ba260000000004a01ff47304402203f16c6f40162ab686621ef3000b04e75418a0c0cb2d8aebeac894ae360ac1e780220ddc15ecdfc3507ac48e1681a33eb60996631bf6bf5bc0a0682c4db743ce7ca2b01ffffffff0140420f00000000001976a914660d4ef3a743e3e696ad990364e555c271ad504b88ac00000000", "P2SH"],
["As above, but using a OP_1"],
[[["60a20bd93aa49ab4b28d514ec10b06e1829ce6818ec06cd3aabd013ebcdc4bb1", 0, "1 0x41 0x04cc71eb30d653c0c3163990c47b976f3fb3f37cccdcbedb169a1dfef58bbfbfaff7d8a473e7e2e6d317b87bafe8bde97e3cf8f065dec022b51d11fcdd0d348ac4 0x41 0x0461cbdcc5409fb4b4d42b51d33381354d80e550078cb532a34bfa2fcfdeb7d76519aecc62770f5b0e4ef8551946d8a540911abe3e7854a26f39f58b25c15342af 2 OP_CHECKMULTISIG"]],
"0100000001b14bdcbc3e01bdaad36cc08e81e69c82e1060bc14e518db2b49aa43ad90ba26000000000495147304402203f16c6f40162ab686621ef3000b04e75418a0c0cb2d8aebeac894ae360ac1e780220ddc15ecdfc3507ac48e1681a33eb60996631bf6bf5bc0a0682c4db743ce7ca2b01ffffffff0140420f00000000001976a914660d4ef3a743e3e696ad990364e555c271ad504b88ac00000000", "P2SH"],
["As above, but using a OP_1NEGATE"],
[[["60a20bd93aa49ab4b28d514ec10b06e1829ce6818ec06cd3aabd013ebcdc4bb1", 0, "1 0x41 0x04cc71eb30d653c0c3163990c47b976f3fb3f37cccdcbedb169a1dfef58bbfbfaff7d8a473e7e2e6d317b87bafe8bde97e3cf8f065dec022b51d11fcdd0d348ac4 0x41 0x0461cbdcc5409fb4b4d42b51d33381354d80e550078cb532a34bfa2fcfdeb7d76519aecc62770f5b0e4ef8551946d8a540911abe3e7854a26f39f58b25c15342af 2 OP_CHECKMULTISIG"]],
"0100000001b14bdcbc3e01bdaad36cc08e81e69c82e1060bc14e518db2b49aa43ad90ba26000000000494f47304402203f16c6f40162ab686621ef3000b04e75418a0c0cb2d8aebeac894ae360ac1e780220ddc15ecdfc3507ac48e1681a33eb60996631bf6bf5bc0a0682c4db743ce7ca2b01ffffffff0140420f00000000001976a914660d4ef3a743e3e696ad990364e555c271ad504b88ac00000000", "P2SH"],
["The following is a tweaked form of 23b397edccd3740a74adb603c9756370fafcde9bcc4483eb271ecad09a94dd63"],
["It is an OP_CHECKMULTISIG with the dummy value missing"],
[[["60a20bd93aa49ab4b28d514ec10b06e1829ce6818ec06cd3aabd013ebcdc4bb1", 0, "1 0x41 0x04cc71eb30d653c0c3163990c47b976f3fb3f37cccdcbedb169a1dfef58bbfbfaff7d8a473e7e2e6d317b87bafe8bde97e3cf8f065dec022b51d11fcdd0d348ac4 0x41 0x0461cbdcc5409fb4b4d42b51d33381354d80e550078cb532a34bfa2fcfdeb7d76519aecc62770f5b0e4ef8551946d8a540911abe3e7854a26f39f58b25c15342af 2 OP_CHECKMULTISIG"]],
"0100000001b14bdcbc3e01bdaad36cc08e81e69c82e1060bc14e518db2b49aa43ad90ba260000000004847304402203f16c6f40162ab686621ef3000b04e75418a0c0cb2d8aebeac894ae360ac1e780220ddc15ecdfc3507ac48e1681a33eb60996631bf6bf5bc0a0682c4db743ce7ca2b01ffffffff0140420f00000000001976a914660d4ef3a743e3e696ad990364e555c271ad504b88ac00000000", "P2SH"],
["The following is f7fdd091fa6d8f5e7a8c2458f5c38faffff2d3f1406b6e4fe2c99dcc0d2d1cbb"],
["It caught a bug in the workaround for 23b397edccd3740a74adb603c9756370fafcde9bcc4483eb271ecad09a94dd63 in an overly simple implementation"],
[[["b464e85df2a238416f8bdae11d120add610380ea07f4ef19c5f9dfd472f96c3d", 0, "DUP HASH160 0x14 0xbef80ecf3a44500fda1bc92176e442891662aed2 EQUALVERIFY CHECKSIG"],
["b7978cc96e59a8b13e0865d3f95657561a7f725be952438637475920bac9eb21", 1, "DUP HASH160 0x14 0xbef80ecf3a44500fda1bc92176e442891662aed2 EQUALVERIFY CHECKSIG"]],
"01000000023d6cf972d4dff9c519eff407ea800361dd0a121de1da8b6f4138a2f25de864b4000000008a4730440220ffda47bfc776bcd269da4832626ac332adfca6dd835e8ecd83cd1ebe7d709b0e022049cffa1cdc102a0b56e0e04913606c70af702a1149dc3b305ab9439288fee090014104266abb36d66eb4218a6dd31f09bb92cf3cfa803c7ea72c1fc80a50f919273e613f895b855fb7465ccbc8919ad1bd4a306c783f22cd3227327694c4fa4c1c439affffffff21ebc9ba20594737864352e95b727f1a565756f9d365083eb1a8596ec98c97b7010000008a4730440220503ff10e9f1e0de731407a4a245531c9ff17676eda461f8ceeb8c06049fa2c810220c008ac34694510298fa60b3f000df01caa244f165b727d4896eb84f81e46bcc4014104266abb36d66eb4218a6dd31f09bb92cf3cfa803c7ea72c1fc80a50f919273e613f895b855fb7465ccbc8919ad1bd4a306c783f22cd3227327694c4fa4c1c439affffffff01f0da5200000000001976a914857ccd42dded6df32949d4646dfa10a92458cfaa88ac00000000", "P2SH"],
["CHECKMULTISIG SCRIPT_VERIFY_NULLDUMMY tests:"],
-32
View File
@@ -5,32 +5,6 @@
["serializedTransaction, verifyFlags]"],
["Objects that are only a single string (like this one) are ignored"],
["The following is 23b397edccd3740a74adb603c9756370fafcde9bcc4483eb271ecad09a94dd63"],
["It is of particular interest because it contains an invalidly-encoded signature which OpenSSL accepts"],
["See http://r6.ca/blog/20111119T211504Z.html"],
["It is also the first OP_CHECKMULTISIG transaction in standard form"],
[[["60a20bd93aa49ab4b28d514ec10b06e1829ce6818ec06cd3aabd013ebcdc4bb1", 0, "1 0x41 0x04cc71eb30d653c0c3163990c47b976f3fb3f37cccdcbedb169a1dfef58bbfbfaff7d8a473e7e2e6d317b87bafe8bde97e3cf8f065dec022b51d11fcdd0d348ac4 0x41 0x0461cbdcc5409fb4b4d42b51d33381354d80e550078cb532a34bfa2fcfdeb7d76519aecc62770f5b0e4ef8551946d8a540911abe3e7854a26f39f58b25c15342af 2 OP_CHECKMULTISIG"]],
"0100000001b14bdcbc3e01bdaad36cc08e81e69c82e1060bc14e518db2b49aa43ad90ba26000000000490047304402203f16c6f40162ab686621ef3000b04e75418a0c0cb2d8aebeac894ae360ac1e780220ddc15ecdfc3507ac48e1681a33eb60996631bf6bf5bc0a0682c4db743ce7ca2b01ffffffff0140420f00000000001976a914660d4ef3a743e3e696ad990364e555c271ad504b88ac00000000", "P2SH"],
["The following is a tweaked form of 23b397edccd3740a74adb603c9756370fafcde9bcc4483eb271ecad09a94dd63"],
["It is an OP_CHECKMULTISIG with an arbitrary extra byte stuffed into the signature at pos length - 2"],
["The dummy byte is fine however, so the NULLDUMMY flag should be happy"],
[[["60a20bd93aa49ab4b28d514ec10b06e1829ce6818ec06cd3aabd013ebcdc4bb1", 0, "1 0x41 0x04cc71eb30d653c0c3163990c47b976f3fb3f37cccdcbedb169a1dfef58bbfbfaff7d8a473e7e2e6d317b87bafe8bde97e3cf8f065dec022b51d11fcdd0d348ac4 0x41 0x0461cbdcc5409fb4b4d42b51d33381354d80e550078cb532a34bfa2fcfdeb7d76519aecc62770f5b0e4ef8551946d8a540911abe3e7854a26f39f58b25c15342af 2 OP_CHECKMULTISIG"]],
"0100000001b14bdcbc3e01bdaad36cc08e81e69c82e1060bc14e518db2b49aa43ad90ba260000000004a0048304402203f16c6f40162ab686621ef3000b04e75418a0c0cb2d8aebeac894ae360ac1e780220ddc15ecdfc3507ac48e1681a33eb60996631bf6bf5bc0a0682c4db743ce7ca2bab01ffffffff0140420f00000000001976a914660d4ef3a743e3e696ad990364e555c271ad504b88ac00000000", "P2SH,NULLDUMMY"],
["The following is a tweaked form of 23b397edccd3740a74adb603c9756370fafcde9bcc4483eb271ecad09a94dd63"],
["It is an OP_CHECKMULTISIG with the dummy value set to something other than an empty string"],
[[["60a20bd93aa49ab4b28d514ec10b06e1829ce6818ec06cd3aabd013ebcdc4bb1", 0, "1 0x41 0x04cc71eb30d653c0c3163990c47b976f3fb3f37cccdcbedb169a1dfef58bbfbfaff7d8a473e7e2e6d317b87bafe8bde97e3cf8f065dec022b51d11fcdd0d348ac4 0x41 0x0461cbdcc5409fb4b4d42b51d33381354d80e550078cb532a34bfa2fcfdeb7d76519aecc62770f5b0e4ef8551946d8a540911abe3e7854a26f39f58b25c15342af 2 OP_CHECKMULTISIG"]],
"0100000001b14bdcbc3e01bdaad36cc08e81e69c82e1060bc14e518db2b49aa43ad90ba260000000004a01ff47304402203f16c6f40162ab686621ef3000b04e75418a0c0cb2d8aebeac894ae360ac1e780220ddc15ecdfc3507ac48e1681a33eb60996631bf6bf5bc0a0682c4db743ce7ca2b01ffffffff0140420f00000000001976a914660d4ef3a743e3e696ad990364e555c271ad504b88ac00000000", "P2SH"],
["As above, but using a OP_1"],
[[["60a20bd93aa49ab4b28d514ec10b06e1829ce6818ec06cd3aabd013ebcdc4bb1", 0, "1 0x41 0x04cc71eb30d653c0c3163990c47b976f3fb3f37cccdcbedb169a1dfef58bbfbfaff7d8a473e7e2e6d317b87bafe8bde97e3cf8f065dec022b51d11fcdd0d348ac4 0x41 0x0461cbdcc5409fb4b4d42b51d33381354d80e550078cb532a34bfa2fcfdeb7d76519aecc62770f5b0e4ef8551946d8a540911abe3e7854a26f39f58b25c15342af 2 OP_CHECKMULTISIG"]],
"0100000001b14bdcbc3e01bdaad36cc08e81e69c82e1060bc14e518db2b49aa43ad90ba26000000000495147304402203f16c6f40162ab686621ef3000b04e75418a0c0cb2d8aebeac894ae360ac1e780220ddc15ecdfc3507ac48e1681a33eb60996631bf6bf5bc0a0682c4db743ce7ca2b01ffffffff0140420f00000000001976a914660d4ef3a743e3e696ad990364e555c271ad504b88ac00000000", "P2SH"],
["As above, but using a OP_1NEGATE"],
[[["60a20bd93aa49ab4b28d514ec10b06e1829ce6818ec06cd3aabd013ebcdc4bb1", 0, "1 0x41 0x04cc71eb30d653c0c3163990c47b976f3fb3f37cccdcbedb169a1dfef58bbfbfaff7d8a473e7e2e6d317b87bafe8bde97e3cf8f065dec022b51d11fcdd0d348ac4 0x41 0x0461cbdcc5409fb4b4d42b51d33381354d80e550078cb532a34bfa2fcfdeb7d76519aecc62770f5b0e4ef8551946d8a540911abe3e7854a26f39f58b25c15342af 2 OP_CHECKMULTISIG"]],
"0100000001b14bdcbc3e01bdaad36cc08e81e69c82e1060bc14e518db2b49aa43ad90ba26000000000494f47304402203f16c6f40162ab686621ef3000b04e75418a0c0cb2d8aebeac894ae360ac1e780220ddc15ecdfc3507ac48e1681a33eb60996631bf6bf5bc0a0682c4db743ce7ca2b01ffffffff0140420f00000000001976a914660d4ef3a743e3e696ad990364e555c271ad504b88ac00000000", "P2SH"],
["The following is c99c49da4c38af669dea436d3e73780dfdb6c1ecf9958baa52960e8baee30e73"],
["It is of interest because it contains a 0-sequence as well as a signature of SIGHASH type 0 (which is not a real type)"],
[[["406b2b06bcd34d3c8733e6b79f7a394c8a431fbf4ff5ac705c93f4076bb77602", 0, "DUP HASH160 0x14 0xdc44b1164188067c3a32d4780f5996fa14a4f2d9 EQUALVERIFY CHECKSIG"]],
@@ -40,12 +14,6 @@
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "DUP HASH160 0x14 0x5b6462475454710f3c22f5fdf0b40704c92f25c3 EQUALVERIFY CHECKSIGVERIFY 1"]],
"01000000010001000000000000000000000000000000000000000000000000000000000000000000006a473044022067288ea50aa799543a536ff9306f8e1cba05b9c6b10951175b924f96732555ed022026d7b5265f38d21541519e4a1e55044d5b9e17e15cdbaf29ae3792e99e883e7a012103ba8c8b86dea131c22ab967e6dd99bdae8eff7a1f75a2c35f1f944109e3fe5e22ffffffff010000000000000000015100000000", "P2SH"],
["The following is f7fdd091fa6d8f5e7a8c2458f5c38faffff2d3f1406b6e4fe2c99dcc0d2d1cbb"],
["It caught a bug in the workaround for 23b397edccd3740a74adb603c9756370fafcde9bcc4483eb271ecad09a94dd63 in an overly simple implementation"],
[[["b464e85df2a238416f8bdae11d120add610380ea07f4ef19c5f9dfd472f96c3d", 0, "DUP HASH160 0x14 0xbef80ecf3a44500fda1bc92176e442891662aed2 EQUALVERIFY CHECKSIG"],
["b7978cc96e59a8b13e0865d3f95657561a7f725be952438637475920bac9eb21", 1, "DUP HASH160 0x14 0xbef80ecf3a44500fda1bc92176e442891662aed2 EQUALVERIFY CHECKSIG"]],
"01000000023d6cf972d4dff9c519eff407ea800361dd0a121de1da8b6f4138a2f25de864b4000000008a4730440220ffda47bfc776bcd269da4832626ac332adfca6dd835e8ecd83cd1ebe7d709b0e022049cffa1cdc102a0b56e0e04913606c70af702a1149dc3b305ab9439288fee090014104266abb36d66eb4218a6dd31f09bb92cf3cfa803c7ea72c1fc80a50f919273e613f895b855fb7465ccbc8919ad1bd4a306c783f22cd3227327694c4fa4c1c439affffffff21ebc9ba20594737864352e95b727f1a565756f9d365083eb1a8596ec98c97b7010000008a4730440220503ff10e9f1e0de731407a4a245531c9ff17676eda461f8ceeb8c06049fa2c810220c008ac34694510298fa60b3f000df01caa244f165b727d4896eb84f81e46bcc4014104266abb36d66eb4218a6dd31f09bb92cf3cfa803c7ea72c1fc80a50f919273e613f895b855fb7465ccbc8919ad1bd4a306c783f22cd3227327694c4fa4c1c439affffffff01f0da5200000000001976a914857ccd42dded6df32949d4646dfa10a92458cfaa88ac00000000", "P2SH"],
["An invalid P2SH Transaction"],
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "HASH160 0x14 0x7a052c840ba73af26755de42cf01cc9e0a49fef0 EQUAL"]],
"010000000100010000000000000000000000000000000000000000000000000000000000000000000009085768617420697320ffffffff010000000000000000015100000000", "NONE"],
+117 -6
View File
@@ -2,6 +2,7 @@
// Distributed under the MIT software license, see the accompanying
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
#include "consensus/upgrades.h"
#include "main.h"
#include "txmempool.h"
#include "util.h"
@@ -17,6 +18,7 @@ BOOST_AUTO_TEST_CASE(MempoolRemoveTest)
{
// Test CTxMemPool::remove functionality
TestMemPoolEntryHelper entry;
// Parent transaction with three children,
// and three grand-children:
CMutableTransaction txParent;
@@ -60,17 +62,17 @@ BOOST_AUTO_TEST_CASE(MempoolRemoveTest)
BOOST_CHECK_EQUAL(removed.size(), 0);
// Just the parent:
testPool.addUnchecked(txParent.GetHash(), CTxMemPoolEntry(txParent, 0, 0, 0.0, 1));
testPool.addUnchecked(txParent.GetHash(), entry.FromTx(txParent));
testPool.remove(txParent, removed, true);
BOOST_CHECK_EQUAL(removed.size(), 1);
removed.clear();
// Parent, children, grandchildren:
testPool.addUnchecked(txParent.GetHash(), CTxMemPoolEntry(txParent, 0, 0, 0.0, 1));
testPool.addUnchecked(txParent.GetHash(), entry.FromTx(txParent));
for (int i = 0; i < 3; i++)
{
testPool.addUnchecked(txChild[i].GetHash(), CTxMemPoolEntry(txChild[i], 0, 0, 0.0, 1));
testPool.addUnchecked(txGrandChild[i].GetHash(), CTxMemPoolEntry(txGrandChild[i], 0, 0, 0.0, 1));
testPool.addUnchecked(txChild[i].GetHash(), entry.FromTx(txChild[i]));
testPool.addUnchecked(txGrandChild[i].GetHash(), entry.FromTx(txGrandChild[i]));
}
// Remove Child[0], GrandChild[0] should be removed:
testPool.remove(txChild[0], removed, true);
@@ -90,8 +92,8 @@ BOOST_AUTO_TEST_CASE(MempoolRemoveTest)
// Add children and grandchildren, but NOT the parent (simulate the parent being in a block)
for (int i = 0; i < 3; i++)
{
testPool.addUnchecked(txChild[i].GetHash(), CTxMemPoolEntry(txChild[i], 0, 0, 0.0, 1));
testPool.addUnchecked(txGrandChild[i].GetHash(), CTxMemPoolEntry(txGrandChild[i], 0, 0, 0.0, 1));
testPool.addUnchecked(txChild[i].GetHash(), entry.FromTx(txChild[i]));
testPool.addUnchecked(txGrandChild[i].GetHash(), entry.FromTx(txGrandChild[i]));
}
// Now remove the parent, as might happen if a block-re-org occurs but the parent cannot be
// put into the mempool (maybe because it is non-standard):
@@ -101,4 +103,113 @@ BOOST_AUTO_TEST_CASE(MempoolRemoveTest)
removed.clear();
}
BOOST_AUTO_TEST_CASE(MempoolIndexingTest)
{
CTxMemPool pool(CFeeRate(0));
TestMemPoolEntryHelper entry;
entry.hadNoDependencies = true;
/* 3rd highest fee */
CMutableTransaction tx1 = CMutableTransaction();
tx1.vout.resize(1);
tx1.vout[0].scriptPubKey = CScript() << OP_11 << OP_EQUAL;
tx1.vout[0].nValue = 10 * COIN;
pool.addUnchecked(tx1.GetHash(), entry.Fee(10000LL).Priority(10.0).FromTx(tx1));
/* highest fee */
CMutableTransaction tx2 = CMutableTransaction();
tx2.vout.resize(1);
tx2.vout[0].scriptPubKey = CScript() << OP_11 << OP_EQUAL;
tx2.vout[0].nValue = 2 * COIN;
pool.addUnchecked(tx2.GetHash(), entry.Fee(20000LL).Priority(9.0).FromTx(tx2));
/* lowest fee */
CMutableTransaction tx3 = CMutableTransaction();
tx3.vout.resize(1);
tx3.vout[0].scriptPubKey = CScript() << OP_11 << OP_EQUAL;
tx3.vout[0].nValue = 5 * COIN;
pool.addUnchecked(tx3.GetHash(), entry.Fee(0LL).Priority(100.0).FromTx(tx3));
/* 2nd highest fee */
CMutableTransaction tx4 = CMutableTransaction();
tx4.vout.resize(1);
tx4.vout[0].scriptPubKey = CScript() << OP_11 << OP_EQUAL;
tx4.vout[0].nValue = 6 * COIN;
pool.addUnchecked(tx4.GetHash(), entry.Fee(15000LL).Priority(1.0).FromTx(tx4));
/* equal fee rate to tx1, but newer */
CMutableTransaction tx5 = CMutableTransaction();
tx5.vout.resize(1);
tx5.vout[0].scriptPubKey = CScript() << OP_11 << OP_EQUAL;
tx5.vout[0].nValue = 11 * COIN;
entry.nTime = 1;
entry.dPriority = 10.0;
pool.addUnchecked(tx5.GetHash(), entry.Fee(10000LL).FromTx(tx5));
BOOST_CHECK_EQUAL(pool.size(), 5);
// Check the fee-rate index is in order, should be tx2, tx4, tx1, tx5, tx3
CTxMemPool::indexed_transaction_set::nth_index<1>::type::iterator it = pool.mapTx.get<1>().begin();
BOOST_CHECK_EQUAL(it++->GetTx().GetHash().ToString(), tx2.GetHash().ToString());
BOOST_CHECK_EQUAL(it++->GetTx().GetHash().ToString(), tx4.GetHash().ToString());
BOOST_CHECK_EQUAL(it++->GetTx().GetHash().ToString(), tx1.GetHash().ToString());
BOOST_CHECK_EQUAL(it++->GetTx().GetHash().ToString(), tx5.GetHash().ToString());
BOOST_CHECK_EQUAL(it++->GetTx().GetHash().ToString(), tx3.GetHash().ToString());
BOOST_CHECK(it == pool.mapTx.get<1>().end());
}
BOOST_AUTO_TEST_CASE(RemoveWithoutBranchId) {
CTxMemPool pool(CFeeRate(0));
TestMemPoolEntryHelper entry;
entry.nFee = 10000LL;
entry.hadNoDependencies = true;
// Add some Sprout transactions
for (auto i = 1; i < 11; i++) {
CMutableTransaction tx = CMutableTransaction();
tx.vout.resize(1);
tx.vout[0].scriptPubKey = CScript() << OP_11 << OP_EQUAL;
tx.vout[0].nValue = i * COIN;
pool.addUnchecked(tx.GetHash(), entry.BranchId(NetworkUpgradeInfo[Consensus::BASE_SPROUT].nBranchId).FromTx(tx));
}
BOOST_CHECK_EQUAL(pool.size(), 10);
// Check the pool only contains Sprout transactions
for (CTxMemPool::indexed_transaction_set::const_iterator it = pool.mapTx.begin(); it != pool.mapTx.end(); it++) {
BOOST_CHECK_EQUAL(it->GetValidatedBranchId(), NetworkUpgradeInfo[Consensus::BASE_SPROUT].nBranchId);
}
// Add some dummy transactions
for (auto i = 1; i < 11; i++) {
CMutableTransaction tx = CMutableTransaction();
tx.vout.resize(1);
tx.vout[0].scriptPubKey = CScript() << OP_11 << OP_EQUAL;
tx.vout[0].nValue = i * COIN + 100;
pool.addUnchecked(tx.GetHash(), entry.BranchId(NetworkUpgradeInfo[Consensus::UPGRADE_TESTDUMMY].nBranchId).FromTx(tx));
}
BOOST_CHECK_EQUAL(pool.size(), 20);
// Add some Overwinter transactions
for (auto i = 1; i < 11; i++) {
CMutableTransaction tx = CMutableTransaction();
tx.vout.resize(1);
tx.vout[0].scriptPubKey = CScript() << OP_11 << OP_EQUAL;
tx.vout[0].nValue = i * COIN + 200;
pool.addUnchecked(tx.GetHash(), entry.BranchId(NetworkUpgradeInfo[Consensus::UPGRADE_OVERWINTER].nBranchId).FromTx(tx));
}
BOOST_CHECK_EQUAL(pool.size(), 30);
// Remove transactions that are not for Overwinter
pool.removeWithoutBranchId(NetworkUpgradeInfo[Consensus::UPGRADE_OVERWINTER].nBranchId);
BOOST_CHECK_EQUAL(pool.size(), 10);
// Check the pool only contains Overwinter transactions
for (CTxMemPool::indexed_transaction_set::const_iterator it = pool.mapTx.begin(); it != pool.mapTx.end(); it++) {
BOOST_CHECK_EQUAL(it->GetValidatedBranchId(), NetworkUpgradeInfo[Consensus::UPGRADE_OVERWINTER].nBranchId);
}
// Roll back to Sprout
pool.removeWithoutBranchId(NetworkUpgradeInfo[Consensus::BASE_SPROUT].nBranchId);
BOOST_CHECK_EQUAL(pool.size(), 0);
}
BOOST_AUTO_TEST_SUITE_END()
+132 -127
View File
@@ -23,119 +23,118 @@ struct {
const char *nonce_hex;
const char *solution_hex;
} blockinfo[] = {
{"0000000000000000000000000000000000000000000000000000000000000017", "004e2b5a2020abd95263f39c4d65c1d9112073ccf30a7df5428e5e8a7bbffdb556d6d4fb1978eeae589e10a155f665fbc57bf3b4d1a10ca38b9d4f9ab6d5931524deacd7cf9b774fdf72eb87425950bde392c8cf0c8447c08156f8679702a1a3866b7e4d13601ca5761003db87feea6febda45c5a3b76e5a0992b91182c30eef5a91516c57b3cf8102af61e893561c0e3f6d48582b8beea1de094b33ac87c8725c2386a2eebf434d01d46cfa27ca3ca54a84e0b4853a49ef2862bcb18933a9a41efe8f1081c57fc661db7dbe56c2e7f85af813b0dca2e0e233d1a1cfd65a013de09e12d4bdcf89210246d735486ffab49b468606e091e5e2ba55617602400a7cb91de9e3a217252aec3c6d861f75f8e0611ece2c4efbb174558be083cbe752e2bef323bb6a74179fe2d11eb15627b53321f73ac7684b591f3afb8819767f67e406d78eced8840c19ef57fd38e06bcde60152101804a71d0374a9f34f1fcb9db6f9b9f8ed7418bc8c363348390d246253275fccb27e872e351eab0f7b02899043fd0b4c9ae22f6c95ac52a91fdd185f41852d34be23f14be1de966838724956d436d8c9881199ced14c5fa8511975a65e02c358522cedb334fa2d15e47bebaf62b1be11c3b84265db3a36553a59eb14c24fff633573adb1afe53a2ec158eadfb27b82fe24df22b2229a2188f3d8044c6746a20a2c13b7f53c09ea775af45be369d209a3470644b765644131432427502d6e585269055c48136166bac32e46c2d559a80e91e1348731e7279cd6fa21d1ebc1ff5f451cb8a1134847da0450d1bdf534e3e914acfdfe8f0a1c39fb14b55f027aed21a7d7656305eea2e6a9cdacba0c612b0c0c43c0d1a16eb9fb4a81246a5e3337e5f9c6581d29e3566b20658f843fc43d09e71a220bd5bb75353b2dfcb708340de9a1da1580807c2a5987b8d19870004f355b95832071b52c72747a6a9f58ac41997e5a0ef9509e592229d315de45fb62d7d649eb6ad432f60f5f75a8e1045dfe69517159d6e850c9a3c15d7ac61b77467f04ca7091a99b46313dd5a639b4a77e3fd80a25308062d56ee0eb1eb44f784a316d66297be48b26e8d24e0b4fc88ff99407803d3cecafaed8ffaee81e19dc76f06eae5b790712cf14b3b534b8743d5cf93dd4e2a8111e24f17d2275973544608e88237d2fce06d62ad6f64649dc3e2ac3999a27b7bd0dff90aca9119a00aabb6ac8f1b6d9f43e63e1c0222d0e3b219d244551eb4e5c068b416d859f83d431066423b807ee3e2d5b80cee773a1991854c56ed703016f4febabd2159483ae1962fe5be771fa067ae8b95f4ad89f93141c7609fd8b9cf6b98c606222921eb9ecfdcdb06afa1cc2647e4d22d7411e4079904dd2fbd314f45abcf31e0707a6a85fd631b41fc3432be18c7b5b9b3b0cbb014de9b53643f6bc629ec0dcc82404247712fc62820618a6eb8d86f36893d7e199b678d2b22d8378246008402c962f9cef67db64c32d4231ec9553a7500fc410486ade3d8c506dc517b29972ae9e7528620bf4cc075902dee7ce6439d85a610d1badc39d7e4e118f22166eae2c0f492606f53e019c754df61e0069fcb13316b3bfd82e946497e97713fed435bba57a8f75b66419b32a435b24c907289bc1c6d527821ac4e4bf3eef04e9564b9328b82fd179c29cdfa6801a45a5d540900b894400c88c3790cb3260c59f878611d2881f60e00a3c0ee7ded90f971309c207caf1b8012d7872dd891e153f5cac1643bd54e51436c12607ba22d13e55c9081f2204bc07c996485dcacc41d794df509afdc0c00b4cf79d4e890dd4fdb9c19b2e1373f25b88d9fe5727afc6bc1ce57e2156e8f3c637d2cbb1826670252942df0be221d7495759ef659892bdc75f47c63cace6"},
{"000000000000000000000000000000000000000000000000000000000000000e", "0067af1274820bfb2e16e1fca76120ea823e5e13b2229815a4cadd5a3f69a062dbaace24d646e73c6742151c1cab9a6e78db9bb8e59d497718be11c5d61c2f160b9d9ee28a907301f977efb9f9efda96e6ff75dd071421260fb945c3d2c5dcbb31f476ab4fd97ab81a1491c78dd2c76954e5a4d426edb110d1ec92bce38611dcc17d8a5435a6aaef673acb3e026215d07be0f0165884185c21819fab0e23d4051eabd209c7f11f040618ba8e4e91f3e9493fe2079d23030dacf9b415552732071db823633f53dec479315eacde8c94b7bb9928645146469b0d6fc0697324633c512e7d8d1c2c392ba9bfdf1fd687fce7a3764a45d79e22787ffb4a3c0a21448ba26ba2a1c3c5c27defd44dca084eba029b140e58ea37a88b2b50ff2a1a1162ab429d891d4c462f5ab9fc615ce14544fd34ebe0fcf8f145ad1200ca3f90d3cd9f2a90f178ee44e52a4ba2b1e6293933f303a3a54f7d586ce3a2263540a7caa5a5d1823035821ebecab9d531c019b29c5387b0e674362c4b75c06913771d4495da11d4db2bb2a001c97c3274f6b6c5f451378aab7462d0891c337a38756f092b127f1cc11503ce8ee245071052c779e17344fba8e72e8f3b1a4b2e6cfd9d104f4147aab9b397de2688f350fcbf568b0ace4c8abf45fc50eb07e87953c44bf6dd5f1775281f353bbac14adf29d3b772568f43b6b9b9b59c35d505bb02ebb455043f0b9070db025ddf02b74e9d23441eb0cc90f4cbdeab6e390a4530e99baabfaa9d84c716803e6239fa0663d47ef5ed5f338b3baf247dc78322d7cab715d3bd18c3fd7539d366ab8d691e1db73e1140ed5ddc0db729186ea24062e8fe31d2eadd2ac01fc737e476c95b6f1f7604daacb993c596c5fda7bc1740d66bd779115beceea175136a5bcdab3b5543884757247725167095ec41f7272dda8dd65e9e787ff300aeb008354a18e293f700985ef36bd19b0cbbc0444115bc05a11be26fefd2448741eb80a9291bd293c817854b84061ae038ec5ef393d37b950d5aa517f2ce2586dc265312de4974235466112ada1572962f3d821fa29e4ffe76c1b5c44084e76ec597e1e518f6ddaa245a4b25bb8bf5d10d206257f64c5844e2d6dfd1703a034424e56b78b987f594bcbd292fbef73c1db13c5d24134fbb306053b2ef07ce5256520292f47514d701a312da0c664097cbd2f1741aa7999583dc585654045d354d615b7a13ccfbb57cf95ba7ba5f219587100a602b30894cbc4ae7dd464496b3f3ea7675d59f072611d3d6af91d655fc7d2635e4771689e06098d5660293e6905316dd9ff91c103157d9879c1ef7e879fd066f011782655de589c4a119ed1197e2313cb5ea640878f0bf2564ef47ee57391d0ff83826848f5b59201ef99f409b9c98b521015682e9fef849b6701164a6031ca11109954dc9f7493266dcd8d635f7b331a7399f3427a84cb4a2bbdc0d09fae852ee167f96ddc2a430214ec29025c14f31b7c350b734959b00f03ae4013e230e5fab29d283f9af487ecc6016a6978f3c49b803fbb795646d79e7d6a4b22c7cacafcdd59d15943f0cc589f193455e5e9bfbd7ab2aec97ea7c19bbab6b0ae0c9b7fc23bc0f2e05b1f9acd991962580d728202eeca5aa104fc80be8fd886c43e1a7476c565b82b1050d75cb5147a7c65d6f12a860bf938daae6b6d13e23e717fc291b34f4e0fb58f42f6fb9030d637d89a507a871f03ea86881d6e04493d9c6c3759bb6f75481153472086f5e93e3867255f5e64c42f3488d1c50f5169767f29893576dfbf7f23767b6abe54fa48cc6cd1de60bb07e12824578a872c2a7538ee0b45f4fa36f397c0bf8bc2df303d76604e0f4ba56d3844a9eff9b4b079e97a052d146c18b67aa0945626e44793d38bf"},
{"0000000000000000000000000000000000000000000000000000000000000039", "012f3a69fbe4852dbd5eb7ba5e6a284a651174d15e0806c99e6517e048ef61516e0774b4353c1a36693602d5be8037d079e5d425b1c61023cc3963b578da010706fce809dbd9ad849872bf65e0da167bccfea7b50ec5222cfe20b355b05751b1742c06b9e7f7afd519328aa9d494d80c2f5503a4af3d732c11db83b6e4bd47f45d303156e81ad54fd78648c889d6335c1a523b51363faeae6743d97ced65dd1ec4f0ee16e672ff6b02ebfc4336596e4cd03ba72775528919f41ad8d5cb0752e53b5e8c516cae6ef3d588cce01501464e0529569403c0da35e4cdbfe0662948b5963e036a9951d373faacb8872062b97ea8685bdb6786ef17039a0f280581ca5d84817511a54d56680957429aa8adf955aa56a1569bf06704a544c95742847e2835f7cd3a692628ea73366d9a11770ece790781d5db16cea29a988235807fe841a94e8bf8cc6405f5c454ca28b21b17350329c74c772048fb9026e5f7cd45051dd1bbde75ab0c98f11dc116683f00883a0f3d59a7d6fde0186cb623901f1fba687819e980e63f0cfb9801d2e7bd80de30e25d87605812a6cebc8474a17fe9ca41947515b106165bf6e95b322ffebb44cc944abe21f52b949b341b627f6a2d5588a9dd7492e8f3ccdf8142892f23171d4fb36aeb4935bb1eda3726ea753d7bee277fb7d961ddf71a91aa3b71f1e7e694cbc82ba9cb7b3e423a04bf0360dc32dd91f8af30ba61436071410e1df9ab0824fc93648bf223e223025a5cc724d95d166cd14b0538664e4b1950975dfa2132dc8b6e88cc1e094fac05675d166d9eaa8bc81d527bf135d32d6af4dc36410948acd47e14e8318804b29be99e49621779d557601571fc257f2622395ea152bcd361ba60eed8ae4e050bbd6a57371f8591eca6b2f46ba2ac7519d1d7eb1513d68d2f7c3305ada496e1e95b1a346b75fe1ff5180144dc03da8efcfd8b0ba48aa0504257580ebaf09b03c4dfdf29d17674cef1844249d13e05583d31260f05dfa686b484b69e87b851d77cf39761eab21bd9931a4a342da51369f5362a98f24849d4aac8e5ba4f24035ebec9c9a860c156b4d4c37ddfb23e9779d6ab273c6c5dbf15d500f944f669f45a6d7fdaa28cbaee121a8a7a06418e41eb66f2a63e10d16971a7b9f8b9b2218c4c0951758e0dcc46821e3819493a2b31b576a501ccb670d59204a950a551519792f610d5dcbbc22f193d7d9537b300fbafb3d5f2d2618e71e3fbd05d480288741be713054fe621530f722dd1f24c409566ff1ae0894bd05f4260fb29c2e176f6009122151fd4bd093f27b0ff20b6dd594c919f791c69ca5813b5f45c20b1c96dcc4be72723cec5a4d148e155c1045b4ce3177f894ba4072083c46411c41d46950ee9167ce6eb3464bf75bccfa90cdc1b5352925906aea5a29bb3070291b2d89561869db3bb01847737f14dcc21f22285419e4f61e01636cf5513850384488ecf27fbbe099b107617064e18447fdc15554b2c54ea8e96745501892a51b67c6cd95f7ddad5e8788df84eba9cd75e890f05c995cf62c46be46bee730c6ea3aac2e6d0bed9bf2408afe5ceca4e0e752264dd73e69672ad3cff6f030702067cfae0a437ca33e1499ab7131d505dec46741553b0cd3fc9ac365c5f6802db4f8862f5f4797282030d565bc66ca0a790c363ad9d6b47816e780e32d317aa82ee1e530c730e3bc59cc274dc7199476ccff72a8efb574fe5ea6bf9bcf46d17d529eb3988dc72934d721b7de7e05765cfe787242fd0e80746551f6c640ee6dc640d4d14da99f5a6ec655b004e60c69b7744303d04b7d8e3ea5bf4526872964d635304379a0e7d221f7b7721fddd45f92af259cab3a81287a2dc0530287d22b30492b2bb1d354481b2323c4ed5dfbbf0b5"},
{"0000000000000000000000000000000000000000000000000000000000000005", "00315eb8fc4d578682ddf164933903e8ddba1ca90322f7a5d326700311f9dc82d0acd6b214c8d6ebdc6807f40d5b4943e079dea1739d4aabf5e6cd061727da14c0dfcda695819b360111fb9d6649926fc653d7ee1e1e1c6522deb1ed48e6f46f127e7081ce2a328291292b9d3162afb53180ca2706676972ce4439fcf0ac2634c9a337ad5395e1c9f3e1832edb5535b893ad98334e2fb747ce0e439187a77b674c0f4bb95cfdf1b400390cba29d24092bad472149569b0888547bfb7593e2506eeba9397d8babd07fa834c99fba158ffe4220307dc03d0c6e02bcd2b324cf11981128165f61a9d0b137a2edf698e1f6f84b2a8823baa6ece225b9f2d0188ad9873957daaea3101b883c812c999b7d9fd5c2316155a939fed619c25f32702bf29f5cf103e069635ec139b6ab83ecffb0d93d4f4a6fb6f1eb9df5e62588acff2a3b158fd9a7a477a6cfc63663c8ef70cda017eee67e9434db76ae712ca26a08a69217c09540d6f485c7fafa2da0fc7d317567fdb53e62667fd02561714299d93deef21413ef58e2a376a39ba94b0765b352dc1d46bda765d6bead72426ea0eb3c482ff716615a23186f6ccd37f798961c70f5bd741c715bd6ffb24a0c60a291f2491db12a7085653f836d791ff9c572261a51f68583068de670647be384a01927d5a555236d07eec65537659b17eb4518bca4f6220aff84eca06956084a1499bc94b6d31978772fcca4c663b844d254ed3bae09b900dd61e95d12d5eee366c3b5b237a0d6e40a7c115ed8beccde270bfad2ee5a61079b36937994f5288235b2d2b01062eec454769b92dbffc4f12cda572da6f4f0fd9c182f49ebecfb284503a46a726d67c340a6bc5298e2435b2a7f1b0e6033e7df2c118081b45b5cd517706c3f1e83a7066b54b003b5a1c23a6df4ef1a0aa55d3eb826b1e2dd6a2ea8ef964e800fbfecf1ed41fb585ebf97041ed193a9f5e5f55e81593c77563df944f42ae427466739df93fc4ae1a9d1458978461a4220d39d0b2d11d2d7bed2b359a2adc1514c5cf4c559135265473030c4db84f3322bb066f05b2a04d2a10ac0183a634739d420cc54acaf6cf4c0872dd96258307c4b32592e50fa8184a2626d19b0a0b02447d55d9797fe7f6825ef7dfd05938081022582eb33eb77c270241b97a157f1af8db01b7d358687f0229128be307ab1dc21493f4c27817795f71f18f643cc75e7d5451efb96b9a264906c7210337195a226110b078b8a1c7d4885fd35a0f3a7a44f2eaed3eebd434a2dffb1d11e43d2a9d779b106093a62ad8b5043706d8c08b3c4d5c21c37c32b5c6c7bb7cb075d9452c2ad23feeebd5bf1d3a8db6b8a46a9175f95658dde11b5d7d6d8c14a09f097be7bb54f8102b21a25924ee8982bd9044b7773fd18bb89e39775952b8b239e26001216a4333b1389de3cce0eef196175e1783d1c327125ec521510af88d21ed015ee8509a4dfd7d50e0601de3b1fbe1c797bb4ae162ad1ccc0f8ea1d9fcca9e2c1cd641554c7f417929175036498a1f712afbfb44053768d6dfea7367eb267400c0ebf58d121196ffe4272e0b0ce78d4201488ed6c962e1a8f667c2f76655056511b13a55a6bf63433119e57e6e61f60b9a43bd0d7cdc4ffc4cb8f59e6da62abc423d46c2457fc40f0156efd3cbc7d68ff5da24aafa49b709cbf3198d894483f22c041998015dc26797d0d0b0fa1828f88918066f0c581508e50d8b9c71d8332f061ce6037ea1e52950ae8212a563f9bbb148869a7a3f1287a958f4a209be299d475f9de3b1811784c7cf7b6ed7e33cc2d90c7dff20fa8d9a70da2089666b50667370bddec0d726897e1b99dc54f0f0fe2a84b1faccaeb40c1d6481380235f33f97bf21c3975556546f73c1f17e74476a"},
{"0000000000000000000000000000000000000000000000000000000000000009", "007636b7d700cf6c94c7e31e417aef2d13444ccfb5012d9514e00a02dadec5c10ef2464f50adadaeffbf02c5b1621befff41b3eff8c38dee732ed868f958bd1e60366da214b0a3ce14b287a6f772c2c644b9b71406e74f2e43435c79f25fd145820f861ced6d93d74b1007e51c85458d8b3a23a170ab1c13512da397fb320bf9ee07fc243d37e30f26b0e4e79722a4509fe2bb18c586e495c8fdb9756fc1faa8c1de16a6dcf99a020a426cf96449f67fa265a1fa2b7bd8f559d5d7f29e307cf58129672001a3caf711123e07c65eb17d63e01410742cd29b807ee3b0458370b9945e82d27d70f019c3c580b0ee1ae79231a4755ad1e0b581ac33142d0d5204876de25717eb8401e545ed00ccace65cdb2a6dae05dc10a1cdf1142b075e36501d3fae3fbfe9b20e43992e0ed01789f998748f0db7336ebe705e23292a42ee01aad64a4f285b9ca21cf2e83f30e179bc1802ab3ad655bd0d2feba902831ddf3c451f4fbec28c1759b79a7ed6dd4ec8d9b638f0d11911e8049cbe841094e20a1595660f2d3a814f48226b0ebd4f7a8bc2406955574fa1a0d78428a9877cd10d82717a7beb0d05e4d3180f975f4bde54813ae42864a56c8f9632520a4452f91c5e80a7674e92352b2f0b4572d67c23841a8a9a35e5a28faf50f242d4d8bc4c85ef0856d2049b5f0d21aef8b31befcf49ddfc7e1836bf14bdfb500d21e9b88090fe0738cd51e8c1e46aec8f5706b24c196693a1e220f4cf27b3b4f648714796b1c0b66faf4ef3764fa913ffeebd4856f1f4716f4e9cac598f2460a86311ca633d197c56573c2a3d9873056cb8afe42a1cfd7772f108e5f46962d9b872a310cf7c9669d32e19ddb88c5a897de73bb8042d5990aa74667726c337b1f9d8a2b0a7f9ae2f983d405535567b68b9524c427b1ecf61148c52ad1a24c9c53484a240321a655a00c4adcffcd19edb6d470616804932c7d46f5ec0b41e6f4473d0626c87c360d284f6e19ed4b73ebbe7030a9a44c4d7dbfbd7fc6c2267a72f2b3997ff5f965f1636df70e550dca9f602625b9e9c5f50aa557e7b4c015acf3c6501b3a3fe33a2d964695e552a1c39781409a52b184bea227bb9c4c1431a784b14c530565339082a96edf349a5133513c514c867400dd46a71937209ca9cdd704d7315432ff55157b808031d3cbc717203a0045d07cd1d91f9d1a2f3914d00f6309cd8394a0b4ac3b1fa8e7052f8207221a1f6c2d0cacadb6f741263676e1a06ef96caa1d2ce7c51c4f5aeb1d4e78835f6c59eaa9ade353e14056a6733db224476956caa0cb44401d7c47a1062682b32ba5f8af75e12db2a091da681b6f9a4b7797e20d29cb1f4e43167ccfe21e61868251adce8cea7db96e2a9ec28a7a4beefc74d6232096f93ef60a39d1e5723f512d0edd6ad233c11a0030766fdd0e14079d65201ae922bb1e4d8d116a2458d12f73288b2068baf792b8ed9f5adcf214a9be69b152308aca00f0c5d2555a4b27e48aab1b09d3118db3be2cc322c5d1a630e3f742b6edff4fd91def6798111f4c322d395d12dbbbf7854b7f2d1ce17e83498321534e503b89bd009c5ccb89b865ec91b5b913c040a3a0afb5788f603e1fe95469b1adea2d9e4529e1eba561d4424be7cc3f5f14cf89ca24e97bf56dbdda8e503e23e217e5869a58b78e9190a7eceafac2f5ddf910fcc8ca9cfce3bdf35f3c5e8785ebece6fddf4401c197f092b8c1688d734b5641451fac9e9d50df441172fcb5ed111d561c3387826aaa6bb84f1f43cdbebb7071ef3c4cad2d9b9c68985b712e45ab99879f199681001b594eb875b5be6d42662aa72def9cc973d40e70999f0e694d39b5b94eec596e1d2169b15177b6c7b0cf091e32de60059b1dad6a613d87689deb45f5704"},
{"0000000000000000000000000000000000000000000000000000000000000020", "0048c6dacd48a4d9091658d30050325257e636f68003a573707c08ff046193a08a75d2fceda084f4a8830ee75c5bc3dc738d3d4ad175d90e2309a94e7748853ab4fca24ee3b047ba85a4b0782ebb71bc19f3827903c469f670101c8b084a105d04949d9a17a91286dd26841134d0e570a762ce32e5fbc4a636556dd43b102060aa00358c84996579746863d8de8bc7ca1ef1592dbd54e09b60335bc018740e89b36519f3f01dba4c063781f8f08a040d970da2128036ef11645b7343631be849cb6a28ef7b7e15d2343ef814a6b3f65b4bee1f7ce2de1ad82c62fd3f32fc11ac19ef14083e8ebc34958d26a23894c1e91939699e6f6c7eeb94f98ce5130c56b50c8f7119f17ad33e44bebf662c5f742fd72dbc7531214f28e5ae02a413afa4f3c190b97e52fe1f65f29738ea0fef8baa7586c2ea538198993c6cb43fd947f2429a61c3fa3fb7f20a60d4a2c9c7dd503202a972101d22294159b8c20e486d727a9e50bb401e0ae7bcd1a50846b09399817760befd91556fb971780c3a3a2ae7844660fc3c351a7644efde236d9cc6c30f21590cc10f9767a90183489f20d5ae34fafafc1f0541e4645b093ac9893dd061989cdc0e388993e1ff2de60387c324da8d9f2dd53c0062904e28bf92069e0920bad3bc928576c85aeab861e8ba7720cb99a10b456faea4135f677d1e61984a2affac0704e898403203d38ba5c0d10c1d1b8a03dafcd2cb4562da7a7f3c42e47ed5499699b13465c51c16b3ed7759d7dbe52413dd5160c0237b058b2061d1144fb96228d377faa91b2acf70cb5b1ddb4c68244cbf3e47be66677e79920a8a8719df35a3d7fadbb14398905d8c56c7d3b41260406572a8db08596a7b2794843eab71fdb21d485226eb2b213d17b75151ba6456eefa0989f67c99941d2eb18feec1f3c0b3d84fd4b78fcb86c1f536d4f207017e1a87f5f0c795a70293d42aad0dae13dc39947c12f49fd19ce045510358e6fa96d8f0d38c52bf324b01b51bba9c13e93f158f51c375ed57d146de2ec9f82df9fd7c4018931994be34b622eca4093533104f05045d154dc16be633729741a9c2bda0c5b3b372451a07cbe901f21838c6da14f1c88b5d04894959341f622cd253691b13ff457367c5a641bb363680e2d4a26940bd3214205a240b5f1094afe0f7d1ee23b8de70dd01d47b495c5259f18f47a8d1f46677bb33699a9d570c79a52076d20535b78b62cd00d1341337517ecfdc0b31870d0f8f080cc8a6839c4a305e85960ad0605c75763cbba12ca20de78fe814a8c495eafcc73c1c631171b3128b10ce5897dca1992a76cdb767eb7c718c16ff9c738ba9de77f86eb2593861e7255062730162172581795d8606f392fb127975a34c54babff21f774ee18aeb60a503e943301a3595e66b6e951dfb6bf0051d7cf5df66cc2d3c2a20cbedbe99c915e9790def60d6bc232de181bdda7b4766cfe9859ac8cc5728743447935479173b7f311154f4f13391e99d136d4cac53af5df0a0d50faeebfcd59228609a717aed6e5084167c2d5101d1a5414263da16ee6a9f4343f8da599c28775a70f40dace09b3cc523c866d85f83151d25bc2b6b9e135a6ac4a9fb18a34cbbfbe551f93cde4ceb30270ca676710b199f38e565ceb3f39affafdbedf6055cda63f1213f237a0757a9bdfbee861c6f56ea4b0c87546c0363109d7d7254369be4bf992ac02c19fd151107555a74e219b066236a58ca47d9cb13f9f3171b6c452fce518a05d1d2a371fffef2669aa21ce0b110cfad72764a13c4d78891f983d76b04c9c2ebdaa24bd2c2d71fa51bdf98a2f932dd56f8db62147d1d3f27312d9330f1ff25d9aa8632e4c72d2a3867b7232232a33d5ac45be18102756706446302ddee16791717"},
{"000000000000000000000000000000000000000000000000000000000000001e", "00300031f011ff93ca7dd320f7c4aac5aa695186612c84a6bbe2a3a09557eaf59cde41841672d8fce0f0081d091bc5e9150bbcdd63ceae7c7b2a5828bb34072543866e4313e4ff4a1fb551574d401b030519157103d40974ed67696fa5bfb67e00fc7e15dcbe9eb41428ad2e80a5a1ed3f97ce93b8a3593dd95614d4a3e715de2dca770aee7e64ea9315d72c14e0ec924af9084e3cfad35f59d28f58e4971daf39d19e06943e08db018ea7681a18ef25c13c1284fda08f9e88fa1485820bfb5f0eac973d9ec050f29a57175a1654d6fcaeeb172f67a993887ec1f79653a8baab2bcad739b6f5652c15c4426e141138bca656c0baffeaddd00c9a0329042101432e1690f6e378313a6d922ea15a05afaa0b20ad295c3f33ec91a08483fc2fb10972376ebdaad705c574499b1384a940bc11709bf32993c7661fa36b09544336efd1db17603812415f6c6755b4cc754ad103c97186b533e459d6d8a26ccd7533c3554adce1a71805adf7d8bd09f1efae23057b5d4d3d84065049b3088e6db401cc4731e309b587f4723eb70058f950b51c10a6b69c521a5f162564b20339d2da84945bb08f12b07a62ff4a7653f677a38f0a58cd82811bf61d3d72fc052bc56b6a5f6d6a091feb6f56a65d14f6bfa324afc756c918417ac3eff47dd73c00a97b080e70ae513fadeb44a6572d8c12ca252ae0eb92ef01da8b7404860921980ae093820281a33dceabb91131d066851c56c62057716a0bb8f4f3fd55549a09e56d92d94807003f83676accf556e423252ff3a3c9458db9824f096a3b194c83320c61b860a65948ca1c9a9bc8ba310ab74a8865887c579808145d11584acd95689bd62720c69a1111d413ab6302325b6d1e66ad46e97de6d518c9e6baf8689dd9fc5232cf1cc63bc507a6350a7b28288fc177d7a80b0a63c68cd1df9a631d64da6917028743f628e1abfd3f84d2ad40f3ad912cc2ade127110904d17f19f6f5861bd3f836dbb0a50d9f10349806fa8c6666f464d9ad5aa367442ad0e51be5197af32d9f472b0d674093473e23d84b4858e6adc8973f5f21167f4085d02b84d4ecb3a479e9a43de9ea3c9aa321bdd533cd5fd0bbba2912cef534a0ee3ee6d20f372e9072a6e5a0bc2599313900e34a79ee95669e9d2e66164e1ab79e25ab1968d6cbbdbf5b56137d1675cc03393ac7f7489686b30a834378c2e54d879e59ec251e539ebed55cd1d55eea28f5485418e240aa5728720fdf19af79d01607bfd3668c003893b3172adf214f139b70cf5a094b14bbf0c1a847189dc4ef8d89baaf1178cedf29512ed0a69cc319301b1c56fe0b5daf521d798fc908cbfae19017f4be3eaf2f76cc3dbd653529a64df493cb0c55241502d8cb57489cfd7ae8738248dd0dd613e92233ab4504aacee0e63271fede7a4b0320d245159cdf795a9d736e4153ac01b578559331033dc56252f242e1f791a69f9c55cd7e2a4e718f7212cd57c098a8f929daeb82eaff54634936fa1009f82bfc7f75048fe7b3c792a38f90540555ba12f633c310703b955c5921711e0c54dc5dff0319a5d7f8db931cd867d471257e7bce94344bdb5e779595d4ed42f316974248298c9410bdeb38090d7e67a2931f59a1d92968115aefa041b1c6fb050bb5bf3bd5be555ecbb307c0276f97d8e349ba0cd559d86f02bd92106f592e26c643da125b09b56b79f672117e4a05b942304f970b05db9e17561328cd9f9204dcc76b58bbe26967b7251787b38b1272a993be33f8294bf30586185d95e90bc80a12c94ffb67330ec986a5532d8e680d5d0499265dbace7e1282cf5ab785f1e3b3cdde8df95e6c6f142ec6a0034fda19b67f029ad259375d6187ece3132bf754e603e58f59736c842f6423eca9160c3713ad"},
{"0000000000000000000000000000000000000000000000000000000000000008", "009a41ce877363d1ee5860fa19102756c11b5f196013bad670a9eb746bf29b344ce7fff419621578a5451dc5c94ba25c01ef1ae46578a0d1796999538e97163e9867213ea0737f8f6c19f6a97803db632c1b842e0166b525d0d7b8a53cf4103c10241afb23d0fd6ebb903a57ed0eb76757f74d19fb9dec8dbabca25b3cbb08ad89dcd7578381af0bf257a91e8dc0fa086c166a2a2b74e8c1fae651e2324567acd5281643699b77da00b65ebff019c4114ba47485c56642b21cf2d49e7e1d7f5641d85e268540fd653f6144c16d881fdd62de0427b751be0e7d70c4f9928381183bde8e729ee331131b87503ae99e99d0c7f1da03e0e3a21e0b741c0704327247cf9292a76062909ca71c92489f59fc48df20273bc6188e691999a2c49c96e3f61dbf866e457408d6d85aea628a2d2efac549dd64925e8f43fd60216d6f067c60fce977fa5c06e7e5ea54bdd13072aec200f493b60dd753ef1fa61401b0fd60337b47fd9a19059bdf531485c7da59ce91a42fddf169224c2fb6310192e5a81ec76e8fff2091f4c0ef42b9a37a921a2e2db1841d32d82e0b06ce458d2f44bb9a47ae34f2be04427895b4c76da145f766d6a458f46706cd3faf4c35a31487184dcf736216538f0476bc29342c6c4ab90ac60b9314231241b630d3c3be3c6bdde93c993aaf2cbcdd117691fa9495dc64a2093f4116e5315d17fe063bc65787de0fb7822f7242a45b35963d865cb7b70e3b74df7d1fb6c7b1da9423d0a96ee3092fd8639b0725d31f11c4960f502c9617b0fe4c61bd093ed4fa232ce26a89e0490fda79040965726b42455772d1df0a3664c1db346dc3d60403eed047325dd70f324390165b4680be05fa23eab23563c43c456196ad109dee0eb7c9e5e550b4f7dcf1b26676c24184f69437efe96188ecb6d1a7e145edf657f916578e0eeffed9a03c01549bcc6c4d66e58b1c1039d78dad56b25e1c529602b5fe514a5a3ab1d4a835313cb6072a2e10b2c3680905c523d8573035255e9223564d0ddcf1dfdb5e071f89d27b2a8d626cbb0674437766eee9924daca532031220a2aecb3ba38d21e83950f77cf659b0dd794c222572eec38c6db5716d14f66ab4b04d7f22bf5cd605566be496830e7eac9331d33eee6c0d24c06d6c7315247673b055699cfb17a37951f23752c59a7e03fc01ad904a5d026fa5fba1d5c8dc505ed5e85ddd1e72403a8e3815e17e6b77d4757fb1b109f20bcdfdc98023bb6d00edecbefbb3b13341c9b464829a8474f1712ba1c5067d9e0643412222f251b994d528d5d2c755150c59087115928927c9324df8d16ddcde404fc7ff269ac7c2c6951986d27e83910ef26bf53597ba1c771f370b7cc65679e79ccdba86a2f701beef2b9b5ef12c490549361e44e1aa808304209eb49b50135b2a380211549cc346d434bd4693304b307749c3c216a130039d01a63d5314a7cee6803d1c90cff04ec71d00410ccc5584608f5488b393334961426969ec64df51b42391ae7c7673d517fb271983f272712a64d35c3e7805b23b1d4d54f4e5a2c4443f7bbec389bf55d77990116516af405cf5672cc2b236185858ad4f2b2eebe81661ae0b8d4dd3b36e3633b36f1da3a15f8cd7e3914df16cea6af9b567cf3e59e4eaf7998b43dc5d9a6203516cecd1d85a83e520f20c81c50aac9d437509fe0742296d0fe37d51ef0ca12c804ec522fdf4b896330d1b4448b303a2cf229b311503b796154aeb3b36f10de522113b0bf8b8935d63c097bc4c514f26eabd9506873508b38aa3fbee462457c3db94671a8b1b132b2752ab64615178049043e27a9d7992a57090ddc8ec0f4f44ab7e1165dd7827680d41583696f5259ab34a154374742a157bc5a74983e9f5a87b7d2dca0fa2fd"},
{"0000000000000000000000000000000000000000000000000000000000000028", "0028ba8566cb549b6729ca31366c4e57ba4f5fc0c21b57a1b9aea04acf8f06a2b9cb1dcf8a2fbaff1f8113822bb582922595a891ca07e9fd0b47b93c1fd8b54894e5234e74db73a88ab67ed5e815034cb17dcf7c059fc192e4522097420c39f5ccea3f6aa56adda3f408516b43650f6e44a5fc839972b29225cfaa9f26e01ca87585cd9c0b80f601b463d0aeb1a310fc1986553820875eee1dc0dbd668542c5b34b7a62f9cf98727016c949faa1fbe29e739f785cecc811b09191dbbfa0dd4636ca74534bfc7ba46a154f43fe6e4bbda100303fb5614d5337099c2f8f39996e54cb1e9b8b0b5414bb532c075a334ada46dc72d06f961e2e2c297bdd30f822b2b1554b3fcd55bf18f182b01427e179638691cb60fd2ffebc5a3806d74dd8ffadfa180bdf8dfde358b5ba197e1b04b460644202f57df152cd4f29a036e6cf56841a43887624a6ccfc9e9c3374f04fddfd6007ec81ff216eb4f382d61d97c26a8888d9896ed8a45240f27a3e475a39234169ede4c894f0be7ded8a70093045062847e03bb167037c2952a425e113530643cb8d2bd2074ca61bdd6a47a9abd6c917ed90c2bde0e930ec53a15b2099e304101a6c2b64058cbd750be146989819fa7d4d3472536ecc04fed49bd21d9d4b118c75cde96d4ea5d3f3bd326a63620096bdc53305623437c2ca88c933481ebc64c0677f0af7afabdd6ab01711574dd67d369ddb531215dbe7194f0e29123023e5923b5ff597553f213249655654301a2a12ee3fa0b58f7ce668de8d3150340c9503e77f988ff9792f627889ea7d69fe7abb38f82a19f6a6ac1876c32b9380c205f16fb13809ac8a4d1afad5806a57d13792f3515e8996da36896a15937546a074f02829265963cdd1e30269306cda0f886a5c2686f6c4424cd4856a1281ea79d9e60b165e5949c42c31d2218199936f12f73011e46133f40b3b703b76210b8641d593c6cebbea31d3bf1a77130a841c162657386b3622960a25a02780bd9c9b12c389707c88d64cdf8e6cb222181b5403f17db4a78568eea5dd50e3409b12753817dcbcd8cde06aa2712f9cf813711e9418cc09dbc00d19893bbc008b0bbb2bfd01c070d35a58d524ecd5ec4d198a13609de852ab353023b768183e100b74585204230eb4742142b7db65ca69722ef9534be386795615d5ea2c2029d7a5902cccce78d16f097272052683ce85fd6f22108fd4015db5a9b293ad25b06c10200e4c5be233b05b6a11b29f1b55ba9fa633576c061260da81bdd2105d297c72f2d4c91a48945ba206270c3845b5cd76518208a4ecae4744bd5f45283194900351e5a8ba735418f3dfb9fad92dfde64d5c22eef5d897a00185f671d92c1e0cf6d369dadb676495ae5bf5368ed3bc250232137c3884b304a7104f426c9e68565e906f20d9209b67eff681971d9b89151e59e335cd1600810cb3f179c3f2f6a208ad71a9f94d74cd6b4c94d39b465b30d53662ee1d04d8b7cf87291881c0466244979112f1971cedd2e86d25b8441626623b2b9c94ef6ddab720f62111d110edb8b22b9b1905aac911ba3c41f3c3b17e97f0f791e72e5a769e4a12f79ab5187c63e9f2b11d9c3772657165f49a0f24b867998812d085734762fcf0e654ed2e0e0b4bb245dc838fe16e177beb91a0bbc8b92d3ccb79c850251c02277767879f0daa3b72d90723cc590893adb9cb4bce6bc692569682bce622170120d03490ab5991ea375917305023029d8d0f24aa13c83343091f996ac54ceed79f08ee7a5f9fccd128f0f8c6d77976fdd388172fcdc4bdcd30eac49b514230fe28613a4abb139e521bfe9094eabad3e0b8c1d2ab515360caae7c29573c9c0310096846999714f4e523e9acdafb1cda334088dbc6a6262c52af7e471"},
{"0000000000000000000000000000000000000000000000000000000000000000", "005e10e25ade6dbb9f4a30b487a53178fc6ad3efc50ee83d9b18885575e3ca08a76fd1688251a41a89db13ba975fc245f79b735a47e4f6ee7a667f077ed01356dd935cafb0dc59a47ba6220dd8e16314b21de9f70a70b933d285f510f16572d5973480d8e1e17ba27528bc450faa0babf4d54dc67c87cd6dbf5bc1dbaeb22012174efd65bd83dca2058214d80c89b3b91816f22ea9ea866852a8d6e5da2c597071bef370857d3d2500d26cd1be85c1e1131123c9c4dc89d6bdf95c8f2a32ffdd691a8eeffb56b164b1e14e9e89524f14dbde055bee5da08ee4415b5f04806cee677936c02d61a52a4454218e1add637c2ac329c6c475f90c6a6ffeb703c9553e6d475399f325a21735e6272556c898ddb413bd660f3250540d873b63be28dca85288581513db0b492f213945009fcdb61470e5f1f80595cc72c05924671468fb9b84f5d24cd4c4dfbd456a036a590cf102a90bcf202786bd9c30306d3a16179ddeddf126c42d353c774c2f53d587b8392c0b701fc71c98bfa3ea03387e75fbf02bf9b11e13cce27f33c7c436df092224812db4ce0cad13e2e8631c44b4b202b4607691c00df8f677a55e269b88c765520cfa148954bdb31c88109efb58c3d24b7336a415a7b8398675de8178017113375e3a5ab0f7cbfd5386d09dbf5f7dd3ffdf98481555cb3b939eb80b72a8f25cb37b5ab6220959f15102d86b551d41c8e7ebe6c15cbf2538169fcbdb38a8075e054618a9ae238ca5209bc64464b20fc4f6c8701524832894dc742fdab2838e276164a29b71764fbe445bf7ffe5ab3ef3ec77c7922cd6cdb22cc9f7a4610a782ad2b884d69ef9dd661d6f7a54bd8e800d55ad0d2bac272ae02489039ce29d00d852761586f23dae30d17c44fea793696d8fc4d969a9f485639bdfcb2d3dea7bc0d41481f556b8268f6ef2d785c671f0315300d9b52fc41df40b3412601268e553fd113629672d05b8d2b8c191f40cd4bab0f2f2f0e3d6a8b9d5872c12ca16849d5731a6cd097422163f40c92966ab29dd1358fb2bb8e555bde2dfb16c2eb4a5cee3281cc21509db52720f2f6a95fbb982c136a37ab1fd449356dc1eba6e18f434d529d68cf3549eebea629320b50f242fed338760913e2acf1c37252a7bc8c6a8903d31f134fb8a10ffe3cd77e8a6f3fc9f4793f5e3a439cd86063fc56e999d902d225e33bfd577cf5ef232de9916096379b0c2505ce0e129f09d6b512bc8b5bc7ff9d40c6e0f00f84766072159d59a5d3424ad846f79eb0a14087bf5dc54723ae7a5718f49c20df6baa296f0c312d92648d78805ed5f7e52b7bff3f0d7a767defcba21b65b5eeed6e321a320b98c1bea1ab26d111d9ee024d3d132899950f11f9d54d0a42a84b21db678c19c27ba84f8e259f31ce1a794689873c98dac7c6d716301e9e69ec5cec3293f9912e7017a33f0ca6d2a0d7a0e51fe159fcbeaaef1042110a2ea09812dca9f579d18046c36611390e5316f64a622eb72efc9db3fbb413fda829caa558a91b0f2472ba8bd7e66fdd6788bf10389cda3185bdfdb2bee717c4d9393053519fa476f2f5aac52f034e34fdcec84462c3e51a67af39580c511b29ad2b718bb8b00d2e48b5c3739f5501675b2311f9daaa2ff53f0cfad70b31c81f49e8daafd92f11502aba187d21f641f06d7355286543aae01ef156ffc111f630a88a3924b45c1d595273892663ce79e477c165746b511c744defc4e6319097af15d56d397700b37f85f627e55a196ebbd743474bedf86365457966002d45e9374ca10a67827a381dab09dada93c7743ab1569eb6bd71e27018d44f529d535f49be59fbf520808a835ac471344dd5ef919d96e5804cb6effdd7ef244214eacb89503830a4846b9f455e0b9caf55f1281"},
{"0000000000000000000000000000000000000000000000000000000000000025", "0013d902acc168f4772161f59bc274ddde6637cc660929fd408d183bc3da498864e072507f1cbfbbf9750e95cffe1c5ac0dce7cf512f964e5a31b90c8f18631a62aefd22dd34a9c82564efd24020f1b02ebea60a1820266102912491304fa22f0a67dcde78bb5583512fe99c6cce6c0779796313dc4c663d3d402f95b3e8413cdab98ad7c4158bfec465783d7f31af2bb143af415c7e13a2d0c332f63955ad11e6616b93385d763f00660c8816af28d5bc0613faacc54bd33b3aba3129080ffb112c463a25d2c590c6c4e8f5e1d2fe3c0e0e08ce6bdedb250faf39a79418e3bbf73bc2081e579a52ee45823263d2cd55aefab4e156202eef22d7bc320843678d0b0eacc2fd5790a7ca25877c4e9fba592b09362bff07e5b6b5b258e3d054ac0031166c6a7ba40c19e24e08cf2f53d1eb469cf6564072e1c35d1fb71165ac2fa404a80f9ebd31a1455512acb403cf8dba0182239a24e79f87f4c8f19bf50dd2f2ee5c3d299a11f610b2f8e84021986ae172cb32fce67d90bb559a06643a5be82b4c25a799e797acedacadf07651c54112f25a5ab62e244ff33f556091dad5866f87540a7213455c5bacc7ca26c73d78f2e4d4427295d216ebd4344c05dd1f510e1fb17df5b5da507dd676a334a8c11cf02533360e01a519fa05a6f33a644e849d17e49a29c52b414b5e9b34f63723461d3e4a02e0811f67c706bf78e0f8cb8d0fb06f61809cdf706534287343cd0c9ed326fe98f1def93e2352b2ff19dda7abf29eb318dc36e5d45a6d9cf3e352c0b9965b28dc424ae32a40cefaa1ccdf1f95a90dd425c2e7ac2670931afb1308d3e4eb861754492dbfd554cb470d5e9ac5b9fabd0d18164ab45980037e64d15d03552224bb330be845139b4f49491becef03b9415388986d6893ae88b0e616a60f5a5da2a2e7c10276586d6199de9a521dddf700ba683addd758b312c2509d4ba13bd46581239d8a30ee11b271a64711c80ef97802ea946a693f16c3060ccb85270de6f043495f98d397df04163b095b830f2632d7cbb8d0d3fff4c39d46dcfe58d358e25f3bb4132b26d88a06c1b3e3d7a32550301d1390663f6c1823cd3d6735ceeb6ad9fff2dda1f35c011306508dc918fb6f7466e81e577610646f1b70eeb649d95f4cf52d99023dc0a73daf50f927b41860bf4e0335b6c776082c7b66bb091c7d37c718a277c60b667c61f6cf1423af2990c2d840bda5ace5448f5a93e97c19ff4fa2169e8f5e19c609384f47492554f10552cce5d78b9f3ea964e1e2591855ee1c252337d2fd4200339833c20c1e03bf1e852a2d1691c7cebc56ae0ed27d59591a1a824365dddf6f27fa76b22d6d15945d79581631a322e69c3ac4d80b80f624c262e9fdcfc4a1675832335cd2673a51a091c12e63691ee675517a574999abd6024e80a5d8024b328fc094e09956d629c6ad3eb9ea052c25b7ed4bd3047734426f954089a1145b38000b0f978e5d2d5ddf5ba28881460d4ef34cf7ccbc2c143941023e6d703263aa9395ee015e4c7dedb6f64d5a100239c6850ae62396b04504a9c82ca7144b796d891231ca1fbd4527fb6b93d48c8ff8bf0f1f869ebf6d115a5a192353fabacac0e3b01fcecf3f34c71fb8435527feb3171d5907775f05c2a3b1d6a2f8ef3893250d372abe33879bbc60c633fb443256d15bf38fc23220e687de154b51cfc161a21e0fe310c6a6d7bed1b20fd778c08b5436a7d538228a8bb1b07e792e94fb4d1ffe1fe8cfd3b90b82311473b4afdecd97e8fbbd230d71e9d8ce10303cddf461677fcde6456e2dbcf26d715c65f372e36d5997818a6661fff2baeb1bd949240de6d3dede0f661accdf84347a5b9541f2f3cfde8c48f56afea71665b6d5f284e4d46f5f6dbdfb77b1d3"},
{"0000000000000000000000000000000000000000000000000000000000000029", "0068a20b33963dffe13d80a07426f85a5d17d7a4496bec63ea6f9ed6e7c97af76673f3f96b0c945f316e0d04b6e7d10c3c8cf1c406889fd3d7c5ba80d2833a2466bb8123d34ec98aa984f1405e35c5d9a67072fc0c216a4900d71f7fb676219a3dd75c7a95b6dc8c0619b66435790f52a5015a45810db8062d6167592aa70e17ef1cdf94d94b16740b7e627f7a9b10faff45781a9ced61145a6a0be486028ae67ca80ae10d57be61022467c6b294dcc16d5bc6fb94f2b11298ab57a25d236bd146b772d051d2c87488bedabd85a176b23b330b8016e1d5c9755fc6c00464307968c65ef8db40f029b9caffa4684b09bbbbf787e077f8bae7bd17a3f90f713cbd4bc432319484e45ea240986e5ad4dfbe51112decfbbad4f08cf3be954db87debf69a741bcfd912d9a420b5a0717bf92001755fa90c74743bf89ca21c03b7a23a5189efd7f839655bce8ec34f3bdf144702fa91b160d03eb53601b09d8b183d3936b08bf6c526388e8de6dda4011f2bc49fa2ee2c5e00affeffa30d9b9d3af49382593e2a221ded929b956914f30c491b94d18c32198da95716829159f7259a004f9e51890cd1b37cc74c5e9523fff33d4a344ac5c4f4df5f1e20568c82a818d953688df2698ac3c130d97c6be66a12fcf12f44133e436a04d13accebd314c2e3fb7d2c2531079d60eee28ff512360b0e6332c2c9a15acb4603afba102f5a96dff90335080d5702765e76ddfb7e0c936ba1b65e38b8f89a814170d7e3ed2a79ccbf2f0777f3de461a6cebe9c79477b2e1945de1e0fae9dd197a0515c89cbbe2fb6623b0fe2e30cec7427b595a061911fd8c291227b37b734b4e2e7915d451dfcfcd06a2d5f0a6d865ad634480f0415916e0caf1ac96580703f52dd58dbdf92e0144e1f15d4bba0670748cde2cf0b1d96a969f13ed0cd419ab3ba59dc0f2722ace03c66b9fb5ab7a0dd79c049eaa475e8d6d5d5374a352153e01e2a0cd0b65eb86c20abdd48aa4863cb2430a2db95bcbfd4c21f35941732a7803da2022be79f02e934f7ddbdeb153e75105c1eed8abca7cdb366c48126b692fe896f95369efc2a5cb7db161090c3e18a42e10a3f1f8501071d27e374f5ac2e6864dac184cf712f171251b2547175206e40270fa6ffd89509b39571bab0c9d1e61507f2b5422937469c4f6ba2bbf890206a021e8ef56874978b664c45c4b117df9b9ba042e271d89c07bccaf392f8826210a39c39191b191b2b60c295c29510511b0c5ff43446bf6f249618d9db7d23f29a3bdfe9b8809a76e25b6ce71473d7604b5f6490c7d5a5b01cc4e5b717f7143b7ac28060e4a55dadd0e0d2964961e5f1d5435a49b733b332da38657b9172209eed5968c2c3d5bc75794ef67f09752ac3ac10262b7abc2de18df4f5c94da8fbdf4dc86e97339306703f2a320be07c59d5aa5720afdef29748d4cbfaed71215be30228e0cc2c47347faf946626e85f1d548c6286c24e193948d1562fb22f731ffedd4ecadaab0b43de68c000b5c438b476ba61026336d66d68a96d685041729ca1a81f1fff140417374c48e7328b9fc8391126cae4d4f8c9131ce1c024dd420fd1d178790aa150461c7ea8c889f579c4263d5e634bf81ebae373abc10641b05d16c7175a43e4120bff13da579f1ccd1b60440af7d0304323ddea3c55f81bcfa72417955932441cc7c9324e01fa9e5c0e78a975f221361dfff4f9805541a09ace945e5e5ff32567bfbf11d23a2f726a112c35292e00e1412f52b815112484effcb683f6da20799dd30a882a119cddf76a6d971651a2d4571736c2c3bcf76a9d58bed2c91b35ea9a15d84eedcb117df0feb1887188f0c04ff25419ae0e7d688773807e4031985b91aef468c99c7d3488541c574ba9eb1f97669"},
{"0000000000000000000000000000000000000000000000000000000000000016", "0114026523aa61cb9c0ef1a0283d6164f0dcca4a283176afb68ba6a141b900481fbf776b12fc4a597580199bc7a218260c8d5529e3fca9d226c2d915d7655931a3e2a579db07c9c44f048da0aabc4a0d94ba19a5038c45e13118f49f6b62a2715e322b62ac6016aab22c00abe42ecf22996db812e8ec471bd5c652fca5b50d631a05c64979689701d1a556f930393233ddc7180fd554b5d90f6f0d724262a232e9ca65892f0d5d1407513dd7e3e0248d5b53e5553fd1f38167e8fc8096132737810c0b491b56ea740fedb9cf762343fbfd4610e7013591c47ac033be434449ba1c0e4b9674ff0929856f9682228e212b4552ea9064a5fd26617b55b9131f8f2fb454119ba93fe3abeef5c1014b428d83113a9bb73d76e68735ab5884912bd8b5b25d04b90c9e1b4333cf038d9254db60634f89e599957c6131af553ff17dac66d3bd6977dab6a6b5785d15eabaf4156201fcdb6580d926afc1a740eace9712ddb08295c43804f9b92cea91b91782b62238306a784219e992361d1c19af3eed50622307029433c4dbf1e3cc775ee3502432fc5416f4bb7dffc1296875596c33921efd146f06da1a52c0d539ab6bdd0397e8772393665f5ed19c38a12a5fbfd92ac4ff83c415abc361669827d5b9ea23f2947ca55354910b173a5854e2c00ea6be1fd1eb36cf234a1194095368f2c65f555425776233dee2720226a90200c20086f0eb614251216ac482232d47c91c2cb9080fa80d337c55c1c8755f7e31c90e1c82f70585df997a0517088e2962c176e928163346921940085c89096490c21aa1a150b18846d3cc4cf0b1c51207efadcddd9f231158ec03afb038a40d0764bf87a22d23cbf69e17bc1dffd1e684c53a4635ddd9eef79e14bf596d4447fb0165ecb3da89bd15de9f9cbb6804152c3bc525687aa78e83c23d087a7f7277c6fb9fc202f8cb48748b649edbac4137591b71ec4ff19b66ee1ea3da469c4cc1a0fb15e59417eb2529b3b1d12dcc06987432501ab5e5288740857efbdca0a33f48d5c72591d2c069d2b0391f36c523b2e99ab981a0ce65651c528a56b8efe4d383cec2a9deded0a95378af3f334cf5a5018533e019de8f081994cf7a5eeeb67b07ea1e89dd1a509243c391ef942297d72ff6c8abfe24cd2f630ea9fc25e58d912ba57ff247c529a98c6eec0b05a9f55f308e6bb9b201616d786259e0b2207c422f11c9e529609f22d99ce131a174e842f580476df8750e4d9a4f6d8841fc4e36566f3abf804de2b993333a2cbb7a3731982b7cc27257974ee711bad08ad8d7a317014b8b5bc7b30ee1d5522606e41f14b694897f48455b8f5dfd9399aeb43228ee99e3501a45b2d6cae719cc36589835cab5c402e3cd14faabc113fc7881ef1f899ce27bda0da30084953778cf4005d302942cd403011755214d9ea2d63566c48ae88c529947f8fa1117933221ddde1f55f3bac2ad5a5b91c662dbdf715c50f40f8796e96bab6baad88fdc5e6b9a7fdf3f4a905b48831c969a985347eec5e81b57aca6ad4d5575ef0cb2f4390990b60bdb5b118ac8453575929bae935c10ac5f1448e72fb19bcad2160f6059cb8ad13d0c1d165acf666886e073241772025eb814e909b86fc04847a94ee8a02d171f89b9f5f9354970d1946d78bf01091d33cdf3b07269beedc24ee71e124cd15f95b86f274b4d8b37603527ac4582cf59b113f26d6eb7b8d9107c67e73404add904dcb17b8025c6854de454d2272dbd61e780161f870452f4d02bcd24e2c48e3750590d090c962cc601e912a8b27677d16b4982d1dd3a2510b38c8cf69c4111f2bf91bba16da580bb60d073c71497e2f872c816895cb204e429710322bce69ab4b621661b4e902cdfe3a58cd32eb3edfea5045a9c6da1"},
{"000000000000000000000000000000000000000000000000000000000000000c", "00337a3fdc5a3149803651d9c42a1698ba6d4f7a04072f15964cc6b212950c0314744437666e4d9395f00bf8254ace4a78b96114818016ed92edb00538342a17985a2f946cc93fd3c0249b0940db31bf9575941f00af32c134cb8c331e81e3802fc5969188a19abc7c073fe4fa46c9f2cc61fe4280ca220f266aff36069c06ec91b8ba5403637b8a1088fd165055b71afe22180c3c94b8ad1ba1af7d2d51957bcc636a1ba6d23c3b01865e9cf99d0667c1390466d8577a218f074dce1038f3fa07d799eaf5cc5c2477c7c6c6997082de22b30f5bb8f3a787f66069ffa3adfb73b02a086c1f2e2e20c1a4d188a863218c47c41b875b8a0700c67e38b109ab4f55a5f77ab9ccdb629eb9ee123156acb0646d1791fa277e1276a324bc021f614b9f38e285b2020f0a5d873b30e95d0fd877a8ae21d57a6e56505b53bf169b4c3bce1a75fd4137b286f73004b256b1f5c98103a4da5a3a954a98f0983a0b5b76b9e2be4bdc658e068a4458abf513fbcd79e270bc9f1c076f421f716505cef53d4acae9652656211c90bcc64c79df5fe3270fa669bc150b6c72cb4b66100c3f079e7990d4b65113625e4d35e8ff2dda45430e0a6b8042915cfef34c324b0ba0e7ef7b13c11eb5d63de1868a2070b2758e1d654a3462b5b3d9bc294af6a8fc895ec3ac77f0252467cb0d1e20ba63b32bab286572a63ef8c8de977207d37acc4885b9df3246d3d1b962b43142d23b599a11901931d65d0a7d1757e6d3364c5626041d98d24311a86663b75b3321c43c98f1d0e56e0a42a69647713182730c32e497d597688ac9385af782da05fa5a930b565fab56876050b541057e7a5f9a868342956c4a49b48d1635681abff86965fb474bafa99fd9be768013f2b667b2d48ab2d713b337115dc9f9ecf5bd207717578d72e806d498b411328b91692faa51d2dc4bc80097a046f3c23035c03421e58f7933015dfb35fed70d3b93ec4b6a5ed1ab8db0fa70f51fbd87f9b601f80766d72f08942deddc91a9986068671fb0173dcc4b0869c36f5e35c9d3b9a4239a805a222d9506f107bc0853db9339a178b30cdb371bd3f1b6ddf2627e3aad3d70b2bd045bd9574eb1e976e055d26f7dafbd68cf1d07e1436d1bbe55d2bb99db226d628f62d25b5bce4031d2bb489392fcd9be0635d5eb9c2eb7a19ac58203959ba221c355661e1154f05d6ee5e284ff3a62f10a0e8d7edc44289ab8fb123bcbff5032d7971e45fe1310caf4060fe9b339e4d160735b6fa1030193829e23554f04bd9715affb87247c91b221330a4fb8842c077a228d8f673ccdbdc2e14578a5d7d0b8ad729e9437ccbbaa8cda168cf395e50e47b462f353dabbbfb108549dc3570ea22cfe4de47823785fc937d47fa07e2086b642e9c851f70fef42682398c5b59ca112dfaa0102f66272441186d863c386332a8554f6f2fa5d9a1174943bd51442355bfd64fde83a49d94c63d82e2a05f164c8a92923bbcc1ec1f7619ac50370043c837d17cc67a9eec9ae5e7aacbdf7ce73777f895f5f9c1407053ea7668329cada2e71cc6c4928851cc14e0ff50aa15e9cd049ebdb557ea1627cb75e008e65a7760114ac5623efcd1985b5e633d1fd2148f92cc0588eb8464b6465aa14b819e491c5f50f5ed3f20da434cb670580c610cb862997a9f8641f29c179723044fd68ef18d3ab8b86e06dc1f8ab31afaa6eca5ef271991ac313cc4d0fcff76e53d4dd91fe3ffe78e5139a3505cd276424e6b0da449d602975edbfb86e05f448fc6be60a2c563eaccb3657add250f09c91a7249c27571027643623b3eea4180573c5a91b09f360625bd37f672a1659e4a95792dfa5656dd28fe9a129a61bd032e8f1340096c0fa51833147efe9b7e5ea85baf8163d54eb"},
{"000000000000000000000000000000000000000000000000000000000000000d", "003947af0bc096d6e35ae733fdd820b28490ba62340af649a5643c04afe2913532b2f44f05d4c7911f6708e1f2c35bd7f91775f40207bebeb5816db111e53e104423db231554177c13c15fd0e14d3ca6767372671870247e6b54750ea8d25605ae46b7b61791b187323ac0fe693897731f52aae6c0256e49127a15d8c66a31e7b7fa7f976542f38469e82d57af3a98d1579ba7708e1de6be39b153dfb207f6bf45c9c30827784425059cbf1bb1045fab7343032368e66cdd8d739a3262460f6ae1682038ef09c9c5067a6780eabd3fdfe48514e05319891fd28b3bf9e703d4d1c2fe4d733d99392a3b11c1b4160e0b786de3944f551bc16ad9f7cabf075653379e0d79650974b800aa77ac7f5fd2defbe314d5277b6e16114dec52233ea0cecd2a4e13188ee51fd0e72db2e1400f519615f6f0ebab257ebadcf62d5283fd92df3b2895e2233d69ed6c841fc3b87e483b01216ca64a01fddf3a1c321faeb37bddf163df5e731780a4dca6cdeef3a0af2714f1c4ae81ca4854299919b7b536b3e3de2b29f1856875d1a7328eb7d8edf221a92662c61c8bf3a1386303c898838e080e79c12e0368f8cf785277e127d5b3fb9a5c07c503d233e4712647222769d660bde38df2ed1849add989174f0d9d0865ed5c77d36eef2376a1546ad328399d1ad22b8913257cd4ad5d2df1b4c671c86849e921ecebb85e2b04c315d0bd90ed698bc1572fed7f376a4652bdfb910fbcbc463ea26ff1e31f8203cc51d0f11a611d32ed08351d058d8741fd431ff5ff7ae35f5db25239b1a8194fcf659951956d4b9d241cbdba5ad20d67bb429d0bf4535bafa32ce15c7082f503f7f439f63f3ce93c123db0eced1eba9b0f8635745b4f9c95a8eef1da420c215a1542edcba7b5ead5406fc574b15127d4d8921b75bd30b3a234c573d67d2c0c7a24af65355bb91f00a481520c082d20519d52bff49bb60dce421bdde01dcd73e1494f6520fcef32e879d4102957136de86607986f3f05de9a89e0a9e0c5b7e654c234571b03301a230f5e00ca9551bfd9f52412c19d79cc5679b982030cbf2c37aa60415fa35112eb5d83aa9081b6186e149734f86150b303bf94119c3cbe7ef49c92497599134d6f508d491c01448a34330dba5d7db14a7de07525a266d2f4eadb0bf848a32985aa7d39dc959f3029039a8ebe4f95158b136101e55ff31a99b71cd248ab100e8275dc1536e8bfdb0163e56ddb27007bd9ee86098388fa348ebcd79175f684c0dd7cc9b5fdf4da500a81b136e3506f5d9fcf60af1a78917e5871351d37106291b51724644ddb7ef5f97f596a399cceece73950e0eb3d802ac8f3f68996fa91efa1d71bd07910e81881194dbfc6c75363d8c4d0155f697a4074dfa0d91b82877e4b13d37f8dc212f04e4527d971b2d9e1db00dbfe5bec61d057ffd172943cb664ed66b7d0702f0478854b9b70b553f4c0631003711ba63fdff6de4a0c8514cd6bcd600285abb2d95852ae966a1957f66943e974dcba9351e2c4de65a20950da0a03effab0fc02b7b709b1029fb1d668d162fb8e1a9db662cf7b6c17d95a1a14e8e519aa18f31c31420da51398f4fbdf0382517a288428ee48db13c0672bf282316598ca690a5a8a14ff9f6baf4f2fb21931cf0971b2527f92180227dceeb5d06147f304f2c863a65e49290f375691416c74bcb7a8beed7a6185ea29b4cb22def31a3bfe0f30f48daaa309b33ac8638e0a6e338d950059acaa3866960abd61970be4661556c638780773085c0906037f9889cfbaf2a3ec9645531dfa190f1a75fa4a9020c8e793cbd2a5ad40e1ab0e65ffaaf357789d61800431b77d310cd9789f8060bec1bdac1afe3739c4223d5b5b053bea015b60689469d94f9fa6ff9c1b918e"},
{"0000000000000000000000000000000000000000000000000000000000000010", "0024f30f6a25882567ee711f7639c9bc6a556d177a1a528b6c0e86bd427b80a263729ed7291d7249b76d0edd43152c09c41390c9832c6571078e091cf2dd4b3fb52edce3dd9a0151ab369c2afbb249f00a9ed6150607286179f01a9fcba290bb3f32efb86c5a5f1334192c6ba7bf5781d1ad3465062fee9f4996fd723cf90cba5bcad047c0d371bcf30bbc699f31e0b0bd59111e1c3455b0f8d26de541b3658d48fed905a4ccada90b55f6c14f1143999bded49c3264bbcdd7e2dc3222315cb2f99ea05a17c76d836b882d32f1f59dd132650e1c8a7ec8ce503bb361d3dc5ff56b54f76b0a347452de37a46e58220da9f21756a7c57b4a7ec874acdb0e162d36c12d876fe79355b265462f55a6c81124b5165763c81707784bbebbe29220db258a779e1dade11316518e06c984a57a1804332335f55b4bc9ff2ee52a6015f6cff20893e66775d00278253334513e42dc003a38698c130569423a654adbf2b1bb0222ba56960da25a2985d39928aa39211d2af53cb84db8f538080f325e300f48caa1c881c43a51bcfd1f99d39dc2ff3a0fcb594d64650d66ac042b5a23bfd2363312b3fd06a8e60e102e2947f56d11edf8a24e65dc0a53b81c50f224481bb4a60ddfcb2893b2e5a902f150188b6015512ed0e2295d77811a17393bf083a2383f1efa7717fd537b1e86d6cc5ea9a28aad41b3c5322995563f0469678d7e9dc21b2d61f18d9de70445163e7497d22b67317bf8958dfb2eb58704ced631a25f6dbc6f1e0efcab9b6f968b87448d470e8e735e3b54ac1b515c56a4a3c5b3ddd3556b30b61b0f4c763ab9e19d87b4061d80601db0ec879e541dab3dfb8827a0b4be41e7227c6795ee8ded595ec096aff2f043bf7ba73ec12807e8d4ac10dad3e36d72c3efd979bd5d4a0eda0bfc095f4ea2b6cebdcece3486c4cafa47ae111c36efa300461bc89a2fb163d1bd60a48b48c948449106be8563f7bd9941dbbbc4ff97b85e8b67a96390761d584522e7e93b7e0ed5374bf856744165f059f71cdcc7662380215bc52e196786e52244c92b591ca56076bc1f0255f8ae42662d2336356296946b930149af9a74453f900e2f58e40eb3f6e40602e2ede835bfa2f11c44042829ee68492c5b1dcfb19407d43e399c1091addd66909615b26082d3b59f087b28ff9ea2a4df7b3c13084379f7694f1d149935210ee07cf321221bfac7ec22aa34aac62979d3ba06991533dbbfc25feefdb1b32195cbd35ea3eb636de4f23a12b0b105d67c990c7a49a5a29228a162c1fbb3fa4ae8eaa0f69c0affbe740d6c096561ebf7e9f29bc4cd21a8bf1318df9fe8cd12a626e61f475b193d51934660cba5832632bdeadb3a5a6c53999a2bab7c2564c8dbe2643320873c57cf4c480aa2fba71edb6d0af72d8b5ff26df0e53a22220316d49a40de8db14e3f0546b4d6994ddbcbdea8c9147896e2ca47524c586da79530c326a6a279be92c751680374b92b39d799cc0685d577ea0eefa41db1e95f1fbc28621af2cfcbdb569778ff1f8226907d904f0761c354be4f4c555338c2faff1808614f70fef68d1dbe07d4b38ffb17767d53bbc12e8ddd0d151782ad0b38a87d9a0f109990eeb2d320cf1c78df6aaabb7e2eae1f8f2d143fc2dfb352ec47a18dda4857fd2a76083027968c4829f7a904a2677b9a0fa0f6f436233d2682c5b0c1157eb7ab2473446e9be9891be1ed6bd508c61df845a6e7a163da92845bcb43fd7562ddc96617621e07fd74259fd0aa822c6cfdc17cdf7292bbb50fe609e0100c0f156da2923e76489eb6859e3edbe12072cf03b14d04b66930f417beec37530cda3cd8bb133945c789d0e7dace20b4df856bec76dfa01e195326c862f5724c299f711bd7c83653fdf9fc09567b9d"},
{"0000000000000000000000000000000000000000000000000000000000000011", "0133ee8bedcf9a133108f3bbcdbc20ea045675d4460c9a61f5f791b15b91b7c0db1a98890582d4af7d0805e55b0b1c875c872acd76e629399a260362b2294447998efe0658d475935e383ab542ef1b14fd5929ea040500296da9df4d9cd774571d5fd981d040dea61a1d8114b75b60d11b0d3661f9e7bfa309da505330c610148a9ee44cc0e3175586361848302599f09e4ce463c21f146df3ededad1e77bbedc8a0ceeab61c82e5023e9b6120c734149756f126022eecde005550f1ba17489287858afed34370e335b0d79e5256475ae6f013064ba86cc8550d81d5730f4b23fecdd5ea7c17533aacab23ce6104b9d38e25b02af860b60fce1d1f1e1457d78d1ccaa04494ec85c8bb5ab61595cd31b3043beb6a3a854f9cfaf0aedbb8c77d32bfe3819fa6772f7db6dab772f323e358d75c2ed4bd434ce4fbab3b4358a380b5d32597c70c6507c06c85fe23a5dbe4fb01f9f23a4318ae07c873440d457553e52791d784830bddf9c0a5de768180287160791ce08b20813b53770caeee1c2d162a31add7e103a1c2d0010b231384612c0b71fafd923967818a43f939acfef2fddafcfbce0539add5792042b99f8d89d676f71862991c550da43c841410e395ee1ec885f3edc7521bb751177e8af31384e6503e222dbf630bb3b6e8b49125d37ed97da2526ae33048ecf5cb775a5a017ef653e2f7c97d50f4083c02ea0f479dfb091993cff5dec1861c1f77088d16af6b863415b000db43d4f790502715ead3d2b34a257c139c3cd9f9e4d2c1c34dec4d8e15d05e1932eb30120f01238eb179daaca436d3672e7eaef13c28fc0d9814b1007a77cfdd61695c6af0f3b6e76c1a092c37b38e806d194e8f05b188e78e7b49be4c62b91a560ec80d3d107164ffb204c67123f7bc3e0685331f3d28e05991a6a1afff58d884da125363018ff237798b046b5a5324181ec2c296f11cc4ed4178ebb16795ae055c83804dcd2714c45014abf4c42ed64c13d3ad3f102b7b22f3d4eec8d4e3b2257caeb49520886bc1e91d446da94211b978af11127370a0f53c9d1b31071107923993c404b9852a8910f7a8ad314e9bbf997bea0e2d463a9648a5a0c166f1732da29e399fb796869d0a74193e165b1cab8880e128386a5314631a37264c2bbb643c707d962dff31e531e4d907daf541f98ae9075aad322ecd5b39b57331602e90a7f95b890c36b721de8c6f091183e8fbd655d6807c3725f479b0d4fd0ceeca3b3b06a3a6e19374e1455c4d1d52758ad27f1d8286240248742539b55743625b66d2ba287fa3740c49272aa80ba4c8a06a2280eb14fac687efd7467e2126ffdc1d90c0efaff22415abc0665554749f302b140f6ed8a5dca60b892197a05ac392bea3ee5cb0af169af45b84987a1745dd080030d8756ee1fe5f85ee0496bd28dc9eec59570e52ed13edb00d30116c0ea00e1196b1bec78ed24103f3cd66ba838202afd0417e0929e16c98f60053da41a4a385eb5929d23a2ef0894b389c569031310bbe6e57092d4c3c26812aff0b5b07889cbf3f1dc7e5aaabd595cdbb5c31c7ba760b822363295e921051152d0695cb2ccae9f70b307c866b08d72c5b025045a5d44a60b007f71f5d30cad4654323f90375a329044bf32e030b0ef9d74558591a2ee00588e0e03ecb374ca50145f4b239b32b0b11bf37a2242517d2caa4a27b79b793f78542604e5a9e3cb08e17d5a73b92c9dac518a081bd7e9d5eee206733c833226caf94d5ae72e9ba9173ba2ba63d790c513b58ad07c0c329da151783484302c54cd17e7e2beb33284f0d15e3986dc9d8897bdf5724084ac9de96cd9cc4f612ed7a1a72093d3d05c6516f5f3b6f64d25c0b36eb1ca6260d4d6022859badb9520ae5abda7a1f567fc3"},
{"0000000000000000000000000000000000000000000000000000000000000016", "00ad4c1b755dc9c58e34f04a73cd72d1fa52b1b901026c53f7a34bbc8d6a49b0e9f9d8147730727d923304fa4303d831cf23e0c770c23954aa3db6fa781ecc19d0046acf8b2cb3d9b591a423db77e5318dd494e9132255bd9a4cf7a1da661286f4a90b3f4add9be4ee13616e6fd5487344697922c68c3f09eda234baeb4917916be920a204013d311233e9991acca8833021b52b746554128ddca1c381b81865eb5236ea389fc610015c26eda3985ed36a68d049021cfd7c425a73940a3a3734845fe7bd7bd5b5a871cadec99699565653371b8c613629c95832a460c4afa969f7699e73fa70ca2294031b9de3b57f428b02956af9f6aa1dbf7cf09c064462d620ab60199a2923af322bbde70471daaafc28018569bcb794fbe5e295a6c6c2c0ab58813d19930c692a8e7d88d88a878a6557da3a9e8de343d5a49f3a06626ce293ddcf216e46dd4bb9c42a77609745cd0234d86e1520c4c1e6c200e8c864f675bacf95a2284658dbf8de946d9cc48ae56d14e6ca0f490adc3f672cb2df0227b14b9de92d231311cacf0ce3cdfdee7a34d4ede6b2e1e505586e474451f441975eee1e7eae0416bda82ad5a23df8e4f1514a418f58ae980d67702f4a652f78acc7c1afc5f481bc716add96075287e329dfeebdd84be8809831b6c2cfbfbf120d9e139ce13fbbe7672a2c302d996c96c272f3e792657f7dd03704650c001bad0cff9cf4a22e0cc63185b1e9faf617231491ddb98b837ea907b77f95ebb97b37e4fa9da628e214a9a9747981ff4bf5cb79d70c9f0a4878dd6b4b5407417525bea1657fa8f7b5f8f4ae4bff1748a1088adb41650598db865355dfbd57a4de9771ff11bf0973963aac5d8d4f754487e59ee436727ec51acc0718ea30d446255c3f547ba6762fd1fba6dd3a79fdf13962ff87511a8aacdbe743a71ec5955d626b3a7c3e00e9caab2614aa79f8d1e8d424702a3245c7fe701844f83acaded41ee53b23893083e788debafe19f3a40486a5fda582caf61af5a184ed7fb59cf8c7d438521b0ead4dd007f6afab892350afefab6d4bcbda981903879c05031d05bdf5f6257c415a87aa1af9dfae8a1ab4469829df644b7829b3fed35ba622148edd45ad04d88ded050f2a42fe4ad084677addec35c6efe69617e92271008eadfd5cd723ae39a9efaa47d85460af08305c72384789b50bf014ae2ff20f5debfc7dcbf013e8a555a9dd5dd95dac81d95865e1420eb930eea31a202958dea56b67e0ff6500e655c1a966af2b836e269a2a790f953917461e04cc96dc7dfe7fa0be006e0c0fb4c5b15648e7eb43439ed73686cd1996a923c2166318ced4062c9e7541a4482e28db5dbcbd5d363a342722137de0cd353a71140704cdf0d5bd1f16a3c74a3e52999c33d289b767288f82d08b22603afc476a01c242597bc13d0fcb75f2349922d9fe8fae376ce136843322775b5cb928d9b66bcabdd5032b39d9e6ab0727ce7e4dd767131908f12b8bbd8a3daf517097101580647e2725fab5520e846946efee91fee2ba711303fcd640434d8d1c71f06309d2b998326f3f95fa3227c5f61c2ed57f8d4b58b41144ddaf319eeb55a1a104477b0664cb74e3fb69d08e3c96df31d7795928890b5da88cdc85060a5263847291d41ac589863537280a37829bc4f4dc6ff2c7d144f7f86dfcaedc6b5dd2112fb8e1afdee45bc400261b39dcec7e6e581c99e50ec480b499dd6eaf8157816860bee36cb604df26d911b5c2272b0b822c84a6f72754f5e7aef93f5d4db80dc5cd8f6289f2725d28d8d36cd02ae647ba12a50c35f54a853c18797cd79cd376d8b13131562297e5f7113472769978ffc7df12a639ef427f05fabaf921ef21c8fee985237b2f5f8d35a057313dd9c93f74a07c"},
{"0000000000000000000000000000000000000000000000000000000000000010", "002847a9e24b3a767545e138e4dd96516698cbf35528036ff7b170f245f14647de37f498ca93c87a134822575520850c1a31cbcbf53ddfe5cdfae2f55c865b6558f719629bd4abbe39d6943e45a83e155dfae96508c3b531da5c15d1d097979ab87f20b3a7255e4d630fe9711dbf92dcbfca63326bd898f68555e919101019b84d29a7117074cd476473f1372149f343f12b792dfd6c73f296a859ddde746aa666efd96421976e4a0290183133d93a738261f368002ab9e1b7c85bac1c0f5e8125495b2b5ef68f52a7b5460e2e44bb790cb10850bdc05e10a17edc78d5df9a583792510c37f3621634ba4caa53d68eafb5341879300667a8a35dfa7203440ca72641369c2b6008f3a2d4f91a910dd690fd0346decf48dfed91fb1ec11d3871c0b22df9b4553108fa947f9b1f841505de02efa66cb3726dea9c0768116acbd1bf4cbda712fc23c8dc446d99f4b291111f005e024f4a4f26cee7d15368c74d3e8a3388fa537230ffa6742c91e55771388b3f1aefdeb74a78bbd6160236609de4614687f7ae63f1c3a2c1e2fc4fdaf43c40bdbb5e749948bf609175a9b361169f8b453c7c57057dbd6e9e94c4973de8e2fc8b47f8c62cb1940e0f2ea83574dc6149b3e243c80085ca629bb0327f71f20d142f0b5ecef5cf2167a302d2aa600f4ded7d70121080f99edf8766036d1a235cf05991d201073aaace0326e4796b050ce559fbb123f909848d0e0149b32e27c8ca71e45236ef444b33ae3be7c8f94105fb62f00b5817787f211503b2f83252e63805a9026f93374d1ea31ae8a61302cfe71b67a7c7d7fb769388170272054faddbea5ce42b0ba4d16c3eb6544b6136be40ad164655f4419ac07956c13429f632bf72eed3d8daf0089a715f40647fdfbfef85816569761338d83f24ab1d5b5d8621986e6bf5256a1ba854d72b52ae9f412a006d704df8db7197022a13b0dfe61c0118bcd45b9a285fc3580ef8022fe97ed2fad3793b2d2a57ede2b9033bd6919bdb9c0bfd0de372e6b2c392d1f93e8ebb1435f20ed0673a077b5b4293d0e75d314116af14bd03ee42632bd1e629c68f8065321fc1ec735edb0ba41115ed819536c15fe66af3575b4415f4e076ae2f9a09d594b40fddda23da8193f97b37443d921bb686ed66b2dc6f4dee651d969496b6baecf91fbda73f4f040bdf7e6c8dced033e018515e969cbca90dc29cd7e80ec8bd83a1466f0b46facbb96dee8c375bc71ccdea0e0f3a82ce531802c44284c10b61cc260e641eb1ec16f7a225be28bc13910de4317271310952464baf400c6fdb9a07e470d941a0e1684bca68f4987468ba23157fb70fdcd1acd89aab023aad9d770cb2cc07d31c17ca66750ea77319878321f360f6c8648d4e55a9231858adaa238e8551e71d42d8374708de818ed8168b013ccafd1ee122b1d6b2639e5624dfd270c0de23a2203b7b2a2d2e1ca19e1e4411314f3ca190dad02cb80777f1675e45ea26a76950b4be21a941990c9de2613cd91ec3ae90af059886f50d92ffc1bb5605bc1c8607ed02a64bc6ccf2c57827ae91c8b66a9cc43ef1621e5fceec4d51383ef8f1c5bb51508d658bf915c50f0ccbb140341b01fdf028d6f349cd47231f5c1a44b419048c14fa758ca3d9a822b53db171a201c39c54c0109a1eb1198ee10d8877d4871cb6c4a38ae8be3628ac1b85fc346bd481cbdf3b3a40646e3718d51e8afa198801c3e496b1cb7dc1549f3d7402767c3c76d237264ecba4e45ac9ad953747b78c7802137dbd5c37191c98fe7b4ed2a81be2c8522d86cbfe5e1157b2b8fc58644f1afd623f09d062ed8eaffaaab36cb35f6de728281c0145f3dd35ac1e471b273b2b268f5ddb3bec3192facf438d639304566c4ac6f0e83794197ce276"},
{"0000000000000000000000000000000000000000000000000000000000000017", "0234ad6332dcf330f5fc461f6fddcb899b0a1ca60e1c51ff039347c08ee76b14033dd30ec121769c0dfc058a4c74703146cd8b38e515b75503732853fa94db689113fb46e2da45a1d5285f8455fc2f858ddf9fc9055653070793bedfaa8f34151e2255e106f24998bf0cd5e5382905d6f2a889b398c0fba87b51a63e4a8a06247ab3c5d0e4cdddc8106625dd11b55fb5b3515819af119dd2637a7ba071a5461f6bbccdcca2fbf7ec02dd083d6f11a6cbe20bd72e77ef89d756777e39093f232f3eacd1a034cadbe4a55abde9934ee9fba4d6111854feaf909598bd0308e3354c923ac111bec1da20bbf404f3a4a62132ec52193a69f1ddb44b5bb47813dba9a534d5c8994be43298583b1699574dcf6e2f42e6cc05efaf490d9941c5059144b9cd82fc505ca71ea6b268fa08bab184e0d7f22172c10360acbd85044585dbb97c6ecdd7cfa844d567c567fe60f7968b7602423ee054823982b3bf7510874603f297031db5452124f6e6646693e5ed87b3aefbd6ac2d986f9cb3462e8966f602ee7d29e579834e51d9e8850007f0715531c1c68cc976e1b1ea26e466c1c6850157c8528f810661025ea444262ce98d74d7d436e35960e53bffd445e28e1bb41e9d5fdd7c145ece400355e51b1adc7a0aeb6efc664aa21d357c52d3c64d741a77b07915775442c58cf5a1b7cb34866a5b74def59b94b15d521c043a308d36518237ae59921401ccb3e91fb51c9bf02d154e9fd41266a5013274b74172304a10d8fb081b134b1edd53d4d9632e3ce86885e05a0ae9649ebd27200cdb7b6026358b930cb2c1e1a49bc61ff51c31120a4bdee14447961ccacfc6f51657d04a3102d30c9d3919562ed62735039be104b4d6b6555d5e740f14370af312a83cd46ec38b7052155795eebd97439c8bb61796aa49894c47ed2bd352cf8be97b8d6e4237d37702b3055fa4cc3db4a45c741b8a4eebdd3bb790e30e2315a477b0ee56f3a70f47969875241bdd113f909b0627a157a820ebd32b9c816869d4e4085a49e6a3dd1a8ce15e3da2c91920ac51ae5934868d8f58bd24810a8dac67bbce1921f8b364f45c2904aa0ee792dfc43bc84c9789da3226e84d278ccf581036411b18af0c2358b571254fe4fadb5e72feff38a1a6295a73299831404efe7b17c821e4f124943c4f0d29841c18b65303f5a4f18c101f57120c44d7bce07b5178489a0d97077c89e486a912e962071705a8723baa3455d5bf420baeddb22f15238b23ae81c461b52ba60d263bbfc731d9057c59ad88c1eebca3337ad122ff9537bde562247ebb6198152fa3c9e5d50c736fcc773812baae51562b45c76017ddbaddf875d97246a2f24726968307262ab69f2a159d653792627d482e8ff21801be8b2a3c41ba83f559fbc73d96d62c39611779cee90ff34102f27ffd6e8fcd04f8c1c983b8cfcb469cd07a49ed16c677666caded05882b11d04b7ea8b2a50abaa48b15923a0110e7b149884ba6431756042ea9fc3c20a01bc622bc2b6bbbaf9c9b424b372be84547c7daef8d12e2d4dda9454aa3801986e72b6eff4a56a75628e82f5164df1e10fef3c833d4a34c60e64dd09b7b6b1f17bdae9ee4e13069782d82d0dfe4aee17f94983ff61a4541266ea02ad3723071f42ae5a1e0f5485d725a09c37d5a072544a5629fb55ab642ca861bbe1f055f3056372ee1dcd3df8ffc091656d81ffb76e7feea4812bbadac26cabb89a587064239441225df503d193518c950c882c8d727a55d4602f95ca2165296b785270a33c220942385a7be67016a78571350c35f56be4c0cd512a0d71826858bef4754d03f70e326361a1df527a252136c730b379c54d2ccc1eaf830e7990eee982b8b5ad34e10b4fcb9c5b33cb22267d74e695c0c27"},
{"000000000000000000000000000000000000000000000000000000000000000b", "0012b949cd1c913b7c4809115f6c369f7b6a9cea133415652c871a25e3fd5fe3b2f3b146ce2c805e235f224af3fe1b70b345ffebc67c4dc8c96eac9cbf874c32a85624efecdf397e3ab720075eeabddcf95386f701d86a24468c2de342b660bf71dc0ed8b0c02af85c41099f6e1b3078b9fb1a650d675bd27a229fbbbad80f7cb6623618da7ade7151810ad85b30f4cb5b5f783d848e78cc5f4f0f5a45e658cc3a037a656c5e163709e85ee7d64502332c8bd5f61ef4becdc10ef8d1f725be84a3fa23f099c0dce4d6a2f6d55b3b0f1e37b014663abdc68c4753b69b51cc5ae69fa4a9ae72518d28b57ff84f987b41a001e36f2424af6618085d7d950e8c0252f7dded49306f3aeba2f3934adc8b7ccc74342e83014455ba7faf54241515c95e51c05bb4b8db1bb9a327348bbff8be5b851bc5cf74597e951790dc1f84dc60f18bc266d77bc3dedcb7bacef722bf9fcd02bdca7e9b5adaabe9eb347ad0dff10339f83e82c81dcdd90ecc73e221e0e8352b86b5b752e5ce1b539203df03299db2216fd679c414612651f5e40119161507120745f6a4a1c3c21761fd19f4466db39af50e0f184d7e63be6878638d8f32781c6d7f632c4aba4e941f1ff5097d5e5934f7a298ba44f06bdab37f79fa801ef78c8311091e256daf42b8641c752d4f1a8ccc4429dddc971592f01d8967987afa51af32f99fbb468903173dd89d5b7c65e64310db1f6168ac71d8ca418a06e5fb2a65da0ea1e42d53abf86fe9b1eb9756fbbd2ce2bea9692124c391254547132ed0f191ca7baf2454bebbc56065cd9590e947938fd12d4e73439a5e870523889bc7839291ccfa633aaea667a2f3b01b4ebf67aacc6f761aa687418f26c713789bbf59a55c303e1cd62904b5d05819edce9305a3dfcd594670b0ae6b6252d51b88a9f93b8ccf67896478d8ca573f539486013db9a3b1e8cc2f70c8e4c07263a477167519ff9f7d62fc6519df82db6eda5957077338aa70971a0e1102ffafc7338f4f71c080a08089dfcf895a307fcb6407997c81fd46e6f1b2d1f2fb68752458f07f5db7b603897e1f0c61478f5699160305c95ce2fa1af809850ea0258f94b62d3bca81e5fea9e835e27599ff7e8803c005353ccb97afe221013cdb30b50d1d6c79252921eef267fe4b58266277847e44dbd75e87de590a71036fce65f2d8ea75affab3db612362dd5a5ceaecc334e03c3e267a62bbf6914580767ba8c6a1af1bd9bc09cb21e4725dccb74c90f10697a36dc56adcd6d4fa3d58c70230ddcdaf895a86b4befbad9e76837bbfab05557436782c6e91c879594d97d1034b4bf45eb8eb288e87ac390eb08c843e55e758f0b69d9246b31f8b163dc67f92557c132edd2229e7459b8cafd30e0dd8397cde63fa65b4976cdd8545023f0b5d9b9cb00f3702f8acfd61d27473064b434a18221d5674151cd75217a98b3d1d9b598da98ca3eeded8038246fcfc67ca17321b552e1552b7e55e1446e3d987f26574b9fab418b94b419b19e907b4ece45faa6b4732541474e79721bca7f1e3924106f1e393afb85d9268f1566cf0803c34250587e00781cfa3957040b184229804bd4b49249fa1fc108be3087fcdb61254edaf32b9963f0da8283ca96bbdcb1065bdf1b31a4ec91591edb6340af20878e2c80b1f20851bbad545d03ce5b1c4c81c9eea0e5b2b1284eb95a98c6d226e26eb19951ec7ae5a532ae9d6cb3833bf3bb7cab8a2f4c6e67a558ddfa55a2d0f2496f2929d49605633b14b78f3e116abb056eb0cd331a1e6561a8d459cd1e8e7925b3c9f02edf5e421d3270d0acee66703f0e2bae0d1db0e8a8435443e210c3f1307e579539f3ba259ad69811d254b940c8c32368a21145725d14dc3e43aaf419bd5f93c569ac2"},
{"0000000000000000000000000000000000000000000000000000000000000007", "0122f69589efba97bd9073b0dbd55c0a2355df13142f9eb1f87f508d80d6985461666b17ab34fb39e4b305271f26c736ab25c2a2534abb5fc042bf1f3af8bf26d2c66ce5af1693ceb1c488df4b66a21ec83b6bcd02093f73a09fbb6b81cba47af15071deceb41cc3a92a756dce14d540c5d8e3931a96b1b465adee13b347064de7a36713d1154e00f22a1fb60be6acd3991cf60ba40a8396c778d2816334017ad2de5a5d63d7a8420131974094b04623faa8721292af6f6cb8c08a13ab210b1e1e8ba439034dca6350d86fdb2d39461a3bce095b7227e6a9c8a9ba37925e7e5cc3c52efa6a6cbd1ad86735cc9c6363b680956cbbc83e928bb17cdfa207d240435829a1f1ca66a6be49fc6f9f0952bca443197e034f8e57186d76dfe412aae8eedf3d79dc0b56163ba8f1b2e74059fdd402842529c8c8a4c53ef2aa228bcaf4af515da0f28d3791d8c6aff9f81ebd611e012ef6c93fcd6b26950183c18f4a4275aa74eeaf4f02e72ab5685c58d14b44057258ac7b3b91429cc0c51b829dbe529d63ddeea063061e32584d0401899ae31cc9b65c892f584d9615928e759f1ed53f210e14350217ff962d8e4bb7e122a220235df97cb6cede9f813a12ba109912706b0b0ee85e04f89bb2bbf0fbb7852631d42ef595c4378348244ed1cdef4eed805a75ad2fe62fb7e61c9d0d36dfa31a93f07671deab594a63016642b9dcf4cc1dbfa45045fa48dd62d2569ec272155c4d1f76d52c3b5d1791ff624650920dad3e70d7080b5d9e4e4afe44f268d58bea7e0d4a58ed3c608f092a3b3c690df3ff559fc0f821252941c7a6fe763f05f7d04f65930c45ea41543f40a75e55a6cad89ec4102f242534239c475961717cbffaf8a9f32bd8008d160ce18bbfa4ca636c50b24b4551d1e8a20dac21ae255aaecb1b11f64d856db3301042d35554080d3f8f016f60477fda27b30f8a80d327261a1197df9ab8e81f5373602f93c591d005d5dc36ef990e87c35c7c35098eab5d3194dae38474640578ab2f7dd38c1d48b80e9df41e17aa33cf8e2f76056269e1d6450658dfb903024e495a8fe42321d730d2b745059207649982260d253d3ccb6b8e29ac9af47f263a84821b1a7c6e2009d27dec586036a354d2680c22675816e7c31f16ca129b1c88427921d7f2f734513d3fae398c0e91f9950c261d1379232969ef2aeaf51d5da49efacabd3e24412d64b6e2e3c9e9f52175ec0b6d2d99e0e61d71221368ee8a7fe48bd79c06d79f267370e2ef7cd94b761998b25c5536caafd6bb34b0ade1d96341d15ff6470c9a78f157ac7ca57fd2c51c3bd50325adc312692218bce61c10df0175b39be6091e6d0fe232b97704aa0d59250a43c51394e12ca107efeb5da2390914e7c625ea8cb32030f2dd88d9b41214b0581d63691f111202af3f36a2ca986180bf86687dcefe762c0a58b1382a91be0c8ed1d7cb6a3247e29c6f703e77f53b8ac80c2887207b9d6aeb7cf4789b525228c743a37f9c6d1f9913866b098138f841fb1f865b5a1ee4dafca9410e4ade41fc968d2aebcfc1dc29bd22b173b3ad5ea52731355a438cecdc7020353de1b160de8467d4c3cb15c9c7f8594948ddacfe51f228eac7ad0d52dd1d6129e317759166d4e78a2c26344d70ed0a15899240ce02c784e229130532983f912435d837b05c5b8414af08fcf84c61a0252bf4dc11942c1ac7aa8a805ef86c4049ca21e49a7830fd73a57c5c2db48ad388bfa69f477c33d342d79cc1a744d8bd7b6e9b0a969d99d88c1a9eedd422b1462fd38de530a2711bf1dc5678615522e04aac0353a7ff5dd008ad465a5ed6a7a5d956472f7bfe6011d2ae017fd8e7a6c07f9e4aba929f061f44337733fe6baa23fadd866430b4e33275579ceae3"},
{"0000000000000000000000000000000000000000000000000000000000000023", "004f01973c4ff102b9dd97838d712a664024fc2b75195bd5e56346be8dbef5e7307377cc96a89bfa8e8f22c9aace5f0abeb5d692837fcab54f1634bf3482f84a6872c838611f3fa004868929b8893acbea596b10044f72f810da984fb24e17d5a9ee20463c4b373fe42638698cd4cc3a848305e5d77e3f7d363eacbdff350fa45a98200b4dcab0dc93fa5628587d6dec9bd636256f823a370b830dd28f95a714cbb8b9f16171fceb084818a9cb59caf5449942f698cfdbb6ff9497fd5121f615c470af9d3bee96c2d1a83680b51a86dc5348279ad252eae9eb75dffff47b4175fd99dd8adcbe3f3d6195a4d859f39ce64443fc8b3dbece79b4f6b601085301da69430b964f5419f373573672ecfb58383d2375fd8d8bc8e10e9cf644000243e1a1b253de730e1eb76d18cf9d610aeb8729b877dc4a26e9925e3fd83a599e35c4e7082bb2705493acd8b5fda491528aa30a471ca15ca2bb874a6f3184e143e1106bbfeeb9aa155692d0df193c94fb6d76f810c2b9dde86fd951a115eccdf3a00c6652ab095272f8d7277d7c097c890d1b8a2646a356c100c47372ef3cd1a77eaa07b751060d9da58f34097257ec5f4186e190fe825ff57f5ac82e9641d52694e6b4cbe295d3d65c40af39943af044298b936f4f5cdf517206b340169a3d350d3479500e2ad674dfb250bc5ed06074cd4847953299137a79e40f96f1a47575350fd428c2c719a354216e4910e5821b5a4d463698a67793c6a39b29cbfac0f3fd9cce7f12b5272737e9ebf9a2d9836916a0775cedc6959c381dff099dc2491e5b569aa3bdfc6391a50192b036e01cfcab87a68990a7a39b4467b7b2ef71247a1a0a24421ca70bdb5111297563666dadfc022e7651382d862c9e7ec6e26933b1c201a31c10f72cc9a9cc1f5e0aa2ec7e507b2a755b59a3db29227c4e974c30ba75c4006e6be6d772b9b7b29523f3b84240e598033179203cb9c67d4edcdaa5c09eb6d7a23ad832eafdba7c3601ed9dea93eaa76bf1e0602b8a833d8a4f7bbcbef90f3164ec9a06f5f8f96f1a1353f014439d2cfe67c604e963dcfc4deff3c0d9a340cd37402239481ff1d409e3aed92b1ba5e58831519158354706b0ba16db43192bd2a5d08dcba1c10be4e418c4838e7fa9759b204386fb2365e1d2c3adfe0621d43f50760bbcda5dfb12178d418fa7fb319ff7262b08fd3d02893837d2f73e4c5b848024cbd5e38256fea5c42e9e97fbd7c7621ebd594bb50e0a3da064c7f62e6ebe0f72a0dc3e9d315acd01a90e4dc9b78715c75a468bc673a6b9a8921473db2e40ea4ebde5fce2a1584e641660951a5ce8324cab4748d45c83c616e3dada6d1fd5d16cfd12f41af7ec2450e5418dd5f927f2ee61a5b6d2999e8bf631be81dd3160d2814ca41559c73e2fc664b63e8f1204c318919a91414db9db50f47eb110857f342c716c548dfcccf8284c2d6c3359df51dd3aee8a775c7424177bed8f95d9d8e1058ce3aefcc5f7dfa45bfdd3ae2d43443a10cbca37e811853863799ac5b210d4ef6c06ea1d3d96964904ff405369554be8a540a24dda84223eb1f6a2d048511ff6c4237ae8ad7124bdbb533d3fabb7eb83e7c1f1cb22a8ac4d4b500ef84bf9f81c5567d63dbce2f6099c4f65e813f09e35f059922be60890f2213012b04df81855e93bd93e01cf7d7aa7a419814d48f5a61d196c64f38c834a1ee1247132e93c21443911a6092428eb2b34c0fad96b6177b0f4e9b2490d0b715da273f96b98f73ef9d9c26b8d30ffd9d311165b422d453c6af16d8412a954720f538e5d33ee3188aff044a537c5619236da90605cae091199e3cf2320ef56a2371f53e947d340c871dbbdb90bd74f893e33e680bb94831bc6e97460e2b51819fd293d94f5"},
{"000000000000000000000000000000000000000000000000000000000000002f", "006096c727b210b9d1b9004b82b974adfb5df6c14e2a974c33260ab5a39f122791483dafc32bb95c6e2010b0c9177dae668be8462365c9e0546de581fa142f17e15c0811cafffd83bca7b759e5494e4cdd9432f302555b402184c88dfa55e15923e4a10612305471d812646ea3dd77fff5d8f5a387d2f16d3d3bafd634170ff7abef47da24d32ca16417e8b7c00278475ea4e642625f7451d9321f6b63aa09a7e821a28ec3dde6e301e05e57b1e0148784c3d32363993a117a12506b1c0eb01fa0126f59cfb633d353c61d2ce9a1b991221227db6a093351c6d5e6ed25ce8f6b95f9806f6de3d63a7b3ac299d44ef13ed0642eb12797f5b50fb51d4f0541dfc958f3482dbd8fd699f568d7eaa1175cae4754308bdc9bdd2d35b00bc6321633cd2ae081ba254311e261111189366d0744723f071cec38dc33d6136b55f545e71ee8c8b15af087adbdeb40f37b40bd8b920135331eacdcb465e054c0fb798efd1529374c108f15b87eaa38ae61fbc751d47208c7189a245a383d4632807dda88658e73da2535e743cebda9fa4079927637ea5e9704d435cd05103498f557d8416e8f9ae021052d289ea385caebcbf3b05e17bb9105603b7756c90d35a28a428bc57b9d8c221badeb27389be70a04870cf06939795082cfd267d0ecece5cc1e101a7ff63e24eab7cedfabfd8bba2492db05533e8d92cef3650d01d6e516f4cc4155b4c3f27f98c252a70aabb9784e126692242d928f9cb4cad3fffeb4604d43b83048d708981fbd3d8f9d0fe5d4445ddf3a7676dc5b9c6cc51efed4121953570dec81b84be3e1886b494bfb88c004d19d3d1ccab1ebaadbd1b436efa02736e2bac899270ca3653f8c10373177c4bcddad6b07275cfa3445056e3199e846522d5865a6417e6653e2a208bf74f32ec639b6ce57e02cce39b8fe2df7a9d6b2e85cf83302441ded5f4ad005eb7033a2815fc2712019b5f81629b2777ad68b83247f8c449b312926bf12687e380014f80731655a26f56f08a6d22a45a1a61c8cd8bf5f2df2cae8c7900ebfdda686279d69c6d5a35817d0c9097c1e73d8c2f61cfad213f88a55d8de2e1ab96bac0b35ad22e8d91289fccbd0d8cc9d91985ff458bd7918b97dc45814fa6f59fd96e76c775d09cebb52f25d1f9237c0af245205e928e9faf9565546e5fefadf2d037be71cc2935c610e8bd15649d70a30ac47a567d31998f46998d9804133f6549dc5ad847e874abe35b31699f4b096221cdb36a52437e56edb491faedcb49621f232b79f4c8ecbd487991a946b8c32b213dfbf380d738cb50b5da561e9f6a2ca547e3c6d5631b7a69e313ec6a21495dc014d74241b292a56c55b3c7e94b120098f9736a16c15baa3f35916f6c6f38492be565671db9bbc16a8e8f56429c8fb4eea372e66173c23c606e1bc9b1806d11523455360b5aabd2564fcf7a8c94bb71799465bf1c90ba817ea39f9f58dfae81a4b0a23fe31273d392907f36dc4410b3c26cdb191f5332033e7837933e24b0fb728f5d32bf2f2d2b8243f042d07b2fd6b13e6bd696815614603b5e1c20634b1e0360d53f322cba64e39797b314b2516872069d7b4cbc12b773d5e0396250dd32c96181742a2ced4dd78e9ba2fd2f3501f26a0f7ca48c99ad3e3d4a75f609f42db0e1f8cc4f15487a36ffb76ade862ceb201f33f47d1101d05765197c2b702a75497d066d449f3a8d7ba140e2e5f8f1de77fcb4bbe06c115cc382f0e173fabad37d21c75d950c7aaa307949db1beb70a2139955e2c1817a720e7b1d9f1b7e8b20b68a56fa48a7f5db066342564edfd5328c9fecea51358fe428a3031da466f23e5e698150cb41bcbbca4292854f86e70b79ab56c3d7774ec9a20e0af6ddc4818c8ca177a24eed16756"},
{"0000000000000000000000000000000000000000000000000000000000000001", "011a0a8d08494acd366931eb0eaf77099f5f331eeb12ab66a72263d49952a612562efd7c511652dba74c28778ce5f21cbd435ab922eb84fe96012e6d1a1fe97ce00710cb74d02bb4c417f77c5bf0967554b9415f020bf73137a41603ee3bc4a9535aa6e213b9b9497907ddadba43996d92cf87a418b83cc026e97abcff052eef33a85d634565a3a6b47294cefa831e6cdcd0d153eb7db22919890101f7967c4cc2450efa857ac6e002e316c36c97430583ca31032cfc9c261c739ce7520c61bc2db09196f34ee7731838324709570ff01c070f71bcbcb19a153b4be243856c51ad9581fa1acc171c4a6e9c5a908ae707959275eafe5f2e848cdc541e03f6aa1451183b9b5bd1c446d1dc75119f50b2f6060d7ec943b934af5bdfcd16f506f8ba5eb1be7ab74729ccf584439b7fcf7c016a0d616c50d6bf4cb8c44b335f4472671e2c37e021b4d6b332cf9a34811dff7801591c4e8fc60161656f54ccf658aa02df6edf25a943370e1f2fe41fc7ef5814cbbcfb98cdf7ed5d9dbf09ae97fb6b4b6986f7d341fe67e354dcf017ae76c91a30d2373e1cb0e6f540e2fb805e654559dc3707e310f085d64284b688531444f0a939660282e19fc6ca24f0369b7fb8e9e3fa9fe335c2e240c6eb729f9d7f255dd178d172bca3ebafe51ada2f029b5de4dd0bba526d4d77eade16b30b9a45b2c0c26236b279575cd601a1e7d7b7c8fd29b823630d72722c1683def9dcbf2e3ea2863fa02387c19723d171e9bec9c3733237350288cb46be8e8b4496dcb296535a08331ecb9bd38904c67c26ab19245747b4570d94c9f041e030f50acb03ca34cb0a81976151ecf119ffa5b63616fdbc987649c7fff494a0c367e4a384e165b0c01d8216f357c9304e233ec1d23e32cd00e5ec795a1252d776f825333507c7285c2abba3d654d592cdd0908e2633de62ca0266cdfcd751a004bcde10f2562a5611f376b5ce271dadf6fbad140725d57762aeb86da32cd97f8b882d078aea81de849bbacaded65e1d5bd7f2b21bb6a00a3657ef1463574c33209654fde478945e01f8ba3bb10586a4ce50da5bd16322016cb195a0f5e00d75167f10568d38bd0a83f590bf6110ef75f34deb90f54a4e24a5597209500f8c932cc4b4fce52ab360289bcf4056435b71a7b0b0b1c7e8f737fac3dd66b3e89921f103f171303a5d1305dc8da541423645576dc75b75f0079d5b4ca8cd25f3024c420cd2eb10f086aa7c6dea097057fb3ed7a26396b7a0b50e78f9a82de16af07610ce4a9e69f06515a3f96357f6fe7c0992bc12b8b806961feeea168425b37311076ac1afb8afb3f857f2171807408ed21784cdddb354c67c2bbdcbc0b3df373c2bed09bf55b7199bd306c80270e916461052578e4ef3debe89ecf6f1ba57a4fe0976c2bef8191f9e8f02cbcd59a996915939b9b0fe8c33fa7133307ffe79080bbb4e2e91a067726b658fb0f44b6d717730cfab0f2f4b7e9b896f97f205d529192e7f4e1423df04d410d4930f11d07f7cae367193a970c720f19b48b89910b1c53d8fa8971f6e866740a0d227c394727d0cc217ce15f0ed9300d1295ca478886f62cd42a7ef2a3e31ced2756f9890c11374c5c13c5961fd9a34cd913d39f8874a585f2e0b1a8cb539a135c75db45cb6e50c0ce8575ca24a397fd6e5b1871ac6e2207e88db664f120d1210d8c4fdb8c8f703c5b0328be2cc15faf35f20dbbd86d75dd531673db680bef2026ec43f9ece9b419a24e394719b61c4ff8502a5fc68f9444ceb2fa80dab20e792b5fa4dbb8fc2df10675e991c08f4bcdb348add1d5217c7cd5388e3cf1c248eae242df84396413e8c77db1e3a1305ed87ae50f54ab32d21fbdd44577b9bec0a6adad3eee7866a11bf5b525a80dafae0"},
{"0000000000000000000000000000000000000000000000000000000000000000", "00e60a09b0daded79b3d858c2657320e58333aa50a46a68d58b7204a95ba7154e20cafce3b0c14bca8e9026948d845ccdf8dec2f9612e338e13e9f2b7bc6b0697c058bbd66ada77cb517127e44ae3f5e84bc3f5a0b3c954d26570e0f7841a90fb3f0e4eed7421ff6e50f914d1cdba4855380c4b9593cdb297704657a76440f3eb55c095cde5520e8d58fba66596181474ca4c6543c3dfb579c9e07c59039211871aec70de01aa75b0139f26ca45ae0abb76fb24128d4f33e9ef93865c81dbdf2b8b0d0ab036e5d62d8d2693f397730d5b7520822ba70e1d3372512bd27a3b46df1be7a7116e49a1061688c1d4453c0f14152401230479d2ac42cab1501bb250a8f0e99ada39a211f8563aac607ad763e853216db65ea16270b53f3e45284e619d1272932f1d10ba1e0c99e9cf55159e651ee456bc23898492898231f04d6b200e08661241078496d637f031f0f1ceedb06d0f59676eaa109882b744348db7a922dbf594ad92b42fe601d65839bf2b11492b4fc8a72f5023b214b0cf3339685b155f992d59513abd51649e50cd4544025885a20c5e9d26db62e630da778d20956208b3cba0ee34989d313a346e981d18bfad9a7a466cc8c28a22c4cffb61431b739985fe634e23a558b20009f68ca2f3ec303aab6585dc5d7963fd074d9d6172e55fefc40205cf3bd936cf8a6c3b47db4c38051b26fee7d33108ed454aee43dfbdde723b432c008ccff257641eb269c7aa2b9240cafc12b46a98346320a4b7a759a9034b5ba1b57cf317ac4b2a7b606d1b60e5042fef8bc59075bbba4dc3183fb5867259b6aa55f1804f9c9d113dd6bfb1cac1f719cd541dbc02bb22cee5a52dee1306861956f955c1df4a1e51a56375a416a1b2c75221470f425079953b3382d023d0d29238ac962f9fe5120f24f95b7ce96173b7f14ab60f6c0d1690f3ba1e0016f947ac2815f224997e362df9f370cdf0e9c69af2e2c46192ccbfd93b2bfa76483d57dede5d6b015810aeef7d9ad6f39a5cc9985c3b3d0ac8dd85e133cad0f1578c0aa2f9cc7ae6244aa7770fee9ceb4721ef901c3184e265f0647f513009d302e898e1f883c0954075e926d7ec82d6a5ba5710f593bb97d048dbe51e80e1445a4dae51b61d9a2d147cabe8127437f3f3fe51a1b7438dfd0f035ea3e06f3dddcf2da6eb33ed9b70189ddebceee9bb37c178547606fd2e5d98ab3792946438f635e6f16e39c9759521266a46308a23857eb0f35ffecaab5b1bfbcc75422af39afdd801199c3443712468c162d955dbeacea4d1b570ecfa53a3e2206035d197b6f42d995147b16c55fcd9b0dfbe7b0144929e5297de8138a3f822835deb7e7ace5dfe333a5be0678f59c70e33f95ff9fb1b946b89fe902d67c77750d551619f69a00ced7be367a8b7d15ba662f1787f401b4f88b940d608f986952aac2c5b5fd6f6f96c43f3d322ed389716b03e403683e05ee06e333513bd9180adde39fd345232c9f9cb4ba34d928762fd43e56974395f2e8eb63e16d6fde15d37db47745d68fd88ab601ba9729b2898def6d83e10c374c83ae1b83b82cf40272b71664293f35d605b0cc44bd0bf1993ef005dd077567346b9660c0d156036ee4ac95f9215413f1b30bcc3c13a683b81cb9a8e28feaceba092148ebf1d90810019289f0c11bed39b95022d01de30091fd5c760d2bd68caf4f3c8c904504e8474aa807368ebc9ab80b7b5aaeaaeeed0fb352c1b2be349d9111a13c6604351327ecd29290258c4857f683c263ca94e4dcbbb7136c4af16149001ed61ad379b7a7aaf4f904717e312c39970da0962e51951d42d598cb30ffc47d5f774e1636d553b249fabf42fe4220f86086ad247efa9f002d7baa2af49d4d0bdd1e76d5fec29c67106bfb54f6"},
{"0000000000000000000000000000000000000000000000000000000000000000", "00e85247c083dda6f079877a46f5820a8f2eb641362b2989caeb9e63ff802906e7b9f19ae701113feb1f024225c44ad11ba355f7b7615a505dbe42deb4cc7b43521720ff2d212bf24cc587fbe93a8994e59db787017c6e75e9976d31aeb0d4b996d9a4e39aeb5f37f304caa8584c66f5d186d8e273bd18cd356f7817a38f03eba740958ba406d6fa314f22be117a4e9c576d73546d63627ae2baabbf90c91dd7555aeab6d9b9488202dc4f60d6d6fa3f1c5a22e072740ef23021df77221d72a386422054b737e6c62551751f41ff9d71d1281e5c41dc17d5bc36b59ee59119e0a625beefd100a42580a4bcb1576087739ec5f30c4e9a0eb73b3ecf18069559405eca6d087c72e0984a19630887f69da35a0db6bcae483c4ee3fb1176c9f4c224f60738fdbe5f0f72ca9f95109e2551032467b863246573f8f266b9197dbabc072324eb5e89e1d330fa3a0d19ce17d981012765a3e449e9d18d2fd0ba95291ed689cd1dce5204ae6c3ea70cd86f4b71e1b834b07a269ed21aa36b028950c65082c6c82b0f92700dfdd1ecadb4730dad036e1252e408dc4e9edb345e4668abc5f40e9180aa10ddce4a5cc7416f915ea1c8e031b78094d1fde415962d6f95c5b239ddedc75b339dfd787b515e9d6cb318a6377a33180848c801d22dbfb17ab2a678f83f393be3d4df84ac03cbfb7cbc32076313bba23f3d1d5901d4e73925807634927a523a05dbf6a20a339c275f09fd794ba148bf4b877e23ec53d7947aa8205b1b8703436f605943f9c1c1551860dff042666c355bc823088784551b88450a53ac124e7db84845357a0cc86103bcc8f4c65daefda4149121ea257b567acbfddab12d5a773d64aa7239af89a2f1185a244602bfd338aa24ca4208dcaa6139c711f6a588da1496005d31d19b40c06f0ef2a58261569fa68ea7e217021d0fff1e0202a09226a44550d25789d85abc5add375f397dc17727af17e408224c6fcca149d801758b26e2c338e9c517cb04b596c6758cc0a3c28d9fd8c3c1757338a03c327abc9d6ed6fd3de32a14fac06b8005d5cfd0fe9904aa0b1fe12d8c8fe8a5449bbc7cfbcb1247397fb906350cdf55a4b82360eae07b9f55b3892aab1ccf7e39f6cecf2dac2e4bbc66c77f9858cf2689e9fd8de36583f458f0a08d9fdaaf98cba6d9cbd6354ebd964103e157c7e627f189666ab1eb15a0c4868010dd985f183f2959aad4742d291e73e69561a59122842b4848049aaca3ddce13496658e0f1c4b6a9c0adbd58152336ff0d97f7d700aad2dcd9edb0df7086fa08192aa20d67691b374c04cbdeafa7208644c89a4600976208201307db21181e151717f328a52fa580de60e83e95140baad0462a93ef7ca662c06bfd933203b554ce8e3725b371cf11b3d33cc79523b0b5b5779eab9e816d04456fc232557b6f522474f467b5ff126c1b1ba98f0c8e13f2781db937ef4f31c5b63fcc62cb8dd7418c0fc06ed4adda39d131c782f19f602e46d66d7bcbfd447b3714b8343235d4afe537deeec0f961381629dc04aac1fdc2200b1b60705053955dc7643599fa8efd1e15fcdb53dd9ad1b008d5a0a2ae3902dd833efd101b79edb4ee14081364fb46ccf3e5c1ae678efdecf02029e67db95f625b845d2682a5571e332bca1b25cf0ab44e44b5cfe3c90ee175048f2d156270e2385c8aa828f6da8f2c5f7f6aa7bb2343f4b7b312711d0a4d391e077e8e969279022b38826a6255aedc261cb1f546bcb43c8c16e01b05a104ce9bf2e09e17acbd5bd50c6207249544aa3b44d259bb6c663ffeb12dfe8bfa206c8219badc5b8b684fb2cd0fa41096fffababfff1d135dcd96137092feca89f1e1e7d7df2d043e05be23804f796925113b62ada49098413dceaa64b62183"},
{"0000000000000000000000000000000000000000000000000000000000000004", "00b4d3e45fd4534b6ddcf4b787b87b118eb352c776018b895bbcd29420dd2e556bbecc22e16c385946cf0a624c72df66a1a1b2f5c55ff7570c156955f1e0270a67b42705067ae8a774e425d831146938fa2b3762029250f617621b59a0971781316b926df1d8104c84082822dedf59416ad008e674ae5ee3b5a0e2f8ac56232e538b622a553f962943858ad02bb903a7e83b812fd5d24a7e926b00c55c348d8678bd8a99569d8d7201aa147b021f1729b645f2a0c146648dc98dce4ce92bc587c2fda470e18458131906e50eceabd8772f5c08b9f6702c8c08c4c92ff533116c6c4611e59fe0211e61dec8c4d4692d011487f18b61f99ace0d1a366b10130ea1f9d026cf376914a42c297359ea38fcbddd10886b0af48989ca6846634fe3facae519db2ef6f2144c46e48e1d25a94b251432322dc9c9ab67f91acc39a89ae25612e6dfa145d4f854a8813a97c3b6fa02041d0773bb5919392bcdb4116241b1391b33b2586619f9691f53e5a997f3ba43e57c763cd5265a4d946109d3dcc419054872ad1b45c0bc71527dd0aaaecfa50d0f1f6530919c1e9b339118679f37ed00b275ef1e08c89465960a8c495f0890b4fd446c482f3a79798d226af30c6e4ac390febde51971b52c71673b32fe9b166f2b03e1d7333ddce7042e4cb7b6333c025b625f68b464d30c5af3d75b71b811f96dc632992d95d3ba0719e6ef4feb170d81096bbcad7f5a9b33a39ee5bb0f24e78aebd9e320f82bc1e503d109c5b0734ffaf408835670395a50e7663988cbc6e743723af99f98b931d2a5922fd48afdced489c723d6ee62f7427fdabd109b5c00aae6451970a2737b665cba092b650be6282f3346e7b9f4fb81d4a23b56b1ffc8a784919fff3f237bdcffa389be19e95cf4fb8861759698585e59ce35a7bfe9611abc19d5cae62c834dccaa447cb3adae00fe2780561299a4ddeae15c90231c1e5f1cd7dac519ec931dee65529df7ba52d5732f221d62398c0edc169de40cdac9c90079af34e3964a5a6ef2c15e8a9b1dc3213e41e3ba158306d4a5487aaa5581317b40a007baf9c9fc4bbc0799ee524b02950d48b4d19a514b470ff6d06e20c049da97966bc76e72d67768599ef726927433eed5b22f9c1dc2c92cacdd41ca405713142aa32f6dea9214517959f4e1fc41c99b56b15d00af023120760391fdad4e254273f2ab09525dfd7e4cd40e632c5b1e5dad494711f38bb15c9c4118eb9dfc8210a6e92d5c094b952e64b33373648e4dd49d1ae6451c1b4710754a74ec5885343ceec5ca8561c88d836c074b3e0aa8429909a8c920fa93543f9c5e622444861b84325e7a153d3f3aa37233236bca55351b165e3638d4bddf0d258679f840e64357bbdb9ae8473ee94d42b5e40366d6221957333c72fdfd94072b5cfa686b0264d7b495f90669e9d0026397b211611d6e700be423c77c4603ee115be71052bd0ce846914ac4dd31f40886bfd878955c8f76a931b51d37e27cea0ac910f209b841da8461baeb6df803481ba527f111ef92952e0280788ab3d2946f098f938bfc1f12a5635c7684f256f56f9f7660374119eec6c341595c327a3d798a9505f35e70c72cb88da03a2975ac6250e2db29575206200ebe764072bfd3cb2196f09dda07b2fc35bc4096059b29df8d9971a7a554f3518fc3345ee3f0fee9c6248d3e000cccb6913910e28aa8f03a8d80b8d6940b083b158560c696334af2f1a2aa348ef608c4f0c4542335d6e656cc1803cc66557dbd3acbb1ca81f62ac7089d4e30684cdfcf4960d094288ff1d03174a5c7141d588757bf1fc0a34e6f93f3e6f7febabb5717b8e20b3c9ac27bc9d721903b317c7772b366313dbdab9621c33601da77fa4deb5bd819266afd522bea542bf1"},
{"0000000000000000000000000000000000000000000000000000000000000014", "00312dad99cd5e1c8c62b13a4e0dd02d358019d54804958d390494860f4c356391717c36a521d0ac82af08811a1ab545d0439b9331128756df25f1b271b7c7370a474c9851a244ed620535b6e7cb05705f1c180a0a1d0486846ab9395689555f09c8c16b0b5fde1f5e1a9f817bdfd120b3b44c66c71a685ccf6d289e390410c755285e444ba475f34330857eda40f9d6912b1c17bc057b966db755e2f171f617a6bab4a0fbde0bc001c4c7c872863804bc7eb0c1adc75a755f59f8d05f71c5f3f0626ee9d1b4700a0879f11c573d0f1c8bd30d209f68f66f686984979490f6dc05a1af9a38e3795434f32374568fd2bd7b56bd40e035d686b119a58b19b848df69c9bfdf16e9d61fb8e71965c9b693a9332852d798ef8ecbc33a3916e3ba4d9ec2fc34df0cef28978a79114ec27be85383c42acec32151d3de419935003eb696d1e5a8dcb9d97637e447937dfb1c437401800e3e750159508b53a28e932645c0bfcaf83f7b10d3e6f44ae4d073e31822d4155bf55a2d569c8da813528245eed072c8b65cc2182253b85e3e13fa2a2b165f9aa681cf7e9db02ce1f722d38ed25f0fd42ff00982864b58c40dc0ade4d325a4c18b2917132b842110d7b8d9d29490cfc31195071e6a19f979aab5769f0bcc5f445ae6e9afbec281c04325296201c875d8d521b781efa2d4f32f5cc80325ac68213d3de14f20ee037dada40b9718fafd2e522a42320fb58d4f5d400c0b5474745e0fc5dbdf01e3936f2d7109c493b53c130d65623529717899fb43f0e45c2fe13107099b79e60fcb86c9e6d970831392b132c7e7a2666546747556078ba1614852313957dfc0840012e6d4d0842ed23a1217135d7fe4639566ae623acfbedff8f7294fb51126dea7e8b79be93cff1177cad3da668ea0545ddbb929de496a1bb2b113db6ca4f0ccfce6171dd7f969a00109ad04d9cc86873b385a86ca66bf3ae3eada64241641d8dfa69894ef20f689c941e29712cc88b79bf60112c7790358ee58cd90b12f6124f02a8ca8baa2a70d9d9a8a21dd2194f665b15d8ad29c55854192f07909085ad78ef19addf964e7d50bcbeaeaf6a6dffbde908d7524746a2495af12d94d84f31ee2dd63d9a07910c7df87668a9d8273f751fbf7b8ea496c809b003211043faa2b2cc3bb6c90d59e9f4dfba1c910717ab901dfa74f75485f647119f1ba74fc1c9678669c4d781bef355de2e22059a93bf1c2604848b77db23cdf430289f9c64c067c53e3f6d0aa79aae378785224c6f7170ec5e39f1e7107dc6425c0c3d1f6ad78b4b110bf0ca427e76cc32cc8b00d93129fabfff18104d2e4440d533f88aab9fe47d68373df72ec520f3ebf9e285513992dcccfcf8294dde182c53b7d35cd7a2a6ef7fe2e7e56ce2351a9b50d6214f499e16e85654c79f2aa040eab284fc4e07fd59416f7d7f97b1df17f1c5de00cdbd3670d11ca01aaa301b3e34f81687a8cd8078309e9b7e02e1d1b09bef63105b68c4bc1eb08b6a91920f7bfa2b55fa8876a9af28c6d5bf249f6ce749be904bd11b673c89e93454f35311aae135e7b72f417d004dbfaad6a928b9b2bd617a343e1e68a0c9a16ffb80c19c6cd810701265e93f442074503aa265cd8e7464c56667eba65053f28e015ff67e688998f4ebc2441068a6074d142b5663cfa3215c2aa8adcb44a08c13a327b91ac301e2503e44d96cc2ed3a199dfab9a9a623a289cbb80ec1e6f71a7c44f76c34c6622269e1ba5704cde0996690aa97b8cc76814d8c3cae4519912d207175c2b1a84b051e7aaa3a224212f2b05ef1d458918df6645bd8fb536f7d4953081d0e4bdb8647e10311d02772a79a16b6b1ac8655d39f8f94235db5aa1427d047c7a4c62ec69b1c79ce16c75210739129bcb42"},
{"0000000000000000000000000000000000000000000000000000000000000002", "004d8a744cd98656cf97a3c2dc6495915197d72f0b1dd822b385e4297d6e61344ad8cdddc115d70f7c131603a11165c84efce2a971b2782c6cca9a5ab58bec19bf92cb6f8fe051bd1c781264e2da9a9e58fea22108c6359763855e2ba211d17a6b4f5c9545717d1c650ac81b2ea92af9878b2062ffa91c06b777b7fcc2241843e9f705e23e89504802cf9545d329554a2c882e562133cab1999884e686b68a105a9e9bb0027fe6e600a96b5e35c7e929f57900c2fb398e40be0e2a119a3f241f8ef5117e7ef672d73fb1d116f28b321acefe04d6dce35952be03d5d47218a998eac9f29d761c840539743637116577745600d7d57111034d537accb21166058073633249b0d432cb0d4914496cad52279d1e9814b78799af6b515b948969645fb9675739000f260be93760d96e6954ba5271737345476af47de8ac2c7a2b870b5ecf87cd5513a64721db230756bacac5024099519f44f6af93ff72d70fbd6c81a288b8f62405e6c9ef88cbf513a70920d012f26c760e41d350f10df6a20e07059d91657542e980f154a619545c8ce7450ad73e89961177764c375637ceb587103f9f3cc9053ad06c17cb01a1efd660bbcbf345804e119af64a11dff1017e092f6a66f677b33949c0b218973f3d1724b914acfd123c215a1f139451fc80116c44f62eca76ca25a5d85ff3bbd6fb19fc006f2cef40aefd9db50dca532378497555e27f214fb510c322f3b657d4014f965c4360634ec173c3a913854a4d43008c1de83f6ed054b2dc5eafa75e82f6ff835af59a20ea97a7118068d69b4723e885970b68f4705df1475de57ec5ed1639a691ed128616cb8f2516d549dbfe98843720c91dfd474b36d2608bb0cb93b33ade837982544f13b2175ff1a1cd5d8e071fff24f0f9c238fde3b619b81c1bbf31f0766a28bff542830cca9e260248fe9349c60165411ed2b204c9f604818995fb426d84ca73b1393cc323e49dde91a18b30657c976ae622188eb5693816174afad40ecd9b69d154305263bd1980c8ec11a93ef6fc7e8e143015d634b5be01eeef1368897f3e8212b2b6158c3b64abe03613a4c54ffdb4fbc3ca40f738e7bc94f814eb70f76583c663e79e55c9309019bd2d389fb8a1d99ce4fdcbc3058fe6fe1a96e5993f0663bac7cfb099e76924c496a6dfedb0260d4fb739e4020315b8669759930b37c1051e1e86194a9ab6c52345c8cc151fb1c805c62c15202eba4b2d57a794881403b54cb16ddf70973e41b61758ff04d1c67b18ffda05cffe86a689aeb8a5b840a2d2abb4c0c25e54f286040cd5ac22474bb2dba07342756c37e4e12d98d2d9110279453ad11762a34e51f904129d1cebb7569bee0b3f17e3a8e266f3369d197adafe9c8a928fbf1a3c30ee5d1bc5d6a2a3d34df8ca33d7ec2a95aa9c64c60397063dd3de1cef7460962c8e5cf1618bc4d23198384699d8e411dedd194b84abad6b9a0b4cd1bdc66c0721a1b99dd118fee67e2270a04e79e13a94750771483dbe9671121798d823bb70fbed6d6ef5ca9d272f0a8333dd5db7f221f0bac12a36dc81a44a9f9aecc10ad3891687c96b853f4175959dae7ba6db7b96edda1e970bc1deee0cd3fc4d120fee54d262f89618973b387a754809d8cfd75a61f41128c2413345969e19620ed188f3910ba51f9823e23fca7700189835371a8e32e96b9dc2ec336d63f2c50927bad752b2469fb2f1177429a5fc4d8dab04748483912b2c2d252b0953ed32d78bdd40e5a863a55c973260742bf69ab0bb44930f32efd0d592b9dd866012d705a32ecd27dcd34c753eedc2ee2a22fb9d8bf725c4c9527eb20cc4148a6d17d25e35b18dc259c6cc783abf5f5c42d25edfca7d1f42a28814db7cd2f5ded48caea759117add16225b"},
{"0000000000000000000000000000000000000000000000000000000000000025", "0027319d33403e08c63db54ab050c0062b07b971951e2aeda6764d93fbb980e42c4c462f4d5a495ef80b04c79f74c8369c3fd91478677353188663877d7c49108063ccc515873ad336216a947347f0b20ad2c31f29e8f2104964cc433da6b34b96455d1ea947beea0537a38ee14e5f4eedd3ad37105eef4dc639805345d72c2b637415aa226dc6520323a0c4b5f160631406532dfe3287c19b127b8394a4b5862ca945e8ea56961704c0dae6c1de326d990122565f727cf89bda51dfff0685fb2db9543eeaf10f13f5e4d923e9d85e599a7c218d35b172e2b7ed207cd2b01dab388707f7da3bf3476be3640a9ac94fd2fb257b49c9aac208587dc7fe0edb9534d917d27efbcb55543345b546115ed31d433a0843be9be40ec9c13294654c768ba58a704e7f2e1c283b57c9e42175aecbb6032d5f92bdddc551260921aa2ce62b93119c9a947413deb09303329bddb614062d2ec1f10bcd39d477921b22ec939e7b2c9b59f958618457802f61e3ea7bba0e1c62eec31b741e94ea165ed666cfcae4f27fa9d410d54cf77d46b8cf0618179dc63e6ead1e7d7fa8facde8d6e3cb36aefe586706cc3e204fc666a0ef26a2d19e298bed14c8c8fd1e5650c6b90bdc55b77349896da96eedcadd9d5905d11cc092a7df135870c8d0c30b61bd04396af811ef611dc7349c5d66e323ea2573f808d171de43b6bce22907327f46cf8a9aa5175e33ac29376681cbf35214c63b51ce17b190e787fd74884856f36c1e60fe5f28930a1cb799820a09c11bfd33184bacac8a90ee760fc7134ac5044767c93751ef0406df5de772607c9914e31697ca06fe392e39fbce4c6177ef52c36a325e98856f3b36d230b00031a2a61964f256f21ec8f67987f519bf7398c54b2d92cb2ef43957f81d5a0b1fd913af19d86d47f1178e5310c2e76b7eff849b7772bbbca1012651fb46ac1117b2ffb482a15771df8f67fdb6c52052fc6bfd92cedaecb004da00657795b73c9e132301fbee6920eb25f99927f0ef1a3b42169e771b27643e09b492685d83239ec3b3f92ce0dc611afdbb1212081b7e61a84f2f8510f030cf5f75bb4466da7b537f2a397418f554f35b2a1c04e5f4bff55ec50638d3b10aca9517d41a6f9ddddec658725c2ea6376c9adebc4575623fbda0378d50aca4f4e04d0371e9d7119b95103b7ad01c0f5d7f3998725e7afe36d959e77d9cb3319cf54a18ec4315971eb40a1b3f81b253e837601016235193d0273707428d416ba51f2f1d6f46b6f7875518153325a4038977a2ba931fdb50774856fa6e5a120bd2d79fcc0e571300e6a7043adf89d0327c6a631df5254ef027743fd521f7353cc581bded4cd29ba92bea32050a5749cd503c431f97a3280199ffda14f33f91eef206de879792be081aba684a5e4cc2991208039d298085a593db344dd351f6f07996745bb56d66462e7f354f9c68439b5fb79453d542e1fa1b56e27605e09de43d55f39542065160c3e95cc21fb6dcf4960ede7b45572e3f3d73bb7185140cabd0a6b5300d1206dcfc4c1f84809bcc4a73e00b3965a58a6c4eeb361757d1cff3952ae76d33032c025935125790562d570f4a2d2e52209b6f864691a08bff02e0c7069bedbb4dca57060dd43d8740de07f2dad6090a849eb94c9b05b04cda950377881c38e5154fb7f5b32e1cfc5836186b9c571217b607f41f34d95de62e016dbc6e48fd098445f588d74783475a02fa681e1291ecc3573f47226615aa7752146f0502624af6c8fdbb3c9e5f91410b6a17cf90ea797fcc170762d37c67e2d5e55c897f16f06bedb51064028c9f8235e09e483ab4321cc3a013a4f784c9207f1f7ec3814614439b24638c15169246c8fa938fa84bff5d628705f5fd5fbe29d9fa1547"},
{"0000000000000000000000000000000000000000000000000000000000000004", "0005cb49890fbbe1ed60872c58f31241d0197d915d36c3fcee36ce5936fe3c495593fe6157294efbb2330ad15a4a30041898f8f8311a7bab44e4adf259854d2b81cd035d97f65127526425c94bb10d6051d8e67c17e578e1f956e16ff1af6333a9d020474fea3e70482e024cf5b350a97b1097b371d3616391d49c75fd3d1db75ddbfad85308ebd1334600ec3cd37937fc4f6d2d52feff5e0e73fe756f2548be3793a1f2acd2477708fc2c5fbe129b14e02024afea5162017961b711ad31aff4b64e525b73921703ec302cec99ae1bfefa74131f6bbf51c99da52d7fa4d282b145c2b7897f8f661af998ecfe222005882f827a4b1a166ab013be084e09fcb705f50ab19922e4674cd070d6825e3ed37a4a1cda93e4b713208cf2cc044aa362e102bd8db9586819e35ac93348e06d6db689742174f53a81961c3003921347ab7be5a4013fe53b3e7efb4d7312e65befb7007b362dc0441d6256eb4012b4ba5f30a755777d431aec1583466277d92ed8e4a5a8bd01274b79fb437910fe81a7e8d07c02976fc8d9436f6d125c78355d201d8e0ef26dd44a13f465e41262f60389f58d76b404124d0eecbe09a59ce24a12d97026e984be9132ca9e3dafdf459f5892854387f6ba23598c62b24dfb43b812d118eb75227cb5fcb7c2334fdef36d23ac2b907e1cf18c92cb87ee0858bf65b342daece21e2d1b6c7901b756f29b83849c6d252186c1fc5824805cb1a4ec0539205e1f1705fd0f1ca3cb72b3f92a39aaf87d0d08a2b494e1cfa6d1226f856399d7060a80ddfce7f43bb3b2f32654e09949e90500bf64893589579e11ac063b5629fe59edfd4ff103f0727f84224e49f514e81c669497f4189af9719d3231f3b8e37a2c51d9f0621fb11cc7ea52e3f0d4b035070f318a6dc768fdb4623cd62476de96439ed38834bf3075ecfb44621f38c200c7c6b4f70c436ca208d2ce816e7dc710551fd681035f205478de7afd46b183859d29cc221583bb7b5413848c8149e3dab13a0c54306c356489ac577149282e9b3b7cf417ca54c1d574e10f5327b6785f5d05cd088902cfd7162c2187b5f4a5d36391ee0aacfa805d27173ac325a4943db540e442d96c14920313dd41d2134fc5131355b303f6de852efa7c1d617a77987edf2130daef934da0994b6b6657053ebb62eb4ede769801b8232cc78952c3c73353820566ed32db1016f37a3f4fff0e64d0a7ccab98449ac1c20fc1574f5f1faf10243be3ed0d4c78893f73d9004dfd9dd9cbfa192e10fdff37d492abd3001e26b08fbed6ce81425cb34d02fec35a1f9131637b15d1dcc6f5dfc28d07168d9c431695dbf934fa45f9dd277f425534070b257cd0260545acc333b5d779fe13a098f649414cb3c0a8f78a5677e4346b2668c3b588f87a947969822497f34f9300d523e4b4c9301fa0c8b7df825788db8b60de94f149c94e536bf7724deb14b74984ef6632e4cd997b420dae69ffed044793dd91eb570076688393ff3d87f86c3c3f70cd9bce09371908355ff84f32e52dbbb8bd0d4ec96000a40cbb5314d59f3cadf842de3d5dc21314898dce76e40b1b55b1f44747f867b137cb71a39c1ba15e7a3f74af47fb6962e65f4c1700f9b1ca5cd82c05d3d511e3dd55a6ed46e6e6fb1d1e065719eed1023c401a8958b40d374820e4c823eeb9af98bee04a24c2bc96aead2d0dfb51534ba45e97aeafe09fdedb0679e5e55cc957f3f3d7f479206de77d4b0eeaf2b23f7c82343f23ba876e863564dee452d1696eaf4a6507218c64d84342f132b791055e913970bd4c6ad22a368c0f8d9b936a17e8fd757e82c09e818dc0d4974c0aba573d8e8ea4a4914e027491d0c6e0f9d26ca6610e5fa24d072badbdc75312399da890090cc1f47446"},
{"000000000000000000000000000000000000000000000000000000000000002d", "0079283d17c2603c55e540feb3fa41b94d64589c5901b69e428e54993bff01e0712e7b4ddd5a778fd98b00ce35210c0e69b56172506713c5ec507f51d3bf390191750d1522112590a260253b879be5712872e9380ce782bc5512e64d05f25423af49c751aa1916ec68198faa507f9bfecfb06c12c4e9a08e8d8c01f7c51c1df9698d5271309de07aa1f6707c7341fff9fa09652a153ce2e5b1c9199c6813304bc16844f00d90531400ea7ce7613377cbd2dd238560d1c7018926dc278e11fab1423e98e7b92dba524cb5e7ecd2646518f3c314f7ec23fd0e9f4525723580d7415de5afd9f8afa73615a658388e03f6a619845d974d1b353d888bf77e027f885017d30365c078e09fed11f999372c796c1316a99af4bba29f1bceb96cffbee81f2b46a9bdbf2f2ff7c6c98e2293b7748fe383246b658cf67d7060793dd206a4fe91bd4b1c8a48d30e48269a597dbbef150439d9c69f4780be6c5d2cb7466f27af4ba5da798b188cf32f686ecd81a907e8844566698232c9bdfd2304ac5d231eda4a68fdeff3bfad3d39419cfb9a059832bb2a00e7108d6991cb36e5cfdc9369eb7579d72604bb284e7143d5007243f38dccf99fab29ac1e767c1078caa048074e123f95fa7b4ef1de06ba4a5c81c8067a61c613aa83d1f298c454a5bf84f24c40bd0ff406a04baad15b8b8ddee805e0a7b0433b68eb5eca3f0a35a5eff9528523f679182aa5513e9f6658df6411209793cb309a0a2d33a0443ec128d779543c9ababf1728473f2e1227b56364523bcf74d52e65e4be1f7855b5b5646c597d5d540d955fe67b7379a39d7fe6b010d952496990a268c46fe32b72757d50d2c166bb4c176599bb526bf6b9a592a5ac57d4edb57ecf1430ce14ed354ddfce3ddeb6ef91acf5c192c17870dbe2141d243c4b0d4a215b043602211030cbe8a2acdb2c05009d28a21e1797edfa45b2a63fd25eed657036cfef56b7ff01371da8a56ce0d9599969a95adf433dc2443e8bace91c54f8d1ec58d547f4f611f6c6e41f149a467c243067e3567b3e5b758b6ddc8097ef941fe489019336647d54e87fdf45d490dbed6119ee1f1b80412c828e383cb36d51a137838ceea3b888f5cc56fa4212c2c514d65f4c09d244e3ea84c5254aa21cbe64b920a68c0c38e1e0e77e9fd2e7c86e0e08e84688a129030bbb3970c8f6ed4d4860fd9ad4f92542aad12e23071a074cdde459357c03534302dda1ef3fc87e38090c0d61f823e98f2bd99c5570707817d5cba7ffa7ab11397e955e5f13e12a32441ba47a64166daf56ae5912770975444d3a39137ea35d1e36353238443e41ea1ab56f20fc07b71147eca273357b2bc50046dd8d7016418f1ec306c3be97668236d596d18d4fc70e351040fe9c828a6ffae9b608b622f26df589afa576fa480216a86f0682dc451e4712cb994ca6cf074c1a87130bf8caf65f4ccafea49b70dd5bcdf0a4554670f3b014dc5d90b05b8c1ded9955bff2efaca3879e5f9cd74a75c76413aaba61d797c57044af0352c8d8f9d5a103be323afa53d875a8ad03a0094a8d8f85ed1d4a6505bb472ac8cf7252f609f09eec7262e3a7abffae0905ac7afb3f8881b1b00a352edd3272116ae6ee2060266e99545a938f3cdf45b47ce06c3f755d37cc912c03c100225f362ee3f15b817c11128d1aa209bd51830bd0fd69b7a4f7ab7d57b37f9ae4d8fa344196f1cd249856dfa24f7e23bf14fa83ac54322efb2bfdb2ee2ce466b12c52107afb1162ee65ccf22711b5fc793506f8e7df08666f67bd83c3d4703eb682249b7a41630ffdaf0e04dc2053f298a3269ecdd3ad563a95343f102c8260005646f6b4499372c83e6e19e539db870f143d30ce549b59e567d466f1efde59625eb51a5b88"},
{"0000000000000000000000000000000000000000000000000000000000000076", "000be8f3069e2d41840af4ad792af3ad9b316d18f429af355677e4cae5e224134bbf2eee21c2c331cdc10347b24c4af87f2bd477109e8e57272d5985b43c621feaa6af16ea2c31a7faf36874d32185bb91fe0aaa0e450eb4b1ccba1e7a97d106e743bcf5695b903e7d426c76ae05e6522d7052068973ee5a2dfdcc1507c23881fdf5759043ff8992672dc26ea95e3aebdfbe473ad4cf0e0265bc4d6b7a56bb2958d71ae92b588fe003e0472aa762d977df0c62b39d51819cb6788a316816f54bc6e998c03142b24262d0eef4d946e68b9afc0e12fd564f18c0dcc71ac3fa3120d91e284ad337285fa7cb530eb570aff3fbf932fdfff0d277d39ca5ef0d426aab3649117d9a58d31c35f62944f20afa428a194e748cecd1e4e6fd52f4d90a63f4214f62bc8d53159b294f2948c53c941d87b7926c38129686180a412e5b74678694ffeda791f7e21fda9b637982bc405f02a56c2eb91b5b3b566c31acebbca57dec4259e6232ee296fb3e4f098786d658302ff26eae10c71554b00b2246161450f5d187261376e2b1b19dab5236ed6d0e27249a62315145b093b0ebcc993e044f07ae291004585d90a75e46fb4598f49aa76ee252277999ceea0fadfe35760e4121c62c2785c67e008a3e74f220c80bcf21ea5b08908d709aa2080516187a4723f3dc042502834dd89f8139a45a04e0365226699a37bdf495059f92c769722f77c94242484f14bc96c0aebb9a660991cee144daba431c3b553622cf2056e586f80c4d0ed3fdd1e1b1d991e74d12ed53d773ee18c5fbcfe1340d44b58019e2356112859958346c260ead90955d05c8a2e79f4272a66a2ba2577e3f889d41913baf260b2f65fcb4d70bc8ced173180938243af1f39c4a1914d8b2221abe36cdf7f431c90c51dcc8c78751c5161ffc9d4fa663927fb24205a40fcb471d7325af6dc2002b46c3f74a4ed931d360f1acdf1756daacd7661f1bb809889ba6e6e3c3ec22700f1f65658f7492e50410a7762247a351cdaa4962680aeff6bceb67ab6ec6113a2f1c5a0ecbbb0066a7bca65c63b2a0277faeff069949ef496cc4e3ef5ae13c33af7c95aab3f4e58e4c898533fc1fa64dcb86c97ac75982bf5f3b9d8d8329c37c9ebd4b9835e708690eb36fc10e614a39384738a59f5cba928edba032b3f68e562429b2ca1b646e04df77be0909c2fb3de1a11093c427c169c076da00222184e01e4f7f48ef2dc3c668ab34bad5f27a64a408052a85c15b91536a220208ac5cab01163b6dc2662afc5663caf48ab7be83c2ee3f4d01c51fda36c19c1c35da4c3388e2a728c4d23d7e7531e3e4faffc53a40e8679b5497fc411287d42ee355b75a15db31bcf72396156c68b3d115d701180fc1e3a3fa5a7ddf95b44082dcf8ec26dc1d99a2251e7b7c2f168dff9bf4f40140db799dc152075a7b340d9b4b879126803f6f65084d17b4c32c87a9e60200b52230e91118c371ac4f22ce5f2b53628f5d704536f9a350b29ae88258f3f131565bbf109e43815c2126383838d9d6134f1e1bd602e8b678b5ab508fb741809fe7cac6c88b7ac4eed0117b867613c825a8acddc1f7176765ccb1848c02191c286ba567166fc57086e2d360b92eaa0a893b89812ee9ef58c4abf841c2bfd3c8dce0a3ca41a91c0d9d0536d45e2742d395be42f0d6e890928e42d0fd27dc084fba52388af6d9de6ce45816bc998e44ab589aae063c3b9ca442012186cde20abfca9ae536effeaafd192427d5638d3cfef1fbf2b455acb91d48fb768e9a06c484d208a9fa6756e385a917d814ad8e2e7599d42c53d3beac1031fd957f7373017556a60f24f3ac4806ea5a3ce5d4718b05b7454b524ec97aef1839d39e0e0a07c96b9d0023ed342133abe0686120a35d0a1a"},
{"0000000000000000000000000000000000000000000000000000000000000002", "0014b7063799854fb8a070b8ab2921ee9d5cfd845610453b2c681a443b7c8222afe24c960f25ff5a834107187da435d1b17f1976f18867d74c629cc81b9c143476adec85aaeea1cf7746c5d4452e0b001c5b495b00a3c007124af6472d1706d6467f7005f3affcd9de4cbfa72bbb56287ccdbb45b1bfdd4b921dca1d25a70f61da071fc5a7bcc48187a7487ad0c645e79887d41524d6f505b021abf601b2452cbd4a38cbbd48e6140083843fb7c9643ba7a5233d667b0aa95029718c042a692b770f6e6ffdd52555f97b704d3f054ebe1cf21306fc016e8fdb4b7a77f7d7e053c5aa858bdca429286aefa65e288955b7fd456091c4a2f204a0ba2c7e021870e50fddeee713f9c1c002fa9584afd02876e907d2d2ca5d635a056b4f108b57416d1502def186c40ea86a9f21210e81c47993b06668a1ff482b9be19b1101b6c3e10ec7ea94f6a4648468f0059832cead50004ce3575005cdc86e9e52e0934ca055e3c87dcb7f2e1e749fba91102d1fae252414f4de76042fb8bb4213441652a3cdd37acb2f92a0ea361ee8da2f9227351f03ad92a5b1b2958f95f5b114597472c0da1cb325043da101088f376deb5d32d407420cf9ad02b385833f1ce384006e3b2df0a9664ce6e485e7143f7cf3f40834b687eec385aff1b243d8d33485567e55bcc24b4b3ede9e7c30262392fb761151b7ca4e6bc19e17c302582bcdfd1573b1ff82d3289945221cedf6cb042e2501563db625000979ebf7511df7616a1e823932590587c6db394a7a5706d752f6db6e0944f738b10b322cad0ac02e50b476d0855741d9d2e12644aff780c504115bccc07a9d55d9c0d1c23b299639fad516f9fd2322ab81599c7f95ee2f691db6fc7e1738203ac56a052ecd19d7a9b647e8b8229595ec4606df711cba8907b54a863669b9c952ac84dbb2f266de83301c647902f08dfa2b0d8e777190d5f015ed98368f8e181ab407d7d16e5652243ded8dd2e23d708b6d43b7501d2409151a368197c798d3abb47d96bf4119fac1b3fdd775475cd333667c8dbd04cb207b6ecadfa69b9d631d06643444fc4e9d089844e44c5125e04d2973d5a5271c7fde453fd02cefe15f14364141c0416e08ce9a0d0a8a09ef410e3e0ebfada580d76270028cf4177ce3170a2f55ec61eae35e19e61f276524cad3bebc363903965ace871b4f1b508e33bc2cb01c75cf2754abcd0da88e17adb0bd9fea4b647ac87eb3826f6b38c8011c98f7aa70d9d94d123bb2b45f29b4b55efb7ce23f2ec47d4473af6ee7ee28e52d1c3400c623ed1c073016aff96e8307ca3753192375b2d262a65cf8bb532c4a164b7cecdef1a542556539ad645aa2a2f7bcc6f519baeb84818d13f4ab4383ee53337d47ceb27f2cb449a4166bf1e4b8c3b740068dadd13161d8326ed9f50409073fd891403af49a3087b004c98998e21ddc9122d991de070bcbb9f33042e503f3c8c8ea5f278f0f153b357a821842bf62ef329fac24922d9bd0922e842b08dbe58899092bf49f138939f04afa8ec199a1d5120bba186f54d221452414f06af903aea37fbf0a2e5b2ee323096e2407e20669ee4fee91f2ee4b9dbc551e3252c770506964afee84c74e6b845de66e3851852d63fcf49bd7c24d819a83fcf365482f8ec41c959a0d73bcbf4252f90c98c112b2eb4c0641f0021101fd120ec72969a0a63582e454b61470e919df059509b92f71c6e3290ddf26f8f7c68fc9bc33e6135e354a4e30ad2190f111c709c04d2707886fc7ef471c1dd9ef10ffcd20ed8c351f614a02dacbcff7f7431eda65f43cae22c1fab2a2e3d458053b0243a909bb56b0126e2064dfaea0a17b194d1c62292b1ac294b71670c84345f963805061687f8700a48004cd0385dcfe51409e"},
{"000000000000000000000000000000000000000000000000000000000000000d", "001b30abcb837a1ec9e513cf6347dcb1de621eadbc162046dab8d72d25a74d148ddafc4a99a276b346380a74b0c72fd6a43fd56d163d7a6e3c2998a0f7a5152b055e1aad13e4eff8b6c5a8d4637cae54ce792f4e03173f7ccba5e6777f129548b3ff3755557b1ddacb3e09d7b549130021ab7263f13bbf90ef53285da548052023ec4bc3aebefb9e733de71bb0d1adce90fdd50849c8cb6f55eb2b6e81e29a5ead2c1d91dd15ec8e005cbac67c21affb2b91e0ea71e59e5e46ca53217a0e78db591310703f080ea726f7ed466637e0127e781f3a23cc8a67d1ebdb90131dd2ca766e76f215960175be87f113e22577ee3db7dbc748ba6a86ec1e31671f358628e291baa4ef502684d947eb92413914c8662e773b9b8f66c591c477b416b8a5c5a14b3c4b2cac2e221dbfe64f0c67a18ba97fd374393f44e61d99a14b9156c5626a8b456312e7cfd5c5463b65d37f39a5018cb353a5cc6cc5e5cd83311acfeeb5ec0c19a02e0fbeb8faa1a7ff375f42610e0fc989a557293d68061458e318f28c9ae95a6db7365f700aca89c1bf72622b21b444f558acd3244585abddebac21c53c50cf7f02bebe2be5d4c140ea03e6abef6f22bdb485182de4355d1279cb94438902df6853d65e10ae9c49dc7d2d1d15c152def826a3eb91f79d22f7439e4bb43f67424993ebbda26a8fc58144f556b4482b25d8f8bdd811027713cb8cc691f18c4462db66ef39f984f94f86db0b9a4725d0139c616eefc42895e2954d9d5c2de5f202aebf36e9ce636f274ce327b7e67e7f038b5826e1056f58af8edd4c779e6a24b1f9d2f9de15c11e9eb902c33ab3c809f5e470e63579cab87d1d7b9c4da16e301b7acbb3589f5cecc0895814ee80a2d80b1c02fc087f7fae6730ec41b57dc4aa4c71eaa53b2e735e3418183476b09b37ff8729a5c1d7402dca8d96daeedc00649f2fcbb207d1e97d224dbdbacfec970cfab2120a88a79c990579b7607712ad05a8444674a3d775b70248a6fc3262f269fbc547773d4fb9c74d24bfc54e3847f5e2df5bf0bf076389d5b0d7112f307dfe1a8e0e160d99a305ba7a7125a2fb4f78cc72640f186ced0ffd4c494b143b86b82894abe5393c8562d64dacd318a2c1464bdfa797dd4215395331a316db7e5a4e5d1ffa72b60952da1ebde6422448227d5dd744b620a701e6e974ace344d38a489579a3e09281651bd64da532da4eb018d4ee28f560f667b3d0817a728d741fa90cf1d992a08fc1c7c9b8e610194e174a862c547b201d83f70977081e3050a5c558032e6d8b88443c7f390304d3d27a0b2461fd8c11f743d5a26e03903854ff06b0364087906d6e938ce4dcb93437016aefb8f4fb04c44bcb4e977f6156d00385b93d48c9e057eff9a41cc678fb03882b897a6f321d213234e60041b0b43f0092dd7df978e039dd63e1ad6a50fc816d0e3639b6054e3cd0b8155cd4ff0b32f546188f2e9c6256341701a045180f6b0abf5e7db87ba9ff9c8a61f21865ac0f69f6341f5f5c756d5a067a03edecdf4d9f9ed483080e79d84d42a39359c100f892b17d186c5f89995b0b7894f6c161045d2798f6ebf1e744e6fc9e9cadc71471a3a9993761c9d0af8271a93c6e2a715955a3d623d03e6cb0a9e40bf337924e63161df703ffbb1b8b0284ed74a1c7e55a77ef51d584229ceecb747a929d32ca8673e514730dd1cca3572f9e6efe6341bf46fe1e2597c10c521b718d46f2b4811b7a20e9492b8741519e2f748970a1b5f40b06f395f31c5a116357a8781e40863a066ade0dfabd191064f47cbef0d07947d92360fee6c9ed41e9d401b9597e7d3c3ae0cf9dc4c352e6a7a8c92575338962989cc2f727b29f41352f0675c2ded18fe05c134cdfc8707063f10f246cbb70cb"},
{"000000000000000000000000000000000000000000000000000000000000000b", "006b446880e0536bf7282041cfadc1f9f7c8b593670178892734551c4bc526549a90e45d7e8437f5bc871a58ba1f9ef95953d9ab929b024aa6b5e7e4b2da2061843c81c99ab4171f4d7b0893765dd787851e31530121274cc34eecd59ab56593b4e27cf9ccded9cd5705de9064c756c46949010072a0d40b45f45099b024244e4da3bc6c718b98a373abe258658a83331693ecaf2a66ede9704995c7c17cfba56969c3b89b5f5ed3022ce963a868204f7751117663732a19b5c3db43b740e627433a59d8cd684dea348f60701ffe88bffbd907a9f6626c4ab604663e47cce56eaab672937b77aa270bab062fdcc87b4cf413ae5ba40f430e787897110f6b7fd9c976801fd29252bb0670fb655e16b8f57c1124ed7636c98a0f11d1d3d813a8e835dbb5de9b201f3f870317c7eda77a1c2679a64d746dcbe73dfcc0305ce27cd51876ebc01ca51425336ba1b01c2df25a0160901ff01db14f47dab6890ec16072cba8fac369078c13a1ef4385b14dcfd231f6f817d7a9d6dee1311b755b77be9e1d7da78454518e6f9352a2d07a9713561a1ad95a3a1febdd4786c27a4422f628ce938b9a05a2e9226fa75ef16ea07272eb950ce16434781a3a0684dcf784e8e8d5c476287b6ec7c1cecb07b9e9e106f2360fd553ed03c5544494d06a73aaf4e39fb24d2d14924b2b8d8dc8cd8ea6eec6c69b5f00a27caf840d380df3a4633bcbb98bf1c333c7c71534d8130e2211f11ac0c65dd81f55349279dc42cf6a2d673b302e0e38ae9483cc0441ec6231a35e17a0346ca95f3cea55fafc801b23a28bf2923713f15eaee677811cf56227ff924d4bd490dfbef8a85e7a70e35e44375e07c82dfb3fd9517828ebed9775839bfa64c68a269c85433908920f97966442e0ca97371cd969f62a907f788656f73f39bae574e764b777fc546d809a29a4f3831001366f9daa10fc73f714c105ef3b19fd062e9650071c557764ead388a52e65c53dc0c23bf56f883d70b507dd72039527f73ff2f85541ad445136228b5858ad14df4dde44d481a8d6537240a566ce10ff21f6797b0b211d5876c84a369d07425a81f06d2a524d1930c564d9b4dedbe2903f7993278df7fe0d1a53a8ddc6fd16aef3863519dacb822db6b50b652d15b80a37d83d67b0b669285a30b7ddb6a81be1c8defacd56fc916e0619e155430c47111932a06fdef6bf60217b5a30211b1bd3824fc7eac58e57c1de4b5cfa372a275f2eac0d4dbc81f0c797dfc59b02d43e56ff6a64209a5de423d86ab7d26a84ef6cae73cdaf605bf2a4ed78017c0bab9663f92ac3dbbdbe52c74eda756d2510dc6e6b309321d901a7a303e544c63549cdc99a8c977ae85a268e855ef7392fcbeb00067bc360aa26d46558171f3dd653399ca8c5a164ea6735dce1609e564e1b70b2042b7decf73801a9c3ec4289d47ad1f54cd131864e4001f4957d515b0f0d2bb9dac9dfc02b284d3f2cb904d19bb12f433eec96a661b2c036d5fb90607ef43929008a4e2c69c8bfc6a1451d0bec4c2eab3e7937bc08fe69a585a4a26ffce823b949ee48c5131434141d1923d4fee324e195b77394281f2a82d144736a9aee1265b74e5dca8f2bed0c84d32f4acac9463ded6857785187162fa7a24ff071e7950a67874a0f71f1b117053f8d55794e5f69810530e6b09f1370a97a776fff0a3eb48b215c434d04e432d7a2583656dd15b7fb3015ea72c743da0bc2d35582b0182cba8d0d1b38ff4a1652fbed589719a0fae072cb9dcfb775985e746e7212cbdf6f59d73cd55d8505960ebbed79b82a31f375338e47e59f16386aca4297ed2864e71664385579241867ccdfad8b6d12c03564ff105b2f69e76d75aa73240811be6f0bf0348e3152e63c402ce70b9f9907f0"},
{"0000000000000000000000000000000000000000000000000000000000000002", "00207482d20c9371ac8ee33f6f642eddeeb13a74e300ea88538e0372273983b4bdf5541d1143e8705bdb0172a69593d236b3d492712ce2cbc76a1a5f3b677e47177589a915684d0b3ce731c9c135d2a67e3ccf680177fedda7abedef9c20a6473556da9f3e02bae08d1034cab60135c83fbc42b38e8b1e840662179519e01d803c6706a80829734212cdd93b05c6ef5d9a44b11f770ad4a547f2e4554ea2049fd615ad9b44f8b87100b0e226c5d466eedd306047e51443ede9c415a9bd0a8b750dfc7c76adfd95f25fdef595fa26b814ed830d56fc51119cbdf5f1a586d024424b4e13bd151d9716e5fe431e6429473ac06428047c1af6eab4178059012913276775752bc70b73fbd0e6015dada77d90bc0827f2a22487a2bd8baac29f599b7fddc7ecf9ae9f2684cb7f52cba2bbb0073604ac58ee9e11111a76c3334adc491e10999b7bf9c7fe79cddcf6959f3e1a73012c79f67ca827b1a6ac40cd143d1bd86d9c24d9851b79f3fd83cc9e8393f4b22fbd56972c8ea8b26a151203a68ec86101437be57427b6b2cce152809bd4e21a1fef9e6a0f8d3499858a3ce6f1850bc1543f65b4022ef6caead06f0bc8d5b2f70c99f4f50ba25a7af20a68d20edfcf42df43bd92a956f9f89928b8576f4130172db37c56c1c7a7a735f895f2a0f22fa69b4fd635db7c370816bb97b94ef5b75ed8d68669179e0b1d021281f834782053fd6898a4ad69813a2a3134de45309545ef9ecf6580f154d38e807b48263583bda821097f2cc03d62f3b9985bf3aad6e1653a2efe1ef4a81cb9d257eb104c251324762f28d72b422cf0d6320a0615bf644201d54e142148be07cbcbf22fea3711ea20557d8a4149a909f484e2821995f24f256e99bb2409514f15ddd6dd56c74082d509988fc550f53b508009e226fe5bceb005d76d8362c9bf6208db486d4bfa0212559dd04261a9b2b6e8e24178f6665e9f13949002a120dc37e6e76f96841180235a281cd454da36140894db242c0a2cdc76b812abb0c1a0f662699d55690ffc0fa7d053beb0d4ceda0d11691cded3aeb91c5e0c353966468c7c67466c82908d3a1872fcc67d4eea23458f421f53c4896652866e016f3f079b405f74921e44e8faa9a22bf736a5359ac5cc7346cc295ff07e20889d2c26efe4cdda1d82afb117b1ae215bd564b3072d34a05286ee6b9cf711c2d82fe35da15a8d9b4d379756ece560328176eb1671926524ee773159544a1339a7db5f5bf619a9e9e6e599f6e61f2ee09c8b38220b2d06e1c9b89f4e3a4b4730f72faba44c3de68c233d265ca6498a8fd754f379f6ed918abefa373ecf27cc4b0e71645227d92218468d64c6a70c59f8b91b36fbfc74d7f43b2ffd9a564551b648124d013f9bfc3f07024323244e396214f48096c203aa368957e70505e1bca107c5765ceed495d96cbb77f39da1de565f1c177fa3de0f3c2483a6d22da66f1da6ce81fdb0d00e6f25e9395f599d82ed91cae2465d3699d41adf0a16f20ce21aae2275a2992871b0f5cc2ea582558a32108d19b24dcc92e55c1e8405a72c71f99bc4f01dcd194a9980b1e3f015aa4ec3fef94b95c27210d49bab1aab8eff1f59f6fd96db59068cdf464e7d8a3857071f4a25ef889a61dd85d5526bb1d2ce56979255084c1188b51eaf1b8d950330413a76298684589610d02646b1d4c840f8ccbbe4c928b152ca67f677689bcbcb22a547294fe24bd9b006a4c2de28ede976128d878a67e64e7df22de64bb880b8917dfb3b9b7ccc1e664330565db410a0154f5ef82b31c473b0ff784d9bfa305f1c8cddc69f4da752266708acd230f2ef7158e19a3bfcc647edecf4d7c85c08b767db5e23543ffc04da43c2f397fa9c973536b2c5ad78479c097c517698d4"},
{"000000000000000000000000000000000000000000000000000000000000001f", "006aa79a0aa0efc9da0f9172f8430d93917c9dc6e6176b5af2868871915b0d435878e5183de2791ff451072acb90e4052950aa82034b324823d60deb98e5010b741e46fcdbc6651700911dfaa191cd7a08b377710a1d5584aa67b7cf623dc570d6eb10ff483e9a5cdd1bb11c9fa9b4cf77dda3b349a5dc1125cb2230b23523d3caf9f58aa5a57d964549835bcc736b81bc02cd26e4b27c130e3434d2af0432ea23ea597c633145dc035a5b45325521c0d3df51a4cf67b7064bd9ddd0bc071da705ac20c65907cba62f8be286069a52fce29b0e6811e3568dc9852416e2d1a7b1b309c6759971d529eac7a373df38dbcc67c73767ee07bdcf11f62d35096bf6ec0ea741c9ca3bb875bd5f09423a66fc29314146ef2a5095ee0ee74054d9ce2964962878bb115e0faaf5923c06322f85e7a86df743d0827d481632cb5473b461b6ae2803e0e938e9d1efb596eff4186e94052d2eda984630ec5f6c243862b078ef8ba71d57850ad3561735c507b1bf3ff3b567c213f9631375f98c0de462e35158d775c01ff1844dd0c49e31b713aee155f96d1844b90ea5d1bc569cf263c822e08e3903470a5fcc948a8712c7382815cd3b707d7ddc72b103b01ef9c2d06cfbde11df1ef3c875d04d756ea6d275f7210a2cd8212619cba17f88a0836cdae6c5f876e7e82b37bf0fd30d1b00f24f1431fceb35c2601b9fa995075cda962a0f2dfbfed4d5af8bc2d62a97009bb98b111e898af691c9f09e1f425dcfd85d221dde5460ef395c67cfb815c993f2f184a9f3f8f809cb88f64f19489d0bad2e5b74e95b5885209d4123ca667fb3959d0c99bbe41615c8eb141dc3dd2d646131c0dc523fcb16b42b76081a0d5fa3c59567a859e422ef38fe9a102477ac899f0e04ab02c3a41569b9afb50a885ae81d26586b0399a10dd9534043c59a2d4c629b0336e69f009e9d2d5cdc72f3344ae048f32927f35267de420808822c891c26771fe941d72c4cc5406f81d2dccd4f05af7ef6494db39d150de49708bbece206bddc3a562b3b718f071818cbb9d6a5af23fb035a3bc252e0f006a14d243858eba79d6986ed7a51799389fbbc5f3a35c6223c13e83acdee58fb9434f0902b90775d748c08b149c58606fd148995126675dfaf258369f34f90145391076650fbb16c5933456d23f25172b96e0cec0aadf8705030c2df878c832438de51f8cdf64c91480d1316e7b4db5785d2c5281725cebf4e1386b1da111862f4d8959a157eeb0c04b6ed2958fa1b25ddc5e727d4fb6a629cc8cde6fea47abe6733a3268739aee518b77b08375eae810ff7d4c24c3fc59a50fd58a99569aeaba38ea036d31e417ad6c765019726ec9bd042229d55681b4df6d88c4a532e5fa36955fe07bdd21024aa4b8e9faafda19f32527bfb2753adccd8383c750351a581f0d14edb56d6333082c975d2abcc79f4e020aa271850d8aa94e7fc15a9c1f3b0972474fe7d2304d057c43102bd1aa139a252a4259ca53cc40a34763fe9fca1d866bc077a29189a22c6447b0a529994c2065bf9ad7106c2afd50af6815770c6ce016295cb0116361b63c5cb6314768cd1cb77cfaa35e0049617ca0a667b46ab6ffd979cbbb882fac4cf0ebb5d1d21fe1106d89936992d1587ddc55cde366f1da92b6daa751002f9de3a1c07bd2bf302db4d60dca5f09addcd481583f0b3bd9dc4a1d4e94369004f232688357de1d52282f6054fddfa25a415a24ee7d12fc4c1e0c6c7af4221ab7193577436c784458897e5ca22d3057c5f761c67a35cbfd22ef5e20c427cbeddfbc6bfe93d3c923d50bf5544dddfcbc19e33db672f6c0360d71f721f2126fa903e25217b5d0f12dc58ea3f560b279412b4313cdb72e94cea716b1ee5a954d289fdd9d2b658f1"},
{"000000000000000000000000000000000000000000000000000000000000000f", "008f85222f0a8177517b716351943994c6f586e0fa0fc66377010f7806ea2807bcb4f5c1764c833c12dc0d688b9a0b3beedde858e6317966e91692e0fcf971377d2414749472136ceea64fb93bcfbb689d5e96a500c146659345f881173581e131adb3a8d4e1945b84032b994b9885d71e642883a3bca6a0a5e47b5fac7408509ecf6a7710fdcd4a24788453df8a2e49f40b46369cbab31c22cb9d8223c53c9a731a9a8cafdb3e5200e86ef703345e5fd3cb52476072573286a8fd282d07fe4929024bcfb58952112558c55f5850092f78161aa6aa834954295904f333010fdf28412c099a84a14a3c3ad97ba16a8d43ceb573177af8e77c007c7e42016d35d757430afd68b0c6bf3cfde3d23f2032d37933cca5c22722f0176d6d79a30bd5e66ab4767d77690c3a87ea2f453fef8059e44c46c47bb2ce12168f9014368d35e057d2dad49dc4512a7b66169ad3bfa84c0266ae5d38cbf7b0af2631a22c1a1d148faf093f580a782e8d63aa5069e2f3131b8729ce967d329b8e2123392567201233b2a78702db646d0e46366c762fa72955fd57e1d3206f0119d5d97545cdc289b2962003028bcaca94c5988a795c932f8265d6222ad9d6f82d16b81789679b875b378822bf2d60f8e18c8df2c9b91a92391b8759ac8b204075fd7eb3de2603b9bf13ec212d850a5c91324fbfe8f2a519a0bf3a77eb7c8e3903d5b1d04942a2368752a2a0b8b54eb726de3fe4f82f92a2e564b05dedf25713bf202eb1213ebed681c8150b5a7a084fa1c4f2fec277d4d1fd3163873fa39e33a7cbb7ac1c5411ad068a18dd5fe612b2ab5ff16a0cd7afc8c00715e1686e80e5d314b57612823bf5242a67fba3e4d7bf53b548332f1747e1eac997fecea729e5076e79d1057897c4b4ed1c778ee352917a9f352d1b8e316f7574b7c3d922d281cc35313e44d1f69d0396dbab9c92eb411f880313b1d85fb59cb7ffb0e536252d76a7dc7de1dc8935c7185eb09b0b48b97ac22e4b2e95ec165474c936b5c189fdab4ae45ff9057b35c2f7077163af47697716c5165d4499dfa998ee46054ef0c5fb175a69e50873b451454a371b54ffa6841001ab4c466b8cb38869f20cf1370e9982c49fb7f6221d65b1f6e42581a3cf7295b418eb40aecf77238031c287f2a20d38b9eacbd4e7cc62b5c5a10fb9e6ca0c072964841c5b8357e2b508802f808e1f76bfccd621b55b62fb4a0ffaa9dc46d4a24dd035f0f0b52b550d4c9a09eb0d1a7c869e05a921d4b6638d76bfdb5d2b707ae2ac0c56abbf8a94ac9ebd091b0ccc7f292114e32f3f8ed45d51a79b89558bd9d3fb45035c3b7f5c1ced97f262e5219499b9e3f7f8436af7df39a4ed1da362249e07a93a451e230dea9e89b57666b35f5d243d9e230a0e730d446112c6b4a1dced3d627e3e8e072047edb0671c7da30f325e69f97b19e7a9bb819622c83d4d0be39c5137a8a387b3b29bca9ab17e8721107628b29eae163f930a42eee1ad655a936618aded1633a5fed853d957a2c2545360f0994b1210b8d5a10c99527eff96dc3d521b97f636478fbb61d8bb69c35aa3e670662f1b9bbe7da6f7b6bcfe7e21509bb5ea1d4ffc3ca0c7a21e4adb68d50dc9a7d715825f545a1ddd34e2752ff791fcd0c6971c5d51d23919b684be08276f13f00ffa873790d249897b021651155f07fc37353383e1e5f3a9b15a953ee6be307aa344fe190e12991f0037a16605abfba57dda676ed2399672b51580458cfa6cad8dfddaeed8dcc2ede672d82e9cc7181ac5361508a1e5b9c872e2dd467fca391e39f6f0a01f1721e99d9e556d896b635d8632d760e2f078392f377b62c4be5f7819d45db501b37bb49d89dfba39d83f824c5b2720b9a71422545492675a19cbdffdb89b"},
{"0000000000000000000000000000000000000000000000000000000000000000", "00c6b1a88a89208c577f80d3306e8d14e40bbfe0b20e334b2a3018ce556c16d3247d99b22164e719dfcf070895990645c6a5ca60d146b5c7f52c80e02b8cec31eac4967898b52f1076c4f5c3ba5dc189a313c53a02f08ad575864c9e3323b0c6c2b4b8a8b1799d965519887d267fc78c43fe6c17e54fcffcafe1fb5f1305036acf8f85697681890b305afa233b4d90139019b529e91e12810ae6675cab65f400c7367f531f5b25f00528edf2b5d508791f84c2838f6580acb90fa6f63e07579f138749749d51b5f3497d52a771d1017a3d470e303b96260619195d4413fa77a3d0f9413fb916e247435307c227a70db6e9d4cdef47a67ed295bd2f1209b50057b1cebcaecdb2c19eaad27888a5526bf2760d86dd696a053d61fbfc913acc48f754fd091a9f663fc1da98e1e82fada08214e1fda8af7f44a0ff82fd692fd5ae7bf0b061fbba5765074a6e369839989c08028a5a229214f533a3a3a0f4b63031f998ced73ad81456f1109f866caa7fcbf152ab6b5aaebb06de492e041f23c973b5ddf1cc6bd64726e1c9b9e76b395b38306504a3da98b569dbe533ea80bd392950179d2e9d10365a83e18624d907190689675cf07e5079d369621a701609ecdb4305acd3c45eef71f18f09a2d9746721a469343f51a701830706ba1855ec6f45f43bd8de43c9eaa6eed9b239fd7ae546e7d08b8b3ba57ca4ee0341c69b884aad2094b803aa74ee635148e02a97c604fccbdecb1a800754aa4401bf4bb5b65b9ffb97db0c986b4f2be88cb1c7c59116b8dfd6264bd23d61ca2129ab14c09c31d538b4f2cdd1e810daf5e0de4eb305ee7dd8fbd23ae595f549469d6bb96ebebcbffa791d4bee182e8db69fc8a3d37fd75f3eb9f07590828e15a55eae1bccb77d063184342a527d528e119d2d9f328242306554c4ddd150254ea6719efe0376d5ee6503b44a8beecacdf195f936d753d7bc761a26d5e1166b8543d0d03ced97f51ee72541da1707521ffb50040cb7c5aacdcfd392a9a5366c41508f624c7319028917c5c7130290f9cdf3d69357b55737990a1fef91be0b688cd5e068588f90bab0d46f1c6e38364daffc982210d7314e08aa1eb275c28f325fec54a41d0a0134123bb5cc4f978fe2e96302c962a10cf11a04527e0c314417e47a9e94a1a8d1854f503199dafa065a21e4042e5d8d4b880f5bbdf1f33cd4a310cda0c7be87bd0b6826e7690dd9b7c9521237eda6b369120a4ab6810911466f4be3fb7fe0f3b36236cbaf3dd0a22eff6509422a141c16276d83ee25ab6c2d9cbb1e059c83af0719c8570edc11cda5a140a82f2834d30f599bb28b4500bc143d5ff7a3bfaf06ba836138a60a20d8221f0cda4c20776ee32be733d3d52c5edc4fb8d3bfe67b1bb1c3ed95a23261311dc42d62e4cf412844fa78820438c53bc6dc107bd770265b9dfeabee9b13d686b30c1f91933a915e571e3232eaa0c40189dd66bc9c4f048868c3df1964f3cc82f04db641f2f1997ed4a1060f07bc05e5d60a378be1f39dff9fc5a2b57df7769d04c3e329ef555b930630e37c96e8e905c170f154f12c6586c8ef6c0c4fb2086402f867975644a155e88334eb15ab12ff0057f90224eac861f6da3f2dd7bc7648a57f835b9d82d57cf4455a39f835da364a5bc47d091cb6089863248d8b8e60f9c1fcffe9ca85d03e88161e5c6eaee19a5d630f04c742f049fa6224d5def3169ac50ced191c3725c9c35c25677a264fa155755227fc5a2e3fa11e05a8b085a88732ad59e85e967df7123ba163072a0f4d5eae3462dcbfce7deb3b5828ae1b5f231db1c9bf0a803f5998b9ebca32c2f87c9438352753f806764387c289548b11b6b795f3165db49a40d8cccc7c17669f7100b57bd4ff1bfdec3cba4267"},
{"000000000000000000000000000000000000000000000000000000000000000a", "008666ae56c04ce79db3d3085e185bcda4dc9bc65817af22485ca3647942effa0dd6f3f7ab69501d0aff137a9ca30d716925e2d03410bbf417691d63f5d2c718306d53d3da53eb42ae9c08446613df04b6be66a4094ad52a16628d8dafecf5e8793f89aa1a091bb46254ea16f77da42bd36a4e573d33e3113dd623dca20412984bc34a0e8401b85223a46976e7c5fb911c5d95250c9216425befd5eea0628eb55354dced0014b2b20e6ae74092cf4c1cdb8ef82170cc27ea0c8078c62431013c1846a630a9cc28f45f1eeb972a7d9ddb8df2145d653388a1d2b367814201b4df3db1c003b92efe2b6d1bd1dc9da6f5b49e27a3ab57e43e8df47f46d41086ffc812190c7354fc0db20f7c637bef20ffe91c4323d3a9f1d26851a43d16c554fe0adb5a205c7e4212564a87205512caca2485ac38ce937273c0b70c771453c69b3a8d0710747de3e802d6852278b4f5cce9014a123fe2dee09def03a0e54de67dedce177b102806360cf913591644f1e8863629bb3db5e226dfa9a404604a533f05d4ab0788861652b48a4ea4707697941fcd5de7aa3015a7b83aa2fbfa6d14f23d6759d25a077f3d84ab5331d994e734b2dca89fc650eb35f1a45f250db950eac1c97a2766c6edd6296e56649c76992354d3d98bd9bf8aeaae9296e9f23141ad607d80c9426352a5cd13af6f35b194db2432a97a849b3c67130495f932018d16d98cc1c9c5cc57400a80cd143da90f60dbe3abe0d0f9416462e7e3d44f7578cedeb1931a4a4dce6f1ae167f635c950c95ea68baf8f7dad9d3aa995f9e070d5f9958994debe4d274aa2ecb91d8404d643792a46ad4935a6a3cbe8fe2f4eed8cb9d65d075646d5fbac271388981585d17b97cd8bf359b092207917c02ae89551c46d439aa9aab85601da73074c43df0c3886ef20d99ca6c6385172908a3da7b8784b00d2739a1086125fe3ca32f59a6a44f1dcd61d78db2929652174ecd2ff675fa2c4009c4aad49396dadec02bc08850b41f97e344e90461bdfe3fdbd84da7ea81af437e5d589e7a1506555d58063abaa1087ff7d210799a36b4d084172b606e39e001efcad9bea1b0f8f4b66a7fbe7e7d34168b5f82004c436826b3b3f41d724d7c6079b89bb939c4942fff0dbe16e48831f30512eeae201f9548ac30ea2e6c66c75ee46ea5b3f3b791a9ea1d5c2bb2871ee6782f580d79cf548f88e099927c8038d7dd22c609498f37c0cac074956ad94b11923e871809a5197a90c4c638390bb5b3d7855b39e4e3fbf4d96e9a6632f388cd54cb9f53ffb61e4feb7231f5cf578a6d1601feb8135685dfdfd9233d2bdc62220bc0263941cc6d7b19276123445e5b2e69679707f3d26efbbad6e69b1d78779115a493c26b373def3e467fc86922bbaa167d9c436d6aa7ad2268bdcd921ed0403cc99f9d7fb33a89bd0f076debecc7411930937361fe7c4ee9c90697770e974cadfc5f73ba01e42c20cdcf312baa08cebb40ef1046bc174a9421737f5f141e4525302ba94a5fde2d6f83a628786c8e19a20e5046541bbc7ad2bcf9635327878fd440dc62b3d4deb305f3a5175d99e2f737fe89da4fd39e2b41afe4a781d06010f3c1228439e05f41fed6173c5b7113be8d4221f63c17ba2d0c1e6fb36cf73f3639a1f387b3d8c07d87bb2999d57372389174f7d6c59b6e843dcb9721b4553cc6809f9fb4c5324e8b435e31b0d6afae1c81c5e8190902107c582d0f38e243647e5612c19f44e32a9fb187ad6c12958634362e5573519ceab39115007d9c9a19230d36dfcbd4238c6245fe1fee15fc1001b675106679ab361cb7691fbb81cd4e8b663b2f0a011d735163746d36b9e6e4427a0bd36a10a4e5aaebb24d901ca48e80fb17e01fa77a6fd606bc721ffc215"},
{"0000000000000000000000000000000000000000000000000000000000000001", "00f48ca73716345f177ba8517fcbbfa282b6b88a3a0969e90515185833cb7cb403bd49c301534e50cf5c01da94d1038cadf570b534b3e1bc588391a95f2f701132ffc6629dbc7d608c1133ee4162c1ba825c572507e6f14eea22905d9bd0d5317a3965f362a4de3e6b09bdd25d1783b4146f3e921d0c6127a9a524cf3eb1112a7de0940f4738cfdee2acaf7ffd1f450e7eddbd3c0f2a6e72ab459b5a91a571f0d23e258d9a4fbea004aac2f501c62178a94dd0b0c5687974ed66a84c2f0a0d558036c55c3c4428115627dabd84c60308986f088d38d6d746cb174c92544a447cf3699931791c340cb3c52c60ddb00b3389614ef8f5bb52bf9f594997082bccb64c1314cd971ef47f67e079896149b88d3d0ba715ec1969f9e3f2454161a410f974dafe750c1f14518a74bfe0219f5ad3d17d05c3f9bc797a39506b1cbcf6d5908a216bc10228e6a1e4b8db04f9fe147d0248cebb4349da05ad55c1216e6952c6a688dec32317a368ed212fd4cfe1b2630587987499a301d947920375acb86acbaaa59ff57510d957efad57b56ba6bb19438a50c7a74edd733d32ed9daeaa4b0a5b387e261631e24912e9a551c25516f098f7336f52abbc864421fc02a1eba05a83b1397b4cd0e205f2dd22788b371e23a48b9b331077ea6684b713c209499dc13ba7d445a142604f2a6689ac1a5547dcb9696d99b1930743062a5b74c0683625b6ab731478ab13d976d91a5bbf14b3339c8e533996d3436287fead52922ec33ddd8a0ec09568d916019be61ec17c044cf9e99eabd4ad5f222776a1ab1cbc07f9a118baecf0be236aedddf8820677bd19e9cee206ceb6b6592069ca49abafeef5e910726af92f6dbed3834dc137989dec61890c0ff11e15f674a4e2d2d019a3d81284749a72320d7c5da47b1d1e5d9b2c4f355b91f2b696fdc5bb9de1f23daf290108ee042ba83a5b7ff852de764a5ea1b497d9478d094cd5d54d540962a832f606e8d3258f99b6de241b03a43b6ca21bf68fca3e50b88a2748509fca66369510a099da7372f547fc9be69ed9c6968b7556dd08fd07d55ddd99a1d9333fb39239d7eb47ba316d94911e2c9b6d56c3e025374380f73a6ef63f4379ef3f24880a2c47a875947e12dc77a77c02dd26ce732c56928a18ca09c0f8cb3be759e664831b26917759b87c1ec303f41868453d3db1ef41d4150e6e031e32729c69424518cda366e5f003301d35c8aa7d3e41b76d3216270462dd7f10c39508b851804b27fccbf062e948cb043231f7ccb291be2339d716033658d66e145fd49481070293b70747e5c84128f073f604f83da06a7d0fc52902979cfbf00895a74549c43ffadb06f259d7f0c6156e4c940dd519e90a3856149d5b88e9b87a379a304da0874e335594f35ef5392de5e43b3f0972b8b35303b7c553360f44a28b85987c9df75382a291d783380c5f4ef9af5cd2cdefdeb61e72c2c6ceb4ab979afc03edc43b496047a97af512cbe6f7f0de0475fce6310831e61bea84be090ea651feafc962599a7d2fc60e068cce31bc3090abbd4eb5cf65ca278a660d36f1342683a959d24a03fedfc8b86948f3d1be216654cbbb06edd174f242ea92b3cda34cbfa083990443cb36045d567607df5fc0fd9ec356d45eebf00b6b8f5ea7410677c7dcad4a2189d3f92256999e9cc6551ed446dd3a52e30d925bc68fd435e4f69f3be39f279ffb54c70a641bd85666a48f591c20c296dce721ed581244e715467ac131ee5c977668798703756b16d07cdba9c00aad64bd55a06fed9b28b0fad7924c352ac2d582f311797d80254aabdce991316028e3158641f7d76d69149f3a1cbad0f24af28aba27daed7027d20b9fc64c2ea0e52b2be2054b146c860302be39b58f227c923c"},
{"0000000000000000000000000000000000000000000000000000000000000010", "00333f1e90c31543d056c279b4fb5a78c7511484ad30d4643ca2cc58b527a0d376074b2703450c7d64da01ff2f247567a9dd5230e3d352e9a0bdbe453b55270b8518f1928ea1dce3f30105e5653aab145e9f619b08361e4373847d9bf8d3315ce6eac5c0da06dd7e4e12bfea98c7a20fd969e3e14707d0be9a6359ff8a060862cfb60263acb5aa6a5505f2413fa679095f0c331623aa2d4bd72342d8b082d0742cfde563230cf10f17264e9eb95faacf584ff5998c641dbd78011cb01319852fb656552a58b3f674c18a414e5560b2b2d4fc1751eb5613cfe89ad37893758deb75b72d771d177a240cff727129b75d4e69361b46e2d261ff751ee13020c98adea7372543d1616721d7c8b3aeea12f89a364831d31d9fed9881a85e452c094c5e6d73845194df4dc5e6909355a2f7ac6737646ac4fd13f2aebfac89823b261156bdd1ebf05b185abfcc817ac1753fb80f005725ae2f8d077cdf15b0cf50d8921b12d1391b5c36c593c9cd15f6cd27a495a472e3bdf5bf9a3dfb1101ea7f28fa16aea0d8bd5645a45f19ba1048dc3c8e112f41b8a8c55abcedd8c1916e6d5c137869fe9e16097c11f8d86346cfdca584743f38deae0c33bc736f137537bff74fed4548d461dd3592e78cabd1069cd52ec93a649a9f7e49f260553496c165be459bb856133dd1bdb4f22bdccfc534255a9975967afa2e998e1b029c48afa8c25308d19bc1b3bb42435a36fcdbe6031c9f94294c75fb4fc05033332b6df895935e1607b62816bfeb991a7875ec9fe471f06d756190b45a713b2896abb67c6d3df9d9154546436ef10989ddec98162cbb04e72cf897a5d96ba4c0b36bf25e26c737096e36d945f55ff1c0ffe1c2f50d2d31718a89b7b8c8683db0dbd17bde93edad78b503ade82112a2eadeb3fa49cad7a7282691199f7d171e3e39bb29f4b0716367027aa9402ba59037cf6e604be62048c87a112401c70d885b7a5096d98d9a38c25dff48f6e2674d9f2af40a155a631d59bd593ebdf83a9efa2c229ac976a3ec25f6227968cc076f3377c606c45ffe42c206fb85ac0370c5791190ed98a68051ca1d1fec994313dfe3b2221fabfbfe5d2a1f44201b59fd7a909b84fb1ddceb0c0361fad596d9a39aaab6eb89f1a809ed725861580f1ed410d4c7233d4137d185207edab17ffab92859050850921383a7ddabedf1b897fd03ce9f6d17b3d5255047f89626db49b0dfe9e4757f0d66fea69c564c0b00d440fb179c29a7f867ed29e80262c9c4bb0fb22ae2a7fb3e5c437fe943935cdc33b9c9011069d9ea0a4553d44cc438e1a1f363c4f2df30623af41ecebf1779f99bfcd79fabfb64d46706bdce5e1c5f96aa30114bec90575ab1dde53252c4346f82ca3d497b88b715504766ba0ec36db9a934bdae69cbce57cad55ece052c9d3301c4a8643b9f3067bccba300bc59c686bd15048426e1d173b0ef7bf5da65670139ce12391aac05fd22d39a1f255b122af0a64bbbd5ebc23afe755d06cabc7fbb1a09cb590342c85af404926dc119ed451089bd44b8dfad2fd992b15206a2bbced7bd7cf5571862371cb8e663b9f10b431419c189f279fafdddae25b855304a8cb3ce7a3625b16ece469a1cc539188338c8925ac48e9658ff864915dbf70d4ee8a578f2a615fca6fb9f07885162720457e65ab97d16f5362ca448ad970e80b7f7edfeacc79b06c7bd6650adfdaf1f1ff49b6c484eea2be071343cebc8ce027e79fa9c2b3581e4f5b657c77cf494792fd1fa8fee6fecbdc99b2f225d8e4f0c32b526482485686531259d3093a42337d0afe9dc9786f18ff703a413a8a70359313cb27e3323147a6e0d6dbd3a561867e0c93ae2468eb48409517257f17218ef8d4439f9731d58f7866a63b7a688"},
{"0000000000000000000000000000000000000000000000000000000000000015", "010570a8b3c77a7f88fd653f90aec919f098343fd55cd48f0f56fc814be970db12d768d507c0d39ffe6e021e483e248543f6ba9d434e61b9bd2164e24e8aa308b7d88235429dadcb2c518769d92e31be2a58bde201a51dfd34842222661a25630f5e1a0990a0b40c6901d3ba8b6f112c2e984904254adc91c9c7727f87d005cdff01b5cd68c1f76a8292caae8164eccf31fe4a1c6414dcae730e01a416d92b69ec98d26462948e980279a7352990f8bfcdaf1776926cea8acdfa58a2331b2c43258037151dd6a392b912a9416b69667ebc093610856b74175c1581d58928665e908a950114ef7c5cfb6cca92a2ba957a68e5eecfdfe2e33a3cdf240815c70ac4506eafbfe5ac325f89380127afa65ed4dd2b7f4612aba61e5b508767ff43ff9b9349b95aca521d6d57df59755973fd2033ad8fd6f5b5bf7a548e1669139e50f223248de4eb08492fca6eb6b9be9b19360108d5d0624da616b189e530567d99b1704095701e3da7aa036b15ba1350598511323408316bb5784c19031e2d81e572aeabc3d580cf9aee56a8f87607e8e2056e9ef2739ae98be514b4c82bcdd5a65093b3de7402c4f23b1f2245d9d07b05db5d3fa8f9cb6e8f263025b6d179e0d6140fdcc564389836e65e060dd85fc109b9450730d65dcebe5c446dc77c3f11e437bbb382246d629741d7de03cf5865bae16fa801ce7ff796a60d645edd72882c00ac349a7f9ae4bf9b6f6b5c26dd492673690754ca37256ff49bab3b42423f87fe3dfb1021bfc433b7b535f03136f91057a01616c77aad073bedea0b11646dd389c08a933d76072762d1ff641d0e69c55f8a4a68f692c013cecdae063b84269e58ca309de9da6acd538950f7d32647f4b0757247f06c7d1b58b9b0d1ce868194631568fbdb7006449bfa511b2198b6269f32b69bb38a463c3e446f0724b01c7c380186e1ab33d195bbe6b861442bc580f228971d03d124cdb24fc8302275a3b0f2632eeb28c5dc98b6fe7d01d51e3944e94ebdd8c36bbe2bde0313813ffc5a6b318915d169d1a5549f39b327535852690dbcf5cd2c0e4bb9068686ae89d814112620b327e0bd3f8e4b0a0f2c7249951ece69be201613586a726745acdf219e22463d7992984710c7d618924bcf9e5ab894dd00ad28067406c9cb91df33e91374b0ab5121f9a01789790e667ce09c0439f3377c64f6a26ec425e37356a6bd24f64db91a2a76b580448576b571b09b2a26bc0d14165111972315c7d152a083f7737286891e38b9aa7b220fe7a65112501a9f3ee29e4622c48bbcc3bf5064101838c9df5cabc8f8da918547f384e58cf7d2288e1415d2e2949377b9f37fa546f3d2045b1e0e3ff4f9129f66be5989860e6cc1220690e5aa62a94f58fdec370ca4ef60d0ec211a3e25abacba54523ec19fe6d301a971b5171491dd0254d7ec2ec138e644aefbf46d133b79ab0426924d9cfc79b56d5e77f7cc28ff47c71533040805ca643a5ab08424cd2d501141b577139b2a8b2c615c559ea6fa847a9ac8778582bba81e30ef0381a3977ca671d7a28920a6d3b821ac5b290a54420c7c334f9752104b33a5835315754689e2a851ba2b067b1bae1de9588ffdfa034da646ed8636e69678020a71b710ceb4f3c5ee86d189d8388674cd3f0b08560f7fca8a505ccf41e5c6d444dccbd515bb2b5d5c5b16a2eee3c9c6acfd7e66f2ad1f51d650ef60d311cc2013050ed892ff11f543b6596070b2d1a0fcd2d491342807355754d15128e8456f0cc5ccc96da0ef7f130fdc623aa393ca4fe4b086925f463856cfcb1e91d2138d5e945309c85686b4a477a77e52226287faf7311f5f4971e2081ade6eca7337092882e13acfaabab55b383ae335662005ee6ab5e95165fe5265fdd89322"},
{"000000000000000000000000000000000000000000000000000000000000000e", "007087bcb52115f3833f40ddc74d5eb8692f4e3eb84bb5a7c4cb99b98efcbc8643bbf7035f461ebe42fa0b48dae3c59507ef0ca8f457402b74c65dd554b3e11b2bc0f44f8d7f70cddf490e706b422266c99a099808da81c3154f8216888f52a3a972424277f5bfd36d28c5898c6558fdd0f5e2f652ea7e7135f47b5a8b851889b1139ee31371661f86e5ca471da1e5d950c24a502af4bb2960ba251715489d44cfe9ce5d8176733001c06f3cd44fe544e6a64618e5fff79a3a983d317a1f6aba8b41d40bb50597c2acb4c197a651cd984110240381f09425817b5a3bb250864da83635d7bdee21409d4cc1c123b4314c50a62f98719687a01ebe0c6e020a1575e4ca0baf1f8845f5e2ef71ee08d759112b38c21b357852efd93e4cf3bdf66fbb352bea30940a197c5b7ca3a75ccbc58f4414eb35a33d9441d972432d347b33512564a78534e77c3fd5b8d5f33c9296d602cfd3d88153ccf6e67ca17175f4a6c9eb3e55640f09280df50146830af0b4a5fcfc66ce8dc1969b74b10b434301b495b884bbe11387f16326d23a1872a8cb122565271f0add5e90e0ead151e07da2fe2afa3ec20f0c8236b01d0da7aa7ab1e8c0ef025a5b50fc7ce136086f1b061204a6d543f76eade7c81256a79c821a29ed3c84e2e5aa9b6a3a382aabf31767d1703f8867325ae576445ea8f5c5ac65ec66de2dc279751ae6f702e05abe3d57dae9022af220772ca846e3a43a435939d08dd2d10f9ea7a9a319326fec2b3f3b085d84b3065245d7ddd7695f1edfc43d98b2c2dd390bb6427b10efd6c22dd21abb683f45b93cdf3061da7016980109269a6a294d6f25e7d7a5a183b93a53d64d1f774b23741f7e956b9de1eeb7e31926a50c911ef670c4f60ef71a061d29901b8fa9a10212d429390486cfce1227cb7b4b33ecba91bcafb301a36d92751729beae4b0303bbb4e1837c272729283b0ddca1be914f9aed780405bb44fd88808ade6bd4736664ec69f1f76fd517036562fc820894ee56d7037676571faa0d8f5e36f92280618e709c4bbf4e7814b1b1387bf1afe01e9a6e08a07fb0103631b5db4b8203f5c2967746df3af6bf1f42d236ffd467bd315f771b5fce0575fa00fb90200e29ecc77d51d82e9684a2521f96d818a4276a19e611e2e670d191ac057db7d23e1fbb552d9ed01d63a9053031b88f5171b9304ed0f5810a53367cc8d66a032bccc2ea54a1f9b391b623197ecd01060ccef20afd0adfc2e2c50517aeb393f8c9ce632176adee7731ec13ca43b1b45808e6e19ee7e7d2f613d38db69c8b130823041d8c4d2901f4960300e9c4725e1dc297037230f029f7e9ece985b0f543963c6d819e522814fec42c31b4895363f0dbb8b40a683a5e9c0b03d85b16fe353f2d710e98ee28e2e5e7f1d346455372a89ca775032df7a2f54c713e9ce3221091671110a28be6f64e09c38e3f03878bba758a429a8b5d15b2b119f5deea0d2d698157955a70c936a4dab0b25b89a32d7ea9b9103f1e67f9b1ef71a3644221f021336d675f9627eb147fec996f5c1c13753026e61a6c4d0aa65e9daf6e32fc7e2660cf2307ddbc645c17dffecd2c49b1e4ee160285a4d150e4eab5e2e5dddafb89563ce0562662226abd0d72d071b7f877f4e3c1780c1a67281fb0460bfa93e51dddfda0fd1053c599ce679a07c1728c3b4807b24d16dcc16d6c85889641fe8f2336cabe34142c590220f82a8715caf73600f3f3f452739fbfc57b4766456c801c31f79a6dd75042dee3a730133eb92616ea89f0a64734479d8bb2801d557638b7db7915d92ce18b484f8bca4dcdac14e59a4f79ffbc3cbfc5311c46128a395d1ab1739862618b76d585b8f8cf670623b1bcac63b15b8dc317841476bce7a5270e89f5c1"},
{"000000000000000000000000000000000000000000000000000000000000000b", "01c5c04fc4cf1132a804d2afabe6d5f9d90a1590061b93fa8dcb4e45c148d0768ba646a181c737fb7fc11a493d3ba2a07be3bddae1f0e94017823ede38fb1025b27a5c3cea448db26093c34ccbaaa18a21b830db073a80ffe05530dcde8a2369c3e236dd37ba7c8598339a5cd2f830c41bcf59440354ee4599a7a4b2fa790b39d662dec5089ad403948e204890fdd38fd4f7f61281b3205616b72b2a86aa6ea174a0271f715a4cac0ca64d80f998c5a52bbbf23c07cee85566b0f4548146ec94e4a623aeb1d67e548e80cb279ea2347b906213083794f6ae914d80208196bbb23156d58dde461231640584d6261f418f1cb5b65c429369e0940f2d920f25d9af9f29dc63b123325df5615d70b06d6b006b16b479742f17c389e102825905612cb66e92d646b3185deb6629988751d56a778e50db3e1a3a731ebf9630b75477298de2e11656a3e3a5fed2c1961857003d0441d51ff056718ad13d559ace383f521c61f1e0e10c500432aa963ceb83c4f4feb3db669f5bdbdfed450e616d52f0a99bbb8fb192dc17e154d1f71ddd7667442a7b5ad6d584e5b2f4773bc2c3ddde2e3ff6f8141600fe08844a99706da396aeb263580afad23c0460393595dda40ea1cda479b3fd354062dde3f47cfb881c405a8d2564673b96ae9774896cbffdf3f6323f6f5786841fbd248961a0bca5ca5560396270ae177a4905b7bf50a59ff8f129890106ba6855ad4d5a6e5db8073ddd3ce50e2665cda4710788c8e3995750f93ffe4449d358db9fc94bb4b336fe937269e256dc3d9dde59b1d4c863e47001c62a45a8b162a87e1f81df2b280fb2fb6ef8cb249df9ae8b2c23696eeaefbddcca521b30db42884b71d8e8e8940ffbddf5425eb45fb7e1123b07718be33515401c02fd0bcf000d1553b901b1219c6adac8d3600dc580526658ad65a4a7f8ddbc740352bbc7fbc423ef2d7bf1621d5df428c7871461b930f019ebc92c3c17751d64a2df6e957d9608d20a0924cc51f495d586ffaa9155d538dcc8c24af0956f8e3fdd47fc97535276fbf239f2756826d31909bdb2820da815381e4780231de3f0ebef217fb90b9b33bd061ec8bf2b5a8c9b5ced7544e5b0cfe376aa0d15f4a12045cd476b55acab88f602e2c552d271a306f33ead265e3eb3fd563c4ac85062f3e79acb5cf681f1a03208d21cf77286de6ab996a24dc1cebf91278cbcade92a65c9b11f1c43ab12d9e3c587299ed34b69bc05630d28eda7a550b938b712e1e587f093d4c716a89c455105c7de06dacf9f6dc8453ca4f4a1f9bad43db358184266bfd54d96a7e82762e8286325821b285ecf9c2e2386bdf15ccdd361a7762bba7285035ebc5f5e712311bfa664162a19170c16fca75e415dc1adee2570241fa448f81aedd72b78c36caef855ea0034b18acb05bd2875064acc68b639937ecb35431f2cbefc3b592f34a4de81637221f46295ab8cd7626d9ef77f528423829c67b7915d21fde6f610526450c63f04163eb5513e2b51b72bf4c18bf728bf7b5ff6daf4e1d86b890f8ffe5948d0b490dcbf4a2e8360ad56f9e5d94f6b82af0ee24d7475ebe989593fd9dbed7b81f0bc6d721493a7a33a564a68f90514ceabee2835c3e770386c1b04be023c06d833b75ab2a10ac77d924b6eb7a8f506e04d79d1f44335ff52f1ce06d2dc033519fc3a5d297d2eb2a1156d70f326a8447bc740de7080199df60b4611cb4e511749b7f530f1b84370b64e72d916f341eb9acefd94a510a9d2e9c7bad7b896b4119805a112aa644a5c0af8e663af9153cc44b5b6f15b9d76e45eae0da95f398223ec82678ffc655172827f94eec038c66752db5f61e56008a43e572fa91de4799e62075ced9fe37d2039bf8c89a84378fac37f363cffa2e8"},
{"0000000000000000000000000000000000000000000000000000000000000001", "0014f0ece6e362455de0a39d79f74a891df9af877b16188b2d296065b16fded57006d76112807a5609ce0398b2bcc301e3730b0d162abdccbc3a9be8fed6be0d73e97cfd060757ab6cf3a51d6ef97e47c4f8c670016e4a000ec76810b667e23c73c7e151b57cff351b02ae4a0b461b64b18aeab389f53a549710b73dd96b036662330ee4b567bedd3783d8ec823a6b3e9bd824229fed332b1f888565ce028505e73a8a324e93fcb007e6cdcfe78f3ce692771a2799f148e3139dbd42c73deb8c37929d15470c05960d87d9d492b0d2b99ec70c1b4b2180dabed5c150b47527b25e261a3639c2a45c265c355ca5045bf310d6c856368d5e5e963a5c5e0c4d0cbc2a08216bcdc24166c3ae4728cfc4bcc01c59344c1d8aea513b741d55aab8b1be82190b354ee80d1700b3ca919733f82124e16b60f3ae36b03bb1ba1a67bbffc8983ab35df2433f28f36c494dbd53bb670094ae65f9743d4fc4996102835da41a39d0de1f124af0caf0c5303f29bcb939168bc938d6a656fdb64d0a4394c4921ba46f492b11d0d9f4c91e142ef516601808cf7f6c2547256a34424f181d33b6cb10fc3754075e3f1df4d4711f7d66c1cb0e1dd27d795251886b219a0ac683a193c7b58233e8cf2c4fcef5733bda2b29890bbc52580262eff5867c2ed4261dcd8af90e2f3bbf1c49ddd57c09bdc125da89e1db423cc9370d4b02fc0222efa74e7b4f2d23e117ef2425a9041e43543a8eb46b4f907fd19d145667f9c2aefe20bcf96f950558a3ecd760011bf844647640fa13099fc033853610f5c9c709f1b8b1ec62552f37e9bce179e7fe0af3138b92caea1f5957c41952e2f77f44b3dd821f88f817984b7c6dd0af81c747c3009f6ad8ecd19e874b08165dccbec0c90545103d337b35553e01dba90fffe81f4e1123ad4c792767cda348f6e26ebe77729fd2d500768734b59642e1de22c186b598be97bc7f3de9513036437b494db41b3bdce8cb38de749a64d61b1ecc064bc89b54c77e7672c744e2e4b5fb25e0e89dbcdb518f233140f9245dd021a5df09b784f5c8697644f70b92e5066d30180b88afa537aec17429ab192e76c14c58ec93c769ea97b6d868728cdd44668d2c5b2e6c1af4ceddd62ec3d9e329447a9a3919834ffcfd2a30353e2ebc414fc9ccfabe2445bd5647d236055ee0a4014167d17600aa2243c0f060e3ebba6cdb425857f40600f6a74183fd25e8e701ac9255eae4a164196b9909e2ec94b250baa309c7e30be4201464f6925c74070f05f5615b44880ee7daa1ad8a6a3ded93c89aef5a09fb5da27426a327e0e420abbea18969c6f58f01720e01d07b510949ea7974817432455710e9e66d6f2b1777027a7f6082e9276a467383cd755e57dbbdb17d249787210876f447bc10057a6bdd2051b40d4f3cf101efa91dc6dd943993ceb19e3553feb12b9a95ed7615021eca63ca9cc0f1f213e9dac85fd6e1967ffc0b056f7bcfb485cbdb0688354d913eeff98c56925af0250f655e67495742ee24c2778a583ad1a1be18a208026962239ea8e287d72ac1d8486bd6dcf51c7f77a80706734e572923e9c183b3e512f76e41dc3ef7675f06eb077619d9900bd24270e08ae2c1e3d9085ee6131a55c42d3f916bfbd24d368c68d5002b4b4a9d454307957a5745a541dbd09cf5aebe437072ae6177a34a195a06874c0f170f004a33dfd6fb19857046bad37f0ab3a588c95db2934f0fc0e59c7273a10ccccc093523120189d7f76c2df13ec2a52deaa4b26ca6bf877b09e5679eba89bbe5051b178625d42f569d629bb0aa342a3369eb5922b4dc3fc54ab3bdd81b6fd95cb6441416e60c88547b177eaff29ec42a3f5b26b53bcdd125d2f20e4faa602b8c4dea4da072b88f30d77b5bc8"},
{"0000000000000000000000000000000000000000000000000000000000000005", "0012ff803deee80dfcaa92f0b5345608fd6fac5d0f067cd5a691057d46a5a47170c08ca571fec0b64335045a1c92780f2088cfd2113df6b8466ef48679a0df0ddef88fc0882b71d429216c210ff9e4776f967e1f07038f232c070b8eb541389f8df83a1faa3efeb78a2f3f628cd2a47fe1bfedc38977d741951d1ff3423107d5a8dbe50f96d10968d23e50b6a51246067aac9a20d3dadaaee16e4bd9efe38859df1bd11d3bd357bc072397d6a2dabfc3a3d040e4ac769082b2953a21b918a3c956b50970ca77e7c3ee1df0f049d1f53d74cc10b424f0df1514859fbff3f76b2f8bcdac037fff9a156d3ff0cf659a716fc7f33175fd4bf51fd30bf8c50c9f2fdcd9c78b4f0998f42226b77755f06e1e69d81cad7c7c9b9ca3ab6f0b67ebe173008391b3decf4817815e0926665c33e77ed17996978239601c3bda4f2ccce4a6b4580e458f9794262059c636726ed3fc700317cd6d921892c73ea30847bec7e41e53a4bc5bde53aa65181addb207ca1437a3f6731cb6ee55fd72470bb082db0e0386e30b29734e715b4fe35bdc5e42581a19e1a842cd875befd11262163e2509b615b0641a045808b4c2cc673ca47903c65038ca0d5db4332e8f31d8e654abaa0bf1cbcf1a95e76bd34790d3fdcb88185f81beb6580a87468db2d133daefb57c17f42ae22d2c43eb3a260e055a3e34819c45cd057d6cde27fc09e0da0b06e0ae79c39c23832ed3fde2ef753ceb982920a50c1da48735f9da0598157e2706315af4c0ec0da2387c78dd32e3022ad125c67e27193e511c5773370b974cfc9e00ed2b24c375e1ac4842d022983b2f1489ead8bd7a9ddbe305231f1def0a4a64d916e93741a29c5d4e232adbada96771b1766cd271725affa116486914be5807c7d1b603a6ce68e4d5249d1cd38633e95661c18d70217fe2c3562f52021f37873d8353009c7387559e96636e91b4a07bedae75cbb05c89133a7294b7320ef6275d934472c9ef6cb66a7d954d242bfe9da6df7b3bf5e5f654160f49c1ef1a9c1b2c3042ff522ad6e58ce37455e58920e2efe596c6fc7d140793ba97d53a88c7f8a53672a1d16c43a2c59ff6431c8e88f1a0dd22530af5c20a66779014d69a59d62230e1e2d3079af6d3c7cc59a63ad7ae9366121bcd3e5993d78b22176fb57f0bb8eabe546abfbc119fb54e01a5a708e50464c5d3a9f0d20bc29f815cb57ef8273f83da54d09cdda316654429462f9a2214a11f19db16d4a4052305eb98c779f7bdfc695c56a5e33c09062382158f408b2a46f9fdb7dd84ca024e5ecbf6bb7a08925b569e8f03611911245cf26d9309c9ec1183432f6e0c2f0f9850515bd5e9c4e74fc0e2734799f8a80f66b302a330a273da71e103619064cdd9b07e627d13c93ad77cface39da3a22039e12aeca3886b8c3960122cd9b84cdd3df390c55b2f8cfa95a39f4f8937a2987d9b889a06cc1115642bed17fcf25b79ad92434104f6751d3f69171e183c5bf71e97ae5840451d93510521eedca53457b23457143ab458edb5763de41db1678d106bdfd9987f7e683376058667506550d301c1bc811db3ccb5fc1fcb1e22703e3db5eb9ff7ab943515c43b766ae3bf7c01c984f4cee2a3255705b694954134db59ca537b3a98217d15275dc6203b83269fd02aa3ba9d7984f2d25368422955a1cb5d1793e23f12002cb09a75137eebb4346ea3de0f0e1e1819489f20552e2602418090ce73a80fe77990d81244b50b03e100065bd3d99b603d8e384f21673fb4540796a6e2e062c5f1e148ca1dfeeed75c9f261224a029db20c7e19a1772dccc8a116918f2243e71378717300fc1e160fe2a08ab14c2a5e6f84c3bbc124d7c0f3673dda9c341fa427335179bcff0dd45148a8ff591832906447"},
{"000000000000000000000000000000000000000000000000000000000000019c", "0044a6c2c7e036d77992e156fac954cf173818c6a7231e3de5cf893397c5f1944b7db3b8d62c6e9ebb4a173dd7e335b0eba3c5bb32708cd0d6d1a7729a1aa41b2624d24c1b543d00e19467abe4ae451fa4fed03701aa6d9aa4920b9b4ff320d82573fbbfd67ddfd10145ac57c86fd1b1131d2829f6f67eece783265d676d037f1ca3224e62c55f18e14df4ea250d1c0a78d8b329a39c3325582755d38f557df253dd6a825776bb35042f15da17e070af615115a58335f76789a65e5d8139afef952195d3ead846a725a66cd2ae2b8afb91eb0917a555f42e739ba74de1d009a4897c78dbdfdb110d8427635f89f122c11c858218cecd91ad951918b4078d492826e1eda33482911c21d67e51923a8ef32312cf4a514af8e54be258f2a4f7bdc90e100c380ffb0ac36c91ff2429a94500f577614189ae7f0436aa8339c9dac09657b60341bbd886de496a96c7205aefd100983a8d1a04c90edcaa38ae2b7d31c29f7a59f0754df62d215155e225fe429548453c1845ee3dd95df7130805ce4b169eeb2c6e268656cc9e4f54a37cd4751b3c29652e9ae00eec50476296cc4659e6431a9b4d078f01b0cc88b705f84e824bccaa54aa15b99425510fa91fbed00d9d64b91421a31ce5666884ab5dbcce17058b46cbaf486bb5cf11e8bde5395a95f436217b24fd5d8e428aac71d70457796a4d5929e765f54aa400a8ae709de75dd1a04da83dd15ddad2e2765ec29243549e4777d317fcbee975a358cd447de07259075b1bb32ac0cb485f6f30e4d428d747a53a3afd1cf76a30c27f85d9ae0e2f8924152caf75e26aa77b588775050d94bce6c545c303c370f83609ea51b72eb502280eb0c5a18bccf3c7553c514fc71dbf1edea29a15b3059dc1434f51a167e21c90b59f500aec870e3e50920664f44bd91ec1c5e9d39234cd28604dae1c2fc829033fc5c53407f8018f46332406f433f5325d69f967075bfe83ff9a6e3d8bfca3fa10aa52fb3d947d7fca0601e8c119fd531bf991227141f0f76e29d7fe36d61946f112a314cce6f6d5f5116b2d953394643fab610cd4faab3a8706a08a01f18008ddeb5db90e5d8adf49f7ef69a81a8cf5e729f53542b1bd2a1657f358910dcc7b73f02c2951b500ab05556e8c7ac8c75c73792327c1f0b8ef82b57fc372e94a3e5e5907ed75a86c039593dcdf119ead2315a20f92268f19f233ba9b26169f7171e6513906af76c206c099dc3232337a2ba21a4e2e8eab4d72f8a0ccc26d632765ce9f22565e7f2dbfabfd08dd8a7efa2de4a4a1b7c35f04145f80b90d8211143f4767bbb5f44764243f365604321790bd44f522f4d2f18599d2c3071f11d3283a73afda82a0189d277a0d4a38fab1be535f26f85480ff388d3b5837b38ad98353c72103c306eca0478951fa9f7363f7035ae7fc0d5e01fb1f8b274bd4dd2f2306165d28c32ec5ed3986db2c2fc9de53ba4a7de5c33b1f9c3db80b0472ffc9d4058cfe3ad23b0da9b28a97a71fe57b103893dd050722d4d0c9f1a4d7440335d690795fe1049765770ca024cfd78bc27dae60c5621a40b891410bf55a04a9cc383ec4cec1096bb829ed458cd2d56d1058d4396848c091723d8175d5e5024cc9a7d4d08012e0776a7e46776722fe84eb37d659822d7b12374503b7c7e11a110959d57462e501a3668d7cba59be26344e73240af87f97d4dff47f1b4dab89be77baa4290c3b114afbc31a4ac79f41d012a7cd2564f72e7b5624f292e5c49b7bd54e6689c2087292de9ea797c84004984f29deed27496e0a431a31dec199b16917a7906497cc35709d6c5bcb329a1724d4f896bca9593c0a0d258e2e5b8e6469d627b23a71c007b12118ecc9bf16a5e404f1618df963d8252e85b564797ed58d42f2"},
{"0000000000000000000000000000000000000000000000000000000000000006", "0005c144030ab585ab2a30eab225663dc7ced30fcc62184f9a78e7dc0d45d416e5396b251235de32785203189426cb289dd3ef1440623b8bd69b7deddbf8ec0da47fb7e5c4c501c24bc5d47e3c57d97b3db5cac302f3fc93f6c8529fad480a83865f7a0ab7a43893920af3b5e6a7d002a3cdefb21e0f477100a084fc6a0d594c93818d69af5b5cfbf5f9244fc5fe4ec2f8e28d62d2652689255bc12b4f68cf3571152e57e89de0fe08c4c948f855480720e7221e37e35d1add6c9cbb1f264c75b3eed17946ccb57282e6aa6081344e78324612a0c1aea3a1b5ff3bc1337eae35f04b5f719f4170138a1a1fd1d76dabcbe72268da79d8d52efc6a7f920a8b00bd71865e644d5f5717dfe02f9340b59fbece26325c4f45d3deb319d7058d777372417dadaeb3071da6b45e30d68438ed2c04ef7ef50e91bebf5550372615857d2eaf7ef39a60264de575e1063b4452cd46052062b7a3a346fb607822194d5b3f41366d0b1311172b3ace03d684d37534a85b905ebbda697cfb47a0181cbbb519995d2dd0f29209cfd8f4e2e54ebc6cb12f750cf7549bcded308b27eb626d80ee089b7bae352ba3dda65b1ea4dffaeb99900a6b8b167443192b45338a83a1948d61519c34e48b58cbd5e5e00d3278a82c57127c44ce3db531f92497a1d209560aeaddccc1466537e05de898e3af70e4c4c66b6565d14c1c2ff307a3369bd59cc1cf98dc05f85ff0c516cb07fdfa23241022aea13c2c09fbac36dfcdf74739e3b97e165f0c802c5017663e5d6bc411d804ad6025b21f72ded44bd0a58da4943a27dcd007f858c091f3111efd437b140a0c8d131b5b24eb07752f9aaf09f9c2f57f282615e03b5f5096db69420e43a7856ef021f3df725c981512e15e7fc817e7a75c518bbea553ea76bf58c78b18474dc6c9573d82e528832a764d785d4ab717c1a5004a53aeb8d998e0eb2b13e9d0389b8da16758bb4a0327146e48c8a92d757a19ab5fef4973bb775dee3b07d93d4470c3032e4d32f44492d4cb69cddf51bb0c49b92545cc579160bf2316c96cf18645e46b3fcf7305a54a24e3447c573333532e3fba4f499a90f3d7872da9a75af75105895f9cf375ab62d60986b8ec3baa1eca190fa3cdb826944ba6f09dda27fdbf497c0fad26a81c6a75b1e8c5c2a862d3844722f5033e7c5d5001a8a1403e6d5bbd9a31f315f69e4d813c7b8ce004057741d4db90f7bb697d42fc6020516359787df443063ce1dc3e567b85c13c91d07798396d9e11b508ff28640d3e639068d7a7c945e4c5fbc12e700edd9af304f88b2dd967ad45afe550fe5423865961207505af13d536347ae5eee3b08831dbadc0e2bd629af93af90799cade484e2e79fa66c147adb4e48ee1fcfca9c012660d1ef98802fdc3c3f3ae65ce4362be8e36313302f5bc7e360bff86798a303bd7a540ed224c5197a67b597df4bf6722857338c92809cb95b6d02c1706a40ade0d139c0b9d1bf985d27345b1b79678cb54967b32f19e094a8eec4d8719e3fba37af2fd81add298460464c5513d81b6cb46849092a98f5ad0cc57ffeaff04c386e516193554e2f80142841270c8fd784e45d80693a5224d980abaea4905ce4b425905dd50fef12018dfca457109fbe36313925a8d15dde64686d8c12406902f83814f81b10ee4d0b3e97ad0d8dfa5ebf09226d213b177db69f5613cb4ccfcafc8ad4c664ab5b8127f94364851dc031177924ba3d6a3659538d74c151dcd7103680a1e8b460b15656c7d82e601639cc8eb0a512b995e84275aded8121409ddcf362c2d13f7eb0c83a459d662893148d5a81f6572803663e0349d9d1884d2e5c5b67d35ff8cd697e0ea993f4dd49eefcb31f0b482228f04a14f125328ce2de5d5dfccdcee76"},
{"0000000000000000000000000000000000000000000000000000000000000006", "003ed39a7e92e5c4a21132e5d32301a1d8376fba6b1b011feabb95cf19a91e532449dc35bdde6b54a8a9210d3a3e908dd2bfdf49737bde6880ae349f54f77d4468c339a4d3ea0bf826c8bf51ef9b7e4f529ace2f1342742b3c29a0c7eff632e2aaaab799cd975faf7928b945eed88d64b897e6d4423064c13f2734fceb31223eb679cf25d601784093a7df70223a0f4abf1ecb2fbc0b67c81c933f6a98537d98780de1293d5d342200a0a816f7052a853329f4be39baabdde2ce78bb6e15903a4bc4320107ba665186af678d0a25a118c69d18672bee3c063b5ca84154ac19b5de2e067699d6213afae214b651167de318179639e90912282f11cb7d01269728c7263121514e29a82b5a8c1bc3035efbb71c950118b2ed530393bcab338f6194ff3a219f306a0efcc74305b3029bd08085b34ccd51da11a057c78a5232050700d89fb13acf455c854e448a04a6db4f82011e91551e0de0507b57451d44f5e079990378bf2c1734ce15df9536bedaab35152031d15accf9d6e07d1365e321d153c78f7b51e843e6cc194eaf473d92074498832402e79a0d6e3427ce73dd44168bbdb7a8d80167dbc7e21a2d45c38a80c16638230a612816cf60045d07592355d1e712bba058e2062e24627f14a77003c57398c3462880961a83c6286bd3953f43f265f34874ab1c53e8983d6b8ee9e286f37bbeb224bca435081962a95384bb907a07f459c737e492d0463b8ac62e554b8a04ea4f0f750314d9126795a60f91bbfa671e2b44e467a762195e9bf5cce7e41989b35ef6683449cdc3bc6e1b9827a3dfa68152d32207062bbf7a590978019a45545b5366f0c135629b9e61c76c1e6646136d86f73921d437d3e60981016a3e97a8847e49ab0bd575eff4d090c57b6c112442c2ac12c0463c00211c356185b5700be1c3a2d35231c2b828f994d0e61801cde136bd80c65459213124bc40d6ce33969f9d0a1fb491f2bb53e543f866e2c0d33fcc1a4ca6d5ea050ba5ef29bdc437aaabe964e9f754be99a76bb4f5e00e5b14ca0ed5ed39b8c1b74080fef37eb522b831260a39bdcb6f1c6a39f78404a591eb8b113087ee8cea3851f4afe15e4b6b08a8f9c90757cdda8a0e34b953113657baf55529656dd0e7b4db7dd7d3061c5d31901d1d35adae11c915e7a137b7b957db868475ff916f0b41ad69861698f778dbb0b61297cb26a27dbbceb21bc90e161f8f79e5eb70354c9a68afd15882b4909c1d9e70f231ab66b3a2d3b7178bf2011232fb9325b71f06c79b015c224ef3bd73a623d6f122b7a8df28710dcc9ed902e749cf4a62111b6bad791daba84ea8753c02ec8edddda8faffef24bf624a9de94efd3525f413cfe6fd6d26a91da6fc1b3ed564031b89b75f43c6512aebe2fb9fa79537f7b6a1f46b986b08c49fa907083cf859f2831692bc06d1f8ef6be56108324c59bf1bfb16c6f609185374f6e29d5bf63bc8c9f8b0b14b12b3a8de7f655447440ae51f9b45efad7700fd86a01a9c874b59e51e71518bf1ef1ac15528b0c9bebf1619c29cb3ad4fead6b496c5cf75dd1fba5d3719f650224414f92f8fad496109347b96651cc5cd2e5f827326c2ee6143194e2d750f54947e68466e288a5b205c344854cf035d6c82fa0cc6d04bf36ccfb1ba7f55f40b81e31e585db1e126d1ab232c663cbacdc87e9a892d3bbc4d4e9352b4d65663ee1854cec0fd7c8803931b34cbca8862b30fad1f151aecdae2525b7f7b32942221c42cff1799a2fb8a23a2933c1d0775f97c1857133e50bd860aa25a63a7b504d0acd46ea16b1cb0934182bf497a9ee3e9f1b5647809d8e6c3440e5fc23614d745a10572ce5bddf0d4a05db220a5911850b1a11c745ffd85b7de21c1d043bdf0f954c55e2add53fa"},
{"0000000000000000000000000000000000000000000000000000000000000010", "01f460cd7acc8a0b205c813580297a189abbbbec6f02882b11ce42c03b32a8e1f53494bf0979a5d75d0f243a1c8148556666b54d931f3ddbae8573b5f7f8a230792b71b42aa519f2b256e5433fa0330cd8dd449f1d51abfa6aedcf97b73f83dc6ba62dfddff4b4a16a201b128fdfa5be599b20245c5fc32e7288f33ea0ad37a1c4ea0a169091459e5877895d844ad1ba396baf4b96fab70ae0215fbfc4e65a07dad30613f23bc44e027ea8a5bd07a71ab7f6f0b110b918f1db889605a323938aa2f4ca7bca60e7d7d629ea3dda8dff7909670d5862c82258872aedd7258b9cd031b1eb1eb4443729375faf14e654e7373dc5c870b8969eb9755f540c048f0a5af6d02aa78b18b5af4e6623328548f5a1891b37b913be6e5a03b504b2003c3083095e413eb23321d6c16c61174a2d3ea752687de16877a5ee1e20b265791b4b361f4bdfe09196ee443c5166a039b7f73e071447c264c93a65c277a4d167cff245af335a10030c719a76506755bb871bb50eea2dba59f8203e727c0fb1bb1d2a11d227bfcb47397ee588332a511e2cfb36b909c80d7a350bea3b338d36cc29a917b0bc9a7f0b0b6db40c43705cc59004203e6db18950b8f1dff425fdd20e50d3b746c7f8e2636f42cb3d4c7f904e212456afaca33839cfc83c236153a6425782b63ec95a3db1f6cc6993b3bfbe1bc62fb237c3768828f960380b971587b4e34cf3a39ee11f8ad155fa149bb7583a10ac6f49140feb257f0567616c770d13d8bcdfb9511481622e0b1b7b17c1ffb4a514f0e32e21b8b3ab201d8492ee8d07af618212f4ed0c674895ef32d208f20f995eb6a03a365dd62b61d3b3283ae2b285dc40316267f5c4c9a305498491a7f12ac832628a703743051c2bdfea3c563c38c4a885891733242f571f7b27b42597c15e47ca00cbaf8666ba6c4a24ddfba135be6b0622c7576b44658ee1919066c88503193fa44cec890fae38a4e1f03a03e5719413983d957d635ddd46100fb9c4eefeb6d12db755b8b4adef17b234477949b022ade6f83129ca9fee144350d3d87bd9d7681d426b0818a0dd7a02ec51f511f20697ba1805c025d379071d7cc57a1863f1d727dae3a7a243463596fcbd4cc12ac3d2e498d56b2b9472e5ef68cbb4edf26d5c5dd04344d68e1b97eb0acae9c523994ca3a5f73698fc1d0edd6f1219cca2707acbc34ceec10f9269f9db54fd111f1f4bef2773e54b81f25745485ded35e0d7beac2faba6879f201f8f50b603ef55bdbfe1a1d3b8ed484fdeaca8ccd9dc954b8bc5c4c5b709a5f18cd50e4e18ecf7cff8d09badbe1cf364b24b0f865e513cb5c120a824e6a79bfb498b3a658deb4af919fa5afd70c6263f07929f904da3c243d7054c72111b5d93fd01c42b1ffbd59791919d544b34c8346dc74733d37a508d071155e5969427f52f32d699256ef01b07f078b4c30f0b0e50cb65d0fbe336915e51327fc46e4e1ae8dd1973e3e93a09c83d2456788416fcef1242031a84164d990c7ce5a039bd8519a584d3bebbe1f74c3c498d0b403a9b7a8e2a748333e57263bbc615c9be7a130a1f12e161db8c67509fd1a658d54e157671c3bc8b011119df87fc9c05dd506445e437414741a96a51238012658177c5eeef5995bca3107556f78a3bd1b7530d07a1fbbb8f108f8b5ead10d6e173cc086755502c6c3703b2f0a94deec5c9ff655450daeb79cd51fe4d16094a9381f40b747ef5fda524f175679dcfd7f5cceb24b84c84e4377a2dcffb23ced2fe2765345dd25dff214b8a3eff167d13b9c852a42fb02ad7163bfa3dcb2435a4a048ec1a37e9a1598edf66463bc70e7f6ebd2cc05b3af6d705295b190989757d9b832e2b9e02be50a62e6472e04709264d8613c7f0cb86152bd1e664"},
{"0000000000000000000000000000000000000000000000000000000000000004", "000f0222044557a1a3f1e59f77c1d05eb6ca77aa3b011d436e92d453d2fc1270b7458c8c56851fbb55dc031692e27609e19aeeef8101bbf568184f709729b828ccb31de159a270f8e6d4671be090c75b5cdbe16810635a9ad2fbbdbfe479550772b8a8de02dd74497929c872fd55cad6809ef93799e56019d2990196176027a2fd58aaa05a5d32cf82f9d9df9f65338dded4224fb50502d8d477a346460780773f38eeb5ad166900023e1455065ef0176fe0c27f6ef561ab5a1c7d804f30abe3f3f4a1f8ff19e5176c74d39d425f9b3317e20268e3b22385ecf08943d1f3a157f936a784b9dc754216efbd3eb70cbbc967045751f3c9facdedb6ad7502c1eabd788952399cd851f54af0d73938206ba4b00d692288f464739b46e341208a9f788ebe08baa4e2094421c80d0f4884b2d8830a41357585097fed6c38126916fff54720d397c7114dfcec0efd85446d985200117357d78df645f41575c10c5eb452dc9d98b0aa4afe3651a82d184dc7b5460f4ffbe00d86487e7c44049591448151f0cae11982c10d74be720d2f51b6110e0015953444e58d493f830f15329981aede986563087bd9cf4268fd574deb5664cde606eeb910f7a5261b6cccb5314c16746f2c21dbbf2ef63ceecf2b1c0911fd341aca65aea993aee23a95210edcab23cc503c19b309c7c12a3741572bc35afca20261c1a8ffa2f90abab9b6ac85e587a198043cb3acff3535e9fc450435bd9d87edf33135b48f443124ebdd51cddc106f5033961412b6e10cc30e4cc597d1d0afe25ff4ba2d6c35edea841f29c285a36c2524514cfb4afa363ecb330ad468df81aa64c5d599d29c5b3c716b0e4bfc243063427363efee2cfbaa354927bf6512beea4559aa651b96ccbb6ad49f2f0204f1dfe831ccb917c5f091e9405254e9325515c59daee6fa753e9962ca02feb13900a903ddff290cd582a314180ff84bae4ae6f98ad208f71047f488afa506e8a11e1633b6a91f63abcd0e33fabe25baefc7e1dc9c589557693d027699bf96b3498f5b2cd69e57290e5bd79eaad5fe82dbda3753f00bdc9092d251c8611963345bc2f744020c839e027c0df789cef00b02aed51178c555ee77eab0c699fb260cc72b22619681ed38b408527561e122f6767f7f832493fd9293970bf78c41d7647bef7ef2fca8f8f3420857f6dc5b4f2ac70283a6e912c7ac4a0a4a1260192e2475c718f1d587ec09b566614358c9c92374c3e41a9f96605d4f4bd740495273ade22ff25f8ddcb4491de9fecf7f9efc85ce0a383be2684a0a272f9f99491e4b7aa3623a0f6df6e645fc95780fef3a0ade48a121064ec1714a5d06a551a313595dd755f9957841f427d92c33e5e8ff235dc1b7f03662df4a99a457a2562d4663d8f2ea1347851604eb5aebd1b5bd7d9e933c049fdca62e62a14b703ce720c23c32da401b369ca82207871ea5ca82eafeb0f5ea82713fa6125e3b48f80c000ae32a742259d522a0cc2c2015d600c49dc7991f60bd210f9c9dada0ae6386b24cb67d8e5db92733129bb15cbba0ec1f78df486de97cb2f2eb65d772d830f39d2f8b586244fb43e9fdff752bff65c1fde49f164a5bdd63dc13dd2b6967153ce2d1c28254d68e445470cb36433c429df67cc6f9fbd732820b4557daf607a4f17133cfe9556c55936f61bcbf6eebbfdaa1d7162c4d597908760bcc03a3eb086da2ca160cb0b2711a11e3b6a6e8caa5c72521b61f3c961182d36c8bae23b34a83be9610013bec8266add7cbab17db5c05d7098af7b85af4f9cbcdfe3c1fe1725ac31a0f3afefd1ef2ca0de648733dbcf382963537b9222c5598e91f1964f654201bdab93bd9922323ca3bbd9e283930544967ecfb419fed3f6a569b1b615b3e5f4d43fccc6c"},
{"0000000000000000000000000000000000000000000000000000000000000027", "005b86c33be0c0b9bbb13648ebcc428e9584dc3b1215f609aeeb6cb103902079bef67829e6eba839b18a0454d23f63c8abd5a60ba3a9622775053b65bce948074be9e449eb2fa5adcb00abefbd2aa87c37797898015bf562c6df6768fc2f324e0ae9bfbcdded49fd0d19b4a99422ec804bb698b7672e3d1e0f1aefbc2deb0383270ea4a1efc9eb9f846883ca151224baf2ba1226b9bbaee70dd3e1d1322b6cccf4cf3339e039e0fb0af14da450d491daca2602e21753413e0ff9bd284d57277529c8964155aaf987abe97c80b296df9a0b830ebc25ea6228fbedd5a9c1177b32b92905ae0e02aa1c740e90cadd6a5bba3703e2e9c284bea9a03bd97f123fa497110a5e3a89fa324c20315aad62469cd61813ee51d1cd788feff6f133bbb4f77cae23aa1346321b67aa9206bc3de9f11256c7165b1b12fb95fcd80a1cc3dc637ddb2cc36e3ba464d0395bf983e29d032905a4f431732ea6e7bd05e41e5046ab0ecf463edd4b0bdd34df6dc4dc2a8d1804ab2ff26a6db43cd5dc1507967deb30de73efeede308d8af684987420587e670850feb9851e5e25bb9fb089687aa9a52edf5455e6113a31a6e4b0032d9c644411ccb4930681fbfe914342e67fa643566df7a56e974445f7cb6effa4385f7b2153444e628d76c73c6468eb4bd2801288feb5cba8310266b5856022631a5c64dbb1541aa5cefd7885550b016fe5271a4a69fe0ad602a947e8d229f8d8b1a11454d306960c36e2ebc3e32efa38648eb90d3b66982b65fb40b96e51ddb129b2f40b25749d6e0cabf6a437b73fe5d020c9730a60a55de76e953678385b6bb116a342c343ca8ba2773f724112bd9d2247d632e19e58d262f5ff31329ba37aa5a27f4e932e324f1c18ac261b249700251233554303986fa5426d1a88090fd62d891ae844e4b69ff1bf93f64e7787d114f033db9a0278179b640f0a7fe49303549745339ded54f82d7f86b34ff6b8a521358fa309e1eefc278f31873ad5c20adb8118cf5543b929b884ca85cee8fadae15b63045ca6fc27555f5ba35c6e55cd4b3856fa0fe21d6b0a07dfce73e9837ed34176607f16b997c85b61c9a28323cef1ed40abfd05b6e5a7533fce75d76fa27fc9b9146da498c6097e015fedb2cad2e5d401a0b1566b4a4ce8cbd75d54e0a38378f861725318025931584f860300cb85a792c614ed42829d29a908e524ae4aee29040973ba4bca0db3d912f28d377a5da0f451d3812b067659b0e85d1aa163cd21cbae92098353cb9ee68a2a5b6a47e255885f648df501adde230e46f7b3ba09062a6e5b76e1c1efebd1c40128c39e854b689dc47815d03b9c56a64bfd450f07658ac30a12215efac19e15cad4027d4993b1082b83a535eec39114ebacf6241b5e0d7733da8ef6ea94637b61cf08b747083b1701097c9f6c9ee6b6438ed372ac891a1bb0cec31ce807120bcc734e157a994f9ca13eb73aff8954d3b1cb6c14e1dce7b2971547173b75e388c69439aed67bdbf818200a08c232da51fa96c1af22e705e2c78cdc7e090f480c3e9a29fb5b8321f315c6c10dfcfeab4d25622d48a2689cced2447950d7d02fe63357a3399ddf5c11b796afa0081f9eaec8b1dab096c2374736ff212a348446626e91c09d247a73a7a87821e8edf4ce516f0e833e4bd293b7e3c69d4b2f2c751057c80d1f46da516d93cd0fecc4bdc51095e75b414a259a4fbe44e810293ecfc6696f5f5832324b6e76e87d537a38cb6c21f2ae1841da27d744c8d489f5e1dae57976d552a80eeb68f91a2cacd3ed63214d18b8fa68fe792db4674bfb2647badcec654084eabab0fd39e3582a3e2efa10e372ee6655bfe139466336ad56f91310241f15761113d1501b53094fab3522785326d14cf9564b3290"},
{"0000000000000000000000000000000000000000000000000000000000000400", "003d8c676b8be132abb260199b5e36a02f1db1666c3050d1928377ea75de7a4a8271fc29c33d619cd41e02aede70c18dfd2077b229b062620ac6e0bd5c5fdc0e808b5133962da7aa9bf4e608643cede0dd1bebeb0cdd73b15ca6d7cbb805e1f7545fc5953e860a87c24daba46415944de74f2ee8dca4e27e6643411f86f643a40333cc7a1cdfe5e424a720b582455cc20e6280640ecbeb63e9654587101670c7cefe51cfd94fc056012235962c417145a4b328bc4047c20a7e22dd2fb3145230b15f105331bc8da1fa522495c2450af9a4120535ddfa26060fab00b8530773de90ed4b48f88c8d05bd2d2f2f544413d3c3253c09cfaf93d2cabfbd38034a292600df56d7b40151096fc83024cfb1510e201b936caa48c9a6b0cd6b664c2efd412df3bddee7850c151e161fe6682d96e8a1fbc163560e2905381ee81fd608ffe39bc5b961185216689357a20c675abe350183f33b90830cdccc7d71291b49802b5df67d2aee649f3333d1708b23c0897658e3d11b4208cf9c510e28a3ac2007537adea74fb491c15e82cae8b19e70f45c339c1fc4578630c682997daa600f92b6d77ff0880dfb72d6dc15716f9b5a26361bb691fa09ba727ae912afe9d2d30b39a18948b40d8bae20897838bacd3f13876e19b0093e63f4d372457e476a50e329701d3a1f0e9fac56e379a530c8a22b192ce9389c24e76d7d05ed38c79c468a75a35de0a96c1ca37b1ef99beb3d1641c44d89d50e85848162877a613f20a913716c930f559b0c634fa8639cfb558ad2becebe1318d4cf4a1bff5f925c6acabd78a484b5b53a926933d79c56750c3181cdef562857c1e1e10950b87130ad67b2b04f1ebf03c56fd660e1d75a979f2fdf9bbeab87bfef081a6576f9d114b5f4ffc6123c2ca185e8a1769935f71b094be549d5da42b4f6a1cf06ad0f809a6fc7f9b1014091005f050da648c3575ad0f6eb5b7de65dbbba773573f277af77058906286ead65aed696f1b60bcf0262095fa2d98eed1ce0034be5f2d89e786c94fcb6105a523aec17bb618169d6bb0357d749dfdc79a8420dd42acce40da69d48b8f5abf4b11ef692e67c602238080344286a988ff4d8656c36597c32b02bb6f5eb4a369c15205fa20bc1a42937496cb8f29811ddf80466522f6960a479a1922dc793c46cad0edc0f792204014a8e7c30aef1ab8830e697533dfba9fa1f1efe3f3bea6471b42b25d39899382a0ac55cc25c5f1682fc01a12336d049e436dbc7045614fa4c9921163539a32bff070402b07541ef61e3953f6d6925463cdc3b570d853461054806953254b31e7ef6bb819bcc17b0d70e4ed268b0970d7105f04569bf42fe755fa0bed9151ee43b200e2f390decd202a1e5a8d48dca14b22fca3c9dedc150e4a33b677179cfbbd8b7769fdafcf87b0838ca64f7703499f9b4617c753ff63890a5f5b5e20c4d41cf36d9d157eecbd255ee39b7a4aed348a40b0d574acf9ce5d093df4724d06777a3c6d4fbbe6dfb173a75acbf6d45ab791dc5f96ae3e3727c21fc31cc09a93eae980a9375dd34e4a617600d66c12b3e5022467514f39b2334b9ad02772a1b628512c7487bd7500cd002cd2ee4cb8595e20234b63ee640bd10d9327d13bd116e3c0e49b38f4d941b2c5e88f6a74bdd4e4c0bb95502d0430e746ade08f495d471c30d653a63aa1a00376442abfc876f7965e91f7f4171c627193d081244b8ddd9995fb9bc33e42522ba2cba2c5cb9fc701fb331628b90d9ddf5ddd6e428f9a4ea37699473190c3c2a991e8fd20dba1214ec976174460362bfe5cf1fc56cb3234e1d8bbb52a25a343571ed7abd3116660ed3519cbe29d29f9b3e66c74dbddeb2cee97980ba1f4a5c8952884bad4eace33884e38e71ac71b8fe2e"},
{"0000000000000000000000000000000000000000000000000000000000000004", "02c7a8e145dcbc037ba5031cb2d7d5159f344d3c155661bd830f2be755ac66a63f886c8ed9da84707975143bf25ef752693ef6d46171d9c2a7115c4f7174671a4234182152832f6358947c17f4635788035ed5c61cbad5919262ccf96226f3533855083abb141857c1387b1fbc4399a01b813995de8d4455b9896f978acf2113294163df9675fc5233c4fd7e42b1bd925e1f34400a57dbd696742b8a98a668534b0eaab085f6f853034eaaed58649f91e1c0c0c0c4d9d0a036572dd0172b177af8ed96a24ec177046917f914a2a4bcb695e505e0db803fd3a68926a900996b5c3dcc7f608d7d0b3fd7c5f771efa073b7fc645a5952c58ab416d6f08c0580a0f5e844e7e77f40240499ec25263578fbc6ff11102fe6668ccb50871281ce4ca43afc907b6c0c641359518b9c883aed826f92db962a4eda0732357257240661e1dbe62df3c20387d82d605d92fc2f5d44c1048c0ab932d1cfdee2956151983a8e4212969cd0bf2d45ef4c0e4d9b8b9aecc7574e6346c26f881f231818c1297be15509412a0a53ca61bab2dda5091ac21b29f266cd6e523f20d6f084ae4dfa1a59ce947c50c4079bbd175b0deda888b94404ab4ef79d87ebbbc43b26913a5dce4dad91220a66edf7f7538ddc4d79ab991121429e86affe55bedba4737d2c9725d157f1b18e35394bb95f94a79b717423ff75f483160e71da6aeb0dcfcae5b18ee5f8f7fc50e8b34681f15722d243cd1115b663f2564b83e450b370685606c931935392951d6e2b93ed47a02a4e0201d84c268238c6d0d9aa483660f7484e3865d5fcd043c59048897704467b38ab1c882ce2404c881dd043a7a6c3f20f561eba5bbd032aa1a791e814ab66b80283ab3d314695359e6ff4202bfc2a941f6f3715bc0344ea1ac8e76a9d587caad4325f85bcf42317db7d42d58401bd8395894f8e6ffb03a129536c472bd1b673f3b6349e478ac04fdfb49d117919a6e639d243ff4d91423716ee32bbba5b2e3d0be97cd6215c38eb8ea14b52c7ff7c777b059fc8cf13a4324d748881549d99d17297b527367708161eb0046c156c004439350b2070952957e69853d315e7b02707652cdcef3ff7cb9be8d6117e27a2932ab9e1aa2475fe3d87f7a815bf39c35702b2c6c1a4e59c0e602ec09fc6f42985c37d1647a23be51f9244f8d3cee505a61f81a1e74773bce972027d2d8a99e60e341ab115060242c38d23b2be25626464dc3b719ec77e5c6d0bf70adcce43541ee289417d21337202aaea3ec52b1512ffc1c3aedd3fb6e2e425a35807f9fa3450f9c413416cef9508c592e195a3c8b3b7b98dcff57794443afb433be1a91fcbc588d6cd5a40c1e6105939328c1bc6c6e7ad47e553838243b509fd8425a4573bef721c7b5bff844ace9ddba7879f5df0bdf5f4fa11e8a4046bc1223614355bd28de1ef7b9e32e5c2fdb8c64c43a9aeb368f09fd5fe6775d7e735e69a0bebdc8f950fa96295ecb3e163dde88298db15400930d62db165255554cfe994836d9f2726e19de8d8c2a6ac9e9373048c31797636d7a5ecafd81d10e6265a9a4458d6640f6956c741e8b8c3864859dd41d92e269106f9e1f30b290ff9a689954de793d2955b9dcc94da210eed5f2b7099cee30ca705041344f069c345975829bcb4dd04f8f475534ad6b4822c611ad3c79d485f213707080f8378d26f44211d2c29130c7dae6449453c1e349a07db2d5bbe02f619cf08a1778c6488e9b2203a2eed1f53093e789186b5305179cc2669e71a92af9d62540789c8d671ca7480e9f370c65629254440025a07bd3929757b215b887ff2201469f6e10cf1bb4d7fc6f016265d5754660e8373217553a04f3baf18069b97953f15a460dd231fd773220752c852e24deb17789ea3"},
{"0000000000000000000000000000000000000000000000000000000000000000", "00ff597115286b1d48fcf26e094c5f0179084e36590811fdf3c2c8d6fbca0604154cc45f4b7389bf877f02e1e15da306595c72a8c0bbdcbaafd4841765ea5b0414d9b2d58d222e919dd7e80578a9cdffbb5e5fec03f3f942970a48c51cf1fa3377ed4f4e99d31af5e205f4954d711d9e4518fa03ded777b4abfd307ff1b2078f66bac850a2ad00788539d5676323e53fbf96781c10cd212413a922b9c7620959dc577d93e51a1c2d0ebafaa45068c8e9bde940f4d22565f2b2bf1aba461b3631efcb513a4bda6f844b922735c5296d3a5ff2174cb5d0924a4be38ab963f7312aaef9acb01e2d4d34a326e086e6ca9bfeea83994521296f835c9e258310f142f9268727b4f5d3942ac274631a34c0175aa71a56bd4e36603f3b179f732171beaf99ff5f105ca9169d2e277acce7ab57a4d8bf96effd2a90f5dc0cce1c1396aae890eb489d96c34a8cedb1918b04ed417d01b0b1d556d796fbc99340d3a1fd28aee83218113b02b7d114ed956a1fdccdd11362d5a78067a62489fa3d8b1d82ed558a58c8d084d4eb6180422af7ba9ae046d14faaf7e39ccffe43b51d3a5e6cc22561337c25081df1aab24bd075c8d400f3dec2b224a87f1c75c80ad51f52678edf17605401be2940f034f171ba032d265ae18552c99f8f5cb86292b052716e0dd3fb9588379d6ae4400e55db9bb53539eeed8b75eccd30b5ce03aec61b2513fd75d41856cfe5c64ea213919464f2127b75557a6cb5d7fb104949a07e8e6b8bb93c997c12bcf4d4ce5302ecafed32900dfc2040dc63c6f8a62854a2415ed01e088d4b25cf9ce32bca7cd57d047f102621eb17ca840f945d664ea2725b26cc593ab75d1631c68249528e1d55a436bc6847a1f6ede87baa0a21a426f3ed5bb224f2d2b2307ad37b9550c83c66502cf6fdf739261f97ba3ce385e4eb13a6bee4dce6bb0350257e03e5ecdfa9e221c34e1c2e05bd887f2b2915015d17d6200ba94a6d824708ada25e60c5bf55851e230160b852d4479b6be815f0de92e2a413fd59272ecef4673932eb67bb6fe353ac2a67159f495fca5b064ff60bafa75b35f5b0f0dc3166ad176c665dbc780e25be8884119b63dc2d5343e171eef5bd789596861be80ee96adde4efffd92325c4d2fff92fde79baf14a633d40cbd49ab9682ae9a33b53bd0e8693158ffe0464677ec4e0fadfcedc633508be32c1a3c23e5a53163e3434bdf9e38bd69f53fed876032609eb38d5652a85b4e0b0db85d3e7f5c5a243dac7ba0ea539af362b18aff205a6620ff8013681fc3838b9be8b5782e009b512df6a311c3deb06b0ae03c51cfa66379fd84936d48b57576a010bec1673eea1a08e59aa86541c6d1b7377be7c224169318f550af7f9c2e2a236b7bb4c3335975319141c018165f88ab953b54b6be0ff5e8e041b118c35949809c423d207384e6f597f50cff7d82671751cf3b54e3be0796278923c6d8d1eba4e4b950e3c7106a91359097e13d13466b24b2cac26e82829135ead0f70983c7cf63ae382f0a94971eee996d9d308147debbf57b36f558542e84d4d27badc70fed9810a7095bff446a1a4e400710a13e565be4285389e600f7807104585c190ee5d359568c3ac3efde2b9cea316130d7fd2a34e25a674e40c99f103052af7566843129a10c788d35a6bee5dc2bf37a31e916b3833854c501adb7e32299cd98c1d38e883dfa72b2f6c3c0b391848135358defb635fd4a7d76bd086160cd41b1db22aa773aadbda72774bdc22e5cf613dea734798773a208f51686db70b61be5625d53ad7f1c66b1dbbe7c9240b12536ff2ab91bc3515a4a33caa21e5199bcab32d795c5e9b93985bd99f1daa2c78ccbb6bc41d6a866f569bb541b8d135cd5dbaa2fc6e783b391c9a6e29"},
{"000000000000000000000000000000000000000000000000000000000000000b", "000f72279dcb3abb7879e4072acde4a253c658f93912d41c7c01a4ad95d9bde241c14b335c9ff8bbccac05fbe515c44e2485eae2823e2eac8695a672d15dc111f6e0c1344df74ae281c3521f768bb5b2577fbcf20acccfa3e60d7cd162a6426136ef375a9f273c408e13b98f1724d3f7e7829da3d30bc6a38968e44ef4330b40b214fa06f629264526667d78c341b5f8f61c331cd35430c8e147a730fb21e2536f60f0cd5a5dbbe501e6c16b9d42bf01d5e800ecb3c09075e5ddb957180da3ce20e8977f3bec4592cc4ff65c9def5433e41f088c1568cc899eec79caf09b6af2d6118496d48cdd2c32a1db0e29b901adc92343224a18b53a5ced6d94102d9c1268e4c327d33ac41db63a5b06194a17044e30673df9965605ad2508b7e8a76ae3aef8cf7fce591255f58e294f69df994282cd86d3e2119b785e121c7a59369c54aaa477adc8697651d6c813ac841dff600c8207926c4981f1d03405fcc1c44da67e66744b4813c569f8b81504b1f40ca223ac313e8da1659f05830cc58d2b0b97617d94a5d3d6b846b3fe64d9ba4e8f3b29959c9b56d5e4e61d494079789762be21b788c8112d9a406dddabe794389194af5004b9698f7278001169933968522e2d568e07c5706101ce7558b74b781b9b5d24fdde87f7a5b458befef5b58f6a197bad9b27317e23189fb5d9fb7d2307ca32ab81f2d85e812f0fa89e711d49e866bd4682882335dc0e6a98f978ab7dd0dbf86bee4bd7bfbe89692c4dc90efe437cedf434855d085b9b0f4dd826d54f456cb0aa349873e7d234d8631cc10faa7abc6cf35a8cbc371756dbfcec0b18cadf98c5923e119cbca4bc2a3b7e6b7d955fb01668eb1b73b0aced87f59249596968e96edcaa3e95a71f944e61bb49779b99a97607b4c21905f4ad76f29a31bda5ea2457be7542557568d9d6f9995a6f0c116400897c496db996bfd015d2bfed9b51a67559373d8d33371a9e5b601fcf4571f3965fd155529aeede7c8a07f436d9c58be0307eb722b3891b845a70c174dcd23dd8ca0a5f34f1b9e0ded52c32daa005752336ba4f290c67dad7370723fe9c454471dcc36a7ba1ddc7f168cbd7aabff09c0bcefc7994f8702d36afae79df06480a8c1f491e9097d8650570f65239657934da7d5687e0d6022ee5a289ec8eaac5fbed13d2c39217fc8f034be25bae7066d5b31a614756a839ddc4cef8ae5b26c3e2842d20416dc2e5e3f9d7fc43e5e7d4f61a2c0bb0f66a07524e513f380811a6ece9de9d7a1f2532126edef15c6ed469e0158389e6cca63f0c601d6889169c3d466e585a99a826e29c84a2e599ab32b174564dc57af4c8335a3bbfc1f7f190e3fdf24441f3f04d1a6a5ee9efa0b657f0baca1a8b79a1caed4efb81cd2ca89e2246f23933a8cbd89dcb7292be303b185a7c059d7a56c0e0d9ad4367e0db240fa7f074959ca80c06f07f4723ceeb3acb69035d3ed780798906974d7d23674e3dcb1bfb7cf77c34398272fc155d863cd7a0378253db7fb5e0fbd2efb3af935d4ab951938e5960060b6ddaf80e46cf38980a3aa0ddabaaf2f1bd8b45129135418aef00fbe90c4244a75852431ae43d77a809dd92ab72c58da7b1abd5c62bc4e1199fecd351652e2ee47c71cd961d9fabf5d901cc484b309d1db8be08577c418ed4dfab334cc6b080e0910a13c7524d811d8f1cbdbe87d79fd6fa6515b1501bde57285cace81095da64c7696ee15b2b21857aeacf456dc154cd044d4dabd3e6b564fbece8c55bbbbcd1d6ba16d8b3381f661ad17e9910818ec48473b2e73b39bfb6719f905218dcb9f7968e8997c5e54bbf59831d652390d195263dff937f0a294a9f96545413d8b75916152ca996380a9301ec97c8c3608843ed12baf555df4bfe4d01"},
{"000000000000000000000000000000000000000000000000000000000000001c", "008c21b118c4cbb1d0528338165cdfd9d3bab17cdf14bf14b8414d93710508426ec1b6e645c7cf32de5303342ee0e2cfb227ca6e68f37c5fc79a80c11e1d5c15e323053a703995a5e01257d1e948491a9af052c6038a7e7c07877b2704e7b0774e434f8a6d6e3ec012428f97e3e6b393cbbf20664681b687029833362d1804c9ab42fa0b37ffd133707f7a9939cf30a81feff31b3ea35b8a13a261d55857296af59931d812b23639033702142a9e58b9bb5e277dfcc893330a351e59dc199a9e9501189039e51b6a1e5c5d624aa2d7df1cc819832e7cc3a091ab51b744af75e6c202ebdd9ca5b871d985e6716006856fb23737f87e88ab222bbaf346052082bfc754622f101595f172b70d4f2a30dc5e0f057e07875899bcef4c1782c4dfab59d9083e7163b50ec4c9f9a692ab47d18bc314524270616c3d76cf2610ba9ff837dae6933c034153946c521bd275ff01650243df22e552a53bbed742f1585d1c08dc2e6b89df213762e62e194a3533315256c1dfa0ea9cab9b20f7196abe015b9f28ff7deefbf1d9ed40b760d51b0864431bdd889ea828bbac3128758c53af2ece1e1ea12f167e66634edbbfd9b80e41c78e3a94bf39051d859329c6ba3c4551eb8fa26a8afee2fc43cf80b75eaab02169224209093838cc17a26b177f29c59be0540b267e9a7ec662e25193d9cf991a1c6912eae4009e3efe03986d281cc63e9930d384f12cf608c2e5071e84021aef875f0892cf66b0d6b838bdda0ca6225fb712562f7d99af2e6e3145eb98b42f04753e999244919109371c967632a1b281789bba917a6b705efaa0d80cb50b1e39a8440f7cc590f842e9be411b86553d7786641e7829bd3ea1ba89f1223359547b469254e47436de273365e33f93933fb14f92f9f0b0870515ae6cefac57512693169b0b9ce72778caf5da5b17a2abde709f01d2b8654482e62c958a436c80fb5174f783887eab2572e2e96bd922475d391286141e7be5bf1bb33fb81119ed1a922d184bcb89f381c1f4f9c9bba4b2f5822e2f6d7e78ce5141e9b839ea4267695297d0ba6e6010a405e7db0c13b2cf03f3dbaa5b4f4aad143fc5813b2e376d899e1b63192ceaaf75d8b3cb1168bec95f135696c322e62a07c9e2b139be13d24f0ac49cc4b24ee21c3e70ae2039b36396335eea1e6a03125fa0540337410c1b492700d5fd053810fdda71c88ede9d1207af7e47451f2854fefb1092462bc750b99a73e79e1b1c756af3157175e15ef4f15a7b177d60bc9a24248a835d3d7526dced758549cb02d25602e8965ef1a70979a31e8589353b37f873a9a5266259c10f6f7daf1f64e1318f4bab128914b1fa553890f5cfaaf173d00d16adf00dcb0347458952b74636f9c17fe2754d6430dbbb32bd53000d067f257a594c06d2c717967d7e02db4451821e060b29204285b5272a8744b07a891e3aef04d1974f1995f6c2ba4b4fd994f69ca29e67f1062a7def51c70edcbcf53615e974ba3645559b6ca03a21ff158753df395384d598c74a4c9a89309af5b506c8b5a0db8229caf3d624957ba67bade9241765b315edbb6fe457ed33529521e4b1c1e31dc2491e05dd170c7d7d565178e7e39c51d7f14b0dfc79dd940d9e1a2724ceb6d7947f094972fc412cac5615e5d3b35206af049bd115fca9916e15c210af78fa609494e3f80dcd2ffe4a5514e5d18250fdb0d43cc77d671e0a9315f2b3ec5c943a2abb61635978d5f026eed7ddfee44c92acc4d660e589510f989538ea96fec2d2b970800d46c7651a4ad0d6b4e562c4eed566226d971ca70627e047f82b935f831382d3d97440974a66f4df52f51bf47dd53e25f0b53d524265827766d19a5e9a9eb91eeb039fb988e23a7ead242055d7dcb1706eeed6bc"},
{"0000000000000000000000000000000000000000000000000000000000000005", "0008b49b3508f49d7672d280c575bda9c1f7ba3e9510af18dbf7477d17919b92a06f9a56d97c7d0da97e20571fe3cd59ecfbfbd8a7d96bc306aa60b1fdf34537fa15a2a91d9f511e89849df9694d36860e1aff54056d229fb91be979f6d5561d7e656a9fcc5abe94e4072f457af864f7554371f281ab5d5382a60f372b840a8c960ca1d508e3ff72568d04ddba55a88436e7372220fe996fd8c880d95fd5d5467ccd65d7d6b8fa62026a08e7f706a59fb37fa759476dae5e80427495720cfa241b130baf37c6587357b05b42cea0075554ea0cb41bca4ece396ab90de1337226aaa112fb7d1d420da1762f110aa4a0b22a51ef336304ee49bc5b32470ac00365d1320fb1a1b081da123fc45107700897a90b31c6e141191e1555c9a494cd77e8d202113a8e900de40cb2591f012974ef65eeed6383c6c9227e64e419f79a27200d5b1ec2f958faa3d6e81a5aecfe5b3c01e1786077f4c483ddec93ac272c5eb1a77298f19943fcfc2c462628d7469faa03a9deb992df493a829203495c5755b65c53be69a3c7d92763559d36da8bbb24d11f850397acefa8f852d67a1a0be92dac1d12550974d2fc315bead1c8a832baf8d6ddced13bbcb6ee0fc52b84c8505f45008d447517ab99e9d79c92e2e70af0f178f360646f2a349837cc6aca331959b8d1b51233639fcd185777b05e81c319e1c8a4d7ae6d147715482e4c5e1a04a77e7994195baec8fd95f3d4e38b205f0fb1175440479ab9863947f2d952345ff9a67a1ee1ae769dd364c99b3c94c5e5bccae759213d88c148cb6c1460a24a0530e916755158214aa2ceb606ca20b817582e4cd578e86c2530cceac1ea8bffb564ca78d097fb4fb23b1fe4e4a9cb6859c5a36d93bea0d624ba1e1bcc506fe58ab3797afb63621ad5c7bd02252548141012cec1d89be8e3283bdb5828ee96ff5cf80076a0b658b64bb5fcd9f2aee7e1382e4f14b86df900ed31c71d616823f9320116157c067c9a548dc047211f893f64195853d7a355d6e86f271dc9e5da54b43488a1d2ae1370c09f4bd55263cfca6d82db1032bb0164f27b20c336b05cdf83afccdeb7cd6fbc7d69700c20bb45b9c947c0c10e633428b67bda522e37bf2316f322fce0913fe6ad0d04d073adf18e24ee9c1dd02520e563738c0aebea04f26b732bec509d4dbabc8d0259dfbf2eabca8b5e97b11e1b0b35e6f4c499ee1d2be45542d856ce39ff454436e53fffd169bd516f5a1f20494a19c7dae8fe81b279c42b14826a3d1984432086a6fcb28b4b99f34d47f59bcc4ece5999f7d2e6029f71f8574d33b93f3613b0ded36795c5263817423771ec802d8fdd4b1c7e23ef63781f8ed3d75e781f0971e7a783caedeae0d2b556a0f321a993abfca7571a375751964e37ef4eecb3f4fa6c81ca3a051927a10343e755f10e6c6acb8db078cb9ffe6d7a8273a878146670cf5530ed33f6c623d305d5debb82959eef970559a70bbfd50ba5313600b847f64ee1887512d7d711c5b1ed916ab06d729aa3d82768a8a4fc577869f919c5faddaa5a059dae02f21330d996fa4fb8fa63ea28d755839113207bbaea85c9cceca9657fd59389f1213ea4c1248a7f5f1b5f52e5c558053a2c657d194f270806ee84d47283ef1d72a0436d6b9d503f4d41b107455c62ca9b3cb2f493540e2ef0a149a3a357474512d48a052c452b48de1fe1ccc4219cb51f30940b0f2296d9595060c07139298239bbe878208e8586bd7935e094a2082ab135ac7cdd83a7f28b37a9061f8c4e0c3be63ab3cb6a0b8956c471c6757879320a1f81cb0e41867a33ccb53477d922170f6b1e19d8b3ffdbb1133b8d0de13996d3d1f3819bc9bed78938a593d3e8228b9b9f7a49947d80e9c4f10c59593a6c543984e3"},
{"0000000000000000000000000000000000000000000000000000000000000436", "0005f1979ef84397e453e2042a228ad0ddcabae0880f51e27d84d79209d6f3d36d77f284d57e2e1741d4019b6edc05c6ddf4ff1fe3d2883ee09ef0ffb8efc656bf3d4016e2c407ab7d05b89b3d2e6a387a78b2ab0e436efae23741d3f661570e2f6f77e28fb43d1d7113c1ba11b9262e3d997a12e0ca609f4dbfa3f8941e179c3c25a41336538a709860aa5aeee38a36fc9aaa4443168d5ed1b0bfc06da4f55e72ee632a7e3af7590617511c220cd648ade47201b53c687a1fa551031735a086fc0375a3cbdf2fd3f5c8eb6bb2cb1ade55ca072773c2e3aa78b96aa8f1bea011f70953ba1a9ce70aa69404863810d3dd86c12157ab83cd384a508ee00953f476971b98abe0ff2643ca4395a9c7f9f2d14c0f76167ee49397654986e754ef7b365e4b861c20290cd7f38f6b55430acfd8712709fd221f12da1a8df1130b9e7d0c55f37f6cc2b13abf7585e7b43ddfe93c0219c7715fdc3ebf5e97464c80cf789e1311daebae15932e24e9d6eaa7926e960ea1d6aed705d35c6c011a45f46a0390db750682b4106aadf811b3ce38b9f15d3172fec11b6ee12bc48ab8166f355b0c53197cd60c49d0742fe48f7be106238f017507fde1bcd944770f956d7cf7d5deab4896551216c12cdb51823f8fc2195fb17b51a33f151d4fe39bb7e358e67f363b1b162391e1a9438a016d2ecb33b2c5bce5a5b6659e31b508444e4b87077ebd4d0f11f8b2fe3d2dde28b02a5a27139c50654a5b67e1528350a0b9ec797d279a4ecb0f890c05c8a253a7f9cf8441f2ef5b39548b12745e3914240c28e677b5d894b8880968bbff9f69bdac700bcc4cde1204d7c6ccef422215f2a8f231099e936d242d1e9b21d05d43e72d0649c6d7b8aa0a7877703221daea4d02a0568b461942ee43da05711505be9de7285a32166ffd7bfbfd5177b0c3e0205a0974be58c7001d4a8015d04697df6356c317593422228ff1c5e40b1e67a2506b6fb5a9fb5109fa3eb9dcc3ba9c0ea30f8969c597ee7b6d8d5dc8b999df286f81175fab9f1476c7d20e0ce2e38205315560b2e39066169b57b30f92046829e0aba3bb05f1ab300e8bb892acb6fbbb24bdccc80fcc111d02759b305a6886fb233cdefb2228c04c2e97550dcd2e3172c7a7eaddf1c0435661f442904f7cb5997133ef6dea7f1f78ddff55debb8857050c8d740a5b28877290f35100cd096143292c9bea39c86bc2f5fba8f9f6d8846892402ea1649bd70b8b0f51fd5a1e07d0cf6f3eb5994f6464de8892159be31bb37254214a393b7693f5a0c65f34c6ad11f63f651117e3d0bf0f711c7e36747be6d64ed1496559082a6c050442d4ab901772ceb7e24cc2a4a6395e923b30163ececa2c959308e695d4260defabb9998f36d4431ccd8d1ea70bdcf1db9b23a0ceefc103c8a01e5d470219513cdb30b7fda48e02611be3f755877def8bfe0b3cb57b1e338395ca6620b3fbdfe3c5049b2f381f0bc8a21c2fc85de44c0bb198c01acbfd8dfa3dd63e1c9a0194984d28535232f693737e4df704045d53490eb4613af7a8d55d5284e36cef492b6a50cd7bb3b61a021cd72fccf6f331dd7319b63a8125b9fe16c68311e65fc2e48d78b08f26f69d8c5a6612a092963c263b990a3d28743b6bdb0e4b6e2d5f8297a5f2bea59e096d93023f4c322af2de73287a4f28dea6def5626c122a99ea8a53183d763d51c926ca8b74b1bb388c921ec31f62b19900878e81baaca5e3f9c3815dbfdb5a2ab18649da1b5a891d277398165d51df5cd6dcdc820ef847d5e1e0df5f8509d249505b67e0bc37f3e3a7345ece854c926fa59eb7c5493ce9146ba25ddf201811480a96ad94c28d1a69b5799577c3b16a531b73e718af3969b06dabd7c93e82f62f280741cddf7df1b5"},
{"0000000000000000000000000000000000000000000000000000000000000012", "0079da69eca3a8e3a644948e61303a5762b03d127c373ed4630ccef73ce9d338a3effafd963538f5d91100ab56511165c673f558b1aad60e0b60872ef6435b0eb88a7073b702cdbb7e86cc85ec9172aa967b28fd00d59f7f52c86e8672a07135760e4df5284250b1841c1dfbabb61bd95b3d2192e35a57eba12bf5316e3507e362e1a52ac47b67e3b55ad5d120f630b6b59df912bc9e28cf8f6ad2ee6367e77944deea50669d642501d58ce5c487e7297a8970880514dd1028e013643c0631e10eea62ad33f892f5546dc10d8584fa59f8a6093eccc122c5e777138744695162b159fce473ff4c139d4e584f251005721e34d068e900f1a9e40fa92312206ddd34c9db14fd5967eb00d82367c56c1ee1063712c343edd99c89e830e67419bc4499aec64fc18119738d5abcad02a599ce51e6d6bf3d05938cb39be96edd0f937c39606ddbd2aa32c2dbacaf5f46feb51203f1b9b66b444383902040547094d9ed53503bb7e919b9e7521e20fa71d188b46b3047984327b6fdd7fb19598968c18677e5541bb1f3e24fcd0d4638f00ad24311231fe867922dbea084d34a4101b6e750f9127a0bf2352386cc665af9302111c55e147d6bafbc49ee3958b48d0b6dd28bba9407f85f531a5e0bf1bd05bc0dbe80b703a413639cd142a69d321b55b5d1919fbd138cef7a728acc7776915a043b55940e97939b0f840852ecf52944f792ba84d0b276873e8f11e21a4618389326350c3e3183f795b723b7d7e8ce97637e1413147c70b47888874a6649233f7cd5b361c1151867023bca7a7e87570c3bfa234539e3b7a5d650d01a4bae08f49ecdd89ce7a5a243255c6bad1a06181f5811322007357171e8cc15d8b072326ec644c6d1531cd69f0fd36e723e5e45bd240431dd05c8b384a74678e9141f4e4bd957a64c59d7cb352bf974f601f62a7b32bf007ff4bc85d8f59bd2a1610e7cbcce3162d63d36c845b3a6f0f6658cf1f5b816d466bedda1b8d056a015093a4777fb5ea0ab03cad632d1698bc65d96fd397014c48d909511fc7bf5d8a70c857b320b4f9fda86bf03accdb104147b515c1b525086abb2f19e1394669d4de72cf8be5f52ff1873551d82d0007235233c3375084fb88a53e8b607b4e56149f3903828f540b006f01fc95205118c3ca396b58507856bf6a18ec8ae7d6f00a948773751e539d19a5438f5c342025df7dbbc9212c67b182be6009ba211353b7550d15b74659c768b118a15b4d7d1da67f21872d50471b54d558cf9f3142249c79e38288db3df25b9ed42fa5acf85945da4eb0147f00a588d1c6aa717013974d51aa05bc868df3605673188034c075edc9ae426f6c38679cc24bd5e6301fedc52c5d33f238463b74fd7c1054a322c72f11302e0f0de8d7520afe484c65d40f8ab4a84d677fa5200c01ba44e8117bdf30ce4aff2336f4a199e5f6cf3306ea73233aa6a0198c5a75c766e8d76d04439c7300d2b49014f193e32e1ae6753a0e7895a253ed88ce7135f3d403894ec399e4101716be9de54a12a55d29a01dffea96101b38b7de783c0f0654f3e539afb14603fdd0d6f2a8ff9a5f220e4fa2965c4ea8a1d1f49640b239e614cb0f055cac81176bcb3adb55b2bcdbd68244ae50af0aa7f5b79429344a928cf71641c6d62e40825ac33401c8749adf850e5a5b6b17c3b2762281e218f951980d1c883e40e4712c4e5b0ba98727c655d1aed46d693087587f754dcb0c478e79b40d4dfeb1420f9f4242b960c79b707650cc6ec74ba62ea5b0e8f160a5798fbea18d7c7ca04fb8bbe78271dac5997fc320fc6335f65874ff35b9331a2def7f99744af87d343001b1d5b54e8ab538458966cc96bbb1329ff869c51dcce9781de4cb144768523c1ce94bd8203502510"},
{"0000000000000000000000000000000000000000000000000000000000000016", "000011581d5e0a197314b23ed76975590c56d1bd6a074a30eaead093bbbfb9c552e8c7706ae11b797f1704b88b1c108e18209293b13939d46999c98cbb75a70fb43afab64af32dba76b1f1e4a2f1fd8ebc939d8204c177541aa7effbf023130758fcffcd42ec6cb00410146cfc0bd5f7b177f5874efe55285348ee7f2106381a0e566054c193510cc4219622c1913a94194abb496e2da8b694155b2b78a6719fd70581d75f73534c02d10985c6aad453b66fc2ec322e47e703fc5f1179294ba3c7b3adc1b584db32b02771e2390c9d9ebc320ea376e49c125fea9d90515959db898702c7fc463b1c8a8b44125dc867add343e7465068ad6ef82ba547078b216fbb084a6ed545a1f5cd905394b3d75f396535f1c5673530aba1db8f65fc41b4c225ef9ed77cc215f20d5dffdb429515a9d3ffdf2f2b79a8531229702e1b540d128e1861b210c42c7e58651e8ac77d4a47023fd932ff49efd67b0305318f3e526ab02a1fb5c145fce61914272983910a455b74d1fb65974e1f32860fe4b122e252a4a3674266e3ffc336c75d0e1dd3ec2c0e7e3607508b95a48e05c616d55e69f69d7a81120b20afa4994658a633e8c26da021fbb4efc2d96afb176c354fef0ea6774ff113d0c8676f55471259aa960fc26dcaaae0876b88cd342988bf49651e85bed78b171c1595ce50573fb4939c65867c5b2333a81a915b027c6aae1eaa136bcb0b93139930ea0e77019a3e56134a40e7f50a8b30e1cda8bf2ff79d6e345451fe990f02ca185296f537980064f4cdc4afb7109399466e16c795ca8c4c6743c9c2b4a644e4f025c8b21ffbae1869621af4508e1aea73023adb3abbc0aed99250f034ae3ec6d12ad617c6f678f9e2dd98d7a45dbd646718eefc8969d90dd5228b58bad9d778a2ac9c7a9f4520987e46c5a2fe5375e0f32f3d2810137223df73dd0295811c8748cc67a1a97295ef67b07d88a591754809d66f10db8afcbc79aac0eafcaa98bc5fbcdd0d7c03075f7c90367fb1db88f9d95de0f9431fe67cde1a1a5f78ea02c8a6d769e84550be4a3945c068bc4deb065790edf794fca38d88f2bc66176d2e2415baf7fe2568db4460755e17e801933e137c433726a8de632d0f07aee36f94085ad5aa53c8372cbff1fde279359e3267e5069c5c2eb53234a3b2e82992e15a452e2c7e0757f28d5b1d27535e3cf254b736a2809d4a3099060983d54a890f67969c69734aa0d637b2b44e16645815686e530686e886fea4217291a9643e31cb7c289d5d572e9fa5ae5bf7aaa2ca61a35ef6b6e9015861df09b9f96b20603c6907d145351852bd9de502577b1d24b8d2d16fd41631af65b77e1f75d14e8a823d160e23881543c46b8543868c126c22eee1da6eb9d67acc2c16352ba4ddbda3039699df9dee1b96b69afbd6b50305461ccfd7c0ebc7ffe35e169afd9f50ee1b4832122bc77456a738b3518db269d430c4da2be29d2f660d0b9202805c4c7ee53024580ff79c1d1daf0ac562145813f1a60b76d983a4e2ce6a7fa962a0e4ffa2e40385387365c52d9058028058d4411964a361f4808e0bb8c94ac3613a457a5bc0ebe32f9d20e9fbd9507313be852e989099589ccbd3956cc7909a6bd6dabec928451333d992a795efc6d8e25c59621e94b4d8af460319dd37d42b267598d620a379965076c3d35ac62433773ca08cdef207be59c7c688ce1bcacc1a18558810fa215b04509eb5dac761db8a4c3ad10beba9e39011795309ac0fc3dd417e447279e889e9eb8f5ed4400384b98b09e7c7699489747933a78de5351ffd71531422b35d92db078ff44fa7108353cbcdfa539d62b703faa4d8cc87a323164954067724ef9732bc3fa583175f9b5ab0b50119af9bd7a61847bafb03989f5529"},
{"0000000000000000000000000000000000000000000000000000000000000004", "0051032be70cfed8bea63361ba582eff3d513f9bea66145bb17f376b15d525d86b757f04331f00bd701801e1687d2f47989b9194e04a5c571f144591e5dbe109bc4b31dbd859aad2cc59aa80ef26b3016f3e41b700ac7b49ccc485bb86d5127934e8d6e0d58b98db6e12b90b1a91e486d1c2488b740fe448ef3a3cfaa1230621a2102b4d8065cb3a128275e6c7f54b67bd600576aa2ccf7bf2f1a7b028c9fa82e7cb570ff538b019008df5759ca0d985c9a425a9315e455760e91eb9c5207ca6f5d0aa87f1dece4377e2d03948e522f9a45901aeacb71fe1f22334cc0455507270921f8cd543aa06dacae06b66210fa767b56942faf637c1083f372b0e78cb2c6ea335838c86736038a5d9d703e87b1ca61979e6d09f8ca948fa15731b879d94c5ebcb99d8df1420f92d075c36419edd530905b486550b65b572ac1a514b2568e1fa59a6b80234452cb2aa8aebdeb44e025a990e88d3dcc2a8e3603831bcd6887997709a0f3e5ced3eb7562b64fa78853c3ff8266e54a83fb4aa10509ab0a430d9a1dbe7f86aacecc39ea45d1fb4e1175026886063446dbf34352e8842343bbc83fdf4230614c1dcba86150ec9c698b0cc6af8c2ce47dc4d371aebad5bf91018b3429073c1d24727de1388b0e3ff14d36e5a741018cf9ebf015078ead152c76bf8439b4ab26607e9a5809f4c16450ae543b695a93f9af85c02efaadc59066421c682a290fd3665526acdbb0f1008a361c3d7a7fba5f94a43cde2bb5565fccaf166b91bd602ea4bda0bc8f09838334aecd38a53f7f4511a479747e30253522f59c917198a62a3feebd61f6b93050be733b20fc7bd26f2c2dab03b14d14b93907aae65184e999f99c9add99e5a4b41fe2072bed95663be2cac3f761f9a891be509aaa27f7ce36b0d81bce14243f7e5b0945ec9313160e55fcde6851f8cd49d86fb03d7de5e49949b51fc81b0719672437c39fbb2720a526fff75d2352b63d715b52bab3d7171a07b1ccd9f08dd60d33f4da5f8da6f119acb21ec8a4335bae3ae30ef9785384dc2f3024308434145475a47e7f7a3f5056e3178ceb51d33c974a439e8eb4a4b2666fcc5bb217ab511c0893d6eee0cc58e1e40ca01f49ffa726c057c71a1d0056b7a3ea380723e9c93184d7f1d1dd61f3b9de786967ce9e544a44a8ad996255b28eb99fe062f286564dd6523de0280efe38d1460f1391c1b844b49adc723263d95660c35f381613b4a051d9349f216653f29738fc1fdd1e5e3e18fa2e26e2292d908bc3caf7db2b8a348171d62e69395393c3a9263ff02de0b0ec8b619ca0bcb29c9f0f160ceb811b0288d87760da70111584b9a2e70ec73385f45a8ea1f6778a8661a6434594929240bc7cda88f1362d4de48745e325c338c1ac3bfb0a4d9dbe6b95e77e7068aca119872f803de8426fa0e5a01ccf8a1d5f6634fe9ab154e0df709f1d34d05d9f4571bb481203a34ef6db2c193fa862a05fca3afb1cfa9beda34be6abc44e32ab5db1ce133f7cf1e507134f3cc40267b7bd7d3f27529be597306a1f5772cc312e55ebd01c38810dc7c738c916e8d0b40fe6501dd8175e2cbd2709242cc80a7b934614e0e7d8c51e589ebccdf4e431b2ba57960d1206c9a311b6a4e29f71ffa133a7ee2ee2aab3da92b7d56a7c30843ae75ed5b3653bda1715b7cf648b227b1b59747320883b9e0a4f68f9b4937da73f1972ee0d7d8ac3b0cbbdcde1c45500fdee380fc9d45a042747c1988a42e8cf7646499c181af3da3a3b6ec1151912cf6cf550fab20c0fb266c09490a5506f2f80491c7c1ef63a43257e9aef0de7555ab4955f3b43046edef39dd756819a99c21df922433b11c8282de4629954f096bf4a120e3cb42556dbbc3d99ce478e95cd64ee92cf8f439"},
{"0000000000000000000000000000000000000000000000000000000000000002", "007f06c9fd40e6ea745d12f8504d4269f7ce39aff91a88de03be12f0055c4584d3ccc8c74f0bb319f4f201adffdcb113acdf198910f360dba5c9213d37c4c119ee79a22e677737e4dfc1b5b7f3367e4c3d73502614ae659fb8c8b79ba756d839a0e847965a6d14f6362bbf64be651b29e9b71f95bfbed0f8aeb95e7f861a2e4bbbb394d9618521d9c5193b46e7ee7d0776428848253bedec148c5caec43a8924dba3ef4930db5e1f0295c46cf30b08cf999d8045654d7d8eee2818c74d0f1804338d841457fa45d1915a770005c0647b6dd316720d539cdfd771276b835d1fb9bd5329e99bb7bf4ba905ab0d6036418688e7627ace3c8b79ed5ceb611154ea1a1e890c4d3111b5b5efbd2dcd7c554fdb39405fa7c8a5d55115ce377597aade97fb564d3fe36941b18e893850c65120e1b5511cc5389dc804959206499407dcc5a46da54d82b5b268e1b33655227692cb00ef1defb633ed2fb564953a4dfeda2dd4d22eb706512c92ef851ae043eed65610c23734de828b3807f0127a04fd927d6247ef17e6cc6165edcdbb0495f1eb1e0c15b16fe86de38627a4e9dd61a811e628bb5c9b01d3cbfbe15cf90de2543171cc8e6210d2642de184137f6495d94af0796eb7485f8dc9bcb37c547d5ded0c108177d60fb06597535728565fb5ba1f6d390edd0cdaf8d231902b01427363f698d6f85a5c319857ab0c0a6d4c0a990745e52ff40b0073d6d110aaa899a30fcd4c9ecae6a6238bdca1ac11e62a50e824b5b1a32e1092fc78380103d3f4147397a4864b2657dc60b430b57458da0d7376f99cf4f5c17e686a3520f24f460d9f32a8ece4b471be1651f4ba6b2b7cb7132f3833136a16ced924e6f3e7114594c0bf3ce170539f3225175dc8e6f450856edb57f2d1ae48917e3477fc52911777069ad2e2981f9843a2ec32a05e965c797d521e02100f223a12413da5e0320fd81401808f64cb039616e2e3ed8964adf9aef2d353b76d60f1760c96df5f17479534f330cb83b74d42651b9dc54d000bb8aabe1c7b47ddcd8a80afb29737900f7aedf3990e5dfd700385683e1d8193028b8a914c6df325b2b892b74cdb107a22d01ecee813d8a4331328d29746582538618e146d51d7ffd54739cae6f351c1b75b0e748c174b203aa507eda31e720595b0f4fb27e6b697414f3f06ce061804429a99747b3e99268d51d9dc1e27897e482b21228c9fd8e72ee7f97ec73a2b7258daf31e3fefe8140b7cda1f1012df022071526e2f6c30cd06bc700e2e902bbf1e5274a72a1e738c0964acd0fd1f9aeb8507c0410f794d792d551721632bb8d38e4afc137f1d0b8bf24922dc2abba459e3cfb11ee2b5c2e50e51181621438ce2ddb619eed8c312bda500e19fa54d0999189192dea44fe48fe6121927b773f3368e5b7589f4025c4f46f8e7c015bb517505cae93305f4edf6b9ff1f298a6f7464efb94603d31ff7ea6ee6a87cfff9a40e0eaf2bf58e72d77b9f61c937e00d9109737e2b7b218cae3511576ccf8aab027d652c983d080f388795085c577dcae058c9df2060dc274b3985cab75bcd692976f4d0f0300fe7ce12ea3d2a56d1cb0887dd0d602a334f48d35849a78a12246088c02ed55749ba99a240800af023f0edb5d86a8b08f86bd7cec7521878f107ad338c0ee0025ba260111cfbcea6454b497e54f41de5d3e7992338c7ae181523d2367ee700f7fed6411e23afc40ba59f63365f628c0a712dd8dfced01c8f2ec3eb4ae795c94fcff784e8ddf439c235f07f2fc00ac866c2525ab165902957bcc56d6dce1fce950ee0380f6c86ab12e13d4dd105ef423406ea742878dbd61d46466fd8918949015343a4a71d27c179be6c706c2716c46bfe2dd6eb99a3a423c53eedf537e793c542"},
{"0000000000000000000000000000000000000000000000000000000000000012", "001210e9cfca13c38157c0211b3ef81db65038d98016c8e3a83061c5f7cc9d7537c02eebe675bc79e4c22a0534d4a09018b79d2c63c4304b5dc7300edb7dd343c31f835ca83753ed5506a4674de55aca437aee7b01895a28c1556eb5ee94169a4f504e120cf736eb6b299e3f7f710bb31d8809f3d7b5d15e1b0119f9a6c323417ffc2d4de2fd3e9412a886f0015ab7a3fd9a7a34cc5b4886aec3a1bb6306a76cbaea4dd748729240010df3609556b26f38e75435926ba19f47969d59e72183b51801c98ecda2b803ed012af582544899fd72036503b4304dbc45092c70c5710b74df552c5d0edc40684b3be2a5daa5d1ade641efbb4a322275f1324a0bc5d4982e4ea951677365e511596a1da09fbaa4d735a76caa5ecddba19ceb04962efe9362e702f797b90bcb24fc510a8e1bd3461507e566497e1d18d6a4e9337547527f9183fbcadcd85dcec7873b50bddf14ef05d678f76051b2c37c04f095c5eb4a9036a559d620368b9a2e8415e62f479e84f54dd091e1b1399b165d1812458f5a87f003816782a551515f3cec46c8e1b139ffadf944619b3955d703e6f6b872771d7a18fa4108946b166411485aacab520b7550fc91537f92114d18ea7c18b419f4074d184687cffab87b58b91dd5110bb52540e990abe1ea2294e777d299515d911025981f64c56108abe5c1e00e32940a9c64c0f35a39f9a507e7ce16c684c4fdd344f1e13919da556596d5f9352d9445beefd70cb1b87624cc37ae359d424fef570f29554353bdb83781db17e5872ae02e5aa51ade84c1340ae3c983e311b36406170226488bf2c284ba0e6923abcb1ab9e40bf72446341d2925b5bd5717dc4c9e43645a7a789f301d25c2956c03d6a5baebc73966c53d8dcf891233d3b9efeab4674fcf106eb3bc586ba66bf2e36ed3a935354db6ca478762610ecbb797ad62022f78a172059f6b2defd1abd1b4d0c2a6229e635c023afac4c49b497b822a913ae7be04a48d3d0885e61bc8f7d7a18b071be5af9258b71a37f1a1bcce82d34195ccf15d75de63b09d073e944ec8d21b205ec90617b72197041098af0a36b49cbedfd631a03bf70dc329c9174e0d397b29d6a8268b3c5029469ed77e9d4e2205da3ff856ab2af11ee83a9d738bf6421dbc63fe691f4edeedee3bf1fe79881bc2e5fb3eda3b1cfee8065fa4fb3b6d5565ccb6b0a592ffed920ef93973a606bf2f77b8462d01379020eb8a41c0654fda1b6ab00b46d5ed54a539fb597f92eb916fffbbbf6dfe84a223275fa1fa8a8f4ca4b7d5865156c5ab68bc9fa6b00c2d1c38dc962ce4c7e062d0167836111f1449e20715344526f1d70d86ddc13772cbe4d49f34ce3d32c630154487ac65c4ebe5cb1307fd63dfd548b0971fa34f824b4065fb95e9ebf5a91efaf02a0a827bfb19b104ed76c5e107a66d42c5547ae57623e93b6ec9e47911c36e4361d8de1396a8d4aaae6e602aaf773c85470af8d43d055f0adb9e88d1a7b37e1710fd4974eca078bf9d55109ff579f77b779d453de56332fbba360f06959e4ac2e6e8abcbb81b4f12fd710b08065e1fa70d2d18f97593930ca188c16bc7f63406593a13d1a6368a44d19f9bed8ba0ecf62fa2ce6026a2475fd5413e79a798fed7a40743d59410527b062e0f83718d920aa938c2d6ca3115a6fa52de57a66825c9bd8e5dc4194b48e2f50b1069da4493ca4a3f18af5f271e82931cbb38f730113580963d06c8924552e27862d71ec432f89b17bcedf39f99f58397ae78328a7cb43893140b30c218708a21379881d400dda67181e2599bd3b8197dc7826409a93e9cf116ee5fc3609e43ce98d1b20f0ebbc10b8c7f39c58513f08dbb206b2d145a45771232a1ec86973170d16031bd0cdf9464dab3923142"},
{"0000000000000000000000000000000000000000000000000000000000000358", "01c238139398c8a6f3e0c793c34f437a675e186ca22d0b03c6b720100fd5a2355d44b2260ec3313704a40df0b1f5f5f90c61d0c043a6027b8f664878fce82b176226af6c980ba714f5d20663492d423e7b520c99096a2def500adf1ea1321177ffff16d1acec0e63761d314d7cbb5bf934f9a011fbd9336b5d64f87269880dfa196930e419c793f4e14d641ce5e47aa3b3363c7474453d5ba292c97e12bd01446bd96bb3f5df16ac04b5a97057d346dbba00364db2bb82a6cc365d962309b53d530f0e40c1a86da26883e710eda6565aea382cfbdf84634ed9e70e38291dfd6acc2b2fb71a31054340fbdedfa2c971b74e947eb94f6e393a863556c90b3dd7024126c41140e0344bed35e2f2c49a1fc259177cebfd7966ae439deec608a037a1b5c94612946b19bcfab6f78b42451d02b63727417105e528faf6861a57434346391863f6c55242df7711f2cac2b7575b03742f93d3df08ab809311675956dbb9cedbb2fe2d069e22afcc492edb9042b14fd897a26c5c28322dc116ca454722d11279f44437c9d9585dca7a677725b32510ce39e353e88bb8f698dca46958e36ccb5c6063067fa69e0c08a04c474bf721bf690a92bd681d3ecf0dbcb1cd2d4803d4fb12d0def66f392b634d7c4498159fa7cea611c7e33871449d53e1fecb001db91e5c2fca345d7423287b928936c40058370e5073ddc2f00ee4066507f9aabdf17ab84941e369e223db91ffe36204aba7095c50f70269ca6b377384f3d3321e9d862d5839b29fa693a5d01cd2f949d7b900e7ed539e253c9d86af82f2b145f86c8550192c61f197badd3d7f0f9104288a59d7a1bdfb42bf9958579723aaf9d5ff1c2fcea21089841eb14bd52cece703c22aee7d74f60fd47dba0e9182772ebff2a39b4bc00ddeae9c0ca745ab7e8accdc32736d71859df15dec1365eb3d120603ae8e94e548b6eb9edf54496bbf5b8962e9f0497942b29fffc15afc10fe242bc5d2fd19a30d911efef606f51c31901d7b3fa3d5945630ae64c292c19676b2111a4b2280462b5d6444d299a99f105a08fb35fd900dce03cf07888b40bfcc12c31e7a9a3d24c7b9590b3408a9df714e6d63ff40235fe79ee77571f09ccd5d16557be7530a23967ae0b1e1815b0bb95c433fa9ba3368a65081e6780b6dffe95f00efa76efc4efad79e04179a11a8685097867f50794e4de82ae0d1b86cbd10e68d92e77739bdc4cb2345eb462d20dbef8d23cf26f92ac64bd1d728e3ec43cf7bdba962e4b2178062298b8fab4cd9c0c7835d774f5e59c6fb19f85f2f040a71466ff8acc403be6680ba1038cd1fe0011fbf2720c07faf4aaf06ffdf84a600003a79b668649af5a34736dd6d03592ba9aafb84bfccb51ea1cdef7a33cd550a3766c19877b140a7a66e484fb9ee72b0ddc59f055298e1adb2bfb9ed5ad2fa021a8a462e82b4bdf036b1f4211e77bb3fce70055ca3cbfb4e082e14844d4beec4b8739b66b5f4da991ae3ce754e9b4057fdcb67ab853736a4fa77b374a6ceb1504efec92236cd490b5234a3b51d813cf37f35316139a92e49961a71b63dab1a1454ddcde1f614357006e9e1cd87333c2f8c16861940c6ac36836c4ae445a3c280c60d4872d70e17bd3a9f9d996227c8bfa47c3edd136ad8475947e005bc9476f45b6ce5fb2a00bf2897c09ea9b05fcb8b12c62ab0a295e1b9b3d4a604cf42e3d58769dd7861120355bb09de7b713ab1d5fa52e0bdb77f223d96df62dc3533f0a1c5c5ae5319451ade29beb46fdce3cc0b0269690cebf00172bcc78fe8eb9856cca516c453348ebcbfce1eab279e61d54dc0ebb6968f8bfaafdd1033ec1483df6dd972a8e4c706af455144939f28072b000a400e56c1bd08fa46573ff5924dcac674d071"},
{"0000000000000000000000000000000000000000000000000000000000000001", "006e1e15bcb15dbdc47c815d44b3bd471a90de82fc4547977b349d9537622316515c6f3b85cfe5b66ff2018178a7b3264a3959da30a953a576207a2b9392585e406edd179acc035dbd865673b74f0a0ab1b1cf5b0357854e3056ce98d48a2127a89167985b0ab3b35d461d1ae6aa276b7bb8327675f17e13d1e863b7de3c072d2ee2cf9fbb596346056359dc4c1bc74f7eb5b53fe552ec7b1001db40b7e4e27da967ce6e74db51fe06d369e5920fe77f0741c57c84f1a556b2f1da6b1e2e5ad2cacff0f059c9771591247294664c1679e90407302990e03828c7de0cf3fc89eb3cc562f4b8cfe82d8263cafdd2ba27d6f9539dfb24d9be0e543598ed0af92c6acf9a61fdc2770616003fba6b3a645d45c944dbb6c0f0612c352fee653857fd5955e67b9d4dee1055379a8e74a643f965c81278cef68e6cb19cde9b15f3369c621733e7c7f8a62951d2ecb2bd8bfa200601111f20c2cc6d5896345585ad74663d89d87a3bc4099868519a9163b4ff08b405106805337b15fc7d4e06d57f0d32cb356ffbade3d2b6b527ff6b5d3d3006392884a7f8e7b1fd6294e713ae5f3f4ab51178543506fbb74e8ca76f678f693236bd56d98a17d7ba243609e0cd82564410a2710a82d1ce4e26714270cb87c3164c4c3164699fd777a2561bda754026873c9f12144011163401ab130f63aa1465e6580c56915b9b66030191a8d78858cb152aabf091a3cadb8e41a6d43b1205ca93825010d28a9da91223564af03a8a0ed5a0ee1c428ea66bd80302e82b55b5cbb157e98c97178f5c34c8268c85d046536f6f25e68fe0d1ad9fbb78e2ce118645179113e392dc8b12bd1f181009fabf78ba471d47d15f97dd667b3d70f3cf2150f0a118e93d7425133ae222aaa0cf352219336cd460d3a4e23f98e81d1604e6c3178f4297638842acb9dfc2299b878fac3c00c307b488cb117ff24f542459ec7781948efcac4b0f083be43084f80a5855984f976a362a1babf2d7fd383f0fcdd266d247cc5917b5a565d8ba1e5a3e3afa5e236b95af5cb63f949617ce237b45ea1479fc92d2074281e58e997748fc3081166a39bba8cbcb469c57238bb4852e933c60fdd492ce9bcd525ad2a757fe9c0d45427dcb195174db8a22d41a3475c0e6770fed5f66b4541be1dd5c45cecae74f18dc54a21faa9f0a8f121a6f71ffa0a5d942ab84e1c17c89a62378d2f7002c3084ef160f1e238179840bccefee9d367e914fa81df1cfacf64ad03d946cb2b87658778192d5dae75f29a2dcf66465bf1791a9a2f6babb17d98bccbdc002133294bff267e7cf9d4198608359821f111cb9e7a9351eabe789571cf4f37b058e32bbf21db38ffe32b514756160f1d07117f13c41aa57c7af9c9a0dba072f780aade5372f0ec9bde947a68b49dc224ff19fef9b00d2b759bfc8c1dd6af283417844b46cd3043f632108330883d5b15a339aa28443f7e8f33165dcf7a5e315c7128ce530dfa9da66b1682b951e2d9ae2ad2b913de657668a5388e6fd067a80f5f35bfad2cbba27491a380227f52a77f7b78265ef8ffa2d32184251287a1de22e5282dd6967bdd5f29cff64ce15a49b5d31fc29d3dace32da8135fc35e4fe593c54d5f614fa40bc37ee9280961adb9d7032d554e1c431f337fefd1999015db3b0080eebbf6f09c68de3feb91347e4df90c927688c1cf8d411dd9664f6f21a6095160211b0fe7418456e66dff18411b02773013c6de70e9d49ba2b0d50e9b2d4a498ffff530ae64562710e869439d692bf01c55e32bbd1b930cbccc1ef38f2482d1040945a5c02609799808099ba2ae8d0e3deecc8306d1add12bb049342b4b2e720dd80a3a175d6dfbc6a6fde3ccbf6058adcc98aa165933b3d50a478709d787b1aa41a86"},
{"0000000000000000000000000000000000000000000000000000000000000000", "001fc828b48aaf46eefee2b03a2221f8c36088737e012602db650d10db2bfe6353836642f64a42f9c08a09bfe726abed9845aa3ec160068c5c0c81dc888fe3257fe2a03ab2e949e749640a876b2e491d0930e9100e9b3ee0145e1aef3b70d25358dd20d18cdf3973973430d394336008137ce1654d76e63bc6b916fa746a1cbcd32455f6aadde935a533c2d2586f038bdfc27036275c261ae11cd17036758a3d6ebe0b54201af5da02764b28cc1b68b99fc6c248b9b0d9a1fc6357ac7c19631b8b37db0887c89e92040efb1894dac68a22a203bc97d2e7d963457b70d75ff9592e26bc503b44ce10b3c9936db61c2dc7a7f344d5de32022d6a741bda0f870918254e16b72c3f92f6fadc67599b309aedb635e8d2ad685f87ab2efe58e07d48ad47781d7bda57106166594bd9720cdab5110782eb361e2852f9c51324e4b92c6613dc3776f01412f364871d49582d352f010170275100bce051ebe323ad34feb154826ceea30b8703fe7f12f92938a0b1886598919d03ba3510b7011ea5227b66fd775ed19528cd643d5d53d91cefc0245f775af6160512c8f8843c49c83db65302fb0bb50eb88fe15453a6d4b05e21d6e33630c1ca7134ffd12ed7218b94641385d11fb541f67e04ad6aedd65ec9109515890e4dea69f6cb626d7b6017760dbb1332542355475cf1c9bb07551cbbd7e07ca357792a3fc51a0276847b23567deaf4767822c5533962da3e9889e027ab2ac93bd4e8af2172b368d7685a8aaaf0fefc340cfc09f82159dd53073c6139f5696a20afbd07686a2d9966d61dab6805d920f30492df6df386395e249d15a293c7e808e3d91034b3878e47796d2ee651f2cb1d543bd38593dc2edd4572e2f35bb1e98734f9965a2fd04b0a7896113f5ebfc3e8266abba94993752f5945e2dc2ecda79869d97934e3092a0d966f2e5de2b70049f08975480ce09358744a0a7079d1335d312b1313f0aff0599550bef2a602a37974eb2cffdc3f22b80497245da7dd4155b92cc4889b71bc8af991bf25f4109bdf28c58aec7297fb9324052f60a2049b39410b013b27e3d5c4d96c824b51c2a7c1c97276c0bc2bc622011a266756f986fe5434f75fd8b5bd85b43514800d0d7cf693d46545d29744a8fb70912da24e31928a0ea5b46d34c489ca505aa1d068cc876557acf0182400a95f542b6a0e2fd7cd913640c627f5c0931d3eab47a2bd5f18634e256867267e0adc092f0a45bf2eb506af007adc725a43df3af52039a9388b5ecc5b020a1289f7ec0c225b913d6293f47bdcfba176e476d6cf05486add3dac5a2d681261519c35cfecdd713b11be0ae60a9426e7ea059c93a23ace24da4318951cfe87065755feab3610cbc9f841812ca431aad1a87fbf971171c794bb156bad191a834b4e41476a3845d8b98802258bd0270c3aef1ac0b03fd3cb681dc64db5e14a1d643d94f0e0c00d3b9333797459e60137effa22b609c782917b2a3053865437b79c40b095f932703ce82e75b69ff094f352f0fbd34545a1839f1ca77c58a802fdcc3ffd6963fb68e7b5b524d0d80dbfbff16a070d6ba2abdc10e9095595413f92583141097c0b747d1645a54808c81fa918b9e502eed7e70d6b3dbd5627286d2e7eabcaebf57065b4c9757ec2cdf571bd19ae03255570a6d01f24d772423217a446cde30a8f4f0d04809d746aaf6b05f286e4791c6d780e482894e44e2106b28e51aad553ffc392e8eefe308e116cb700de430abceeb82a12856bea25e6d13fc51a5d81dcaf8308003105fc4ab660cebfd6e0faf749e5f213953b0b2fb9fb6f32d7adbbf97fa398c7bc7922d7843be94c09bec7c96e252147ab0bf7d9174bef339f303d0a22160bf1baf387e36f6e02c64b90d10373370bdf2870"},
{"0000000000000000000000000000000000000000000000000000000000000003", "006d4fc54a0adf96ce1fc11c64e3de217fdf1ea7391764f4e9113675f7f5921347cdc9bcad7c08f23ac408c51171dd6e8a818c1861e4ddad260132eb1ebf872db71693311b8b2b179b44c9e5fc5abab0657cb8081330b55fc28e08e8e40cc37902d841a0e2d20987b77d9dcd50e2619ef1fd7a48b383d2ba4b5a7fdfc84b147d82b50d452ab2a2101635605561bd91649de60d154b8c9faa6341edf082019eb84a33b5f32c1fd3d5102e18ec78cad22680bb3161cbb64505b4bd355f03232f86292056f15b30c66490e9d65b823eef55ce081100fddc02364eb3fafb8351c96faf6a43903e792f187dd5c43f8db35fc5e6054dfabd8bb70adefd9c2a1305541af1d789eaff7f024d4b790c59908a32669531c8dc865b8c7876ba26349288364282de6adb4de4137e6fe3fe901b47c823c5417a6f8a96b6639b3b4a1b4a1494b6efeb79a7e773364c51832d1b90eb71a000f038439e1146d89b3740937b6a43a2af79fed63b5df0a70982ac7067d425b9c5d2d90f06eebad8e6360b0ccd9cfd1d7401e608d5a63e5fa33b08b2fca4cf3bd8dc9f56691999f43585b7a258309f2b1d7a7aab0fb186b7c0512b2eceeff7137c7c33e70a561f0dc01554de456d0647e5f7e4f5c7c450ace214101241841353fae09bc8a8f6bf6706ffc7cda431ff07b2f5d032a89b7d3f0f757d1ef779546b4e4c47821dbcd16903697889838bf8d9018f41e922286fede2ddd734aa5f7f94468bf0791dfa5656d138ebc75e5fda3bb952048255a288e67d3df49450fab20fd102f8db5a0136068e0f2b74550a72fabe6920b95b6cb30fb21b032f05ff7edf7aa1bed7919f714adce29f64e6cc7c82913d9a8785a7a25389df0ed714233ece561eec76950319ccea3f37e557df5e14854a8936c11738be9cae622e05799af097ef654c5ed72fd2d310daa94157e65a02ef45d1a248d4dbcadff4a9a23c0da166104cde9b462a656101630a714d49f4ebfa64240ad5b9dfc73240656bd34413a6a186e854f55eba59661a5cba6249699df5b4a6a0feb1acca9a3dde70804a9b129fd147098b47d871cd468f7d60d3068ab639a0ca0d54c6344d1363cf9cd3ccdd06aea77dba7e67fdf91bb777c60a940796b5d784a113ce83f74b450572306899353d1dfc037fbf606c438c84b203a2a885e9c8149d1f1705c766aa7757b6ad9d9ec455635ea929d65f507ea816fa89abb1c6809276db631de82c3c59457c5098b821ff4631cb8dc5eed7b1a32173ed1690d9925aaf51655b773db96e972d942efa7830fe8ae2e23d17d764077fedc57d591144fdc22562f8caddbab84a16b4c8126cbce87ccff940dc8c8456035468567a6a1829da14162e02724c578ccf9c66423f73756a8802fac4f13f4e820dc6771863f36324485d60cf5d7902b627a604aab5a8ddea272d97b560e43e8a24c10e339d164d0bb37d9f42903266e0cdbacc1d5d01e71eb65fd41d0eba7b7a065093b2eb7e7462bd6316c550271db1b012e9ef24905f1645f68c519325a8cb1e0e2b99fee909c847209298864aeee2a6d9c23b90e61b6b96732c6ae09b93f45e8d019e7bc749776a3cabd635dfc13d0a0d1d508a9e5725df9a92ce4a2c1f24c5eb685e2b2383c605dbeeef6dd668986fb2601bd6722d5fb9a309ff28ae86a1e969cb0a0457e73ee3b68932b71f730d1979ca6f052244b4100631db70a8ae4f3f75d7220cd3f77d9286fd83147345a9ad64e5ae4b1afe123327dcab55e3e3ef5bdcbcb291ff3c2cb2047af79697135050c2a195d8ed43c2f1c4fc51ec8cc6c390ce8f29b4b7055dd0a203ebae858f01ba71a7aed67f9e8e3b81baec9c5b1e85785968d06272443f6460bf9e5940687b90f05985dd827684fbdad90dc6e54719b678"},
{"0000000000000000000000000000000000000000000000000000000000000001", "012230ffdf84d68f1b31a025c04f744049728b8ba401516fde3f82dcbce044a856cdfda10a6ae9b52f9801ba5562bd14a2ffda98a1fa32bc46190ec27f2b231d8487910c2a3a5f55ecb2a98a3065aa8d957e31650cca1bcbe7e29c7fe8a2838b113e8031111ced3e12261646b2844f1fef373426420377f1a70c6e1e1b8b12ddf169836134bb417c29dd71db00b6c3e3fd3cb71659f576a3e40b215c63761ae7e01545e5e112ece7031e48e9616304297c2b312884b8eae494adfe0fc41146b5b86612a4d3471104dd0afcc96643823ba6e4277932869a9e3111d95554c4d95822397f7bbef0b92c6329cbb117d0b2d17b13d08944fe6dbfef98fdb3051c286c89472e012d1d45377f7cce7a0aa0bd60c90cc95dadd38e0e2e9111c65e0973450ad8835f987507d2ee209a179f6be63de689274029c9c6d07d72390ec06489cc4d0c8375c84635c4b5062f98b5df34f501a79fad370e58c70427903e202bf1babe589df25f10ba38c7614d6867572791cff3b77a41dc553e6c7b0dc124ed151915c9ece614314f70a0ede2d678476214fad467dfd99005b3cf83fa636608bd2ee3ad80460c07cd4026a53e07b85e11a473edd81224193eb19e0f39d76aa08d21f14248b27a5971732924866b79e50e05b08f6b46a0f879a950f9a8c46681f3e6fff2fd333a3ead1ad84b89faf9845a8a583e834b315d13eb0589cb21604507b7d36f858426b1f015d01b727f9c0da77b76caf11fe3c93f675852e72a8f522a3fb3463c9b72d3179dd4113af7f73edf79d1e5fc07fc102f6c69dfda4a26713771ec66e55f6181e65572f5cae505c8630ad35908d7704ce7352dba0aa3730d1d46572220cf4a84a2ce8164e9d4bee0e2b77e2870bbe632069a17f94d8efa710246c66db7e401a7a7b0fe0dd5208645ad8b8a4431c2d403efaa6aec59dfcdff6c7f023764f5e992ae8d5ea2a19fa8a44779acbefca0de102dadbece101f81228c18c98b5189b748535d104c034b699556d0665abfcac19c8f3cfcd88d1d903e8709b9f14e8453852ae4a9c657fab42e0a690afcca8115486f664f221533326d44afba5c86a640a8d2dcb82190fb09234ffac08ba0a59064eef9517e39b27b652c3341edf4d1a09eed97f2f2ed4162fd56a2d07ee943a3e79188d90efb2928d5f3c23b954982373152e4094f142844ce5cb0b9e084109861c45eb7b8bc703d11d3be71d9ca3dbd643037cf756cdf262ecb76994c209fb9c3f72ad54f6b7463981c43fcd9177e6ff15827b5fc132d8a4885a862f2b8996f7ff0ce7a358b702112020bfd714185cff7a53171e61d4db63fdb2edb222843b07aadff81d5c0c44270eea2591e2c1e8ee02c0cf4f9936dbb3bab15d2cb62d9bd1dbbc1af819249b9d5b333db8a491bfa5662343ab2c21dd371382004bd111ea991a8958719742e49d72c913866d8372b20746c06dc1a8b03f5bea64aa9700d55d1535fe3eb0862631046a37b95b7221185e9428481060e1a35d51c2f95553f1c4ef5e8c64828fd6bb32675151cb8d506c2bda5f85512cb3c17c509f22b3f0d7b7454b1405ac6fed39f19d109c3ed3905b1de4b070fc61cda3011d2bf4ac85564b75836741ba4d453cb368ddfee0413311d47dd0ab204c9ccf1c84fae633cce7571954a0d1742d65d0706758cb5215023bd815535a63416f61044876adccee5a68b8b817348dd85016326be09ca114a739b7f5da90f1da2d121dcae5d205d7ccb268713ec5d456d125c97df0802f3f746278530e7cdd489126b825e8f8b72b13211f37ed2a48145047c8d00d621a2bcebaf61b0397d49c49c742f8976c98cffe5101d7fa3da662eef01f47a25fd4d495946e71857f9a32e3247019450f99d9f9074662472ddcbf10e5fd98a"},
{"0000000000000000000000000000000000000000000000000000000000000003", "002a1775ce594566fc7c63c3862029fa4406954e2e07976c812720045f0822e22da9ddcb3d9ff6b8bee90962eec23418527f1386417302fd5fd22841fb69804e9203c047269397b828a5a85447b4adcac114019c06094cd24798fdfd2cb0d1a5c4454ac798d97e64542b1cc1956c1286eb6c30e5db54dcae997c2e31eda0089c1432fc0a650aa78b5130ed4c56fe685c38dc105c1634e97be38319841a18b60ee8c36b2487dd2d960e057c14d3d285c1fdff40e592f00078a1b20dfe13537215221f9e94c5fec3fb9be6f99ce325817bff432876ea860e8c72c90779d3d681694e157a4830b83e2bfc84babf9d2d4541a655206c2ad7c5b183de818e10280a63394b0805fc7f92305051e03179ad1d8c085a4686fc335ae455eb526c41ad739233af6f3f05531c65a1c5676cdff3b492c3d5efae19bdd10b5b772d1fc00a9230486235be4233bfa44cfedef6b97b8c8900648c29f48792dbd8c5f2bb66f980d191879eed15186ec275998ec66b8ebda3460352105926e6d5c8fd0efeeeefdc151335b7881835b9d706de21fe599a7a29ca7ec61faf2f81b314a7234ed3d335e9f2d534b40272be855ac34aba6d2d2a9c2861643f8c885e0f912573e4c45153156b948575bf4eff497970554f3ae23005039003bd89ddfda584dacf2e0d824c1c542a42318762c29d0dc982b8c425e952f73fa9837353bf5e081542a0571e082524ccd2f65550b9e5ca063dd5d039daaa2e86b7e035d501247210eb4ce1835e3c06461a95b40c8198ca22c8539c0d736fd76b6ad17d8ac21f1bd29d14d49f0ce07e42d7cd1a7b61239013a3c309e8a7e6aced2341be6c9b38e95a094b509e7ac2902630f299742c06b3d0a21598c0f009168ef6da5fe13ca40f58b75b4db95330b7ae0e7c149705acf925ef3ce1bd7840ad3241f8cd171d2bd1f7065b4d9af52801d8cbc1535f8c6b8f57516d30e4466136d0b9b94126012638668afd22d303a5bdc6d269b6a5771928a602552d27f0c3aff0c68c51e5b4d29f9b40ab7a81db12125f1459d7c1cfffaad46eb0a3fb99dac9fd85dc16f69df8a3ccd04fe0c9340a15ae98b12cb432281e1dfdca29871275acddd9727690a24a1ce81fb29c821c0ab2dd37335949c462053355b6a496f19ffd423439023f3a37129e053b52f5543bae88a25ba19707e504c27ff17c9d512f560b9202dcfc7f3c85475c74e80507589adb7a05abd428f15981c7c1c724a55c0d2121ae0c75aa4c03e0b27818bf4c479052e5609f19743de0675816d6d167cdbb65df7c628f5a1aceff41a2051b3cd2a91674854730a1667e5127d9718dda64354c961e887fd32fe36c6ca7efc0e6c412120b73478c1c832ea00b2db109b22da4b18928a307177a3eaec16201c398a6374583d98d09a0846ff472b333db5bb10274ff77d3b4b275ef5861e9a31c8d74ca4e2ab2b7027568a95d9679233ee6d4fc53536636f449daead206f286a103475d9178b3f34bcdca3b4dccec1726a71c721ad4138f872ab9020356b4ba413df93f9978021189c0d8adcbbc40fd7a75a849532fe1d3457337bc37040e1e6416825b7567c40ab24d7e919f9e78da8f1b89434c299db6fb32ca827f081c8708b5e23ed337217b1a270588bc0f3f71924c29ccb75cbc3fc8c80303161ffc84c4bbf8b58080831030211c6c74375a262b8062b53ad225cfc071d58d94b6bce71021dbe52d13f87d95609a6993b03c028a73a4f41a5348770997165f84e3bca930cd9f132406dd66fb66c1255855fe0c62dbd62e5804fd7ad6b3ee474e5c198cb370b482745acccddba1d9a3bfed4828bbfe2b8f672ebf78db0efcac51e813dcedbdd1e1de854f514df8c25f5dc71d15021a74e6b9537c09b3f9b561ef19a7d37df9e3"},
{"0000000000000000000000000000000000000000000000000000000000000403", "0037d3d925920a7bb424b0c80b94bda2acb6fa61811ab235f33ad0e2738a9b635a1fc8f51dba091de56009f231c1c7c47fb0a285973f06ef78d282dafb71281f065fb1756c9129a3da73aa224c062936fc96a46105228b6e56e3b785f7b0a8996e5f435a45a17bf24d31c394cededd00fb2254969f39cb80a9ad291148aa136d0969506c4febeb5ed446a161b87949a32b37981df661592366d6a7f99792ba8656dfd1ccd10fa94000aaf4af0a5713b9cafeb6a66175afe271d3f88200146921658717418ef5cfc80f7ffb9003833adedaa80595f99c9008765a55e0831db26538413491d1f0d6081a3bd74ad5cf59421280b883b24acde924d40fec0736692e4c841513b3553b029569100753e5ff55f82a8aae42a38e177ec14d42eab14a0050d99f1ed1ca195da9b8909bdd47d40d12923540144e86d59f423c1fbb33244cdef909720cd5b872753a2b1e4f1c60ff0307a187e9879098e5b2573938c57a97cad27f8378083f8b112df08101c184bcb619f1e5d739899d50b51964efeaf26174e9c9edd5e0e9e9da91f651d0032331bd9e3ceea89d4f5733c5d8754224299ccf35a0781633a2467e876f468bba69083fe95276e210de6fb15f6e73c515b278a5c0d9469ee1c820b5d2711e8ba31a9b27e5241a283d468af873f0564d32d3d59bb4194349728fbaf12b4fd1f67781d74f05eaeda4ffd4d60943f4060b02d6faecf8b4ec41d62c9b2a19bcd80d0daaa21e5c5d586bfd9c35115cc4960698af774d550abea1f5ea4bcbbf0e8cc27a7227d5e18694b7bd95155965551f1ef25fb393d4becdd6313a7dcfb686980bdd1c4d8dda32338f6ad47ea2448322193eb25f6611a09d6f9868f9cd8c85a4f87d3fd98b49753fda4d138a4c81c6d90d731b0fa17ab049a3b70745bcf7b4287a83c592daa2bfe714059ba3c6a4bf0d6378f3b7012a85bbdc8df0f535fcb498a76c9c594a599935d82f665b7a8635de9df314d48f0e68be267ff995b22211bbf107db3614cbd8eed1e6ac99f0e900fcfc1c4b325b12e43ab7edb3e361b397f52298f24b1c361a9e03e9cfc99681d9e03dcb408067bb35f87935d4201f186836d9044d977d10dc7863297b95d273487f286209090569819825f8d099a392ce75cc2261809a838b11a1fde4ef958a89c586113b3bb78fd2c3ea1e581701ee335d045745fba4bab5d0594d3ce72ddcbeb48404a495c0e1497bbfd3dd38f716cc7602cdc79861bd167305f9db8c552c9fcd6571b435add986ef1b034939006c69f2e51ec96d68159019ac90ba84fcd8b5e9060afc88a948cacdd26b8a416ae21d03b6bb1feaaf15975532514c53ac7ee99193b89dd0f1082813fa5c0eaddac6fc49e492cef823b67eccad7dd78911380725ce8690f159cb1f205d781c1579409721959a297a0263a5ab647231d3beef42e5947b4fccda97da82f92d839d27dfda132d42b44342c535fdaa59f13ef8130b17cdf6c1333e17ba5c949ad1f6fba777c27d237a47dabce40f6a4a2b9f1d45d3b3e3ba43a8bf5dbb360bcbf7d013541a6ae713818fee49b665cb0432448917fb6ea2f0500c7a80d6622d76bddbda3129d3d4080ce0def2290b90e480c621f816def77184f8bd016022749d9ed512bc015a6c429f8d3a39ab618bdc1ac2053ad996ea098fd6d24fe2d3ff256a7181cada84cf14fe5ec8dce6f27bfcd0f739bb77700311515d26c40daffacd4338bfffff55e51641397b49831e90ef772c0fdd49c14e3894cd5b566fc6cab2aea3adbaecd3078dac3ba883069edcc401b461e0e7f60816fd34a22a1e8752b1cafce7dba3b37fbde24b7da1bd51633a0d66a903005cea113985f48181d3958e4855d4834b4f5125b33857822b73cfc908c356e05e61151aafd2"},
{"0000000000000000000000000000000000000000000000000000000000000003", "0066f07022cd4b851d91a1b28726eccb69ea7eee710331ccabe9e134851a95c512d0bc98c6bab45e4ac90ffe5c8f2408f463de3b24398f27755e51a5b8bdb63801dbf777dc24a19be33777c8fba7da22239f991f0448c867bb5bc6e943f2813c832577d6cfdfb7402b097b3b2b21d62ef9cf94f25aa2a0dfad983f722daf09c412ec301f9785e716d335c4edd79a5672d66c2855d574b11b5ae5bd5b4e368a06c79d4636175b096903a509dedc0f28cf6c779a5597ee87eaff5f5a17990a05b310109bdf6fcc0ac220d5654f2cb3344842890908c34c090a56bcad0860936e22423c2a085585a31cf0154dca18af4344733a3b3eedd8cad5ce58de5506b9a99a698cbb8b212b70eefc23945ca01647d5d0277d599a95aa7e4b77354640e238dcfe1a19dd25552ab531f7c10d2ddd317485258f70e54e13c3b91c5a301fbf3b574f5151808f1478016d61c5a2522de0e1023f145e00c6cabe472c7398dbf952d32f7e9e2fd00520ee95852840d1c82255cdc64cd01ab2bf1fc2850ff2cb1d53b1a313a5d554b1d7725ccd2ce91daff438112bebb41f25319aee94c0d8412f4dcb2239776c063f65bb5544d694aec9c0cc39195a3d67e0de786a10f6690602a15c611a008509a3b58e91674ddd23df0d5023033f5a353be7f5635e40c236fe818195c8e63544ca845f1f708d083205365539fccec1431c349802d8255fcdec0c2d7a9b106a4f7b23e228aa5b04c509a6a676dd0b3a549ce65635bcc89d7f66ac9d3fd81137ba333673350dc2ba984fb649b8e3a26b3d18f241e4a7f4e0a8ac8bb6500a28ddfb51e2cc453a283e085d1cd57f4dee72c1a9b2335b747d6135137505f60d0aece7a6debbdb3b4632471528cf591036161a741cd403a7614c2178d140f7e9ec49ef86b09c36ce52511f26b3e898a6caf4e6561c91ee2e86e933bfdb6001433d2d7411358fa466e464a63c4baee734795f535694eadd5de944b59651272d5ac044ab2eb03c18971d452fa10fd318ef2f9e2519b8bbc5fd977a762bb32ad1b5b5f1729f1bf7d96488184b4025a26833d7630484a34886c857d8866e608a4b07d47d29c4f82e251aef12f5638982554c3a87b04974e972be687e0de810abffcd190a1d855a04b11225f3db9c64bcca081b369253bd7ba388eb8abd7736f73faca69f4ad65a57054ca733a845981b30ff4176bd363d92d6e7fda7d617b4f77f72656283745e1b5025690633128bfa6456079d65bb1291e2f1c2d4246a11523b223b2198ec401abe7cb6f00e42d13bd6221b6312d455672015239c0b6c1d91e0e34795ba30a2a69bb3f58a267ed69d7f1222f62f7bd8e02d6eced1e6e7f89faa295eb83ca81028194563999e58cdfe39342e70895b8e47dc9f9312edd0a8f8988d33bc2e11345c9f46d507e73dc6bb04b9e33ad012403752b0149ec4ffdf02ca7f365ca238bc8ccfa0a14ac96d2dd7713c3e17d600665ab6b9165758f86baee113b43b15598aaf4fc1ea0897360233b82d804091bb0fafa6c8ea0a5c0deec9757beb321e29cca7911006a33d2f462420db5b968b14d6aba9281a56052ccd7a606c2c4975fa639deb136f59bde51f0e4dcf4510e5c6f03238bfc4fb082700537ed68a28645cccc828e79d7f1b835d8324bc92dab9fda587059e55fcb6888bf2c7fc34e215d98922a7e3bb301a10a568b4f60c322196a6847a212cf275716afe3fce196f616b7a896374d0f11271014dddad9bd95ac59537dba2f4e93e7c3ff553068ca4d0eb61c394cfaf790d4690dadf8eb6d737e95390e34f83e8e989779adf35d66d9654b70131bf03c7587b573cbe4cab79dce62563467161d406730b7d7308cfe88d298575fdbe4044dd936aca1d11496fb2150db476093146ae4a4a6f"},
{"0000000000000000000000000000000000000000000000000000000000000016", "0012abbb486c2095622f0530c5419392f1a07d1a3c037ab4440cd0214104d002d69da5fb6b27e49dd3a5084cfc25520423f4bb057791ca63619e24dabf439038c44f4d26f194b3f26816a0d7ff519e18ddd78cab23e574a967dbf07bbd29129a21698af930d11a84f62c7fca5755924e69509b134e9347ecddaf5698179f3033cdc73dd7d819fee3940cb2d2716951225f7a763b198c89b855a8d8b8c3b66515c5e5b2225c5e1e7701298f70550fbc448f6035efc772e1eb34353b0dd308e87968d7b146519c6332dc6cb7b8268d8c7956ed0526ab53e6919637d0c7c2445ffdf1be41ebd52bdb0aab4422131d20139a55a2d857f547ae931fdfd5bd0ff2393a400afab482f0f5d2a4720df9be24793e382194deab364a008db6e7e2be6af02dacd59a0a8b4d1464faeee212ad26f4de44b329d8ee0e3edd764552304b061d5ee6fee1727c265f1b4801bba39a5e571e023f098d344642d90bdeb18172e7ccede4b090d377317857126455ac2909eeb68940b50411bf5292f5031cdd86213ad48815cb1fd9ab78ea7b6f1579fe12a12bfc65de8fad90539b942539d0499a0152e56aba35039fde89b1a266652cbab6e2fccd87ead3f7194acb0946433716d3a2c4aa4cb15893b44898696487caab06eaf09db1a7329368c4f2a2854c7a24efb3ac9e6f173a839846928cece2c0a86ab8c45332adf897a838156ca77c7ad288356489e3a1975311e9508b1cbb9a187cc6db48547d99c84cb450e5ba645e9e85fd77ff3b72fb47416053e1a0d7ca0e45e79c929cc43fc3ee435b04492f69e4cd87c4864deeba76a1d5b0b7a666249b5342d74ac0767a94a8109af3674e39641accaa461cb5443be63d45552e36c5843e909dc7bc138e64387d7f1d80519175534b6547d7d212b2c2daf802b548c57384c9f1f3f7c607c6c632dde02b384fff9fae0112877b451ad43bab1438cdb2f7b3ce77bf3a26dc13a804a4495dc113b88f3155402397a0a03937c02e0e299dca552f6551df76817d0aecf95ce702d06f191dedfeec198990f85b25c646d648b48d95f30fbf80012e3974dac413b17556525ec919af6d1f9430c7c42a820b50f3cd909b242efa2e6e5a944ad76b1e5433171525885a53f164b6a3e380ca2bceb374f01fa1933ada6346dd74ae53fc5c764ff7781a567547d9a6600ed6d7801d94da713226230d47df06c5752a57cfc0221e0c4b3009514f5d2c4252adf3e2399bbbd822b92b467c7a6ca2e8a1986d33bceb7c1fed1203316948502487b4bcd96d090b0ea7711ee14eb64ae37a18cc14177aad4bda9ecbc5bd823b5a145ebd3cde9065f32dbb4414e3b24275d20e4529c8ac061e73d1d3feee18a612e2f8c6772c56af51e125b8935cdf72b6fd87281ecaccc42dce5bbe989905de557e039b333d69ea0180e6a6e3482bec7074511c11291610bd0ff8435a1e8b47a0858b79133776b3b333b255bb34ca5aaad20b5bdcc3878329af57ba581265c70bbe30297879ae36ec965e76504c18b94e665eaec443c209d0319d96099423f284a3c5fdc74ee1169fead76b2ecf5b6f9210900a888859236598eb54aae75165fddf411985610b420ddd9ac51be3455dd460f8cd56bde7ba4fb6c02683c703ea21b451794b747be67b266a0faf5fb7b702efc30d9304e1e5bb9a01582349d54916e24e1efe0b048f98f3cb6b08f676d0b668abba38413ff5db6b272435680a95d567241454dae7bde15ad40f7c92d235605c5a2c5b56b16b25c7b6a2599e3685ac94c8b5036718b4875361f32a7a504ffd87ad32f9189e1eb82975baa8d0d2daf92458182748574f2770cd9d1c9505b3095225824c06d1054817724e50ce400d5457a343285eced8782b21d85716affdbc326224ecff3150"},
{"0000000000000000000000000000000000000000000000000000000000000003", "00027229c452938ea70bf42bfb67ac95cd6d1d00fd2e206e5d4698d08be38733fa6d5fcec27716f4a77b049b93154f9b2e11ae08a069cccdf6b453437fb7d010f1a1f32b5b7b0daaceb194615622f5692eacc377082eaf3706c3ea6b2f79e2d812c1ffdd28b490afbc149b52f0006185c3624535ca4e6778e2781997993e32e38bf1e87401c3e142560218554d1e658038f09254239b3e012e9f538380b6c05fe868d34a2d1fb0eb0c4b399d823a9c9de897e7c0cf6b1a7ead90bc50dd1c02474ef3cc166303e1924df7d29c7e2089d6b6723a75745b61a63a9f821c87567970c76a3c1edf320b469097e8945b92377d74d5b99b7587bd858b6eea321082e6787255ecedbb9bb18f31e92e4928dabf60291c2758e8fbe57f19b08103c3156672a5701b0f3e5c4b07fb33bd2571a376d4cc32b7fcb0cba09dffce726cc6f42d3922018f38fe47f0e44f41870f879dd4fc013980d1fe97b9e3a3437337fae41b20eafd5cc4a6116499cb104461eff772a70f1f79077a4810d55a06044200e8f2e233a357ab90d4e76892111130910c3b29745ae6081ae10727a634826ff6897f0055bd7a71050a6d26a141a3f27659b389d3b714a5dda61b76e0066a9b30be5deb1f1e3e16b656d4b83ebcc0bb165807e113bfd3ab9e21b0f772e52321109d49ac92a33410d835807a879630ec1d61769ac04a620de8bf42ad043d6bac5004214a90a181ac77c838f6a318d69ecc18fbc63961d40502d2bdb33370e98fa58557ed8e8d086a1771931eacd7e71672078ac4ada9870b9246e05826b30e7057a749398468e1166d5c8f3efa5c2bc608143a790f035d5984d6a25045eb1c4a07cd3daff44760c6c74418777b4038148d143fb1a5c4b011919513a14ea9aca46213e58be28eb3e8ee756babdb3cbc15432fe28aa678c1e68773667643cfd11268dc7eb10078842afadeeb5f72dce239b85d7bdd51fbb805211c6bb66b902763d353aab353989ca19a268c34436e031018da9469d669c87d845c51d40d6965111018382e00ddacd21cf0a56a21233fd0a033a9998d74b2760def9ea4f64a6f11d4831474ba62d5e1b03e75fe3523517a09e6b339cdeaa513a040f6a6f302a4d8c94d12d703d39e8e1201295884d4d7e8a78e0c6b33f08d1dc386f07a0e5351c40a431efea3c37518b038ab1801b5d121ecd1967e9df732dc27d02a78bc7b1fa51d2d759b2261d15868998244b02f3a449252b6d51f5a133b10b33651f46bb405ca1c25f8a1e7a5a45fe13517b8fe759e18505b926e55b7f5626122ae16beed8e0801d8df9b9f0d09853d60cbdee2b549bb221a7b251f66bd80f2ea84c175bda85b9867737acc171f4b3b0c47be34cc636da5a50e63965ca63145ef4b332a95463752beba55f98f1bef570ee1e0fc7e9eb0b8866e00989904bb0c20ed1614006948ade62d302aadc9e40830519cb3176cc1fc0080cce1fdbca9d655323cc41f7c47d3ec0e35cbf77998debfc7c6be776955b28e2c29d4f1352387e13cb5e84347ecb8beebdf982b7a07adbcbe630805174414db766065034f1571dc78ca1f19bfeb7e1d2cff7cf022300e95ab31f200d642b20d2e12d7d7fde863f878f19b5f7182e0e6d73e14740e9f1151e7c4600486602595f9fc4689e76532695b017e707149e4ed0b6a7cc665db42644dac1a7d28ed0a26bc2dee4af88ea5fcc37aedb3872ec5a8bab9dd0f0e851ca185e39eadc977d0444e27b2f0aafae44f5d56f42b17bafe21ead48a80d5628263985fbd679606263ddcab8721c98114172dc4edbf1e80383c72a810ffad98a91dc183f1ece3aeb3b5fc01a38fd0bd3213fad3e2ed075d52eb2ee8fa774e91027d605a055c1f4831659a92f54716c5e292b5e5831672c8b8afc3"},
{"0000000000000000000000000000000000000000000000000000000000000007", "003b58a789a43e9b6b98f2155f4659953c81555d9e1b93f33dd8487c55fbe9f93f3c6f6732cf0758066715473740121bcbb31d2673de9adb3e25884f2e9f071b1d2556ebd5cdcd3a0b1770fd43ae56aef457dfce041e7a36e8d11121f2c800b359c0de6577908e5aad330399edc6a8642f64f3c554b2ab0a3d83c3daebe10a842feafbc5a18f36f250de47d60f1f866dbf92e21b568d90c6c9efec7009aa84835a4616b4c43fb77d0108b19cb3c3c5e776645334c9c3100d91cc9aa6280c862c09b316f38f2486e70ac9f4f341cf5f31bfed0777a1d4f2205c9d848c68282e5b0d0f3752fd1cbc136d8d7357081d7b093d659291f9ca89986a920cab01f928bcfa86eb7f28f65450aafc77052a225964af0e964f018eaadb93d477b59d3dd685919979b4be860cece9754fd961e9689a92f0dad3ee760bc99aaa6d284792c57e54c88151da3615704002b73298de031e00b9ee4659512cdea39821bf28b71f9e618db3365310e81091835ad19d5e6c95289d4ed9ce4bbc39a03925e1c957ad21b2d9357c05059feea319b365ae9068502f5b9885d7e1476aa41884dc521eda99793e034a0d608459c9a6e665ac7bc53d39e006c5c2a7d0a5ee24bd616c815f3941b8a0256a6ec9d72676fbdf140219480aa6dd866b51397493d1e6a2d60d3d5b789e671ac394f985620c0168b824364278033a1e829b7ad7065eb8f10b033150a437f48b22634ae2900ab4a45d190938e615d95e6fd733b5c1ed44d2afdb2a3f6f0a198cae5ca6a600fb418ee30e92f1139d0cae3e1d5f31338c84ad1bd72b09dd63c3661f023d757cccfb81073b6a129f079d17dad8211f552387fe5f1bfa47160a2d83c310697c795be047254944727a338f96c6a01163fd7b5ce45f53261114abca4547958776d8eeed39401ccfd55171aa93f2d4832b6389a70c939eafa40125367d8052e671857e82656a5716de77d39cb9703bdcc31eca5d43fba1835749e2f95843312a1bd07a02808d25b24ecfedf6d88070f68638da4432178170587975cb122138d3b42be9a154530cd37ed89f65fe109fb8f44f8fb9e32bfe820a8c267378cd593b2517224c16b7a1c9b24c880043e3d75debfedef47e3d9c15161cceb54d7eb0767db29b276a393798b77d970b7275877989a0a1d90f43675e017fb4171e94fc59a408845cedb8156eff8bd7a27b85e3230531eeebf7242a045df482253105d95183d4ee67636142423ab85e15f085ff115a10cd9df82231c123ceecd49977e3c12911cd1cc5a2700380e5556729f0d0f2dc2efb8078120ab48dd91c9204f0da71a9622bf0f9c968ce8a7473725bfee73a4a61dad649740077cb46afedf7cc021244e165a40fd370eaef121b9c1800acdf26fbd11133415ff15e52d50cee1d55bc6dd84cd5888b5cae770359f3c8dd5214b2ae42737eb4d6f925010ccc6b1d12e8dac86b691fb5d3afb516f6cbdaa1efff12aef0189e7a4f1b5fa0bd8e73d281d01aaa9d6abb2ef8ec93468d121b653d9996403a7c04f43b5f7950fbebde0dfee5de50cfbbf5fc6064bf1ffeba8de2fef7a3d734b21277bed7bc91f0f625c740d058d6a59cbaee4019e67b69351f332bd2c0f5a88577b5c589594efbe1211b6e0b5dd3225ac87d42f9c73542a20a66bad5800414f86a4408c73b9d24a209dac245d971483f9f242ae6fbf7ba75db83f95ae363192f91fa0f9dd9ef420dbd7b9d01e3040f86272279a9f1e7c70b1f7cc1592cfe9ca8dcb5a7edea3d6618e4384c99c64f3c66d807354e42a778e777cffd30e26abd99e0e7e1b3ea410bbc5c604bd7aad31ee94275c7cba742d7cbdea8b213177350965602ef06d30153b7d9de2924d93086a72a0eee4c26e7bb4d9a1b72e47af0d694dd000b4e38"},
{"000000000000000000000000000000000000000000000000000000000000000d", "001d3a5e7d663d53a3234107da4892c638e5d5310d03647e6b65b127b1c818b2ee605aa1369a9dbc57130c7e464079ddde53f199c52ef3edf3b15233f65cef12ac3b49fddaaffdc70a5222175f5e6d814b9d04ed0194747430122a137e0a91048e5a2e69480b91a8c20b181dc853868b3c8240233121cf11a9a4151343f10bb4d3e7890d9a6f5b5cc2c66bad89fb0fa6fc865e22ab04ebc80d96efbd4b124ea97539ddf2b5d5572501833238f2e06f6d960ff0d6c4f3aa3a0dccbf94100e13c48797954883d651453b835701eaada9d848cb0bbfcd7fa8103eb5a174913bc06b36958db9f64dec1d2a77cb89dbbb49724d9578df34e306e069bd2926022bb3386f255b45f0c1d4640a785225445b188af30806023c19cd06ab225811993829b668979747180c07b3611db48e4679a36011592ea328b4c720dedcf12f669f5cd95170f2b01673f8b6599fb51921d05bfa01aba1270fdc426d87e955034ecb77ca9bbc358bcf11fd26d317aa8787cf98067ba9f9430616bedea8df0832a654839827632378116722b6d578fd2f4c661c13727da103519fe5903b4414ddfa61adbfc3d63df107fa2dbbf094a382fee5f428976ca735a275ddc6373496b3b4345772b0d345e40af1ddb22e78f2fab84e0f7a230d5d5de452f60e21fe5ded0c6a61d37ad9861603ae291a177c1f02a184a2cb29cf3734325c0ab606d01ec2e83a7945f9d0d72daf7c1dc31105fc12d17abb347c10a939b3df7539ae6d55853e88723d4c7607b1c8f82fca9336f6dda8ad60f7c43f87ff9c86f53b0ec326459de63feb95ba3e41611fa31b20db56ef0bdda6163f39125bfb11b3baa95090b788639edc0011c75f34364958a0dc24547ddf62ce1b704c3c758a3044c5ebf51d194990c4835598794ca1be5b96cbce32f59e245d22cd59e723c54416c75515fd1e5587450031c008d044b236ed73208022f3cac590bc310e9c0a170431ebeeeaa1b9a012f27f226072a0b4dc47ff29c75deee315d1af76e34a053e78dcced8b0b7df192c6249d76ecbd147aab54656a2e28842d0b65dd00906c33fb7a463d2b1c06fd564853fd4d28821d6cc8b2132a9f69a6c84276f8b62dd141f3672f2ed389409104236e8384eb9d34379e366bec2353a3e07f22f15154692f4d2221e33cf2e6b8ce76a1f6aeb177ee8d50b6d7e3ef9db45d595e054eee2350de7b4fabe54a9178a62216720fb814ea686753bb6ecd6f2739a9d22134c6f17315b11bf2242332d02409e0a7a877f82c24e5d5485dc6c4b9fe5aca85942cfd13b266079a21e0e96e7beab135e7b58e06484e9369d9923c16ad6bc252bbc0c94de7a7ff1b5b42768b440320153114ce2178f00ca7fe20b09f545ac35dcf9d99f36347a0cd520b03e632f16a34d8405251cebcb7846475db7343f00cf75fb9b0f981ae8f4302aab1b07aa00929ed525032fb760724c0f53889413ce633a811d3379bc72df05fc9e1b9fc20c9947c510e28d1c32287553e73e001c42cd3f56a4e43943ef13842d600523c8ff3fbb290292e672471ed8a1cd1c9196c92a2e1307cc79b4372c0897c2c5a057b914d2437dc0b837b13ce598575508525db5b9451ebd486241ed47b1d2eedef2b7893b65b21690cf2791a1502b1a56f0e20e331a9cfc8dee085c21456d4e67ae85b12126f43b5e4081eaee897c0faa449ee36408ff279024fde1d8bb89cb05f67aef35157c5d9396606eb30ed63df677450634c19a970257e1151ad2ef1a17bc8c46cf575e21ee219f5883c50e444e06ade9d5399c95a3efb124c6da002ed608ec3c4d53dc1e611517885c059195cf84c31eb21de5001fc17728e0a8b0bfbe2eb8f514ebf3d29ce256dd4939339c7a14a644e5c0caa4445adc54211fa4ca2789"},
{"00000000000000000000000000000000000000000000000000000000000003f1", "002d56c2e04ab1885ef230446aa853491c0af04f1b4d54bfcb7b5ec65796b9f7dbf9de5e06d9c5775988105991f35827dc65b8a673cdb56a2f1a0a36f5c82a2bd4726d6294613b4f5ba335162cc3470bab9ae5280082636f3fe2de79e2d1f5bd3ded7cd630b572813e43647aab7d51bd9da4cb4579b6d8d3e3099d5e8248211d46b0dc158028c5da1347d1307ff68a6657e67a313f1341725da4011ee1774919fcc13e1a3a7e995201a09f0ddfc6ce5bdcf9e4fe9c28ac3a0527358e391a6d020e4b12a6fdf3bba524005bc7be7ab638f50e01f5e79903c122b76123f48c9c4339c934dc9ca02a49e50293311f3c4734bd696fc56ad9ead62bfc2b05051261997e535f2759c242d09ac66f1943029f1e0f1d604f39340c6a69bef18998d3f18a978b581f0f460c53dfd732c92f5f204fd34c23aad653c601bf8def15b09b95f4df7971997b495c0bf7d4dae13c19bae0038539267c934679889c77844ed2b6aaefbb7dcb3c2183ca521d22c319d675a4d7f6e821b9bcc9745bdb11f6d154ae1089bdee6173c1ebf69dfcf8894ca4433586342e47aebdafa26af3e0e069450b24855cb3470aa7db853a257fdb6034c15e87b77e84e3f5690a7720f09740d7adfd65750a53635f5f6f70ed64b411380d9d2feb241724d312b0313514acbd394930f5dce11661de2c31995b4b6c5962e2f8a574d6e2c83dcb17057a4b6b0e86f363bc41529ea93445a8b5ae39285a323d9400ec7046ddded9b334f1698b4d368f140e0d07027f0ce09c1e8974bf812968d359987fc0b5ee6b4ce847931b1a1dcda07236624b55505b07435afe960b448988f29f246ba72423f90463e55526466ab0e21dba872ba1c9dbbcc0975570fe42a99abe8ade73be1304de1cabcf7efd7da2c9e2eb5b85f6c260fbdf3f23ac240fcb89175c49faf437b0e34c0575aedfb4b700990ac41e0d43897d9746f48e4aaccaa8ff1aa6dd4da56602dfaaa3e55686466b8eba81db1a5bdaca6e07381afde89aca03747d90bd422440c4579f255ff91444512b3769427ff36ff19abf51ac5b149cbbb6f90d7580f494a33447d9fad0f516bc19c45bb5857a5a40a3f2241d611f6f9b5f36da41ed374a31533d004a239c2aa63399a6270cfd46f7da5ffb6e22b158d52442f2f5348f6dee85fad5471aa967d9d2a1521a087902b629bf4c99ebfee383f2490bd22aae74a0bfba5820fedfdd259c14ccfa840595983b67b31230fccdd20af299f860c905e590ed50c62073d2925919dc14d40b055d604764cc07cf2924967de559915050bf8af004b9023e64da4b85e4df31dee0d280a2d1977c80ec1e04c7690d91f076d47b3319f0ff385df1d8be5e2f1bc45c29f4ed1d67f9f794e62b68d26f51001bdd3c2ef8d6a2d50f363d9769971bb2d426771c947a7bb302a00f15b15f328153d4e4d3c07a4ac19bdc9b188e45998f072b7c3d3ff743657a77461e13a24a1e1e8f24a513de999a9101f2ac837ab0404431b8ed2f6bfb292e41ab43ad7753f56c15425df53f517ffe1c517413cc86561959267b001842b21536ca5a5791b3e47d3a5f06c8b05ac0f1db556772b1cf2ea34f637cbdef156dfdcd76b102438b284a17465e12ff80909c7949355fb7abac6d4243ebab1770f5ed8115fd3bd195a00379859bc2ac3c81710fd355156f4a31148012db5648efbf7bc29d0c1709bd453f9cc34bc73aaa5c6d5c07443d9b1f765c0fe2477113244f9adced56fdd95d2ea82996adcc3f5897a0d89834dcfcca32147466d410a2d0f8de9d13e514285303cbc273f902d45048dc25d4fb102cca0fcfa777369ec4e8962dc1875457612699155d28a77407857c79e97463b4b34ec89bc39e3dbef44437b766adf76ac820befe7586f8d1daebc4"},
{"000000000000000000000000000000000000000000000000000000000000000f", "00893317f3e2b0ebe43b6437d0ea447d629932d94c289d25cf206b6dbb7d23e330c348b338f135fde6890c50f1ae1c09b220c09ec62ca4da5dd6472d1cee792974e70918115059544767d168ca8f422dd63ada4707f6752040e4c4018ece56262dd38e7ec0541d0225115ba61b7bd1a9e1caad32be1c326de96e8c9e5e202e86d9bff820175f25d1b4600742367919fe35351166bde4342aa6d245fcfdf6727c7e9ed234d85cf13d0596de227f43fc410c6261a2065ba234f8bbd5da36360416d88fdfa2c3cec7262ceeeb1bd22cda97b65b0d821304dcd862cb795225615553f0270ebcfc2b331975a38acb3bb53bf13c24e911e539d59d92bb012409a5ad8affd4fe09087f0127fed9200097fdb2db7d1dd3b692b66705cf732d61df4d9cb2ff24d0fc5f710d211e3f740db38c9b95226494a457da4bc71e51580fd256ae05cfcdb34a17b731323d4d1f75a23e13aa0112a3bcc41c1a35cc186258a3c32e7e24867dfb8702ff2c162587be23ad0932b938a9e3e0d923d1bf9a02ce137e38e06dd9c32b09d845554e6ac35dba1f7d1e78e7f6a59b88a9b3f762a8cee2df5d6f895bcc4c027bed3939823933e5c5a35081a3b10a2954337cab214c897c721ac39feb1df24784277c9eee37df962f0666042a475d1d916343d106131d05f4aa5c51d7fe15705f454e89456fb541db2fef69cc2b0281f855ce06d1fffab651226ba51c3118e673dca2193f99dfe0193057c5778ca24d6cdb81ae4812b8e38ce03f504b09165ca636ccc3a173c0130c4564f36ee3fe9f2c57116f59c7058543b2a0d031f45ba52f790c80ef4dee09174aae5baeeeafa968856e1ecfd0626c2475e3ff28636c34d1d69241bd648a04f8e17802ba4b5909990ee6bc5075478021cc3863b04db2c7eac9f3dcc3fe36bb8f8ab9143371ff94ca2d6be653c2ec67dcddb600aedec913c5bdb259cf912d05473b1225fa3e1d64131ccb557c2640c5db0de72fdccc25721d4c7ca99a0f7e8bc14c633d6337c97587f8656801ed6f515269154f8126722a0ba7ff7431c9fe8e50f4c7e697a52603756f9793cf889f0f9261d4c56d430d3855b37c83077dcc15fedc672ba3dd75f10335975d84e0cdd15d08b7ad507c9627856aaf652e82fb227e7b9bbb778d5b5605461fa285f3974e96b7dcc5aeb6b21b38e7c70957f0d313f6801be776c2783fcd2446cc84b8d852270e9b9c0f8c9fad906e6b148eef8d87b720bea95e133bbba91bce2942d4e6b2bcd27d80a11f5a8d3f9315690cb03d4f5327aa5e52c3d6a32533592f3ae652106681d095517ac7642384d9d54197fd68ee8f2a8a7329cec960e5a87df3de685ed2664a5f998a3d9f7254d34ff0a52fb837ff1225d24370297ece9dd8a005733ae73fb81e6ec1365fdae946fb78e2c5e8de0172043944512ad2aa5caf9f659f364226d2d0bb5c20390e31f60cb05f1449ec84e172285fdb49b5a378bbab060819f9e4c1f67bf41555c003f69fc772b7fbf50b0f39f5a386df504f795b5461a1b452494534783fba11f184b18b19b5cad6a953a7b2d5ffe7b399ff9d973303df99b26683695e51762940e54c5a28311aed2f1c81ad2c23673ac1487f62d1bda673b24abcfed6f0403615273f7455c1b7b585d5a6ee4dd5c15afe32de0661b7fdf1cf9421cef3c86389794f7b9de91f5d36074f9b2ac0a429ddff1cf1d1d57c6f4cc7d5b8733a0cc91912a1cb7fb4a54db7b8bd6282165d361ce03239a79add42923da38992551e1f7e00e655ab56d6721104d275d59f45016d6f01d1baf830856fbe14be4519adc560cde02939f1d5d313627ff67db99173331523f2f9505755f196fad835a2a4783e662047144e1d42376c14cad323cdc89b1438a43be4276fdffc8f3d"},
{"0000000000000000000000000000000000000000000000000000000000000040", "005b32b36a9169b7b99a110fbec8837486e4bca13110c247c840cd761be100328c07a10f3ac6b05821043cbd966461162c4597be649dfa51939df4831fe1ad74da1f150829fb87afcac8f832fc953a5947d78f3f050d186c0102cd691374560df7737c7632431cc6df23e69770cd166ef8b9595ba989e7708b542affb57b1503320e7ac676909c4231ec40129e8b2a42fb1b8331d1d3e3f47d86e5f7f936cc54738b3de983f01af30b2b76afe2c62a63427311c29bdbc97d0c40d4b94a47a84ef55aaac15bf05586d36e6a315df9983e990716be07eb910897936a5b918af3928d5cb82fd8a10a2a0c73c9b65c12b5c8d9b3d6c9d2dc359b0cee79240c8fae92f5accba5798c811dee7dc8ac72c8557d8f23ea7a1bd6a92325b8b3c2b7163417cd77a19d711e0dabacc2f6ce452e96fc04d67153ea5d8adb1ec2e1171a898b26c9c30d1f83a33c604ff77e5ab8fbc13b0216d7b9e74ea22d18e58522233329a30b777d92462c969b053025224fb733571ea749d292441b9ea0d605a4aef04798470d43542378251d78edbd5fb36fe6064ae9eab551459948c9672b9ad07d8e15bd7c37700230673f40a6521f6d86809ac860a642c334bd74a006999336a34a1e55853de3f13b2352d985ecdfad3f0c242318d1c4f1dec90e814c2ff401ccf5d5ca1eba0e18a1415707ff372f72410e0b58db9e3428f95dce04e2c847d9495dbcc32014bf17a6b3c61ac8dbeacd0d23169cd550426f834904de8a33002e872197d69c0e8b121aa0c6b665331e85353d68ca823ef2bbac3b295a9d52baefac49ab8de55183fe9f3aaac5da289905898414a658a59cc63f309c26c36c313861789bdd1afd87ae0f86d6ed2c359806e4508c7a0fd47558e20ee775e4ae4b85a0b92d8231e035828965e3fb1ada2f86a5f17a238a8b7cfea8237c58a2670a79d9e5ac018dce55d7c42f975bd2708b07da46dd1838ecf7e21a83964c34ac6055d918531f9156c912a390f9596f1553a659371101dbb7ebc1d75be5b97cb3b46b6e522b6afbf5ec65050175a053838cc4683e5426bbb3e31065d7684c9665f15edf1422263898f957f3f09f4712869b2803069648387292b92a96aeb55032fcbb2f17f4a137fd90e2f79cd1d721d1749d3e0b8c35107f2197e29456b1671fcec2966f9833c227382e9c5c5d039af24e0e302dd58d9721b6ecde586942be1471e92513e742f91a47f75d01e2b17bab98fa2eef557ed9231e0ab04ee186fd2b032449a7b5d8851761d80c064204dd87eb5d17a59e6525a7b7597b45b8115da03c0b4a9c0baa1bc953889623f6c6e9696d9de99fc08910b6aa2c8e5faae7aa72b356d7fd2a4fc6a7df831510f3f168ec4d3337a1c48a8db2f25cc2e4e9b9ad3f16dbbc649260802942438287eff74db641b2b229df01e9e6176228aaf9f13a449ef34ed8392f023908e57caf7f70c82393f1b0c569912ce55576b595ffd33406e4095ec5075034d0af181f5273e56e3fecd202261ab4f4025494420f402c8716d1df651a953fba1a4009b7872fd4b1bbebebf8f22001f3d8e7a7dcbf459311265a728fdb77ffee37b1eb2fe9f92d5f5876f7ce0dd35f5277e3fa35436271da1b545b6d05cd0cb4174262daf665275bb9cbd6b7839be19e8f3ee4dc9a9f02d033b39d9092fbb4c1434edd2a0ac511adf84f70194fc6319a0bdaabdd7a2387551f3255d45c763093053e66cdaf4382b44bdab21a2d2f5b35985e95857a074c8ceed798cf03bca2d22f81a2dc8cc390bc0c680463e6354accd9d5b959551ce8bb83a2adc33f2b550f1fdb6dac0a71853d8551ac326a34c1333dff1c9b219f492e9bd6e525dd33734747d9c8863d6c9461d2533b9f301f15e0b8b242b9ff376d71331c4d3f230a"},
{"0000000000000000000000000000000000000000000000000000000000000006", "00080440fa43a4305708d1a60b2db84114295dc0ea0c5d7c7e508323fc4da1820298da1314dc3770737729c136a45ccd747f7e2164cda6600c5de4f070db144f803cdf809c421786559ba1f5e7bbc765453d03450589bbe40dce6e76b507d62003f8081ea99cfbc1a052aaa4a45fb37267af0cf5db0ae272ae09c2b114670e7c731eae4d334b1d9c11183850faa5a1b1578de225af72a95e2b5c839c4ea46d995cc6e32fea5eca8700e01cf97b344201d5a59090f874138eda581f91ac1411faa6c62ef4f5c6113320e8468e1f58be5d760b020905baa504f19a4920d4d52fc48f22b21c5aa28a296b474d9fa0edad55744407a0f80305a5177a557f12f5afddfc9698639c4ba9b08ce5d2f2e74a38d50e4694c4f2939ba385a49d8685d65351e38dfa3f2e3c19349a5df5b197c3e0a742e660d180a6727b1f264628f08308310ee353818a72b6b9f4169db62113695604827fdc595b4d0b724ce2d4055cef656bc49b417014c5ad7183cb8dfcd49834e57cf411c3ac04bfabe90b4c9c4a7b1ce7f345daa32fa2ee7d72250799e30f0be54fc7fc496958b022fd82aa768f6b6550df25b116df11bc332be9fbd03952ca09c9b0c98507366c8f1b1aa3745e546407e77996cd5338058dbad79bcc8418b3f4cedb6c5b59aba974920cf9d3973e48bc43f443b944232aa42d47a21a1a684c5b519716cd9dac4e0536b9d0f4842f05e25f133b5d21434512ff9ecc3b3a79247b419df9c50dbbb5128db7505e30c43825e30888b9f7671607a3c869b54fcf2aaf0db828dabd422e3d4446c1ece4f79d94f683b0c7d11b0115fa2d100c96bbc8a61bf2e7da9ef1a74145b149afbbefb11d0d40693b6417dd35b66e2b678876d7471eb1bd63090dbc73ae75cbcce7ac3372758d7907ea81cef43d4b49024f9762d6b50ec1c0483f0554b9b6c290168c5500322be3128f66fe8ed166dcb3d6f8be2fcdd26af70d81d2a1c9688fada806389b266bfdbae1e71d2b611338bbf033886203fa57a545b2ecd061ec62df23fd2ea19271ebef42df8b14178d626dfc725e601cbc33052abaca9546a113ca22d31f3e9bf1c27bd7fa435f07d3b9237ca9b9fd9dfae0876db97d86a0fc1902fe185de9dda18e0181569451d6fdfdcf0a0efc9ac1cb51df4cbe1e70390f98d3d5452ab658719ef11747c90b0a8e4dd15186bdd1ee561c44ed235261997fe47023ac7c71af52ab5726a3825614b6f8b8a075dfebc00d9e5dd8eacfaa3bb8f28373e6c75ad5c7bc9224461efc561f7f87df65ab973303031e9a4645eb3ef4f113763d1aea9f82f5d54001cf4aac06ddebee5b835213f4778a8af4a96bb3f051b729720f420e139bbefe242d6b5ff066c5cd5170444d66d7edd7a1673e98996b1f939097345e2dfcec78588c525c57eee4ffce4606749a8b4bca77f5731a31c39ca0b1267b74f9699f09834c8c22f2d901b53051e2e6b78e3934c470c1cd194f4bcb45b41501b78a03c614d8ce8eaca3fac9692a94841241342c2ffb4cc3cfd35ccf392a19fb9e5e11c0341853110650e8d705f5de303c79e2cc97df721a916a25a0f7971bfeca7463b8db92e95871ab907d2b1496254b8c99aa776264146dbd7282eb98db53aa527ba580e16d3e9776941678be53eea64496967fb70a7d2167ffc6c2b51e0b948aed2e553acaabb6a4f919905d0bc84830eff90e8497e3d4acddcace1c560f0c9c2903b7c4c2dfb4ade16a3df6a8f93d92794cfe353a3d64de77a62dd22f748871ce0c9e663eb63d3d12db28b05328cef1d6d7d3230f3a46ed580c0eddfe69702d0971ad8cad852cd815c97d91c61292be9f61167520eaa191c68cbd1b24b31ab82b71446bb3aaa31f429233187227b9ea33f2f09261b4ee975a5db5ca"},
{"0000000000000000000000000000000000000000000000000000000000000002", "006f901c59a010c72be0e2e881e81a61565d0e0a97261214ee04d3968be764e43e4e3edb9a918b596de90d214f243b243d2372e99464aa5b4ac1650bb8f65b0dc97c089c92c0af49a55436c5b3597529467e57b706dd3c39eb077549462dc11a99f13729c538ba656337178449b7d4fd10e56e5432f374379f1b47ba24fd1b9e9db876b0b8adddcee3f0e5776f2506e4592fbc4a654712805b0551a18cd8e294faae7affccf8b57b0a80f79219472ea69f3fe11d4d93bf59c37596dc1f2e028bef28e87f93c0cef646bf61918a581fd6d6ae28038f2c8ccfd6437649452fb74a8c1695ba357cc82ab20c9229bcde4ff3c1a2fe15e520e264317f32351430d1bab4e00ebf977c63ff3bde679d11f08e1da71bf659fec6b2ced3980adc5aa4e8bba73cf71cfcea14f0f7992988e005c49be188aba80bde34b097f7b1694a2bd2a79ca5dbd95c57822b67d232abec56723001401cc1cccd886f5f239982504fbcfec461b899a257384fb3a359be15613ef72becf64445cdf1dedd13069c25178c483de9b97550dbffc70e75d4d69683be1b0885b7564cfd1f245cdb268efcaa2acd653ce4a609ba48ea102342773c03b10eb470a3acc0d76f71b014c71176b548d632b01ef34acce3eb22a62ebae70f10da2f2ed05c3985572bd1f4d9a8feeecd18bb7d16207f6d6920700d759f28d3396c27f016ce2579d792083a8e4aed5b85af5cc3510c98cc19a6dc947cfc400c11d90b052ad0e7a23f85289b4b4cb1ca28161cbd0d4ec7d00f0523df792a79a738f9b99e88b4da277a1aeb3bf992b93f03d1eab1e8d84b7768ffc152d1f20e8f97d467a17691c922c1b276100b9d4bb2fbb8de2940b2fcb84afa9c899eb656ef629c46a5717eb1ec0ec600a4fc04d45d3502247643280abd9db11c88d35888ae8e635b057b0a670589233caa1a4098f4b4cf00c36fc6279609a1058aa014030e492d3555de66e70b99e89efc51df58b586c2f89f2624be7b7857990a050bfa8f6a0bcdab4ad17180a44ca6be843cbc948030236b97a1aefd47aa7ed4a3e955b98d2c7e7ebd650dd68b698dc43b3858a7e91b3d73573aa2447ec29b433ac6329766502dfcf9c8555bc9fca703701d4ff52fddf4c0c34e23c1f951f3f6d852d94a4f613e57307706b51f3521caf733c3f881434b3fa70474fcd97c0478d752b4cdc599bbb2574e00526bb324ee1cf4351fd71b312d134a998bf0632c57e8e172306279f72308763e6753103c8786e71895655b403ecc0db9c278096b22fa978a74ea8bb481cc8d66d0d8c825df06ea05b44165345bc852e47e0451cf475c159de432beec12def11f4bd5266f9e3ac20b4d1c8c3cb5e6e7ff351a0e3feccce21d4f820ed26a41694cf98c503ba59f2dc7d9b56114b0f5f954b7fca7e987775a12bde18d00d1b2c5b605a38f8e2fe11b64d4bb14c53cbf320839056d9c5f1509d2ccaad48b56d05cba2d9a5fc3ee035f94dc71ca91cc8e43d05d7bffcad92415723b3707403b40810ce625be9b138ce34cc3b61b94741c6c03e55bcf7b5b1a9eda2a420c3ef417412758fa548b07d72911790546c84202e0eb507960b16f1f78635211b077d032e35f81e97094643b7199de9ba17630f52c4dbe3277e0071d2d2f84c33273085187a538062a01523cd23a18476b9ec210f4bead92896b2b56c8a306ccd454dca44eed84d1440082213039838b1770020ad1841d6122929b170db4024036014178d1f676700c75e2a1a6474da78ecfa5a16dbe42e9cd979a12af092f754a434e0457f546c0c22c66c16db76cf4ceec245385a0c15edae5473c92ceebda0d331c325a02d00a27799a22d7f9d9e5c2b54a08c043f1a88c107d1d0b9f709f79080d7d586d92645a72a4712311ccabdd"},
{"0000000000000000000000000000000000000000000000000000000000000004", "005ac1e7e9ec960df137f0750ebbef144eb4ec488904723a2d7892c80cb4a622f429301ad5bda92fd58a08d3d7312be01f473d4f16a045ef0566f0759de91c2622b235d554e5a962341290fba5d6891a0c75c8bf090f4c168a696cc953d130fb16473678ce81d16a0c17ba6164ace4870b775ea1ace76beab06fce7368180f6fa53c3e0b3acacc69f37b72b718daed04bd2d9e6f9eee43a7a587e7629698d0dc702ad2b75718bc99011a473fdc8d32d9128fb54a56c3d01a5f55d8226b066e3e5a1503945660549325e8ee963e50a05f6dc7088c28a2e9eb7a2bba736219c63f4b8e25f17384f00cae7fdd741fe02b09c0ebc881de48f39e035ee60e1878ad84ca5077bf30e0164e50c8ffda294034e9814f5262f4f1e7856bb316b983c768806b7b77df74da1de495dd2f18f917243bb9aa19d09212a956bdb72a3a6aaca7ffed6e9bdbf6f45cabf04bb3113e9ad48601ba70e17a11a8f7bc5aa07494d8a56540ad3b89171baff6b4f40f43d8eb3f53d748f2770e30dfb44fff07af9f22066fc9cfff4ec2f953611ff138995ed32a4e484b17b895bcd35cb2150c074eeb9a4011d27f160404c93cef7d6eb5f0ceb178af1d1fc204015529a2392752f0482acf5fbdd29719786de15601e1f6a33e066de607fa0cf1a5a4e100e62b2f58bdf86cd33b5b52cd6f05095526f3887a15fbcd3f78f731c25c79b002fe41eb092ef3f3bbb7037238c028e19e94b3354e35188c4c3e9cff19e655891847ebad9e5735d2d3d70eda488f53c45f230171017d2fd1d482766695b856158952a6d3e0cdbf3b38f374863f541d7e86d0dc280430dd4c654a7265aafc31b7a4584a494811eb874a1c591a6a4254c76dd947b22d794ed734ce9918570f0e64dd7412608e2fe82fc0f5aef760e8a8526574f613c41cfa16342589a9d7e666b4b87ca62c2416e16c0136daab3cf6faebc08d81e1d3ca97bd536a9a21da03516f545e483108c5ba057310d3ef4a841b17e45803821dfad8121771657f75fff6d6fe95c9ce524f5516608d6d6adf3187ab74ca3f9853c12b56a99e134c0802df629407aa83a733952341e166e9747b1d12643983a6b37b3d180dee9675501f666d6d69ba198ba90c0fcb9e868746a983be62ddb443d55e01acde3e0e2084e27ff326c05ffb9b5297b09601cd93f7761ea20405562bccad0b076f4310c0ae1c8c20a7da4629b60c4378a4cbc741636556c1a21a29537185030fd4a918d457e289a6e8038533725b24ebdc05ba7850201739cba3e56d5261bd8878e88ad94adec6334bbf221e04f092ed3a482042b17986013f6f2c15bccbde228f0bf81614643181e7bfc3f2b979ed63b0d3e2195641109c964ccace0642e6b4022f12f7781939115025c3654255c75330d333d62d16d305e23a562ef159121003eb5f03c3c829eca4e650d41b5d6894b2d15489c42f2eed7d6d0fd00760ddb646db57d2b5a0d3501e12071bd3842c480400697861523abeec70cf07b92c9e1b917c0cd19522f77d9a84d731e34a95dae27921b310531ccd7acbb0bf75b112a919b7e76afccedb2bf217f5f2ce965b6ee574cc81b7652515599db95e8ba125490a04d2497fe5654394ad60f933b21c339d20a53cafee417b19adfb9a15869f2bd3548e08e9361bfb04a1a75a43299cdd82d9d14621ed1ba07993f5d94209a2cf3816579da4c86444279ae7f10923adccf24311cfdc390514d9bad9d0e33a1248e94e2e6112a80613cde4f76e89664c719c91e4c494e226af2c3d77e50e82eedf635d167d7019d59421c41dad737e78be422119b4e3e6c8d5df923714ff735aa41709c73ce1890fa9b1859806b675c3ca911a281adf944b2fea9f5d30314e5325676e6dd0ab048a4d28e91abcd89a630e"},
{"00000000000000000000000000000000000000000000000000000000000003aa", "0046e8aa8dd6bccde4d227d290e391f698cb7f87890951bbd93689486d3658b5d7a7d43eae85857530cd0697c0777597e6ccc603345600bceeca3c88b7c5c32b0a9742fae7e9417005a70e75cfb4e5cd631205eb020a4db66dcaebab30d17114f627f9bd54612d75af05f1059238c3374aa54153a59550034e76e3b651280496f7a79793b2b1afe061bf967777728dc25f96f219388c9d27d83e7af7ecd2d709c0589bc8ab7eb0b202db4e5855c3bc6cede5913db23b96d4ca4456797f1442467d0ed665cec38363b6e6dd00e61f6c112b941434b3b20a4a596c6eabe290f460b309edc97f0050158a2e575049f27eaaa59be14ae2510b2d4a3fd83204068dc93aa45abf8c02e8dd0778957e5ae7b8f98f0f2d49ad53debc4f557d53a01c40b70ea681ddc4d332fadb9fd9536836d06f54fe1c7117a26abcdd03353aac743ea3d8f41b2ebc25946f6a70fa441edbf633007a3f47d54c778bf0a8d68c144d75d785177d29130d06ddfe488b4cf0956bd14212fd2b129af2b71b0d10550c9755918807a2f0d6d23753df95c0a16f97101fa7ee4d5d3b110ff67d155abef48db18b6ad825a707fd1b05864e84e9b7b534f417e7887579ba71149811d5e8fff825f2cf3c24536a099d561ea4a75c03e012bc7699098fe0d29e3a8682fc6530b339129db6df2ae5bfd3521e15c723ba548a4bc2e9132ae45ebc9000ff9dcb77513ab59b3330205fc59f20895dadcb9b5f3f2434296aacc9faf218eebd68456a7499df7b6a072ad3277349989994561236c4e6bc617765b95920388494e2ee8eaf034cac54c7dff92a519dcd58d4f20af6cd1e924bdc587f327c7147fbf073a80e1f63e320a164b1450bfbbf8505a2d9c9c996ad154d1733ef2a649616aedfda7dcf71152c7eab551375077cda99344a72c899dc3989f9c58411a457c299db4b94b5aa0118686bc720a599ad8c65b02dff19f3ddbedfc825353c4512130ef31bb451b47082e6e89a9c9c3835b817101c9432db0d1341e5b5ff164605727cb7ba08641c46fed9eddc6cff4ab5574deb46953a6df776f9b4063021cd417a1c49f8a9d0e3b2b7c3359d6732a1e2067a87e9fec1ccb26e2fa7d139cfd1172aff7fe85c0f4f1d550e48d917cc23b343886c5e8abc455e1eb4355a96659d22a62fd65d53912e2d9ce2a9709a65770140a318ff14cad780daf4bf1fec9b9d30a9b315fc1101bd1140f9f267f4bd83a5c9f03e7e54c9dd18423c1289f24de0411364a157752b79b966eb3f7a08405c01ab7a90a990ed9ee6d627bce2b125979b2cf2000249dc49df55d53ac9fbe025a599c7402f3c26d7b2296943d8528e3b19d84687abc4f715f2f0cedde98a2adce728bce0313b0248766339e84f89e72cf8fafb451f0f9e3197fc7bcd9696da4dc2b84a1b12595a1104dd60c943d4b059ce8430e23adfd8ea49bd52997e139026fa5e482cd953f0115d80362c3628ebf4e2cc1b09744b5687fa64419dc4bccfd33c1286f1b684b930e16de24dcefebf8121a674feeb5d6a31f936edb5058d9ada2d316e2b972982fde1f3d7ace7ab5c10aa1835de690af2d241fb9c93a0d95e40b73749fe2baf1aaa9c4c534d96f4a202c26d057ee8e35f7e7cd9a248c2c38c91a5c319fefd262083b40092cd2bdffae60521508f04c5f4b3ad85508b361427f565005b07c91653b14f7e1cb631d2e394ceaa59dc62386c1b590d110f614b7195e7cdeca73764f9ec96f34e327f6c5b338135934268410f958dc421296ff1a6284d5564f10a9eee81c81500f18e91b1d1801e633e99281e94461145646acbd80b5f634e68d60cd6fb8f2b9d9ecb9c0c0a0b803b5065fdd324f604d36a3eb23f34f260d724d106a3628ecbff474b564aced796e26d39b57777"},
{"000000000000000000000000000000000000000000000000000000000000000b", "004119923cced1f108e0372cbf43ee2e60f3bed7bd13a6d8eac89c27e30763e301df2dedd1d073be53110cd1f9d93dc73898462ef5650cbf5bf1ce6f3e6a4d1f610e7a12244bebc286b4e01f4c1da9d8dd1857c60f6cfd343a0760838fcc423aa1c1bc791e4b0abb4f1c2cace44dd302d8b17ad569da5f7665d2c86fc89c28c21c65ad8b5915cc4ee3d2a26f75da1d48da36c66d1cfd8ddeefb40bed77795b4a5d0512ade89d28b304ede16a2e5b443948181242defcca3db866721d6b47020b66e3191200ea80768394c552c6220c5980080c3d622c4343c5dd9a6bd6110ff5b972c9663fa26915d5d2a0f1e19c8d1161246eebb1631dd18434538e09e316be4dcf9edb96a6e19549ef2c652ec9959b3d2ea46db8f34dd53b1eda4541af7a7efa4a213f726f22ba2eb94011683d8d12065663c8376297639b56e94894ab3713d3323f2692356cc2338e8615f2bd37ab0138f3a8d15a5e9731cd42bd30dc3b7ce8496c25f41098e60e3f0c5fbbf33261e33ecc1b46164473369002d4423f541c2d37e52d63b776d4f7514ba39c99bc433b2397f159b279f32717e025d4b8b68d09b9f64c01daeb48826a0cddb056423abbaa8346d86e5f152419767c31f95cda75047275ac6d4de69e18ced487040536b9ea1f072109936f12e1dbd68439de0336477a1ac125609668e04fd82a658b82de7da28b913e478d0854d115298bb28c6d5f424b497bc21d3eddac8c2f164013e301aa9629e44ad65d1f5a39fa153751a5660f6e43bc0c5170f78100e4b3b9bec6055ccf0cda831496fe149762f50938a43232191ef0d52c318eb52308c5205ea1e68dcf3806b88c7b6f1b063641f4ad170ee96b68921f60c97b2814821ee1dc2eb9d5b782711968c17854258a97aea897e2e9c595e6269378a21e2b0675873310d9bac1722381e49e0927c3fe1fb3240073f2333a4d87009e868294aed97d18cece4f9930042c6792bd1a87cb5ded35a4e3475bfe741f73c3fe191accd72188df7ec4d451e896e307e4a0c1677b821e4dfc7d0de662a5dad882dc066fa16536dd1b17e1010605ce59e61cb9ccfc51f3275336091056dce72c08482c4128a7a8633eda71eddf9d83810372487b1505634ce5f4903847c1d340f70b08472e49e85f43a4216087a5f4c908c55191949336c68b76ea8d1ee438008e9ba8dea54a95bbe0b2c92e59788cd5ceb64aef279d3e38f665cf43968c459444576181c3de5772e31ffcfbccccf4ba87b985ea6be9ecbdab78ba5ffb47292d4760865bc5f17fc934e57b4accf59b91f3ffbc02ba72bce1d93110f0a1e0a19fafccad7194ac43061f835dbdeedc82112bb112d55f227a06058cf702b3030e10465ac32cab38b35283b5f0feea73b4583b57062b3bdb160c966ac2db959569c41ce9b9666f017e050cfe3f00c9ed0f54c7063938419135df9556b72f056ed2fa90c89b5ec41f677f25c855535ca6dcd5a70834d3307b473521236bd166c328518abf5f3a095629d9f6ca05dc1df3d77fa64d31c888d5bbf8d37e3b083e6dc6adc5e11329e042058d991c35ec379f17301efb5664a5cdf78ccbc85771525690620ae61dc9a31d7cff74965594a199aee3788c3072f97c299b173925864e1bc6da49373d80f29f372af33b2f5bdfb0c90a58f9704845462b42ca03c052c07b811ed5711a4f3d2b6b7c7b6c3139f30098020243fa62223ad9fcf51809767f1c9e2699f94477d8a0c344622b26d7f9aa1a79d709cc21e8e73509151e4155b65a2b5857a2d70fc9bd52c8e73515bc99667052775c71a2fb57f9d711f1d7894e05ec9055ae51f5ef9e2080a6686ceb051e4cfe681b7c4dabfd37724b5bb9233caa171ff9683ee989fd8f50842aea35f6a7efdf15ca61ddf5652a"},
{"0000000000000000000000000000000000000000000000000000000000000005", "0035afde4b88e0f3cd1dd4e703b3487d6380763f0332a16ccccf942641c04db473567969be7d073b631c1c9edcbbcb2225331de373414cf6f93b9b45fd09d22c94e4bea9910f59dadc049970745932c82ddae8240d6df10b2ef89441eaead62030fea4170a7699ddde3fa42a159311d805894805c1a15231b1e598580b3b0e41575b04674925e98364b9316b2205e489de876f1399e290b8cc339fe49467b50c4d23df45ec5a6c82029db50ca4cc6ce0d37c516451b9726d70090eaf6019b2a2bf9bcc873b6aeb76b5333d71be1a669a850b1379b0ea0116d174b796626ed97d39ee98bbf7fc50435755290998ddc1afd9277e1843994e4221fad12515c89f3cad9d2ead2d45345f8eec679181a9ecff73242f956c5c0d4e3d6536674df4fb80de4f7cdeb23c2f03be9cebd13bf36f0d0518f6d8191d74c0700d7d6bd23e0b637387b5f2da075a6ac0e1f2aeb87986100479234733970f2fa06655f24673caf1c9825e84e626a7c5ac418bab251f30d2902d9b1fba6b4f57ec751a1c6ff2f44a985bb23e18de56d990df03ce9f958c335403fa5993df45a9bee3eb99d23e9ac7f83ff5120a235d9f63dc1479fd0f6352ac5a31a309e61e2f6624cae95ab814961bb57b23323b5fd1bec2ba3cc44b0bf4a0e25a24a839f403b6dc2cd074da30301f81da106aafadc86fad47ce23c514f87562f181aa512b4704b3e02d2b0dd6390314626b92f84fe5d0d434859e12492ae7bcdd8c1b8037455a3d361e02982ab709020b9d7ad31d8d56bb2aa832c367d7eb9f19337e310124107a42de2122d71f5d74a0aebdb2b9909e7bac5505d6c0d4e66a54455799053fe77987b5b13bfccc86137067277b07471f6b5d32d993afd9956515cda6b506b32d54e9d56ec16056010ec59474f641c2dd893942e5a42356187f79707a590882f4e4c33aa67f7e0f00469f5b3587597b4df960bca2537872b35addc1851a4af9b3970dc963bdc101b754166f4e993114f91801516a0e885355b1e55f00f7c7db7f14e166945dff18ba34bdc15b9b4fb96da284b95277c5047fd95140013b2f5564a46aafa39df705ed748a31fc4479e28724eca5b6fa0ea3372d81c261eb9ea0b0db5aba2baf030307c9401a2a9eda1908bfed5befae53a21c51030df559e94460859be0e9c7b44e70086e4a3636e1840429286643db06af1f2e12d9fd599eedc73c9c4e655328139cc8d66fa9e9915564b0f3d2b6b1ea9da8c20aa0191a7d82b3e70d5911e0dc9d97b0bd30313fbc365d72402438e229f4f033b108b0bbe1485f14f2a90a189fdfa251c7c29bcc010c0009a30dc163ee8db836813c43b456e9ff4ddef6aadadca5cdc9611b31700acffedc7e83977ef8a7312cbdc36a94d2ab771031201d8539ba217f494abb1a65df7dfe8f15d13d570f07368cc0cf0f97930745d2ada0aff5632a6dda46c908396a1dcfc23937546140abb1bdd30045c30670c133451368932f6081c9a0d4aac16a1b8a024410e5e5410156cc855c2792fa1926002be0ae2e8c14b565a00b3b0d25f9ce0795402292a85c665e4585f20f75ae435a2be3c910d76e963a76af9167159eb321bb941f0d356dc12c912438c4ce259d9af1aaf9cbaa96d99814a38dfca7567b72eded81fbeafc0c6c8aefaaeabd07bb36896b46dc10629190bddd279ed912edd44d644023be19279065ee86fd06b7dcdbe68293481dc5810d583d8f388d800352f352f68121bed788a37cbcd412cbaed54a2334d79917f34158a090f9cdfbb4c9790af073ee42c929076919541b805bce268c71f4bebe1b63622257b2b475b8418521a775eba1a3d81f8ffc10294ef4348c9bdbc4fef2d5e167f9e9ba53f4c6b92e4ba560ba8c5075f97ef5861e52f271a9d7f45469"},
{"0000000000000000000000000000000000000000000000000000000000000004", "0045cc55438ec569072433ac0b4a3c314bad15e9ea0bbc1daac7914ab6e487c4b90a460e016fdbbb944701c21a300c9d917daf7600c93f55ff0dd8d2b8ce3e21528deda497b17bfe7512751eac6e5920afcc6c1709c32b821c96d679a48db3c17273ad16251c3357b426405cecfaccf9678533f328ad2a6f90fe8a5ea626173a0637108c0517cd6991f5b221eb989740786d991e2793a15497744309a38388b5bfcb69cc9ef915aa024229a2f59f9103367dc777b06a928e8b551abea9118849e101d3bbb1677e7217e4e265a5e306172aa827957e826156c243bd82234d63249c556328dff7502f1f69ff90524913b4a992f5124054c61414d0b52209371555831572b1dac0b2658942b6a17331f16b1b0f1f3a6e93ea218dbf5047a2024261067c1d7c99d109b806bffb05ac79e85e41c2dbd14e3eb68c7739a21122bbb0af0b06385d9a614ec3b5404064b3bcfb0f0626a2fa0d0406d2d45dd587b6ad6f4a1039d5e509412bf7a354e14e8b55f624cbdbcacb797fab7c6a9320c7f467eb937efcc9f6a4b8d83e3faaeb8d590ea424519c02ea0aa6f8f15f94fafba840073b149fe4ee0b53d112940de10d7e81d12c758cc2e986974d429b2856e38d8866ddd997f8842b4af6c3b24946761d3e1d57a1056234c2b7ef3b339915b24b21d49db365ff249d6459e653465b52e2b2a03828c6e20116746dff06418b11dd87629c6c8fb0f69a2334d99c04db69001518c56e8807bbbca8498230e930d1f93186bbb6c0080baf83c76a34d3e59f0462fcb503a9901efad6a01dae857207cfbbe6ec4114f0c7e9e1befe5d1bab510f01c17cc08abbb1e41e5190ffc0f0d770dc3caa411c3b4b0a471ef053fbf6540e34b54b96614dfaf319174b9b81b72aa63bef1255bc2fd792ba3a5f7c82983b0753fffd54fab7248533c43a56387ec32b36e10500af84affe504a5aac050125f8e746f246d19c3510600436ac55acf3198e9e673726e95389daa4b0541c146bac2644190d82f93fd2a9ed1ddf271a2b38fcdb1e5b5c26759b39c1881b334638b753e15d50f8b41d06f4d684840e94957e64a227a9c6417d2976b5b2b92e11251f0ae568916cabc307dbd3e7ea8a67f58b470916770f400c7cf26c5f4a1319647a3ac02a1720e10caf8476dc0e53bf45d77395ea340e6e3e061ad15d08098598614aa2d8c7ffa1b942cb1bf1f435927b4b0f5eb5a5f790e97cd47c164a7fc8035ac63eda3bf60ca54f5686930932d1e0a453ad7c4dd183234e1f0316754dcbf8cf1caddbabe2b5c0a54999a54f1f24821c2004e91218a7eb168af5b28d7cfe65dc3bb4417e3559fea3f6a1d1156ba4b446093c176eac4e57757a2efe45bf904c83a0da2303a17ad0b9e340d37c4d7932b19ee1988f39f30ea50381bb6c26ceb92cddf63100e808c2f666fe87c609f6e7dbda384a2642bedd54085b46ae4cc503a4b6e9fbe1c8720797f94effcbc0051f4cba5a18ff1ba2e2008ad01dbc255f37548c9908e3a3e1bd19511106fac6542e7de6be2140b8c8290a6df3dbdc03dfe557e166070cc19c073fb1baf7010e23cbe9f4c578a3d01a51b378133655616d6cf16d159921a1bec984e2e62c615aed7cdd1b0d27fc3c3f61bde50d20a358f5cab9e98760f9e38f7ed97f90b8074d05736b43358d8f0ae355fecd12f61dd89a29b0272dd7a3f013bc4dd75493844cd7f97ec6d4fbd2b30e0686a9d89e5481fc5e03984af7952d9c6a7840c715fbed41c3768483d69b0a2cea6abe5719c4b9c6d60967ef909a632079dd6b36ecc97c0c85e596bc0fce193b5fc2658e9352e3ee5399ffbf5d0e47013ec77c1746daa6791473e3136a8195f95ae0f4c2c6eb9c101f55d586b15953c57928a60caf4abc438debbce892"},
{"0000000000000000000000000000000000000000000000000000000000000021", "00b4902728a8a8db67b1344baf4a1541ecf8b81a13497b3d1afdef05e987b8371d61bc7e91ea3d5623da211b3cdb2c7937e1dc8ff280a14bbb2e1ab93e1ef63f42443440707e9fa9e9544cb3aa0211ad11127de20510adad4304c3d22c7896d03642b7520650dab1e440815ac4565306cd56af65fdd8c4e2398c5fcf921d092a3375fc546f490983514747c08e0d05b93cc87809b3ed5caf6f3cb9bc0150ffb77d090646df553a8a05da226fd5e3e28f255bd2c3261eeae68a59d50b890a6d0c15cd4f4210c67500f4ca5f3ceca4eeb54b1f199ef8edab49c3438d29a5882e51555d95911b505a1e7572ef79079f85386bb2aa543cd6bcce024964040e1c11e176f6bf41f06a8279d5278e653298cc5f45174369adc50e0b0923c8522c4197ab18ee88dd344619869faff6e7a3ef6ab48454e34718994dc35517483418b334a1ea80cd78fc2347f6a0ec869485d8e8cd011e4876cd487ab6abba1033b85aa2ccac03cd8bbd1b8674e18c675e69d85952d782b7475164e4b684e00546885da78b59bd3cf1c22b15593ede908e56e86506f46ef8eec72c65d028c0fcda75ff46fa77f8443a04a02602a9e72ca9ea5e169e94538cd2b28279b7a50fe890a963499df14b0f2397f3a630d5562aff50f00674ddac27f82dc3d8c393d36620273a385b5c2b760dff53fadac9b7ff651d555fb1b47f8f01939f7f4301f8a97f6aac5ddf951261176acf434ca0d67e16341bea85245eb5f345cb1ae2904a4f2954eceedd30d914e32f30c4b2e9cbd659645ac4ccef27a8111eb6da21aa258f5812cb3d94ae13fa2c2beadd675b558cef04808a72859cc96584a32964a9cf1c26803df5d53e0667d5edd244e3a3f41530c428a069b534fa337fae113c9734d30ecc8f488b1238e4c2a3b96d101b6ec95ef9a6b173d99401feee86f0dc6fdf8f3bddfbcda1018f8fd12e50dce74be42313456b8334fa0051512b22c10e554fda2429ab2df2713c2d1a624511366ec72495b94943c94f367e3e83dd3be2c5610467ef0ee228008798fa5e8d8f5b2673ec00791f82fac57e51310924ba88fc28ff13c9ef7454dcb9a3265d75f31cac1bf164e9b752d691346c3c4308f62ddb5ce07ee76e101d19500bb571d5e40bd139d25180e328f439960e5ee2330143623c8d9e15263638bc6f69c94035ca4608b0dde2ed0908aa84b290b77213355d42aa35abc01ae7299e7b4ec649b761b5f02db0c24997c75c23d22012c9e4acca4f47d8d274362c63995b2bb81967cb26b4b7bdc058c61cee0f829b7f60bf64e8fa2f4a152bdaa99004a90aa9a2e8d5dfb6ba073a269c3b8a9f46df4edc7caf04ebbca7552dbae525ffc2bd5f68cc352d1bbdf2d07bf79581337650a19a894e11d91e144397ecdd70e4be315068c43d416c323e38eff7f5f20191bd02519c0121eb6fd3027c3403b1b527b4d9622ac3ea2b21e429c3e085f57f4b340136a3bfbc196505e729cc84ad8373a63a926acf4ebf9e5a5e9edf011b6af75e98b7a11de8a19363577f034a2b05f467c4061e6db182b8cb01cd7d95f60378387e8bf37e09030f1629865f10dcf0e4fd24f3d557e129894232db240ac8be642c4bd483530351721934850a1782f74c7b6cd964442c65acedca5ab7458dd11a3ea721f96be80582d796e0440d287425317bf9478cb4a396da9c4a11f4f2f4b10590b64abae528d14267a2fd2c5fecd417c9c4a0ae5f4c91c22cd7d037e494ce972dba0400362fb5c5f662a7a78ba1252186d5b487a2dfde81ca072a52dacf8c03d4ce1f02bbc5eb6e81cf00b51b4420f20cbc2362e8a34dbc64ebd83ffb25920bfead7435a3ed98dddbb9bdafb0b37653eddd6eb65bd6e34a5dda65bba828a4eb8e542807f5661ada22497e01c9"},
{"0000000000000000000000000000000000000000000000000000000000000003", "000f32f3eff1e9a9cfb380d8ee306ac44bf431106c23699a165dadc6d184dcf3c54bc5bc6da1192d1b3004306658e45998cb67d5b3f82b3a4f39281bdcd6f81bdb790c5e4704189ff85278081f4850a1d6fcc91403b8677ed8084e1e90f16292d9c604d92b16ea840432e2ff8e44d3c26bec3a769e11dd94b5b8a5dbe91905d0ff96830fa8ffc78210725eddb200638e77acab0aa2339544c6fe96b020a657e5fa1671bc64926f1e0e39defb94dfa6c920ad428b4228b155855b8d9d251e6042dde91482c9a69152ac82afb39516b9e9a4261d2b7796c7aafae5cc87f6e778c8026e45b4199bab1fe07fd3e2ce325699b968a2bc4f20fe799113db890ed66ac04954a19ff8b2c18ea31d17550e475a9b2442bc0dc7dc1a920743d795e219bd38aa880317dad93d900354a9e4648b842bc81a25d7446782d55e248e42dda29a05ef12419dbe49d9e5f8ccb78ef7fca428005e79a3aca4018bf75ee0fc5a6d3e461c3f1a140012349dc5ad4f8d2ac200133c2620fd6a5e0695d57601182aa49d27997978af144a45f4333772bb3eba67113ae1f32b0cf6fee17ce133c6a2415cac2af1a22a03d16f75ae74fb53d617f22d431e82bcf84fbef73808158bc8aac8a898a249d77de8ef09ca481c5ef8441663279562ef9555ebc59a3c7a63c7736e99fd4bf617c65490f74f2492b77ec4226d281c272af33c802b0081689404512551582a03e1524ad5215a9f9c1bb4283d0b61fde8f155a2e582ec29a2016e5e7d3bd7960cb2e566298d3790c0f7e38fbf271ffe4f0e58b61223715a68a6997fa7bab2d30d7570cecd1b1db314970253d209e64e610514c54374542723c6cd789b9e3f126e5ac2ab77ecf7de6952b789ebf29a96b0b606913b76959e3c6f9d8f9bc1e5e95bba5d59ed4ed58b77497a7f8b9a1c4591ec03452a09b4fa96da1099813a006398a5a105de7d331fc14ebb2ff7f9727af5319d229fdc67271d057b7360f5f2dccbbbbb2e40de7aa604ae06cdafd07120fb50c08a8ccb51a42fec2478e50c3327a90cddd4c78b37240b0c4a2dc51110798234015b28cae7146d1b43f4095789d3a3265ed7dcc9c3486f7d14f057a9f7e2d24a1943f47452cb40da643709647a2426826c917b4701413a2a3d78dce02c538462aea6afb39bcaef22d548cfdf65d4265d11fe943a098cbcab39277761d2da41371cd9c6b679c5165cb8714a5c1d215f14bd227b08eddbe17ab75b0f7dcfa12d0fa56395d24e97add3a3ceae5b67fa604c7597813b5f39dfc05564d0fb4ef4cb637393c75c95bb77060c98fefd99498812b573d8c1ed5106a673075acb337638ccc40a2d894981aaa85335df82775f46db3d0f21e0cd3ba48db7537810973b0f7dcbd5ebf63d71b4a3c00f86032b32b5769f9debc87d9dff8281ddefb201d34ba6a991a0796ed0208c361e1f1a63d5f861b40d29cae09b9e4a2f6b9fb6fa47da12b264c354d93d06e44e5e744b004b967a047d93ade54567f3369b194790dede375a9b391d83ba4c65ef7ca29b1fb743d2056e53cac90d6d7fcbac352ecdcae66666da362b1d5f0c83165022ec355c4f480032705883237dff7775217fce56b9dd41634a47ebd96af5051bc2ca1ec45030dad36ff1e3e3955324238532b71bc144de979772033d472e25d20c5e964bd2ce2ec177420a6cd6aa313f90c316a738405bcbd6483618e9f20a0e4e78fcad0525944d3ec20a69e85fa08aed1acd9d8dc817d0d1384744d1d0e7dab599b07a264bd5518aded2b71fe404d70c6c5d6bed0fa89501dbc93c1f30be76fc42832b7d77688d0d8db3c3c4247edeea19d242db524ae9129bffd6014a15b8eb4ba1abcf446470cd824c46c81e5cda5bb70a69a31d77b200f95597ed601e0ba72a"},
{"00000000000000000000000000000000000000000000000000000000000003d6", "01547d9556dbf38f94c2c76036fa35c277563aa87714b0bb9f2a89eb5cffd0b5d7c4dbd1ba6e3d98c0fa0e3c85fa9e8d0e155e7bb472b5a9ca8e43a9b8db304889faec5016840584df3580bbfa2d3e057b3b22a20347f399c5d00a6180b292c8b9b4eaf8f9407541c029df33f6462e218bb8acf4e88fbf71024702be3bb60ca88bebaf48673a939cc17e452c115dad937448bf26a41974cc4b3898f5bd743b6fec796b32ca5f3aeb0dcde1b7ebcfd78710d43a3b265a9aa6d7991fef692ad239a4e6e86d95e52d38e136e952668e8815d7d412d6f7a1bb93e83f4aa9e29554534dbddb0fbf22f115e1e36f06e48751e59a8313d67d94b0cd6c9b24e11497d93988cff91927f13404233d8cb2745cf4de2e511a7c209cd73f174188c83fe0e9c63e70fff6bbfb3654adede531c5239bb143e41fd6c5415297bdd3636e3a54d003b20153bdb939533fcaf16f6d3a5db7a301c2a2965fc2993cac59a19b42dc63c8f4a5ed3af7063bbb0a2ae29c0d23d6e1c45d9cd73d16b83f3b0001e1737faa20c3bb920c74eaf6e3f58a4ca35c1db22136f4cb7b0aa5a49c7734a34d70a0c56af18d526a028656e6d2d42f4d7d39f3f515d0ac4d495d50b096054c3ec74c8adec87ed2b2c20cdd56aa8f5d784e84148342979aabe26bfcb3986b6afd09a71225dc0ce11c2fa326c8161383212bd21b47aafac9a60af05a7701f8ca2b6e27f7ff91210052d7f720a0456844f1830a94bb1d9c93354eafc07242a272dfd75feb5c8d1716ab6d269c77ccfdde2079ee19efb5dea2c81d2e1316b03ee737e36463eed618fa7359e39fc80adeddad12c910b770cdd132b90f91a55ea62e236918feeb4a42ab5b9ca92bd263870cc8adf1de2cab4a19ff14012414b635b1dbe429dff8f2fbe3bf65c4e1f59671917553c7ea0670a023dbc54806ef648a8b2fef7b7cf80160f9ba3b8a584e7dabb8cd2475b9c6c490f8c0551eab1602a8de4250f3dc2555887543c68a06b60c0a2a12b60ccccfa8d5e09c2575e1ea917a5686d4b48b746b8ef0551daa3326f1cb5e4a6a38b70737dbf435097ce68b26452b5d56c931995fdd3021825153ec4c0bfc815bfae5715567a9210facf8d0bdbc267359d22695acb3439157e1c738d43e885de3d15a0c8e05b745d103e4b024190ba875857f113ce9ad72e43146cd065ac17248d86017025e56fdc7d44f4ece6b9cabb92daf25dd0e92e14d83eee4745bdd17996a448c13aa17aa5de5b9d1a0753ee664403fc5ec626de3dce15c38d6df7734d91d87a17d459b733bdabeb22cfaf96009d51ee859d42760ac4d2502a938ab06968cf536582f872ee5b9e536117036d7236cbd3609cb359949e810181d2e52532b0ba650d70f9ee4c1322c09fa427a19ba13194acaa6473cc31248821cf22ebd5f5d7f6704ae7ecc87cd8ba2e11d6224ca9580a19c3f18ea10050671895aca2bb1c88131f703ac64c88d31de9c4007ca6ae713fc5991e42a9276393a448cd3c6dc137f143ed4ed82ded4abf5a215d00e74d72610225ee8e72bc71ccf57207a2f8d01062e076995b6a1f0988e7e5887dfdd1f9806078f7c296c375953925da7dd0a4b30c4fcfc02e253c172eb887adcca02aa2fe355a7b7445d06e9f71a294fde89850ab2fba51303d99a8281095ee4bbe2576ce5c9d7b0a21aeadd25d8779a43b414fc4b5ce4d6bac558d9c1e040c796f9f0551e675832fd375a2b920d6fa67964df61f1e68a954afaec8044abd60e30d35210f8bfa48785f992e58fee3925050e566bbae5e1cca39ea48922cd72afab0c5e3eda043fc74d23691dda518812e462f8dac3a645f7dcdc071b3312174894bfb382fc63bdf7c7f9d5b371769bd01d63b614844e64f58ea50732037a892e7880d9efcb"},
{"0000000000000000000000000000000000000000000000000000000000000022", "0004030f316defaf9df74ca4d571f86b38835d3a8f0e003d42f55a25c5f2a20ce561748f836a02fb932805c5ed5f87968f32d14f30fa97a8c84cb5dbb3945d07056576db6426f1f78cd174b0b54ea4cc3f79defc100a3c420629d717a55b9164a83e6e9467cba74d5d4c073e64031492c3686f6593dacfb48e1099b82a4f1837036f8d4eaf3bb41622a9799aba00ef6be78d3b18b8f0cce7a0692315e8e18f36e6074096549ce4c9000ead6f1c0f29438e4c818c315681b47df6f2d541088aabd003c9a5fbb20088065ad19ee35364de556630f766eac192a9a390c43478d851b793743ebc4fe831a697081a7627c7f493249e1db07825d221354e0206d8ab4de52cb291a3789124773e16057890bed07012aa8b6efbf77579d3de913961d869ba9c2f5b6b5a0e98712f48a4dd39c07623b5abffe9a9008c4aa8e30eb4fff8fcf3f611c92c9323be76bc42700015a60d0c6a6c6f3d08351269ef76785a447e8e8deb7d319d23711a88560b6760f7fe32a6e272fa21e4f132de61239c9fdf8b0e32baf920e24eab7dcea2d57c5851b52e08fca69553a7ffa0dea34ac53bd6930a76ba5a3b201accc3d9c9cb62d359543049c8ba737a43ff8782382926f6e611a7e55511263161e72a33849a7fbb1c2bd0fa6398d4b924d274c2c1f47f057d35794efd2b2f3c856b94a5f4ef495dd394886cfe1ced5db871e70da73ee9e4092ddf11d923284dfb2cf2c5dc37a8fc10bcd17be84b65b56bf974a63bd02ece81a8bb6b6d19ad07876e2dd7d57451e385ca1c9ee230567a810f1fd98dcfae4ee88eacf7126004ab777d6d19cd3d6213ee528cd1c895babc2c44d5f55270a2b785dbea9b5861778dff9a565769eef739b0ff655ebddf99a07b18935369318da2569d5352cb765b7dacc58a1a801a2e7839e6291fd7a10f93e31dc0fb0d9938592a4839011b0f3afb4b0534e51ca2416fddf3f5c890f0d06705c1d445f2776da7f28dc5cfd7c1a1addf5b3eca8a18fd2dada3da8987337fd278b82db151579eda43ee38b60ca56f0ee1c2a727f7e19dc828da67913f0cd60f03dae010ca7f075c423539d2e25b7a4114deab1b104bfd0dfee955856ff745efd0b510d6270431bed41dd6522857dc20798cdec92de84dfb4a9888ba26ae277696d9ae948ba9e46d749b91d6ccc16dceaec2dd0397ca4c96539528b5f5f612985c444297569674e819e6bbb983ca255c5ef88238aff4f54215a11a15a945d477af3d63852b622dd4aa657f9c2616b11b72b150d50fafc3286e0173d898e089637d5736b4dffa4d08af68a42b873e819161c5cf2b71093575bd175ef6211c3c95708a770b97cd1317379f028e0c3d32a9390dce999ebfcbbff9e019815930db0f9894f82870e52fde36a1e3991559f3cdf5a449bedd76633d36797a0432943863f69fdfefb2f0a3a805ef8ab3b0db81eb27f4634a8dd6187f97d1430a4ce7684cc4c8efbfeb219a738bb1a1ad57524c94419cb1d3b5f143fbb7e84d392d2ddb96a57f0095861655ea485a94241ec7100ef1be41a91a429feefd1247f75f61c697153f9b231a539948562bff157485b55f962ca4ea139aff0a1712a9cdf1ef0c5b37aacea28ecfe69ed62f5391d05313066d0ac7e6034f640c067d324d991a5040fcd34605edac20bd09ca27af68c77f6cc1a0c2c36979d0530fc62eb2c25e962944b1a428afa316a920dfdbc68e1bcbb1a38d4be191a38a12a7d1248ce4f0112cb3c46938ae654ded4a29e9ca86c58b4a423e714b5b9a76099f432143631e738579e29c5ad5ee8cab31cb6b630d2b473623ca5d008a217113ea168b6c694c252f322eca52b1c1665f87bcc394145e52ebfdf5103132ae3025e50f9d6c55b9bae2081d227099c7bb031fd331"},
{"0000000000000000000000000000000000000000000000000000000000000006", "007c0779e65899914a5f2305887132ce6d59fd1f8d453843ae6ca8b847f3a04859657a79d3055dff8ecf1708b8cfe74ac0cea6e7f7ab8bc02b220a21bf13521fbe964eb52ae2fdede4637c13e417599da8f56e341a3882542bf269d1c662359afb6d48eaf0bdb7b03f31bc73c6c497ec497e45c3c260f68315a5f23f881a2b6596bf81e5af698123864be236244f3c7c7ff0553236edca5ee270e3c8fef886666c6f5f05a6fd193807b6c4b405f0dd6df1c190d8ed09fe961d389608d727dd54098a322e95eea025a345496a06b7a63cf0490ed6153f39076deafa13393240d117fb55fa9d04d8275b0bac9250f0659c9a046f24e4a83a74dff7b36c165b13766d91fdf5713ad7a6f54e4603b966df8bb020e00b3c11519b553c55353613e7609246327d934716e2df91a9166ca11e7e31f745dcb628e58974fa9a212f5f7eff13590ce3dc6553c749583edc4859c27d013b64419ba28325ddcf1761d4722f2e3c733c839d5a3b5bc7ffa24ed58b10c63676b3071201c7117e0732696215dedd240572b4946852684fe55a3b9a30a5336569e36579f1efd05d4557556ae49d7b3c1205c4042dac08f319e6456394817a17d128e0700f76d29511d13b4c7b5cb8dbec21657305bab5ae4720fda51a0f86ef9a74f38f1be70ba3c29d6f77c98e9194412428c8e4c2884afd3d03e71a5379f91e8ae032170ccc03d583fd231518a0d5be37caff7b694e60a79e96eb0ce0953243cf059ec95e12a47456fd6a962f79fba40841489643d3733ee64352b2caa43e5136d8d99c511d093ab292dbbf5d6065e2d80b9e6b557f73384100099488c8abd9e1c9e391d0d886bbb479bbef97393a1011011e13a234c73ef5724420d0fcd26e7e99c0800a7e2d1194ad9da7db46718ff3c056548b820b54b721c18ba54fb9cbf3f7d8f33ae31af82a450454a67d00d37174ae62eb6130da52dcae17f958e4ff2d21931d64174fdd4a66c33ac4925b473a4da907885d3dd30c11c4e32792f5c0c79713a1b4723c8917b077fa814067968919912c71e2f587963cc9529df70db356910a4ead4b34846acf14d296e9cc6bd555cb697851d614133acf2155c891e001654cbdf0d8cde63556736a1391162c5421b23527fc8275ac7369add549ffa47322c6e3cb45d9fd2da85e53942733d85627549590a701b72818f5f2723f9ee0625b3f303a5b00533dde4d1726a386538bee79c838d58ea138b045708a7830250a7de278a4b94949d677b2003ce2b8adbd14f6e1c10b7afdff7246d85453bf254ca14deef310d49c13bd02622932dcf163effe4200ec549e10e0bdfd7b303e2d1c0266fda0b9b71461b2f8ac4298b1e0d417af6c165903ae52f98b35fa038272971e69b6058896c1132278d16cff57e0758326c2c49ebf0445eb32b9542d0134615b3b27a469f93944718efe20972fd17994f5061e158d0a25f09b621e91680a280b8605df12e8e216a739d2dbe6b867790ae242597a61e0c0c8762dde2764c365570c8bc0a3fab2a82b5e4f8227e176b55d0264f666ddab9deb6d3b42caf9993b39286fbf49d409561b473e7659cbd776117ea0fa3325b31e1d629832167c7765f4b6b5ddcec89dcb5537fbdb81df44405f535304e55deb6b838566c20b37dc839ef13ea11803999dfbd4c999cb018006dfb2f256a20f3b5e062d2535d1b58d541c8eee061556ccb7bc3d8846998348184cb4805348760bb88e537240c949c8f3708ae514254547f0fb57afadc6fb9754c1f877b24e737903ac0b31c3bda8d46d6946920953ab745c7f83239d58070b7cea5f7ade5bb960bfa201243aed52cfed97b44b17a4cb2e140910a28c74d1a4a3ce0149e5fafa104730f443cdef95c336efb5754f7abb30c1c0315f97b2"},
{"0000000000000000000000000000000000000000000000000000000000000003", "003722b77b8537f5c469d0e521551b484a0279cfc718434a3e86d3a77bb738127d77a00e45432731433614bf7ac9b3f2d2fbc36bb193fdf1fcd872eb4c404f2277ac8977d97c28eaecc361307c6b277786fd62cb0844d2069d8f5d1be32eb3235c2117355e543f95850bbee1ccea0bb485c0f33a72385a355ac208bbde970f070f95c3abf0b3785de3f90b40bd7f629b9dcc023cf362029c53c40d1931346ac55f1641810fb076960e86e7f919482b5e8f13a3e43c61606d272a7a952917812c10a51ff2f5c94e0572c6b8744d5f9254bd2f3e2f867ff69b7055e44c8521954967cb1e487914c05f455d7be7eaf1115935276620f5829a69e9f3c4a31239bf92b8ea9411d7802163d6dd8a24b68fb700f04d13e36ed4d5ef2fdd3449ba9cecd24f4d1cbe8fd61322cceb94ab1875d76891ee4c550ca2504373e32e2420cc222da96719df87d32319b68c5149897127e00586abed611ef0ff0ce90171823371d97bc656be8c1df21f729e289bbff49b45ec95c11b2da78b1e042906d8dcaa26d95cc3aa9f755d92644095e902f692a63feabfa5226afd4758fb848e84f1bec14e73ac397608815c7d288a036868bc81fd7e77881d9d8c8fe64c11395e283b1a74dbaaa40940b065b16eef53d7bdae0a663e902e6efd53c2b923213e44ba15d62ad99cbb1705c6c65fa0c09fb8ed720158681fc9530478c600077138e051121519a46cf0ad2df662bda3ef9f0b9d3ae92d19fbea5b9d823ec4f846cb54be195d54d6670bf4e7f8549eed7fdcc6554083d069ae1842350f7a1a17172e5b19b32fa556741f6a7e7aef1ec01b40f80e0eaa934f690247e90f2338c733e091d0c333b9f70fcffa1852c64e8cccb4b24e1c2342f4d5fbb842a0145de19fde995c6dea095218119c0fb212c3575eb624ac8adc1289e6bdbc7c663282c807c9edccbe354401460c0c5a22c31fbe6bb37c22e259c5e10af1cf7e0f45888fa25b76c9559952c020507c4181e995def51469a29a98091ca44a5e64e5bc3d60b7300b5dd32c1e307793e65dfe8588cb17a33a7a8fc26ce33c478906ba35f363a43c0bb394c5c9e3501e432a11fb9d580dfe316ac806a2dd1b2924d207ea761a3758d239ca0fd7ce93100fcad18b79343889ef032ad6dc984e7a2396dabce695e9b5f5b417ad03e890fb3a3f3f36e104693d1665988c577bf0c174e8486a7eb8a519b66d284255119058a733687ca6e90046e1631a1d3b223b05e4d192490c5d14c40a6494e6c8689d5714cbc2bf17a63d5c0206c452789315270671ed6b7af9bc473e0a9fd16055da3265c5c4d2dda07be40ba3c5be09ea11f5e7ca40ac73c9743ba1245e09b4927a54ff017519ce0a632a24e0fb773304b509679882a2bb3777331acc411f5b93708cf4d499259b4a09f3909b3cc7ea0328b050b9461bf12a6215f8dab129e5c4c8b1560910e1ee004d4ad22138e871da837ea47496db377f7013880776574d96bd9322a13e668dd00ccffe8c409c1dfd0d4ab6d1672cbd3e73db24cd41ad800f72061911f5a55802e846775cce085844ec6e1a3fdaf367a43b3dcc57c956024ac64bd66975d15ee345509fede13de83e3377980cfdb6834509bb5e514a005d5de8e0405605a61fad1db5ba44e4ba22f3f49ec7eafcc04a133487243dcb85f97c84617f53bc52fd5cfdec7c3a29606b8081e36005ab4e6829f662d2424c0438cc5e200a27808f908b85e907459c5e51c172893cb942103da90219d0cff6e4d046a42b4451b879605ceeaf8b13f91376601c856dd97f351fdccc84a3536b1b03e62781aa73412a4f456e1873dd357e0d3907e9572fb33de314a10f922257ec0dd5573ebe5cf9be23787f133faaaffc931405057f8f946cf7c2d9114f7f6be357"},
{"0000000000000000000000000000000000000000000000000000000000000016", "018ec6ba92014dfd68d6d702e5d92f8612b957060628b6c1c8c21dc6d4f9206421c6e67882bbf77b1ec71f7db235daeb8403a501454718ac7d1b4064ba14bf304faa7d6e50073687615304fe783834f8767898450764e545de19a3c331ada2e6119b1a28ce85683af60b7f7ffad94345deb15451f089f652c5f3353684790cdfa9cf30d288cbf8c385fa61e6d47e5376fbe2c434b7cb21dad7f06124cd848abb7842c587cff7f0bf026a6b75558533c196f21419c3db0cb1e88a3fdccb1163a39a0548767fff16415efed8b8b93a970c35ee04b924dd46d87a6b71c3633f04226305e52713101a167c5d52a0fa2ec3ddb7746c86b8857a102850f9c205a8b58cb60deb23c33282a2e77f80411c9fb517b30c247eb508cec00d67c451bf8659d309ba962e974526fbebe7fc582fa73f08c55015fc738de47096387a32e9fb691252ce3333460b9b2c732743480a7e447a01cd41e810cb2e292f18e1897af3b975338ed3b949215bcce013d741af5c8d636c536d725e2cbb1466420d6e08d1f4ecda478b12963e96f6e67a492fd3823213497c24035e07f957fe11f613fc61de198d9651c2067e451d63c8eb39165ff09030d1630046c3d2b1561f95948f78ced4f7019ef5b272634ebdd1b3fe319807702bded3432745453266332e650e3b2245de303039cf6eae27524e8771afe3cc19c471924320de3bb1033608e0bc30d17da136229e14dd44b115e50e85ce31b704854ba97a278d86f57517ccbd42694919df20058c84492fe2a8a93ea0f76b0e5c302b8f51df485320834fc9a09c6c7378f0327c0dd85b0de1435a931e049f78d6044afe6bd4e1716205cf728cf95c924210218b81adc0edf99bdb46d4d3dae202dbc6597f679d1870bdd9740a3e45aa2bc1c0c453499942a5b5b41f1f3155b9ff60432751d1a4dc975018ddef5197e725027df477974633706f01d1e543ecdfa1b3d85e3c7b06a5bf7254d3d9491966f3fbab34f2652698337cfb067e3d3a3459e08980afd759c6eb7365de13bac7a03fd2bb4731aff64be614360d3c63796e0984787828170af98c8ca6bc73b716725ffbab80566df27d99911c768152ab507a6562c5436f267f94f25713dd0e571ce60c875926a739942be251e0c6d6d691cfd52b712462c48e4692d9c0ff650b67eb7de3df3d4a7ff70c04530304e593c331a7a8e113bbad358dce983ca5570542cc5326ee44277262b9d70f59f62f29451d666b315e4380e6ee91d1a86463c12f6a6c1199e353f7fd57a507d7722bcacdcac31a43c1586ad296c15e91040a94786581e57a1555701413a2e7f34acefa7c2e72131804b60fdad673410f138500c4dd828ab39fc1b8178365a484e8e00fb62cf2c4d4b2e87da72a7f63261a87555fe867c09d9837932ec8fe5309192d8b65a1029eadcb2b540abb865ef2aac5e3ebcdb9d259f05f169e8d3a1f54187d87c581f0666e6373bc471f41901b2b5bb2df66ddcde0c6e1e496d9ca552cb78b9ae84788dd26fbe951fbd28296cf6846e72a33de59a64c0c2d8cfe76e04227181613f56e4486e99a78ee84da2b5e735bc40c145d33e324b76f628359e8e5fec02e123410bc258af427bf2184797bcb71ad8a8852bc5512bf3481384aa648f884e67ea9c1198b844b3d80830526244a544e52a690972324f827e1324a84bfaa2c422cee4315612215327a5bfbc17b79f33dbf1b42150ab782627f04a1543acd75b000eb40258cb3373ebf23288e5504efde17892814e2dcdff8f98265160a7422e74fd8a81a0f0daa8d677c63cd53525870db92fc4fd1b5311c1eab2dd21f46970dc8f3a5cf48aea80a2de535a32faf987594080a3b8cedb1df985a3f0e1c6ae7354e789d8b272cc2d76b313fe0c32d921a121d"},
{"0000000000000000000000000000000000000000000000000000000000000020", "00830f6275c3027f210387bd9a4ed45a46257cf51a3dac95cc53641a75db5aa511bb38374e2ea699581f1723f93ddfbd62cff22d722ef2960ae65bd95c928022906b5fdf6469117aa97283651da1855e57972fed03333fcd0a2446c9821aa50f59e2428f4ae49bf8230691f2fb16ca48c7f9e44294cef8e5860a5b1e82e204da5680932d6f6ddc1c01809d95eb38e145d7fb771bdd7e877fa3281f41b3858911ecf1debc2599533c06f2793cb29bd029ca0a217416531fce78813b679c0eedd685cfca0579d1a8b4d2a1345fb652b67cb2cb0b5cfaa1398b54dc6cefa269a29534f6f1449984991af8635adf489d35a5aed8864762ea0ab057d7747407434e2b9c5a084dc0d3d1167bcc0199620b6e273f0f236516d5fa3bcbd7f466517a3a03fa0ef3def9c1134a21b56baf43a3e4ad83e41dceb08a0956d8030829bbf7964fb48855d45754c869ddb1ad32d23e2a18015c11f4d903cdf131df70e86f0e9b7306e1196ae201b01d76642af6797f31c078ba6ecea9c6545c02d401d2e5193b4b275124982252ce6fc6fd4c4b9ca74e3a01bf5cfdda084baf94a59753dfaf3236237abe4809c630ee6aa6287f9422911a162b82ca5bcabc2cf62ed31fe06f5aa37705664a3f1b63e246b63b7e84171630bc4fde0ba87a76df7608147a42829bfb9a92a21efb64494a1ccd672980aac73a7f727b250c3f7c5c05b50b99ceb3e313d03702f9fc9e0f6a184e10d096133f1a847839bd1fdaa1763fe479ff6374569f907c2b4126cea5e219ab452f13803f40a5ad2ec8d481923c982288a2e03f816a24d51d9430e06a35817240a50c0b0da11851bc53f74bc6eb35d8d739c7ea3ce7f10c43fa0723a142cfb85563db9a5842e959c1b9910712838999915ebe057a89034d02723cb65919d8da4f20477fb16390472b12cca3eecfded97fe6859f87a200bd26471fa1b78fec2e105a684965c9c5a0d071ee39fb5bab75508929c9f7e4b26c3cc931e7f49cb323135e90cdc5d52bf8d0b274c1f37c0af9da14fe6bbcab8075a0296b3dd9fd40bb61cdfe397f1a299aae15030fc20f3ba853779076e2143e592ad3c730fea0c43224cdca1fdff475858fc6d8997daf2dcfd1f6b6f02af4e4d719b01bcbffc284ba4a52e94abbc4f790782db0ef4b4a6972e5aad833d0012bdf4d1e0b8d7b0904a5b57b9f4c833c78026288f2c1760617355ebc993c4cfa7ca03312afbf3b95ccf87f6f2989a0cf9ec824de04738092fe6954cee2896adfefe1ad80ef326a39f595622a4f5c63f21c67f0a7f8502a277d7b96490cd304e794d8fb539308110431178f16ab0578bf7d157b01f93a2b89f1ec6943a2c7af4fa525a45588e312b126bde465cae77315b399a87b35292f433260b1352ecd29ff99329acdd854a20d4c10dac08bffd4ab00c85a016090129566d9c27a3623bb1aafec189cf71519c934da0f98928b66e49cb43fefe665b0d7128d0e689293f0cab85a5c7714ff184737176f911bbdc0184d7ef5650db672fccf435ebb53fb51e3e3546d52011fa43fc3ebc923fcd412deeb32f8a93aa8ef052125ec39f56456e449b5844520463e1715548818f05315b1559d7321ceef55bc52e09f999149c36b0ea4e72763b3f1078fe283f518f4576561849726087ff5980a07870512693dff75ddb2b3dfadaa95a9940e6dac1584cf717bdd8653e53f44a117dcbbc94de8d765630d610c0a7e1c490940163135116aa53d5c6caee5424c8985b6b2963a073e3c9524d3484bb6ba5bdbd7f6112f959b876c6d0def13566d3069a64a23685722781246be504d04c045dbd5c236cff366fcbcad29268f137a7c457754bfe2eb10f30d816f315b05cd3bfbfa3830050ab46481416eb4e738195d45e266e43ee698"},
{"00000000000000000000000000000000000000000000000000000000000003bf", "004f47f15f8a883b31d12097f23d3d2d0c3717979248266c9ef992ee4ec685f992abe88cc6ecfe97eaf404e2d89968212109dbee22a71099b30a8d0a7c2906384a43ed4bbd41b9f75924d8ab38060da092d3e83205cb07218d6f75ffd7b238e1275fe1e6de757ba59c137c548866898a7f081f614f47970541a675d4f5d7062393f8a1cdf98ca4d44168a690f951652914e044128c99b90288eef5da43b302f9651a8af198babe510641e63c2b30f2099a6911f8e6104f55fecf70d96c440fad23dc2a582fc455f7ad90c467a2c5fc97fb172a00a98f410ac29da7a744a6d375ac2988fb6d550046f5f53b90d3fa3b3aa386b7ebd8e372f1dcbf335907103a7384d775dbaa2963b1a172dce181da5d78ad38584f2860ecefa5e8c993c39f290809ffdc906584152a793303735e65db65e169cb2c8354af8496029854a19d359f72bc6dcbda55ffbeeb5509d220393a78013bcdd194d878397fef48b51468acb34a369ce4b70a46bbee434413151ebac7711ac576b644ff97568301930043360560913799223d18f90109ca2bb80fc5208b291c9389451d0cbc944b785d5595c598fbc2cc119ae6086e8d460b7433837660f15c2552505ca02e12b207bb0fd19fddab1156a37365f8bdb2ba563d061bb1a6facba58e7b673de25bfc2d5b7dbede5eb418524c0bb8051e2323c5c2999920dfa04b41cb7e78f201b9bf88a0d7a9e17384d31ed7e7c141e8e9b62f291525a6c7a849ae9c7844238661bd1436c2bb3f23df0bbc4dd14c4c1ae3846f838c58276dcce995147b7830320feeca95936bfbeaa3bc4eef8f90fc5fd4693a0cd8792ea6940b4993f0955ca5cc38d38a55be54e015b56161f7b99883defc7b10f4f8305f8010bf61091e23671ef427107d567ba6813251cab26053d81e194d5b7344f29e679f0bf5d58c9c50f23e01ac94e745072186f8d5c2be7136d49459f64bc031aec0b3d2e60e2ef48152d117e9c173c7b61a76967a1594d74b621c5107f1b50e8623070002b06258d2c2ae571f83d548371fe02ed806a39783851b244af352d40b7c08a5245dc2f5ee4aba0918d025406f35dc8a5c7717ec55305ff4aa4d1b43d4e4503571294768ad8906af41b625329d86395f947d6546a40245e7ee56259ff9f94a6b2766d6b2f224e5e978895da24b29032dfe1d2901093f1b6faee481a5687cd0c4e21133055514cf876b0c34595fe81ada4f19d6870323e0742b0c0158b2f40f4ad586f2a28a478caac17a4ee97212ea2e3c756b2ba9c3d41ad8d1d5078d489a36c7e57231a63eea650b74a65a6e46ab60a95ca1cc047a3b9077fd7d1e850c06db155b96a68ffd9e817edc6b5fd10053d26af033ddeafe2dabf5d38b4633404c1cfc6a18013576f75a6cdbf9aa9a02718d478766d2c7f531e5a6b6db8008111be60e486de2ac91f47ecce4c4ea36bffefda83113e990e5220b2d2d3a05d409dfed2e90e479669c0927f2274f99d358d0c973df4e3d7531073c39ebb1303cdb28ae578d7d4a8e641fe2b100fef83b3c52cb172ca39abaa875a173544513dac8898aaf7a394b742606f6bf6290ca29d7c6242f14df2cda44d1b4da401d3531ba5f9072b2ea6ae9ba28e87a52e2d95db82d29e214b98c10a8aabf1ce53f1e49d7fa2b23f3a5630a66f963b74812b91a92524ec5f891f8ede4e9ad7a2cfa9d5f44f2abd7beea44047a340d429a29f5ed7a231f5c50dd9a6344fe78629001fb0a8dab7855b783585b1517ae97791d9d20e6376a487eca1e5bf2b27a0e37e967dea3c631866a539959294be9e8d81a5a5d410f943f33a56b3dea8964413f2e4d8e87d31be62c3fedd3acf56c0109863f57b4bedd09fe7d4afabc1645d5fc241a5891131e3a6a245452281fa984be4b17"},
{"000000000000000000000000000000000000000000000000000000000000001f", "0031f9e6e8645e35b05014daeaf5ae630e121eaf6a01029d772831524df94858acc070f4568fee3c286411a24c5403c933ab239b12c4174fec6f134759ede43cb5f3b91cd54bf3c3052484c145dda5214d3d3c7d06a85b188caad0e79a7462bd8bd6c553701a9e33ce2904c1fc8ba89a1dcd69d6f67a7991b7c9effeaf1a150db95625a793cf6a5e4579e7dc31927d26ff2ce62823e3934b54bd70b11ef3985b2e260d1a67708eb3041e3d667f2159db0e15a2206fdf23154da99848fb096cbcb40e876c6d795e8217c3a01014fba5dddf7a0b2f7e9d2490b912fae6734552524b3dcaf0baa8ef0e4aeab9ee134ef31ea6b1e09962fec983416e1f2e05daf1e915a44791a854e61c58db84ba9e83da727a2f519c72722123974b82081f47e43aeaddda1e26f90e35171052dcdf913301a7909dfdf236b050986fbe24d78c350b904c28f7eee297384a7721a00553a14603e835c97b8192c0d87f613365aa178499928a1f101712570e4f8850ba60e5f781a53cd13e4c82194acc15b4fa52dcdb85a7dd67f3654ac72aca0dff1f42c41af3f9204f5545d551fa763682b8f3d5ee5d0fa85d0be048e04311fddfd18406004dea1c45c0bff886c9141a4eac9b120e43316765e6dfcd97b9bcc79cf1ed116b81de248d4013a06b227daab703b90e091dc1a1173b657e46a4d70bdb7972daea582fe4d0c433a595067769d385e378a3c64df0e7240d675e0221b0939b0fcf50c0ef9e1db7111c025e90ddb70cabe38b4ec71303a324a35edd81bb99b6709fdea69d9c73d5249d3fc744106f1f835d902317eebbc244721f94feca3113948fbe91a6ebd7be0fa360101efec73dd0fecdc73527aba73258e6076e44674c93d9b4f64754b75a3230cb5e4260611f976d13b45bedf1bc3531b5eb43674b62ea6bd6a7d85b59db066fc959a6d60b221bcd1b00ed31fc0c0798369a7fe147bc513f8131e57410dc01741edc91a9638b6035404c5137b7df7f4bde1340301a69f7fb62cb05271b56b350433b8310197d331262b9634ac06498f1cecdf80f344b8a87216a5b30300a0ef8e95a5203b8b895f5e01f366d55d1555287b939f66502ea66ec0b4dc2f8aba1fc8a7afeb03bbea10f750344b60d11ad57cfa30b2c3fded95bf378cdfa20df23f7875fb119c203c39aca435c29cc611bba7b026279a91496c9d2e783c1d417320fd4f8a907fd1948175d643b2ac54ff8bac4bf037a9d773054bf18a00e75cf8d168e425d2a16a1a435d15b2153efacbc2f2809c7ef5b4b53212c1053c79cc390f92a1bdc4f5107c72fb471143167fa980143772fd446d96e7bfd290f36bba4a70e8891d8f4c8b0826a3f5ba4e19d389a1d4776a0f32e753fd3d7a40c3abef9a5f40cd038dd5eac3c7ad872b669a4ef869d4c7e1eb634d5929d680203991f58a20f5dd70dd5d79f35cf35d6762f0eaa0b704d85ed6a40598985550bab7b5325e0437822be094caf8a60c3ff6d3b8451c1ffaecfacca92f7b3ff4d5463f5e32e7b41a38ff8f5cb7ec73253691e619003c5b6177c0c195fce18c37989513fe18400f00aeb1339d9639277575fc6a243906f71aad5adb91c29380480d1532588b999722de0bedbcdcec89651f796364a7ad56cff71d6e79e0857155bc5e0535b7dbcd11b04739981159dab2bec07b2f967de57735e3f9b8ee710c36544af8fa84e7f5c428516dbd3b934d629ffdc0daa17de278e8953ffcc93828aa9725503d7f1d1031edfea2bf20d5990ef4f48e356fe3902a9f3d7f8e21903eab38a4e19f4b151727528bc1e750363f6f3f5241fea13028fd6d910c3235933eeef59129cf3fedd2feccfc3a8ee94b9ae2fa7fa44569de21d50516e5837c4ef18f1e1fe8b5171b7a6a1d431ff110c9dca0d"},
{"0000000000000000000000000000000000000000000000000000000000000006", "0053769b0f2ab8cf56de834c6e21de00dbac896b3b3b94f4b16d945f61e609953053aa7796acff7ff73100ed25744a11099e9f0d822052124f849650b7a6f90a976d1c59ab4a9bc0e8e119a7c46695fa32b113d910442a6644d3bc1570f7d6205e3484ae5fc5ff0ea91cdd85e584d2daeafe58e51722af3e1d4b2a9296ad22836921a219ba70db5174af187705baab1af944e02512dce59bd0549c860a77fe3f5c335b027b38aec70e9a888c3a8d8127571b9165c53448f502cd2a8e411d5cf1d935e4b9eb7349868b85fd859a2ba47f9beb5a6142e119a8f081756d3a13d251b5cef895fbd426700eabab991f310ba3bff72749471d22fb539a003d27c6817ba8d699fbac2ea3b5c344e2c50c782f662637aa252e1e5662a2e67e15f5dd6d4395b5d4bdca953366f550e820f311b2093d0db1f299675a7c9bcb013a7cffe25bb1031be800065961f354d5972a34e87b024b9d504ef7f841ea945361fba51b510be6f25d743a48cd280e23521d3c52a4030053a093141b9a4a010f8cb49ca658a222de2744f5a0d0791e11d251c21310d4f8d790d14929e6668144b3450be8a0bcac25f8047184ff42951e27be4c963f63d4d1cda83d989d2311fdcab09786b8197e0301b82ec9b7f5c34e531c4d04e70b0658a21e27dd1f828fd741744cd10bc7bb2f0d1c69e14e6160df0f35d27951b912e2f0863e36bc038b176e36e900e3cbb941021a6df9e4a3f48d636926441610a6c9cb490a16e3726ddaa8467e9f3cba5016af8653146a320dec98f49b7d26519aaccd55e5ff19ef9aa7589ccb616f490265eb195cad00d5123199190755a7e5c7ffb108d0e5fbbb3a813e0f1096cbe727e9660b718a19f9876db43ab2b6999531a017593b363bb7495e58b9a5c96de4bf7ab7d92d48d213ca2358d864e23fa19661b9a8984584c6c7264ed2ba57b8005c7acf5c9d2c710889ba554ad75172f9caf9bbc77380a59d1c641e8dcda8c73b2c46ddbab4b057bc551e1022b9088a6dcf58b9b235eced236533ac4d9ffc5af8d489662c22efa681a9a0f769a7b28a387cb55800b23b76ba910e47f431631e4bad14bcfd991590c01bf4327a7ba46e19d6996519bbaad5e587cacc80fe0fe9cb00e4888caf19023619dc62003a38f9bd8a2b1d195d34df8abe0dd317e45aa8da568d97ec951873011cf9c9c449bf4994111589c67d8dea92b5954be21c4d7ea662a0e025cc8b257de573f6617d227f340c023fa510359ec8df312d60e2b4a56e80bddb50617b06dfe491c28a57933ff36316cca0443edccff81d7f056ea897f293714b5d43f39da5d3b2610aca4939b512f3c2ec83c6177ea26a8440a133657e4cef5c3b351439846c526b01c9a7a1f1c4eb60909d28773397e942d692c117258bebd11a95b2a5d63ac7a4c95d565d038e593990514e28c7a8d0a1912cd639f7a4fac19b3ef3c45e18a7e3ed733483f974d56c3e5e5bd69b0c082189d34d142ac3785dc562f03f5aa565f20fb4e91bc5f6143f07c2e47f0f826b5fb8f53344153d29ec0461506efb8f086b6d6230f2349723ca59aa9ab1f8246d24dfb81089153973c753774a541e299fb4e0cc0b13abc6b69bd6fd04b8e890d2f14bc28b33d9f8de37894c36f7dca4caf5bec7acd46e0d8a88855ec3ea0842491d6e0c67a4f20141964872d2a0d462af533a0dd75bf1499c1c955161e259966b8a27531dfb42350b988581110466bf230c71a17362893cf385540221105a6462d74d501b84ec5203b96afe9afc02bcbf090b3451d38108f7c0e5375441e22d114598bad9a71423476ba5634c7f79387db3660d2ce4ad96243ab78e110ae5b95351b3533e4d9705b77dd24b577edec5141d4075b1d8d702d32761663f383709fb137e5f50f1"},
{"000000000000000000000000000000000000000000000000000000000000001e", "0049495267c57b1546cea029f70e2fc48e49908f3a01843e2f0796e8e0d472157fbec9a90247333e22a108fd27d70b619297cc915527a4c635967502ff0712254c46e44199cb235e76e604693a04aa7b4bd4ebb20e7faabb070ee4d6e7a33559873b1801b73b7312ad18504f22f763e9afb61db1ea05cf3024ec81cb42f223fdbe8cc8da8b611cca43516efb968ce3a132782e36dbc7396f6278ed4f8816923853a151c6f01cd88700bcc256a2868670bfe860ffb6d52261405d9401f44c1535b479177af1c636568611de408a556b5fcaf00aafd3c5e005fb3de8203721f1c4db7f327d1b304d3c7d0cf862b3ec3dc89a19794d6b62927a97d9c83d02a08ee56846d7c437dde05c92aa4e81a59fdd97e324ac0db35476e9b5b79565f5257dd84f4f237e31c40b6b1a234008934f43f8a24ee16e8bd65fde97c6c5337a4e2b421a223de5b3a618c26c621f62033fc4ab010eb966eda13b75ef31823fc4d70148ba911cb6744d34bba0659e26394a387643375e60422a0ad4de3d136769c12f05c69d5675741b1c20f1e95f4eb9533745fcb71047b821a9ed87a4ea3a3cd973c5865e4c4c0d8615f645ea9805e64813c900a771dd120cecc4f01089f8cd3f260ec5a5d4615c44ab47210d7d4c0d4410bddf6c3108e38f9662e4a92df3d9a66ff279f0c426d902c9d124dded451e235ae8b4e9e27371d76d92050b377caaa65209d27a13f68d2f314df8a2599d3e15756178750975acd5eaf4f36eeee8d9ea931305bc274a241189ef8635b4c6fabcdeeed55af641dda4433d4c8b78e2a9e77f5e3aa802ccc1e9c695573a996c098b4be66d242c633b20710ab5a9a38ddf3fd6151f2852b402bc0fecbcff6c930f71ebd073061ed83ef60c3a22c24b4ffd38d985163777dbc9da97627e17eb52ac642cecb13fdfcad2b7decc78ce9e1e9df511ed0279397c20299163524ef703036852d7540d3fec0e06d6499934dbe831d998f3ad9ae97b4210f7ba705618df8fe1fcd0470d239dc1dfd25d64b5d54cd5669c31b8cf77af56c3a99439774a137186a762491e48b104c9e7f692c310c51f03307ab11cea4dfe817967f207757d67c20771bc469862d3d96de570f9cd2b4abb19d6640ab4d71f8fc8ebb3364976ce2a281fb2fcf574d703ea02a26239354ed9e092ebc9170da098ef460416d4bc504fcad4ce8f76c0936d93be273333d5eb0896248c98b36d99df3e71c6c896db227a2b9a2add1657d913f120d285e493e7cc9045bbb21264117a21695baf6b08616f8767e86907af59421eae08dedeb30c3f5f48ba4bf9c8f36370c5057166783838b1c8990cca43dd621c8d073aa8b42430c441ce87fe7838a31e92b2f9f7288c917ce80dfd997d030bb9e79f03e42f0cc3bd9c55bf057356d50cd753c9cd73be9ee6060409b0f76f2d1d85b7e2d1ddb2100dfda9217476140d4c5e14fcdd67cdb85313dc0cc6e173431c3c2fea1f9b4bcad8c9a36b29878387a2ad17125ec33a2a5123478454f98bdd89a273a58d3364a23a2b8a1d0f2504aa042d2bd06eddf42a04e39f69013d42fb5f8d2b1718f2065f202b07cf12c1b69f584f618f5cb93cc20ccf036013d1f77d95dd0257a23e14ea7e80f8b9a71d3e7f2752530cb4eeff22ba4b4132a5673db25cbe045eec6b69418aa1c037a114fc18f4d9db99f093c209d1b10bf8082e44772b37522176e4d60f2d1abb8415da35947c8bcda53a28d35d4741807b28f65f251e59c42faba1b39be1c81e273ccd42e87f6e1fbf935a05dab6b10094b1caa654a30e7fb895bcea386af68b12bb7e7d4bdabf64fd8d163fc4e78ef5f7c2df555808498d78c9e5bb59f9ec6a344ee8dc0fcd73bfdc632227b29f6b63d7515d0e126c1b9c8699ab7494834d"},
{"0000000000000000000000000000000000000000000000000000000000000029", "00346c46f773deb7cb31a1fcb128fa86577ffe731225dc3ee84ae1e513fbf905d6d3381f42de6cffc355104e1d19fb5d98c934ef3310b57568973aeb9d3e6e2ec80b35b0e04a47f7d3c5b384d0c609ce94f37ac3080ca5b653924d3ca2ff31c5bd377ab4ef8fbdd18d14c3a9aa47f9d367d6c3891cd06676bfb6339ff2dd125293338790bb39314f69cd39d0043eec4a19cf854058bc3978db881d9cf976d0b877bf4a0d28d67ccf00752de3964194ba3daa66287d5435a1d12b90c4cb00fbbe0be902666fe08a051c3759089d70fd56fd01244b475e76a3c67fdf5c74041c65417d336b32442d2732448b4e5f055362e4766744b628d1c89d8e52ed01847433f7827e32c7c4e059c28e6364283aba6e990f97bd9da5116cd3d728017a8f7d7f74fc10948078118d27729d6583bf49f4048f1cf894c1ca90b657a22f85bdb96427ced9a926a40b0e3604167e13d9f2500198f9ba43d7e2890ac4d47b2b27dccf9a737dcaed21e851c88ad765d9f2a3a5218be71b0d623a4bd7930a294afbb6323b01986f332b746535d1ecf6959252107019ab428a82673ede33c7dfbdaf7dbf605909c0022f7e3ac3573c477d27e7a95674d262aaa2d79e8c0be7a5ea6a031a3443dcf1139bb19b80579019e4a5047b85b1a38e862e96fc21502925bac11fae51479c45bfefa7c89c2c617b5294c8cfe6b53582b0d4e9c0019dcacde633be57b154612caa14c7544ff8dfcdd808cd587d26cccb3f994f53c580f497559bddd9ecdd07d88c46af03e10a5ba7d141f78b0dae5a62b4d0bd1bff020a7493e94925f451d6029c2f2515fdda6aec06538c61f7c42c07f8bb90f0e2e69a9ad966170d42077e8cfe7b61ed89232312825dc08ea776c93c6a920bfcd5ef3be76709773140dd1254b2e0968b8f2bae303da4e147176a37e13c03fdbee2c07d6aa2114b4102054346f3d2843fdf1a37380d4b3ed20743d2e7a73a3f8d44d7f0bd099ddfa659c25f27130a903ee7170afd2aad1f1d4c5943d191960ae52a397da58c8d323923ecf7408ffd43bb5d29c0d777035ee9c85874350b3114c30551e1fbf48cf64448fa333ee74b1b2de3198364636d0940b9723312036d3bcfb65482b8eff012612eafbe84ca4d18ef019b096ba31b27cbdc56a049cc1afead9edcdbaaf85567d7f63a2d9336bb5bb1044dd65b270a09931dcc1077229bfccc963a06970f101b58d5c90a07fe78dbf6f833f4ae5a879377c45926af1cfa451885adeb43132bc4715cd975953bce394bdbd55523da50c9a9c4057c29d848269aacdc926f05016b2d51b771bdf75f518cae231614d97e1e443413ee435b7d9b8521039194b28137f2360738dc6f430a3dc3ef13d3fb5f0441a40a5f7d10811043aea7a5231d35bafde571f186b8f6ff60622342ee8d3f9c9304ddd0855b661413bacc03dbcffd45b143cebdb5ff1e2947f7860c75bdc50b033187e9b444d3441c0a6010a08f5ddf17b417edaf115db20e306505f28edddc56276dac60b4f5d1aa0606a2c7b7b866ccb89c1e71057c97c798720b4dd42126e325f4aea717c899b74705f4103127c9c1f5eeb4921d3db230fb4672bf493a295cda244d9df485f04935267648dba1d10a552c8f324c11e1c2e36959a99997b4c9d4d9462a2fd6991f06cec44cb961b1e97601e534e7e8b7bee52e791d831d6a6660f89817df52c4c2b4fe4c9f0d5f93ba573009b86505ccd809cff0e3950df9f7ca5ed37a5d91ce1a9ecbdc1f1c5d8ae91034b70c31535718bd9ea4fd09c7aac4bc55e9ecf0a20220804cba3ad7183bf52b0fc95fd0f90df0b9ff9a6192961e7261320991174d10ab099c635406936570428cb498131dab2a5c41d61e4d8684a454c3d5135ad24560454bd9dd3b1a9b1c"},
{"000000000000000000000000000000000000000000000000000000000000000e", "0043c00c93738ce1e4352b017bdcae3f75a1bccd1c08902516d4101534b5c350e2a64a98d28d59d6d1110221c59d260516a738a5b62aeb43c38e2d73f948290dd4265e6975c123f7c62982d77c6d7f45f71d77690e71e8dad90a02316a314318c2195b1925ad7708be50d5ee04c39b8bfb7c2305719af1877df90f3282066af655aeafa5e93b941c97f35f484be624b0f8b2197bc464202c72fc5dfe356927afd57bee7684b7488003fe09134e5e33adebc5b3f043ef93e9e0d9bb2e3a14eb8ff47f4dd2b89b80c6148c60853a85321c8b2509fe155edaae1497de84c166d243d6b55d78944aba205543425157f28ff3ba135b6ce4dc9ae08b1badd40f0f23393e21e9475182934d9b4ae1e5b87718f93b376e7d95ef5556234956d4e82e6e9079778cd8404c19af44de7d49eb90b3bc443f28e07e1ec5f49eaaa13bed563262d6c08dd3f3447c51e5b785b56f8fd50c02cb16bd06da18993593338701c4f72d4df7d7132109e0147f218da7f33dbdb77340d02b1a4c2c3d793b087dc4c6c6cf3b6742f43098cfdac2994ea4dd77d456484775ab95f67ebdcd85ed4bfd29099a1cbdf4bb0aa9c602ec4f7037696a34bb08458299d97b93c53a0d1f89baf1da77950083e3c7edb394e54bc1d9e9fc34e78b60759fee4575be27cbdb72cd26222759d8c04c240bf9b76ccf4d9170d707594d6851cff89cff0205f21e76034994a335c3216187493dfe7f953b26e051b1263b4bba34abda7d15ab447cdb1b4d665a71c608c6c49fff84a2a87f4350dfb5450dcc89ddc8b1585757af4c7ae619e792669761343fde4de49a9236e70f66aa2dfae48a779385744d5f30939ab3dcff5a6f12514a24e607210edaf044226665352271e138b56347c8ae317d92d6558934c77466f4645634cdf1e9b549e0d5e6715a96b3fe00d60aa87e5302688cd71df400ae4c7748845a57d3d6c2038e389fe50e6e3893e62785ee5327db8cf37c1fd43bc135bd55d63fd704170148c95b21b46509fc5ff37f834e391de60fbe4c840da7368f20c5e41dd3fb72ee525b13bd42cd3f722502b660f71a399de1d2a2d11b700be708bf4bf20ba911dcbf6e9a4a01d3ff4321ce21f0948a4bfc5e2253068b65f3705289c7835f344be0338df9b3939ff7df31e3b5c2269be23fb77b349f61d2e1a326de7f1a12025a004862939d5383c4d4883753acbe0b2ff535dc1bf7c19f39e3582fb1ad03ad5ee3462df6b8bf9470171355f69535a6e7f33e9532dffc0839c41db9bb25226e2f8a2c22ba175e4d590efee2b406531b3439a80d45879124623991197bf14dbc7ead1ea854194b2c203ce620bb5ba161a627426d2a1a304afb8bf994c513d6aa22e959ef50e58ae30544c5ec260b4f5ab874302786ad7e5da58763058782637d026de7c137a7a603487fc94a6028cf56235344c5daafb9fd801cf9292bc7251f83a7ea05ec5c7964147c39d3b87f7e4f44067bd9bbe274166fbe2803792be9537629ccde0bf01524ca3427900550f876f2bf9b2b48e95573fbcd0803777f18bda516a3cd38e368f8b41b41c18e1d021c04571ffc1a3460f9ad1452a34675c9e56f0977459b183ac4f218861969692763c0b8c48a1931c31610bc3cd58f9120ef1d3bb4af7511c7b55265e38cb62f0e084f992b176fa29be07e6578f165596efbbefb7b7743725cd533ddb54ef5db649f49ad107dca5f9eea510ed65ac6b48745b151fb3427b9ce6edd3ad31291f33eef9279799b02b99ec954711aeb22a6526ff8f2c80b697b8326d92d6b2c3ca35e6af6539972e51e4a9a42a79c57b0d5619bfb398705955951e612aebdc7a50d5bbefffdc85e96608c92700b32e03751e5fb937a38cb7484e41432210c04f41ef4cf44d9a52d962528"},
{"000000000000000000000000000000000000000000000000000000000000035b", "003d7a484b0c9c1872b2a16fe1476995f749b182520262e83fc45ecbb7642f678e4eef29fb90abfdd14117990f170c084ba0de053323ed733b79d1151f52a524bc9edb53d06f81833562e4d5f93a4a83c0785c541047d2219c17c767db219328409bed873e693af1f4310d4e236216aadf7c8d9b38afda10e6d5939e1d644cd1feda485d8b1529e95544c3d3b4f5f33ab153535bb04cf6281b3b5533ab67382b7cff5a5c69b8b4fa0bd97e35d50b92656d20a50ad03be5776263fed1b1248bf6e2a74b7adc6030a9e4bd63866e8942fc38cb0f91bdbc2c880002e98601752e3aac459e8ded4ba019395b9e034ff0df4dce62592974d1c5dafc51560a1504870964d1655d09df36554af4e3869c9257827725b2acd7ae0b82edc7ac669189418219a725fcc6b12209ca1ee6b6079bc382e894f9eaa06f382cbb20f624e66ccec2b15627a80833f9ec7edce361ce3f617b00637b7da3d468abac4eb4c7e755a4f15a8131bc573cda0a36d52b299dd50f840a17f52c2ec874b6d12101365e514cafad29f261a40a553e3e318254721fc91cc8469005584e2729c0b2e052eacbed4135383952021196e76cc82def307452bbcdc386a6466275144726bbd4d52266b497c0aa67def97224166db716e5b90321f491519d42034cfc32b4df53d25cc61739069d299f05193890910cb7e302ddcfcd10f9cccb1891d7034ce4223e5bb1b108a6e1cc4f61802c961eaa49530d39ea3e4ca9bfc5e1cae3b183a1bf25113b372e9b381eecf71355b84151b1548e1a265115f4de3b03b938a2bb483354eee32073f5565ae6024555f7f999190da3d358fd1c559b8b23c18a8a981d4f94ef1f5941195aa331d9cca467611272f8812abc2f1b505a43800eef6c128fcb63569ca1b3123caba429742d8ede44135b7343059623af2c9911be1234771ca7ce0d451302bd0e7b774f3316fd9d70c2267b986e1598be5d0807100ccdb50313637fd01584fdff70ca4ab21da6090751f5d516975f39e2e5e2e0a6bffb11a358bcbc6008a951741da7f669ce259999d57bc38e8ad2db6bf52bd6a255e4696537e2ed830921eb8096f86edbddb363804d64629cdc0f3022b6b78ec18d51fff57c42b839e13bd99491759cce1c050a4836e3ca17cd120113468952b459f64473fc04a6110a4d5b5a1bdc570a65099b668151564a939323942743f2979612a857a2e50e2ae78ffbf65bade3b5f38a43f74fe90d6f3df4f80a823dc10609cc2ab6b5811f0970b3758610d034f810fd5c58bea3a817859983c3005d135322d9db7d86266344ce4f13f482b89e9292b64327dd30f93d6451353ee4ebc1686857cf03a5a277428445ec455dd3fd47fce49ce056a257d65534e85bb2c10a1bbab8b90267a91d1100fa6913f850385921c935f22cff7fade002d77c5bf0d7be357e1c10d57b0ca9e639381c6b2944b83ae1acaa14c7db1ac5e02efd9a1dcc05b18ada0e0dd16add5850eff56e40fd77ca4d75102d36f54231a5ed01299f161b44e979273950dfc2d8de1e55f0139f40f6b38df696a249b51e18c06cb559272afb521801962c44ccfa0bd0b5e47a794eedd1a5e7cf6dad1443249a4a8fbcc7b7e153db7478767232041555072aa286c2a8d6d66fe07086c635b633ae8432dd93b405094b6622649fade3f985f25cb072ce35baf3f27705a1ee53e75a14859b1b909af48f7ec84e025f5e5818495a6780cecbd1be16d59444ea7d69bbf658db191a364ea87a4a34793e6d54f7a52f23029e3d553dba0970a90b33d446d1c9c4421a5de94ed16b783af097453ca78306519c4111f33b366776838af453ff0e1715984d9eee0d617ea10472f9806878936776fe2a091b471f7aec0db1bfda02c2714de560d21b69db16d2"},
{"000000000000000000000000000000000000000000000000000000000000000a", "000ee6ddaac3c7a9b5fd21f541ae6d81bc436ea24000876ced434cc9c12fea943c0e3c605a482f7e39d323af314c0fa0922fc0fd92e4e53906113f923f1f6d61170b87a01ddff30003f6ca51fc12c9bc11ae9f3605eb3b26abab9a838f5040d56f47ecd8b5360e8a6a0a5cb575052bb499b2d0764602da8059d3a5785d7b1b9b2dbd9c089483a40f63e3662a88016808d6d5992cafdf32ed68d2eb9f65752f24e0ef972fa4dbd6210672ce2e9569819b8199e4011065f7499d90d31a1c3c420393528ff96d2f22d6eb9dfa7e767299bf5ebd0e3c5eba2e1dccd7b5d9725a57438d46854fbe5c092ceae5bcfd993ddf734db4e1fbd5baa5febb1d9446075e771fec902fcded5f07adf4da714e27c778c42226f12f455d5216ff769383447cdffd5a3d2659cbf60de5d69555131e8ccf39d20461da66b0fa9c4b8c1927e7539058d4bbf914cd8624a3384e66c9527864e10217fcda4582732d2fc0871b423dc4e71a9c1dd152241057fdb6233a49576ba356bde1ecc0eef2ab54d81b6403f0ed7753a5ea595441147a67a98bd7beb916319d79ce72aead53d895b5ff47d87b8660e2d8f04a076bf2bba4e3a6896343920661e089b4da803fdc24457b65887ae473d746ae78d670dd8ade98567cebbb083d6ef133c94beb730b21ad8d144388927a9ef6991915a672d55e0fd1c121860c68f8a94350f25c4ae50d5567cc458c9063863c871942efdf9312a0df14d3111f3ea58ba3aa9df9089219c1a1dc2915b7d99f531881956e48e25d4f260c06a393f5d736a4d8da086e48ac068f9af5cfedf3c42811275e1db6830bd4eda91758fed0ef616aadbe64a45493e0c721db9c9eae85227bcc7aee5a1031823776fca2c64929e3dc772a2531e28f7dfc5979c94cae67de766503d685249b50ed3fa91bc2ed5cc52bb1e754a2825a482e5d557dd2cc0130a1b3f4cf54a307c2c164b620089ee600ff69fe1c875e34b00a2c75042134b6daed32769f0f9fea77049977742f4312742f90b69dcb6c53aeaabb595c15688e7d86ccf0cee3945cca9cede542c786269ee04e06866260ac07032ae7f3d50dba2a34627f15f5e3ee490cefefe4d87cd190323cdbbc7afa6b81935dd2780fdc652b46219249f76af3d83cb22ff1dff1bd03c5108f5c9ad90db2526e2112ee8be6694500a4fdeeeb0730b23093dcb2891fe626df9cee0092e16cfa61520fece3c865a064d5385392791dddd3b0ccfa98b9d7122a02ac05d7b05f67beb3780fa69c2337819b5dea1fd037bfe54cef70e45607065c47bf4e15d4b8464f09599d2ecd46194b9b7dd0af43397b2eb8f8f940b3188a765af2208a4119cff795f3c7838eae8c9b1cc616e388fdb046b9234fec74881d452e3daf53da606219f5f0dc07acf8fdb523929662fbb162bed9f83807020a6cb65d510fe6e6be1669f6dedd92aaabdfecd40c9e09bbc3913d66e1ce1542507be3ce6a609b5eda0f22ededd3dd0c6db963c25a267c97c210a1733c544fc91b854af331cdf7652b16e5eeaa66e1de79ea4103af543dbc18bd8f2a3126116ef08cb5e85dd1a5d528d32216078c7e015e4d961c1168c03219fc9627c72d0465b1509763cebc38f67d7de6f06278227c11125308dfb28ae37e27641ce535cb2c56f6f1eafba3dc053a960fc294a217c2cd307476094039e7bd9b953512bc8ec4e64f71792c0fb3f0b04ba7990605199aa10ab8acd10dcfcead0a7a3261325b83b9f84d1c6a8a262b3ef822f1bb2be3e0e26b1c2bf9d8df3408930709ecf71aad43338be7dd119077663271e26cbcd16231a0ca0a2f9c4457f3a11590e561d78db1567df54815e9b3aaeb5516a904423c24256deb6746c91fc44d1c0a4c7c416b1d07d292f31178f34b9e7eab1e12af"},
{"000000000000000000000000000000000000000000000000000000000000000f", "00a437c55f115f8de60ad25789f4eb05876819ba2403e5816da12e283bd5cb134d9d2619a67e061c45c102c92d5f0e4279752ac7935a49a6acd51ad7e9d631055a1434dfb056efe8d7e4e0cd788dca2eac1e02a1031bbac286e2fc6feaed70603640ba608825fb28c81da7a512848cb3d0c862f4c5875347f29523ba57d507f3795329030b251e02d5e519ebdf02bd049a341333a9823cc2661e193d19d6cf8071d87e890196fb7400f2dee19708553f002b52992e742f2d727ed38483039e11bb7a837c9170f1b3746ab1fee6cc68fd8fd5070b42ce0421fd555c3050bb6a592e4cbd0c486cf717dc26d83fec4045c23be7cfbfc0085f65f17c700802d1f65887592eab0185d62b7f4ad231e4139319a309e49bf0f928f6e1e28c714c6feeb366ccc27866ad08bd6355c66fcc87c344d6ce513d0ba7a5af3f22470bbc967e054f93c3d71e62cd76606dd4d7591584bb0206cdcb43cfff78e994b5b48bc1a99317d87ad5590f7778829d8af0e05c25165b70dd32ad99400e80f72f7c6f940a6395b72be1032d2c1f25ed1c9614d893365fd66fbe57ad2bd739047f87297b469f2d3660470262ce3be10c6a6da9a7b29633be985181d43dd3b722a6f6d9bc1d5f1fe9e327f37dc49b16f6221b856008a703b4f8ccc2df8bfb60dc617382f5ccf33f85a6132edcb00e5d70392d46213cd2a03f8089b7cd703e02e74fe9ca5015ca954e30e6dfc27ad613ef3e2a2e242625a6645a40f5008812665d3e5e71ffcf916f38048cb1fc0e4f24c7f6da2240d2581784cd7f4c08880740405d479d8121753e24db0e7baad9bac4b09ef0063ae567bf972aed6f52049d982df2c5bc141263251330424cf225b22d6e9f07d5ceed8b12907b56c76e093eeaebed1a94dff82d13db1ae4ebfd5d247d248016b4b719c14c400b8cd27759254efa926f519a2b300158903c16c0d87ace5c85ecc92ff0fa320734cdf555a0268c4c1c817d0ad085f90a64aa9615be9ffadf2ae51d07e84cc639d7e494111c24e4413172ae8e8171e1dddfce75ebebd10fd769f06b9f76566e3fb7c604a9495731deaf3f40e2d079d9e1597842eed1c8b13a6f05113ca16f830d4344324ef2f6c2dd0fdab7881b3196f47f0d6ba0c407f1faebddf96ad4d03a697a2fa87639b498c9694bc3d7e475f28213121e7fda4901d7451cccdc1a5d8362e2cef275e791321b0ad1ed27d1d721ab6c1345cec304977854604e0a7f7bf02f0b4702605143a96ca89d424dd2ae69665543b7f737151fe8b5d294189b6350234622a3f72b8f0bdeb86813b9b1a1ee1bc4e1e54073aead70a089e3516fc06f46da5c220d21391df4b898d1b2d10cfa4a191de52b1a0c3cfd551ff14f69cd53e62bf438f9dbe5764f2f2ddc9a20ec558b9bd1ce965e856ff85694855c9b44070a8f01b34ca7a108f861655d127aa33ef7bb8cb24e6bfcfef85c7907f32fa53b55d5e979c6201bcdb5135155e3e51f274780e5a49776e042bb10053b005b4d9d6ca6bb5d1bd5f80516805172d69f24e69ea1260f799573cae3821bae7cc6c865f91c46c8dbdd7272151e93e0030c8c09804c615ef4693cf945909859c12fa8dc4ea1b209d7f75834a3cae7d9594bc15e4d4e4e361c40641b0384fd20271798727f0e52e5bf8ff00ac50232d6956666b58f07e2d16020523daf16aa2d2d6dc1c7e95d936d9def73786251a46fb1009e90d71c766d585c13e3212c2b74bfee47ac8e952af6069566332422f89b9bdfc4d467f80fcb940a0bc39af47019b04e7c3e9e043131d7234075bbf464d5609760ab2105bc744ccc40f6824b45b7bfc826fa366a38c94b1f8b6c113892986cf2e4b897c67c52a2dbd93f05572046f7456a0dc9e2bbb986b3d74fc01dcdba989c47"},
{"000000000000000000000000000000000000000000000000000000000000003d", "0046697102de3edbdfbcb7bac3d92cc9fc30d75db801b27d97cdc296c7f07010b21cd4a3727c57fa90d4147be341ef8dd335bd5ef436686b9e8d25e0f989591c45433154d9ee12ef9403ec5c62bf86ab29b9cf9f025b464e042428bd3a169226f5aed925e1b1ef3a7e0e766c86c5c88828636c62579f9719431566dd26a938e2460cdf28065fee86165be74769caf0fe3bd94b4ff6d3f07d5c7307350c260d4a5a8aea691e1f0de6031d898099c2a70e6b45927cb06aa4e595622cad1c27ac053414d82675ff4875dbd954428238f399b4930c00a1678b0b87dff740e30410573d34c906951e1334c462bdc057d8f51c4a2b21cadf17f6ffdad8ac6806ea8418108ac619ddbf75365ce18bb608825c4f350ee77a6a2225687b818393e428f94171fde358f2e217a535ba8c9d1ccf708bc53429569dc2986996e0d05213eefd549db4758fcc79e8087b3a86ec3a3958e30095b33bc50d3427e62b44f375c226eda19ecebd9f14f9c64e5545ae30814ee4b408b2a4cd81a3dd34740f3d81082a73c7bfbc3835b5286b64769ba6fb5af618cf99cbec5c5331349aa9a6356cc7cf15c4ff15c60ae2d6a2765e437fa0fbd467227e29152b3a296f1a221c8189b28f18bb591549e6935c6e56a8e595ca951435bc3eb9492329ccee2443e2b251f287dfb80e241ce2b590f7a956bf8117059a454ecf6d96c631c5e706d59d9df2525c0ea857668d9270252afc647940bc38925230b3d01443fe5cd684ebe478bdefca1921e10c871f2bc3267f95ce8023e9c8accc9100da6e38d6373193e9afe46d8f3cc168f4c3c9ca7b6bf3be7f740b37cb79c926308d3f6ff7c89cf03b2ad9317d98b4277a7b75a112df07596866e1e7ee93e20276d903d82bb399d01e162d4fa0504494e9e727f76ebdbbe3783d15ebe530e68ef5bc2796f6f4bc74bb481afc120d00cfeb7c940709a6fc217785cc42c3fe9f471d858c1dce0e16a392c13f1cdfc6becf39606e8de87d075909771ac61d21772f623bb1998537663ab5b65ef6452d2f35935651ad7a9e48c493f7eb2fb54ad170d07404fbbb63fc90f77d96221a4909f053efd7883f2d050692fcf4e91c4cd73786057edcf9f4c262619db8381cb70be70a07f3dc714732901cb99c58ed23959bb43ecddb2260e10e816299481540f0d9fe6b74de4156053c248396e3f1fb29ef008ae43dc50dcd6c71d07d0904af23af2bccf59073f2b911717690b332543fe4073193fabee8e99d9180f0bb61f1f89851198f6fdb53a6de801e2178618a90e6bcd7f319bdcf7b6f700e09cdbef24acb9c5ad45132c369fde1a4c0594ab58720406bd36dcaa2dd59cca51822bbf5322e6f9238930de7b5c11a89b012a2327761f74a597a7595d69e891a7d0b16e9a8395be75032a54254b87aec137a6cab01106b863930a1ddfbf940190c420da24688969287395e97d0579c3074f006555a49559d9b5d72bfe6ae1284d6e3c2924b4b698888a563cfa0ea98595afd97360a8f6101e18937e003e9c7a36f65d6c052def65e05f1e422f60f4932c73a440fbd5f55ce7b427def2f1e7425e956ee78177e6ae913407bc036f8fc9c67e6112fcff4be7b8747e0ad859be8c11939fad71c0681163e26de84550ddd5952fb13d2f80fc30fc93e0dbf0306df6a618a7f8ee862f4d8eac1aff64c1f1cdafe0df2b4155688c2ded14e035328dd0060e7bd87eb0d108372db39a407f981fc212efcdaec82c7cf1b56b3155d229be449860b7327a9b6206fc6d2e31d5e25500d315e6bc507b53aaa2ef4c76b276086e7d1db92fc6c358f645c7ef49ffed557e02879795f296ede9f5726120563ad4a6d34a1d356ac3f3cf08e79fc16612070047dace7aa3fd3bd20e71048e9d8cdfba1daf049"},
{"000000000000000000000000000000000000000000000000000000000000002a", "007fdaed3735b74db866f0f936aeaa78f4e730076d1814817a5a4b969dd96f947a277fe80540d3bcf9723381f9b570e3350942d413d4a62c7d2985599ab3be3f100fb2a6960f4adca107ad8df5601252d994dd5904f54138ac9ef2834ffc96b21e60f2e3be40de123b334c8b52956fe923c512874394600c873a903f3e2a18b3e1dbf5cb640f41ab18cc9bfb627eb3d73830942ec27c80191eed6b27f4c6a8e1e29385f1fd97d9f6060d4327bdca27b8a08421da6775d5b98831b8f1e715d0a21e7087fd7083c7e1bf98ad3bde49e6f81ec0071442152be2e227ed7e508d4ec0ba018767716a800d882992d75191e4e83231724dfd9e597e563805a3158fb93d63d7c86d693d62f27ffdf138f639092bb8206515d1280c9d61bc4605878b47b59e0fc0da96e61897ed23914999356c5a2637bcd4757711b7fd45de4dd7cdc786b3e3c7cdacc5480d744c2aa0fe5f45ec01be7900034938948d62a24c947fba5d60b9dc55aa15ebe457d99bcc85cded031cbaf9a62ce2d2d1c495026474489e29ec376be0570497c6c2c5f80419bd8325bb61420c2ab8cda04485e0ece768d603e15aec6303e83451b8554d3b2d4d50e498342cf83ba4f1af4b1b59aa10b4258dffe6867479ede8f1cdffef95b0260f7cdac03146bc68576ee3beef6bdcf51ed8bc2aef1e775387361d0e49de19a30f36ac743dca381371a9022e119b122a32cd5eab19dba7d45387ec221f823b1bc8310f66c8a7d247e3c3c8f2ceec875c05dc11d50794963106b1bfa59c19321ed1f7838309e35e221a0fdf16610d2076316cc4a3fa115184a9f29592b8a002cd97382dc618e072373171777a788098721f0f3628c203c996cd0bee78a8250213352fee728dd6330530ad7d2eb8ab4853cd9133c4964c3a6510b28e4cc656aeab959e977f86c89bf63572d9c946716fbaac18011e87801409c4d5da6fd397e3b2a639ab90b6ac150719b96e60c395cd1bcc54492cc9b8e5900e16a0b30221e88c7cc783990402e57d05dab21da16fcda3d906f06aa33f98f9fd90f930f1c49c8b3c8ac18bebeb110668e56efbdf2ff9286346bea82318f5703e55cd27f7fb8b97513e71f83833118e59465d1312ca5fd016596d39eacfc8708d2613d98f68a04e116c1500f82fb39da8254ed32331bb489cb45e2dd2d948ff772e0184d40fceca7f8ea96b119147b7c06d87b014fb10171fa5c76d2229716af6c5a2b35d691a652f96347f02e7df99f7d5f268b9b7d44f1ec7d00d147999bbb7060e5f4169210ded0f7cf782467721d61618f79c57046b2496b0b7258dcc9d32215d5c883371559c45f96329c690e57997ffd28896cd2175f24de922f173c205921d2bed45f967779cc69d24ce4a89bc0dbbfba634f71a39c1a9cfc78e0dc84a515fe456653a7f9e380122f628a3c7a14132f1610278b4a738988b78028d0e071a121f1b29bd9edc01f97b303fbccc6d2b139d1333fc6e47dc0727b3876478737a4a45a5609a892e26e71d7ef5cdfe3083c0330682d4ed226676bfdf54052fae7c4fa33f4392f123536d2fb5fe0440b092150e9e8978f2e97563aeb80416b4dc80e18c8938c7d22186fe888c5318195ed3e238db6a462125888be5dc224fcde0fad00c7179502a6cc66977eeb19a5d918d01cd4158d2e0f9fde335d2985d9d02ed03cacd0e9f0d011db68ea3197954b211178cc7bee19648d8d89619c49be46ee7e69bb8bb697b5e7f61fa64acddeef14668861c2f975bc1b9f8965c32fcbe81e299b9b94e1bbcc3f8201a7c71ff2352f8bfb8b099f73197ada11e88cf9c3d188cd5174762c460385ff8c6eea786d537777f802ed2efe1a7f1842d1d3b62693640fb8026596eaccd09d95fb2f5a9e7c856c8c636615337c634"},
{"0000000000000000000000000000000000000000000000000000000000000007", "0124a9483114abcb470b4644f2cf0c79d142f09e3e1c028db098d6ec64e237357ebd60856a0942daa62f3cd91fff2593e1ecfe5b3aa33bfac3975b13fb5c624fd5bc1ef29e67c5766de67bfec9ed96e1d35c52b60b7d350c26ac1e1d947f256db25b470db54fb536023ee5fa6711a71ed3ad058423c2f1f0637db17c3c1e2f94e4e1c6903a98a744593af94bdcc699761576883b1b9c196cf62827bf5c886d88de70bacca35a009e029feb8c978f97918cb1d267f52ebc952bd2d4162833638ce3f3d6b0fbb1d2e4b06b2afdea241e9c815f1837dfb801699b77fe8942ea50ef8274e2604d06662fbcf24bfd5129709df0031483fb5f412119bfef390656821d989ed737128d52bcb0cf72be7ecad52bbf06c48911f5920a1f86cd50b81971ac9c78101e93731887a562b794b7b59a84b55bfddb40e58a663063021e88dcb6789c86573b6c522801eb34c54dd5b63d6e0346a794486bb9e9a8d57adefe6ba766bf28594127386e9bd98aa0d69d710665f37078234d83c8d6da651c49331deee7d5f9ad338a1507619aeaf74c5bfca21e3ed691f972c66bc4cda5fb9ec1dc323323f1c4fd171b5e3579063df5996948b8c2758aa75f653d9ea3355b03d3b18d8360db935676ad37de3b7117be472132c86b3e949fa9798aefa78304caf386c08f7ea9d0363f0b04106adb29934ea473b5724a3543db2acca711ae95165e9cf7c74e8232e4cace2fb8bf35a8e24814c88b8ca831bea3d71394ebac3de3d643eb3cddb7165df9d0229a749f4db6c846bd44c33636b8f96e342020fbd424db48759ac6347cdbc5ec770fa53ccee0211a12c6ada9bd87543e89257760729eb5527655f123040dfc3717671de71e4261c8f2f2fb72debf8bbc25f6eb6283d1497cd1c31298576b0782ff58597025284d077d70e4cf999366b2c3e2dd56c4c3ed726469061722b9b9a38115efa5e71fb0ce736662df7cfb9512d3c5e099ad7cb978cd94a7aa3ad76d5864b0a25a27cf6bf1a7bb69c1fa32c33a2f4e51d9db00d5f2e45f5962fceaa2272739320b4394f2ae2333e3dd4a1d0ffd6cb19d5979d756ebf1d1939d4c80f8d919b85829424a929790855518122525e96f1f4580ebb7180119f39386de894be4e021e5d0577a813291cc5aec652b160f2d0ed8af4b30ce772169f35bba4fea3a8ed006ccc5306ac8139c4510674e59f0bac1eb1acfc9da27d22c4fcd20fdb741ec03262c1fd7b50e2c5e2a170a0424b8e69ee5a33458715940955a4c60fa876d140b82d19a8b0c760f6145417ade1c9966bc837a6df609b03af89a6804af498d815eb66f4e72ca0a7c34aa47b224a2a457ff430b79a62e74cc4773a40e5e4627246dd178a71ef2ed65f6861fc0c53e418af1cd928047bbed2aaadf8503fd29253a91daf3718af2df3eaa0775286d46b8db7dda05f1b602324aed65d05b573f39b45ca4457153adaa381457c42b90bed706d7cfa024fa1b7b80945305a43993aa95461c1617a439d0db38ff8e09cfda99a192e0c60e8d53eb17a130fd76370d93e946de975bd3446501dc532be416953db9c0c81deadce3981499cfc3ea5628817cb64baf07ff2f8831b81c4285cd3ca55b0873962ae6b0c951203eb5ad3eb3ef4a1a52a112dab955f68cb4abd9c71ad206f20c9882d757f09c8b8dbc9162f1a5f6b8a235d242592c740c559e1dd325248915c380ddb9b65052de1b1f0d7e3e9907a738496c48e0e968ef9aad0ff5bcdc9f36b3fc9e1319d945b0e1fa4b6554463f6c595f710a0ff791f59cd0ffbeeea1451e852978d1f83454d0d738862470a5f261e9a07d461bbd43373221f53d368f161577826a099bd981cd5867ae7dffc288307e653e437eb74c1692908caefa967236f250a7221d5cfa73"},
{"0000000000000000000000000000000000000000000000000000000000000339", "005b0b144ecae618b78d94feb671c1cd62701926100102ce1111ee9b5f876444df913b007a4ed875cb2218516b240fb910a9e67e91cc14102011fb67d78db42183bf7fba6d15df6f75130fff65a02e940f1fa70000fc074bcf57d47f56d210233a40c7af88adff801e07df5941c24a6a6a794221a9a6acf8a8ea28bb471d0954c6ae014381f9ac162173092fccf0e074738e36420ce66bae78f17df294747424c5d2ad6fa6d6620e040c7ec25e8d0ea7c73e55264e7d80a175681182951a46c37b0f9daedcfb4e27b2fad8142e059d59d57b0ba9fc8629cb85e35cb5d4df38748f7bae0dbf4cea39e2f77507d99883c1d9942cb05418c23405f66311058c0423862ce173b23700a092d8571a8a3d15826a36a28462a329f56f600645bbb859b83971cf5e696b12ee6ee6dd6327fb49a151cdb720688da3cbb31f1b2d1c4c4db6e7ec09b132e2e43676848a08e6f812ed0332051f6e05cc651e7b73b36cf8720dd159dad37b58361bb3dc5eb0736024f6531a44627609e11af8be03ec1486694353925c608236eac9b8fa19405a01452e43175a998f478d2719758a7c507b269cc81c060e033c7fbefb8a4951303ec6d4b74bb5864a0abf5cb416e9adad5032e2c1e41a347b8dc48d335c7efb86c1095d95fb0b4de0e3aaf062fbcef3aaae316dde18ea1b2a2ab1144a13ebdb0dd1dcf10f199d4b6e9bf51f0b61d5e765f48f87e0dbe2e210335bdaacc7df52e3190d392ea208d8004dbb642a3a3e5f3d3d787d90130e094f06405afe599863c2660727cfadf80cd35751344d4d50e29c7a33717dc58a0d7bc0fedf1ffcf3b80c266591a9728105cc8ab35a14e0b2d5b184df795f62757da16a6821954c31b75534e615526f81f71d8c2876ca0fe94fa1d5479f154a78ebbdf9ecea75c8ee289837ed6f20533d78476461912a3ab71273bf93a2018f55dc7f4255edec0d4280ff6892c689f17e6f994762ba94d6dd3233b8652547ee620981a07c1bc4a70a1dabab24698ae5b53a42b991e771acc7c9a86263294c9a33e08a65251c25f6973cca1ae9ac12fa3791038c55d8544bbe7c7901f0b6c2dae02d363ab98e8b24d046fbbd1f6941676564456e65b2ea031819692204cd1eb5df28ec07508ba1cc9946d6188fa5bf49ce07d72e2d655f7845e913e1f5de78517176d0f5b96a03399230ba072d986a38d08c3977467214c3510ced176aed91c6773671e591c1886d16fea2fbd5d9464b1de3ee1db813a6276a5543a1b7e702c8fc37af44f124f02fefe0d3b879d156f619c0cfdcda5014ffeed00626247be75b2743947d72af8951d82a746a1c5ec320b6db327508dde108bc3346fa4e4cf3030affb0e72d2b157b660e26dabec9fa968a6b3703a3765f4446314835c0e56caa81805d63ff0e66439572d8ac9b0402c6cc06891862333fccb03ac263eb0a50b595dc692e858274d3e722bfc2fc441077e1566f0f99be988f081fd95dcdc83ca29581d46d56cdce06273358b56515c071d68848f511c0f3c21fecdc543f71c17c5829094d53f884a6596d9b2da2c1e367f3aedaa3dc6e080b1800f1b1d7ce6f5c2552476dc7157dfb849995b00d5f7c2ee003d76f3ec8a53cc4f79765a58fce1aa736da67f9936542e571d03669da6893660a6adb24f20b6ec35fc6eea42b9242c5191140a9be8a561fa71221d2dacab2737c2baede34867233ccb17697983c9c100772333487993d620a92d28b5a12a92f897e611321a6f1a6a75f59f36da725d8dd5e17cabc9b59ddde0cafe79e04e7fb6da0675252e6c687452e0e3c738e326606cba192c5615194c42526acf0a5e575b95da919030697070b1679f61b2257ef7fa2b71d051e91892fc0dfd181341597c553c46449ca7c032f80bc1169"},
{"00000000000000000000000000000000000000000000000000000000000024b2", "0026ca22cec36c1937fcc1c7379c054dced412c3a11becd6e3cdd3090b1961a4f9db3c30b6ce55f77f32187ea5f868a23955853a54583ae4cfea025f159044407c6bff1a9bc6494a6ed52d697cc395c50cd879f30637d73f100409a6c428f42a0ddea12a71edd8cf3f0c1da21072091ef36e6ca2596c1e86be5b107536e420fee672cfa22417dfaad91d906ac41a7b8a76c0c2213482f207ef1c6ff95a8220e27bf2eef62019256203036f50bc90809ebcc1db0676e52d1b4f033ff903183b27d45f0f67ed53f683fd56b43a699dc9f091e117e6621e9af0b02be0992a733ffeddbac5fb7c49852ad10c2fa3b0b92fc0cda438c8be0e127621f6e4f90df4a9b703d1e74297f7a1c8b433a016006e1f769b155d6e6b01ebaed3adfb83027543da91799d8fa49219d7eba700c94d88b836f3a3a5517ca57f3d1120ce26d189a1074b6f5abf75d3100c3157b925e94a46ba042488e905d47bc18880e0a828ef9e81b832d0b61427686b2940ab3be198d307fc64498f8baf6f9f29fe193dbf9b9048a3424d8f22432ebabee2ef795ff8153e4717dea77004c3ac24a41d272ea9fa5dd1d9b8c605f7b3180a83bae378fb52a1b26deabcf0daa98f120c10d42762a6b72d695331878fba6165dad0734e3f08059f7a8dcf7c7cd3d440f009b4b4f58b6af1258e14c67593f89a2def471fb5b2e9b15e3df016f5132407126a431f4304488d3550a88822234242657a07311c198e10044c9c3d4692167a6df59e6a5ed7f51e970801b91e9c8ae26e82225168421fef16ddc579d1d32dd74d3b661beaf5a9ffb4d7c928db3e5937151abf0f29137e4bdb99f9ae96f34db7487236c0519e024223e1fcff065d50ff938d9581947aa36d7797d761311fe1a9ffe3cbdb7b3f43d6ba76c465f2544cf8f12f25c732c12d49a6a274be62efc64dc8f9ef24fb6a3b007b7d568c544469628b42c3e371db76e542be84311ebcf6c07ad7ec34ce2fe2debf3173971b92df9b150252818a1e0a4339661f46414fff41a201e211173627de34c75acdf3e35fc4b843d2efe7a7a3c8de46b600d1ea22f95e318d537f220d99a70c192cc1bc8c850d8a6f977a498c94673ce2a04532c1c30f36199e650519d318b2cfc205e09b64ec34b98e0d3c90da7f604a096e33e89e5e15f139c501ad60cb6df2e731449f008924270e05119342a3a2e24a37159db7d13092411b1d06728d4a07671089d3fd0c5e642df3da5c2a3c027426696f9aa0c38e43632745ed08de3c47569ec214922d44b8e6c077f602b3a84e4004a2475c1c24a201aa2d9dd3c8f6753d7c37eedeef7a22b3d81f6d531a7ebe59d36191d78c59551c9ebe501594447c947f0c308f1641cd72976f5b69dd2dd76aff033b5e91141f7d45593710cea54f65e41bd5bd4fe9c5240e8ac201b3cf649e01b10c83ef88771cf783fecf30383a7b593f76a758dd518925a9f883897ef44f4d523d46e70dbbc5570c1ac3618c3de53172592a9dc537d4e7d20f4df281c1919a5ae04ec2a2191b8ff8ecc8a78ff302555dedb24551e726ef62121de15ba173c0bd34ab1e350d749fc8f3135e05d205691ad2ccc8257a957b0803c20a3054b130cc2ab5e9ebdb57ce1e3e75815e0bc0e21fa5d2ceff943034a3c5b887bd61b33f647d01e9bd2c2e8dedfea5a8d489ffeb203b518d7fe2a829a29e4cf44d18615a0d865435457481cb69587d3019c334b55789a97bd1dd52bcf270b23d165aedfda01aab0afe6323332328c1b223cb4ab11278487b1fd303a53ad1090b4bcd4a17b152352e2761a0642e4a780f6875ed99cfede0d08e978d6cdf083ec748f68d41115800d56026bb0986e274f52a58049aaba31618fe2ffded45a0632711b138243499455971f3bbf5eacd"},
{"00000000000000000000000000000000000000000000000000000000000000cc", "00ef1327f8e5fd65553e60ef249d8c786f59d7bae20c9053dfc20643233a3ab273223f6b46308c12cbfe0baa7b3f716c28cff80516b49b79fceb38ec1b7dee31fcfacf8a8feb3daf0d036390e0a0073bccbc2af210838f54f38fd9907f96250c4ed258e5b950f393ff1138146d8eed4e4d7b95e12c2a982e29e9d998afd51895228fba8bbce4682605fd5c45da65f03e12fd2d4294a5afe696e430e88594791baac0e5365caeedc70291d9c6458ed294ecaf32b4915c217958ab6d27b3121818d41e056014c457c1333c97c1f55f3f98c35b09f6873bf70521fd6ed613bef8515a4b58c7fe8f4335f65b220c1ce6695250e50f7cc8eed22bd81e68e507f5677ab75adc81ccd0f55100b6e7a9e10b51dcf744a7ffbea6746e23bcc81466bf5da1070adf79f5ef10598175c6aa47abb1ada659136114faec87996c8927431acc98e890d1daf8c8f9e6e0cb8e50d67ec45f03305c716fc52a2429d061947af64c51d579b3c6430b2fe493ec5acc0fc104f276d1e7a20532e58e24a91076d722914e1751c2de5393584f1f61aa02b22d8524f3515e474d1ad8c98c134582d50c8a8fbe9da4150a2422195656b361155214b5bd79fa2975c87789fb13cf2ce2c0ca5bc0de8d53ae783b5bd9fa1af10be50f6887d48ede2e77b2fd34c5f65e6e0677c819dc8d113c9de81aca9b4323f2366c6de96efa11c294e1fa06efb894f84973b7623cf1ef59b957ca17d8fae0a90c1a0c6c010401f51e4482ff3257ffd628983b3f122a875f50ba1d0ec1aee0b2f931ee9274c4ee70cf333feb6cb08f21a4fb11edf84157c828b7727f3c729c0a0fa1f45f1d0110ff1e24528278956ec4a8da544c482b73ad873467dbb9fca69e3859512abb70772e72170f00d6ca6cfd419e2311e0c476ce5a1715fea60a198d5d1e3cdf9df3eda682fbb728b3b4e6993b4ba90118c4561182e9e0aa28b2e66a6ff0525a2b7fbeff3313669d36e44a014c0d2745477592c654a1f656fc0b75e06254f3cfe9b4f0814ad4315540956d1fc179370e25a73092c3c78872662e58f5f3b26143bc7e9f05dbd98cfa4b12590a0e34c00c5d048f9c95fe20ab089206acea458d06eb5ef1326aa09dbcef945f78920ea21e81f4e52e79e2517a726579c4c3d3af3fffad2f8f3a02e14c49506c1bb761d5ce5f8f6b147cccfd0317839dd354df430a5f7ad1f4fbe8db7e6e9c969f1137d98095527757559372e5fc479eaccc5d6baa5a0a06ef9608d5dccffb2d92719ae4f6730923fa4daa1b5884a4785d9f97a1d5e73e9fc90eb2910998424911274f10ecd1a860d35f7177118d9eca1625f42cfe2091e34e4b5b3e5572e6958bf0d1a9818b0dd0a8d413666fff245c37e3393a21a37da18d0110022b817e20bc4a3819cdd0a4b0fc4827c0e16a2f88209fc2e301e5275341a5cbd766b9b8a44479f8527f6c194f78070a63115a598cf9c14e7479c83f18f62177769c2a05fcf28b260f263cc06583903addcc52e322dfcf61287cb7897d9091ece987a2ddbe588a6a979977d9fb0fe23cb8e8f0c1658df903764a75b8a23d14bc4c743d785fe3b9695443f42444606723808b496afbe97e37770b3918a05be3ea1084b44bf4c2614ee2bd8ee144c8ad3d4bfd152dfcc5a80d8872d136ec46fe57ef07cbd0e1155ec8e560bce2330cd1443e00e5346ee7106a7c28d7d951c5359612985425a2f9be58f0462814a2dc4c1b14419cb3be0291cdd81ff61b3896c5c7230374a127143269e6d2f45e673f5199fff93940530902ab1806981382f7979361bbe0695e4662f39aa811fa176bc0d77259d963f367c9e7eb40f5333132c60e4cdad5903a1545e273667aa8ebd42216405e68d131844f1578ce591eda470aaf0cda3d1f2b141b1df4"},
{"000000000000000000000000000000000000000000000000000000000000138f", "005ccdc553532b92e89982161cf128fe755f1e25f30811e95b59086c3b30ba6396b8ac8e0d27446f749a325ffcfdc7300e199b5bb824d949883e39f2f4933132ccfe2280d1d24fc3f82357eaa9e132f1827f8f4d01ea432f314793715dfe35578567e33a93c0be85a217a79f4a730f3625ab93731c1fc01c6f86ee1dd1880acac4998461e32950b6373c35d8378e6afc3f10660fd5c6f1ece9c09fd1a632417c4841f1f18d794ed803e7449268428c6c26ed56110969837aa03a37b72a2290e640486e9d6d9b2b42cd7d67172e85ae3794be083e35a9b9482a89e27c19485afb2842c8c0f941792a24d5718451ae90d77d84cd5edc47edaf0b7b66b00aa607e59d48ccf08194f2c04b990110fd2457188f517017cfae2ae47ff83a3559bce297357371d28ff21d046a3a401504c5656a827a5cddf96e6852f4d70558c3571f7adefad5c52e162f57b9a79997757dfa3206574c4a81126796b7f5130610dcd38acfde57df1714b2bb19eba14bdfaa7e91a983bbea51b524ceadfa2f35cde5390c1fd59bb4f77e9fea37f63cd4324b9642176b68069fc849594254b571d8ead30254fbe879096a46bc2393cbb7a76e6670beb85d6dcd906f44860f16f9c350d9aed94c3b07aa42fcf7e26e4d96bcd00ca07b0cdf8f60898fc2e4230f6803c5e99e53a9dd1f54a1d502d3ad97161d82b5121974eb3b47fd6ff809284abe789746df0d4662852fa28191ebd5b80cda2811cece07f29d5fb2c05568526e3ca2b35f7b8ff91061093661a23b712df134da00d7e261aa2190e3016900fd4330a1e539c0cbe94e14cd0c8b87e71d59a00daeb08a900ed3410c5c820817456c7582bbb9365534b0f710020d7a454a7bf7f06742469b28dbdfbcd92c922587f4e4466394fff4f872e4e65e4c189fa8f23a3142ab17548621e07b05c3dff647526e78563c8300ec300cdf9365173928352d69e1c75d7e9c588e480fa294a26650f0d7ac0fd2893abb9332979f5daa9a1eae2e0ede1a51b4ecce926157725b5147f93f034731d356166eb60c77f091c3951baadbf9493e9a3f320d4f5510d16496e92b9ca1505a220d48c86a0c6e8444214f66291c9907e11b478eb3435032364ad829a34340bebd27558a75e65b34f87eb9a7cd7a25ba86a26b829ed3c32136afbbe357656b41e67f70695fb349027406ff0af14a25dfe56278a26a59ed20423f89c1035d6e53175aa0c9a16a9089e78ea05ccb6d68c38a08b56553e56f520be89910901206455397b45d882c44fe2eb7fe28674594cb75af6abb0931c389aed1e410fb3471892460d9c1e9b717547174ca0ff932ea0a4208e25ba763c291826a447cc5e32941cdbab4948c14c7335302cb4f0ab2e8f1ea79213498a790f9f8196555d7a3606e9b71e1e0c83c1ec9ea439dd33d8e0c02a08a72a896428b1ac8929f72fc0085a5f4df70510b24a8e9e3d42b84c76e65e94d2fb94f8b185fc7721bc49540b74fde3d3c38a2b33cba6ca25f18d4778b52a87f52956d1551ca88e59254af1a21a05a796cdb0a59f6fbf8545a13b52040aea237dad97be22e53ab2497da2e370a3c855d2e37a873bf478692d2da94c6159148d1dfdc4b99bbd444ade4f598116d45b8a8ab1df65f75e2c7c522820992f1cc47c676c16bf6bc3803d37767a5f60895b2ddf41d32563b82d0447988cf0c0ffa8a980e8331d595719d4bac8e2d22cdede8a4131b7c64585cba15416b2173d4e153946c92c405d12890c779192c395774411348bea8745ec7871c98d203efa07c3d7465bdbfed09aef6cd89133cbf9cda872c43cc46fadfc17b16c6c819277a36d67f28da34370f184aed92c7c062552bd3bed2c7f861a9dbd9c61c22dc4e2f28a6d7b144bfb9b99d5243e2ab33588d83"},
{"0000000000000000000000000000000000000000000000000000000000000b6c", "008876c9418cc0fabf51d07b658daa5a465cda0ddd05c3042d8daaf603ba9245a1c2afa7158f485c376e27232e770956972b85ec33db7df69901fffff136fc4c7c9ca7c3a230218694475fd2dbff8ee74d5f217b0509fa79f307b49a8f03d367f841564f4eb6bb18404ddc37538ddd0d17c2da3626cb675b6ea03e796f1f168ccb5f7cf7ab51c22752a8567e96d144084c13c335fbfbd654f86015d4da1401916b7b9988f49c5d3109cbde61aba236a9a914b21ee040ea1f836d3cddfe0d379541091debbbd03ac0ee8f6b9ecc508cde61b41f24c9d2d326626dadb82249a99df311a54f7e05e020f85e5174341ddde5fd56400e44115f56cb1e4afb0e12c66755613f2f5fce152d29b686154fe7b362f126d04ab0828a7b85dd7244e03344e34de59cd7b7bd1029a7bb868ef1233172f97b4cdb05674c733bd9162f28849eb310e276d71dc46148da21b93f894defb30251c6951d5b4e2d9397777f404fdd96debb59a30d30d1db51602f651df858940a576fef3585534cfaaa1b5875b2170d914c91fcc514f87ad4aedd879a9d3e243d8f7c0f0e4ce68acff6f0704f01062a3c971dd50996eaea3891ea1fe0cf216d8b70ccac8ea9e4d2f520b48cc0b79d900ffa96b3bbce9fc8992d248e83f91b5aed1b975d6f3eedfb1274c9fe5fe4a19477249b2995532d98ce7d9dc0d152ee05cb7254dc6e115c2f06304a6c68486d29b3956495fcf884cf4781de5cd10e60c99eb41921418588c7c81056c6ae0d5973ab322141f9bf5e8ed59f133934879859fa6627115c012e41bff31cff915fa15317b59f01edfea9981fb032270d8e749ea565035d47b6c23a959707e213f6bcfb2d13973b43b5068c8ef618aabfd65c0bcf47e97e15b11d641af00bde89b54c5e82137b3e39bde38493e35e31bdb5de184d58676374247d89d7317594feda81f2036d7bfdd387c4baaae400f187dd0f6d3df577a28a0a09fa9e81d9a9ed605396a8e661dd22f2eb9b6ebb09d8bb139c8c20d8e9c2a13b05c4f4954a709d463126bca3e545dc1125fa5483d1e9fc6a69444f8f4bf80b16a1728f9dc14372c326091655b8caea2c19cb4b2e7d83f4191f355b9e00e3a5f42984b7d5559f61e818d3be1d628a725ddb6692c9e3e1167ddab71ced541e8cacd17ca4ac654b0e33c2743c885194a911755b0cbbecf775a6030582fbd0e277c17308392a3526692b59edd6f8a4742330ae741a72d3abaf1b02992a341447871ab10c8108dcf2f67ec5ece479e55ed5036e241714670de5939382e4627d0398daaede6afabc71197db42093f3da9da0a093003a5c61f3a23f1fcff72aef5230630d098b367863cc31b81d96614b3f1e352fa0fc79dcd907934a8ad440dab9ea72e3d63e52fd32641317ddd1718cebbc97968bd5d7c9e663ef3c350623bddf64cb8c2f26d5091de0f2a9ca96ba1e97e01f6c29ad9a6aa5d9fc481605387622ddc1ee914cfc2745214407f0d529c1467458e5cd9c31adebae9f97334a7a37eb9e6a274802354dc56206e611c7dc84e409a61c4cf34ff43de3b8846afb75cefd6ef7ed382942bf62909f51167162d515a85f63f49f38231ea7070f8f95a543c434f24e3b44b78747df95b052fca2162bc50ab1c4a30c4f58ac25846c7e52d1b5a4f6cae209e152152b03f2a2334ae9e333ea41fb8693fcfa770e83ae46d1a56bf35a506641816f3a4a24281ec6a81829ef4f26a10fcdf40fc24bcdb649a73c2d1a772620957e5fc4e89b3d46cb66e3da4b0f7e4eba1c28fd0b2b56c4f65e0be6fbc641b0a15e6bfda334d4b7711f2d95a490cc3c92dc94a344584a4df32a3dbedfbe3f462624d7dfd41994d254f789fab49b89691e735f4e6d177e5a3858cdd72c5759c7dfb8067998ff1dc1"},
{"0000000000000000000000000000000000000000000000000000000000002b93", "008f0670a8d50c02c3e44514f265459da51df724924796ec653c398f0fdf88b5543862d68dbb489258d1201e423accd7222f99ab0276d6d36e8d31bff3ee744cb36f6a4a23f72badafe8f635706aaa86e1758acb07fb70ff8946e8b1a65376503fb6806ab443b80f37175470f41b160ba1a0ec42e606e8a77b9cfade53f60ee08c182f083a968c1589f3545e824a7d4f158e5820ccc67cf6a3b807d4c8e550086d9c130f17dbf283046347155550ba735afd350bad59793980d3991145148da12f01103e53977bd2469d2ada767d6a3c7d5c38ec7d1405b0dc25f7f473cdaedbb53399e09d01bc431f0e7c5ba1e75365e86483eb37da69bb6f7d40c90675b04aac0773ca6307135ce0dc1ee6a1bb3f068b250bb45a558a77b073f4b71bdfbe8919f5ec592f5212738a276c6f4d61b37522429220cc4d0f97d58e9760c0bc7ca76b3503bad15880005e654a2fee34796601d8e8d182c6e8ec895040c8f1ae7b5d040df90c9d0ebc4241335e1e676dfc846c4bb068a22ae459a7dc17fb294cfdeb26f79790c55b1d5233a99491bc765c368b9462738e9face214e720a771f383059f9ba86a0cfa3f48941126f6ba193271c8627b45babf75a41118c94b759f2ba41ddb51b9360c4a8232f41a387e8f24d76c07e121f8bf2c2bb7b8b7ca3592a0289f60e09b644ee7d3ea8e9b8261dc04817d798f09b57a394601f865c71598e459065f9081e087c7509e59ee66ef46aa7719c593324dab4106d1fb47c9522bb2d2464d28db9bd61aa0771d10e374d1e0e7024aa75ad7064a2ca29fd37f9ac7331e1635ce09bed232c599fa0d1b033a628de59bddb3640d15a6e6eb7f0ad3231fbd2b07b393c5d15c7929ecfb527ebb702d0a1ef6fdfe292d4d7be16a64390376069af8acde8902da74fb098c30e4171d6c518b86ed9a23e11ca50931149ceeef0b00d4bd1cc3c2de1d9ff643dbb52db94f74241e285b223c379b1bd56f71683f7272fb675794da3d5a36d70e2a2a97b9aabacfc535f50153b54701f0e39b1f6f1506246b4f93c8337b14c5e9ed7060661b5916ef150112bad677f0fb6dff40e0fd4c18714986ac7be8d514a8cb3806b83cebe9851273db56b4cc9e9b4c1c6a0a5f649454a6c4cd425eb11fb9c50999d77630eac61d4522e35e0e8c155bc4744c406876a554109338a600f5c7c7198ee143dadfa62be2629195902c5504fa15cc00d4a586226fc09be7338efb62c1d0e9ef4af01bc51c09b0c922ffd69ed751a25f2daeaee25880391cf76f00fedb801fe898c3b0896f9376120f1d52e102ed3c2cdc424b837ef852484ef31bd5648c51af413d9db503f39cdf51a1b24a7f3367a95b0abe79966e0528139e1009d3bcf99bc62279fc1c35e7c0100f4717ee03a4ae1ba031243b122e97474a59a6615214cb0b393b138a4c36b3f915556994e7348e60addbb0a1129dca295ecea19fd6ebd3a7f16e5c76f252b7b0331b1957be11670aefae3531f9ea7141c8d6378e25b51b1a3a71814b10bbf18763de6ea1e26e56fe9bb5991f2ffc39301b27a587fff20b6314393e1ab7124ece4c6d7e817357f6fef290d542d4f96dd5fe6fb1b3dc230ce416c69ec331fecd52710d3ac9bb6b605dcb082543b96b568ae12ba768e8af0c53ab1714dbdd2eb30b7b86e5fbd7b875bedf8357e079a9baa87915cd5f1b6f01240e2502c5e29f8349f9f8e2767cc2b58f2813d6734acb190191e865c2d5f37a0e675761de92ec2ffc7636b0cfe354c562f37b1752646dea7d3d78570b9a89e994c530586220a8ebdc5b78d23de1b79bf516fadeed20cca40b05ee75cfca57790ec66cb936882426acdd92738ec9c6b2f2b0d4dd30eaf1ed5cb6af2d58f98e8aa5018f8512b65dbff3bacf12dbdc9126"},
{"0000000000000000000000000000000000000000000000000000000000000399", "0105ce49bf09a646bf50f7b731f3bcf2721518c65a30f86eab949e7ebb83e73382adc20231341a9be93009a89d3f238e7faba90ce857bad9763e41b53b5832221459ea8d262d7b98a04733ccd908d1fb5a75195f0ceea9c95da010c5b04207d681684d1aa37ddb9cc754fb07234957be12f5ec968220e5b3c2adab9d2e8e17d3ec6f78a1b7dfdd219271ae958d34d7ef15dfff372a4af62156ecb2c86ee59fb248aa09fbf510cd72011d90c1d444e44de9f6c0eb0f7ab355f81053e4c82c4be498a15004a3fab4d40bcaf2f4a678e45644f5103b9ebad49fbf29c4bd51b5ac9446363270b48f62112a1a27cc62005394f90705a4ba8b35d6145128b40175991798527146fff705982761759a844b38deb323f8f61a25d0d3093c5f22d5a5bab957ac5bfe1cbf184d62ef5207caa8dd6203ec854b108a4191d3b4d22821bd0cb2bbc0e9f6e1d490cf547ee934511841af011f73d20caec2a7cf54935d16d5d9997dcffa58f10aa2520ec963ea8d71698364a2ea0830e9b4cd259f166d25003f99945153be36f1ecfce44a2f6955b12830b2b9ebb6180601491dc83c5d75fc963706f594910a5a2c7eb39602d5f29700ba37bbbf8441cfdd8b052396d5afc549bf2c9ed545fe7ee5495a325253acf60ce8a641cbf07c01fc74fa50cce8fcbb0dad9ba17b0d154a33cd62ab2fbdd006670061dd1ec65af656930768b896cb96c16b2caae40bdf4cf945b35158e34f10b513040c06510ebc0d3385e25aed1d36cd91dbf71872321a456f6c0f9159d571bc5eec7a870a3727353dcf4b5505a3636b4b9814096bc863d6b723789c870f17e74a5fdb2391dd38e3a37cb0b74d283e9d75f50fcf3e8b7917a4d8e1e4b18c7b2702a8aced2b74461be966a40d92847dfb4bc20d0b6b39b11f6b4a61f61c3a147065cabc9b1b5f43295a7e11d13f086e100c01b2d73861c65d978674d1a13363e48df4e9be0ec806770bc53d99b9a9326f81fcb632bfa9e7c5bc463e13c05b0a82871c443a4e717a9ae98861b4c814aa49500eec9fef9f95f3aed4c64f43e4352ec2dd16b082109c098c2a1e23b94b2ce26cee15ea250fd79d89042a9152f7ddcddf7f266a660200b58f323746b2e51313bf8b14b155e808d0c6c1b17f1aa6dac11539e26e3c947a905c1515757f8c463f26ded79a9be3bbed35146a556089f0aafdd2f6e1aa1d77f84d43cd0ca2cb2846e3658fe23d6b8fcf22aff7ad6b7535a3516dd217d56ea468715543926e8582a0fe55122a7d3e4f944c76a676d15727fcca0446a075454966dc763ed1ff1e2483876397c678bf4ef6d4264c27fae59e58c809283eb7d9ea9a4ced959dc6052abd75866db29fd07431a655763e6642f53ee79ca2f6ed603f7b9dbc1d36341a91aa3fba0231e6da8638a2cb8c35ff2eb1bcc7021e4ad37e535b49e64973a8646d514abe38b63c1406703a38620d8f38ac96fbaf8e6023539ced1fd1d01702dfc941a497c78f83d21726b4b1437056fba36c23cfc7546d8e48631e5774a9b235d72da806f3e055097e9b6b921f60013d816343cfc91aa0f446f661f912719aca431e4e278a18f3f4c55b79de776ddc38522bc7bbc361eec6a5ca9f939535a28f32cf8c7f19cc39f15ec03d16aacbca34d3a184a0d97f18ea1e0e210ae32e722a95a51b6341d12fcb1ba6f91e035ba958172b7fa6626ad2f77606e347b6cdc4550c8071cbb51c5aa30a6514d48de7b205c13e318ccedd3e3cd38e1cf2a49528164c92ef1ac3b58b4eb5e9bd43dac1d70be32f650508190fb83518ac40cc2e9270bd5f8733145f1edd520d81b55e8fb17f407b01ed0522f18e920c738b0e57ea1ba5acb3b1f9f6f3bce311e65da576437c12d8f7a853cb521a297f3e71292b6c035e73fb"},
{"00000000000000000000000000000000000000000000000000000000000010f1", "00148ce2afce7bafa649a72c2fc68d2b22f75c922909661c03f24b1355b7fa626f6a35cfc1584638a893054b3dfc080161906bd013d4fcd79cc101dc50bb2012cdbbbd21caab62fa53d2ecea544852c621bd0a65049c1854ed5b17e0eec0b0ed4074bb5a8946397b850fcb0bb7eb9aaaab5ea6925dd251fc25769631380d0d505764454d68c38f1d86debae409f70a4cfd7ead11fbc19cc8206ef171207474c5d7e28e33145cae8600ffb3e8af5d73c3ec0c72405bf4522364eb3c60cd0d765498eee3ca53b107b3cd96d4556e46f6571f490c2a61e7d0c61c504844a5571a57266e230eff1d9249696741702c4deb72c707502d4d10625ba19eb84c0ad5d5b9d891f1231b77071335e47b9a2e353fde3a3641afdffb734f99b7e6d8988368e56eb08d3b48632ba25f79d74d06755fc987b5cc516b2734095ef0c32cf881ebd517f0a33a62746565f05f75a6d65bb0ec0240e6e75e3087fbf56054126a4befc1f356fe69912cef93940453c387413c556fdaae35ea33f05d2fa1043528508a09db9fd9b4e1ebd2d3548909332eb56c31c56a4043155dafffe714165273963f92efde19da02e458fc2ec1d85248b463b274dca2e2f5f8db473c1a325392a6cf117f3f3fc41b53def655f40c9d34c0201a7749b0cb0d77cfbea2484212d32156883b8fe92f5b94504fad2ad5e3f416e53048f555bc05b1d7f2053218a37ec45d710a63208155a0ccd19fa2b227c544a3037d98f7fdf7e540e49759efe3cd71c40c5379058f3ad762a56087976e162d50b8008ea5cd36f8c063e91ca7ece15433927efa649c7d9aa774673f7fac0c942866b050de2ef53d94001ba774aa67c8b8e23b3dbc534b7b95014b1695d756b349b6e9da1ed4a9f30ec2d3d4fe747585b96ab2533ca298ba1577b848291cd873e122a263ff3acf953685b56f560d4091d3b6003a2d48410594b0ba345396c83e85159101599a7035be2e88b6d0eca4dbf5a914535e85426596d3c36a075c43351a4a54049c3081cd9e4a63e647041902071bd4bdbd0ca2a7594df7d34c514a83c7260b3b98030c86be0a290b13b59abc76973df4eeda518f9f006e384bb31a3ea295cb1d3cd75f5ed07871f460353b51136a6ef84217b0b58ccf24cfe3c18b2a88b6dc65df1af290df4dfa4069f462b56dd6461309e92b71a09302b5d38bb3530777a353f136d045942dffea9f337d25c376162daeac2592a844eeabdfce8a3611be50281a8c1b26f9a78133501e0603b947cfbdaa1836bb053d484eb1c9dcc5f50d46e9382776f0924f9c7635690a12518060695d79988c418185c92602eb953e12331b11c5e379150e53d585478bbe40578afaa4791d0727cfd20a450c1c9c7e2904c3436d50fa8def149c585a56043dc9f48791c74215f3bbcf751d800d1f136801ade205cec6593de3870564f44839931efc7f62da01c64291ca822a0f1064b668fd72dd5ad37b185227040e4a0188610487867f21b6f0e12e9b46407aed4205f68f93ffc68e6510ca525e327dc260db627d6d6504e42065168acbc3793e419f3b54cab9159f5138fa279504151eca62398968663d96f2115a8ebb9d86770cef6543cf13290d0bf235a089db40897a412d57a23c7adb616d172bf79c23848d1bcfb69d24c9cc748a0741a4b289e271b1ae3cc3ffc5e4c8e1346d75c7aa183b86323b0bbc20808e437267d19685399f17f6732911a968fd55a9f7914e72beee9fe18912aabd68122a4af59e4634a729d96433f38fe14e8a1ab018dbe70d8c1b3d7f9ba2910fd2f20010636da0f6be8c366a1c730589018dc0ebdc6b2556f036db81bc82ff31780d9c3990141f2f81d48652043e1a442a2396f628481c70c9084870f551f32be346a5d9b650d5abb8b2f6"},
{"00000000000000000000000000000000000000000000000000000000000008a6", "000bcfc59ad2b22723cf557da9ef5e465d7f133eff4d447dec3fd68ccb6a11d7fe67de526e665bb8b0fb456a0d16b6da51ccf3af245f00bf5dea05bcd98157630cac81e66817d780f2e70a3a6545d22ed07bf3c90ddf60d1b8039b51a8021230ea9ead269c26d7f12012e782afeeeb5d31aeb9b571eecddbae8c4cf5917a3259fd6201b149359798f3b67fb760511b88319d4532de545c4a189fd53287451cabc9a4d9e9c496f80a007d58131b887582e77a634b7c47820131dfaf3ebc09e758dd352e23d7f06f345242dd8205279ad678110a328661bd64f2eb73d6014117a35b576ffbde88bd191561bf48de6861c58347de95550a7f07e27c09d90ec336f87eac3f01c5ef3191e336d4c91dac36fe4e1d3d430dc70c7945c82dd3b957b25ebb19449b1756240e77f5db1fcbc5b3e6e91cf1fbde734d781d66899892d7af4da7a5bbfcd2ab79216cf94b209e59e79c044286933dc85ad3ec2fd167443e9c8e2e21790ccb3197befae817c941a37573d41e48b8690a2b0ff6e30fd89da1c9ca7e00bc40212aa09e4ac1bcdfb27a4320f946deae4e6a09600c325f7de146ba75b51a096d073b2cefa1865b22969f769370fc7eea88945f06044d34ff2550d6b9671e0f46efe6fc9e1621d51e889918959a92e7706105d1962244bcfeabe8d00a95dcaf212d0dd2e24b0a771be0c647a7fbf456b97675eee4076ed1f91844ea6eee5d5303d45aa701af709f8874961e3db8d1aebc13e07ca99c0d7d8f1f64ef5cded142874293f525a47792f4044239def3b5715679fb3342e2c50f4fa5ce81ef766a979169e272a92e5939a90ab42333b0ea4401ef78d3c92550d4d1837731d18420b12f23470835538793744f41cee9e724f5bf2d901cdc9914d10d7623aa7624cb122cdd6e0dccb51ea75708f5109d6d298fdabf05901673fe1592a37b4cc00691a42ebdc3b294a6946457794cbf496835f5d5f714ea228670a7a4a15a76943b51c8dfe996db74c7262533d43df717c3a3181c94e6b5fe500e193878f9903a17a4ae1b582483f9b2f438d5a57595fecf10c6ec0ed9ee3777ebf693ccddd69f34f72926d89297ee8e31c50d88f2515163075604c95f272357617bfcb263144e4b8aed1450b9a43ee3a4fdcd616a2d1357f2bd5c9fd34dfdea86abd73ac7fad3e0c24a87cb5a1df90baee4eeecd290c5f5eb7510c1fb33368e795e150e24a152a63e0aae59178db73b6d3c6f927327768c8f12269dea1fe2246d15879190f7b9cb40f0394fb0cd2651dbca84e3bbd3ee30e3ac48b679e183df93c9a913476cbbf99acccded3614181cf9f605529d9c18ba193341d0f8120f4898bd97d54dc5e849f7a57095d617c38417d5182628eca0a3d63d44c1e5e1ed10b5dd6b54779cfcac19f3c9cdc805aeecdc9b18e37a2bd40a4dee7351872af39efbb482ee635f49eff8582096177ee2e382379a8df57d121a9abf178a0d4f3d37b80b39f799c94af1a3b127a19d8f1d2c2ea5c69a83af3587a1bd88ed099d7dbcf51fb229c8757a9292db990ae646c9c4032bcc9bb77203f9512e04c43ac8ae6427eba478a24ad1b0d647b61944cf92562bde97278c24afcb7af3efb897920a73420d9f8e1b29609edc4c2a09dcaa38b3de19ca09a4a35e6ce0c1f6b637e4c90f16ef03694f067aaf10427b33738e8da5b12f506a3a8aeb9336d33d0bdab1160c83ba36b28778de4db21d1d5ea796e624b7eab9881283c7017ea07e36900c30d2928c0d94fac999ed46b60a77bbcf43749f900a22204f5a16981a9ff5e10379f922d449c74b7aa41d4614ed2e7ab34e93e57c25f790f1e6e2325ff45a952559be60f4b36389db149379823fb6c5e72675041c2bcf336f61588bb5bfaa14a4c7b8b409ce61d61ad0"},
{"000000000000000000000000000000000000000000000000000000000000086b", "0003c35591af1b17dbeff0d6e4e5ab65efdab06825099efdbd4414c5cb0429e596f0f4d553913abeb64805e1612e8fc86f53a17c22f2abf69939af6b313b2011947e39672be2e98037974683ca23f24eebf731371ac49eaa9714dcfb11f5539471aad3120f5274396d1c3911fcae63a71f8f4f42acb6d3a1a99bfc34efde2105054a0a2844d5792d72c49fb603260357572adb4ce79fe51b9a9a7fbe3ca7dd3ccf00be8d8cbac91603eb28522e24a0715a9e76368cfe5fa3151e3dca8f19e9576173928aabd25b72aa3771d0a98a5833941d0ed647ee0f6164d72b47d278efafadde22c296fc1547dd872f10db03f116619690b3df198dfd2c7d212b09ba87688a57a28d5d9a32cfd7cf498d60538d5e4b0f0119c800cb935fcac256e134d86535bd1e7a9f5e0d622c2fcd628e7b94609155fec477b1624fde2de21095ffadfcc504d7d3cbc2eeb1bd14bcc59c8af52600a79e405fc66a22ad7e981158f509025d8d33ed4c0d29f641991e6d639c3265defc352e6daece7c7c9c170f5232d8690615f7d26480c9481745abff5bba033de88e6b96d89f5f7a50d524b16d8871dcc3ff22980919c866e703dce4822e25014ec8a2a28ca0f7903b137cbfa2db56f440da02c5dbd1d955eee05f9a80c31ee2f3a691a848a77b03e23ca265c86e8526d51f002fda0ad50fdab1d97cd548a950dcc27321e4df6df50cef98ededddfb55f2dcf189b050cff09dbff1a09c11fdf6b91e9ab687ee16a8d31febe04e5f36d69e1f1df4549524cd73a8bb11f73acbdcb423dba81f92a432b89277cca371c33af8b6ee7344bd6b03345b9feb0e2d8fef4e674099ed15045cf1b4b309aa94df56a91cd7099fa3cbddfbffb7b42752f0a3f7a47e5f7ab1144d72f148736a97c88d3a2e2c6c4192c3dc5c9d4e2e17029a784ce88bf83d82ee3a630190e53e70e411004a9680f18260d70cc7705388c45a792b7bf7aecc116a858b10693bfd7584c219aac86bc1d208ef359113ffe1541c1e50558b6982bced6bc0571ef47e2c6e24d8f435af5ad6a0dd6ee2575f981e7589a78ed8b8013c283bbf6dca21e3a8f863e3e6933643a9db9b680b464b830a91d142dba1e50c203fbc761388f4a2fb0a618b673877940bd7f024b87fc38af60aa679aa7f1a983c5520a2375fd45e05e2e8b9553a9850393ed80951ff1812169ee74257e17285eacc257a63ae7be33bdd4d30b69b9ad3a6aa67793b511a3653415a25b414019e1a1a69ecbfc02bf1bf119487c28fe5376018143e64e835dd447960b691f26bcefd44e9907f16f6228607672dce6af6aa7ef391735e811d228f9f2eea33192c0334523d9b37ea1340447786ce4a28f7f7da387fce077ca8f213c6593612ee46487a64d53ff339533b54cb773488c3aa14a7b3bb76d95a607bb9455500d34f0a3537d93df00d623266a5ca18cf215854d41c094b3a159a82f7258846e0dc6baf52a56f98db2007b7122330617a5b98ac714c4f56d736670c7709d61ffc3509eab71955df7012574a7ddd561918b55cbb01951da1ee8e6317c9aa442270a64a82114fd77b73112bed9d5a270eef920762127b3945466d63582b9d0ab07529c2a3863d47856215d6caf880ad35d928f321098da6ec4ab057ad3fe52774e9e1fa589a3431f105a6a1ec955ae9bfe11283c7a75a197dd4793a8eea1930f47a5f151f435761b1f9737ea6ef1a25ff53ad23fac30bd60d45834bc7e6f521616a25c2a57298042a3d118e300b52dcd1e93b9d83e4508b236b3fe0971c59e5ea6c594519f2a4f3400bb7bf78eb59ea60ea6526e37d719bdcf35b1327ad08ed88def87e1b81cb20da4d17511c157130d7552c117383ae034739ef793481d50dd2d28fb98e0407604164cd51f953fd109a"},
{"0000000000000000000000000000000000000000000000000000000000000285", "002323f5168d9298971261aa304528ae13fb712a5d1d8ec7b757d4a1f18754935e17b67145015b3f58300babe567800f771b4ab14327562fba2613d2733c3c0f88a773e3a995d5c7c3e1b30a691f5ed97d3b905213d2427638ddc7331079d6978e38670723d7b9cef028da51a0bd385c3bdc0852c0d435c280e788f035042c27dbe964f3133bee9c130385c21b54dcc8aacfab3c9585be6c971127b6c713d3502eeaf1566595c2a003b6829d61b8193feddc511aa0ebe355905a59ca3e23fad13cb2cf2e53bc8933b1553abc77275c5e171e17172ec8668ca3d78a2ac380ddebcd852b8330eb911de095b84890a4d322e862e467c3971109033969401ec9a5dea70f011720e9b74195645a7adc0b597631379bdb53d89c1b7b780539218a66aaf29cfa39ccf627a05ab217535dacf90f341eb7370f2a8b6a5b1212301617aa97f59bfdb0e225f006347fd767819ffb30002e45b5d08240fbc81ff7c25673931f5a2adca8bd02a21a84734fb1f96f325591d8e271fa9e9a17fee5084e8722d548a6c862a8c50ba665ff6d62f7df308a599c76c7d62bf94d607e26c9834b9baadc3b3995e30ceab0907a6baa75aed3318fbe95cb44ec93ad6799123f2fe08d963419867cd1f790470561b57517b67f19cacfe9aa4e3f8152f8f65610d605ab76ec9d343b28675991100cb6bdce42e6b880c0dd5e06d41b8d6e032a04cbd581103842dd51b1b4cdde2541fb75230508995567f0567a9be11ea437f05afc39aeb0b53767204481e88499f3e17d5a46f3acf4fb6711687b8dc14d805656a762752bac8746dcfdc7202a60eb35ee570922315c5c6ccd7f88dbc204ff4d7acf51857f9482254572cb8a4bf311c7fdd63b044b74ee626096295b09821327465d3d9def3bd64c60b4ecaa7e737bf89a1e0c5431ad77e4dbe7c493f300483d7247dc1bcdbe00aeceb17b088bf5b2e3674367e8e56a120e9e9a8710b9e3bfca9eb5ab62c0a7df19f676062c3d7cf52d00db5d3f3f96b4e78aaf205af3ad5190fe5cb063bf010ab2e8c75f93c75ccae5ee10e4c61a68e11bd29a04cf07eff71cb8c98b90821c137cb94ce844ff2fcf14f9b5f1aeb3b765e1ad3682345a4f3a269e7a01181c1cd3f7f1ae9dd9dd84e6471d4ddba690775ada6f4da9ce9defdeeb93fbf376887a523a0a13c8ff1f6301ca93eb6e9bff47896381a1a194665abc29573ce709f6b230acc959eeed7e259234d060aa1f3b3b6b7a07c40fcae7985b8137a583f1accd0481132457d34a082edde78724adbf9087727652e49f714fd6cda4fb0236c4b4dbd1c35ddd25f68f283ab4aa61e77b466422333e07a0ad5c23e83fe85120e9f496fbbdbe96ef0df9171878a40d89298a231662c6fd1610adde76910f9823c5c20cdf7b7baed1446c4b6519c21dd3d3d700d1c8e55403fd298fa10380cf39dce36235bd2d16261c56a87a55f3c14e89b51c99588f32f9325dd98f0238a41a4898e265927e642e37417bc5c4b7f9a93a0e93775cd91ee1396c3d64955ef47d7179c27ab5dc00ddf0f8771c3ea1b44c34139d607cc587d7f6acd20b60bba0df65dff1e7a7b47b4bd56b122145172b690b1196099d8f4a697819a2b07ca2a061b5a95bf74917ac1b50899c97f1800391e6c66d0000ebbcf7d77901b0c0bbe85ec32d8ed3e72a23c679aea53ff9bb0f1b7eb1c3ecdc3719583cf2163354c1dcde51ba7b941b11555f9ddb4475bd880299f7f7bb3e159579cfcf2233fce372db0b9b53af75ae3de3a79dcb861399fb0c438a52ae1cbee13337f4b93e29ca2e27ea9ee53538cc4dbc238f28cea13203a1f5c00cad164af05b7f0d0b86b226c4b1f2761211ffc36c3fb117f5134a043227ce45606050cf1d25242d7be288b1de16ffa7bd"},
{"00000000000000000000000000000000000000000000000000000000000003ae", "00a6772f6e1018f0fefa448e6342bd05a60572a2692d6a736e4e1903d8d69b568e507dd1ee7340be47850b182fd40846cdf311b094226e39f199a2693ba5db3b31773e3f10a12b3a9cd4080bfc0981a4f8f49f7b00eeaa2b46d7540341a1753ac0f6b676f225daf5cc0a4ac2c05d9d137938dd235948415dd90069c8bb1619df0421de488a9cadfeb830ea59b4320f1e78651f1af70b5fdc74909bdb651410562b170678109dcb3100de0d857121a1d99086b23d399318c1229fd67ff9076713c847954a9b90417091af0f3aa2aaa8f5ce8231acc3ef621a3dc5c6ea39a963530a5294db392b345323d71778f78657f1b0c6e70ad5e355ee5e3567fa192f299be7d3a7fb7d42c9f394ed73b352cd7d31b53a74db519f1454e524db2cef6aea884f53707fc1aa236a378554a33937fae89680f964cebdcebbf6fb4847cd9bfb25e7633961d495a2176dec360c3a542f290115a7bb0dd9fc8ffe7e229e1c78b6975bb93cd9160380cdfc404bd5f4e529218463430c6624a935477b1db83f7ed5ea554d9d4ba57bb5eac66d76e378dd6d527376eff2ef6e4dc7d418f2617898d6eeb99ff1300ea65bc34d99bc2b94b9e7d89d6e162e0382f70f48367da2f0ac768e7fc5de7733a56ae26e28e6f488a22b7eada245efa373ffee153f424cc4de425ebe32644e4a145551f6a461d3810ab59e7332bf0a4b78bc6b01ca4865f0504e92eabdb0311f44b7e474ec3f74d205f0aed08a6ca401bf496119fee1a859f1b49ee2c80fe75ed2fa12b671d38a43c52aa457a9eb12d6d9a12365bef5f84afbdebe2f14b82dd9859af09e9ebab00260b5216493078fbdce2705e7bcc3e9c8547f56bc331782d2bebe991ffbb0446063a93f9b24a95c713c1520fa0457504049f7a40851a96a38a27b8916ee08326e0a22495733caeef8f5814bcd5092e7283e143803b41d446059acf167ce6359e54d84bd4b664caebe1f37aaa046e1fd33b3a95434197e0c62b255dd930116659c03328675ab0c11e1c8c39b633e7f80594efa313edee95be69375b89858c19eed99c6b3855a0eca10307365a2c527a0dbe412a12734e2398547ae99743db88f6869e0450798049455d950d60e2048b8d01a12085c55d59caa05c8019acf6377582369233d06a72725af377ea8ac97fd32a4edbd7167b55354ade67b03c0bb2105e682eb99dd128042dd1a0eeb697a7893402a9ba798e327efb7f1e7fe4542a8c66d063af2060c30336cacc97a97c5985464372ca20b21827d011b3ba094853f9df8e77214a695ea6383b5d3e85897c407180c2c7ac9e973ba8854ace74f34327fe93c580c16fbb612cca08565943882e841d07f1e5bb858d9be15f2b9e3bfd1fcbf17bcb39be0b522a67939b3cd9b43f31286f571643fc3b7949461bfd31304531d0bd003de20c53aee5c2fb859c20c25b50c950368dd47e32298b96c6d65bb8362cc63b4b0fc45a60a05d59a151c3fd5644214c38b3e21b327c5d55c27f5057fcf4642a45e2566b8b6dbd2fb458cc76474edb38c3785dd26d75d91af580d36d1385384c3dd8e4d0c0dd5177f3dc6248aad125a215ddb0465f942e9493cc13ec3f428f55e58acd41d5f24c982a93acca750e79d6cc2a435b06d16ff913972c7a164aae5f61ab218b99f1f7b0677ae9e680e26bf9b14819548e90189cf9c2fcc5907604fa038f9bc25f44b42415b6386c11253907e62118715e0a1300abdb02da5b4c8d239ee956ef5ebf43e80235d3d360031e40eb426a27c3d266444150cf510d0e89d5c45292c409bf3789e743e01cf6d6f7717412e2c8b012d2b5bc8b2548cd148fdf1658ddb2ee4339942f4c9361963b1c958a6565335daa13abe7ccf5e5edffbb9237b812598f76c0a43214ae1d0d83ab8"},
{"0000000000000000000000000000000000000000000000000000000000000276", "0030d24773a58caf67e24275edca3e562745b9356828f28788279f49b7604053e9b6febf95b500114bcc0153915d091de9d771a934a652a806fda19c703ba0117ec0be4b0f1f53aa96f1f0b463bb6d4621ebd800015e9c933702d7243927c429a8a502caf6b83fff980f1ddb119455981b31d64959806c307b4a42fc7c6208f8be5a63d50a171cedb36908e4c6a4e449f6cf9d880b2cdf7725d0937259695c68679a86be133759bb02a022d71f553f718d72606558fdd621e2823738ab0e2a9349180ab0c4f6c0a1fcb3fa80f8dfa8bf2c5d18e1fa6f2d8c65c377871206fc74407e2fb91c281e1ad07acd4e8cc5f8b6d0a41a0bb700d51d30377bbb0aa7655a094b2caad99e56eb44b7b452cbcf7fc6f2230ae492eeb79b31c0aec2f9c59c5c575999fee7d90d58a15418b04b3794096115ae2989c91380fae12017e1bc4d470c30e99d7ab6722bc6323648b2bcc48a03514c804fb75899f2c7c8b82dcce277643ade6e2f1b50adbff2d81443a7c84c2d62e637ef124e99783011129a6fd1bfa647fe622160c5c466009c5997709b16689c1fb30a26e1cc2052b8d0f05fcdc7ba3e995707897149551b0048ece314d6d93c4fa22489795a753bd02ad0a6908245025d070df8ee1bb2129c5422181165f392ef0e7b4ad0f822b5fb3640a66d093c62d81d1d1a5e8b9ae441bcfeb607a049e82da0cefe7128090cf621224ca482f78bc9f5c0fd672a87eb1e8aa415cddcb46b0dd292e3b322cd0722539554f8b413522cd384f10e923a4ac19c044b64f452fea6a9367059337f1a7dad4da1e3cbf4baf94de34aef5b547c9c1509cbc8b0bc443dc1c91e03a1c6d25830f37caee517419a766cb81be83f8b6288aacd4c60739fdbfd781028d2bebb570b8611497fb5e4ce3aa739d4ea3fb848401127cf9d571187cf7f25531be166aee9335fa6a101f0e2ee8b3ee321fdb07314309bd080f308dd99de13924df2db8aeb0fcb86b40bd44d3aba1ba7521b780a549ff49305c4f53a60c4ce5a72d07b149ebe8256110d735744876a27e10511e397d360e17f2cda548c08028a3bbe8e32ef8bd8ec04b36db4c325377d8db219a7d957a91b1b694926619ecc9373de5e20783c3410fe2ad5575ab60124f4d299c5cb0d46b708f832bf2cc7c9e8a0ec11bb8df292e4a22a802b56d9bcdeac0de5f0c88b6abc3de54f177e72c4b983377f5e61b4175ebfc9dfdba2ed1f704235de7d25d89c9431769b1f44698c8f91a809be55986bf7c5f0b249fdda8f2029e49fcdb6d9a7f7ed1b1a42f25e1272e5259e539022fdd4477c0b6bdd2a8da4381f2aa6913a82d7e3ae8972d62f1fec11f1bcdb591d10cb4d5271d0fa2b3436e784e5a4b07597cc425553cdbc8b61a8891149973bf33c3fec35953bed1204236a2ae1a5fa91f4da9f042d27e547f36ffffa5af4f6307e4aaf1a403a0b2924fd35e45f314bb5badc559d0a4e85b61e3dba877b13d2bc03dbf061d1c6afeb15d5f036fef793fb8cbc158fdba6f647e693b49b75e3e3e61c66f81839d8d90f19134da5d5a38b6796f2053f7eceecf46a5109971b19cf569570f9e7c69754d69839761a6dbeda09a317a474582d8fff46a1b5b36b5aa5f856a12bd65f9244b4d5e341d229a2b1a3192c0de477a76a45ff6ee706186e7a28c9807d9eb83232c5e7f8c49e49f9899107fedff9fb4f1a1d962db0b945439532a77b39de270e0879ccc150ba7ac16d616af29d466d79811ebdeb396133882ba1efeb9e92673268ef9e021e6bfa3fcd09eace20da4729234397e0e39f94174734b8df95ca3c2a7478445b8091bbfdb51f92c7b8b99a4defd0760eb33f1279d59c0cde4462673afe9998b47a52734419035fcc8a4bead91212e2ca612b4c9dc31351316e"},
{"000000000000000000000000000000000000000000000000000000000000031c", "001109e266da0ec6eaba92c04af5769a68cb783cab1e7baa98f667990f699b041b5b611fa9b89b1d5f8904e99c5cd7d127379ae583d96568a4ff32fb7a4d4f0d23c2fafb036dd75d00035c9636af55a113db452d072a5c74d6b2e73be25bf678925b194f244d1f3e7a1d0587aa8c6b0e9177e9224c25730f1cc32e910709205342b212d6026ddb3ad41a1c5e82154ec1fc5ad02d7fc420a35937afa95c8467c4fd971b1ee89f675c04385d09bf07da0988a31193884c89047eb1152705080a4fade16b917ddcfc6675a0f935cf33099ca51209fd116844340b4bd52ac346bdbe7b5aed4b3c99db437d424bc3bbf039f2d5558ee95ed0172194de2a51056b89c90433a6ebe869917a8534b981364333956f1a9823c64bba44c1de60d408e4680599cbe1fb7bb734a77ab47d12adfb1e9424c01fc7b17758cedc6fcf694526fd53b26267c72b46a5eeb9525dcb4b5eace2031e0849355b1db5e553643017e7a5b5ff8e3784b72e7cf7c76f974f53c39a180b59ddb3c24fe37d1c0d13da52344baf6031a4dbc4dfd0750706e8e0d9a8ff1438aed3bed193c172b156c2595cc4addae1fe3f03042ff42d95c4dd4ba95e63b20abb3d320d143e2d6104662ce64917e7436af500cd38081fde3f7832d3880f215ab570ce1d3e899452be99f8ab96b0b19898b8232a557ba5df13bb00c9f34c00f6f7f6588277023805e61d83eb4be450a366825e7e4ce5f15730b89d571c497e14875643110632365581d58c3b50825b66b2229d6c881024ef97ac9b3234ca47b0e4f71e379b122c894166c010573db9888345e65cfdd12e073db85c0bd3ffb2b267d6fbddfbe1258c2e7561ef40b3922624a07c4391f4472dc7e6a934c9f32686502e7a5d161917e24c35497e47e7dee45f24761525dd3435d6f42cdd674027e8c9fbbb4183622e47671f791b9e0eb0009be12526d26baedb5984a4302a919d5c5671c50a3e769733e86c744fb74af5643c592e92d1ff18695d176ce3a8419aa4cb84f6b896a5c4f0fa5b769a7481293a8a74fc20f6499b1282b0a698f6a514affdfbc2019b64451bb337a5bfaf41d7233f3244eb6f8b0a4c1418cff1d6d9749b5422a361e2ff7d2e94999cff9d128615b11b864c584ae685811747ebfb3c059ead513cd5db45b925d3597fff27ba5050094b1c41de3cb1103a6122f3d2ccaf96f1a196861605fe1be918c51d206a2cec2b70c2ede18cc9d96a6692ea8643da72aa1501d36c2ee795cfb9b5918dc0dc4d7206c63271111e70f7ef520cdc7d99d435fc42d0dfadbf419f89e1162a48daee093883f7be7494e9b1dbdd2d403ff21e1a8c6bb71bd5ea836d2309b0ec4f4be6efdb1fbfdb16954234d3077dee73d761de62e473391ae63925ab1ea0da380850fd8ddd16c6590b4d284aced277869e00d8aec284c87f5972df05bf7ce3c75e982d3ed66121cf471da2dc41cf19e782a0ddb7bc49943afe0ca404c82b8aada3fa03c13fa67f73d12e764c5af7e00e134af5aecd6e991bd590e42b457dabb66d41790a6d02c8cdff1616c1e3b0157785807d4431ebae31c1574010540c2ba89cf5f4532983a45f19e28b7bf9b0640a2f4efaf38878491d0a628a6dd2acf4d9fd3eece3504592f05b229061b206b52aeaae62999fe196d176092af49eb8900d7b6cbdd2ebe8256e9d5ad9b04b851a6ad5b8a20d23f38201a499462d1cf94081ed0b7815a48f97b8e69dcbbd15465363653f8b279ebf3813179464806f98e7f7e1dca2efb25f329df57272771f10c956ac0e26dd958cc464ba38afbe2badf17f559a43cfac0d1257a26109812a6d77675d72c3709e749851189e3ee1956c9f8002262610f4ee764c0dd9e05255d9a745305b94bfe3d8190b8165df6abc7dbe96fa"},
{"0000000000000000000000000000000000000000000000000000000000000329", "022e7f086a9b2dd6dbbf71736d8ff5c13af31713f42ae7664efb29ca8588c8c43b1d6f5ca1a073f181270a60d5e262973a07a58ea22830b5081fb9557e02d90b2af6027defc90b9f3b91f961a50f4a5d131b75e41045cffff8cdb6bb1ee8d71ce256687247661615e31e755cbac719e169e426c356cfed8b4db1c156d8bf220f1254fa8d00859a60a6ac07413f824a9dba945646cc8f476caa99c3e08064e5726c071e62d7fda8e802b227c58f4962dd1c0044211c2868deadfb38ad6922798a4576dfd6a1507b32e4b9e6a29d5fe3700fb30f1d658f685e55bf2452f87bcf47ee2ec0b1d72aad1da96cd23612eb15a962541e22c73a8d376f76ac4c0e44f9d8d44dfd31347aa51abbd733732ac35a57e10e7cddace8e74f93f4a5b1a701f3faae59cf548fdf2b652eb84a8faad3336a58080b7c9feef01a1fccee39e22214f990d6cae27a08eaeaf4374664acb4e1da0256f53a3193852b0e88763ac5719f722787d5ab0d03b1d2869696e5215ce621b04daf04e8769d7ad48704ee6931d1d595b6c835d070e3eb540937253bdf40235b417092afce9f946155b494d866d3adb6bd93ed05422b8d75e241d18c7ba401e47985fb875dbcdd301dfc91d5c4d756f5498222bd64b077022e9e396fe90dd865cf71aadd715ab5f6f918ffc48348a2fd760a1c351d285cce461d8e77e325c156c67217b8db318a05b640a5abdd1a379e7802379a2d3cc8c7787be2d0130272c5075b2e07759191b65b55b865c715ae88c709d57b04b1dee9cfd8bff10de85f01a24776f3ed8528c0978e85a5c9fd8e6ca5182be77411b4f45c5c30081937879ca0190904e562f6cc293f5dfb2ef03a060ce3e70b7f1917d6f217e423c4e41a0ab44a7c425c1fa9bb3dfab1e60bd06e2268e97e01f28983bfee772fa17612099aba71985d145f05c4ab2a3553bd674f027d6fc2189dac7b838041043a884388f275311877250d352767987d0bb119653e9c402e1d9f1d3f7d190e0642bbc69149cb93ea72a546158f7e22cb78748622cf9bb50a2539c15fa554a8bbec76f64110351a680a60f3d15e0c5948ee311482c1c0b161713a7322eb21648f81334c412f66e1476e613f1cf9f82d1cb75e3e2afd225b6e0537bf36c7c6e7dbbf9dfbc3d28f2842f826b2fea8d3d39815c457f2acd0053a890d3ba505199febdc0de53db63e311a647a5e344a96d8f14305bf4ce56d95fbb0d5b241d5e26c3b020aa2d433e7191ee1e16ac74ab738e995d6913b70a30cd599c2941f78f1f44023fa6f7c9222ff0b21d72a93911bfe4a09e79d1f8d042623d24d91bac6ad21a103179f8c9e316fa5226126643d7ea8535ad94d52e9b6acff707b0b76e13a1148e3234befd1b2d79761add0b79bcc61315555de5b1dea3777e6a3e95a2fdc4a2588542c4a06d0bf87d3177b099565e646ed3315f1a64b988b951352f53a404626c169b2e205ccd084c1b588fecff54350d73b7b2a44af9dc7d6e3ef6f8d36dcbefc9f67481b1351dfa2dbbdf3d11527babef4720dc1379f1709834adc5b876357f70d20f1e3e9e38274da3bf70417f0e4fad6df19513511c37f0fc6a3d1388909fe9b1ac3243f865964bda93325d3f7d8d3f9e5ffb4d6c92406df5212a12c67f1d3743f0be7e4d18b3a33e4d1071ed531286b05c1598f853a6d6ab5c6330cf51ea416c808c0619b26b1b26571e7fc76cfce0db53754550bce8a81bd88b65cc54d937726a6c095a51f2f20503c51c30a05643bcdfa812491ec35d52b6fa23c1b261b449e8a358b73230629b1e3105855808eecf3f10e38ecce180350607f28d34515544ced5269167e31651bbacc9f8bee2e81c4ffc201b6fe11b5aaecf4f4782e17d484e0bad7c1e8cdc9976af7a26f9416fe054f"},
{"00000000000000000000000000000000000000000000000000000000000006a2", "0013b4e457c83e54503011ee8e27088c8b70ffbb5b1583aa037970c7658833f3b8862f969600bf9e83751119938d731229ed9ff243e5dcf4f5b9b68e90a1b31a4d8187b6954189e204b2b3e45e511e269b32e0c406bababdfcb42657f4fd94e230339dbbb6421ffb430c5ebc6b1dcf6d58d7405383b53f090622751d350723f8cb38ed90ac01e84d227a25aca6311b1b5d755f2ca16202751c73251187350793628a69648911d3910803eaaa5a85b43b45d2972e8f63710b989d1d77550ba1d71f3e8559497e98b824ef47cbef3910bd0f202221ba2345e9cca5826ef6f5ac5e4466eaa41f451c36a9d3597bd522eaedf36660f6df1106a64938be5d0d470e87325b3df3ca674125c2a5c2fcbc7554c8cc2e3713fee71c388fef0c13e48e211da9cff21d830616f56b909ccfc990f64291c55ea321d6d932b8c51020a0b5b3da68d0edb036249dad5ae6c145676d4a4b01131580d7841d93883f58eecfdd9ac70e64be6d490bdf15fbe45b07294c2c84dc8ffac7356e54fce4670515513f3b781617c3bb61675df2e7f19a27cfb2450ae00cab77260743e84299b315e5fb37b35f7fa420086d4e102ad9cb50f2b9579708ee331e08edd7cfa30e063617dc0c1b2cfef974e227c3860f200b7c7d98119a279cbb4cbbcf5830f66002ee26da0e2e97a4dd1ac00561afe7c62d4d1a471bacefdd531b49fac2ab05293ba78be5dc1991441071880b962575ab1967ef28cbf7620be79e19f6d86550006042d27a14fc84871ea0df741f2761e542574418a4f53e2e4045998bd91ee8959bb226d7b9f95c4a37487c2efaa23f9dd4a6166f4fc2b0b3c499a4a273ff5e27aa9906ebffff14538144ea9aa5967f568449668275e95fadd6be1bca194e11d332a3fc173296136f77eade51271d1cdc8b2bd4ec5cdd1a79cb17ac35988f50dc11b190760ee100eb9447542643c76efc6012d386ee3943e1d57055138cd9296345f707497175b57ab4ceeb2c035ef4c402e34bbaeb07bf3d5ba6855ba575e1b21cad17b71d052251c4ee1d25bf53b4f2f26f3629a32e415f6deb111005104a045b678e44e45c3d6e2031d63739ad582a79abbec2d8b727158c34212265f3020fe27e1c331aacc512a3b2cac1f0a8c57b2ae889b1ef0ebf5dfd1f41975d80e15ddf80f1f21199619e259e163621b901a0b16b6aa60ecf324b148e5575d3013bb38c6dbc021d2e88fca175133fe6703a5474bc818a61f7003d10661947f7ba621fe9bd6584d6e7f7e9d29d9892aa12804b1c4ea72585ac50b3b4ba399f9f04e3f8b55a01cd1d471260e917565f85088562da09baeeb973bf05a4bdc83aa1bfbde04e444a052ada92de627d14070a1b018cbae32843b41241da16fcdeb1f4caf7da971bf0b290ba653981f06d02b29b7f97f597a176992f013af8dd53c34ac239e9d765d941c5ab37db9d122c0c6949654448df88de493223012f08f54b591afd2a0a2ba0f8946955d5e30bf4dcb73ab5aba51c3ecd7011dbd1936c0e59e35279e37859fdbaa634fbdf106e0350bdf2f0f29ce9e3948366474ad141a567757457199d6ac11007d84eaadfd2719a986e75336aecf5182e758cc17f610fc597c6f4cc4cc46d9719105d53a445f79a8823d475b95ec4b7d4fe6e8132beccfd70bd0169abf1c3990be1f164c3e26b2553fabf957d709f2121b407f916aae0d9412372d6a72dd21c26da73f807dad14db7e21df3418c824947baea25b28fbd96ee20b135dc96e8dc6fef72044e6d65c4aa130b5921800d221d724d4468d350b476aa5ff92555be13d7302132605ae9ce8e7b5d0d86c79dc8418bbe9ceb37084011bbe76ee6c9cf4ad72b24b42cad9a31c6f7cecb5e26db141da68e020080ef75aa98cd62c2847c3aad1c"},
{"00000000000000000000000000000000000000000000000000000000000023bc", "004110e7bb9afc4d10362018f22772502bae42d94223146ecc1015ee79918a25ae2bca73b2913556e98449eb8ac8845adf17ad03379fe1759a7a48a5fecadd529807471eab572594ec78cdc765185a6b7a1e0b6602a6bd3f936bf701cf1e427b499ed1e8d369ca0ad03ba17c8aa21732a35a0b643753c2c21b74a4dfaa24137f2435ed09adc8519d46a2cc7ce9c61f8e38ff041ab6646bf80cd380ab66e26c284200957ec99823bd005f4558ff5ef62b723c14103eb1b352cdd39ce38914c1dd79180d902f76cd62195b7d385181f0aefa780b8400da234da771fc5fd1c1634651888ad2c6e4d022eb1a3145387aa1e1bc73fd6c35d7fdfeb19a294209b74ea02ce21a8b462c93d1f65a56fd2ad7dca8540b62b175aa5e7a2ffdedb1a63aac666909f07d6d650a725765050aea56ceeac0d9a93963018bdeb24d951241b3fc0b4f392ababfc68a0f670c09bbf1ee5902007047897e8f5edd3913743592f93a6a0050d33c5834acc4af4b9ef4d7558b03a20fe4bdb15a59d73e21104cbfee0315ad61b5f6b58df546da35b949132f8936daef74ae8fec1b321a3630d3fcf1f1bd84f868c6117e9f045f4f560b0a7bd8c6e4638832f5cc7e0c872c956cef5c154487bb4fe3462c583bb9c113efd19e15f75d912689f182bf66b6ada33d1a864f099f92582f77cb6f81ee51fda17084b1d7f92f3aab423b34ec021c6fa2a6dc4fed599735ea19f2d2ddd6b1be25860bd398c1121a86e2fe1d1223d27b7e84f5ff28d4760470c96a3c064446f9a8696fa96ff18f5e6bdb909d40f26d38cda827f145d5a603037716d69ab9fff97f15c0f374dcc60554bd3ae27d8a1837a93968d00f481e4d21aa450d99c141df035f757299baaafdd9d71d1e89da1b121a0c7bae75d72c50ce819dde48b211b020cac4f1f63a3657d96c430339a9f6160855fc97aa0197c0db7ca81d11e5fd20f070a5151cccf05e34bf0bb6fb758683a10d0d6184a106df48ad9a8faf836907c1acb767890a6f5c75060a45fdedaad4da36d58611ca2d74fdb34173b70d85896ac7b24edc48d93c1505af4c9b8ca08fd99329234ae83027219dff56ba2b19d2045fefdbe269e59e76a4a2c2698682e9b97c7e19378f23c0124c97e641345a214e6ec53efadf72b8506053bfbd74dfc9c25396d1134f0afdb4935cf8b904dfeca598db8d8ce4be142d784a52de6e9d7d041e0f013c1c5129574bb6f641530a5a0856465cb2a8a00fcb036b4a6dcb4bded0a2c0ce671bd9bd5e3645552881863fa3d6a9e2db4502f16a3a0e691f26beb3771335312572162305c7be14e4245279cdf1628fe31f31da4e73026ad589f43493fdf15e1dd562c353e36d13ecde9aede3876b7f51d18e5943d92ae634b84b8b23a3269bf24d754f782ec417dfc86f6a2ba736113504b3fe4dfde7f3d7d9cf24a94144ce667033f92c6b28ad8560944ef92d12af84cedeba7936aed57707e316e05385d8a2cde3614c31ac6ad885962b2ff5154d1dccd5d4a0efd6ebb1e7b5288bc9276ac71ab6dd461b8c1126789090de89eb930ae3320d5992f4cf10e11cb65c1757d6b7cf6727830df6dc64ea709b76fb571e303cb5ea1844d1442114f2c2e49111ab0a307b0a2084dd0dc690e951412dd2c5b33938397ac2ec6c95065483d33cc5095f5276b3b9facf25d0fe6694ced60fb5097c6eafeae3db9981c87434946b11957a54b01cde156789abe5f5d593b22f854ec51d955ab7b9d64403ea464257aa8d607f4597dbe9497ee2e29dc2a20ddf188619f2bc57f6eb1328ebf101137d52bece05614537c879e4b615e1c029cbbad1df5f04a1bde8952637c578a0551a894c349398585dd3c2a638f6638a2ba59d25471598a9cc6e445fb26041534ce1ffb346"},
{"0000000000000000000000000000000000000000000000000000000000000132", "01119fda2950ed71ca98d36a1c59b252ddd2d75032053a2e35ac4b389df205b7b660bf7fe77dd8dfe9a801c12246c6e62ce9fe6313b3597bb6053f091d3fe1025af2d1858e1b947819d2dcea7783ed289f0b09400481508a804b8468eada531440995fd3bb74bebd03105b354b4a95f424f761a228b1749d149c7b6c1f321b533a5e9fd98f49425cba2ae6f05a9f8ab47e7d9627b0256273ee3b318e4193299e5971ed0d60a97242033e97df2755982ec6f521ff9ca725f1d6f3799f1e2269d78564cbe52abc1b77d6f3d530aac88eff8bad0f6ab2ef3827bc37a66b356f0e57e8c7de2adef1fb2288416209981ccb4a1dd3216ebe3ad17ec05187460fe8a77874d4d0b8e050290c65584826e335f8d6cb290415299253ed17325892e63bdd6c4f053abdda1f1dac5cde54c90c0b6b2264a3e4558df5ca31ff7dc223fbf72d9321bcb7a27d474110dda761d2eef382f2018c3e2bd3c84857d66a11627331ef61eafefe5d4e0df764fdbf04ce07e1ed94d545b8cdb6aaec1d19b50344c44df99a7cf71ae3d220ceae6a98a460d2607c0b46b86e0173720bf99fb728f352c68251bb74932c1a77e5096cc92cc3b5b75757eefed99e7c7979bb7626f4d2e9f3cb716cae3648ad16617c16a4e8d8c4f81ba15900c860f41b21c1a78b0c6c7a4e4041d2eedd3b597526f0131c79d1be843d18fca237c21ddef3f70525202dd514bc0370561613397a0b5f6a45bc24d315b974265f10147fc001bace2e60486abdb876040a0bb02f1787905ac0c3fdf153449ce4490e85f4471d0e62f0a8a663eaa3d456a2df1b4a6f80cc8c76e74a0e3515ba9b0f8a70ac771450ac60e1ad59f8cbaac80eaca50166a4811f6174b57a765b646e409c35c8be100e4e06d8eee4d3cd60f2cc292cad0321e1dcbfdf2a9a97060768a1b5a130e3ef60520bbb72fffbba4601601502f6094d39d907a6b1e76ecdae98435b11870d257704c6a7403bfeea617ef6e2c297221bbe013f06ab9b31f382bf80497726ca0dec94f245edd4ecc509946f381044728719cb90ef087083196df1fa7daf02a977fa5b74ac37f4eb8053a482ae786084043d5612e8e2e1538a407b8d3ee47b962aad496effef27be0f047c7ec9c8019148a8b2384ab11661f5aafcdd982c4c99b9265a20052c45b4476350314b18ee7b5c20017acd44f750391dfc4775da16c4401184dd5175c126607bc8b1e59505ea1e835acc4328da1805195eb1041a5ba7531f4d457633332824b672b26589fa0fbc390787d659d2c3033c771501e9bee0330d96dfa88b05cc67627cc24077d5eda333caa7e8aa9658b588f50e8494fc0b5a3ad76e1fc4b893c7f811ce2dd264f20fd44cf0d90ea085c150e7aceee4ddb26c7a1874bc1da4561ac658626cd0b688f47fdf359eb54698eaa6040a335d294f6123cb70016fe390b1c0747b8552c763d1cf7cfb22a90547571cdee6f0495360f35bae0a1155147cfc610f216e43740a442525819884ce58c0122637ac50a5e46ff0a8dbb8e7ffa793320b9b72ca08dc52cf10877d2fc601509fbbc00c460a157ee93e0ca5c5d93515752f11d922c2e1e2f9497d83eef10010ed2b4a6a3b30b3ead30aecaee3e166c94d9e876d2671299e6e0c1a395563b52f485339160818f3245c06dafd54e8520f03613d966e13f57b5e56d593d17b4c315ddf242190c583b855f986c7fbd6033c3ce4ae1bcb7dc22bce617ac3a474651ab6b2bd1ff0d820242ec563cdd65d312b69c2f31966a3de79727dd870310cfc2a6f2e8d708cfde003c17732fb015b0e2ca78b1c9ead803e8f0a51a29b61d30d40417a811218846a2e32bf0c4a5e1e5fff4a962018e4f411d3599bfdf149bd4aa5da284f3d62e7c500c73bd1f5faf29bae30"},
{"00000000000000000000000000000000000000000000000000000000000009c6", "0002c06fe29bbf7923cda38f12fa16fd84a0b08dd10132b1ad69a0402f54657106cdb92b6cae796b9f4200fc12fed958e15f95b3c0e05faf2d85d3e31edeae0b104e437f4fe0e8c56ab477f8ba9e2a5d77b4c40406b8f3ac1a4a9108f29fc63ffbf04455ab509937220f7738edc3dc17efe9a6d3ee35b9c8b6c856fc07e20c3ef48a30217309ed5ca38c7fe435098bb3d1af8912dc96e70ed89e9b30b6515db89579247db9e617e30c6e9a2d1908bf82d234b539e8cd6f2ec3927988cd31d74da009b183bfde4dd378583d7bb58721d1aae013a6a474cf5c9f29b49461fa9b9cb5e19ab7f9dbf14786fc16b2e3430d707a764202ed35a9bd8395200f23aec5de3a52bf79ab884307d7dcf79bb0929ef690302eaf7f23f12f1dae033604da35b5f6c6c4b8a1d63c49ff99a3e48fcdc9b4050c095277f5ec14b2ce6e414b64cf66d45368c51b5428f6b1ff12aac8bdfbe300eb33e5f2185ca124a45266b5b6cea96c7c4cfff90d3ddbdaf28c819dc6cda452372c709764a11f85bd04c2d2db4f46100d2097d181b1285b7ca4a45049a34b8e270245318733c34985b107432989e43efa78ed06aa1b230bcb0b5ace8f523df06aaffe89da35c37d08d393f1968747abe3e336246546518634073c7c8723e8fdc27ca7b647ebbf0296ffdfb620b152932f8b318fb3a3ddf076f7b0dd46342d7393e59f557828f10e96b9a9b60d4f5dff2a430cf4b0f323d13c9f12ba24a17fb8a72bba67bb9d73412db177eeaeab3910c90fedeeb90f16b83111a57665beb659ae4c4e5e472c430ccaa3de1a51fbe9c595c2c954c705b1d31422ad1d59248160e5b325947181dd4dc8ec0d25ff1dab2a22267b244809399cacaac345b2cf6a136cf9be2aa823bfa202eb4b633cc898144e1bbbed6b2235dc3575524a5cd978600b4b8857c673df35e86a19291dea6900199a824f8cbe13afffa3466c23d0a63b22bae8a906396332e84ffe952d00f4d567f3fb91b280549a7e0e1f3ba97866097544eb01bcb99f5e896aa4fe37d02f7da6330c8f6509c2472360163918c59689d7eac304e4054cb2f646d5bbe9f1571b45ed017d6a4d1236090a8f62ec18776af001d3f21f5ab7f97b6f2cdd4c23d68e516edd7e8dca2187cd6148163eb021df9f9c42236fdaedfb0c19f4ded9fb6c612c6b69f43d0464019139b46a2466419cb7b571ebf2fb2ec4145816e44297b38d6a9b036fe751558cf3419f258e2b8de0861ca246a03ec84d07eb4712c925a68290edd7f62b97502fb693f1d95587003519c84ff2410e97a176e08403b32351561cf16b403c460a70e3a9a29d26d5259942cc9410eda13e1fbfef85bd37f413ba06ec9b49040661cbc68cdfe2c19900766509c97f41c7741898700a6e68553798c8a980c4c26c097117793d1c3c663800e47f837c172cf95265b0e5d69bed72570d552b985b1e4668ab1d2ddd6414f82a4c526a9f2feb99c2ab02e10d2385565c29139654c4a5aa0e81e8dbf53f6c081a7c732c2c81fd751561ad3d5abcc0c6d0cf1d0d01b3f16fff5d12b748f061f7cee8c213b7deff868b302743cb4acfc2e7ef0617bb105458fab20fb833600d8eea28d0a737d348da6195552a2b19d4a4113fa939f015449bd13049a55095c13b4d865f76e3bd86ce0889df9815124089b96c63ddea452599aea8ee872909b696fc84e0d365b529d5406c6e2475c6929dd61a33fcea0dbfce878de63106f48679850a75c0b4147a55e075e54557f6fd78bd46361dff208a6bc396ec7209923a6e9be49d2fc5e0e20465282cea328dd1c4a50f14b9e5454bfbeb0de595092ef4ef95867459328214c51a566fcc4580c532b33de72c9206b2039bce69216d7c8651d8e64f65dc443b59b3e5c932cb5c0bce"},
{"00000000000000000000000000000000000000000000000000000000000001dd", "002a7c283f0819ae52acf1326c185b70968be97b910213dae37f0810ed8ff00929e5680b4a7fa1fbd1b40a853d7acf9821b958ef87d8c653c8bb09c29c021d2b4f050e914cee96dc954d400e6ac6776d531f2b1f17d32341b88d029366c623f68cbd6bf1abaf92ac831b0409063655d467769e84042236faf6a393d68d0324f81f3d87cc79e67ccb5332e29f4cde455d156a2025e6f20e04f002cf84db665be340b0335c00ddba5f04a2fb69189ac66926b2709758e407cf41a5bacafa04c9963b6e42c57d12b272628cbee998e2a68edd231fb04cda4c958937716642bbb3d23b6d93216def8d4070acf2d31c20811b7e85fa783f5cfdbcd2db2c8c08f0d52296c97a12562e33f9bc785bb19cd9134e4650601e79de1f98cdab73e524e92a951d52f11fb9a51209dc381ce4a7997262737edbbd36c2c73cf6573920bbec99519d8ae9f053a2f0e6ecbf291f082ede2c02499431adc620750bfee03bd6b68a783a3476232d1330c8de18ea35b9cdc727c5a150348b1feff92d600b90a260ffe27803fb66a19b95729312ae8b3d6ac11fd70c66c5173ea555c46371d92c55d1c60c0f8a2904b45a50a846a1f24041154b0fbfc89ea4f83c265508ea574a16424479dc3df2c51f7f587df69c3ab65f12308b1ad5c8ce19f9d2248e93398e7d2e0c5b248313bf1f9b2cd0e085830644d92c7c241d3c8d0db1a30b5bbaf611dc70dbab3c8327dccc602955ccfdb04f0c47cec8ddab0df9f21a5437b65c3b7524a919b94d0b99630e3d55693eafd001d1149b84a91a67cb70e20c1135bc3fd76330e88c98de05481e22aae6596bc40c1b17b0bc98180deb79916a1cf3d48314fc9f395717e3ed97fa91664f2b6173f3c5470b1138b95b666f1e97fee0f9d820c2f0d72375eec25378f94517e8a729f2a30987f6e7edd69f233f13613396115e1604e3010bd72e8f011e5efa8a83893579cb662bb2ddfa4b061dc16b65b0bd01fb3a628f22dfeb970a629da7fa1988d5fb2f1e2e67aeb6a2a012d0f8892e7d9254aa303637cd4e74d9cbb4f0274d5dbba39aa65b1b65e00563aa16599842d71baa823e86c49a34f62f1151a52562c66d8199de2959a6e2fe219eaa550a0df310c912d30eb25acfe5fcc8e405e9c7b0dfb61f0393e5f92c346b78e6dfb0b3e77752e562b216ed2ebc341ebb05896774501d23f100eb31b8764a3b75df5d36e20871855467de5dfe09831758d81c6b90123831774b290c1b1cb57e88326defc91257cdd8d6bef79c9889941526eb7f12c7fdf30a7c559eb76073a1ee5dfbb21f10e7339256469fa651fea48db7ec8db1a5323f6740136b1ab4aa645d5d55b6e172c1ba994963131bedbb2171c95acf2048b5893d323e3fea4cc93d3333181a57dd32d4846b5c6765ec66dc404d29fe7644d90cc0028120190ed8255b91c09281962887e350f05db61e151a1aaddfd2e583a0b466607943eb45a27ad1cc56057fcc147670c3f7cf976078bbe63e083151cda990463b64855bdb57df4f18178bcde68c8ea17fdc8cb0071591037768d4aba0285147c730cb81d0f3fc2690513f92e9ab2cf9ef772b7a5d337482f2a6e23f38151165cfb84fab4d43ba8411679ad3558d2b155ec9991256b7a7de60f7511bae87f74c7da003262fdc6c2b07b9887d6e4c1dfabfb52cdf736da41b53c69f6a54447b27e05511f84b8f98b45b3ae330114956396cc123355a5e774f9e06d86653dcbdd7c0a5003b1e2c8e391f9415d5692ed58b457413acceb9fab33d77c90c0c44d9ef60619e693b43b72ba73df2ce39d1750ead1a4c92d88687ed5ddfd735a9b061b96f4d321ace5c1698f5b7078fc01f61ae934129c57da2863a7850616138b74e02db343166bfb8505048d97efc2d9ed520"},
{"0000000000000000000000000000000000000000000000000000000000000634", "0193aef5ece2b7abaddc406076ff97dd4145f66f5901965a3ef8601209855f0239f9132e5132f535810003b3428af716f68fde4c31860264be34d381f726481eaf1e9321ea83539de4c2c9a7507e857c7e582ea622e2ad51edd08a51f582962d14b961ddeb99f7bfd72a38f5aea839e77ffa7f32b89e474dbb2cb219d77d28c5a5688de75addfd927314dec35da6fea6d8fa1b357649c141a471633a606592994371aaa317be964809fcd8b2eadd2a4bff602541d950ca6de236d18a0c1456c0a58311746d14ab61b1b52d69babf0b1d28020ea2245434e96f7fde784223681d7b5ce39bea5c6650e0fa8ca16ccff369e7d7c5b86323a23a78d4589d0deeb68e64a9bc39621fc1bd0239b54eeb4418271c5670b4ad8ee385978d9af623f7c4410b9332fd490e0f98475b4b8d3588ab8c43b4957b38e682ddb947c81ddfd27bda4f23ee8f10133488a5ca2e15b591fb080351e35e1babc4756e5b915229b721d8939448fcd4682e378be39d63abc6bc369477563281f3633cc494157924683fa6e2d759d9258bbb7d96a9aa736eb6462d74e3e8010e268915c3638fc5c4237cf45cbd8c48081fd8e7087139d3bbfb91ab052adc248957546f0b0fea0d6ffbcecdd969c7a44781252992a5e3f8e4fa0ec29db341c3c09b5d8414a4f8bce545c45a5fe28950686cf7616120adb42f29db2e750a2681aed564de0721a256454be190cc70b14f807ea5c49caeb5788808943f52b41c9885c567d31307e66452f35058af5d0aa78abf2f981c4ac44a733815a36a41044f9196160b93affc7604a6edd48a87b3d3d8bddee8dd7ce7990746efa4d153e383c03e5176ed3db530dd8b7c9e8e20282ac7b68d7f20926747c91a566c9b7afb3bdb2c0aa02590ac844fe5b73a65b7d9d33ffe5015dd7f880dcd6dc86caf6151dc0c132bf3b1ed960adad1c774024d624a30473f7ac2d699115e6b6352f1cdd8931b1a43574d2fe11a55d68a344bfadbe6894712bcfe380377b952d8743c7dce0e355986b68a5e32e237d9043fb2d7e6e9951ac8b333d50d26743a258736ee49ac076ae0f662550b43f046d95d3a5c866b79029ffd2a37f4cc33ead464b749d845bedc7ceefe6ecbf4731e26044a92235a597fe492d69b6ded2daebd4d1b570d27c8b13f5eeb759d86f662977c5c79f9336acf6b0f05b820e62ea3af7b24a4a1f89eb3e4592d8d168c4228a5d738bd146205b911a304f2577cae22a1d1512811cbb721e6a48a2bea4045ecb73b252e677ff782034981ac9dfa34f0a7dd1a380d1765e3f219989eb486072ebcc31783d16ea7fbd0b042bbfee5979a0e33f64005fd27f2e358d91b77f41fb44fbbb376fa1f8cf92df5326ed49af75ae5c405c82844cc3df7097e8fc233fda4edf5e9184db90024afa2e197c1a51b9fbcf5066759732a690e0fc1ff4774976886c63e87fc89751708acc4d692e9d0dc93a5af4643b311dbdfd4f70e0859bff5cff583e5ef8ca5a228658c39761b9342c98d604f2d042a233fba18ab6df7f67652f4dcf80b800d2270702b0c7fa79b70b0ed08ac91b936f812f70b2861bd03825e6571635f678333e40f0a0bf8d3068b35e535637df81f75ed9b182e5afc93aa67cd39ea263ea6ce0cb61612e79806c6450ae94aa62b13d977050a9a55f00794deafed5ef32cdbe849ff224ddc09b920d71e26bf5ee6dfecfa33a693a3f6ea13af55f7890b89bc2eb66bbe09a9c503c48e4b97f73216dbd7af126dfbc6ed228a9193fcf48bedbed0f5dcbdfd6899149ae17910cd678165c5764459c2d0ee2ae4584a2a244c56c1e6a9a6bf9fc8b5849ad91525e7d5d21682215bc1e999d59915cb14047c2ed03c3d5f2b1ec59c2f672ebd3cb020afdbf215f6ba3935b245e7f820bf"},
{"0000000000000000000000000000000000000000000000000000000000001fe4", "0034d0d7ea85cb9ebadb02f966bd4f9979c65c359d1d065768e9dedb4fe25dca595adb5f2f2862fc9b6b2175ca9045140ce0f38ba3459e7b0255a5cefe3440280f23c18c8be782e5eb0635bf50c5b2d2ee1e45a11eaa3f4dea8f3f18a03de87d57e90a2e20b4546e93496a83814ffc2023ebcfb95c0b5853aac46d5f897f2036c98666cf3c04b75b59ef2f5cdaca8066f6d22f35f43334142e0acf86c9e45ab1a9df11c56d128dbb00c7c049a55cacdfd99af3c851cb0fba0295177d6b0a49560fc682968aeb40c0f3eca3ddd537e0fdd44701e46b1e174ce175dce4b6df83c02f134d7e9f6fa004f4ff5731217d3def62822b605413b29821fc95df0de4e8f1151e00156d28b1da703cb4b12ce1f312c83080c3864c6d183dd9e46a8cf9fde8cf03603b37271b9bb30b8c5ecfeb62429266a46b2d871599dde9dd251dfd71a60f6d9727d5759f2b4e8a020eadf6ed580815fa0dcaec087b72b7308ceac3600d2b5379eb420d5aef338da3fb0961e565915b2d90d78e959dee4917a8affe4b690df5b52929a8a3f30a77d894ff67812fb5ece0c0f3ea81dc2ed4385a5cf24a6a6ebbebf10ab4c9d53656df732869c26994213976cbcaf792c52ff4d55df0233a919770531cd7d4a236abd05978ed0d2026f259daba55c57c013e6fa830285159956afa17e824a74ae62e533a0f82d90b4fce29982d374ac20a03ac177e93bdf8e51893e683c662bf3cd33dfa6c0b8c6649efc9e946f2abd25484538c822c5b3952dd1266633b98591ac3c505f34c8b1c77e5bfdd9d6d873953dfd27f6116fbdd203545cc431bbf4fb01cccaf1580bd90330713d0fbbf1231b6dc2561bd207a162b3ca544ea9dd94ae51af433e120f068f908acd1246c2b2075dde71c60e3cfbc246d2fe868b5d1aa36cd994d165e56129d2d88fcdcf59b69672bb1e665580d5500c34291235ecaa792fd8570f6e6b4d17e47ce61b0147c33c0f9c842b0f34331a9b5951eaa59961a93e51104774705a0f595c20b71f55479b1d4e36875d58912c507da512bfb6d854cc91dcdfe2b66b8143614fc0436ecf89fc317e0a852b1305179c621c0357f706720071678f1745b25cec9f53ce55d17a183e4b70db70e0cecc42b148e48e5a371ff97da554558b358096c1a6e978b2cf09a899f4b2810e56ad6f30b4519ce6004a4698a20068d698aed91b63a7e25baf1eef9efe62174451fd74e9ae7a51da31f50e0b1551dce4efd060eac0f6eee55560d9e71733073fe5e2de9c47e8add32337422c85179c8f7cba6841c43eb5a369cbef07d0718d84b2ab839f9e1a3d5493969bcd6f8bf3fe783124c2b6cdc4b915dff90467f49720f0dc0605733dd113992bea19a77d91a9651a1e792af18def9698a0d72eecc9f8e301c5dede86744bacc100218ee9d4f8d0243fd8cd5198b233799e33ed2f34e2970b17b332024d59ecd6cea5e6bf79b530bf95158bb5c84ff91440bdca15963cf8916b0ec0384782e9ae9e8f03031a40cc67c1bbd4ffce51912a1791d20fb5d80b7dc6077042e7d829c5ea0e78e195812aa60b28a92c07ec25634ad5b6d0b3204a1f5fa6453e66cd376cd411fc3280bdbb1d0055c61b9c02fa4861278fb816719deac5618114ba17f542b4fdc90959953e95f6e72665acf1e02f4361117540971ab5fa0e7c10900b0ccda3508b70c376b57fcd41f77d6149367df3b34250e551d8c860bb5eafa6a4e892b256410c46ff67630799d06c45745c96fb9632978ada096774e9ac45c8ea0edd9bd530b641e2aebc74c52fea7e255d061095a8aeb3be901250439bb706ac49bd38e28ec43d5005a3c743dbec431185784cce36dfb86d2869593bf1eeda74f181c313fdbcc9b472fac1ffef50b60086b3af340d33ef54a"},
{"00000000000000000000000000000000000000000000000000000000000026fe", "0076543e7f0921bb345aa4f261fc16b5dc8a13ac6f73df25b51db48c61d38e3bc7b57ee9eef3945ae7ca229d4d4d0454dfd8c94176269846c862827ef486b57efee6aa3264c1f7c60ef9acd872ee32ca0b9f49c908d53d3c31dd9645f37391dea0b230e26cf27ace8c51263dfade982e35a01bc5c7e3393cef20441a6b9c10620b5b97cefe60c3beb338fc7a006914957384dc1d70fea28a8e2ddef4e14312b73035c51bdddbc2fd00b2d234d99740adf366436de05483e5919cd78b5310990f980514e7e55051e34509f7255b2483ba18ea2a42eba3c5786b63d26ac91344526c5f5549fdfe5f4e9c3cd8a31dbf06f23dc53ef76e5bba37d57ee207016c8ac05ead2991e54b7234682dfc0d24bf98882506a57ff3e1cd45b928ff76623efa7eda7484b97b1512e5816f65d598fff6714539174746da3e19df4e8e4187e4115afa9da1f20c94234168744e425f5ffe9600a26cc76dd0505550e4c050327ff24e649a93f3820e530e5f816a8d51a14f81ddd677fbadb4f25324bc02571de3444b82b0afd97421edb1dbc945a19a81802bef6382f18c91196155969dd2ca4e39fc6df5ccfb0343119f356cbf796acf839de5d20c76182ddc8e0c2e1e326867e82f534fe364f02a6a217d7a3a18aa7812f82772a276825fc39cb2ecd1a91f6151c4daffab1606be448109db4cc88374895db49d8316ff5b4cf60f6a716bbd87bbc83fa9141817539e361e4c3ea19a400044971752b7a98d2247a292efadcfb4f97e16c7155be91d0a5060b8d42a9460ce551f3145b2bc531316ed65258a6cf111adec677005ffd5ae56efdc4b53142baa166587e03962d522575c43f64a13bb332af32b919517a66038f564b77385982ab1d1cc83f946f31bb516826460bf5930f182e438eda5da36c85373be54da04780ab375c3cfcda5ae15cfcf2634ff38012e035f09896fe9e373b20a80e4dac8fda848638ad36805474b4692d7eb8af1fef908fa6ab94f1be2d98bad108f96a5d029c91fb4fbb25b96fa725221405f5b1520bf67559f5846f9f56d4322799a098d95e8cf72751e2d5c9b5f9e7d73f0d01af116713c4ecccabc50771eba1e16ffaf1ca9f975a3e7add075113b119a3f2b33efe791355a3829128d0697d3e4f58aa868bf76ea3c8b74d2bca39e855fdee6fbb0fb37269aea962d6705303b9bfc5813d1ff99a0c2069388a520379f944e0ac598b544d886ade38bc5154f5165fac91e96571c07f849b4118a8898aecd70d903529f62f57b58a5510aa4589325a1e25d7d20921a41d1e9d9e3a1b1aa5b054b714fea049a16a6cf4067b44477fe33481fce8e06a662f7b91032ddeda4309c99b0b68258a4dfe290099e6f740390ecbaa4a354eeb9b35f1dd345fe59742184d4330e32ed41d86d73d2df796691f1069be93b07137a8545029cce34eff3566ee3f70d368f5d999110d8d661c68c55348eebb3bfe2cccd233e703e567110939a6cc48b8dd74f01f292b467225154a033164d3e162f8914db6923fdaf364c2f42a17ad3989cb9910901cad94543902d00ed5381dc3bc5c9d23794b0cd248119be05e83839690f2d3ce77625af60b05fbd220d3169e8369736e1180683eebf49e11d6798fdea8116e9320cef6a42659af786a468f9a32e3f0b1269380811e92c031934554aa9598646d71d8af10f9baa9d0d6284596520e1ffab3908154ac44c6e1737db2eb22b3fbdb58d8d4cb09a0f160aefb783b66c1b3d645d45951a2df4d3f4c3870e65675939a13a6ee89f5f170cb76e623e5fb05b429a76882a557082720a7efa7f2f05fe397b90ab81ff482772c34c01331b7e7dcd7c13403eb9b016aff0d1f4b709506399da40f89440c8152aec2a2ad4a3d7b3ebc91a366aee5b4dd2ddf9fb"},
{"0000000000000000000000000000000000000000000000000000000000000cfc", "0053689b781f1e8fffb6a0767f5a9fee99d7f5db640eae25fbfd84a9410548732b02771bef4722fce6750408cb61be5101d77575888ca0f6ad36dfc53aee880b5c031a04d84d89470de1f04e25ecca4d43b7c451007a37a7e111a0b6e1df635b74a55718e30af326981b7ef4a227c8925cca36f2874aee43d516d6ec23f22bd3eb3a4e8fc52154d09553edf3bcbf4ce0fd7f5449cb475258b7c3b5ca8d275e17d1870f1a9819eaf300b503c1124ab934788fa407125084b59723ce5ffc0b232e91841423e382e281e09aed7782b9c4fecea00621d64f4582ef28594d25ff7f5007f64c8bd6f5e05fbbae0414d8d81bf53b98974add34ce6f64dc16580602f7d084b360f5c8a944fad5ea17e160141520f51bb18f2ec01625b106d102083b94f4e8db418c66fa075e7fb1dd0882608f91f52a2be78e5ecbfdd6a73f71a7cce13762ab4fc19ff7620dcb95eb562b1e769d08c6c935b009cc0d0e57f100b329e9d1da79f69036169e2cbc6956482513e7937823bceda16217eca0891ef6d2556a1e6707482cfc18ba7071272ef31a0bde2a5d93b29cad09e5be08a4f8c1391666c01e7834690a2a693452b07bc1bbf100d0f08d85a93115b74f4e10bb2b3996e4dfad594de2295b600d352ae7549440171cf8bf2fe3c41d5cf2d271e9ffc0152e5491892d264ec60847907bfb68591498cdcbfc2ae41db8f7c70d84147e779f58b3d764365297eb1d1deb599fe23b397a76658cea9eb9720a3837f9d3984e8c9275e9af1d5eab974ef90607e11d2c9b1e715be33a65fd9de1226a9944b0d9c4392aeed379493b178b5018ff3a2010b820d533148e66f91b25f29fd51509f4697ea604236e12c3e7d72635ece7a2f87e43bb70cf863be68e3303a48243dca5d537a173c39b58f551092ef0a284456a364c8f9bd28f2b3b097d85d9181f265cdff2d3014ee7c641df0e49426e155806e16161711b93332a06e6a9af819cbe2b077e820358b99c7ac954f89d47046404a465d6ecb1e6b9e25482cc4cd580f83e405535ba759cc4a4e9798a1e2588cfd26fc969675e063a0612aa1c5e15279b199381d3249b8bec8cf4eeda122d303a654b957690cfb655b4ede8d3c5df2fd4171611a75d3d05d0d330cfb6d20ec4e47a3d2e795aff0e2640abe0950b0ddd4fc0836ff4eb1a3e73e31f0e99049808296b9826a18369b7f20dcf31e70f38fa16542c2cd334c2d23eae9f0a268691ef71f5fc91385fe60fdb2329c95bef4148a2724687782f5261877e372c1395cb582b335911b6f54456a0c43fad1748fec0da167e444b6c2e9703c75921f4ed51bc149df95919c22054ef98eb1cdd416542624888ac4a58db834d48272b4e8f2d1ceaa1119fe4c8be6871bb43352d7c6251304ebd80f14ed030af37e674e4e43e4a59e43a0aad0268a6fed7c2298b2fd1109032c22c91012b6fa2320f0c27634d639d6df747023b5dab0bb70143faaf75085695f4b5904185926ab480d93c48628cf05bd9fa09edcd3811984a7ad45d29f4e7ffaeb6f72d1f87cf047cfc5c6aa697cfa96102d552ef1ab5a7cbd4e86f3f98c41ec990ecb1973fe9784c7a152a6bedfb1d2c1c15836e96d024f1ff2fa1d13fcddda1cd2778cd271c2df14b4b135823cf73d3db7cb03b3e2bbbb73fea02f47512b84272206c34c43ec5325bcf10ba3df5890f050f746047bc7547495117a749dcf1b50dda85380abd4114b1ca6b8bc8aad3a0866b3bbaf9ff7e4f491a925904e195a36711a047a6eb3e7c6edb083972791d6893886ab4aa6fb8ce721f8a1f28dc8bff52ab6e2c3ca216faa7b775e8df3746ffd0b25a4ccb3317bb22d535d71a1f5655288d235d699b0f4907f29202724181139d5b5429c8dac6a505a5f6aec980373482a8"},
{"0000000000000000000000000000000000000000000000000000000000000836", "00747b2490a195794b752231ab22941d124b097253087d2f12c4a56d3fbc3d74f5952d605a780bfd44bb14c7beeb58a2a1614a2581b18742e900eaa02de062170b5b274e0bbd57e95a441bcda6185b11bf3fac4a0242cc19996039b34fd492e5983955891d834e8fa910263329c8c9735eec249842eed3c8febed8bf07101126c3dfa807a6c8ddcb912af6c31f5757d83d58b2118a9cbc9ed6179979a0f50537e89a257d6ef026270773b69261488692a523b35926a2c20da76e0f27e316f3e2029b18934b4682f2c211705386f2f59c7795172f7b09f28eeff4fcdaa1bb68d805e99493bc6e78438dbd858f29ea05ad49066b14c5978637c7984cf91807c69f7ec99f06e5b3836a15ab52f9735e51a1db1dddca1551196885f82f02a2d3fee29cd85a8c63772d623fb17333815da127640f63ad41d5a51d9840f53436ce9d43b3ee67b84b841a24576bcdb78430f34a00b42be43afbe283f7d631a0e1b4bbc1bd8f38e6ca239b463bb74a2b237bd233b5117f44dea09935697012ad23cf6352e38fa280945dcfbb73e726c07e3fe52a115c7374b8704bd302230c31ec3918d9e44dc8750b35ae07bb086bb1a7bc817b64702e89fc12dbc6103ba947f9004fd9dfdc97448be6caf485a5e1dacaa6126cc8d42f67296f687311ba62d807d15a74fc02ff22636468329fc9af4d65a31508fbbf32f79699e19102aa6cbe0f54d34d750ee322eca2652158bf4b265904852656dfa2ffffda3910c3f22c0d5d308d0f9bef119ff67ad68d8cd4dd7f81eb6e3b61c6d063d9e2e92637832a77ea16abdb45935b07e6a48d549dec5dce07b75eac59609dab8c92a220261ef3488a877dead3134da0ace8295f298cdaa71836ecf33ebb90dd64fe1a91d7bf11634cd7f6c6d28f854a67f3b4099f7abc7c801ffe5375e17fc44947f218d99282e4b63eee7e013936322c12c420a0e731db5bf1e448ed4d9bc57e13fbd62d249ed93b7b0b15861b6b3a675cc85dd5520989108eda0a93b4a0f8d70742c524726dde96c1001cbbb6516e5d421b1afa8a75cd7d6966ca5dd9e281054965b89f0ce9f1afaf64297b582dba65e47a78231d2ab95d76d2c2850f94e4ab34c2dbf5403950e4dc1559429e3c0805588b4891bbaafafab5558f3de40b2c7a7db305921cff13940620b37d0726eb92de69f317b77cedf1e13c55bed3d2f7b3e3b52d43755c16723bb87bf9e31656f19f14796a0a682adac4aa1c884f1a4bbf322595d811c3ef73a76d1d9d1e66b6564d1b4eb7abd30465108dc2b60705d159d02aaa8999eca824628ccf0d4a81cdeb6742fff9d29993723bbe72843b84a27a1c62b11d30c94571865489c7988adf2b4428fc29ba4b1805674e28b751ecfb043b06ccfc5cbd5910d507751bfa69c01b56573d7a8f76aa46b5e74e03c238f6d2533f14efeb353ef13808f1950d52e38803fbf217e9014411996668e1c24cba16457cf4cb400577b454c9979ab19c4684e83de06b2dafce7034be26cfbaa28c1e2b5987d38293769c59d1de105523b306f20b6eaddeb7e3145cf4b80e3b59a5738652f03f1eb77a71ad8ac526a1cb033ff0f266b52ef050d2941fc6e5f3723a623be07ac226becf8c34cef770ccb025f6ac6741141c913013d3d7ea46a82d5ffb3cf21105bc6874f4461783f494c963515d9aae6ade78634e144795bc1dea1e73b25df4c6d8dbd70b3b54fc950b0efa86d56408c8370aab51f5194f1241d5ecbe663610cd55cf84b6d931dff951f4d9c98500f2787de8720d9a5ceb08ceae3399215666bfb631075e9e5e8b4318bddfa5e40b279f14bc766ce3bda91f25dc5a1aac1ecf5d57d5888b29698fc55caac478d9bac5ee8ea1207a3b4969987e9dfff5e2b20520fe353b7dad6c42"},
{"000000000000000000000000000000000000000000000000000000000000381a", "00031d3459d877ccdc94c47f5d3bf6d5a5c51204136475cd28eb276957ed86b78818440c422c4c5a569604759ec2d4c4bed2995df3d39a78af39901a0fc551686f8edbcda0a753ca48870edb7cfd9e09725a2b300b610e19624b63610b2c34d04efb970a8b7f39dd0410fe7dd340187b49732e8366e07f1d71bc307e54742ab3a59c0fcef57736143770c7ce80ff89847e808f67573efd70ebf101b8b30cad0e6633afd8715edae0067302ca7da030f1398454e4edd987fd5f18faa2d41813036bd5edf6b1a47761fec53af3d8d75d5b6b873b807408a8e6e33988c994f268d7d77541fb94a32d4533f72e70d17c74abe675d9774308068de15784c60ef60e1477f90eebf9b29309eff7c0d32769dffbf21392e3a18811a28f1df6c29faf1cdba8b1b9f256eb212d27e1a45443a19bde3599ca433b217a70d6fd392e2a3af2bf9148ab333d8422bf63fc656d36d9f1310278169d3111b40db0fa94eb45375005b9b9bc847a154229e47c5b0d5101f67833d97555fa79da1b102d19566b7cdb534e1b98e0941ee46fce0d432536cc6830c5a27586e0ab9d3850e5114cf33a42d351fc523027b03be4fa726309ea3ad6bd42c3477ed1117bf9907f54165171b0e809ba26585f916adbf65d7adf812e357989e65e62d7d563ce448d25fc5ad9370dcd9ce543783b2a4e6ef0f399ff36548ad46cef1b235e2fd7039e3fcf198b323f213db676163f784f53283a9b8424b82660d18c7269e26bc357bfde4bcb68321d442b06f816d09b0ef1dd07f6b3d9b3e24e29d9955e5bc50f071275eca982db742252d4a79f221a0ebc14ae0b0615e250ad570a52f942b5ddd3deb45b2d2fdb6af83dfdc67e0477e9d9c24a36ef02e1ff62b460f73832216ebe874e5079a11346e9be697af9d6f8429eb7ff693625368aaa532354e9b7bb0aeeeac6a91edb7ea80038877c584bce32737be215d8cc8c3e267792ba0a07065d4a0959bc14fb1bb39810233df73447dc6577027057e232125489f0a8707fc84f82b4c5f3f913a31a1c4e73d1ab9eaff751b473885cb5bdd16ad9ac91085180fe21972595ad543090bad2f46893dd79073b90cda659f66cbe29f5e10a89b8d6561700e6398e941fb85b28270afd7fce7564f2f73807aa6d47d774a0514a9f9d0e5afb03f70d55939d38d44da3474e5f9302843e3fc682628dda6c21014fb0475add71dafca80e5616825899d6c75fa8022940f78fb220501e0c19131c0de8ba5b0da6e5fc373f62feeeedf9167f63d932f703c59995be74d9e395c39f3dbce770215e2bfa0285bed0ec3274d1f514514ea81b7a74becb34b5212ae9ce81abcd32550b077870d7640eced31e1f8bd204a6b975f1925639a6d54369b49b5ef573646cc8b83416a3a42a9da2cd9019752a94fe5e715082fa446602cfe57b804651c6439ab31adb3ecbcf1223f94897051496285c144655729fd578144819927568fae6b50fb8eaf34c6b4da5f329871645748f12116f15f9fe46809cd9cb713797d7fdec04e5fbea0b1e82fe4036038b004dc2e236679ffde054ed8e18547e2bd5e7782da3cc8463cd8524d65da2f68c4784112c6773eeb70722ae3ea982a13090db11cfed10715e67b3d99aa5156db5005cda71e5575883b373abd2cdd50b7519bc032d601d25dcfe28f83e529827b9bc2f0ecefdadb1331a7c97f70ce5527ca263a7f1f68bbac4d67e1a0923471dc7cf4b5bc7ae0b28059a4bdc56aaa455b08232cb449cdf134de9114d458603dfaee6a1973e56f910e9bc74641623ed12e992bdf32c4b1985459a0e0520b957af1448d9dade2c23cbce2c0121edd45adf4623c014696149c76387220b1aff5e946f273e7d2d78298625429d90e1e3eefb638d68ef59c5c23eb83302"},
{"0000000000000000000000000000000000000000000000000000000000000270", "00857b99c44b09aa8286005e75073e386a62b7f59c165cbefe6c301f09f41b917cb11400fe4133d9053c33ef39ac16146d213400e9f03bfdc102bdc09755825d0ec69fe6ed8875e2b06702a47ccbbe88d3d7c799065570f99605a4a7f9bdc079e0a1fc303ff65ee0ca144196f10894c060cc71f6817dd53b9ddbe491c8a424e1a982b5a320ab7e28b33acdaceace1742b1d7962699c1fb8dafd4e1e9082398a2ef55af82adfd687601fd63524a80a3b75d0cc68d37421f8e416e581c9a1e2e5917b551f1cba6cd071037cd06161b92d8ba72128c4cca478be1f1d1df83b46e541e791d1bb96cd41741cccc4461033928c8d18be3a241d2dbf53b99fc1d1caa091ab5b34ffcf582d58f4c15c1e4c21502662faa99fab04d1ef34a9775772ddbe7aa78225fe36d41f6d51bdfd17464cad776f628d38d39fecf7ed05a5f2a8f87adf0dd15d2ca2643db3da1f608753a79c5018dfd22aa04bd5240ea20a9ec7a810a454ad9466c163ce472c60f1842f3b1e19d69972c0c9d0fa6508333a8d3882170c6f5eea5f373062dcd214f9e8eb88536b86f6a23d31428b3be2676eb59a4623ce718006709f282d693a2e543d007f2106af79ef55d9098d6b93bc7b413225d906358a27790cbefaf02eff279a3a11419b78c191a584f1ffe93743eb82031f85478510018bde1555eaab79d8e19a73073ffa0b221835a77f9019e63aaaae043530266a4a445a796b5f904d155b423bc8b84c375d321ef1f95c86b5d5eb28e69d72ab40b831d0f62d1b81bcf4391a3616e7fcd31d30a2665106c65eca15a9eb3d3e854e0f3ec52a53913d23110037a7bac5c0559e27b0465b5b160a4eec290b7479e241e79556c9bc18190533780ca5b7a86b2ef17c3b3189a7ceca20dc70169f5e9cfcffb04f71b5bbdf01586afa5883428807fc808888a82e1e24e466b3f6eea011da3d6c184d2877a81311e6e7429b3accb7eb9f708e1642821c6300fa7be00923750525d4d4eb2d95201fa4bb6c8c8e638d72df7b08d40ab7e2b5c148c2065d894c38ff31a9dcdab26dd62470c49baad11e83f25979f3753db5fa1609a167d285400fecb2d5b91725a267ce6f4d71347c613d785cac3c7429db5de88d642331d3d3014194320f785b86ebe58099f17777d347c716ca383df6ea78c07b8729a507f0e2dfd9dcd7f017c6ba2751dc1c91e5098d6994c4686b8d1f7ef7e28615572217097fdb3f1329fd7aaea2dc42d742b9804f9c8e92e90a5e1c969b5c2717ca6e6a11e16c71e2487d1753889c5b36c4663488ba0d210f5d1d19eba075dc8677c50d334d73f370441f9275fa4b8de7f4413fd575af510041feb78e41353afec8587e19371511164ea9002d97a64e82de283895e7ed155be18a31535af43a1b5159a2368a225555fd3d4ae514fdb279801a8d33a978e556af97de25ed81f15b0a0b1b94e551d4edca48b199fd1afbc02aea7e77e9a6144b7312a05cd9965eb94e375d8cf55cc54cdceca1d379873640f9144be33f1053fe938b1afbadbfa8e5173b6032405dbc10148d277a4b2fca1880af30c1cbb075678861f93b410a4d63ba74375932b7d5385baf1a95930500e19d593e3d2c834d860e277793dde28c621b890052d3a4e7b5f9efb7b1757f2dd207ffa7590841dc62f01f88b65f6228d4715a57056053576749c6a3dd4d11191c3c1e5c6f41f080aa2773e4369faa37f3979c02aa4a603730c9a92db76c41698f529b2da461d8f303a8ab4472b61b963b406b68429d62b561ef83ed8d417865c76681223f6be6259311a5b2e4ad481782bb41e8545b7e1d1f709c9d7b62915ef554db6b350037b3314fbe3cb2f6a03dc6ec3c75dee54b9afaf73a27844bf0345979179812425e5221e57f176f9fc9d93c1"},
{"00000000000000000000000000000000000000000000000000000000000008a5", "0003703e1f2a9869c342406284c7d828357c1a5cff49a05fa17d1276b7b80084fbd2d831338b055e56e411b4eee5d0dc950f0c33117e85e2d5e46fc9ccda883a5f67beaa91b7b0da00d79a15e21ff2fac3da0d060305a55397c579943cbf69df1a69da32c5f31df15a0c3e4611c5a7fbadf8c6d2d7715d5b7916a65cb8950ed98e1d2ed5545ef46b64aa7dd8d30a415d7389c41801ba308814b7397535579322c7e6be2ff0f5a4a802a68bc49fb54ea5de3d73786ccae32e1e043bd7df0c0452747a0a5e41354d01918bf8b4c0aab27f6f4c12f24ef77908215bde23516afed90175f69759db1319d12415b8c81ff150cde4b15032e021d050aeb3be151e35c939892cd529c8918cd0a39fa90f27ce58812d161cd96ca68c87a667b807e3d9b91ea2b89d025e22abbc345e5fd7fd5060a44436d69856e7c01a2a02278d9e9962cf437197d1c510466a45f777445d99fb027d13bc6b0ec90c79b6620c655ce7e587e4d003601db354f6d3d6222578bc221a17b7f229381c8bbb260cff2e111ba3a62b4780658c927de1aa4af2b6b8481c0af9d032e4eeb5b530c1e4e3fb2cfd34630aec2606fc489c34c8b48725bd5555df2f09edf44d9ac73f0b1bd3607704f1659395114fe451fe5f38b03e9a680fce33a44d952e418edbd4adbbe957761228fd19da2d43ded32c93644bdea5e4b4ad58e465fdc259454f069c7a1bf48c8c1f91f3a45568f5eab66494da0cc62d49860f5a9092d8a4aef3230244271a77aa355358088ed8d9ae08df4ea113c3822a370e01de34aef50815eb7e3a1a58a224f5df743831b6c272f47cfdc00a14e8f756a118c444e829e54c877dfea957015c038f1fe22eb8ba2489c16c801300a4ffeba59f7dddabbb1eef29f075ce3e8f7dc865c49e32630591de74d2412312076a6d1d797dc2c1c6d78df31021d2b772b72102a697b863d107d5abb7627545998ee52681ce488814a291cdb3c859f3ae4f06cc436a5ca23b82bc3a9c0773259a288c9ce9f4e27a5984e706f32029bb88f61ac35707a2ced552b5158516a86bce99ded4dd6e0d2319beb6be1540650a97a410026a96712eaa6b9120232db16402d33fc6acf0a75e4dcd231e11a8542986588f777f0cab1fcde08b0a2f0cd2ce36bbfa97dc5069289dd1051bf506f17f1726ab65df45d414baac8504fe052f2699f330ea42b13b3c9af520f8af558a5d34dea4ff68964f26f4a2f35076dfd759e3a6afaebd0f549932fc0590dec9ea3505d16daffeb940f8e4a64507f25a2ee792a57097846b29524e6d8618f7165f0c276eeaaee776ab69fe217f66cf05fd8afa5fb45d212fbc2ab10a4ba7d49072874ff4dd522229dd31a9184721323019aaf96551129e94171811d1dcfa331f5f3686ab7ba581a3a98606e35bc5555dbfd9db4d7c03414d7d8ee0eac3103df036bdba40a8a03437cce7244e1f490e1e6c275a6c059673fd6f3985c8d8d5640bbee197ee4a2e832baf6231a447ec79598c7cd4723227ff5f2da2a23155c8e607a9b8da6dc22395f28f07bcb399248adb0ea77440e2b24abf5d849971ebba0f232e09bc68e7f1968763e4ddfbc25eb2fefa5d2f165a42fb67d606cfc3ef723ebce570856b56fb5b4e2a73fb4270d8ddcee3dad7ea03f8ccda177f752e1e07b23ba68d686c43dfdbb2504bf13b8e08e75b129d0df00241679f72efeeeac389a9a964bced07dff2af08af67710a939f0da566d1ff1813b4e0ab4e7f381e78a527a688a50a33df79bb7af4f9da8f414f3a88770979bda57b05cd2ccc26d520a5bc708bb4859f15074058ce3bd71beb8f94a618b6ab5088e6fa3abb8e5f0ea9619b455005bfc19bc3ececeb41f103e1e97ab632692763b4a3ecf3e8cfa3e287673c21e6b30fa293"},
{"00000000000000000000000000000000000000000000000000000000000000a5", "007363032a9d0cd1045df0c6a8f541d440291263e345ab659bba2e83efbca3964ad6f3112f866d7ebe6909ae4ceac14a4ae28b92d6f2c53e77372127fd2e3f3dcbe1f656917a9b4fcb7ad26478a56ee3b5da4b730eab2628d1547d80cda19122c5ab06905981b270d232cebdb17e4ee6d72a50637da7a53846530b9f5e26308323114c7c4e4bfea463a16bc23af637941aee148c8cc6dec67e70cdf389298729e4db5f1eb119e5dc05ca0bc1beeb5651611d90a370caef967cecfb2dd91ca8d4bf570886f5ec21552ba13757c37405de0f360832e61222de1b3da3c4b0efa2ab080e58cbb629b32f9e31f5585134c9d405347aeb4477be0613d8724a07b55c581a50e380cbfba468e8d35c1e05f57789a10ad7748fb9e61711513091a09d1b9e6ce725cb2b7c0b12e9e545db2d9fbac3560c5dc8dd35f3ec9b88c5105c4fff7d5cd5a9f5771134c954a59d30af2d444d008088b3a72c8cc1a90340562be178e1f531fab56e075075010d05ac0b05aed195da19b7311b97fbfc14136369e33e18f696d18a11a07f461fe23ef29a48407cdee5ad2efaf827e0cb88eea0793b266ce79bd1410096ea2fa7727381a45ac1dd59f538f15e8f333a000aa46b42220c21d666dda1b4e6f807177eddfcad7014c7fd885cf0bd5df7a1f48eea4ce435ba0a35a91b3cd8e786c7194235c458f578a2d5646ad2b77ed153033feda056d03961b39aa45ff641858d5092d65b9e097dae4d80cc3964dac4d18328a41594ca2dd0ae6d6159ae53b5b0cd8de443b80ea0e776c789953c8e507a6ffe998d26f227ff7e6c74416a10076d97bdcf980d66ee329e7565d1d639b3fc285795911fbd11a67f20a20c8201d557fd744524a07df8ebb5e92b348eb22cfe3b854917532d364442e6de35a3c1df9fd694204ccf44a170df99e50408052349ec1d0e95b33fc1ff01ace97e3886532a7db043b4467531edde95f532661acff3f5f8973b8b5d3fd39edb756595b02f1c40320cd8d25f38033bea8b83fa350efb4a9bb7b69e06a912b414df85d6d1b77d4cc34ceae6dae8df29f17bc204ddf9f2bcc4e4fe6394b362946b716ecd6f7fdd9c2c5193c94adeae85de2d983d75e04b46d9187fde1c1ba32b3488d9eaefa37411d22762034e8832bd62eb276db7d4641fa9315a1f936f9a2e8c21cde95c9af103dd48418bc2d2e0fa388902f6f62cdae2c07e79810b477cd7a9d528cad45d1d707a77c95762ad9fa0dd1bf3592bcb920201a6d6443b4ec25f21c38b346d5061ad73472d1c3471265df8293e4f21124e1795e7bc0758a9bc840b4df4d5bc849ce6fa89dd605334ef650c78775a8dccb27fabb993246d458365a62f5a60961265fb2087a5a94da47443e8d3ffab5994eab3b42e35cbf9edc7dc2eacea8654a0d2db7af5dcedd5689801c33561980b00010fd5151dc0fb3405d4f318f58009b50e6cfb4e55d0970cb8a3c9fe88f2beda9c798308ad87c6601b492dd35d26c87bf6cd71fafc3b22151b1d1d147df86977defbc386a6424ab66cec37c41f054399c49bdb1711c90a285cf57fedea1c6bdaa679237b4c199038c07dd4bda3aed87cc7864f597ea5bc05e7861d81ed37ab99159467274640a93fab79d8f808023faddf28a1cf9edd0507fec56705f14c520ede02cd2bb7bd0438c4c55902b857ea2d06a9ea971afd2260a588e7d9542ff0d522a98a3f372ea5375fc6a70adc25f5228c468935e7e67f44c11021c16638f795133d0798a032c60ba959f8d864626ad6a7c61b94ff0436b1c9b20111f48207d2fa6618c0d1959a7a5ba10cc2af268792acc4f697d1b20e8e34ea8e399d39151f17b926cc13b8d5053a12ddd5238f336a1f3c21002a759bf4fc5398e584f4e38517f1fc113efa34cadf"},
{"0000000000000000000000000000000000000000000000000000000000000556", "003d75ea1757f9575803925110772a5a19c5bfc0d6097944e897871a13dac8f28e009f42657b13ae49480346774a6fe17d29d9d790c2f1793445e1253019f925598194932dad71e326e38c13f53909f812b0f663044f099edf42d597c57102f8369a2579fb5bfd54b90513b7457ddbda2b06e17338e4c24b0512885a0b9605f245ebcd072145b5fd96109a6e424336499fb2c325361a2b4c0d3b5eabfe8336fd497de6781dfb16130177dc49a096ce4b67cf31089341e5611e4fcb728e14ed6c193e321abbe068c1db6577c2549379f97ffe0a184e8bdfaca6bfde85b56751acfa9ab81199812430ced3db08a1cccb5d0ee3c031a6dadac9aa96564604261ebc3ecc82b2f7a7c1a882ef3c7a0dda35967426001135e51a2b5d6712836d9d780dcdd3b11cf78b1125834f45ce22c5f30bb17cfdec20fd82325199762984bf6fe15cc459a740e50006e1a76f1558fe87780111777de880ea5e170d708346888a3064f6524ea4064efd3ce54f889b0ab57887a265dafefe183c0d9a0aec8943821e842b5fffc631b0386885c6d21dd64f48c555bd8728b82daef26a49bd7156069729bbe12908dc03c7811fb3c7e94f5299996db0662d26fad60f19fdd4fc075d994b2c2c11e8d4aadc2dac50f31f700fa5bb4cb049cf6bb80ea5c4dd77810653663d40fd21baebba9d139818b0b2a6e249f55075bcae5eec97071f88f814cf85453e5b78b7894b5a0e4f953386b927ea3e5c708b494b736003de3fb7df2560a85547bf0ec2167578f1653bf5e175e7897226f6b2dc1da27240e85da0e8a2f5f9eac4ebb2b871076afd967fd2cf23cf6c35aecd7c2eb2a8f33b0da55424d2cff8dcd84766952249da7be8df5ef47e8cd547e152161e9c48289759c91acbd4d8f8fe4472cce3e6baf71279c4603ddf52f0e8e634fba79ee5704e78fa9572cdba53f20096448c7e44a98ad58545cb21be058677eb97d4262e66b63d7233345dab752ad96fe5ecf30faaf9fedd350e37b2c6d55b61f94666235dd0fe8b29a47f2ff35c1596ce9a9df163a423a5c984e97e7a3b351e026b036ccc3183a7bcef8c7861801df027736b8fdd38973005ede5798d37ffa39e5479444d5f6b7b427dab7e1468376746255fa16dc65238cdd30d8268ce7cdfad32d69d8786df101fcc6ae5d615ddd89ecd6c5e10290504ef975a1b5ee6e55ed19faa7ca2cdeb2a5f157b22b17d25710967dedf6174033f655eb90a4a70feca2d50c42efa90061fd434183012631caa4fd55fb5d730592a50f8e35ce1c42f26d617ca463a0e8bd8e844065f2ddaf16322cb73875526cfd6add22f7bb4d00e68ff4c2520245ae92e065a0033eb183eaa7c565ce210734c1a5f1d3ef94698732802cc2ea305f17e978b1e5d816ba692093090ec727a9b1e5edd265f7970c701de2c086ab0fc21dfc5252944c6697e60aa1d45ba0713c9331a2d49f3f861e3810770247a45c479954011d84196fe616939d4bc87e3dc4058af504b1b71a91236a179be47e774d4cd160816654921f52938f52d03eb8b82098b0ad9dd6b013446a071394b8bb2fd2354f5cc85f61c579d1ecd7895297ce2de46faf40f7c1269efae41ed7201c6f1559eaeafda2360ae1b17d82ee474229d912a0f6094a3bd804d9e2629c755060002ebc7ce290ef75fb56781f81c6c16ed367b2c06c77a845ccd74e1442d725c298cd9f6915747607d34a80ac9059b0e4603cf97e752a1f5ac1adcccacb561de0f707f18de4a7ac7b4dc9631053d031ac0fd381a6203930bb65ecc0b36e1b1d262cfb95f7a585f95795d4334fce09bec601fe7d3b505ef3b5cf54565b185a40d04621d5c4ea85c8c36415498c59e29353f4d994f2656d2f82692dad593f3d49f684cbceecc80ffa29d"},
{"00000000000000000000000000000000000000000000000000000000000007d1", "00aeb44d7e06121526c0422e41f0069e1a2b9f4a020afd1e6ac00384b84d3d53d97c7e9bdd80cd1d9567021ec9c3704b9f28cc6f725724aeacd59b3a5234c024b5e287a6a86653c0ae156c4cdddffd628c32732409e94772ecc9476b9e8ca34bb3a6c434db5b301af035612f583f0f02d7efad53edafdc1a314a991bcedd1265a58749e5c443b0d891e12c61c1b16cbe50d9e617c5ad1b0ba737f1fa3921b7b968aa75da167e96fc02c6c74864d76fd78c9218d5aa6fa3e27a8f3e87160fc9557b8c0d1bd3ad37219a355e85cd7b2c17cdd60727c673606d595bcadaf1855b34dcd0f9cdbb745c3ce3eb235130dc7bf1230522553cec4e8cca155c3702e4c4dd2524fc47dbd7b16a2ea90b815c2311dfb5178fa138d65277e5e125018266d534b1e997afc21003ef6cdcdda029936ecb40dc63518a7a8a61b5b4900463a49c160291cbb03e725d116d3a4157f4dcbaf50351c8918302df255800611d5ed842d8b9cc660ce704200bdc664656536bb16939a5f3e092aef657cdc30c1ff956e0ebc8bda4c4760c7c5e22cde9935db2cd1182a427a25721477bf7f48a2b790bbd5e982cae960408558035c50793c39283f0b7c649398faa3e55d834114cea6bd72617d809ea2c4276ec6aa274bee2a9144357325d49afd9cb13717eebf89fa50b92aab01e1d2d2f6dc4569b7b0af4762d41bd4f11b4badd2433074284266ea281e13c1c45b70ced9d6e5ff09358c32345d7deafe7f4519557c7f33863c6a299f0b834783e21a7f3f8735bc1f95264327c5f5e098940de415854d6252e0adf7641c35376baf343beb1d7b57320e316b1e34cfd8a219b273e28da17ca39766eae154fc61c98ab96e22665a534f3562056e118ba623c7a87872909ed07ebd481afc6fe47d711d7129a8fdbdd56ce2c0c8afbaabd1e11eb163311ddb0a88594f537d3c80271b853dac925b99fa9114287ebfb11b873bb96030994f9c9758b5a96965c339ae7ef97c2c11d7865fe0fea5a31c5e2a2b1cb4d45fd2af0081eb10cda581f703b3d483e653cbb6363a9a31d7ca7dae0665ce81805021f432395627b50f852aaaf43a8cd432c1a1a463a793bef4bef1015df442474d1719df2a769f73eee22f341e14fe2db5525ed86df3cbff329ca33f228e8253073053ed8488f445b32848ab4751e4cc11963bb041fa557ae8c4db7e27100bac59e8c1c64c9b777a416c5dc88ec6a1bc1f13a4392009fb6ee565eda6aab0b1a831a9035d49bb10497dca74daa3efe9c3ff7a253ce7d2572a894997df188d855ce02e3acefdf5bd80fc217cfc56ee3e5eda231d291c815b130b12c281d101712f18a9afb8b9d2339b2294e262a76367e84da25982c6ae81b5b75892b7264802860952e98d5754e400c5a776ddc15b9c16d57ceb173a49b693e5f52fb0344e626dcc6353d06059b8ee8796c2389607fbf680a2d3f6b53875c38fbe1a672643b754deeeab7fc370525f76889503188f707c331eccd47b8df4e2f884028454ba10a92fd2b9845a329aab8d2f769c89d8abf053d897826cbfe94faa326b7535fb5a5eabcb07fb74033fc84e955271ba73ac8d2cb6999e68cf5df730f08d020b34b2ad6fbb91ee0b5241ca47d294131ca7a1724e35b36cdd007f8009173236af0963554fbdeb806f12f5a03d82339590ab666db5ff546b3469b7e38117d3c5856b276dfe50325f930f886a58ab7d897dc21851173e6cd72e98445e628a44fcc6dec0b18cd434321eded229c66970ce1f75950dbcea1ff27d829d6219b4c8f3425a883ef609520f56f8141ddbffb08f33ebacb078ba27aa3652c145996c00d1d1d973d83053a81960955aa4809fd7f3bbb9afc95d72f1d3bad543ba9baef3214cd26e048d3c31f3af18512183c30b9"},
{"0000000000000000000000000000000000000000000000000000000000000ad8", "00366b8f109695c55333509096f3c8c1e29418145a32ab8a66bce2b3a7615757976eef5f5fb7e6be4a290fd5d18f73c84557b91053e8b6d5eb69acf37818333e693218e851acf4a5340a7ee063ff9321b8fed39f003c363bd6a8c363e1202359ebf3d9a514999600901003177a4ae17d9bd9a052c0685e9b6aabb4376e5605040b4e8901b78b6cbc165338585b4ad398dd6aee2e679bb04d8da856736194e1bb68d435ef15501ca2017a6256b1824e3905a510a34e592ceca8a37b579c3db3a208662faba7be4c642e7f39f16da2edffd7ea33fd766fcde5b2ddfe13364f1dde862a554776ddb4540e845bb3d9684ffff73a04c0d2a43bb41b7feea110d8f272c5a1ae0d545ea8c0b8ee8c9e440cb69a7d50c3dd78ca6a765b763b66ee9bbd6e6379f69e62cb117b4b5b7025cc5d36b4b2aba33c738e8919b606251821dfd423060f698c2a03b636f20cfd1d8bfc27ae01940ef3b2202271db504932f9d49a6f625fbd5eba0978a91681cd2a070fa9b151da2ffa617c08df98f5263f4f7f1e5535853ab626955ce86f75edc05f2bce2b8e132f3de37b47427ad6c8917bad9efd8d3eab9203ebfcbfe1e81e99481b713e5f9fb8d53670ec12f72b070b4bdbfc25adfef1c4456d61f57d3002b454f6228c0f25804a94a3bdc2d7bc1f7cd762471c76fa922429a7eaddf1c055a518544c66d1bdce7ee3d888b00507b5ef79d5c4e9002023c30c263f5a90d3b565301abbc4af2d2004afc73a998562d8a08b22f11fdc1012d1b1bba10547e4ff0d4452046cbef985439c115c2b2e03be55ec55d9b0f2e6e532e90eb34ccd1ec780060818b6e883ad709dbda122ab7c52d6ab29f64ffc2704d41e55e71f2fa0bfc2f481cbef5556df72e4ca0723f14c880444e49e9d88260151a66f1bc41a8d3c12a0c2fdf972fd75f367f179db1bd00964a47ca1b602b5f1be2ad6290fa322e0cf8c8bf77c3ab36adf4116b766a5140acae7f89c4282e23d1d2996d0f7e63e16eb59e1d5dda73f9d2b5464efb4e9b7a1cb9d95d157f1b4644a9a5d90f17d85f918ba50aeaefb96200502bca8cd738816429e6a34885aadf99ad856b8d38e03cf48943242771f2acae068c7e4cc9c2c919d96c60a5f778509230439852b13a15442dbd217ef9864360efc888e8adc754f3d3752e3fb5f65ecc298cb9cb302c7a36df502cddc846674789bb76d8e2d49bedd99196bce65c41c5beb5a9b64a3aaf3863e26d7b55af10e4221a1ff4437b47f2c1560123dca21d85ed61e261e6809b1c06a3e73ba52d36afbdca3f96c135a427908ea6b3f6049671fbcb3e1412c9ab879bb2797f3fb44033cd8dbdc6bbefb0309de6be914f6c8121ec36b0dfab72feed696dd1425037b933eef48eaae55331233d7caba161e44d8f49336f078c33f21be44b354da042259012a6575b13f712180ebf534f20a80930f0b33beb530b0584647bdfc344f21c64d5eadf7dd0af61889fbc6f2c76cebaac4f5026bd0015f4d1a5fa0d9233bc21535902a8e8cb912f322e73f08d96c1a69110e58cf6b80202183b70a4167a41fd291698b19ce98106f84d167ccb69b733eb5fa2db8941a4b959a14cf12669f1832263fe1b213c29e4839f919a925145e9d229a9d5412f406fdcd68f42b07b0e68e04bf93fb2604b4dbcc20ce4684e7fa11e1d7fc49d16787db629a439156c1aeaa28fbab019b55d9647df30be81f9f28076cc12741356cf5b992a2a3319b3621450d1ff3ab13d632d121547df9454a44b769b29f62fdcbdfbbaf0bd75f18621e43b7c8d6c4d04f30bf933a7e7c5e2c171225d83556e0314e6972607fe65e1ca2b0511b8222bc9c1ceae5d7b79340a3b9071e8fd530158c164a2e5aee5741d3acdd2ac163bc716438a9d10ccedd91"},
{"00000000000000000000000000000000000000000000000000000000000003b3", "00b8c0bba0c9c897e3f42236a72d3d159d817f61472defb97ea1ec43e5e256b7c551e39dee023677c18812c290a23c1b15830ca511e8ec7f4a3535a8fabdaa30d2173d89a8026dbe43a5000e42e14ec17c3aa3b6015eac61ca18561928f11333a03226f5b33f1433f92f151ae50dda780ffa131636dcd2705e4dce98c8f103a4210c6bc8911124c914d6b131ca7a28b03e39e6182fd4a9a69b083b07af87190c433d03dff75fafc90884f760ba1538b3b36473fb2cee9b4f80a2ddce673bb67dde1f279b7de4fa791d88de2d7f70ab7d74811512f2f400196ce1cafad2e451c6757e9dc5d7dacf32f35cd6dd560874d1124491676487f5312aeb508f08e125dc06525ab0e77064d0a7da2f93d0541eb23c168dee7fc687a8d85dfef641547b0baab2cbbba6a809436479fccf8651f957630a8f4178d4e4ba8b4b51395b92d37c5cbcaf5bca35f1143b3aae6fba1d07be0176550fdc44f5af09a0031bb0d3067fcca35ff9e00d291733931f349b7f39c41bc7f28d7f89477d052802318b9c799bbd5dedea26f2efc3f7ba4a4435d66606e884787d157b0cfa3c69548adf8e92b46eb6738b02190223d551449145f91684aaea3566276d9696e43ab267deb5d873eb985645721fda0966bab09ccc5f06b0c7303301ad85570d833a4d9ab4c12bfdf2f293343e99bfcd212a2b9dbeb439e2e89a09b8b41a8d3504b7d752389a401b06cdf48bde2aaebd80915a85b82c1dbc7a6e4ecd356f2032f053f9fd4e21ac57818d0f7f9e2233c56f223fa98585a75e0a0de4a07f3a551a1eed947c8b077b0d1a787ceac6b46e30c033e58013e055c4660e19e1bc31caaa7f5df1f7542a5e59dc3e5687346b142b81b122e8858d526b6ea67a9f7d942d654d9bb0ae82778e9d878fbbc964fa094cd302e94bc6ff70c37c36bfff3ad52bd6bc79098c52af9c1700cfe6b1d38a0a4e879e73bb7f22cee26263547ecd5a8ec5ded919ec0191d126e5917d3bcada24380f08074e64e98af89413f11490f704ffb3a074d851ee580d77e32ff6d1e29fbd11274c0575ee1614a5b67cf2027e1a04bd6fcd1de14ba40945e610922b6a3a73ad0340383168ccbb4b4069f13264fda7bcd9a4cad0001e570c8b58cae235a8d275bfae438049c50e8f1bf123f8d76ce5703f3bb2d9e5a50a517ef74b6d1f5da600e9b471d30e85177ebc1a5ac57c554720b7dabe64055132c80e391efdffd6110ae17e5d9dab22ddd13906c5007c2ff0d45bcd7e042e495edad9d6555a58162712f56102ec7f3f6ff1c72f74f12336a24837cd320fb62ebdf68b5e43719603a1d868efe55c5f9140dd36124462f093af3da445b6a2194dadafb4b2de9cdb1ddbac4371484707069e0468e7f28c961f7c7142741fb6492b19dceabbfdd013220f7920b28a76355ece01bf461ed5027bced2e2c1a279c1caf57fa5920e0b4bb093a8105bd88bb8bde721a4c5ff8e8e3a95e741029be844db55fbe5a77bc4ce02ba5171eb3f0ff5490344e74842cda6454b35f04fc227d444a80a6e02d105a9247a30c2253c4bc6e0c258776c9846a89d301f57df0ce2ff163419dd1127bcae65621ec8689e6d410f940d85e4c86a60f1c731e21bacfe1e6c9c7d6e3f2a3869b45d8e4c7308f43316dbe8d1c743fe3c00af031799f39d5a92e9dff4b6cc9368358675b916b09b0ad092473e2118f71c6f59fde852cb739ca15e024c1d5524bb9c20754fea0a428d8556a2d311fdb8bfa5274e3cd39ad036515763628adf1a2a8d2a1dea896a06f2498143211ecb4db7829c043891b1abadefa532216133c76198fc590178a36099b02854ff731185db07b0c7ba4f0334f998fc20c081c95b28ee83b36694365fd7e13d1855f75ff3146bd4a8003941ac513c76"},
{"0000000000000000000000000000000000000000000000000000000000000728", "028a9e3025d1b4412a3914f6ddfa9551a2ec7b53402350cb9a1c5843b326846964844f9cd2761ab8190d0ac01aa816d0424f63925148e7f55b4a10feba0dec1630d2c39fdcc99dac4a71f151a33d4e8711b948450caedea304b76565bdda31af8035a8d10c452a943e1c1fb69cfd89789f1da5a3506e6ffbecf894517b9615aa935ff31e9027745f4184e03eb614a3d076b5c124e9f37c841bb14d369a746fd0320bf541adaed4ac02c566fb0fe10c315acc112b211720aadc59d872552dc6bb749cd9c9c51b860763305c857203c19ba4721c28bc764b9aa81dcaf5024c0d17bc09af2213c9be66011baf495bcd13750e5934f6d4398aa0c81ae5761ac314e5b28fdba379d6c1e7c49460158d4635405a52879b47e09fa363245b0c23ea6485e314339e8e801fbccc7414f67777c6b1c456995ca71b7de71d4e85515ba5b4d5f2faa79df40abfaad9be4f758c3d2cd50295f018256191e369b10262951e2ac0a6054cb96e06f0cd69f144c1304527657fb9e68c55eb9050ecec1c6704b48d9ea9e920cf237c38dfe7454db83db4832fbdfe7496207ec3261d74cfa6b3b7727984dff21c10170bffc2cb6cf1924523e01575ffcd6dfeaf3e0710ae5cc224513fc4c74ca71c17eed741fb4f3b6429235d6e627cf587fbc3b1a30f8a59504500543d323a4836aedf0e52c7a777de150017ea3c622255727a80055ff22351c15b2bc72f673a4f4a913a0e9cbfd503087af234b3f2b027fd3d535f5fdb6efd89fdbe2a0c0e3dd48e17df4877732e3173553ae450f690170f2937579c17018fa21574b2b7efdbca81631a80bd08f105c4677171d82ee32373591df156f902fa25ff6b601abf3b1f4ba37009f34132147a388f5e487199e7720ae3fa61fb5ca69af75241cdbf37da191b7c0f3c1689557648beb38e91e893692f5f69a966617bbe9da50330fda891c6323c6d3cf0dbfde90e8881c308c67c17fe7fc6260c5339d3ef72279fd18de931b85e56e303664d014297b6db0dd331fdbbbeda21b6e494afed08f4f20fd21496fd643df18e91697dad9e6c9a464609969d8acf2e7b4d8f93711a83f89f38f9b0e86e9e17f5f10e5e9bf948fff5943679e6f179480a1c10610e585e5e2fc75f22a8a47380633b7128f4afb073f128b6cda6ac0aa67b366605deceb98e79ba1e969fce06d2ace7166f834989091180332068696a6f91e3644c72aec9c95e6629cd06a6ff8b6d28d6bb4d9bc0111e760793f88dbb30e6c3335d40bcb01d49088eb3132b206e67784b2f5e9ae2055ae9eac63e97af9c8ed2195a44b44b4a62ff9818f4aa43736955b1a371f7e37063dfc0fae29edf4c153b5866690f9b5cbe9c97a82ec6056943dba4ff45ee26e330dc224ee7f15aeb9341d11cdf20d1834695487510715df87209743d8ba903dd732a2fc60c4879b601b74758aa4d17b2f22dc4151cfaf94f8802150ccfc390e62286c5e28e9fd7890967596503f506cfef88f1c16f1577c1314a6dbf4f1386292195e5972d3576d27b82b7fc0b46c45a5b8d043e041ca3d6978f579cd215807f185cafbaaa06e03d49c44900e109cb130cd564e8e357fff364dff51443891dda0f519d10fc70874f13d44693130f59203b45d59b88bc6c20c7744cd49884ffb301959e8ee6c7053bd926260493ed6379859af5ffcf119fc1763bcb0c845f3ab1385625d9f4468251ffca2ebe0afcdb66368b15417898ec3dcfd6d3a2d949d56e3037f5cb6378576deca7e856e1749e4a0d747d2c4e9f5f968f5c0ba4e1fb25ca3753746d07803d5993f60b55bed9c5599525c1f8618c0ba411b9d174f2448f4ded5e205d0ebe747551c680fe775ce1442dff1c2d6c6b9791232c3a2eae57101a29006be97321f162b6ad74df656b"},
{"00000000000000000000000000000000000000000000000000000000000022cc", "00685ddb1f521327b6abf189a5158a4575b72cde210d4a59245edd28715d3e753dd544b81dda6b9b67f2019c5dc24251eed9c903319b3356b430806d55b16808d35ffeb0e56fa531b0f15b1314ae84cedf39d1c902adb2058a894a8102021203dc44c0f29e1838b5602672269b56de2d16f85562684c4aebccdaea4b5acd0c3e7ff98abc931bf9ed74032042b7aa8ff319b86e39ee863b1e58cf1affa814f65d63444d829fbf07c7019bfba89a184f5aea9e97f88c407b0b010578d9af498c1ef3033b997be91745d60f74bade12c6787098070c32aba8098a7148ba91381fe5602498f62e20e64ca29317fc5cbf89b58dd585da6ecf45b8ed572d1102a2a0978d6779279af2807310be50a514eb1abaf91fb15445d84a75ae791ec2c79ed5c3568ba79d9f2c0cd48c7a3304e188cfd9f41fbbaee95d9e3996702f1303f5faa4d3ce42f28106a9086317ddd225b0b471008400e81f5b912dda2b352869e6399563428c063e144be4a22be1c50ff98523affb5b0f9501b25659f20c2639d1e54b0b9bad96e30a3a7952c4f53a9c56c32a3ffcf2238aa3bcf57b0835ad59200a5cb5fd95d5016493cfc00f0ac1c3a3a086397ce3c4e1598efaac02f9b7d979c1ede65797b260437136bb47907a577a0ebdb14d751534e9bd0637304944ee8fc839df44703d6cafd14eb00c83b0ec94dcdfe60929711ad39509064a09cbbfcdf35d6a57d63025c91a2293ae9d5bb41afa970e11eed59bc93c97a84041af56cda01c4b0108a94d99e14fdaa71fc03161bb4f59f0c4dc18caa215274961d3528e39cde0bc2a167ad29f27fabdb55b077761879f316a41db7ea2039e3ec7b94679edce833b70aec21253fdbf4bedb55b7354be798c18f077b313a600d0bf4f7a13d5a5a266ca35b698bc7d767fa154beffd4ce29ee399cca06ddf5bb40b6be641d044c00e42b7dba4a0f265afc2043ef05e7b07dc747b4fb08655d3ea29e46e7de4202497c67ebbd89d4f7a82715ae722a669038969420120537c032918d8ff49e37843d1f2ba73343b9a1a70e23c6fc9b5f8a6d3d86f003e869cc69506e8f51a7f0add4db277daa08b459301f80ac7d106e93c1ca07225f6e77c2e92fad52caff0556fe7b8483470105dec5a549da7a3ac398f670290bb0b97280edf13f8c5be284ce2c9d5ee682fb4e99034ba38ca9a2aca19415f1dfedc0e5907b5fb770010981c214628d09f9626f149d6b30893145bece1bb90fc462db8151f02da36f21989d621cedbb99ce23b32247596928168a4f72318738d27b329641cc7398050bc2d33ffa31b9bbd00462c4bfef52d1c18ef3b6e6634d6c72cc5ee54bc3d7d7a4895ce22e651394271f1159d6855c0c2de9ffdc870ffddcc722063438de9620df89b1f59966eeff04991ae8538c7278a1b62363016be01ae9d2e9a9fa97812f522ae8417a2a7667f02d7f54f82327f74d7e5f48d148505d9240409644d708cc757719e1d6852e4d718fb199b6f0d02aeab5750a3720fc826c5803da0ef2823dfefad8e24eea4eda06b0519aedd81e47745744a6a8af19e559e5ef6db73a323333128f2a578227a4c8eada4b6217ee9449f315c610bd3d6288bb5668e74e3ebae55208541150001eec95c25cda16abb08262fa9a7e0afadeb35b185301af6b3b93f14243e4e647b383da13760eefd6822d2439199b39cfd7c1020ff4214ff0c02b2c58bfd5b90d178dc60f8b640d6f637208d92f96391b830d989318f7e63b3436b647f80f9416bf6832d117f49bd4310ff4b14d126853775e3db251da9cffca1df09f88cb18bb47646297e461fcafc4f556bd257a68a814e7a832c10f80792cc797cf6114e819561063328d7da7583b2bb761c512edfcbcf1f6b81b47a0da14e79ed433"},
{"0000000000000000000000000000000000000000000000000000000000000547", "00150450ad5048eaa719525e4920f869308a77de840a748122a990c028f42484a6b3aa51b6757e3eb7ad02a810a7c7dbf48eec9f91962ae40f29dd413efef16e95cc950a38b9c5c7510b8bdf654f9f03617eb0141b0588fa7e4be58744ce3595c0eaf1033d0abe64d31d4376a93d52650d9c0b56a2dd47fb61cb44112c4a1c3b9a73232d7689ddee841857e068ed4052cfde4a23ec0c3f73de7fb5238c37904b44612b2faabe36930074a25a5957d1f9caa6c10adbec46b65cc918321c1783827320061b70dc76a49c556adcd53052ea1026078f2b6bd0176e53ce11a1183fc573d0b20e95132d4fcc4ecb45f1b8abf4a08751baee3de5f33c3b7150092b450ab5c6d9c34a1488a68848ca968f021c06d64edf7f39d31bc08d27d579b117eed596ae9c37006b25d009d2369d71651d80a27a64eb497195cd144e1f27d18a7c16e2c2499c4d33ac91b07481a086328f63005d3905d806d47f039c702969cb3918798fd41b1e5a29c79a37e3a1abeaf91b1390e039cb1c3d9fd79d1549b655b2d0eb75fe6f6176d1fc08e96464b791221bbe5e4d1349e6d7d3f14800967aea1b4d0efd46b405dcf4c2b8dba259a57672380d7b0e8dfa91d9b7ed0d9acce599cf8f710b4431c4aa8f4dee4f46d3610b0fe54aa91425597b6e7fd57055af22a1af1abe940878c57c28582b96a78675db41e1636d6356955cb75c01eaeac08ce8f619be0a183574789b2ef3917a73b023b39d06c62256af43f9059093d39746b2a1de4c31023b3953bf4f399f7eee91b74b94e958d0259c715539c2f6c265cf83b39074663d776f304e62ea1783fd01ff0d1a03e553fdd4da030b262b22850672b460790593f120da87523157d950b3ad85c4ad9c0e189c5203222d72b0f6429db5b6d7d59ac2d3b29a5155171e4b0955004eaa5c1bfa0769dbb8d7403aa28b168959004340986067a57fae43a27ed0c49c0a0dcab32bb202b17cc908f81d1bf191c45fb56717812c8cd68f9c0329caeddac78cf3b45462f26158e17664c334f8bf50b6671f4f6e88b7831d2527e14794ce66e1568a7b0e4e95a0d24f2e98ccfaf8b205f64422d53219fcee21902571549863f36e5c12d40841c66fc1c0ffaa2b101b53f182baa2c3e406c7d092632cda2388152e39118a2aa04dc8bf18e73ef1b4d3e12f45585057b1c30748c5b7478baa54b6d3f1618836f37906fefd6152119bc963aa44d9afd6fc4242c494fedda33c93216e08ba38770c550474bc8a322d92445d38f24ab9930a15780b6fa7ec0f95f4c988000841e3fa72255461a40cc991760ca169fda4cfa3b24fa2ea55e85834970914b3a90e725b7b116b72026699ad011d0d89d4df5511ab11f0f5216da3e13bd571f334c09163e7d76c1a2229a9adce8a549d08e592d2b37b1181433c10721101fd841ec5079cfbe086c0b37f090349262550d8d6104841abf1c434273370429d953bea8112395f626f0252f7380ce0bb37342e7921f4e6a272f2539eb67b2ac1fb75711d00e55370e68cb3c031fa7d9a9696430ab811d84343f51dd12771cf3d72d290c63d7a62f419b4f7d2fb753057beccc1f083372a60b66df279c50ef691c3ec5cd6b93256a1a53eaa3c1cbed0cb4b8237db5af97393c94d9636e5074ec5661ad4803809ca0772cff53fa333495a86653c1377ae4f1dedbe835d0aee8ac8c169abcfa17d554d16dfab2a4153dae1740a8b6bec8442cff357a170fe89c6bb2dd851bd0d39219c2b88b9ed1bf58cd2868e7cceb1579797de22a910209370db957b2f4351f33017bae7dd1c668d968a387b0d1ef89f1b0baeeac616503b715a00ba30a3823120a6faaadbf0457898938ce373239defab589c0049520476d8aa8bebbe4fd72c5ae4589e061b546874"},
{"0000000000000000000000000000000000000000000000000000000000000483", "0094a2bccd4dd6b9718d843db64f86fdce01f65ba317b7a27f63dabd953c2ca19a6cb9328e1d73b769260978805111d3e135fc34a1f8cbc42b957b161babea254d87450d993dd9c53b042743c98f352af27149fb13ed7dd32c596b8db803541307cb1252a03fb58fa81b83fca9d214b63be31df1e7d0965061f0927de83e1792edf669d05515ca6fe7b88ce001f29720f6a0fc1f45bd2b1e08dd34655dec06f672b2db39ff1c6a8f01b8df7401857891c971306436de3a3a5d773f82901071b556025c95e9a640e3b80ee4efa10930311f060c79e8be35b5c395efb8823e63491710d6b932e9551898063614b803b5f6f832efe71c6acdd1a9749c0e041c9afd599250efec533060f62edb5cbd2a5dbd5816f8ace96e5d5cbfca3eb44b7c4d2d9ac7e5785bf6100be51d61e00a29867f3a3944e98f4788225e41f22a380fc61a19415f88e365a2e66193323b169910d001ebc096215c846ba64194b87445d455b5722f1c050a09bb70925f7a55ce76a3822fb80d1a22e7bc9cea13bdb6019ad9551ae3c21325bc3781d1cc2d33da0720819312687c1ce3fb9e43a395ee77f205acd6911706258ca258d543af2a3a049ad75db632d0f797bee62fd53de03ca8c2256761a65d6dfb505206fa9c690806f452ea4817caf4c34fe1ca4dec9dbc8e073f916e1964e5688d150c7cc0db0374b12db6f9bb3afb5e2e059217e568966b22e2b1819df98e0270f6e0da8bca3b2f9fa282966b8f2d7d27e9f157972ec8e33989de0bdc999e698d3b7fe4e6d11f66be84c8cda0763b6329b9f9d1fae7cd27a864080a21c6a40ab3f0f7ff880f7c443b04f879dbf3c5a2daab9d1d150a5574bba60fa162f61a0524e30c9490ff88c7ccd8dc32d1f36d13b45414cb0e6f60e05662ed54de8552fae2fd9f4038dffe69e3d204baa2d7439489f1ac461e345c5e8f046378922049f423a5c084a7fdc4c0b23b22dd5dd6148cb627a18605f19cbf748122a656a55d439ecdcd295db303c797e1d99bc174441dca8c2355a5fd3a1538cb3371d51685fb8ce2e7567c790fda592756f95514b0b557532423cfe50c8bbe3ffe77ab398d5eb7a057600af630a3c827f6fb55d24f32fe8aeb36bb2b0c1bf8918046133305c7e59521df4150f7bbea1f308f4f3dcc2c10ddc141d295766188e3c349ddbfde44f1061f70856e8713b923d8cbc56e7371b3ef2f7f9d2f4a81f56401a56595ca046ba26b7fc16335d87a6fff2977dbc43cdf53fd074c029a72c7270d9522d1f7da6a931792faadde6dcc12f99d58eb82f66d3959ae150e6c4593488411de336938d099f6bc6b66247cefbb2d544c42fa9f876bde085771a5f5f7f33fbc3aa8061285e31d7716dbc0b9cb2188ca43ac4a6ba4392319427125488d3306419d86172059d2fd4e3dfc92c3e705bc81dc8e46ea27d671d508a17c26f62776d3595b28c397fd9ad1ec72bef54342ab7708623d9a75fca311f65a8e711a0307f5dcc23be44b215e3ba51377fc19f25950fc65b3677917b36bdaf0e4b2624e14980a07c753d7da886e9d1a8c81d26e6055c0d680ac932349945c77756273afcefd680fd5679c52c858198c0c1d3c55540e5ebaa9b1ffa1db0711bfef16495edebb25289ec88a59bff79a788415352bc0a228ab16e89f0e97930a30df0113d5c811b99a3735dccdfc6ec44a240c0f04094d73c9b909232973c57d79d506fffbd2321011ecd35356db7f156759b36fa6da3b9b3eed4c7bcce5dcd3a2b74335e187c7decd494e642c7c694212c3e614869012199a07a68a2cbd465e0c72525c51361b7c363e904293e6ca48ae97cd99ba3a4bb6be6621d15cece7d7629dff2f14addb5d7aefe1427f79be291534c511210687373f057541352cae2357d89ec9"},
{"0000000000000000000000000000000000000000000000000000000000000523", "004168265f6724295a44579ca27b6c528e3a98af860998cb3367d28ebfee57a3367eccf8d5fa8c53a3c6015674e373d14515fe0df45a0656f9f98b539a64105729aae40ea242c17775257ba1ffb4fa7553796efc07b72edef6587bf3af64618f0b96536e37cbf4eb4c0b9913ba758aa3ba6422354af459f1fda3fb77c8a02ba7fe152b0ea337263eb3b89f37439e088874c2244c80bc754a1daa8d6639376052e52b7de6081b552c023163975b6c2515dd1b918556b17ae06f5adf229c4c40e28071167c8587236693eef6ad11a5d16e84ea0d43ea06d9085693301070d6f97229e51d5d79716b126ee2b3fb178eebf00f3307cd5483853ebedd47a309a973e2a5c9a5d2a06ef52045dc881e9f311a76a02dc62e2e5e98aa58cc7ae31899e95a9b66059d82af0a60db6b59cefcd2dc608155052fb1028cb07e519e0e0ee7fb7a17598143ddc14a284819d063f02c0c73004a26915121512fa7b521e7ce6e5ae0e2bcecf9b014bb612e86865810418f827ba7cd37696de574d81e181e8c7e4b496c1afa00044d41585d36f8577c0c782949ab8337600bd5adb206df334c37abdbd3df6afe033d78523fc54f4cc0d3f6d73e71bb89e0e93eceea3db5038ede9b0f19fb54d5b9c57a13b222c39fc332035216dea869342186a3210366f544fae32cb7d692322abbd0f61f4c05f7dd756633ece61e609096d81302cbed3212d45309433ad383d538e879e3b84fe5181085b1232dcfd131e36c2367475c3b6cdf415aca2623f2d51a359b49ff8626649e0bee716f07b4fb43b838cf1e701a240d93ca51b390c672d7b531f2500c3b0ff19ba1da58103ddfdbc48e93bf9a3573683154602309f4efa99af5b50b5413eb71feb8fdd9b5f7a86115cf3ae28b0d3a1acce2445e98290e73eb803fe7ae25091fd8188fd94eefc7972fc3f2b6efd1943f998b01dc789c2d8bb47ded7b6602f24f0932df443c82bc59c1fb7fc858893505f6275b35bb08ce46cedc80231b76653c6b12133dd05312c626abeebd3933d8a66d31fdaec9bdaa5a91d8a2593189ef0aab5ad77c64440a29ddc91513119f71a3c4dce2d80c91ec735567470d22b3abef0574031e375205d5d20f5985bc9056900d4c7ae608cd227331b8c1f98fafa56d2a2efc267c16e9e2ac43adcd0bdd29467458615dbe18dfb7f1310876ae1ccd920dd0a39af49e0ecd9ad987703e68f76557eb5386e3cd612172f83d29502422b07e7e34aa0a7e5185772908b1991fe34b5b3391ddd6fed1c598147728e2284abb67ce9843d3eaa7973d02cdcf9479171f25976cad1127bafa6300412ffef955cfb4c666196f9dd2d8adc0edcab4a2e8fac618f4ccf79269d920171d4b4927ff9b8ebad2a13d17393261b27dbf462e98fac5bcec4a2fe7f9e9265cd33bce666b5cf904057ae50c6010d868d04afa2de3d2bbf6b7c9578e7c1bf7f533f7c78785ca75e636ed7cfd6df4e43070ad06d306fac607f26be51aa1a7d6ee01a5803fb993560b0e59e662dc3703c572474db1d2f35a0008d58231077e174e8a43331e56ab8392474450debf40fd2f482cda4b8bc02139670e5ad36b68c01b1548f6b2ef761ba5c17e0d6fbc33a78e21c812d7d43aea1c58524229d07d432ff6a175f0e3942d8cd767b14884f8483106f73b0355957b8f17da083600c8b2e2bb601762093df302150191b001ce37a47e87dca8faed9017ecc4101d210e30d338ccefd29102e0699e16148dbd4da828ff65882b67628949945602c3ba365a04345df1620e4ef19cc4a4a9474cf31135f2246f958cd3582bf064bb65b3f75c18719643f877d0cb050692157807e01bb7c69f72989ffb784016bdb4e134d2246bf5aef823e977a7e7586be1348316cae7fa96931e4fdb8917"},
{"0000000000000000000000000000000000000000000000000000000000000edf", "00488b0b4f619277300cb0166cc02f908c9b55623f27b94bf9a7d3858dc6f108d6e154fc9e7fe35a0c6418d78747511d324962d6c88686e6ff57a9729da7f92bf0ccbee86c7b959ee3a2fd629f1a454ecd6a972b06634ca69406ebefa6e5f2d66ed06de903b43ba6de336d99b7d6f19531ac58e6ce713fe421b4c9f8813f077dca472b696191dc19b3c914b7fb411185d379c73c812caf33b4a215da7cc64186792d064fe7fe3ff300f1e10c05407a2f4f8d31556a0ee5b9ca00bfc1cf0265c8ad4a0eee3bdc11f1871ee266574d42ddbdcb36a1735877681333830e0591cad79e63505b9d44075a4cac4831b9e78bd5e9c941f2d5179706c2defd9804ea694f6dca8bff7aedf3a66636e35f63c29e798920abfe43cc97bff2ec831356007689d0d8ff1c0273139f4c5ccce52d35e2d6e47798da9b0a036fb411fb17133e2ee01e2243acd043a541c45ab8f3e6d5a68d016cb925830e974d845021cdc44fabf65e73d814a8064d0cac336066fbeb10c33527597e8165408c14b401d63a56bf44dae4ef9041b01b5362b657a27fe0c60f3ce7a9edc83be8ba73c64711e38e4e9413f56f110abe62eff5d71c73d43ab24ff7fddb4e6566d6f22011b3f50c43d37e66dc71e2a63af67bf55e74bb9f2719cd4efc724aea43cfd5c478eb506a993bf5f07dc9248ba9e1c195b4f8b31bf4436c3e3ef1a31c7389ba06dd6cbddc8f275c7e8aa890e25e62562517f9259a25390accdd6ee4779852067c64d85ace462ede0c2311ed00fe9bcc0860633e646f7fd4af0b55cfbaca74313f3611665b078f3ac7e60982b989b5d9059ff87f06ee0868b6d729031ddf8818dc478632cbac9fb5782a0184198693255311d81458bc35f6c27006fddfd40cb01939d8841c195c65a10d933746047e40af22100f808a2919d87be72d79e8ea225c78c6eb455a28c1007f9bc76397b8e6dfe0f23294746c3e868ffb6c1f05520b89d3c9e3f2c93919d57671e1f6987a959f6c18db53a1ef8c299795050301be4be6c99e2e7f278b33ce16eea8e11a73d85e359e206f22e56fb47b8d740d7f7af44a4593a3a407115e4dc772e590645cfd5219fb3ed68ca53d8db817864fbbe768dda7491f0a7b162e9a9bc2376171d79a61a0dead62b55540abfd2e2395219dbc4cbc1673a832a1c6e2043134ce3bd3e80342b347d60d834bc29d508e23e3d2ca9e4e362ef110c8d2eb89cfae83175752a64a78f28adaef5ff0aa0968ab5b3a291e0f535e7231739534c5536fb12004355817b95c52555d6e18a974205d6c2f1b93fd3f2507cadc11740877e54adb56251fee367a73c6195074106fa68374d501036abdd34d6031f4a57db72d4e8208453323152eec59f506332e46f8e8d54b5fbc720a0c3ed353e30e4933f3ef685480652b668013d8cb4a05238b2335ec1e11627722050ff2e671815e336e52146413b053e71d19588462bc4e97e6f5f44fd6420607a2823e336ef909da59d22d27f79c36a38df7ce0545d5a73ad1947d390a97b5576f6070561753b3e2df0aa1dcb574c55e2b8ed3e0e0e4ec3e79a77cfc91f82efaaccafb4d146be56984d38d67a209868d30cf120b24cf04c555c7479605b7f6d5eb1cab346b3b3b0c40a472320b97d3392647e59cc4de3612cd63983b22095a57049a629443254c71207e53fc09653f31b8f40e635cef17cfb64b37b0d22c4441ea7593d615a465142592e6344bef7b1186a1ebe6373ec1a0819986eb18cfb49533e1bf3fda4f247f8eb153d7cfbd1ee98610315eaa2d054b4ebea05350e2fe6b7541429a45b432c10e07b86e117b86f4e3f7251fed4204d71073b135725e0f4f917103ddcaf463e9ca0f3d1eec999f3d62f9e4d0ee5e5b0763ed070cdf66b62ab787bfb9b4"},
{"0000000000000000000000000000000000000000000000000000000000000277", "001009413583c088bcaa3416517245a52315ba878e06f0ac9f23209e3d6c6114de7167a0fd558e2b2fc30d1f9974936cd4a79611549ef47263aab79e79efbd114108f2480e2f49271e314b8318c3e8c531c8ca8d037fc79e8e192fcf4868b188056b556cee8d1a89e81ef76610ddd23670b53822f2662cef67a92e1dc428069273e57f255d1faba2e34aa7fef325932815e5b208998339bbc7eabdd46be6fe9ed3b686837078779b0064079cffcec933ce24a0504f5ebc386c1f4f79430a6b2eca04ca56e6b268a4104e625c57e177bf25020dd82f6099ed6295955a551930ab8283d83ddf15761b3221ee9bff35affbf7c91dffccc1070ee53d8b83055d015549d3f3bd5571218399cdad014b85522c360774ab93b4465012a67391afe23026cebde5d798e7059edbf1fa052111a147a4eb2a2e3519505db73a4735d66730b71a5237e5a647e1d8d65923ae8d1d9db500f9c3025e976a41d09bd063e4a7e6f2d9289ddfb20e53f76ec3636963e62d02130eb4cbe0cdedfad47c057c6628c70a497c6374e3d10ee9da7681475ff77c0b0b70711f0c34fd56bdf151c115599cc83ab7c0b619300542305ae2cb854113370f30883348e71acad34ce31fcddc5c4e87a139594303ce1d5ac4273956d01b300184661c34bb073ab1bb75a94f6cea7c12a2081f920730495a204b98df3356b9cf35cd119675700d0b22d88bf2231fa1fb8102bffe78a7e1a9e173662e2a9d8a3985d9ac7373b4d58795c6dd6e89c69d95361286a716d16362d1e66b247c7f727785a40bd31a6528afb58236e33acfd926e4bb29346aaa0b2dbbc39a0f7732e5fdaea8fd8823558674d1e105994177c9cd17d6cad34388a8e54b7c72aca8681ea91ad5f2bd2d17507522c85205acc62fa6d420eea247d70c1f526148e3b254d8d893c0e8fca7d2def9b6c2b23a595ebd005869313db0bef7d2de64f7907c2bd229889c4bf82058fb8fd70cd22360f78495767d021294b17ed71004b74ce8b2569b2f7dea90ffe32d78c6f2359de773248791d6dc11f0ab74dea8de254e4dca567c586432046cb52c5adbe161bdfca5a54361fe7225485a501b04a96d44060c622689b6245ddec72bc928efb9fd7a07e17ec9fd449c8dc1dcf1ed47bb29ace90ecbd674196b5c604a08f9eadbebb1dce3f0ef2f53f81bee0b04f905b870ddee750fb5b1555aeec5d96f647e075164345b3425dc3fb71bd87848876cd112de03f8695f366dc9def11c397d757de4d4af4bc72dd5bd5b7dd13fe35eb024117dc2f45de4f7a0dc3d56035ada057a08081c0ddc0fddc7a3a0b1fbdbb19010a0863821950dbb45aabd484d0d296db26684ee83bdf8505ab9601fee65f2a8d0a48ab9e4f22617253bc641171a75af71223ebd4b35739bad07678173c5056e216efd230c072eceecf248425b009d4612e0b243be092237aeb8626693212d26df2d9e760d1e4f7d430b5f645cdbe30b93c5bacb1033189ac6417616e7b22c6607722dbd31bd22190621aa0f5182137887ab06654a292bf62807aa49eb90c401b724fa83d37c73080d7170d704731391b7723aca3b1ff6fe85229547b15d58caac6b2b29aa03fb3110891b4235c52c6fc4dc23047d7f73e5392293d41d5b8a7d452c986400fff66afbfd5d691907e5c42176139faae70cc7cee748348b12c39bdb234fe10f6b2eaed9eff6224765b3ddec2a9a6db74a4a0c1b0aab73c34f6358c77906fc5137b37fb47cf232257553c4a9fd2bf3f3fc54159e72e7e14abfd29b800a8ba97f615a8757eb5ab8c155fe765b2e493c8d44624c94cb5befd2bfed4ab80e94d6a3f261ce15fb722fd51308e76f3151981c867a35fc979efd461ab0a93135c5d6d4a4abc78d3ce662dc3c49d29d92f8ce7b"},
{"000000000000000000000000000000000000000000000000000000000000005f", "0033d78f74a4f55bc463d88cbc522f1a448397fbb2076e970b36e21c179d0803777d6378722197560aeb161b24bb8a5bfb23d220d2d32cea32d8f831dd5afc369ef6121eaaf19187e57551e846ef1753e6bb450e01713ac33a173f039dd6b27d1f2152dd54cf31c4c02393f554cc0cc2c9a40fb28d8972b893e8cd5f9c9b1d5d269e272450a36ebc25b6375c61460bdcb30300622975ea93d88eff6b4187322cca4d2dfb8737fa060277bbe5da53a6938252a031f8c9a688cdb234527e160acc1df38d62e12321a58cf9fdad1366db9c2ec20a81fa7338d2a049397591f15eab8f5ab1673e6c5613b41cb4af235857eeecb7020cc549ce667a99e8060c223497ea987dafcf2518894fe9fb1e70723a32e41c1a8546365adfc7038b724acfa3360ea6fb7be82e12c1cd23d9d23e991094a1569f4b18fca7ab3738242097a3f1cd5609d9ba4805b33f3e142a2bb2735547008d821b7361c7ab1ca36065dddf998222f51cfc8a32f1a9a3e712c814ec42e51501dae7d1cbd332592501f9e74481d90c09cc82f5644faca52f67eede10be04cf570081676281d144610935d900365613d3c0dc037529deb384de07e05f046e163db462be87df18242f3c72791ceff7efb74d355bcdd9ce2ddd9978a31508f2db0a227662b3db55f959044d3c7fd9d37f30122aed87b3f1530505572c0437665c710a4cf17419cd019bc7e486a549c7494950683d473da302621afb110a87885f4fc707d17466218379fce88cab577c826b11d30d7e4e2e168df484e38bd4e160c4f4ecd648b03e3dfda8d9704c9fc46164c8d1c48e369f1079d5480cf9a6f5a9c9967a95692295686bc7d75040fdc9e21d6da5861e8e18098038222fa048aaad8bc038604a105d4fd091688b63d5d14815c74ba45e86ebb8bd21402c02ea84a260672d3b25f17fd245b61a76d27e7d0109e6a31583ebb07c7de4185458a31290c7549d090ad63bf30447b98f06140188867ef7aa6d907e8c691207463d84a0abeb0a4d66595c5712bded921a935723aef5ec97544ccca41364dba24f86d1981239f5620c73506f841fea636046888f28f4c8ee588cf7733c1f972a75c15451efda62237e516790e54210bcb5ec170151f129d474232229c28d29637b1e2ae6b4f9c63548e399f0d160ef05bb63b0646b1c31c1c41592570197111d7685a019438b44aef7e74cc5a71bd497a51568ddf9ebc860518364a20697c20a8cb92ccf65c61a6a0a64ea2b3f03c967821fb338828f90c15cdd0b256a69f65d1791a1b33544ee6ac1812d9c17709e06111794ae81061732d10ed562a4d9f55b5e7cfc79182b59ade138cc273149d809f057f5960b50e11f64121334f97ee1536a65fb2a0828e05be03eba8ed5daa53dc5ee9e8d29c655fcbfc61cae4b233a0f2e12a1f2024380490b645fa59ee390532244e745ce27fde712145c78a34957208d5923d78f464ae04e12d973833a22cdeb9aa14d1cdaf1ec84c75ff89a214bab7d7b4e423fefc16c31165fe7291695e2b5188f08379e9d4f036d638d975c4de3df4ba1b3b68f7a22dae477b7f151688fda6a663525b55428eb07c8b93e507c14bdcc03f7a861d9e06935387430f93d0a5fcdd1b7758d0f0c6db4d0f9106e2dc3fc526f704cc1dd2d5fdf19ab06e9dc980718f423a3879169c2a127fc840314a3db10ebb27567b45cc5c3eff71c555bcf96137d1979851634028b07faa467fdaa037c672e2152ad41fecabf2f0d1e0a9ad74ea724077689aff65c6f1c0a5bd9261021f3514ba21901e1412296149b5d68e6dbf059c01cc712aac5b3fa4daabd62be2a5304ccf03eea9985128f6b92abdbbecf264aa1b5e966de66fe929e850b254ada6f24906bcff882b2e062ef4f960df2dbb972"},
{"0000000000000000000000000000000000000000000000000000000000000812", "00461f6d26517c89507da33b4d5233f4e64cf24abd0bf549b88ae7d1f1a24e23fd4ffdce425e699d700e10c4d14adc10dd0aa9c8f6f1736e82a62fc79a6f7314405130ca09c99b6dd0715aec486eaceddada5d51035e0515cc98d02b5facec879669d58b39e8bff7043b7917b481aa9313687316225a435bf59d9df137e40b409c811a5ee3af1b6ca1bc768e810eb6ea7e065b0c2dd69c3e9e5af1cde05729a0dc926610c7bffba9058c5080dc41e3a96d332458a7df9692d1373fc39e22e9493c56d802e0cc53435df47f72c1d88e1dea6e0f5e7b47a78a836d6c8030fca4ff37453557d5e6585236ff446de08f55d261f5dd1dca4bd74baddd658210ecbe570f0620de63842800d6df1f024155bb8ca81c0ef651c4e0039562ab22a8184cf05bb5a19e679b13a03fd888338433b305d3424fee2831fa1d925cb124692dab735d60a386e04511425e66ea54a39a650602ce093d660c0fbc6359e145b17f5d09713fba6f5c1c4b01639a5eb84139ae98637e4379e667c4d43817058dbd75774ae2ec5ee411cc4bf89df5727b79f3221df0d28c51944521dd68a38e245b5e6e76799f29df03950e741758cd99185711c31d1c8ea08a59e7c39c214044ac45f80ab9f9483224539d4aeab8697c5baf07b389e70048755a7ff0239da15df5970cbbfb80041c6f0931348d74bb60b4743f4c6eda86841e35c3a903e03e858d8a5dad9854d06deefef218abc058fe6e871ca6474564baf13563e9f22afcfb234e1d1b54a835bc9c61faab63f9c9b52579cb49f27e5bc9f41cc8376ebb1704cf2ac7611aa6edac55b2c9fe2e352d3606af7328154e52958a05b08a847135709df80fdcfe092814269696290983e12413da29ff264bfad2a5b30efafdbadd474511ca17548d032e26baa0a1bb42e53f5a6d06b4eb8a616ed3b5fb12f56605b83ed8ac8000f43a62790668d4b88599c5587878d6c9853b394a06d04d7c4c93764b24b784fe79feb8f1c1c40e8cfd0eec8571f0281e73c7842385a14d0645e64cf299e5112ec27a5d52eaa6dc0f9209d62830688f1afa7b180ab30b2189d3171f52c280fd1dc6322d6c7a936a9021cfc79ab90b8dbdba611410ef3b6d62f6b3dfb0c61a25ac3dadd70ac110df231a4bda28f685bf9940e549c1fb22a9df0047c6c4a841e866bf5add5ebf845e01caa70da561fa0d90925072596f578c83b0bd03e61c5b834020b039a9f7afb4b0195181653a78af718b0d1b59321d0a881270c267a321e16fde9c93fc7c01357b92c0cc5651e53d0f84566c4cc279f8367b2fb504958ee48baa1f497455540a747d5b258025b727791de93f6eece7b7573f9f8555d5478bbdb1436db2af055ce467e9d30037923960c79547acac3a4aba750c0e56830442d9081b1948e2d1b32dc74dc36a91c0b802fdd60b49c7f9af5c8112d92ef8902a9370180fe74d9fde4369e6badf89a095710d3daa622266b49843062c6068799d772f13e9a0f9b11cd9295ad654f09e1eee7a2f8ce9b75fa11af2e002e037e27c2f7e7ce0048242893c4d5f8d571ba67f253d62723d853ab63b0e505f103adde1076e403387f4abb52e2c92f87edb13daa1201988e8bcb0c441cbfcc7b4cdee87911f631d5e4c2c264b00dceeebd7cca1d965f2e6c17ec8e71528929bb30de3d942ec39542de423a283853f5a8b18add1fa4e0d2fe1b697b8aa20663f0f32a3dc45be1d3fa3a2228e1017178285df87616e060a69da20882ee4ad8c309d57951f35844b7ee6169940780f3f5f26fab710dc1b14030c9462ca2fd63791dd18dc1dbb4ef26b746416fb9dd8661845dcd0282e214b53fa7542f7b578f4762db1d16904d8dc7233617d4fabedca793a5fbefa1e52592a6d0c9c2deb7d3b73c7fd4316"},
{"0000000000000000000000000000000000000000000000000000000000001b3b", "0047b17bb0414d1b5deb37f1d7c162fb0a44bf642e1eebfe8f9447d513a49197c13c4b35b2a1b3ded96f0565b735a308200fbedb20f16bfc3b72327754255a1880e4b70806aecdac9bb23da53d357a3612fc5ed32b609bdbc8552d64fd768468053be91ef5751ae19057873ac0469eaa6d729e459cd2c72a41d5f7dcb285373dddce26de92d1624a3467ccf5ee12c6ab1e94859e211feaf42b1be3c5e929f5edddf8773062df2ec306f9ee51936cfac7a07bb15d006a9fb1b78a7872ba632eed756426bc8bdb423779bbd4e53efb871840bd249a4d2580a463c9c9d9b39f68c236d655157409b4331b74e8ff1f559503131388456995e51221fd90c91f1706888c087b3f0aeee583ddb88d22c5f8bcffc61fe5053ee94f721769a318878c7e9efe256555908129fd53afa325ce9def2172ab1073b0c5a27cb91c6c34451522dd95069ba04fc8237e57109e63bdf715b7019834156af0a303a6dce23e2be6814d49d877344e1ecf34878caf2ce3999354b783e5a506e2d65dbf3a0542b5c33268de85ed71e08fa0ee9e316741da64184a7bc7e9ebb32bb7c26c2b3bd5ef266ad104d79abd0448e450ef8703588eb770a3af1722cc98b651aaa828cf57e52b551beb727453cfdd2b0fdddd4233d22918be4faa53471c79aa21d1ca893eccbf487e9e67bb5b3715d90febfd6b8596892f627dc84f5e4d1d86820348445fa59f61bbb55cc415d13bc8f9f259f005b6037d62b6eeb09e01aac4f25fd5c2380a174b1fff08258acc90660b4fbaea7815d193433521e5207df95e2d23797b5a10c5774ae5834ac9f0a2153dcd6e8af605d715586302c42d4e2d03c08664c73540ac8dd6ce31d7ea8b22d8267b7b96079621f940a63eddfe44f5330977e55b51db4e9acc64fbc6b78cb7072d1db0794b91e2b4abdebff38ea60900bbd7a65795ecbed13d047516b81914d649c7d1b545c5fe7195d9a6f84c4e53c62fc44b3b056be8b7867df9538a21e6ae1576381930db774f763fefe27725e68238960196bf70c98165399e8b692b802bdd75279f12d3533b3dd43cb0b50f530175e32635b7c114e5950163036e1dad1dfe871a52b3a740d2cdd5b09f356eb4defd9ae4c218f94126eb25e4b1519f654581f4bc75fb704991e55d796438c71697d9e6aadd7ded4964ba6bbdcf6f1d7ee46b0b559beaca914b71501cc502617258eef0eb7cb99e49362612dc9a5853d12b549ad0d39a953c9638485115cdb1e42f1f908f16d6751af9518b21aa9814a15b16eb2d77cf998972eefbd46e187bfae67da95646080c7b02c32443e44a8f662610d0ee839265e557ce0017646bf075485bbcc43c61f7260fcd3f39d61cdceb2496d5b3399726faf72063f6a767f5e5cfc43f366826003cf34f73ba939e48d40c56479431c2fb9289f806d9aa83ba42df6a7c54a5b1cdeb2b166d6c5eb66a19064351a3edc0c98d8a5449c5c8162d9d6af470db18ad6923010e03ada185733d0c37fb3d0f72f2f4b440b5df33356948eda247ca88bd7cb372aeb7febe5e115c6dffee1adedeecf4344c98c726bd5dfe6c603135a27c0f1ce1d197cf3f637ef3258ac0ff434f0b25203b4aeb879c3d4bf7a053deaee3d414f7fbf4c5804ee82bf20ba4fbdfe5d5f521c7e17819ef057dd90a09ad6bc93151687dd5bba87cc9f39c4ed323bc9941144b8e7ebdd058435f8c41cdcc772f08e4ab0b76aa1c87f412ab4f90c5f7f142e4cd77a4713b217accbb2936633bba682a9949b464f58cd531e693d5bd4cc90d05494744ee8e9f90ee376c9ad6e865de6dbbd0a315b7862d594c956d6b2302137ea90226d098179644303aa742e52ee233883da52260cfca3ab38519480f3af93f220016ff91fbdaa544d0fa037b0362de3d28"},
{"0000000000000000000000000000000000000000000000000000000000002324", "01aff257a2dc9edd0a0d746c6a6cef718c99b8369c06a3bec78c4214f38b4180bc582d01c337605b00581b1985dcfc5b9937405c6254504cc7b931c7de64d42139418b928b87c47c1cd6f4ba4eb3f7529f3d065c105694b36a865841ead3214063678b82dd3c9965f02c72757a10d55e32ea0c356ceb3daf660eb7f3af4d162c9df4ec78ac63c64d81b4e576120b7dadffa6c31dce3592f6edb9fbe1b2d340aba9532cd4cf66b6b0030b20bd12417aac6c0bd1442f1192a8f439d7ad2043afefc125e9f5dda794290145fff626f55d5942262417aee79f22d0fbd911a2cfde7f462108ea90cd6844a3f497cfd40f48a85e7493037ed0c9bb962f2f510389f68a139fb52165eb21e780290235c9dbbbb74e15c13639eb0bb488d8e39a637c63c1eec6d55db60503cac2ed44e15945cf85636027ac1b665162b853dd06810f95ba4fc34bab6a613027d9e505496978245502d59463be442ce3602ba4e1a2ebe2f1c06bbe82a51b2789a259077f0042d694cf66dd92c9e78bb60a5c033889716d09a1871be142c3f1b8d6824696740a12107bc55959d97ce171b243d4885e65a77c63dc95e90a6a150a77dd9f3fe04020e07db6b5f1ce78bdb4e3122d71095cd127ff9c18a2a0497990d153316ad26a1e4a7d2075cc8dbb57d1159103d4fa62642e37c65e200c5f2d2763d601fa00023b4153a4874e21fad80302e0523050aea40d9a396102f2f5726aa6bcf9f02a0ac599579f48552dbeaa00e01607bf0e4f7cd7341617cb8d857346c35051abca6703f4010eb4685b47d01949a2256c597e22ebefb2c6db7f0ecd98e31c1ed00cd93a3ede88e102af36a0e18f10d17913085f848d554a6ca5a798bf3b2a1256ae6d5accae8a16b9260e150d9c5b2d2e35efaeb74773aaf1f81a81275cd9c01a13cc7c888af68edf9e54a0e74ff67d4b29d29c5702277fe6605ab4c306f35a76485c1ed2b85c3fd3bb08d31271ed550d49bf2bc21414e11a790cd0b886c909fef20a016b3f53d29b549e852c4f91fb57584e1a0d1051fc1a3694dff82510df42c024acea9650123f033e2d23d380f525116f55d945e22f19e56c3773b953b6fdc0f19cd86bdfcd47990b4ac7ea01bbb4124c2144aa39a95f4b6b19cca33752fad7aa08465ae3732845bf911e2954335503928c539a70f112e779967b02794a8bd19378e6f7a327556e76badedfdeb7e4212016fe5c08287a3fd89ad75117e3eb6df4f9b158c01b8f1f710ec6e8b7e93477a3b17515fa93dc9f450c1fbcea3e71da4908d4b5b5a5bf50b3465a78f971a11a987e5ddf92bce776742ce77b7deb9f60d97eb455566b9efc95ec580bfb7286c80b57c6ee956c78ddaf209f03c82f141a23361fe3ea8467652607fbbf435b46e4eef200a60e8b5224f60a485f4266ed16fe9e3e02daf37beca9eb476615b111237491fc56b17d9b5e0fb7992184ccfea8c04114c47cd66161c9a32ec850031e3a0bd084a81edd9fb22bcd23b8e165235cc43608ddad66978f4d19224ca6576957e596ed4d3f1f900915f9c276cec19eebdcf0cc7d42a0dcca2aa77c5829a9e7519bcfe1fef935a7ae6651ecda22a99e28621494cc4c70e5304d5a43c69c8a726f5e177db89690289196c6c3972fdb7320133b61dc6c3e24d05b4dfc0ba5132cc845ce03e93c42d4b49eace225d93464be0dd4e6536ed960f0d51a22a1bf7411b1d596385ef1580b574ff85c8a03aff086b11c4dfe2b327e3c6c355a4432e984e04229a74259d762fd908e82d197c1ae0fdf6166091bc2daf975d2a06bd9b8b92796db62954dfabde727d6bea1dea6187f3252b776d6f6fc113c265d61e0c359c0f3e1a45674c2fca8be9788b99a2335c6ce28aa956ddd1ff65d8ee6f036e78cc59e08f9"},
{"0000000000000000000000000000000000000000000000000000000000000c80", "0124356ce1406f4b224e830c4b225b4539d479a139184889247b32ae75cb822872cfe75c93b51b1e3e28025357091b4b5f3f967fd3817cdb21a28185bcc0a60ad084ccc7af8eb39287a3efd248449ed5fe5d18b5040918ccf912fd29686511aeb5312af1bd90b18ff30f0eac4cecf23c77b299e0f64b28bf34dfb51158a609d15576c2d7a334cca305f665f942ce05afbf3f504ac0432c265d8671cd07f66ae251b5370f177977f604217ca683120afbfd6432ef19c40abce094133eb11bee6a3a67da754b7bd5a71635cd63b78ec19e2c0b059c2dc65709dabbaee5363b96fe4975a8e959ddb5111ba130ad37e4a9ce1f1699356a88fe8861ddaf04061a5603d9a16d233a8a551f1fbd368626a51cb09219035d0f5d133c1f9adc872220f8779dfe0376979315b6df1e608daf13a996943f8d730495158ed1d35a33a4425d8825fe9ff416e57cbab4f8e1631bb7a0080171bac7006a3799ca54828124e826dea07dfb40561d29fbb56eef47a9b7ad21d2c8f98331767038f6e5114d61a872db9d8b97ba2245a820ede98e1d16e4eb17e2fe1c9f0b553102f6e28cd24cb4291ec1d463d60917d2afa80f530d589a090ec36e004eca319aaece4dee27917e6ae8d983e145708de41481ca3073f0ca0f85e50b56ce9ed5068df200c27aeba2219593ef3f2915228b97e0a3eb279063479a56796af15cfd40d504f755add18b94cef8bb85040532a06d8dafafb71722685cf728615c0f2c0d46e60fe0bb05e3def7b5402a826fce02a40e9123de063870b4fc1377749d762e58cb1d77d95d617bc62b18980afe00de4353394b5c05b816754e062467a8b988bf8365dda63c87d4f07015787b407d4d3ca16d04e194b399ae019c78b635f826ca4466f6d3333afe6bd43d7233f87e6b4f5adcfa399855c02b91230e908303ca974c7c3fc38bbf645f0142f682af1f1a85c86e532dfd4b2fc4f3281b5512567103e96d9c79a0ff65b8df8b4bc7d29db95a97840819d4c94470d1dbc23f4c16e17a3c7b7404ff1ffa140f5a70dc097100b364d4365974528e7786ff63ff0afb65ec9a4f861284bcaa1adcf28c170c1e1bd924197afd20646b778583cbd2e132e96cd5cf00dd77da11ab33bd9f0736d9533474dd54d4c445605653b4db15e284228d9d2cc7b163653363e5a4057649f0f4f90c24ed10f1577cafc5c461ee4b114e25747976547424f3b9de811b3b77e6a392dc47647eb28218f5d20b0e103a0406dec78beb99f1b31d3d968e6766fe0510664886ea465e9d315f6b56c643cec672269a747db80c6368c28b134571399210f7d6de1069e23030a6e71149fbfd7cad846bb3ebd59979c9c39ed93fba839d1fac33fbdc4cb158c43b2853656e532a27469ef8fe41b27d66ce12adba9790d6b99fd0aa99fd61f3b5f80208f1a416f97cadd0a131074c5302146e57da0b350ab876b23df447fbaa38e4133ab29ca353935e871d083c1d1374237a65ee442165fb7575a16b687933c122a2738eef60d6bb7af8a3517b74288cf6c231b517038dad7c4d1072a6851f1398e0e9f12911493c67cf193359d6339f2ebb1b41b84e9fdd848a6170d8577a0b34db7ae5891e9103e790daa3d38acd0d80567e481245d892dfc51911acea791218e76bea7ad3bd5fd5058e60564c56e5ab44fcf4936ac0b37dc8412fcd3d21ac5a7d5d6374894193731e77a8219e9fae1f73370b5c07deb9c4234a7bf57549437cf3a1b0bd11c93516b1a39901505dbcab1beb9d7bede18bb6489dd9b90713d9bf66eeffbfe858a564555c194a0fdfdea8501dd95368a61e9a5f0efcc5347a58867e572dde64650e306446696b7b5df91a045adfd0d6167ed719576264c5be90f22714394bb997a316d0217b110c5b8077"},
{"0000000000000000000000000000000000000000000000000000000000000625", "0027c7641442df2e7fa446c786bbf9e9eebcf5bda1342fb6c134955cb79f96035a0b45f7959e318ea0ea0721698467e53db73d4c50f25f643cd8595d37f7e20aca2776b6af0d5fcefca4815ff5e6dd3c4bcf765d00f0b220c2ee0047a43933e37dc8f6e677de5d251533d9feac5fce4eb3f261635b4c4a2425448870c30811766eb6b84684aaa86c845b32e824d1976a1a6cc4117cdec323e74ae9bd7867899273f2ef280a1cf81000fa80bda0e412f3bfefb25628a39c716ff7f12f61017bb7b9151e71839d6ae131c3e0feb9a1425f22fa19c71f06e996ae9f29ee033308c0b4c98a14303a8f2a4ce1872b9bcf3bee3d747390e4b64b1817fd45730e6fd151d74f2da3d992a59b0f34978ed435faff7e0fcc20d9a0681acda9f861e7c9947e58b6245ee2ac1affe932e8d5d4031d7ac8b78bd8ae1261239b382424e889c62dea95ed9bde99f5eff834dea5145e42b20201553a2097343b0559a6d920d3ea422e1c3b4fc11860a23ab5939c0183456261e6589bfaf47b5e312404047db844c96dcc4dd483844dedfa86536ed348880e9f8969f09e1bb1468124c22941d429dcaa95708e1ae54635c05b9fd0f6d3a218c8e28320ee481bbb161bfc1e81da29ca9f5adae67567d7042a548edbb82b22031a2ee809dfbabc8d14b36ade83460475bae7434a1ffd8bef15ac08ea35050245e5b5e64257f961e907d3d3aeb326882bad22314915f8bb7cf63829a06c0e6de8fb5f46287117909241554413aab686ff0f87125ebb91db0678d684f4e4b722e41ae1cdddbd197128940eb940d7a9a2e3af04d373cf0f01416dada9440d0a29ead657d0af21fb9588702f39c19febaeaec30d65abf1f21bc159adb762c8253803534d53bf4a1a21a8867158a061c5f6f206aab6c1a511ef055d43b7266f6b316fdbc105836414ba3a56dc0174a05716d20057f15ee3907c494db1c2304327b6589760aa9e8d735b259d86dd8b81999677ce947c5ede727dd9374a00921f76d87bdcd3fff578a02fde6a9fa02d3e081a054143229904a815d5a546f8c856b665dfb059372908c5c71f11301653a660b4218d35a18de4ca1ea1b612d46eeb819be50fcafc948a19aa52eaaee0dab7940fa240c350d99665d5a4a8402ed30e4a2687f512ff65755f8c1ca56c3b8b443a7cf1e7b1ffad671e1e170da5d455afdb4bfbf7b73375867074af081c7da6802d0cf1f1bce335536ce15641c44fbd5d96a30ff5fe1a0c76f7afed3e2db25c35953a553426ef62b7a0359e611db334f3b6efb8eb6b1e26f5832708ff5f6c901612926202d1af5ac95a3340d3a2fbaf30179b9fd121000787318e9b6df5c055db8f7028c1ac308f20731aee7b4943186cbec5d6d5e0e3710f1da076fbda753a0bf22c336741a170ccf3f7594d05117c603a91330173f143bf0123851aff70aa6cc297f9cb96da4e230c7f4c71d1d21507e671959672ed5bd322b5bfe5a50be58c96f294654d7c78e5ac3c7ae122877d5688cd0d364085faab9c7f608d41c5c1fe5c64f9167aaaf303cfa7f30d1d1897cd1a6147adb5afd13e33b472f21d472346110f601db3cc52229a668f8664229fec2e1bd922407d504baac86121d5311aecc7943b5d11f3281fbaae71686197fb0f968443c994e72556dbf09603c1ea203d7841cde7616798f776ea4e51b599aeee08e721d97106f1566ea879072ccbcc4668c735c6c20a57ef45063a8c6be8d3d16653164939157eda32e220bd3f787027f6a19ed886b252d1e23a752bbaadb60d83474f445bad9d1659f640cb324b4f24cf3fd24f164c62c4fea830ddedce5226952a75e0e9b7ec68ef31e6eaa96da7db817d5edcef11e8cfa756e67e44954dae5aaf837992c1dd6856dcb7c25152454074dbf2"},
{"0000000000000000000000000000000000000000000000000000000000000217", "00497e2f54186131f9d932ca36aa90e171bc1f26bf3ac1db282010a527cb71c72fc3f5dd5e443bbc5c19136ffbd63b90f468bd55838c70bf98e2fa747ae92e1ab1a6f3cc89827ee1621c6671fa49972e257b05920cd22ebf4bc7579f49a4531ec77b73a16401f19fa819eb5fd8f3d32bf2de86a4266523f92dda26bb608620ca4f050a13602f6c3bd3275cc3530f56b31e14f32d4224b8e350f89310c71546c9b53519f540b3bf60056df6b33922e083a81213ba2c5121b51a5d3169a61edae13d48a1d33368366474b2aa58bd1e695e8f27064a326854d543ded2cc748a86fdbb02aa7e1e2a0c1d4a4382cf0afe129bae62d87ee6118e3a57b3f32a13bb7ab4f5d594c1c57061c13b0f6d8109e42f3d293c9f4f2d24fc512de33de8f1774a4832df29dabd3424b89f8f790ad5b6955912b3df3cfa398fd8eff5532c7cbba27ce3dc97bc62557ccb3887b60789f08da50832472d745651ad1ad768725e568082621f16664a1f48c3aa2ed0f2611787543d72a7f1258874ff35790a82f0d726628ac370f172992fe437aaf6ab78d430131879a8fd23ebb79b249257a86750fd6875b69783107a5335a017ae30c09b728bf4414f08fe6739cfca1e5b6f4373d5cac7ac077210814bed69c5e1b307b3443ec44e38939dab773278a283d066e69ba5fbbb255a28237735aa6e05792da6917d70b595abdf1243e60e863580ac1092b9f2b67341f4d4d0d79cf67d3b142dad3d974dd48471c481a5feebb570f2cf82bbea541006cfb5c34de3d7fbcb6229a7ed57153985de4e961cba255ec252aaeca6b383c2f9ba83022421d70e6017f456197e149910d07aea14bce14426a78cd7baa220b1b1c6ef60e5bb34e7a2ed82dc6968cbc2d824e91803dd5e89e40a87c2b4b94c71d7665385b0becafb21dcf36b060921dbad1fa274ee4b0a0fc2857ff813011e436e3f42f7ea6d1c52cf1eb778fef4837b7a433ffb4e738bb75f2bec3b7902e454251b70729be589167148f4cddd390f91c7c1e0d41de2c2ecc4f9e6052e79bc584b68632b5d46c318e2ebc495c9b9b30364033cdd204026fdbd5173f1fd3f12eec97f235a615f3e21e49b89e31abd1f2725582866aea19ae593fd0e1a98bb195d3b2f5bf0a3a860cde541db0a603f02301cafa7f79f4b7e2342a30244b1bdcf0a14945c44930268568e59ef41eda9d0e3d938d8bc81c164dcc3b00ba3438c9f845737127a661825f7debd9103f45b530ca5f61c701b3dcf5c76d281485fc71163f5ed5da81e2819f2b29297a7f69f5747f74c6efe0d53909294031deeeef18c0ed3c2d9c3fab7570332e90437d53c176983f51293ba994b5a73014c2485bddafd33b0f81307ca9c04c4f372db05720337dc23f5c428bf370a3a4f5dc6e2e8adbf7617c58464d038a9fb0bf7868b01dd1e947d429892c5a7c2ec585ddb04bcce4c11502b5ddc1f4a9c00af8163d4c4fe72288d6522d7e6cf161aa4e0ff4c76f75997638c4ab7687d67955ddbf14d9beb7e896e700beb5ef53d1f6e2ead8c717a60ff0847de075f0c3826a7383b149d6a3692cc365ed0e22e23a4150ad5305cc4aa56e080fe54e5dcdbffd2e51c9ffc56c89e18492b2a98f2f058bb723f1c52c78229a974f84c6534334508d895e2eb95468016bb5d060b56587df3efd927edd0072c8667f95afdadbc29b214888e73db9494a5733ea2672740861d72d1b681f611593ff28c851a13d6ffb1fff1ae4ab98d679d2e5e1ba80c0d5d5b2d0b2d9166ae9cdba0feb7ce5c2dca1079f8a1b79fcd89e31a12e2607763891552bf771d2f789a37cc52401d5cd4345314b8aeba499b5b16ea19865783c98e65a98840e57d3dbef8c5e15a5b17ec205acd22b153a4a3d0cbd3bacca73f767afb55a254"},
{"0000000000000000000000000000000000000000000000000000000000000642", "0009f24f53dadd7efd36306647234aaef8de5f56700a07e381b985953a9c15d2888de9bd59acc9bd723805a58657dd5318caea8cb389d272ee2137303bd79214a3ba1db8d4e1b3943fd3ea324e3214fbc18bf9f510c8498f341437f36969d3fc60f2d48e615edb7aad181771fca6aabc4162b252c391e2368eed2bdfecd23e591a679920539b6f13842d7ca45c31733c16e3c047cc932458b54f3fe88428ff19cad172dbb7fef64e05e9006e68519fd5b2d6c923cfcdce86f9aa9d4c7910c0ac80a29884550732e45ca6abf2b2c84f9b2c520a64fb281c5903a107ad02d200fcd266c066f9885635355bc1ca3031ad912144a702253e9971a6de405409c241df3084ec5e87e013add16659957783715fd9269eaee8d9cb3e7ea67ed2e1774fc9fad4ed7c61e31cc135253596378b38fb7973db67b7974acd3f3af4455a04a169a9fa657fb9b49913ee539e39cdd96d0a001efebd9e0b53795880912b44d99b1a129192c4aa0bea4f3138e885b3b5bfb0e6806211acb97818260506b4faf4eee691f96e3b54132dda18daad947d17fc17812ef193880d136c4941ae995001f95e3a3d98e80aa2bab339432bbca59831ebf9b42a6ec8b53a9f0710006fa9a41a48093353d4de1fc8675be0299f3eac1eb7c9cdbc59ba538fc34360ac3f61f302149d6dae6127ddfef1df07bfe32636733f45bb95a0da756a9c057afdfaa0eb071db1ebb07a0534b84cb399c5bc101f25ab1fcf4b90a9bc50524a7c52861218af1c4194161b61d8516660f3790ec1f8a05271913077b6b4572e9893fd6c0d1c7d65d294fec5ab2375f61531fc130d64a22147244447fb54b1e424ddeabe8d0977d05f243e5d1376996d33f1b3b5641e733a7722abbd8a721b255e253ae246cf7e3fe9a9a95ba75e9456d51acd1d1a1ebac4e58da3f9e582206639b19a0ca9769257020e21bbb8c92a88e66bc09ed6b5195c2bee63feab0f337acbcc7b297ff23e74ecd6edaeb5c406568dca13d436bd52d0cdf4c0c3f49ee3bb5c77109b9baee34212cd5e835999c765f4857906f63cda7d7dfdad78023554ef672142e1bc4eb6e23d74d789eb3e1dbfe50c664458b58ce06bd55eb4af0bf67d5d2f40f848a202d8a84c2af14ce9bec0a0c62ad902d5be3cd825791c727f0f8a8d0121555832e35d583b44f4944abc11025bb59817a8688bc5fbd26c14acd9d4ed573bee8d32554e15d1505272fd73677971d0f22e1a8a141db6064f9bbf9898fae935d9f23b0eb9fccae499fb1c1a09d50f6be5cdb2aea62ee174bc737f12291491acb0043598581aa78d8bf16410afd5f0332c56531083f32ce9399250598b6f17b179a446fafff2cefd77304904dd841693959c51381d9317a2dc5e862cbcb556de2c2f6b5246a1d27bb8844707f96f0cb6d75b9b8c3a02821cf857f45e6ba9f301e4d52d72b0bed0f4a42e07b9e58a129baa9fdc078952137c16df0f2abe6d6a160e52ea337297b1dd37025c31cb564a021d74bb621a9abb6b614b08cec410c44308d223a519d98a57d108c62eccd1c4f93c9d58f3b8fd22da82234af27ed21a926f1ff8b4323df3d882e88165e1994b2e3669490a2a314920d1e0a31883c478234a39f9f7ae39b74037fe9c5133145997515ba661336ca7bb8984bfff450434c03e9c6854fd8e5fa19ecbd9a8a6849cbb6515254f4df50cd20b9fab9cb39d24fbe44562374dfe1b1e5d1adf10b37b2fbfffb5681130cfa62f033889793b9edc0d0c668bc99384e51b11d149a1795f1c6fc90e81c5b9dda9c069b7277163f7184add1968f825b01dcd1b0eac090bd3796fe38c15ff1895a410fcf8f61ad6fc295aa44021b83d84dcf047d2f64816773e0621ea4bbfdeb04f97c986d56be2ff5bd315a5ff6358"},
{"0000000000000000000000000000000000000000000000000000000000000cbc", "002f39326974fc51d9ff50c71cd16570baf0ac5338199689bd654d577e96f4f6435c7b7c6b7b6b7d95a810e29437dcd0f66dcfbdd1148392eb95a839983803116b22d1ca8a7de7e0e335e0ace64fad927712ccea05667b86439a6a6f1648bb23a37bac837a9bff23b5290865c0749b2d60ed70b33e865e3bfa0a6570615d11e2d54bf78b90e900a551b329f2d12d8d2e1a927e3efefa451bab9153aac3a6fd2dc384e9ec9f3057c907cdd311d494ebacb005531cea193511a0e41859d60cc4166c95555b0177f157c620cbbfe5ffb7f48aa20e4f7afb7a6f45a1dea9d1b47b692e1ebb69dd4d4582f1a68531741cc1f2b159e3c56f437eb5863cedce10d8427073a6a3f5ef23e5db8c75dfa981e2d745471899ebbe8daa47c5be12459451d590068f6fd4d90f11b5f6b412884e5bc80d06a7ee68bdbb112c5dcdbd1582acbeb94b7f8fc15923ffd45917b61b9135f0d00185ba99e3b0fa89b16045536fb76bc1cdd313434e33f576ccf952a53de022048be9791ac55f5cb4b0c4169c1d0733da9ef1eebac5de197dfa0ba78b3dd7403d9d6d610ae5cd9769d1d5ff8bea94a5bc6d159eaf0a85a7226fe4c3cfcef09424bd4f02ae54789ecfae0feb047c96135ff7f17304a46e4c2b6e7b1a16d19b0fe347c6df1b97cde7c936a1d2cbba2b17a01eb2972389cd1665a49b8b8c0ec23fc1cc326d2d3a307d1006b1d0d20bb29f5da4eed3b5424f711754097d6fe308245b8c1923eb6de14c34203abf118938c9f3b4b50f1b695f7783d9a8fe9ac51b134aae1dc6433ca18c106964aced8792effb23186995546ae313fd7f6f39126cb2f02948a3967838e7756348b4422bc87a371c4b63a2f132d79f754d1de569a5e67c022a3d3a1d2d1400fedfc646a633b00a019d44a08a69ca31df87a316c018d17447d1da8e2e22d7d1d39b962ff89b6cd50252e667cb425de124a7c7e04373dd3a2961923bd30ee279150e57ddb1d162e5991e316c556ce0ef52d00da3ac2c50922ab1b88211827c6e4dfd4af1cf690a277dfedc7e5d32078665955f3ee7cdcdf0501355c40920385c2a5f63a98072e5f52cb3a862c8cddb202f35938e1dcb9dca119893aaaf0375b59fe4ab9f456d124c3626e74ca5f76b3d37b1e8c56b8291225d8252211014fd790d62e5e77cd2320365f772194538a24a05951e0cbf8eb54b93c7119b1a7330749b3adfe2b52323ce97aa14714bfb36f5112dd1c2758f248ed5260fa01f1ca6c9c705ffc73be1c77f5f9b1c233fcde01b63b9bc222285d51a30a613713c4786a9975b4a760ca2c88a8e6db4cdfbebe67c4e3fa7bf54f7fec4685747d48258a72b41b0bd75a05be43b85bd0f3f16b9290b0bada9bd11f9ebdc16ab22c6525ec41a3a4f19308b5a2e3114445b0534460d9043f7c676d2186e330441fb7c81274f39fe2fe36439cead729a1b7a62280f3d6921d4202c951c7b5589defc4b5e613cba90db09001f8ee0a576655670d211eac445a12248925eab395fdf84fd95dd9fc8d1f3c7814c68964ab4d29dcd0dda98cb67da517fb9ee8955007e8d3fab37fe8873431e9a90af3114938ca5f6b3064fe66ea27ed9048820a3da412496e51f2c44784f96e8665e525d1dcbd431cd422d3695ffaecd3514bd47ac543e6e1f3e5e7e0506228b1dd74d39bb5210937f6cf5e35a6c1d9d562b458443f118616aef7fb2c08e3bf5b7112f1f6f7b06278dcc470280882a7081e653b71a9714ae5c138e0d4bc79a9f6bcf0785b0d12d58e9b569b01f581b210522fd7f3147c874a6b7a4781c641936971cb8c2661748995f81108b5969e414401a300519efb8f9891e0b25c104ce8ce9dac543c24871db8c4e2db8b460b13fe69ef6be5f5387323664c4e64e4fcd48ddf4aae3"},
{"0000000000000000000000000000000000000000000000000000000000002ca1", "00300bc198c86c744e2d0370e3e8d0352e382e24e80726bf4bb9084f6ca6a690b0da6e83c4cb805619d604a99ea32cd4b6ef82ad912c8eeee599ca5e6f371818a2cccea0196ea3a74663ec6e6a12019bc8d641db0263c7d6b91634d3e5edb0645673d4a0f87fbf0c950d0a7245e4868bfb323e545ed94724ca3dc236c3dd0bbb6b54dbd4fb1953fb11555d2e057a4ec7193cc2259ddbaa610e7af526dfc63bb9ca5d8756485bebc3089d4e8dbd16b0bcd9c4638b27eb28a11e812d8d6d31b32de0c69af329f227599ce3701c62c7faf769c108d93d54bbb23f03ec10a485b8bb0e77276e5a259920e4bcac5be6e4c36d5524a9a431fbee7c2e98dc280f9864ef5f888d0ee0de1330e99bf6ca8dddb7563832bbf530649abf10e09c1a208574ac7aa2699e06471e258759e7f74915c442e31d12b36405261b33409e2b18fa6a40a100059fe0b2b92dea646af8747b3f7c02c105fca211f76120c9a622997fc9da5229b94f7d07df869c032b2209f00260e327d3b496eaca59f6f612c9cdc432ec450b798651ec0f954120a4ea142d2f3e873b2954d0556b81774787214c2f930dd69c1747082f5a8cbb9510a9fbc602936feb4a8dc181749d321d1286d111ce3dcd28ebd78a67d37c925c711b35f20f175fd9ccd1e871a0c653d2da7995697b69f76251260a7c934f9fa12178bfb87148d7b8ded717777b030375dbc0a720471707dc5429907466c7096e5f60b5084eae315ed4179f5e3e946aa45fd65dbf9252d44b10d1e0c86e564be1a6dd71884cb0d86da424fa0bbf28cf4969ec0cddb765c773c7def8cdd65ec47ff87b1716c717dacf04df404a68fc5b4a7b1f23db7a881f1f3821b04cceea8de37d64fac6c6e55da86777922e265fc40161931f4aff68d7e0e140f55e65d4faa0cb2aa945f9e39462e17cd07708e8f839df0c3cb8e91b038b467faf30db51fddb24a838745f75ee25af970a06179f30468afe55780b61dba8cc82a53b4d09f23a1821adba10679e655aac72f7b1591a597135f73c451d37549a7edb5937f83671f4b55c8e0e1b6bd7f4bb095765cdfc973a6771cb02c4717e0dae79919782360c26b8ee13142a7decad40fbb539603c7c98d72872228d05b4cc98580be239775c50544365db4bbe6d0d785b7fd4ff33fe75ce622a665b57692b34409c365c0664af995197b7bdb6ae11c3564689916e2ddd86a71a7e8a4e771a95dfa37061d93cb84ffae50e9f3578223e6cf29834a3abd345c444c66982993a94f112fd34523455ee1ed819ecee642593dff6758f0c9d299e09f096b18753f572b27ab5406ef77765a8129973ca3857d6f81ed178c4901544a4f7fff2a600497bde8b21087db8ab8cf109c00c7328a42993cf530d7c3c8245a7f7722599f3bf53cf0ba5e263485b42e4bbb06c0421fab1389435214d866447ec67b2eef826fea6c32b4433a97fdcbe37383b6668abcef5dde9c719f7f22211749d8112df5d5d3993ac46a0b44129fc59bce52d8c9dbcc154807922f965738cd0b216b665fc5968062fbfdf6e5ea815e68ff613a33fb1f60b94dd9b7d255e8c80e81535b91f5f2ad0726d0bcabe803a5e3107166fb7e644eaeb86c942314a6de8e1f5801a012908571e03d7d548db16654125529f81d504e175062807410bd0b220833f778f41485e66b79ccec4bae7d526eabcc431195c97bb7dc296d6b154f65872d5506132df59cb525302d930eb633b5ab9d1560b3d5cd74f338dcc90242f01358f2d158731d89335fc1752b019096c72f88351d786ba8f86d2e551d85a21607adb662a436658e05c6dc7b69d83f444c4623f06dc3ca4910d9aef92380dae68f6f1044440f2ea399b1d78018b4e5352ab1598105582d30580c7ef85458bf273438d"},
{"0000000000000000000000000000000000000000000000000000000000000601", "00a52925b268311fa6fbb0ff7c58061566097f05f4134f28ce5e8fea109cbed1fdc974da78a14fcbda7308cad94d90d184c3f0a621c8dfc6cf4ddaa793e5c30e1b28840fb8af27e770b2077cf2773e796af6d9df0fe82c8d5f316f37ad71b1294dddc1104f5596a87d1ae13fedcc10b174d9b5c66c653fbe4e4ab63e75841b5f7cfe06e60d8133af15bbda5b0eadbb5d707df71f71fb852c571ddbf6e9f618f6dc956dadb2ff76bd1022e5bd6d87f7d9169ed17fcfbcc30fe7fd9ff69d1be329f6410f72d9efad9b3d0cda839772f69ca3de1e5149b96e8cbac8f62c6334ec6f54ca1d62daae23273bef8b6dcdecd1bb1e25a193f1353eb4157ce7be1944ca3a842ccb45eeafa673203e66ea700f3b3ff821cc3d4c19f14f13e60612c86d6405635619dacc4b4c19bf94bbd494978555995d8b763f06a020fdb7475ad9af06c8f1e291e8148753fec5ea2656385a9c1d00f5309046c5ac15b70021c5311e1b3c9653f5cd9c0f67139ef4e1153b61914232301ed511aa17b340bc0417afea4d0df0d6cac405065937b5960c8a5aec8109c3f417958de737122162d321f95c7a44cdbbe23702cd543f10cd7c29da3506b717ec28779f551ddc94109c2fae409966f51fbdf12607de70b1e5c8afda891237da9bcf0d0bd14e1ed3284cb23d42d68f3f8cc81aeea2cbe690044328f5e24ce1416fb5dcf8f239ef016190574b349ae5fab6517571ff13e1009df52456197322d6411dd0b3770063e4c43b052561c6901f5e12d3f39cbd108e2511f235991b3a37d3062bf8a23744b38cc7271764f304a105de557ab0ae3d58932b9f04f58f9c1084c8637cda2869cde213d71d013bb01f0d8d91cea2a97bffa0b201fc6e14b7bf78829d40d50d3656bb849b9d7f620c058375c2a9aa35a973cfc639bb86b1d52976e96939f74d6ad6ae7e4c03d2ed800195da5b98c28a2cefdb21533bbef954e9b4b4e5560ebc097e8492d3c53dbad20ba56aa24db81c6fcab106dc3618bc873976dee2258d593a97b9a1f85fbbbf15656b780a0f1c2732b762033bf604a956a05ef4701121faaf9b86b70fd1ebb60cccfa580b1e9ebe4042161ab46ecc52b1a2cb6c01e3cd1a25b6ee17b79a7e1a56673affda3694f608028fe19da8bf1d0b59fbc62488f303e88f0f5df66e640364bf73beebafbfc60e05752c38aa43a8eb20a5e7037641ac8e430c7adbaf0b040f27846bfc6b803ef48049d756c139931da18a0b2395f7dec5ae1bd1b091508a2cadfc787231065a69dab68f8429e337922187171ed66dfa9904f9fd8f08e66aa1b321a2a138cde1dc1b3dea60c6931f1446509ce3ee8ad44ca1c159b867f86ffb6f103d5cea173012d56a940fbb658f54c5dd73421eae2a46f91e8037f3bbfcd05449a37d54772a19de807603e3bfe10104264a6cbf50f819c23d113b7057b679a1c0ae55a716e615225946bf484fe592b1006fa379fcdd500709133b095cea4862d94579721b3cc3dd09963bf16abf26e7c2dd366edb27bd55f3bf525c4cc5d697fcaa210633732f750448f5a36b922f65be40cd7bced73ac24f426591ee9468e6afb497b4d7ffca3abdd0ff179e0945ea42044354a73c2a416c2e9671310dab3f6649422f124c9ff052d1a8d8257619b69186d1d038b86c04716c5470cb9910e956f17d0d4a03a61ae77e45461bf4ef94301d5242ed66a3ffc0f920d205fdb070fd04a1da09129e9d93d0cfa18ce922faf13171b9d8dd0f66ba48cb07d3519c6123fd8a45107a3bde7885520d0d4d4da9cb115be9f2f686663d220dc7dc14ab06340314f14e11dd4f4d3f47474dcaa3fe6363bda3181055cbb05d9eb91d6bd86509c8507b7e72085c5939247ccfb0e549a10e69da348d255ed0b256291c1b60"},
{"0000000000000000000000000000000000000000000000000000000000000385", "01664300c29c6af1b90f80a55969bf308f5b19c14f13b60d7e9e4fba01a614d4ba332bad5561e27fb807058f452c049995bd20e4749e492733cb3dcf9e78e111fa5d47f4ae4149d13f61d43fe989777813de776903f1f7c429ead11dc43dc3593ff246fe684576a4771579d7d9feed8179d50fc431d5c4f1756d9d0e79cb087e657974a4ec3182e227dbfebf48567196de552d17ce89ddb9e8401370525269e4a0120b0addb8ec5802d9a2b47cd1dac93ce3e70cc7be74decd5a7945c9148db917c545e83494a16749e3e0315e620519b0740a0f89a8e319570dc1de2122051c77b59e051a40f842eae3b897a655fb396b94989f32803166588fe6a507f867e759c7f8cde11431dee7acb0f770aa7c0f833f7d251d4aa0bb29dbe3b8d9bfd9a8db61a79b892e266bd7fd61d3c3d96f55b3b075ecec7dfdb3f53a7d405732e8adb1a0bbc704e5e6c632b28736b0bf18d201a62a95d7021f9b266a40d5a0d4796aac769915761183ac79e805ba14f51c12f3cfc668b66dad795fc513f14ad4eb19998f060af72f1147d4af9f371ee05a5f20931e64282a2de4b195f3f73fa00b1d2ebc7ae801ec63b74dc6fc4adebf38e6d36af7a6dcd77c4103157177958a5d04e4fe4f139c8a511b2953aad0c4fc102728a9691b689918dd99f799fcd833b11abe1a132165748f7dcdb06e8c1f832f46331de71a1ff9d8f3027fd81c1f12c24af2a4f39e3030ec71d7c3b7980c09dec7da9612afd4db31b22c6c67d71d455fcad6a31feb8c449e88bbdb5f3b78ab29e691ba961b1c1ca245bb2623a7606b03a47e3784a054122eca0af881020433e292dcce083d8e3992bb1f982481833b905c9e0eab776b8293aa4bff8d443a2ac0e1c5273e0df2a21e88457b054fc3fce190134932f86e310954f17677220bb3b3ea5a1ae71daadd793374c1eb733fdbbec9017b798f180b1d770c86c29c2f2db5795294ecc0370d8a014d8a8660dcd8ab245b4f4edf3531816f33f9298305cc1d9a7b9af1dd9336af5996995c9d3522e0361d763b69d5b1acee7b753cf9fce41360643d6b8601a8a256edc1f661761891d816ee96f124ff55a8c66ac505ce6b2ec6ebd54a79639270c84a71f71549010f99f7428759b815b36c25504cad4449e44b1eaf4739aeada9c9563057c6e4c5731a45ddb9800b73a9a3028e5de01f59440f0be0557d0d76858d7fe5ae1f1563b507b1c39a4d253524b9804ce863226cfe945ec527aee5cbae4bd2cd0454f38c90a2b65b573d1b7e622a84f15c1ff84a1ffa3273f433417e2284667fb9d5117e119be18a428c71e4525078313bd0b50034a6312583c1d98a101ec1d45f2463e460e5a55d3e0f6a201d16fc44a6106133af34c3c6ba4a964af8c6dcd67d21d3af23820f41514bddf30fae1f66ae6e229e6d630204f8a74dcbb35066f7543604a1b51aae09778d2b046ca48df654f616f1c143cb89a4a79577737505f822790206e70ff6e7e63d02f1874716f5a7577859c3259a2ac42fca3f8f5719a318159a17f53f976a411a04f82e7dadd58bf17b0348bb5eedae8ec99fdbea0d0c48739112106fe9752ec419a07ae5aa5b48b9c1b310714e09e1c71b6586c718ab756be95e80e71524bc225d69c0454e419eafb6d8c9a4eb2a8245e51a9a570247743aea18ccf6fff3b7d03dbfc5a6ce4178289839381f271eb804b5cfd2d3cda5bef1669c1c78a9c70710fc72d5ef29098bfd810d7cac4d2a25fd1d3c4454800c8556261947f3a8f9db13f030bf505e5b868108d0a287bd6052ff865310d5346d7ba83f9788a85a335977bee4a564c7a6822767e1cffd0f35197f98f110d3aac13155d03b0a3c43a4abc3d7d9bb22963fe111c16e112e0fd0915c84e6b8cc413142d16a3e1e24"},
{"00000000000000000000000000000000000000000000000000000000000017be", "0056dbe2d1558381705130ea16a2e8291c0eeab8340a730e985dc5bb3b4c5770afef4da1e434e91de16f175d7122bf2286cda03291a2edb80d04c2945091b117e37a9ed655d0abd856f6a6b65ce7b1b7b63a489100951d6bf580b7a4f8dbe2306d9b58521de27895d302933432751a62efc0e604dd447cea35d6798ecf650fd391646e4a454f68d6415469d8788ec1a6590fc110c1175aafc4e1869408442466b616c1739b0bbd41041beb7e7ec639a3faf913576ad9113799faff70881b49395ed1a5a305b8abd6f645ef31523001f586bc1098fd142fdc83dd1685d60689dd80a6b64655eadc3a3f6316d79aea0b697206060b334e618db9f39fd8081f8feaf2df948167ff6115b77cd50a61e934e9c70b37b4264c47ee62b8de925cddc86a7d1ed6302e1727d053888e66478bc71764485bcdb541dcb45d947128ed6f3e2e5db80f996193c7ce53d17ebd20babbf502f77b665bd796a103c3220d2ceffe3d213135888b123c940f8b732f1ffa78913feb287884fc69fdf18223f9e9f2c7517d6bee5e434c05cb7f694bad0df62d3e7addadf35387398168e653be797a29ae9b9fda9405a9fd62d6d99effa8e140d4b26653284ce1f3f9760a8266c1a005aa9194a6362a40d249623340195ef609f0eab59ec79f6a696f245619709f3aa0d617a2ce0bed160722b2510db4f53132e96d292cd52d754686059ca6b9d60ce75e7d96406e71191c14b79dbaaf3816ff15dff1d83afcf982319cb0a566ea673fd44f241263a7319a5cd30eeb84a648e4e538cb1e8f9dc22450109db91f1a80d4fbe2085080dbc53e3e765439a111da67fac1b8663de5e953dcf0f307c69e563a1eed137f75dc8d974a234d89525cb4a78268e8cc1c2dc319d017d3b953406b6f45ca94c57a43d6a6b35a5e895834a66002292329b84d6bf948fa5e6f6f775d6afc009a6d95d28d99b39f5d11ff0b5bbf3d42300b98db0280a87ac55eb4d7da2a9385b4c17ea6861ff5ce2506853e601687710782d2a1b6b8aeef8327317bd3e41e29c376481d7a50f8b3a2ea56de0589e69b94b78605bc56aeb110f3e4ba27538124674af13c4bebe0f77ae35f16c560b09b662ce8f79f59f3766b9e5754a408784131f2d159adb2f60339471e4a18e11750bd4a24327a5e5bde53bd50d2c353c0cdc35dce39fa62ff03a631db1f4deaa33ddf31bf6d5893f93a48742efa2487ca742bff7b4dff42547e30db8cf5a3d17fb00a0645a270236038af2a21f727efe575025589b4da3c1cd5e47afd5f18bd6176a4860bba34212b88782bf91597021631cd5e29a79af1a72d4bcc612b7a3f957f18cf6388271cd871361f483fda456b322fa497e3031f61f731beaaee1bc18f26a76ee83d1e395e9e916f27355f26241f6ca33c30b3514376650d664b9525f101cbf1204318b6f3767ad3cab36d384e7dc7d4195e2cda2d5b5b15295f62f6a43736de37a13f9fdb382d0ce1af8c612d7915930d921c55b82ea19ca27318c80fd0b0ab0c93da291efde27a5adb1cda275597e2250609aec909ee372d9080b45293b329f303a93c4c54490d669010d696dd036f762868cd3355b1cdfc8cb523354d96cd4af67865f5351f3e5f27cdca605deedb251823e06d9c77f999dd8324b97dba76d9d798bfd302ee0b1aff04d5bd9db231c2746108d95e630b340e04dbbaa1180ca534797050679bdbb83127756a92ec170b9c08fcd0a17c881b35f249d995965735d66e1d2846a9dd18bb88e9eb3d63cd47d3d82d5f6f3ca2a112dc3af41208b1ccd4c2aaaccedcb8431843fbad4136a167f09c5f0b9b35e2d4556da71b4b2f291ed54f168a2c3cb66eda81aa8f27a7f075b9db1a1e1b196b1aeebc348bd13921fea0c6d73e7f5abe6cd5db085a"},
{"000000000000000000000000000000000000000000000000000000000000088e", "006a43da6c7b9ffff09a81d276d11e2cebcfc993ed03e2e0a08044e792faf1a25cb14ae09619b0b42693029e72182700db8f314a311b868e8289184479bb306da514732963047130e0d9b8caedd856922498121f0ea14c5844e97cf9de6d8460ab25696e0af9bea25e3220caaedb90b23389beb613cec41cbb2ad15b70c5149f8b44cb60799d3f0df6617f54113f6fc7fe040c188aa0e3ec301aa3a2f555323936f2162d4f59510405a96b5a4f1c3bf140dd03a3dccddd956083ebd4441a596b48e1160f6da87d93897fa514d59282be8a80144dbc5c134cd3ed589e747d1f367c2f19ca19d5501968e10c00dea10b9266f8e64c4a5fea5b8b1941ef0c491d7f8924f0b1b285831c302bed5910b59db03e13231921b96023531942c95ec8d932cf5a6a7b819e0eaa595dc26cdc33819ac138d315abcd3bb3350851101ba8c06bd23e2f582ce5701cec58d6b6cddc267e06131b30849908dfbe0f2740c64da4aa938ab6b19d2ac977ec8e4fb813b52bd2ed3fbf5e9aa20c3c3cc51d1c9e9d6d876c0c782b5553f5397b562c5e16a64439c747641450fd94b45fe409d6f37fba182ab5d5150830d68bfee9e57ff0c0e4e2535830521ca05739a5101ae4b6ff4497133490b6a8d8eeb8c283ac38de921c3f0b921f6fcc9dd850894353f049d3407bdc3b5a398f27d66d70a031d4fc357e0665f90306447b12f00991e49a58ef4b3793c722199125a4b151bb7b2faf1f788e010adc87e57b6291fd1845dd552675592a93416917268929b593c94887f817705b167eb7fb3e5f8de57fa0f9699cd3c4e239e8767f640ad5ed7af76810bb7b99fc6101037362b50cebe3877207a7be6eca584b33d533dbb94ee4effa4e57e75a470347bde38b1281393e2f9f62b54c6ce3ed8c513df569be97c2493cf0372a5f61ce919d1f24160a4c850ee7e078c1c2047cd4017cc8afe7334f4323a9506ff92230393de007d7377756f7a88dfbb831fe96f44c39aedc7d4d2e0e05aed31407338dcf5730ffe2687955264ad1cf46543be5964f2b2cd39dba377818ecd1b63f767c6c8611453906a4a51cd15b5c7319c0bb84f21c3f3cc889175ba20487ec7809ba5cd801c5d181ce3bcadcc6213074318b72171d6cd593b3d8493b18e97c20f3e7f674964f1fb29d7697d05a99056cd9eb164ce0bab07609b999cdb39a0198ef74924f3f422cd6f78bfb365e3064656b0b223603eaadd3b9daae10b9c145f2c38c24d8cb3185384ce5ccb5f3952c9d12053385fa4ef22cccf54f2fa0810d31ade8dd1ff2607750903e792210077ecb3b11a88fb766587a6545704e828d3a9f0010739ffa3f95baad7a87a17b38bc993478c3ca7f001a9522fca20de10dad08a28f181f97950e87b396fa2ea8da2fdb6a04efa274d4779a64396788e1bd0a0f05adc1a99f650d8f474a8412cf228ab5bc9278f206123ff17fe60ee90b353731ebe3131054fa5aba5a5d29a1d4219279bc3bd27515e66733e0c6a1d1ba0ae82f031420602789bfdc8eb57e1378d2ed9bae4d8cb212936c0b0fce04af6df5eb5edf5b14bf09fb9e032c2eb229b15f309971b77233ccc1358e5a0cc1b164c8183a08e19fdeab40f6a921e6cddd84f20d2dba2bae3f4c63f9e290acc9b4fd048e7fff42f52ef975ed5210ab5729569149c346059d5aa073501bc36a1f14b91c6bbe64190ec1b2f56942e278ab6a374c6efcc756186e05b8555c49fb81d9d57f67347d167c0a1ab9d0269059a571a0ed39831dc91cf4d1632aacf7bc7df21a9f550806983a58c5faea14e96092e7b096ffb00e445274fdcc52e711cccfa7a979ca531dfee1373bee3b6d11fe4253b483d9bba50a8a46882e819e57ad0d81e2460dddab264b9e06283b37c6a6c6adb59b995e"},
{"000000000000000000000000000000000000000000000000000000000000014d", "0096e1752a899332cae450367b2d6d7db1c25c36080800cf3bdba0efb50f8652ae7ceef6c4daddffc6e910085c886959aa3d001e7254e99f20352cf2bdc14024764bd9754c5d7f5643e3cd22f8e9b65b9f139ac503ae7d05d090b0e9ee809404b147d865f151ffce510d86373bc824b9612650f65c877382131e64fd59f61a83070673afaead918d730134527f5b2e3a9b2d5d2189c94e9b4cda25be2385f878d11ad628b53f2753009dac0588de2a5f6331b20ba5a8f8a894e85335e610d10ba447d35ba5c2aba36c35dfb9c9b9d2f3cba102198306e9f1c6a5f275419b80740df5d48b521b4c1dca1d93bd506c1b5933c44cdc406aded7b699e313240d83e1390979a11b5e0453dc5c90b95c4a1ec7ae2828f9fb005442cbcb1778a810d87e9f26f8be6b12240ec5f79dd3acffe5d6d8059be06242e5a7d9d2f4271c04ff890af8ed20a734cf3a3ce191376c4a8cb10118b471a688dbef3f6f01a0f6d5f8e973699b9df61a72c51ecd649613c6cfb2e0ecbfbc052d0e2d3ade08745505159bb1e19ec0e17d39ef5ed8f10d4a93a613e6919b1099190f49b6b24683128f0d4fc10dde770380b7a4bd05282b1e7473d235694c4ed0c83d599a0d29eaa2788f4c12ba0b017b1d690a657bf74f769d20b76bbbeaef0889cb8bb7f346e7c0f728765d7d6b23bb2749560e6b1702cf3369efa1cb710fb77b98e002bd053e79957b14f09ab1111c9ae521ab9833518d3357926618cd9a6512e8aa2de0e36b4791295c9fa8039576026e48347db4e6b377de9ff259534fdaa4984837439c2018e46f226c16d838d14756d012dd6d4a0acb577f0ea0e441980515f995d79f83356f9a738a204c9dfcb528457ba452d53ad64afffe6a89f9dde73962b56b029b2925e44fc5642ab029a1b8a49bb64a3b7044c1b7cf16ea8d1e5407f5b73f7bc5fdbfb36700db6ce17e46b8bedfe0124115cf0ebadfd47ea9ea2839d59af4db301d01c1f37b2e74479dfb12d861ae052ec4dfdb9752039fd1a4e129f6277a70af5d60b12772219d135944f94b5a855f0a5cfeddfc1a1bed540ce01650a151cce1ecf250e377e3c4bc78b4cce33a132462469a184de7449952c9397b4811ba139b490b20a6da7d8ca7abef458039759b5a132ec6011e76a92ed94b286b1747f97bd627d62565951e7f16d9e21308dd4f51d2c5ef638aedd54e0daf500588af9d4cdb62f89c9542a639d77119a942386bb256840e7eb71d1d1baf98a0db1f45801b16482b646821dbfdef4548461fadbb4128163d5beb647a1ab9321d363b0af0f30d61e75b2fcd4f61f6a36681647f688a5a0c58aa501cb4763a65a0a8f90612b2fa061bed65a91055856e36c3a66331f375d19e77547165575fdf26829af2974c504cbc19d79d64c11439d48bfde562f5a0fea2fa04d5e346ec08d18771c3814ddf712aecc20d1677315a51cd967bd87fe7a8da88b36f5803167e1a94b1c931d6a792ba8f7562e177970ce3dd37e6c0f4dc886134759ca07d59bbcce629d3fea7d7214115b42f87b30d0c8f70b346d4af728d6744bb401b05e67c7aa0640f704b158a69f3a3bd08131333c3ca05780b9c0d3f133e23433ec653cccfe0642843780bb62b327d61381cea345d700ce57d775ad35d70e0c22d52135e82d90885b67305c3c7692870b11ee4c1ad68c3d3bfca342e8363e55b9ec35f4552c8f4167b76db4635babdce0cef3cce355812f187c3d5f7ddc6e78df354becf871ab8d71a330c52489c41752e092f125daab95ee5fa0ae7fb9c53353dc7c9cdb1e7065e934d1e5b9125ba1560a429ebc7c6d6c1eb7203bdd9a708c7aa57ea5f2a5c7e5a46a56a59d8f7583f1b7ecd02c5069a1d9048387439bee951bd6a78c515dd3cc3196182ffc726"},
{"0000000000000000000000000000000000000000000000000000000000000429", "0060e3d23bd52aa8bfe2335c5520fb0d70445fb60300790f2dea4511ba30b4b1eb7895b11e0de67b15011b6346bfa3d0d7d71dacc72d33fd6c423d303b3a391e1dd9055da1d1971fcdf4111249dae6b8197b40690eff645e6270221385e7b2ad83f41228ffe09a8f0f1936dd2a940b0dcc98f943b24539387320b53955222823a7b7c75af55522d7b4f5b8357e6e258b581e0828702bdc96cc0458ef5bc8536eff7b0f655e1dc3920494b8fff4c4bd1cdcee25a7b9ff2fdac1abd8b46f169ff2517f550f42c3d851e78ac1c88c953c3587150a539a2553917d734c1ee35af6ebc7dd6ba7ffc96f10fe3b574748d80477093443e250ccf7894a1fcc5409aa763a38cc6a03e799a1843579dbe7616d9cb3cc241fa96c5ace96dd6bcca4ad3a628e72ad37d780c71896cd7d9d903c4d6222d405205438217daccf2327485076a6fbed7349b59ee926b37cc67afa5cde9d0702f369299d5fed8d7086d0dccf3714df41a5bf43ae0a7e05b87195243736ece310d36aa626930075c1890ec64a4b45861021659983ed8c50b47d58fc7b05ba4e54ec290e24f0916b75c687045efddf2088bfd5c10e0021fd0dab63e1610f01a38421ce346d8126cba01b35da12f5cc4d92fc0078acb65844124e36bff2a7244994cb34d14035b73423e1d1b5f78ed4e31cadc533ea8d27c3180dc54c68c3daf32eb60dc1623cc50303e6de169584a34b0c1149a2f977f7576388fb48ed0bad2296aa49b823b26c06b08ce2e186bfa6dcd0a90afe377e2ba4aa7f6adc621b3fa4bdbd5743992b034dcb1283ab274d01930985e2a5bfe60f1f06bb5f3b0640153166de55f3ae1e235af9a2224cdfd30ac5b8133880b1c88b615aaf78d28aabd1374ed67d9efada122034653c4ccaaef88bb50f6dc3310261e57796fe15f253bb170d6c0f9bc9591bbdd3365a4c0bf45808008c027cbdc3832e93dbc591c8c76be99ac435aa1b050d2d0b4b833694b3281a484856f09f43af7b7bd72063fa262a48d9ecce02829696b5ce15d4b09b7d5342bd5f1cec16bc453c1b753cb862606157bf31043c0662c71466c68cf1eb03258c865ba462e2577f18e91b0876d25bf24895d142e5740562b02388f0bcbed1091147071dcaedeac7070610466c8371a6cf7eba2214fc90cf51519ad156f7f4e80d6edbcdbf453baa99077c0e493d88fb18eb5c87a7116e0f6f8846dcb5322158551ea1df5c3dee9852c2eea4e1cde3183d7f43230621ba0c5e38e5346926b62637111214473e9a4433180be3c7d4cb97451165798dfb129610c49c2c730af2fba5ff4d85b6b7c762183af310fc897b15088a38f2c3b1a3358125d53f99e5cf5f405725dafcdc521d3a96f864cda83e9308b97ed667c7bf199f3cbc6c250d56150751df9b860b430ea936fea22d1cfeea61021fe2acdac59a4ccaffe339a7f16a9adfba5ae4d0190a0e49a30fcb1d2d11d56dae49c1724e0eb51c0e0fa30fbbe54730512434f49e864c097e206f9a6816165544d14adbedaf384613160f6dd544ffbbef957d11fc28eda871ddedf48ff714417e61125ed95f9fbc349ffbc7e13a6e2defc8548914b0c6aa83d49531a5220585de42229ca97205c4bf3765993249f35c21973f5fc4e33595d66bf9a15551114f7aad95e738878302226836dfe1dc2566f1d1f079dcff37213ebffe86039adfd74d959bd1a6cd62d68020ace23b92b844061a6db673649464a9fefd224a252e28820a90544ed52dfbf78480cd6dd0aa88e390e3a032fd0f6d2d8c2b0baa11065b12dbe8b58f2380a0d7aa2975e47e8a273445eb6179daa2832a96f40cc0600785be6a7b945315a1b42e5650f896e439e63d9ffdc465de16ff63ca1b343d82fe53c49ad75c3546f7555705bbebf618af"},
{"0000000000000000000000000000000000000000000000000000000000001274", "0000fea5fed6c72f6bf731cc279d5202341213079200b1c0a6869e1bdda1042210aac25e20e1b69c518a0afdf132be5630b0d30d82db52777462b560bace964d7535a3712fedf99ce787c69750bb0a6a46dca344090551b028e14aabc63a010aeb464e547820d874614234d665019840dcf2bbe8105eff4ca2a7f97b08a0097d4d83c9b60a23f3b2734d5f716ed31343b9a8b51c2c6d0ebe64f687afca442997299fdb59cadf141400fe55d700ddf767cb0098c566e5411ecf9b9d03912d1615dcec14e5c13d31c49ca2c02d6542c7d007bc0b1315bb9e98d2038c0f1807f85621f6c6657be879168ab6490cc5ff8ce607c3e531554ad31af79fdaf307eb04a880a143bdc609d104f567ee86347435e8d00dffb460f5580f154628a449cbb1186669fabecce211724f28ec7c6c75ffc5d5065968ffbe1fef9b6363618eb345a8b05f6d8fc2a760545b3ce2a18f7b343d00f1f22442982094fd1220648f6f1dd19f7a1cf0480bf259ba82d117f5608382395494e3ad44280cb1e50d116d4b078d524a9ee421e88f10767da2f17b4f3d2279c5a48b9ab0dfbd80b4e7dc5018ae966adad2b402b2029565d3dc0103e206d7eddbb089e7a41912ee0b5435e8500b66688c7e239ea7cf347a002e1c5cab1929dc4ce1e849e3bb3681a20a9b2c189490ea3e2b23e442b602e57fb1851463cb87b4aa860c3e5f046d04f34a15b7c2fcfbe57a25697dd3bc02efd83ccdc321b1e7a9fc92ed29fb4782fa83ca59b925c09c7bb40910ba9728c44535242622efb7253405a3e05ee7bc2eb782d959f2508b9d51a3cd854d4de9ba899309bb0b156eea797243d1dc1a71c8d27719bd98bc5436801da4dcec6cc856a7698233ea7e5a748b9def1f94df2d7baeb604d9c9a3c643d7c21370650249891a30275c26f449b89713d31f73d9688c66ceb3e147ffac070084a9662c855f510d90c0e22aa57e266f7f13e89b0093fc810697c4a0ddb8409ba34d153969ab357be204578a72dd1b1f3b733a21366f1c31251ec2dfabe7242f16e978ccb178a7d004a6f852617afc24d9f5de02888e4a181bf41b6698b4d6c252f549c974755baa38f1a2b001a2c0b99db2c6b269fc030283d8999db315dd7c328f5c92bb05dca1c3bafaa4dcfa887766901d0cd15acd0897dbb75ad6dd4d5d2b7e1208d8431704abe3ca1d0798f7a9e5b0c14064522cae85494cd62a8802db6d5e4717711bb453c8395207a6a15df25c236e22b5764bbf76e842d57ac2f8b6f262a133a522325099fd50114c9af0c6fc4397fe38871a6a3e94750f0fc482d40d133993ef532c6b9ba0ca4c53ba6369124f55256d0730377b65661020ba3edd9ad435a63612306c3cfc8de7c2cfa643fddd66d3ad3161ad31da304cf998bfecee8d67ce24698a40c131d964369ddf014660ad302c16dfa2d301041cb6cd3d6ddc7e059f04eb95ebb2d7a323cd8911ad58e07a137df9be150b19ce55fc5f8fadfdfa7d55e077baf39acbc57719f82022fb3816a4a0dfbac878a09affdd06cf25fc2af402fea3fbdc0a809f0765972176c2caa6520938fde81fb0720e805dc1710e7df3323e21f891877653b7601b156922f4e7cc4bc174d60ddc66c3c19e0e1659194e77939e2ce801b7c08046efea613ad9d42d1135b90210a37ac50fab71686bccc7d4e7456f692edda9960c41c170dbed4109f34ad7d16471e64a728fdba29a224f5ac74fde7667ecb3a92c5456422b41d11ea3ff54c937c5225ddb89b8c67d082a7258c7bf49df93de13155ef70f598cfbe9b1c410d0a790767d8f3fb5d51a116e6ec3d626b57e14a7dca9eb0ad6e2a91a1f5c16964dbad29081fc97b8439a3e728b3f11715e4799409a7e1cfe181feccd2099aef5db70eea12abde6e1"},
{"0000000000000000000000000000000000000000000000000000000000001332", "007185e1818c8290cfe2c282e0964b24e4c0f615070d5ade4dd6ca5cf581cdd24ab6db2772ec4e1a5dca1a0a43d6cd711ad9d2cb674369437032a3b65b921f26788a127c9e6671ca356650cdf63aedad7c71df1811ead21f9f15a99cd7dce34722f9d2b1ceae9648e21e7099b50914601b3154b2c9cafc981e48ff5843eb2596a34547b7148fd3af33547c7eaf99bd770fc3073129ae98b3a8d1f37d0373ee9be1893e9b967e77e901427500d58c23a8a19364ccf96c5de66d57dbaca31d25c1baa3b3b2ffc03bf40098d57525751854c24127db24279c50af98d452c3a9caf4d36a949e5542b13a76e9e5fc9feb75ddd4358bab6111467b0297d5ca0216a07d77594d12f8b685f9455eb7ce13c4721616364c8e0be5621725a93a94ece36ea0d26e999a301c07ea87c92b43053122b09248ebbf72ae5b5bff3d1c3c71721c44afaa07e7cd19fc4af72656f69738f37f07cf67436e9453b6b87a81498ac0959c8d8bfd416b2d5c5e6d46df1d9d063ec934f77dc6aedfa53c0ecc189cf4610c86cbfec6c703381d9fa9132a5f1f816c4b56d2a28d972e99975708477469e48ea685b92332218584c4b7a4177139f07346cb4a66cdb6493de3c531075d7158a32f9b7e5bc504d258748d8d887b5ed92f86466f3b0c2a4f4c7053ec00e5e6b612df52eecc311e55c12c603b1d9ad0f562ffb4f1623ac5d2493f096d8fa3936dae99f756d1f4aeb6eb45d05eb3ae863e6ebe0a2510f85b32f533f254e195cb159cdfcf0129408de9000fb62b5dee364d7234dede1098772be32f473db0629901c1e6e6971440e4ca4b2e1cfae9411454eb1f82ac518b6687e42e1a73bb8ddd7358c2703149ffea1cf311fbc6e823bdcee584296696ed3e651b45768572cbcfe7eef4a29d53bb33463d4cf3f9171f9f054f0ca0e5e9bd59492d25ff2d9fb2d6be4aee036e335e5e52d77bfd4ec834886fa6164283f84cdd098a64fbe048827ab50a51d74812ca79177fd1974e177bfc2de45e203b5b667448e5229bf22f13f23fae389785c8a5b4d005c45326635c44ed7a55de3f79e7076f0b53cd0ee7d99c0c1558c963ccda1de8985f03197d6133a80b72ee868af21ef327a47ff333dfacd109612d4b4026748fd36da5a19853cb1615dd9714830e4b9f024866ecc76b918205ca3fa1f16cd90dc331052bbb516b9cf6173a5034c12c65883d93c9b3b6070b675ed847966d00b5119300e95a9454efdaf0c74b140ef749ffe7748bc3dba29a1dd8bec2c6557d18ff315e19a847a333bd55b1634c25daaa059bf9d147951589f4ef2289176340f4e7375efd8316fad93f8fdf1df699f60a6c654bcaf4c2b9d1eae8f1bab8bdf83015e7dc3bdd9298dab681656f147d3a9724347d79a3505b26346f9f564396239638d73cc4ce3bf955015506225d37d8a278e3dbc57063b14dadecfb92090567099d138d988e86d76b0c147488f266b97eaebd6b9e1be641bd75377b0fc07c2283b71d2d09143e2a3bd848df6ba93621609bf012659e3d74a4bf5abbfc78bf08e7d0b21648e9f4c7acf0bce34c45a1c035d030d811ac01035347c72eb5c1c23da2bf21c15b039763350c0fe787d6f0b8e7d4e84190a3bb5e197097953a651a10523bde57177d5ffb11dd75630269a231900b73089c884c3bcd842f9c09a213eb2784956c2b90ed462086f5f764200929574492a739b7b0b5b5177f176b08a17cb83149ae5ec96632104ede614d4e8f0c37bd13918204dc1e5a5115b144d7a22fe8432cb77f7f0d098feb14fa95b13aeca0891633591fd25248f8e448288b0b35a626740fd65fe6e19c48c04b21aeded8421f3755df945d0769590b5237f4b773e60fb912f34c56364bfb476cd9e184c1678d1a612f8a3dd65b9867"},
{"0000000000000000000000000000000000000000000000000000000000000044", "00773b47fb113669fc24767d65d5008a5e9b1afc2017283d75319d04d3e51e84d5bdbfece9a03b77217b0b4f31f449e02565b62640bb52df516cf933f0148c1686a0e072661ad7a04aa6beb954af11e6d2f2cebd07cf48a41d70ecfbc868016550c7f2b4de887adaa8143c9685898b15948ce6e21669a19bbcc5b48d2a181ee6eb95ab21239dccd3a4b3e538c1d702fa590320294e23ed656f47cdc9a552bf22da30a5082b19ebf105153946446ed721c6ae619d64d2d51a9201f6604220a98ad3270c58ad5dde373e5ec58191d16211b4d60e9b9f1e16690405ee42e313542ac8ab057c3a8daf187f3dd776cf9b9d1b91b4de19709f49eddbd9bdea05edf73464a76c097d50a161d09524150f66b5b37108df7c531585d102ed57b114048f63ec69692e4416205126981d888be1f18805060ef10abd778e35469041493ea7e259e63f6043c4803768f0531821ba9f540108e6a0c21e347149e19023ef961f359bffd280521d4673c5b20fd0f6b7c902a7b196f0dcae48cf8a9a0db4cd4c7116d99ecfe313e56ff1742f356ebdb9ba3c227b43216894e3f48ab7099555a49e60e47793800614ac5a0b1bb2e1bc23a277985617d986f7ff3acd0e873181543d7885f1e9f131d7be10f9bc3f92d19a30ba13617daa1b65fb4f433847474d45fb4a9c9d75935f67c0d2b21b9393a1fb061f6e4787a1493dadb4024ffbc8834a7dfe7f5812cbdfa7168e9e4e9daa2f0d87c44a2b4f7991e01474a34966aa061235b6db1808cff4c379b812fdf0cff3559ef390e6e625fd845911d0e52a4f560f4d2558087ae57fefca5b46794b1e2363fa374c77c06be73b6259101a9ab2770cbe3f4741a017156979e6c7f3c305e1f6de3bf6d3315774d926df2d16385cfd12ef1d52bf6dbcda4a1ab773c6e64de7f336cceaf52d8639d7e62a7c5eae3727f2af79027f0e9be38512c8767242fc3439b28d3245d8598b1721a795d3d7f9b8cf453c0caaf1887b2ff8fb7da60362734a3bd6e299e5c1c4501b3f143d453ed340c426c3336127a98ec5cf1145b9bf52f90dd2810ffb06156506476e0d239d89bc07884e59fbf26f59b82ecb49984d4423e11ded798255527567d13ae7971f552730ca5b1ab42ed9bfff15e42eccb80c212c084dad7636a912d2f751a361799f44d4f1781e45eb20bda99904ba1832eb030ce3f303a05593ff8c169aedbad9895243d451fdd4b05580877845176f44fe7273f4f0c1193b4747c4d7552d4c47b46cd8b27ce6d257d920fe5fbf4476c1deb9550d03c700d5e942aab8ab1d2939053574f5cc208223dc9ce45816fce2897e7cdf6be7164b90ce13cc4167a5483321db5969dd7fe4b71984355bb1f4a6a146d5da1be62723da6aa6561537f0bd72b6e61249b156e5a973a90830d996430fc6bf2426037750e05db5f949fe8c174d355a286e32377cdf46584825e4165fde157d59a766457d477ac247f6557d14d0bc3218dab1f90fdc71dc40974a54944d51351f2a4f7da360965d879ab06611453db585c4df79137b03cbab6565242e77a311c260cb483a612a85781e104a49ec7326a7d133bd7b057c8c584a7e2b07fa067f32257ae8a1538a8d5a7f74b286fb07664ce1949a8a3370758bf2e25725799e7530c75b73b25ddf152b050396992a2ccc824defe3244065346441d0a8d6f89a0a2e6760ebc6b526ab6f14472cb4f88b55095c324a34d0efdb39ce22b92dc3073cce4485ceb89a5bda3f478b5b7fa695ead0c96498d85f6a0a5a595553d5aa09b2528a5745d947bdff22909955d55d6548d5542e3cf16fe1edad9d7db27fa71b69bfbd92706c7ee47c21dafd6ca7ec494b7f9c328219e73f26654b3f5f4b2509cc7ea0b4751db98b16854f547efe5c53130584"},
{"00000000000000000000000000000000000000000000000000000000000004f1", "013de39a9540c2646bde41b816df2d89756bdd12fb1519bfa650deee25cbca4277adb58ace40dffc42a608438ea1119ca633e646e631b03936b9ece51732bf2587917048e4aff7846f769794d07b420ee6f52fb905b273ca0989c07bf81780ffdac8aac65e70d93e3846b73662fd535b015b08b67484f6130afb6b3f7d55154167e3de246cab7994c223ba113d09cc723108d918bc7ac36bcc679efa71a2115dcd197b42f7fa7bf401f1a12316127bc19a81442e48b7726d3177924d7f2bd83d32b059d91faa0012de7ffad2918d25d4db461826c786f0cdaf7cc6b0120164bbeaecfd349dc29024a976d76a18bd39e51e84ce8f7d7811f3efb4173103beca35bc76816bf43622bd26ca657133497f88ad4f39fcfbf3aa7edf86c98564414291f5e5e6dfab1d1c7bf5e30ecd784b9548a46bd446b4f534e73088df2d1c951d558cd550a9e4882f89c975ae87635ff501054814a1299fcdd5fca311975dd7dec1583f33c2460e41cd286f5e0b0bc601311b16f51b85370151249c077cea1c064ad9b32c64b53e63dd247b5d7fdc11466e3e1e2ca9f1af7dae9f5a30ef739456b3803aaa410d24591e5e5d0ba3d4cb93023a7e0e0dd2cf52cef6638beef88e5b6887193278889febe82e8850d56d7c2e5a4442ba10ec43bc6e4459775c5342822217ff79380bee68b11043ff0f52979e81770cf2c407b7770707d4d33ff613ed4b02a921150c4eb1f1ba1dbbde0244b6beb6b65561fccace36401a39ed89a344ae28661c57b2737dd1ffeee15234e177f32f970ecffacd6327afec43a84c9a44913296c3a5f55526f37a1aed340ddb79726214ee2784d0f653284fecbea5727865af54f6ad631967f8b78c8d9924d74cecf3378cfeb6ae105e2d80fa464fc3482118fc747f6cf76f74bc8d9f13a87badff596a55a63003deadc214ddf1c0b0b5db013ed70d1e4f7cbd8958234ec5b4016d0d3ab2d3ff1e63dc0e959adcf9903514fbd4726f86c52ebf643610034a52a26c7dc982e9d15ced1163c57f436c1a99195206f353699bf7f26fa3a721e78cbf3c67fe849d0fe0f78a094bd32d2b7041dc547d7f29cc81954e6319969d2c2b0da3919ab4726e53735e2cc468ec92c6163e9697b19ab3e3a33a2455a2cb3ba5a1f35e0c2b174ff6f88a22796dd8c6d236531aa7415b17d0fe40070f1c78f89544f0d849612f87483a11bfd0be8c0028e11418868f7c98fe3f9332adac616d8c743bdb5e10b7d0e0dec7895b661271617e3f2d01e7291c3bdd282283fd88d2e760b5d6d62bbcdb35c5ce5b17261f10bf5707732f8801e6c7814e397ab60f3394be9b933d6ddb6fac591a19394a19365150c0675f5c7ff951122153c0f4a6e44db6c7914e313a7ff5ba7993e22544581e4e4577d847c48e74d4885348795045164b0d04e266031ee2bf41fd7100a3ac724590cafdbe0b5b09d0e331d2363923c02af3d8f3661ad9aeb054f7e30602f4d88173b23fe4024328eb6759bd8813563b8b0b1872ac365333fd4bccf22b29d05255092f9db3b808531050c6249055347a940b65abf39da93afe3e9c0fa53a3fd98bda05f06cb3bdf5a7fff53aab73a3761d716f6059938e4d924fa282e69b3a7614a512c88239bf8f5ffeecd52beda493f570ecce168a99dbcba50af269f326068f774d496684b45688a5ec9c158eed1063a576ef09293128c02aef62db085fb7827f9b5d166d8d8533ce69a13f84c1cd3cefbe610756fc249877482dbddb5e98854221f8929fd11862d7db1d80b60d81f38c150e293ccb9103693da97c3ea2781decd2370653ceb6d11988982f1861ca6b3e96cf0477f0d51e356d9f832f32dba90a06b4935c4691ba74b420f43d2f3bcc20185b17858529f0ccfd110e8494b97cb5"},
{"00000000000000000000000000000000000000000000000000000000000000d0", "00943c4eeac4ad0d2385d22d71b81ebe437852c94525b1ed45229dfa76fb38d3c5e3736381c00512db880d79a493af91f15b5d0e724b3b18c537401a1df07a399b94f38ca54e1b4e0c57c24dee681ea8f2d7023d00a40a3f340895f5ad8b9097ee0f9f60457f37828f4c5ddef2f4971f630523189312f512da43e732a4dc0a598e11680804927ac5111afc0db6dda838dd0aae11453e94f71714cd2d35931143a8b54ea1c6bab5610441db62264b442ac009b1417810cba534f24be7bb3f77a78f9b2085cf5acdf580e8db4b7b1a651d2eb8154ba6ff6fd6716980a2d15e4634a786f97458202b25a56627139d6ec14af3c6cd28b7fd2a1f8c1856ef055b58c0e8b59411d64592ab1315f20d4f3092b9c60f6fdb00d82a70957be28921ccea88869114de233d06443cdfaba549439af93128c0c1d2bcf5149f4e1f07d2b190bee2073b8edec31711c86c958c68be359b04510438ae27dde3b76e66a6bbbdd4ebbbe7bed65f77d8e5bdcb212db54a69a7af7e55342dee691eeb1a30f795018d93a048d6731368c99c59ba0ace59ad726f5d4da1c39e31fdc590e8b369fe369300ac98a0e90470d67b80d4cd010528742624c02a12c72496d03d05566248b30f7a92b38e817aa8ddb8449bf16507ea0c557ffb0263a39d6184241119e2619217569c89d43c8bb656e0d6cd790148b44781b2dce32fd65a03ad0d1d693d019cebf96dace0ead12ee5ee12395d3d5c1a7a17307c74f2e7ff1e86f461dfa295f2e9d738f71e895c22078e4d1195885821cb5cd89267631a2c8027f1a7f120255d634c8846bef37197e9dfe1feb34c0d717d2e02c7df7194ac73892b5034099dddde1ef130c697c9ffa00893187a33c962c42f81cf909bde472072d3516b8d7e1533db54e363c255897ebc8c44194db3bdc3bfe7cfd3ba84f6b7216146bdf6683d8edb015604c2f584fa43b43c618ca1936456d8f5deb9b712d09f8fefa3d29f655fa255ec17ff2ff47b7fd6cd0670340a82308ae3e7a481a3795376759adcfdbf5e4e46e52e53d9ebdde37a86659f6676e7c56bbf0c7e05822e03850e916ff6e7526035be5150b59b85d795458dc63dbe95a28fb10f086d5ff0b3137f755dae2a0fdeceeffdcc4213498b53035f721129a7714fbab81848696a6927aa81efaa8497f3bd60126e725a08d204657be4138155103456907750507e2e417f751151226674a099e9a391f7117260e737651d54c7d8c14808d43fec8803f8cccd7841b856c8bcc4920d48e5bc15bbfd8b2291fdf6fbd075dd89525c11aa7eef978e0b009d3660c2c77be674f71ec0479e6fbd269f59660cc084f6d14aa6e5065514d18135bf0955a2cfcefb0d7273565309d401d10523016266a5d3576e5ee2f81092f97f17d12c3152ebb1e7526a80615b2c3c06ae038fe7763c196881f523d1be7b901e06d2e7ff2f321b0b32a1771aa7ad36db32a825af1f624febd78cd91b0cc2f2c312fd9b439ef4c2e35e70d972b8743d3c302591fb1b1d79310bdd838260b98106c406585e51075abb9173520757b19f32aa94ef28f16b167ef10f12313a82e160a8eb31dc11371e5d4ee483deee4e861576d1092e688563930c37d8b66202264e361545f91a5c23ee6610b7f5e01813e07ccade756d7e9a0a87069c0b401717380dcb6d28370e6352ab44ef5ee46d495175b71d56660563318a4025715056fec21cc2c41c5955d8bc94b213606b646f994b726995ff953b611e71831e4f53d5f37f8713f6482786998126dd5b9e0b3642322f0bf056e71489e72d63928f56071be79137bb5d817d60285f4376cb1b84ebdb8709ee9e1823137f671b4047a8ed1f0812ff4d4ac6f12a0fb7b42e1b8418e197531640f68796f0bfddf059d4bb167244"},
{"0000000000000000000000000000000000000000000000000000000000000ad5", "002f9b1e475e6f6321db87753b7399725380ffd1d030922fd167ed9a59f9517484e2fc88a27073f44d0f2145e6dc4d628cc387f3834f4f50cc7ce72b3c6c362f5c14858f1abfb5361026937df29502ad6536a6eb0099007c6b47e28a553665a0e750d00dfe2c7d1f0814288a5d699ec0ab654af1b5d59370775b65bfb0350242ea4a9fd588fac645e087b75cfc11e9e8b91471309c3c2b6450cd61f80c87dfafe51dd2f0c1be4db007c635ff650d21812f3b92df2638e5790cd68b8e8f2cf743684025ff05640993fd08781ff987096ea32d280647dbb8cff692e5eb884df7c6f7cace34f6b9e33daed25d1b68485de0c56492afc009cd3d7f0b0ffa07e94447af869087f903327482b1fa127a323a7ebf0ef75a4190e06a7365ea9238b0b5a5f8ad933243b907fa309638b9388fdce880ef5cdfcbd5de2b11f086135df6e539c8b8e87328230d38f89b957a55ebe88901eb232e221003f72960246fa87b01a148366bb293096e2edbeec527624d2350fc7cd6f7b50d2c4c26961effd55e49abc557ef3945ed494658922bb198b6ef20bd3ffe20748567cd466650d5bcb09a0d81d293e81663c513171613dbf54e228ba6c400d4e28f35b23e52891fbdc136391dc1d1c77fe4e7298e180951a8b31ee4c93428ea1add61a2c454a44c36359529d224ae6ea993aa47a2b5ed57212a75f06fd9b6a1edf9bca50424497104a0b1e1ed98a4e8cd3c2da749ce5bb45f359f9fab8a4db0aedb16281ad5ee3e1edad35d0261089696463e67e68fc8fa52803affb13d734650949733dc369449e7f03d6ad3c402f5760509592a3c0b920b120a05666b4b6f70d60571a8dfd375f559f927f22b35efc6ae5ea5fdd7a7c5852b398c16fcb099f94f0b69cdfce1e1212f862a628b4a25f025fc8438b6c1318f0ff25a6baca9622dc3198f1fec0932f1d8a930006d1db00d89fd452312f22bc250278e2f809a835b11c63c1ed1574880f0fb94508e323776d52c7c7951044d1be9578be013d7e7948846f53a2d42e4dca573065f1582866f89ddedcbb1b3eaaee070e8fd572394009432d8b74ab166a7b1e788dbe51772862f7a7dfc02ea8c87c68b06653e2373518e2763f278ecb5a844114abcfb22959d66bbd262561e18282560016ee1fa16e93be3fe1d26378e93945bfbe1118a13f21be2df04ec472d202f59b7d65bc350cf63f832b4cbddbe070f61fdaffe0ecbcaf708d276c9ca8ae79dcf3fa234154fd8f863a3b9bf5406a8e85cf0e4c66ff51536f637c4d46daa604fc39f8de4e39830b427d2d23eea021ce41ca58454fd6352f873b4037f861d523c2a9d0d4c1dc67120aa71edb956059f1de1a4861de118359b210a66868fe3020d67e9c339dbc1c61a73fb94110f23471e2c47cc99c135cb328ec0be55e12751f41ef700b20277d841532c79596e55b973de639cb9bf8af38196e4da61f73075bce6c8f9466caa96b7d4f8ccf61787915947ec86a77a71c387fc41e60a7b42dcb88f2cfaad144b12a8cba8da6449d83aaec1b5e8b399c2026d7668edab3d19d5112229ed54945a07fbb55f9a13388280dcd42e80dd1884da2bfc60871dc8ff45cb1bb06658d2e707f9ea7c64b15e67315a9966f746d44a47a3415264e57f3cfaa9ddf7d2686b68189b48bc0d409fc727cd66ddca78d3a50c3ec8924ad37f993926470e0c995f0fedc6ad25913d30818d80238d80531090562c15d27a3999dde1d58c95a26610a738ee4d167592f4d9a0ad3f5bb4a3d4999fc15dfc6ef46a14152982ecc90c4dee642cc2ec8f1a98f93342eef6e6561b435df8b08bc3c847256dd2d689a98ab25890783f8abf3e7d60b0a3e585168091e6deea06597724a65d193f01ab2f26a1d009e90469e3fc971eb3de729d"},
{"0000000000000000000000000000000000000000000000000000000000001506", "005b0ceeeb6de013dab7318c122a19e234c493601e29c2dbcf6f4bd4d4868fe2e951e703a26ec576aa410cb721477fc940bbc704a57ed153630324139d9a621f324dc8114a5325c909a508fbf7541b18a75d657e1043378899e9e481514203baa4ffb806bf30570ee217e9e75e2d6b583f845853b721d74c4e86febb31f51223dfd95bd032817a4b91299c5d3d06dc72d914cf247271a6ae1047056f17b5d1cfbda5739c37de634401e03270b406865555c192d975564291646d9d5fa813e2370f7c72364bd11a96dba4f7c339fdee3d85a80e9a443ee14885598995b848e5597b9b88e83d57dd19627f5b481c2b6af858c41b02eb7a4a3862d3241802493cc3f7d199ab271c83e6342b4a24fad1ad1bc60d621fba25c814bb94e3610887e5046b0805bba111029fa2f47feb6ac7e881d15b4f2979ef9a04dd20b608f67f1bf1427b1545cca7321cff912b04f59f60fa03683b0af025abb161b021436916912e24b8574ffc91a3b6e5af31b577dd7b1c107c7cba4335de7e9d1e2290a5232a1ebb87d26c0afede785b8b1f0f1c148f436592584e9a769b9e91eabe2565965eeb85dec14c045c1b16011b4c379467085a2d7fc12b40d57d0e1004e79bfdec73a5afaa0f51bab6fe51e1946570f22c0620d83bbb0e364f1ee811137c4c0af33f9ffef98c0daca46fa9883cd1f546852fb0744a7a15ef7d342e06b4b5fde7565ff99ae7756671408ab55daef35878419e2e2313d5fed342bb043daa3f41e30b047e18710c6534fba79a12bbed3b820b6c3801549bb31a744a105e1d93fa5d1001219a5a1fb75ddd6acdc93f78de0ab97d6a6e4345a8b58f524157cceb3ced0199e69b23cd9cb797d5ea01da3aa7ce33689376b5ce57f68a10899b132b3bc72de7a3a8f7805b0892f2df599f7926a01b0227534ac1ba5362f1189c49aec2575bbeb2013880d204c82c38eb495174d43a2f15c8d1dc34e638c4eb9564559c476e29a414e2eda161f86f93dada0150ebf60d2252edfbbce0bf22d2fdfe2ac3d912a41007f95e4c9be0df7895720e6372360161b63ffc7508a3c5ff2a92e4756a9af2aff166f151a430df695f361184c7a98f0f15da9324cea3db906e97565ca1530b0c69bb4a9576a367e970b672deea16648156ecde17ad62ea1a470423dbbfa22535ed1ff09fc0384c99031fd2825cb1279198db125629ec3ff5f7a55845356533f5cd19b4e6c3f12927d744d167fe5726bfef7d117c16f05d61d9816572e2e8d4ae90f98243add2ac4ebc3b9a975534571fe5f5a6ede5ea8a1b713df7ab181c324c6b1b2f531c8c92fe192226b5bc95b0e7091d6d7e6fa3a3cf79b7baf2c4bdfbbb498a7ef875f32478fbc4892dadf3f1bf4909494cd7272b227c72fd653e2768cd1af301205b0731505f3ebe13431ac82207374727bbad295fe3986560af4684ce4e0b3c29a80bc02f8f635eca771576f55d5dac779dad0f5bd0521671c497cfeba1b36e80d1ea19dbc321d6f79c4a0a1811ec618ea977f35a9c2424ba4224eac9be1aeea809c0549624d447f90a3f40b96ad67bd09d3b320cd50f3fb219f36968977d87771b9d4fc98a928fb588c1105dde2e31d4af25bb18c3fc0436f5a661cd3a3b2c852c658398a5393bb7f568e33c71cba2f7231a31fa0ba510b7add98acb9dc7a13034f522adf9e1baf5ac3a7ece90314ed7e7493548498c42ab1645717ace7512ddd1b8b83695a5c1c0b17694224a766945ba5c0e41998dc21ab0cc1bb44a37e6477c03eaab0a9fd5d416bb5b921f0d5c8e9994437e827278911f087e0dc46621d7938d62ab4bd3db388fb6646bf2f81c7df38b2b747fe2d5f22c43aa3cc4544df641e934747256562ddd83b30ae40007b08a2365531d012ae8fbbddaec"},
{"0000000000000000000000000000000000000000000000000000000000000064", "018d219242e7ff85dbe5c36843f9de75ff65516f0c27477d768f234c337ff1abfe1ae30fa30f3ed9ae102b2c237f56535bc1aebf46a20d3b3b05c5007518883a2574fe29942c1edd78972829fe44360db67bd0c702e20707e7063d25555283ab8b30b065454afec5451734e9734311dca8e993c5cb784ff0398bb4ad0d8d1adc72efc93467a5ed4552e2de471775c493534b1e1cbc4ad3d852df779c47c7faafe5553f411e7fdb800422e6539e5d979903322608ac6afe41d9013d4fd813a82b970148fb36ac5532d2572ae2ddacc391e57b0ccd22362a18652d47a1b34024e84aca10db5ac2461203293a87873386accae16a08dadf2080121e84a70a2b015f8d1fca4d7e3b61e090cf7f2cbd207549f2152711c6cbcdd7a8b13fe9c6646e4b12726759eacf17f4933a140bc60ffc69c3a5d451694552831f7ed41997ff8dceca138caa1de347143370ca3778920b0f03b36e2b3c0ad9c78b98a295a5787a557310902bd9274404219a97c60f22b495745cd6594dad4b58ec40156edefdde572b596bff8344953231e544a7bbf92721a9ab28b2e5463de747a284aa3460d8bc541121c804bf6f0bc71b99d93b2c02d68ffa7bcf99fd1f9a501e6cb402ac4fab39fdfbbc86a26bc65f56c89b264c095581bb52a540cbbebda1267de6d2907bc736dd281bb78f0b0ea3fa47ddf498f65b4877ee7010f38cd30650afc449b2900ffaf282656f26246cab5ae87d2610cf6bbe48982ab9771d93bba6bd307e788a5c169c07332ccc92ed0ead9ca1c539a565ead6575c32c4095bf9a491d3aaa509c456f5c953e9fd7e35859c9cc20ce7b6ce3fab2149707631e8e3956fa8a29dc57d533930148f431b9a45ddea87341556fd0a9f221834c925fd93370b2324932da723cb1a3e4cee1f607a8c2e3febdad32667b6634c8e3b2af56935bb2b21ff2302018d332ab59acf657e16220f7ac7fceab9fbfdf91e06b0a7a9ce4847c8fe22f0fd0b3d7d8954b1ab8e131889a6f37d8aaaeb8d9083f554fc41056da7179119564cb73c10d881096cb5a6de633d059dceed95fbfd0ae66250aecf9f6ac06f64e4ce2d152555238ff8100cf6ba6be32d4841faff4922f07dec1e5dc61dd48312ef3184421c8d854458a64f11d3a02277f61e04d7294c356b661ec9cf857a541a2524ffa9ca331794f703acb2b58ad25fcaa28eb1702572ec3635427b993a1a4daabcdad88969efa951e7d9be532f18fe19b79e0e4905674a909323eaa2a1f6232b9f4d86c7d9057b1f04852c782ac3d9eb0b33cc6566f4997f4cfb784a060710bc186860d5a00134e2207997fba2851f23c01de03ff31ece77e09660a35718fe9ac189105898b510a65f422f09f84b9274662b81b4a3d1b8ef7699b2533e7f119f6a43596806279cb14c4756cca577af3c03a72e7ba86915c9fb84f140c2fa2b7dee8ff4f5eb47099f80645b3470fe9d95172b3c7116e9ca5f59e809134f04e3613d5b3ec5e39033a73932bdc879838b40e0436c40f040c5c06cc43ce62386893363fa91160ba6826233cfd332b8598889b9526ba63c575431ab4b020cc2a25339414ed674bfccdebdd5e245fb43810fb1f69c17a8b6c1bbf4b1ce116c915d8cd71c536414a0a1b8840c9239249e54a321d7642593b67b48da0c89728cdb49691b8dbfb1cdca4cfaad76477650a42ab81b0ea197109ae44e33a415c3809e84c9b51e9f1047a5fc0be03c15201185898f55a3072c34bc01c92270698a124924ac632413e07ba2e6fa0aaf15db1019c317c138e89c1bc2ea46c59eed16b22c6fd9a1215560f50f4621593544a057d50de7afaa7165d3d37e51986b2afb22046b4c6656a7f0c0ab93ac9cff877259327fc860997f95fc6d98d38a6fce270d0e1f886e"},
{"0000000000000000000000000000000000000000000000000000000000000f1d", "01062ede308a524f99e010cca87a186c810ccdb6de3a45a7e84ba5223f544005d93265e8e711ff3c691a0f280dff2d4e28509021c258ecb5ea0cb37baea0cc11ff1278daa52fc57e796226f7fdba715f8a3c6fdb02c5c6d08f4ebaa317c9e8fe8fef9646cf63382934454d5dd36356c19b245e07fbf34d39ae523ab69c6505702dae820e3b2358b4b4346fbb36a202e61d54e936a05714fe8e147f2549d5254a7a912e0d127f254a06fb78421c6291854ab9a0882ed6c86075e4f1006547a5ef87066bcc81d457c6f78df49d8a99ce96f67e2206ec2ae7e581374118d41f11efbb4afc16bdbfeb3aff2e67cf1ef7edb7b0c589883d8beee27539b985071d2e7f6e24b5a9e20412e888d40a00c08c19a37e31289e1b1d5537eddcd6b35b4c9b295b67f43ee0c41395ccff466c02e7781f11c7d64942d542195f630a2c5e02ed6fa4f4d19223f592fbb73402033e1fe7700274e4de8cde7287cabc80a88633ddf059d1f72ebd14e54b19798e668f60f4e428c4b4ccf2649d142a800526c251f11622c93f02b422dcb39f1d7678b4218014b7e6624d552f23896412f992c08e7605fdd7f498059450da4414896d452111bc2b3b6fa08769bb1d9b075f1d3bfbc24a24cd67a5f6f9db41a5e1cbb597e60eca9795ec4a896192e03d1663f17b637589fc3f6c17b5ac925bde5077f9739433875937f22b6452a76303c6cfaa981212614b6862838ad27b9f1d239abb34255301a8a1639c455e0a62cbc9dbfd1948308cae8f08f53a7cf602c4e5698877618c697112f9181bbcd81e81d9b10559eb91d247c35331724b5f29659ec4b312f1951a41d0c6577c1f64a71c779b55bd743056f85d733cdc155b08fb51a2aaef4372cfd2fa8d9e3f6d27237f55c956fce5486d7511fbe9f05edcdf9920894d60d5087a150f5dce5f84f43a2be68a5af59be27f01460a5f234408f3533461f404be17a18d90cc816450bb234c3c27ac3da24667b521c1dd576cdcfc395005a3bbdce78c4b13c5dd60d7c1e0e52d1316ce849259fe4d8cbdd71ed512449726d94d2641fbb3be3c550b41bf00ffe43ca34756622e4d9389c50a9bd075ba15eac9e83d46f354c9e672e0656c10be01685480bd2d8815c3e822a8c58c26ca539ae13d52e9857d00a07e98b5eff170736bcd7c3a4649d611e70feedeb7090179633f1ec1a512cf64a0a78dc973dad26ffa0f7c115325e3b0d172dbecd416fd4868004a23e7f884ca05542751e92d8227d5a6f3d9766798357e0d57138b186f71023da9d48dd8b90456d2e16241ae482dc52907c9eabbf2b2a6c9a4b74217e3beb8819390f8eb0e0ff6b9802964161fc3df235a03cacabab48affb18e1f52ea2c2cd8455959b8527dc3d01150b446da4e6a3b675a5feb6e4c45db2d2561c1e13dc1a92734c59f014cf2d6df88c8ef01a158081b74559efea75ca36b0443d48f8677a111c56b428f95dfc0ef1c377c428c06005d919f8f1ae73e9333f00a5d78c0fd1bd21d551ba9f8edca1c65ecf4db42016a46a76aeae5589169067934f8e6ddcd5743ae511812a587eb787ddd4e990e4878c172d915e14d3e00ea2b6b0f84875325b59c0ce250d2228acbaf98aaf0f28d1e766d1db10d22d7524dd483ef9ecb56ffbdb5ac37d29a1a5f3c9bea7901790819ac081b75af635344de53bfa9ac2ad8b11f086e4dc55ce2acb7e77132a0b37b6368c6345fa4cb05eba750cc979445848bd1ce341e70099f72d547f2299129eb20214cd50c94448a90b5d781a08a1d95c3074903823cd2889b6d02918d8a7eaa4e38157ae5232a0945b4731676dd7071164f22d5785eee03be1f7e17a4fa7db5d7313ba95b76b31cf237d2f9285d53301fb509213c0bac2f689842be6e56467ddde63e6913"},
{"0000000000000000000000000000000000000000000000000000000000000553", "01df4850a61bb8118ce085d5b460c325bd235ce61a03205a69df444078db903655dad5f426947a9eef4704f53ad89bd182c507fde233904fb87962a50c9c753bdfe4debc1a59db9b8f143b3fa25f9dc905509a6f04267f02aa480acb2707ec28bde70cc3178c19731a27cca7a1a3cc59837b33d86e9175268a76fdf9e6891697b1d6fbc8f857ce381286ae24f447871c1dfc2220c091757468a695518fc5894871de917b0e7333640688c585039afaaadebc26d9ba702239cedd18db3f07b14e94d0a85d4d8995236ecc1eee0ed8ed9b64b20cbaad4399317b9db5b485feda571715881eb865cf358923e0480feb7f38e34ceefeffcd2770f0fea9e9099a63104a8e4b3dfcf3d793aa4a4986412333f8f90c36a3e13984d4fe702b26efcdee68e26544dafe5720334e0afaa2602db3fca47aa3c5c67e70ce36308622434a827915ae5abdaef765c87f6bee220013c87d084b28435bd22e7d8a5094175bc66651beda7c4e743707630a86ff03c7fb0e33839548d89101b3d03fb12dad82002896c2e8e44ac7c01d7ef616afe15aada83bbae27c42a26d51d0f9172011e293d5f3ce3532d41e183a0f7d5a2a4fe4e4235313b73be6d2a637be1120417a2280e8031df8eae6f0304b3693d22abf727928f83d935ecfd926c197b86cb8ff092eb5d576ccb731f08fe4b9ac93cfc671b45d94f57ae143d21bb6bb0dcb82d38717d82ff98728ce6a52cb8ee5d45d7b994ac70a64819fd9c343f2b6e69376d48211d6d2e81b1a9a2e5f935b655f2d653596ecd33c55d1e699222f3c173cc08fdede79b2a875b63e6126aab50b1d91eb11b7173dce4ba5f7212ce968eff9fad74516de15f02f2abaf9d32324d5e86219a2bff571b67b8693f77f1ffb62e626d1f62f7b0a66ccb2d33f21f6b5b0b93c4320d725bf72faaf98c44447b74041858cc599b09f03f7a798f447663d185954a27e5c5499f8589d5b4b16394427718d01091564b50aee559f2a1cb2def32a0d005b9a6903953530367cdc1aea11ef4b055b7f6b0f52f0db0e1e8ba56f8303258f221da2e91efca73e15368ac0e3c640bf28e2127374b3dd915a00ccd1431634b24ccf09be8a905874c1b94c9532f04cd7e9e12b91d1f0f20dcab5b23bd7694bc6b7f1ff363a4c6f4384543b2ea776c3bda2553816d520223de9da76040c8dee8d87e75d4bcbae929545ef08ccc16ef060050cae0b4f85affa6fc3e4a1e5bcb776949f979f3e0f1caaf6d35d91b139b1025991fc66dd32bfe69d60cc4ed8bb7ae815b64cbfc5557643499691ca489c7d28132a4a3470095ee1d026b19571eef439104febd0612005762a0eed1f19e34af2c07627c391f8a53ff8f51726a35be3073353935239beb6665b32952d55097a369244edeeaf266f9b5535da626f315e3d9b92547104ae62c7f18fc2d50606e15cbc724ae63724df884606a525e47e994bd4f0cf322cbbb28d3df17ef2455e0ec70fca599c040af378c44e8453be2203e39877c3165e330575071f299a2d527c762b1a1de5745f97cd08bd0320891f6995b516d1f6237a9d1e59a017c78f1dde51d8e08f3edccee925f2693a86aee7ce7d280d157d32965c226bf7efe8b2c75a4413366e5ab6be012bd17f9a52d3fd936671a5774eb6011170443d3a4e050e76457b464e1d94a0153d606fa75a2d51bb582023b905fca71183ed58165769d66101de24f13d5028191788e9711129a9a0b04bc991f9ba1f25249e252126d4c16df69313eed9c303a9ab7b62222ff6f71e940b4121fcbf61bd5d907ed49afd444095cdd65f6a1912ce39125404cab37c3774814532b986fc319dce710ead0d78df2706e572c6436617fb1e2d9051b676bf11b057e725148b47194b9798555faba733c7bfab71"},
{"000000000000000000000000000000000000000000000000000000000000249a", "0033d4cfdad02b8deebc69050a4ffe064312de17e5058daf47655dc89b76ab74c028ab9ddd51299627270161875e140129f01f5cb32966f08521686f6fe56f4012135bee9358b12c1b26f0d2e5194ad52f5e488f0207724bb68a5bdc745983b7d7f55c4a0f9fdfd245104a1a315e5f23bb8bf595e0386b76f24db5fbd8f907f107b518c50debdb02f1add2b53f09346b96999509cfb0db8663d18d9b18d1717529ba20df65cd4c5d015a1c18d89d81391c515506c7440219fda458bb4108c580b11f2636a79f5163f87e512cb6eb8f17e47104048c72bf227bcf66f831523873d752042bd4178e19e6abd7bdcee2e9bd3a524640a9ed589221792764038d7be55d86eeaf7412038a51e05120fab79d97341522b72a4eafb83197129a089c5aaa12ba9ddb2def28cca24803bbc3edf45f46548bd03a2dc343ce83ec2cb8bf2008910095c26be6cfaffe3beadc3d5b542d00c4c8f77884a03d3acdc185ae207ced056f3689e903edbe62d20461c518da420cfbd1d07d72c8b907a00506f2ca668e2b6510b4514f1552ef809bcccdb3c23af494ce5a1bfc5596456421f87549aa785c3843db09dd443fdd94c1a566b32235fc684fca8fadf5d94e12f0c15fc09415aae29953ef3b722405bb3d5f96a541c8829623a5eed72f8ef4d0edb21acdbee6519c7145e1c41e455a0dceef693a1c1ee36ee6ec365e6c69059ecd8f9852aa7b757a50b55128ee60b4de7758093338844cad0d41bd36285468a4e0d233005a5c4b980889cb92dc9ff87b72796223da148c88a1f8edd89634f87fcad726f0e7ec6e16927efd9f8b53bd5d3f0a09cff7358307045862d231dc6e8f183668a0139dee1b10d77706a4522fc514f41c0d36b4cdb0316da922189a8192faf856abfb47b22d5c2f015689ba9d34416439cc0c339da37bd9f96d04f7f06993af471f3e0f01e0e8c9770b0658940f028eb7c48d7108b47edced177f6b8692ec422b6e1e0581432e7439f1f7394b26138a5c0e145fbe55f233d343de358e51ec6516de68250721db4acd1108da4a5464fd37f6bd57876bcb6d09003e5f10182b0f63fea20949a95756fd3ff83c6b2105570709c98b8a501e283fe8daa61eb6ff39f727106686fc5a05445e9b1a92976a216744fc8911d57f3cd655764fcf3b7a919c2a04cc7e0b7f72f27cb9e30292766f752039234f3132755f4543aa67c0d7bce429120a0b82def9cd7f71d4316a36877e7e53b4697c0375587238d8976926d7834c0d7ad81dfe5890626e09f0827ef4888eb45c86320e6b5a0c7e708e7e6288101ddb18f51ae51f4d25447806ee981ab1555a55c25d5fbee802adf249bc6f1723414a709a60c517ff411729b2034208ec3877be651534c19de163cc6e1a662326c536cd8a06dee8a984b1b76e3e8643d1fd8cda05f4b0d681eae78b977e55d77fedc2d18b52f5ec06165967e5204d9ab50f29c6a86a5bfe5ef5ae1c5ee30fc1e4dc174b604b59b5a22eee502fa1dd9c3e012763eb3f7fa5f1bde5e35ef8ef2ec80132bb659bf70e12ccc611ab1ac4aeea8485d20e7a09bb52aa3ea7e22e5a097c7e6f366fff5393c8ef2298d5965af45efb35f1d2be61626175a4a8c3f84c6f50b6044adbe3533e31c79baed3e515743844996fad41493f0dfefd94081bb55805e433e7e27be5a03fe8934df457fcf7b71c434f052a4890f395fe12dc10f857bba8cb1e3c5e1d52aec63ad06541f9f1b200b1f862a0b7a6fd144f374ea6b92a1d3d99bd7f06ed5bbd44b7afc69f614709c15b2a57615cbd35bad1ff96a0a8c96db812f28317b64cc4f198e19f8140c2ccc36150c0d2ee18392a29b0b37ea4cb0b26d60bc38b18ce32a8e6cb9e5db635c6ad903b4e4e5328e7c36c174672d14392ff00c2"},
{"00000000000000000000000000000000000000000000000000000000000007de", "0006952d60d34eede8cf8204bb4d33364d3bda07650e399f130333af2fcf116389c01e1f0a8ded759e2b16a38fac874a04667ede58ba457b19dee41cdffbf4200f33d76b08c43d55dd972e5639f8ca61f35470ef0b6bdcd62e02f63bec3591b92afd00e9721ed3ff2a636aeb697a34762df48cf6c73254a032d4b51d83f126faae7f96e56ee1a00c976eaec5a69ee43c5df38d3774863bd9d6aa79d89373cc2020c9222c4b9218e70299307cc86ba995d2f8923da09ef2309bde2fcb1219ee64534c8ffe594a3432dd857cd890ea6adbdc50168603571f1a0e075be01306349c9bf19ea53ea0872450476bdad53c6be816f5d200e37d06082a715c840954656984a49567c34d4293a0156ec0c9b2f6dc5f1c6d87ba359ffba56f86b33a15a82e29459df4499b2d9719a163940cd7433535d85cbeecd5af6797a46836b322f511673dc19718a6f87bf96fb668c9346dc7016ad61ea54f237b627a0045e48d41a32390bc3ef10d9a2e29a1cddd0cc15e33695c509fbce0fc9116cc23052a373f0b6de384e4570d6b7b5812d188f82cec4394f27a84dbc09d5401575eaa7ad1aaa210becc24059107ef05d84ef3e074826749454ee2654e1ce73d1f96a7dde9b65b8bda1076b0805e74df55b1fe8a6a063e5a3ef99f9ea93e1e85b32cb5bd9aaa4357178546cdcb87fdaab0539820b7deaae845227009dba6e606160ce58fd45b755895d0dfa3f564a9f893bc15064d2c0d53fd9e0b4d9d5cc6ee3f7345e35185ff69d207b404ea2c61f2ed2c94e533c15b3aa1ddb3bcb4840d22e0fd1d26d91f3d2813b6cbc4d261dab6fcd59923a24d93b2768917cd4a34b601e40dbd47423581a8608aefeedc5877a961df86cebc705fa272c63672a92e210aa5fa639151e20a452b685792724b5f349e643d8e7447b35720550479c42a3fe1d1ba174a7c8277012efcacbb95e79ef606559786530bae7fde5ca9cc058d02de074851465c18719b2e4f6224e24d492a1f13db533cf58c7768e3d801422e9250de968e9fa09733930c53026ffe35a987e94a2edbcba6a5241bead20c48db6edbcc93bb7579b61ddbb14a0a6ef8fdbc8f19f068e6d4e0a93f76bbe76643660355e1e1d97d0d128baad86f32685d9f339271b06f4fb8ac8c9637c9148cfd168f60ee89754bb4568b4b80121878db39e8091baa5e62913147eb161327c765cefdb269bbf7b30a6871826c8dc686db94f377c9f5ae355aa777508115a894cad507ce7edb9672ca0f33196142eb6ee87967551667265db8a55a2ee7a1f170b2520831976ff71450852254c72e99ef92d14a78386e119e7b5d891c25132acd8ccc21d31a55b3d248a938a209af9eafa31c8a5d7bd397d3d5b7bc32744f5c1b58d270dc524d257216c34e19b36996681b81b65e2fdfb75a5f581602470dc97b82599574ee40e8116e9959fc1036cb281f2491bff754b8f17cf2d37a0fd0ffe3ee3cdff18902eb047fe91183e9459b83d181cb8479b9f29caecc2f860f2d60e67165e37c2623f4eedbcace8e16752a0c7fd8f5b70a78e466bb65fedd67325e2305be96f434ba8b969f508d40c073b82b64e03ca219e39903c211c834f3fd123c15f9cd5667f3dfdb8a9fd65e131c2875b1e8aadee5dd580bc2b584b5ba35c3461004bf0365f06b626e9e17b0fa022781eb4676c673fc582d1a034f65999589b591f2386993cc3d2e2888d1bff1108576fd6271a59fe54c220eeb77389d116379b8e2157878ef5a5e618f697fc6353d41e96aac4d1e45ad12264f4d10a67ad3c06bf23840761dd498228764261941679f28493d619bd671b6ffe20a0d85c3db39ab40b57a7df6a7ff71ea96d5b4f4d826730c4c3ce2084a5b1ed07ed2b4495d01466706fcb2a6406472523b"},
{"000000000000000000000000000000000000000000000000000000000000095c", "01369a38b74c4ce5fbfee0c4ec36b800a484f9d1a20f00c52f568aea7a7d0622a58b4c30ea70257de7fc0f924d8cde1a770578bfe54839c2d56e8efddf1fb42023d9fcbf94a743b478133a4459c29248963294610aee346c13a4c0e9e96ce0fd524aedd8ec233c131f1a5a89b4288ef4ef92a986c76164c809bca21c3ffb12e55290210f037d2b58e4b08f5a752ec5c0df0cbd1e3e6984920d4e71175271ed8fb3e76d079b8b8bd5024bcdc6f9d2e33f6f27073ddb4dce8fb1757eeb1644827441e7dd6941b1a7fc10c1ecdce742c77f5ea30c26ccd227469b0f2a7a5567ddbde51f2342fbf12686a6f7b1cde21f433a27fa8f4c7ada9ac2d6393e880a0f079eae83af9732c9c5000f7adf05725313ad4523ca72650967a2b5cf36b31614cda5ca0f487e3fdb0b422fbd3fcad185d683d220d9e2f22f6d331d320e10babc0ba6e389dd34bd546378cf0f59f9759702e6018876855d2c4d79f3f8615064b5dc753ce2d3e91712bd7426d18adc01777676b64bd287ff20f91ba0f90ce3bb5d84d4cc0add0531f250f78214a0f8f29a1018bb1c74c3485f27c5a244bc7130b925a883744f530e65e963bcc9b44aa9ea8249456cf1b6c9dbb8c62d13db12b4a60566177299235483f52dd1da1bb69b0814754639000fa14116fda6801abce09da67cb875ae1bcff504aa1efb65c12b15f646619cc655c99649d503f68426361abd1d645f73b278b11642062d19fcdd1e2a8e6a103b218fe88dc23e7e70e751a88cde78ee27ddce4588583ccb1f66828bc29ace3d8f98d6f5e83a17f57b5ae81e45fc2937f7fff414cbb1aa7dcbfa06389e4cef98d4aee59a32e1e8fd2299d37cbc6a52089e5684b8cf1d118c6d65cf513fa1bbc2153eaa0b0d3842297e12d027968724884d448ecde73b7f74e65ef8efe0ebdd410b2542b692e5ca07bef4cd1f6a170292cd704c145c4123e240bf14f1751b817d3d299c13a19c4ff00d0c99ad4102283afc0468d3e88983c912c746b86650ecedba45aa1ea5e50ac2a18a9f397336e1361dfeec95c5a72d65ed7afbb2aa3b86b5f79b058a8fb20e4919085cf4e3d5ceb10f328c507600c452060b350960a3c33fefe6d627e36de2af7bb77dac24b20955a45413fbe5b654f96b79241ee4683ba5c03a268c429ee3d373fa8453f974b270790dda35bf070301d7db36c24e45e1f5d1198b532e130676f8b5b70c125df2336e207dc97c63ad0c3a76fe63c27828ec0b03ac952eb1e5d390e734fe6ecdf9fa99ce1e06630db1694af1237c472e97c3e3575aef84fa2598857b0afe7a997aad4adba8fc04460f239c5253a398d5951811cbde2254e3f6d98f371469d2f9833a5e1f4a110b6e3d16a0073cbfd86ff1d160ca9ed170e2dd71c629b51460f35e0509c405985715d9eaf71b4719d0ed03e4b5e0334881ea929097836ed1ccd66dc1dc1d264367a281391dd5699ecd47fe1dcaae2248713813db145cbe7e0dd26da3da3c52554fa3033901d6af089a29f03ef5f469271d4f4c562a75748bc9f04fdf04390e3edf8f7862982bcfd31b0b02590786c816b7928a377737511ca16ef361f1fa0c14628c675082dd67ab1ef2011f4f6abbf399df640c237fdf92a097fef2a825e93f7aca5491d6fe7be3547f1e3a6a63c21c1058041422894fb49089b5a634c5eef8075229cb71e9220a4b9c4adc8fc559e1142c43a77ddfd3c6e99ee7d637b762e9a2d7ca09cee578d5b8e74bfe42c53f3ed13c2f9ac1e51c9ab516edc4c236bb8f2adbbafc12a709df1295e98c72bf09fa12452a215f3d31ebf7608a2944cf585f536037f735d805c3c2979676b55f975e135a7c163d8b9c73b79dc23703ef178d87a4b1915815c50599327ce019fd6eb732f7bcbea632725574e3"},
{"000000000000000000000000000000000000000000000000000000000000029c", "007c7cd7d3abd28fdc79b08d46b42a88b91c3ba9bd01243a458c0e28ef96b4ce0a47fe597fdf155f50910d02d469ab1179d5afb732627ed317f69616fd23710efb551a0386f627f5a8117e3ec617909dc59019bd068e37a4a99a1a692feac7b60abe1c42127f5cf3616d9a6ba2b0df6b0dfabae8ee58efa8cec682feca8415b87dc98f9df0c7a89fe54e30b617097726cf1ead1c62c35112cceb597fb317942e41db46f038dbfcf10fe7d7fe394b0f71cea7173d8f7d025a08ed37566b22270439aaf634f5e974a280cff8bfeecca8bdb2c013d08325e8469b5e4dcde36eb6eae36673dc93c13b1c5b0a4e061b9781b98e8689e739ba2dddd7b17f1e11b8c14c9923f01b342e735ad5b09349c31a7d261b3e9c656fec35dcdbf79e0423315d457e3c8eb9630f17840198244992b3de8d975e9e5f386ef44a99b0ac204f354b60aa30b56c53f2840595ac0ede571735c900f5ebce1303b686b4bf10cb1f7c70bc60b67654f507244c0b544bb263e38fc1ecf23ad3fe8763fcc72519e6f922019145a154c051ef90b0dbb0a106bc3f676590a3c9c1e0182f5a7806ae65bc91be36043391b4056a6a689ae01e91cccd5545b7c6393deb3fff0a0706502a0a7282c57b213e20cdc408765d755aba9ca60d678a01ae26c3c99e62f2ea2ab2e892406379c74b1e38b37316e0fefb85c4c3ce71ab6222761adbf2c20132cd561519200d56beb54292d92407b3b81e0a9c0a49e33cbd6701338497032fd12b878a3810971a45047f2b6ef7d47646c4f0a9d216564caf69ef1dc91c3b7cf778006b8d9fb0b4b79480d21b66d23a5c491a153336008adaaa79d7b7121362c1e4150032bb38ce15eb4274538e4eb4a716535fe0f862cd38219611e417d41a7db40c62aa95552236cc3695510fc248e6821d6a5cf056f3a149b1ed33e43152546d5ebb3810f2008bdd28d49dda4b05de709120ad0b0c37b50b4b764a033fdb745a2b496c017d60e5eeb3736cebbf3d710620e48f51aaad7fbda4509610949c38f6c29a494a2737a7a6af31d0e1bb78aa0213ed1c0ab2d7f762a50a3a34a83196de351ac5f6059d717ecb3eab3f94971c433b6f8ad6a52b5eb8588710d831a3a2bebd355b186435235b9b00897356a211984582ae590a93556e3af88283b59fedd5a2e005e35de087d2e68ebb8f2a038050cc61a11cefe1a194b49d25b52f33bd5acb8525940d1f905b435951336b672c71afb319e4bfd38a0d03ab4a261387fbd54bf431c2b4061d1893b460bd16fe9661ea0fe0d8b0e56285ae413370ac3dd0578c0aa35c845e095f94f97c24390f389b358fbefb01102d5e89a8811e999b0a77d7edb976d3ee8f3a5d0bca265ecba10d903ba38746d466beb0d3228e8d94e9fd2c30b6964f780f53f2837612885aa5a9fbe09b674d01bc610d9c0424ccf0df1617caf23c69bf9c3350a802fbe3d21fc1d5a93178d3b9fc2f7fedac795003d522a8a4a99cd7c81f229f849d6769b8de77cfd988476188ce72f62c1057a952d68d724874ca550b3b9bb10e790da6d3065445e98252dbcc5ab32cf5702e09681354c0b76068c9db8b18131127b58530d13156a4af4d7d2f7c4029aa69f6514767687d5e9e430d5d7a624e833781bb9819752277f529314f26499f38918baf054b34810637ad8dfe7831c0673d70458aa85e759b2d4f855cbd5a5041d3dbe56a88e085559b95bbc49e0656d8a56e9a2211e2d7227875759b8ea93abab5161144221edfd425dd5361d33044479fce4bbcd5f4130617e8ac53c9d9af4f02c27be9e8643207b2508844445b9aea41942111ddad85330c6940b598bbfa1061084ea74e60c27e74aa3451c626be7f87072d1b7be809882c5b684a50ceba58e1c2a03321bf26697f833f"},
{"0000000000000000000000000000000000000000000000000000000000001357", "000617afffd9dce5be88e024370bab7ece4e5dbb9628ed3a3297d060afbf57737e3d61d52e3f321401a402991d8b79839e882d70403994a933b5960352d8df078ec9d2e111b776ecc374c68bd32871f9b1b0f10000c883e027c2dd28bea3945d894099c559fc37524634349d1c21a8114ba800643f19b50cbf6da0bd8b3218bd845b21fa442dec5dc32cf124d45203ab7d6b751a478536505582e976824450e025d4794684386d810a256ee7828553b93d38a55701cca4ae79f395c18327251ab984169001b70d333600741bb2997abfefbb3c37849daf9fc32bbab769c7a8d672828d75d7289c45a5867537195c6f230f968d4cb4857287e4761a900a346e0ca0a27927c60fa383de67af08efed4eee302025c543df9f98c1da90562addddc4d24d063736bc2f2f86ea30746b1bb808a3c469f229b569f811f1b5401b8de74b704bafbce494711758a68d4d4a9a629d02670a19e03a6c8df96760c6ed2ba94c7a193cd971217f75ccfb4a59468aefc4cd4be071913d214ca72c035ee4b8ba92f4d2b51762b9986364c60f379d03850aa7769e68c43f04fb54628c653f922654ed7cf1f50593c5d7f8022cf779ba317f6afff3155792536de929572d25ea5b7a29b462d414a1a88e7599704faa4915c107434d8813df0203c6f8c45420064a3a7e3e59227c5ee0750a5db155ee528afd9fd46cfa8378d20803791d9e3f8c8c727cbfd03d4703e044126b761d7e156f5a0fd1d4ff83c2db6256774084ab204db9dbb2417e86efda117b2978067440d24a07b1a94f51f35857255499002219f36de248d894e641cb31fc5ecf820a3dbc76845ed8d9c8bda15bcd588b2a235d985e568444cefe662cf93bf99f98c58c5646b6cdd07f27d723b419a1e95327b9695453b06a323b1105e9b5cba949288de4d361c19b40e856d2eabcee75f012bebd99004eb40314575b536ab2e2d6a55f86a4ee267ac88738d88d86fcd7464cf367e4741cb55a42e7775f9b5803f110924ea3e72f222db7cfe8d0719646035739df2fa442a3fad86d41e7c5699c7ff1c352c6ea5caf5504ecf67462e2dd5752a46a2ab4586daeda799d920c0e90747622d005474d4156f2a1456aa6181f1c3bef0677ae3cc31a43c7bbaa30b86d2f853938cd1626b51b994ec5c322fc7dab4774d9bcc29555f1fed4d50a0a613eaa8384bc10b88cc59fef6683b708a4be863a4ee7c5d9d6ac251bb8c4f590f9b32979f35c989e382a6fada31fe97bc38e2be67347daacbeee67ff62b13e6c5e44a6527293f1b5f54c34b42932d924d7a9620dfaffca500eccfb2c7dc0f4b31c7d1cddc012d48c2f23fdd90ed656ef607f14d815385bed65214e79b20f87c26abeddf0abcc0513d3de2bcdf2a6ee7c653f125bdd6f0b5d61b1ebf7e272afdf55c65d599394db01ef25b6adb939f5ee6f547e6825b1251fc390f95b1d3c237d1716f488b83936416c6687a632ecf970832a5f4362e71ec1234e06d5055873bd9a6cefbd171c7325e51ade2d4891f0370a19f256b7baaabefb6fb605903b783acd4361073d92c325340395bf2b54ebf13854a33f3d52de2b1592d72babfc359a55d613c6bf0e54f79d40d9114eda6164bbf4f114553cdc322bb410b0a307fc1306559c33656689cdae4fa13efe988402bba6cd6b83b15a697501fa82367baf10f2d936dd34dec6766b52cc6504131862c1ee7a46c25759f72a055dbaa66ba363fbe848c365eabcb151eb41173316678a2d8a516a08ad702559165764637e7783d51bbe19d04ad9e31caf3349e785753d751a755db299633b4372c7f2e891213cfb52f7a3ecd9ea4a45f6d5a2531c35d4aff1547169310851f81931bd1ac106774bc226c411756bb0cbf5916cc2f24be14cdd74a88baefd"},
{"0000000000000000000000000000000000000000000000000000000000000ed4", "00b210d686183ba3e140f22b31aeef34b74b5b7aa630351e5c844c7e776de14458867cce9b1cfcdefd0c047ca29390f14d19c6c6e12d358d195486c3455fca0825b1631ddada4d6e8e33ad1b4aa02187e9d8e6eb018e63f18e1300cab8ae512ac85fea652e4e6a2e60545b83aa6a19cb37295de7071b66b44df64c73d3d7030be0fb628856756569168620eb1a35d82036456b188deeaf8ab419a9e8c102a37075cf39ac9c57c01c043c352e263377adba73a3d73d2ccf79e3a7dfb8b917dc3d10af15f915dfd5b233f62e760a7cf1582f4117654f5a2b9439ebd092051136ef9b05b92270e6901923297181c8d209d1cb72ce216ce80d290a8ecbfa0add0bd4f79e91891c4ba1d391b504d0d385711fa915eaad436ea9e8cd54ba13e8804e757b1d81bcaa4925576dffcd6477f1cb8f137a0278c901bd2f0e1b4b5a3322e3ba1fe21b1e1b16da51ea07eafc0ab8962303dd63595f44c8b3b3d4310ab30b6b4554827e3bb0401e64aebc151ed5d591852df5d1d6619a8152c3730cb6ef26dea1e60158f201689ad4de4dc0004eabf911c8fc8874132375c2eca1e99a6c022212c7de88b70d4cb080da666abfaa5f5481decf9059a9d475d47313c25e965316aaa3684771c5e653b4dd67204e40081765a399200fb0f8f03e24ad3e7ea1796f3f1b1cdb1fe93eee08e0f489dd47c41cecd6e49dc978d21b530f0293f08d53957767a637af8b3e4346627af737e1168b8451b05960f53690a322d9fa46a9ef9a5bf475219c326ce15fb8a18f0c92ae792bd96d4e0632f2433c4df66e1df30c45c6cd044566d1ade598e7f98fb9105d69a8b2c9d5b9470ec4922dde7ec27c55bb40174395ab24bb5810c9a8dc345378b0ddd925a5cc9eb816adcbf7f311adc7fa8078b90446275e6afb1ab598335efc08a5956f37083416df393a45ede948d978c100f5e1922e02a9686dd9018b04a4b55213fd1b824d1a5bcc7cda1d79c19ca6031b4faa60d9739f18b1cf0a1a0a76995a2513611709fa9fd1f6571d34be1ef84d4b04d07ce2a7ab638fb651a03c2005c9e9f54fa6110718c4e158f300de0f53f4cc792bcd227bef0d79237d3a38f91eea7387564487b6b5e2e1d4201a2a801651ca2c4da34bdff3db1334e5546209708b54e23f358404739f6d1517784569fc3f53b8bab698b86d610539143c43c6522473fc730bc560435572bcf48f8f37c4b6250fa95d5d9af9f79a53f097c6d073bad86714b31d242f9cafd79afcb3e3f5594775ee7eb9ba80153ad5ec43cd7bd1f474627aeaca44e50978d21e640659313d741048cceedfc0ca0d24e6ccdd05ae248344017406efea9ca9ba350445c36b03a677fb3a38700a0ea30f65748efbfc99fa5300d48bff673adf6c771fac02d796e8ce23d8c9987c56de2502306f351d820888761c275e13196a78937a4eac3ef17ed46db0d0244875ce54cbf5474f11124cd71b84fda8bef3457e20929c883d9ae7acfda464c8604a3726e46398f67626a68feb47ca79dcb6e243e340210bd1994f0dd04f176f997d930af38f9f68e2d042e980c5da0d9969082f1399d01d6a1799c4fe235a013eea8ce1caabca7819d81bd0e564c0dd5481d43b1b694aa524da9fb9cd22b766b9d8252c939c871919fcdc71d2e258fa6c690db15e3a011349bb0ec2f6d180c657cefed5fd37cf1b1acc7200238daf5d07d24f87a3d449602878db420f730b45a3d06be7f68ae13442e5642b185f5e3b7c60ffec96bb5a3cdb231ae714e1e0e68293b0fcb56615b81119a7da075d0fa2e4d28e66ae8d4da24f426b184b969a3423307fbce042666cd0f6555949307d9819011edfcccb71ac83d43402a8af8c7e02ea763bd01a63cf95d89c3ce1e218e4a038df776e9b535abd64"},
{"0000000000000000000000000000000000000000000000000000000000003718", "00e2267ee3831153d2829094ad437a4cb96bb4dec017efefee40d496f5f67db7627178efaef6cebbf46d012c816701d892313e8da63e60f71ac9e784f217991416ce0117b367d7e60403d3403739b93e706a75510647d8590f4b0c4180e431f205efb901c96dbf44b32a50b6053955e679cc937347c99c9f72263ed75bbd092b372579def19b20926262845808158db32ef5021c95dc371e4e2ad89ad24b26d6f88012d4517c4fcc0253da36318d10a1c005816ffd9ed1693ae4d8285e25c9ac4ba174c971bfadc39aa956e48aaf27f5d39415072b92189d698b677c25e071f5b0b5995b78bc3426780cd31672debfbfeb32718a14296dd399ff68ea0d34be35fadefad3a98679326df84cf2a351fa613213f18688f51e5a2187311188bbf7197cd37353552a0f6e462aaf66cd3d4873b4738874c38b73053c3f61112af99bffde1ccd6ed3920176910cb38a995f596804acee4d6dced2d5fdd9c0ac60cd80daf0a7ff79c00e2a5311d3d195a1f337aa45b8d6eef2fe7f7d5c41104e2115da206be37082d6049038111dfbbc59ac7e13cc2c62dc9b2380fae1a1837bae437343119f44f604f22fab90d240d98cea8281a1a8f7236b519d4c194da4fe803fbd722fede8c66b65387a3ddabed3cc6713bcd44142896445597f58b908e38bf72183fce16819e92754ca0e675ef28ee62c174b25eaf26a79eb0008cb78f2704319971e5be14d52f8e88c6468f7842e36f74793539ec8d16113f720c85dfce6692db7e16a2248bdb74b5229d5479f15c3ffe321622462db17a6274935f2938ddf3f6d03352b1c605a9724e6fb32420a52d206e6f96a19f2fd411eeca0e3b09bc671646a236103f6301301975685226e92bb3118a2a8b981c8115c0f16d4d4626d3aedd3ad782898e11d645ce4652dcdde51f6a17463cd9f552f222ce3ee38c2b6a96e011269f0f71c851fb00050f5551bad6e37b39fafa1272dabf2eb25dc518fd349e32c5f84a7adaefd738c1399441106cf0a8ed01f364fe9d67f1a4aa5df7ea131d4b681a5e6346b711af7125be4d1120ae490ad4b05beeda0692193d7ac68a467b6e4397538293cbfe41d5fafc1178c5ac56dbc25c82c7638461eee9ca794105c9949518bfb98e09051f38cebffb71b26d8f5d220808c08024dae92a2d64423f6f3c9fa5dc83b863c101c88a1ca2c77997ad6e174613f85437710bca74e3bc9fc29e3f89ab1f30dc5a18e482bc5c6d8b3b8901d41cdf5355eec6138c912368648274cd6170a78a57083449734690d93923b37a5bb6a8079f01e77a28314ed1740ee6ac3fdf18bf3835e29e7f97d1a354cf2196b8fe12c22d02bfa31d2d9413dbb1ce9c3b08eb517e11a3552cdca9fff7691a2d29a75c07ce6f2717e1cd8db1627efebcdac256b281a63f02f8bfebfa0530157bfe4e2738887c90280410baa959469ca2f2f9210467a80ecd0f92b181552099f58b7dd5ebebe97760178003643c50aaf0cd21680595c64eaa9a5b75f500f97afc01528194dcf3ef397dcc6928e8d84d4ac641447090a34980f95f3cbd6c58ecee4beb4e41fb2722222f5497d5011e5b5ef443b4c5a4ebd59539bc9d429a6c2b09f24da31d21728e0b17e9c0707ed185f8e2f1196aec867744fe2cde85cad59915e99f0f62f800248d5f8bed239f3b1eb754d014993ae9f6bdbf4c60a516233fdcd1001b5d3521edaf50082add2fffb3f04722c135e9d1fc9a22a760afb7d992e44f07b30172d4729dcc293a3d9279b2411e7a84efb0b70dbae430c410b61fb50bbc5ca1b771079ce1159f8b7fb2d3c1648dffa7d1949a12ee236e4bc7b8a774ee7be26ce15f6164c692a93ebe3ca81c0a04c6b817c40ada83b328e62dedbdd08636a53a974aa6d2f6b119b7c2cd3"},
{"0000000000000000000000000000000000000000000000000000000000003d9d", "0013f9595ddb1757dbc7715fc9af27689f17061cf81107350bc6d54d1ee82497599851cbeb009e7b5ca2058467ff82d0cffaf605008c60796de20184b26fda0fcc01d3e1cb0ad38e8f8453b8361b6dac55dd23dc1b381fd5fd17bc9da1bbc24c03f23345bbea961c8a231bcb3d979eae5360494515a4d87a2752e8feef931cd01a3f4a9eb3eb5c52b3e65128fac11576d7971727aacada34db7f3f4f0e53909ca320caeb495c4513049a7fe9a5901a5994774296c34ac1556eb094201318b22f6ccc9ca405009e655737c73e016d80b513020dda2f90c8dc5e3b717e42e318eff05127f1526c4a53c7feb951f2562be1698aab8ed7f1cb320ddc2740098a3f17f20e3c71cbb4b5f0613580ca1a89f9c08b639c4d6425f5446baadb99ed2758e4668374dd140d12dcf1da791d95632eece3a048f4ef34fa8be85a0639d8f72dd8a46ba1f88684a071621a813e701f05e200fdb9b363515a12b6ca6693a25b103a423b5b20a102f1cfa62c4f4d5f9135c24a2b365981900458908503626bc229578ea6ec91f42fb4f2718def18de879203669c2f61de1e9976cb53501d3b0799cca216bfaa01cadbf00480dafe819cb65da139ff2dc5a11df73524e10b62274b416b19e1348da64afb99d38df90e831b9c251db7d0ebc8fce81384af3e6b3d360d5913b42d0f560c49ee47c5d83ac2e0917ed6b5c4e7155259027ed3b2d0e8115f778f52cd5475b1c52ee437ed4b208b6b3153a052f7240682db933d99f5032cd8991b23c5869e6171609faa8de38dadeaebf213017f9d34534e8d63552fc03dfeba7739e6ecb28e48dcd496e0099c45ca3d690be7ffcc920f0a402edd7b2498de461acb83af2f20b5a72bf2c2e3732cdea0bd61d704f80a213ffc1183b5df9ff7e47bb0aba08fa6289d61550ac7834b4c4ebdef82a481886514b328c7949788f4014e1fee5d0129eac988d03549c2f3b4df006e7a7e0a01192161148055668cf52f83bc25818fbd4e70fb1afcfaf6fec9c596522c52116c7f4ca2041051add82b0b8c6ef769dc93bd8165550a5bcd59869e333e3103eb46c2a7838b6cc537d8f631d3ca06ffb2583cbb06f0eef51ca711e15dc2f54ca0550b05c41c3ea10c1223c89bd65591b4decd11ee2e3fb11d1e4c9ee2641fdb1acdca932e7746e0c27d162facb5406118b1d801dcb0514454fe7139b021a50e22801133005dc4760e4a8ed20db4e5f1ba5e342bafb4ca35208a7466081162c9a4012c692db60ae17185d9f9bd19e30e16493ed695595de4c16bdae7c426e3ddb90b2a55fdacb5059f806d891acc3d4e76d08e1ceff9e4f6fe52cdc70a452e5cea92198d672a30ae41edb6a945feeb6c76175fd9371fe11985920db41059c5759650f777522718f447546491cf613b3db54795f97d13ab06ff5af201fd965696dc9a4985f0e1421b3d97dd47acb0bfe30dbd76fc6c4466087add510cfafec11a242674d7f611c03717890a8852b154014de75d582d9dbc93def33c95b24b86508c14c87ca40ccf57d0ddf28ad8d41205976d3e9272b04ff6f043db35b8d2de98f79d500f1bbbeb144f33497d9ed292ef2127b69ce793bf863132cae57bb4ce739b4588d4a00c717031933bb3889f3ec4e2de3ede4649d4b6c56f8a5d96f76df4fcfbae09607dbec68b2781fba6d390165d8c59508132d90e1f3282c24b0afbbecd3472752efc1cb9e3d73a8e691aad5402655852858714c87fd85a4d6ee20edc490c2e47ac4c9fe559c7ef8aa5fcf8eadfa2a70e7f24551fff61cb1e9c8459870bc497ec7b3a55fc12f57e9c234a74a5d212e54924ffe46fd14c093d5f44da59bf23a3c17358d41d1f00a4d833ea432ec670b1d9df3b5f1dbbe2d41985cf4eaf28d91ee5713edc82b83495"},
{"00000000000000000000000000000000000000000000000000000000000000a4", "00a0f3484914f2c3215661ee32b01b622e9e9273cb08e8d315319131b0b7bdc270cf2c98a15085b2f36010634ac03b4d4f45f46ac22bc93187019160d0702f25af860e77ce33a492459923eadc06cadf6fdd9242090abf00a25a560958b7b3dba24519691abd1aebd71d56842ec307c307ad5b43727a7e97714d171efd110a6ca95806325c9992f1726032379506d9541f261211ea26b26fc6aa259332428d821ae5db69cc5bf29c05c49f5004e753d76ea191de2e0f3e2dbc70511b2a2a719c02ffdc7ffd6ecd471073c63de60e4a1a8fa22831a77127536eb6b8012423736da7f5406577fd0440723ec3e23d8983f949c81485d59846b211385bf710cf93eefe968a772b8171e1a71cff757c6afb6b8217befce6d4ca207ecdc207c938fa95eeee0b9eac092153f74f611b0f4f9715fa0b2f597dd718affdb776245083c840d83c7359cd932b35b0bfbd0782344f5300e33d7143856ae12a6003d6b8e0007992698ee7245e3c13969731c07fbd2fd7d99ff3896e73fcff42680636c5bc007429a5d0a652e8bde3ec2304c219d08c1e34270b945b7955653996fba3d1e3fe9de13ac2f702e0e697cba54ef9d18b639fd32dea627ced966f9a1062b9545094746fc886c28f2a9f89d15e2d5c5dc81f0aa3f4e5de72570b2883daef766b555a0bdbcd3c9f712793d5b4c7c5de281a6c87e3f0c724effba7e006a09f8b6e15b387517773ea3fd894e9bc030f18934ceba2c0a7d3b6f5602aa8aba5487882fc3fd9bfc2156b92526f8705bff18c127da69eb9e5314a8f05dc2596aa55a3143486bd0476cdde5bf1a608ef750746105bf489891d0fd36785db3aacf479fb82e33f033550683aa8d0fcbf15f34376d36adfe4cee17d7c756b1745e20f6a9bbf4f1851474d3461aa92b23b38fce62048e6e4822c5e49753314c1e3f9617d66a47a59a900bfcd6b89f7407ff163e889c96599caae081989db1644b3583348b17c6487a3b9ac6fa005c48beed5d71419d1d335093640ce37648d73f4bb4a2119b68ec1263c2ddb6a5eafe5d39d78d035e7b51f07925972990b6618d942e5fba93fffa20cf2d3caf677c1377aac22fadc9505ca6882c076e370789e8ff6309817392412ac32f388a28dc19f99119b3b2f7745ec969297bc1b3f6eb347d843af6d09d4f7d6c8b8d9d04a506901078ce3c9f7e19521db45c14f758e60058ede1a7fed0a0f54d5d70cc37acb02b11795b91139eeb55afa6a0f1a0dc415c5c52dd4100298e1b609255ba6fc399057174f5de6f6b64fea73959901f15836a0e83a44e4117fa9957a4e4188e29d434833f6a0f6b7c59880c815dc7fce56f18a9bcdaaea4eb6711f03799fbf1e3d16175965d851af7bc7e703e832e7cf5586e558fe9328f6d3cf584be41790bfe71c72ce7b85fee7179f7b016f5dd587dafadfb2fa804423527cb0c679145053049f40a27c1299b7800443c0874e94ccf09ad49ade1ef65f69131b042de023128ca3419e2946139dfe7b2cea06d66d9ed0e9e026238d3af4ee51c7522ef18e05e307c2dd236781826f71dbfb106ba58563f260e11d334e689589beb3111263377afec3fd4e763bbc8644b5fc858e1fe63f024136d202635722f4797bd61c487d45a38b95b66fade7350b81ec3ff6a7ca7daea20351051711cf19a2fcfa04f34d3dc72950bbd255ee05a03f2614471c86c209154d72615459b418d7acdc31a33f3141d401eabd1d8793a74684ba575f9c01284d4d4e1b4ee83f414f8c569963528b330d5b39ad740ddd96d7e06ac64186ac41f0d5745aa198b4d248eb61dd15ba961d201f017459bcc67583ff66b05ee858136cddf43188d8318b233158ef5b0b38744969d0312d38a58ca30c074f7fab973857c4b5b7b2269dc051"},
{"0000000000000000000000000000000000000000000000000000000000002d03", "001b01791c29861fac40658af2c22511a9cf3f5d21061acc6d1b57d59d5ff08257903f5a3973e658a0fb09d1aa56405edb6ba6e5e3a853b7e2fb19eb7c6ae932b4ded5895bc432ebb9a4b6003f639e3787bf6c1100ce7ddd5f428bc7fa7f861b1ffd1cf2ed9d9f4d4146c57375f35748b914e018202c4a7452664c948d540ce80ab222a7c8ab40f182dd8840ce9d783378050741b8938ad89a85852ec284a20fea77e9cc2c921a3e0582585965c9a9efcfcbb587f05a1d5a27d0b51f281ebd6fabf4d5e09b814416e823c9980aa1475abe3211d667ca464718c32d4e613a2aaed98d11c8d18a3850c822a96655f9d589c79599bf36382e41a6d3b19107f39dae678a1a6fb8dd12f71d6be9f1c77c6f82b141d68a75aed8d979708145b8f2ca14e9dde559a18611453716d1eb3c9db45043ea637ff2b14a7baaac851a4abcdf2791f60b32f2339b92c6385f40991e9def003c533e0d076f21be15a2c0bacaa81e28e015d7bb069ac1052849f0f33911b3079c9a1c44eeaaf8bd7b0124de1faacd374b92add4de04c794a9a748113f233c169235615ecb2b97f9c67e9152d41bbe947f8c840211567aff550f97d11f241c1ac8d5e9847ef4725319dd88fc19d11b71ec19e85f82ccddd63c96d5d66406a5cbbb26d3ed05787540c9617e83b56bb6923aa61133df8a6716beb369a351c258a19864b87626beb40b6431694a25b563ce1aa0ce2f7729650f66f4e26e1a85ccd2b7ab247f84bbb372a5eb801924d52b6d11172c643a23ca447b713db7a3e53dccea4a243fd2381a2c0555b9d79c85e667f28f54f9689792147f0c1e1a53adc8e526a6c79daa82f21cc4e6c5eec910c2961ec08415bd53b5b5e890e6402275dc46b92399c5153c57f63c361261f37515a7b77a5e90230bea7db9ed431f4ce7841200cd54b1447afdac752740bf5aa78b003866fd56c248bffa3402a17fc8bab5221e3fee32013bd6ae2b274a2da2a162a40b564625ccf1f45dfb02a4f3e84894608dc5b53286e9e9fc98b799dd015515d95ae0bf6363e1e62694d7fdebe9aad41479ea90055831124d82dfced368d42cb2e523daba1dfb651a3b252578fe275ddb71b9944d27c20f5a27e11ec186138b6bf02e8a25a0672e643c9f58c2f1c5827e6ca11559c69ebf14cbe9e63e119801a9dde8f72fdf234400cd3c9de515df634cfc706de99114fd230a513f760cc51347d1581576c12d25149c416875e7fa1ef65d11b94fdc85049611a2703369b0fbdf393a54127ace12b6c57a35e6bb27e9b2859a1273e0ee0e3c3f7672064a912020c7bce9ee26142746d8018a4dc4d954313048f23380520b0192c3c70a7be26a3322605b81820d5b0278c9d9ccffcd1d66ad6b7831ca1d8695bcdd275e5b3a1a9013b35e8e92c9b5373b59bc3bf2fe32007dad87d603ece90737f7b8bcd0e3a2991db7b0240873860b58923190edfbfab8a5673e0373825ff7ae023fbb90bf825b30870c80e4a9a31539ba5cefa708034a64024815065d932f53593bc5ac9ea6887aeced0f886d904471fbdff00c5155c4fcae399ffbf55dad3231679372e97d73d65fbaaa36da64aef236385ba9118bdec5377046c3a163841b81fa4cc326c2fdb9ae23fc2238d5530d097e58e26ab79fdfed2389f8641d053ebc07352c9febaca0e1ba2c2af14d0e7a1b374822b05c9e929fb38b7cdd93efc3fd54594174f94eef0abd8369a287de09e4e8b1015b730011ba51b178a00c198dffbcccae9ae70d93b24fd6a68dd7e1dc7c8408c01f4d669456f731f1b667c4fe75fa08443057d00ae009f5c95eeba1e7b1e29fe628951a971679bbae1c30d0ffdc074c775679033c797720ba16a8327dd32b76618ecc1591b1e593d9c5556469177355bf6869"},
{"0000000000000000000000000000000000000000000000000000000000000ba5", "0084253538de5f112ab556c7543e759a170039e61b248352d419a55a4bce3ce68030d28af21e0d9fd9c31a71ef908d499222d34b360d23f0e13203699a60e9358e0a856752d0f19732fb60b26c38cb2ce73e410e08795745ae6f3a89da3c50989689db5f27fb9cb92d36dee44351ec1307d7fb86129b3372cf8495fc2a830c032f0e210f1f9dab9741103832d1d9c7a793756b143222e709140b69b99d83b908d261c331c25a88c601d2ac48d9c8d4dc8717803aa7c336974d4f5ebf1b076fcf47a5eb2779f93cf1b1ed4da09d2d858b16102642295761dc41e3568f34b9b2c0b7562d9c93aa729915d7444f6a660b57dc6a055d5f8eff087a987d3621baf2d5350e57db98010981f84ff976899cde7ec6328801a045d191eef8cac4ab8978f41dfc039c2ffa3e279ddd769c37c951c534b00ce3ec6640087697b76b35a75f2adf32dbd026bc790c73677753a53b0f6e013b28b36e5b6875b3785363fc7a0a054ea17668c41de19362ac9f9dfb3ced4448a842484aba7edef981149073118a646b79e3ae11939b1c910da9f13f63af1650853cd56b96697dabc1b1c8f1f3326faf53ae9508937078b007d116620088169effc0aea3005c723220ceae62706bb1879d31a243162a9ab562381d83b20a7ba37de827922bce04f2cc43a8482df2e9fbdf9226de9bde981f13c1bfbad42174fd8911d959fc13f40163b28ae192ffff999b901e3aa0c7b82d4ce4fcec10d4db119ddcf3d5d49613d0c7c55db7932c3f916d09a550de21a98e7fe729213aafcae03577e08d17e022648f68d4917e9b343a63319ce03b29e4697934db083790cf9e0f49c5f0dfe1cb01c09192d77dddf35e4c960784d9db3b0357b457f8c25c520e36a138627508d545b52d978f81b59db63028c38e0a40d933e80929d8fc01b4693a7dc6a5530648c32e7647ccfd62a40372924e36dfa77fa3acd20e2a42d574a20615cb7819d061137394350dc0b4451db8b9681f6fe27efd7c0868a397dc49d1e566a1522670fdb3598b8835b2fd4457c23e9df120a3edc1d76cbceaba7afd03f83eaf1a7a39c0fd3927bfda4a13beda27958d2cd36e391859f353c91a259ddd61e9bb04fdfbdaa2d6673d9f6c3209ff79481e3e638ea973e0d7d77d6960cd19b31d37862edbabf8793dd4c3e62b6c6717a1a108796c210459e92e700fc8278feef34fb1ef053746023ecd8d0d41107fba1ba921888dd1388ea193e2f156db092d166f8bad940a4f5489f8e60875e949e99f811d9714311fdfa49b13f185438e99c1e6792a07a5d83eed8a130c1db5d7d57c10fdc8f2e62645ed28fc27f64b15195964632152c955656c32a283616e013883e9def526dccaa8fa54e415cdc7368f38dc423e2b1ff297d953190d45eea4aab5adc0f93fb4e2eaee5908fc7f5a0605bbb5485cf0e3ea58536d3474c5f5ee57f86c684a8c16d4d5234d23ac5936f54cf8e44a09145b831425933fe28620998db520e8c027fed3627118d57fa82e4e83b5d30cc85be5b868b133d2e2f29d1c18baea198df7d4e86f2445e237c1bbc98e73b8c60ca87f7743acb3e6b472a269ab8c251ce0e322cb5b10bf75601ef896e951e17cf9256758d06665d04eaa1e9847c12338abae401ae539ac35e2ab9cffd6c986823c2b630884ed28cd8378c62b8835c23cdd99b9a26fd2c4731cda744270e5ff95dc97755a566d25f5a391b6f07d222acd9bffd572ccd8cf0535a27da96d92a3b2235825df6a7b09d96a99e99128f1af72f9436c945d1fdb08c4e638081069b7e1d396a4bdb65a8a9f965ae37c2accb7df552ed5cbdbd9c4a4edbc32ad41f5f2665309d8b97e4623ac9f6c6a40dfa864a0c90b6f5fc41c238e273179676f41c94c750eeb4695624ddfb967a8"},
{"00000000000000000000000000000000000000000000000000000000000008ab", "0078683e3e9e738dabf610672e7e03f8280ac7c5c9401285ccbde1481bc7dc3c9bf3feacbf65057b9c2a3238f3b50d6e9eed9fb38736a1c58db6b3b83f2a8560c94c497ae517355661070eb34c129a4db03274d6035d44c6c4de8957c919a7b8ce78daeaff6c9f0e7f2b075ba0dd4d7727473cc2efcd51eb9f4a8e1e5ec305fcd31d7ec184dde8afb132d9632ef92ac2164ce90799c109d8058f3d61de961799d7d0dac6207fb782008ed49df8852faadbf9d58f0232b45ea8c41ddfab10b506559bd3becf5299b338307f016d926b394ba2069337c2c9666659f7cf02b4f4411379ae5171049127597a686f923ee1c55965f003de99028b13d9ac2a04711e4e1ee6895b42fe03f4e439d5ab2a111ee08c0ebf7b86261554bdc8f7f4372ecc16b94c8d13f7ed0d3987febbc5c1bb6e510576bac92c4315bcfd9a761be512cdab1b1ddbdc96532ddb43b011a1adda09cc0136dbf6da6235fb335767a85e6ce0930b78bf002908250c824b8cf472874dd1ec9fdefbb9fefe54bd8e0342d2dcfd11b900bb1a827c6545e11cd985d3aefd0dc5c1234c8989754d6f08fe1fe8e4ca993b1b378102493e8462f01609d20530c73d492fc92851db0db559e08f9b59a590c78edcb637c4e81a3e4905f4fabd0c054d7d7118abbbce02e1f09392936d40bfffad0529a1daec115053318f33d51085df49aeadcf15ca26083676137c0568c2520eb346502772fdd8b55ab3d3376ec2f7d6a39f6dfc5e9492bee7930e0ac8b3c91609fd62c20b84fdc2366fe16544f0df0859f73d35b0172cae239bdf42b31cd362865b45177e8e5a9fab9309bb99a19fc898630f04327c4f5899925f9c157c224e87cf5c12ee84edfa7105de185e9a65f2679cac972236e670f3d8df257e431b1329702bbef5927f1b0932422d2b9a28b579ad6583dfe7344ea92bf27530d60313868ced554588b001f15deb9251ecce4e7cf7322043316ee04c3dc13e0ee2eef44f909a84e73c365911c9510d7776021fcb1d25f03e69c462c0c69bfc061d5e56337f0f4463750d03f520be195a346b3a166d0d0713d248962ef9a01673537dc1f318f8c7c930413e6653ad899e459d22d6f71da9ce2c2dd961151f112acb45d97f2175c180bb081ee768243f73481e929b65823b8b8faf34097fb448753961bc766baa1ceacf09750d4ba5e1ab9f4c5a338595352f014ce9fbfe2f0aaf86ac4be52f69cf33315313bfcfc257f434e89f0eb680a776124d6d0b65a186f738fe0482e729742013a4751d6f07150af8c632736a9b174b547a3fefdf15f68b8e345c5c1d429761c66e37f5cdd945544af73c60ef3a7ddb7535af07a4e0725dc336260bde72c71c37f473e18e92d7d53fe58d0e5d968aa14c96034b1ce0e49bfe9e48317728bb340a7b3e5ef4e437dcec04c66bdc5aad383bdb7c1050759b32b8c21cd4374b39b8631712366c0bc83ba623286b2331ed2bbc8ac216b5727c3a550f58efc1035f5ba9759cf112d70bca4a3c5f682ad63277024284d8f4eecfb9cb537ba85404c9b6c61107b84d82213571c23f505d9c894fb2510e3dfc600ed2ead99054a173ff98c888b55ed44a0b085798a50f4e0249c64961a0ba21e4cdc46ef8092779e2cca722721571ae77e842cc62535a7e72f42b3008275931b77835f1c59e1bd144effb3b8f5cfdd4f7088964c7db54e7f1e3b272b6d0ff7d88b6a7e9221d3a20c26dc4d09561ce26344eb6755803408b5aa3b075d34fe6cfb1385de1802a67cffb8aa38e713e18760cbadab3bd1c2f9954a9715d9fa2b76a7393fe65f61f6ae5ac9d20883d268f49fd98d50d3b118f9fbfa84c03aa8c05a1f18de3a3a648696184ad98305ecb0759684bf6be1b6951bc3d98c07b6258eaf9849e27af"},
{"0000000000000000000000000000000000000000000000000000000000000b98", "0191ccfa9d67dde9e6e144d8e045df95bc5df8f8d913bc09a21b9da2e7996901c781b48dc3273dbbe41b0c7a3c6cf188610173c0a1b50e3b353d302b4ef2b32962af06a5a710d7ab6036d3fe68ed7362c61e6444038e0793479b9def96e7570e3b69c83a99ae1a41dd0e22c55a8659b68daf2dc10b71f7a63998fa9782270ca7254128d23a729693e49f50aed3abb8047f392f1b244d486bce7bf1ab0e02877e6393bce78209ef4f0645e4cdaf5c775d24be0201a5d4acd5df0034baff36e31a7eb74f0914df2463798fc2cb96c99dbb22241f2b9ad90d8d7a553aff234a8f23d9ace9baf040c11f4bc4a91ba10485932aa66f3cd67adab569d994630b5f4b094aacdea57913d2ea656a3e1a98825829a03e793e841b588ea6e954b422ee573d2a6c27d4fea41bba7ee6384c4ee7cc1332eaa4de877b3af49f18671c372116e48b72995b8bd25eb2381ae5ab202dadf20338bbf8c491c6eb024c624d73bf6e6ec106bd898c12dda4da6064466d8408623eb1624be0d32cf44ed31589856fc7c85babbc8eb3288544554eb570db155444d4f2717962a87519f2761dff70d1fa5a089a2829052c7f048a8324a4901f74c1ccc878fa3e42f75fb70b6d78df8bb93227e7240ac446fa299f0e1758b8190d905952b92078d3bd6c3479cd75edc1c6444fc4a81544d559460558f1715bb18dcf254f15892e1bb6c70ce376e7fd930ae0a519023f674238c25ddfd376e71533117c2d4a9a71ddb44406f32f030d5521fa8a2827109231845a8dc70c05e4ee77d253e1fe6a9e191136b16513f91ed5a75d7bf3e19633fa3df54c3d9a91123db977e8d98fe78e94e48bba740e7e2dd0fd45ae171c5663c2cda71a85adea095aea6fd3f6075fda9b144940cefdb3eeabe3d0533133cb9c2b1e6fff0b881de876dd5b258373b3a3e4723feb5349ac04b1bc11028132dee0e2f7014ff502282c11d21a8a82566fc122d87be6a9d0c1913732c2f70b3f55bdaedc16e8f006236fe315d53e11bed1845d14c5e57a0df474679341d7cda1357b33ebe6ae9c5b9d6ec98b8d8a5edf9b03b48069a2b3d7cbbe5080eaafa53892a444b962d905d332f54a81f37270f0d448f739ba36214d1da52f21280520e5dbb497003536f0e4da089b65aefc3e8230319443135e57c766225cd6d668f5db61161ea5b206d9245c89e3de639a17e65ea671aff63b63fe169f115082690a0504c518fc21b3363e4d648f4e47918707d8ab013303e9883e4e6280b0ee2ec0fbc978b2dd198aae8f71d7e223dbf643cb7bb97a72155f5f277e07f2290d48cd759d2fba7a1c7663d37af447fa35a73797eb4843eaf309a1b6159957ba8bff75049bb0230c8f5760df859c6e52a122ebb4508909b15d558b821dae776b65505d291492354de9b6872d84cfd4f9d406701e47d58b116965cf92374eca417902827a5b801b3917c9098e3635785b8261ddf79c50f2e45d23ad11d16a5cc8567e8376a4d1b3c7f5a82c9a8bb80c7a60e7e453392632d9f4737622df74475dd9ad33b36407156880ec14d3ffb60882e7942a7cea9cd89a3cbb3aad351e26d18d22d7e9043d98d14f3ab90bf69b612794a22faacb5534a987138acab9e9e92b955f9c503a975ec71da87717a1ab74d4a3607b7d77fa4ca1be08562f188fe0938f6279213afcb98598817ccea7675e9cfea57e57daffab430753c6432aeeb2347e792e1e5a6a42b7e0d9715e5432e2a74295116220f86cb42b413770cb5f3cf756cc84c9a3d6ffc6ac61f69f4411bec7f0725583f5171e634818ce2099753cb4a7b2230ec40d21df63d3d15ba33aeed945bab5d3d6948c211c2b132d6254e52879565890e33012fb67bd23f4296da6eb660b70011c6775b096422fdeb006b7b8ef"},
{"0000000000000000000000000000000000000000000000000000000000001f85", "0006523a496062e91bf9c3e6e07878b525bfa9e4582ea8fe2e7c10432bcabd97c3b25d35db64da7cb3280ca4a499eecba8e969e4358547458d9623ef7ee7191504ef48a3a4af3143a851faf39e4361763baec4c700ce15b79d8c93711e8900f1b64e111c7605168fbd0a65e48a19cb30f52a8db377fc73700a2a2379e5bc1a6b9977a91a12412e427563a3b45ed373f79d933c2193465cf11d22f19a1346347d62e2a26cfadf9cc3000ac97e74829767fa9a108a049fbe1d8e69382f120b6d290b5453b301def0f5bbd0f640f1882874f7e519d4915e3f8ea1767618d4e43076294e5c713495055939ffa71218b77d279ac7b1d25a02ce887818eccc03e07625c9d7ef34d8f85460cbedc5ad48b9af804845d9bf7fae9d9a1b4bb61599d4bf58b9fc9f5c124406078424491f413bd171e12d35ec39ff2715ffdf2267495bf584f4fe8dc22a67a01d41d049e98dfd635a0103bf056e61b187b08b2515e14aff6a21fc7e67aa1d176bc6704ff9f1f4b79433e642a54938807db0af0d7ece76e98d6629054e664dba4cdb49f376563f102bed02941c69cb357c22a6f52a6bbe4fe7d61ff1580985ec2cc6c8f0b99a4a819c961d6cdc81ab7aa41a0e4c017bf8bb5db5eb66256e2bd012b18245b7a3a50b611c7d2ed32497d8e142e03060a12d6e51f14afc0baa57da69cfff8b804c01b3bffabf4784ffdd2eed0ab72cbf2bd5eab4c8c5c4e40f30d1916bbf8d9f4927b19af49ecb842d4f288308582bd03226d2dd69751eefff2b772dff1b9390a25eb5acad59c8050f5ca21fe4fa1444e8e2d19de6238a7232394de96b55d1250b6cea8546052d6f96e91281715a4456297b79ddcf16139e87c411832d292914012b3a19d679e8bfe66f1f89f1920967c91b4270e2234e7774ae034974be40355f1efbbc12435afe9073d1c3b693610e90af1902000a1b493eea05455c71315fc4722256d96c5fb8d0085dc8aa58a70e45fa78c5db94b347366fbd3c999907f62b500d058df3dc9d61b6ef45b81e322d3485000dba3f4e92966042f4891176f56061f4619731773008346eb37ddad6170b08f40fe5755df384b0bdb4f614be5b8b0b52fff69eea733621401ec4daf63b68d014e58775b0cea898ad5751f3b47c9cb5cf4c4ed9386cdd4b891f671fadc671785462634beac6fef7cf0f0609022e47a3466bf793b8ccf860f1de6be17917f50ee817715504db079230d49b3cdf7236d79e5b00b50920112add9a391159ee43c1592de2f315e09be36e21c15c1d2bb07d9be64f3a865be0163b820d3e5c1b0970fc212205755c3cff1168051e2d70890a8c5bb85ca5667d859936992eb017786ff491d70c665a52ea1bc4f9f4198f23968011f3cad7b6f8a1455390c0ac25ad3d43a1de749927288ae72af0a48ad0fc9929c2032e49ab81472457aff7f2fbd29ef6d5cd4895932c17d85a741f87b486db2c95394f74c4ca6df4b373b11326bf048aa2d7537c34c58e4b70177e596b99387a1e2421a40f69c975ad9643cd81213a85b3eb3dae22067885f530ab72d9b982027bd7a85eb604f9d684f54c6993b31a6e125fc8bf262ab765bdc362761bdfbd1fe70caa430fbf77793802cc279ced84c85768fea932c0ce3a53cf6beda01624524f5ff6ffadd2de7dcd03b7b2c0c11fe07dad9b0420b250a85efd09bfe39d0c5cf8a2da87bbaded97011c1479117ca964f4196e044f0eea548339c1efbd71e98758b82db0241ca96c4110d5d988254d19f4a4748126efc90a0762bf193214389b77eee560ef58b1622a20cab630af8e6f027b2c8c6fe6cd58bcf1caabd8e8ee708b9a9dacd8100f1b7773db08a6713fc9dc01febf7a8948b83b5ca74c32d57f12a9b5ee77d808f4e455537bf9d8d69731ab"},
{"0000000000000000000000000000000000000000000000000000000000000a65", "002a908ea8a042d1102da06927d821d44b39cf3a862da4da0e999a805ef49148dce3d077ef0dbffd176608450a6f8c4ce488847e08420a6e6ac7384e7d49dc2294d9c29349bf89a52f45cc7f667805e167dd9f7c0e39c0a1d691000cfeb5325a2dc6a2532a89b9a3c714ddf8dcc1a934b175a9f83a9861335f33b17b31db1ab49269cfb32629a659849c905395f31352de58124ee68e1c1269be71cb0de5fe063a9fbe68efd6e69a0103202d9904f258323ea8b79e4ddb9e75197f43fc0d4b05f2e8a642815ec53630cde9b126d3e9fb77b70beeff8001c7c2070ecd7300e3f8eb99004cf352201766e69cbb2289af90583786aff70d8a4d5d7bb39502c63a9c3a2c64e98eba50752ebbcc1c8c49fb4cb3079b8a2eda648399ee49e86636634a36d9399e70780664ed810809fd8166357277067b9421ca611fdd4b0742565fc4315c4dd0f8d37450bf4fa9caba18d71a005f197e176362b589a32277dd32917525eefd93d5203a252cd44c024dc8c22413c1ca6eae3441f5315b00f52d37eb01197c4bc1617ac064e661a1be7dc29e2162fb001965d1b135bcf7a55a7f23860dde17e4980a1fef24502f7103885d416ee9933c6d92787bb4d0323992f452950106acf074f1fef5c4121ea6bbf5eb20da24b1d19e78198594545286d67eee81863e95522d603dff9b27053ff7cfb7bd116061ab841eff9a3d06dce5f711132559a65ec4b9bab2f611436cd084261f376301ddcc21f5632df20b2d4624bcf1c3a9db221aca541f5ee747179b6565d784c92b3a73eb9b9ab3253d2241220c7fb4aeb6a43101271b49888b53ec0312864cea91a25ba576fda2146720bcaaa5f917944c448cbf6689a07e89828a55db6d39f6075353dd6fb42cfb3f6677cb6ed9841c33f01b582c1f2fb7fddd9d30da36b8b1165068ebc214ad76a82aa308149c1590004b9f6b114a03dae0bff2616c276e2ccb0d5bd884239f5e0da69f448be12fc26f10595aeefc82bb19c901afb7d2864f157ea19b408c803c1ca60ab2f2a8d1107a7a944825bc1f525ee240125664ab4cc3fcab5301204be6114e73368c80221cb154b26b85ecfe4e442b14c556a19b58f50fdcc7b427c926c67ad7950c310f983b8509a9cc1183e7833402fc5e6d603b707716525f5e5efee3271bad28b54c2b648d7f809a9d06f501c099fc3781e5fe4c95d1ad6b2c171c7b027a5cce1fa91eae8a5925f5b90e72ea6b659f3d2f1277c7cd023500ffb520fa5b7a66b4755771379e45df3fd1d64cc7a570b3e821c34fec14e9ef57987e96d5dda1c810db2e37d785894b0678675a00e8bebe6f6fb70dbd1cc1cf5eb1de297912a99560e5f2cbd7c9669fb75b1502aabecd7324d3e4485406ae5c31656bcaf8c0e44366d289c79f1527100be5d7ab379ffa0e0439661904f0764a860d8994fd8479e9d7d97eeeb725de3ceb1ae338e413a1b341ca47a36d595384897e9e78b0e018835b7ae2c6cab83f222389dcef596936cd19ce47573adea1d7eac72bc71ea5b569d0ae99f23d3753b00c6be5fd61acb463c68e5364a02eda916c7c543b75176de7157f1d82fefd62923ec4795f720aa213a4ce10cade890f1333549f65a426c53bf1c5f8fe995c4b3a1c97e58fda648312ffe7cef4edb92a5eecb6ee6309c027411f8ea0fe866693029ca68462fc48bca50217189c947f5f3d93532432beaba80020e1c14f22f820e75b2a78cdec10f4816694d5d41d3e9a7c7c672b3f76c47144a7a279685ac792fdf24322903e9bc8eb162dc1fbe954c90cfa4164ef9273ac6af79c782ae560089781f8f39f7bb48bd8fdf7d0d327c1a0dfa4c2177c83f2ebd042a3aef6e336dec062cdaf36f6cacb1c59dd1487a3e11364d442d3613468b8ce537393be"},
{"00000000000000000000000000000000000000000000000000000000000001e0", "0019884ee8a0fc475b35817b1e9f98a12961fd1783238a62f800d7b82739f8c71642ded05e0519bf941f246983199d157574ef2d124ef7be1f7960850b13893e079fd3a0eb2ec782c56500c3f84caf987b9e150302e25bd9eb47e9ee5c4362e34ec2b50a45179ff67e059e4130334bb88dd76041188e5e4069865a56068e03fca6c8a0e083fdecc012d4f06422559ec7fa5d5507bc5a190a93222710f41284fa5096960c709e0cb1118b870ea1d4be53e059f3782656a621822f5b8033222c1749bb64e337477694baf6489ed3019c3c08b514888250fa4dcc3f4772588c0773db2a715d7be4c33fe75c4dd49d9cdf345b69494979ab7f1734df9f71123b09c916d08fc7b5dab1289d125e0481cde8c0e827a64c268255ddd50c5164a336e84ff66ef7feb1ff19c86d91fdd408bdb5dd03389a616fa1a278198a491c1bc1877b1b68ff6f7ff2544823b1918f483db6ae043ca8c91b92b9d5f50dd19671f70b89129d1cb94b05d2ead1ad054caba0df0460a1c1ec02e8f71b1116266ba1ab6d8b8007ccdf42b34eea361b4e04ddaec42bb29edbcfe4bd7137851339d79be7f74014fac5e609eced7c008f5b09d5dcc2dc2dd0f9aebe395808c038d53285c41ce11d317a14c425d3a7f2bf1a9a8b2f2d3826f8661d9a12ed87f2e39eadaa24fcf2d7ed5438088bdd9c24960dfe41d8c649cb554b36411a9bd20533971cd46b7f0be1a1016516f50a83a00b9d06e36f7b86d5d97143ddd389cc8c95e58c0f656d3e68930d44e3ad7391ffeca345326bff2f122615549f31ef37bd734b19325463c8cd94fc75dcb1ddbe209934ee101df2fbfeae0a1f9e944211a21f41e8b4ebb266b74cbb4493eb9d8a21cc0fe8b0f0eae82274585936e41362a3dd116f6733f28521aaaee40740bc370e1ffc258739794ea196dbd51245dd5c4111edc0843818d5002fe2df9d178c33c458424f111625b131bdf8cbd300316fa7b19e2a2f6d02a1bc1c1beedee5cf9af596060c6adc8e5e47a32c20c1bd0d18cfe5f0afda6feb097d2ef7a6cad5931ea560d7d7beb82a137478ad8b0670d8f424188973e0e1c5497bfd18d674e71516d62be6c9795a6cd9879ac666a0c2c56686093e7201c9123fd5126d3ddb49fd8082bd1fbdbc52c38eda38a73cc37a01f814eb95619a6415e6b33a4277061adae703bd4483d1dc0de7edf3346e7ee4553768363dc18b1a3d216aea599a992a82c844e4649ed6da8e7d454609dbeec6b8d412231dd8416e756062c171ab7a65a2239f2c31fc5c87dd5a5ee5de6d542acd8ef3178a200437f2cfbf0f4fb76872b11e79b8e1b4c69a93c8d3093caf4c1d71e9eba08963627cb63685176e5faa8c0bd0395e3c97e612fba0a14d5def6d9d74f98e08d029c84d9e9a35f037ff8bc2fd45eb3961c5f05a444100f0cddc0dd62c86f002647dc6baa869ce5efa72b12494a6c71329769f923a232971700b1dc867908bcf11246e496c9e95fb1c7783a7d93189556d5e136d0f2a2e6fbd3ff59dcfc3db22ed69c873d51f7aedf7dc0768ace4391460c11afe1148f8e2db70a3e333231217abe29303de9ab5dc48c17eecd6f5973f315d61b50b06a0fa544471e49ffac22dd56bfcaf1daf9b895a0edb03f6e0654187f05901eccd95589221a6b6c989069174f8460bfacd3617e322ca1aeb1d10bd68a1210c4b7c6bb49452ab84b6443e7e41f2d21b649a67d70ca34ceefbb7c7cff361f26d46956932cb2b1ee8993ddd442e6b12d45eb8d50453532534fd4f0a58e57c17a1bb5371dd86f98c5a048f2b6dbad14a3a745c1e1afdcbc17a10dbf5c91c522cff6d0cfa20deba878318092d1eb4f79d97bd3233888aaaad433c949d9e7b1a0d5f12e8676377cc8cd1a97c32cdfdd6dc9067b1"},
{"0000000000000000000000000000000000000000000000000000000000000a2a", "002098293c21b2afafe052ad2ac3280d2fd75ea6300800ec336c981c77002cf200b3cddb6706597c5bb51f9379a383c8ea628b3893642153ca19ebe45eea4f4b315dad3ad5cfefc2f1668f9d717345aa681370e612d09c884f2c0f11c3ba249bb7c47dbb7caffcb29725b315921b2ff11f8675c459787c1c7efb33b9b6841345811784a1b21dbd133207daf652b117a18ca1253a2d953c7d19506917b0e77f16f0c61efa5318eeb8012a03db979aafa9aca568db25e3927a6eed3bd16901547fc7822f8aedc57623bd97adbe396e3b99ec7324662595f3cbc941673e26c49e528a069bec9f939e39ae97ce9cf02a01ca20d5dcc05ddf8fa36eddc9400882a424fb9981f3bdba3382efbab49d042a0ec5950e363c3a0c16c911b06c72a706cbd9f115fd7a4d0d2b017c9a04a290652f0d237e386a5b09bb5e58eb4e376a4d3149a106935ab01920c37949ba868b591045027244c960423012c9c630c6d3f13399b0975a1b503b5dd52190e25b7b3332a707133d17567507fea39403d945722e063f6ac21e10956554084a1a90d816404b994c9c6be197af8578157e23b283bdd7037c9946142b6f0d519bbf73f05e018f2b4f36192f70b9477219627c9e7d479c037c01f19bc132f98472b34d02e01c875a21dedd5af1423e11eefb2d67a1a704bb2ecc8ff65dd326ae4fc5ae748bca536f1d67795d9eac8c03fc18d34474ec07abc82185a48c8478df33d1b0bb28e35bf180cd36388d2f95ee7fc6a672589b56cd970dbb4e2f558d87e5a086d4229273030ddf8eb6067127e057cc12746869ee8095959450541efcf79ed1e104b45b4662c168b9685993938527b73e72fa988e7e10720180b525d77fd14281c80c67378cb83ad0cc380b60d983a708704bcc0302d954746c418169b1769b42de5c449ae123fb2023a4cd33f3397f1990da25610170d591b2993e679ded84388f40e9b5cbed178cf31a6abc88a655c8f374ef239ab3757a498b2e1a1ffb089f82c48bae0b659699221407a8e0a4cd30f6fa642c58cc164f0d0a3eaca112daef7ee3ccc675088796113d6e9ce38b655ef57964bff5c2105ba08f7f807733e747b51e97c7799960441d793468726cc2788b211806bda7a4e03c837c7d3594c841b069d8955b5a2f35a71b9cf1ce1770d26616e895f65b626917dfcaf2033da7e7c2d47c78e926e0f0d84a97ad5cecb986672442d9b2d8a94d3578a7d2ee56bceaecbf66bef3fe0c6ab878a0f0ca89d1ebb19eff1079cd48a33a2d680ef0de49181472578ade64fda5c4dfb70b455ac6cb11f3cfc67ed87d45308e31429e5113292d36785210299101ad215190029cd192a1c4e92cf0e0532bdd7e174dcc9a29d1f7c739cd33ca7e6d4b52430dbff50d1bfe41a22421ef9d7ae4747cb934962dee2d112b950678d6cfd28947868b84027681e2eb86baf35b5126070483adb8ce6ae32f8ec301cc7977a25feef877b406dc2dc7bfb9b907fda405fdaacf6bc6b5643b9e4d1d44ffb75a750847d2f2b433b2ee00f6faa63bddbf06a14ed775c581a2ff5a494685697f92d12ad92fd21a699ecec1c9c3a3acbb7555cb75617d5cb77b7d4919d0c24c5a5d1ed93f48e58770ae9d5624fdfcbdfb2146c42ef9777be1f83c08f6997a795b60065babe0069d1cdd3a556dc3fa7f30dbfd67ff206e00d61b7421395ab72669863dac5b6391594aaffdcc849f5fb413e4f8c38b0b77e77050c41105571b520dbad9e3201f3afd20940d0f34d64da3f78f3b010923a372f4160be63f296aee560185d6f2de56c5bcc1baefbcfae0128bee7d182ddd85d05612523076d7551f4c774637134a618c6ce621ab644ac33c6dc7996d373ddaee7a4bb6ad2c91a4f2a1c6640515af335cade400f6e8f1"},
{"0000000000000000000000000000000000000000000000000000000000001b0b", "003242e09e94e78b29be96cc5b67ed0775373efa15482e2d90706d5d63c0cb853344b3c6a190de5395e200bdc6f56270ccfdb36873a95871941987f50d6dda18153d3b31567efcfaf1657ab2e8b62b2d99b9f5d7065f099334f31133ad06e22d1c17c601144aef204f0bd36f151288de93b0c7c56e8ffc9b9961e26ec6230c7f1eff814bf2abee2074988d267baa7985dc59a010905ff367903782f286e58d922fe199e8c83fb1190304a87687ca4e75d6dc2811604b6c9647ad766a503919afe7ce62ed57485b060f00df1076eb3f5c1b520519039f7210f6d782d1f3a9feb5a9f18e2c1f6013354f0b7a03de2301152583804f76a8a0f37e489dc5046fcacaf5a88fdb7dbd93635d2cb73288bb786c9708bb7a59f2a274fb9c15878a3565423e83a63d26150e259ddbd1f26ed1e178542c05fc6445b094fdb665178a7992dfb06829dffa96a6c270cbaa43f8b9904a012417a7bc1777e55fc2a060552e53adc8c49553aa02b5fe718fc4905944fba8596be4cc66efd0ba6e39125b092b3704ed5e8d7ec3b0d4c4d4667d8d59328f2cd38256da721525d91ec2d67d5374d97b309978e50221f98290728e219e5ce1c42fbf0b896cfd1258573bbf454a91cfe8338e7ec80480ef7462562956a5b202c9f6dd0c45d2269908952db4c6f48685b8fea3c62890594bb6924d19a3c3f7a414dbdddaf8f298a58403e7ed273622fc6b28cbf0eaec39c796781f795755125243d6886f706bd23181919861c81d72ba73e5dc09866166df1f9819056294e88cad9d560bbb75e2b874e9d450b53320d1bee6f8ace55c305a7b6ddb0e2b0fc9132b3b4c99e6c796c1bee31a9ebe95171e28ec36df9d3df3718d6bbd0fd406cfbffca1a1ea36193e2589cda3e3f025c9849403a72fa261e102054eac4642dadca69ca67a5beab9d59de7cb4902d8a79a0500012c19d097522321d0a1e3f210b9e5f55a2a8d38e01bf973d409140706db1161d72f75e33230ce1a5b452831f18892de588b3185c61a0fd4aa5a780b79bf9437b5439c6e530a5ab18a93dd05ccaeb553dbb76a2b02582e9af08a2bcfba8050cc6475981a53aeb7d4010b3b78c6cb8f69a79b5e030ad7d5ac49f3459642fe035bd50e1ac4504a468271c8ecbfc8fd1a86996fff464d62b98f173dc6be05775f9cf365eebc221b7a19014323718cd473a1cec5202163aa6e8c321e1288d12b02e165ef508a5df29968a91179cfc66c14ff278314fb97da0d547974b574b33536d6b379eb0a718c5034e393dfffe245f1d4c0098a12634e82e6657c3c0b06707856339d5c8359fe6152e9441178795cfcae9b2749429b4514e1efdeb7e36dceb8f47a3d55f47d4806767643ef231f7f3aeb2186878f96958f8518401a45800e45db53cdadd4ba0841fb6546f774b4bc571e033e12fb2684aeb7989282d4084460a2da71bb60c76033032302a8eb0bb3969658ce5ad9c213b957bc011d925d3c964ec456a9b8d8e8a1ced1cf530cbc845f28769a98a4ca90a4b91f74e18738b28f0daedfd3e6056740dfe2615e854f4ba05a68ead1b90242318ef7242da4d0af097d61dbd477c133f0fb3ea3cc37f64509235453241ee0e11d28e4657ae9408a26d0dcd5229d64becd9eb029d9d0726c749172073f804f5c1bd9073983da8fa48f63492de1658f1b3b8536317c010908f8b9c388935c1701b8314ff28accea9535fa14f90b0fb8731f8f232586093237c9e1af969f139bc6762132acc285c94954ddc632588eed3d48fc0b3aad801649fd5609c86972f32434400eb03259339b70bfe62f6911a4b36293f5bdb08436b3e6c0ca04f07814a11e1bbacc488a7c0dd367d5230dd22ce2c7251d019a84bd757f6f2ba849d7340a0bed713136a738f56bca"},
{"0000000000000000000000000000000000000000000000000000000000000f8c", "003d0b5f1617c405285421306b2ae86a2d399c33a81e39c4502b59da9d13ac125ca547006da24d9a618901a158a9d3d6d8575dec7c1deafee59f41b0baeb190600272ddddb80ed090e20cee918c0245dfb0aaf44053edc86f958c2ed01a780d9088ea520a3eec533417da16c72f2efc48993461a0c0bd4c3b2cb55597b6205ec3b227fc219e156f5e08e18ac9d00a0810bec7c0cbee93aa29962bcf807d170d52d62da63f677e452051ef18472cc031ca8a732e403fa950975657008050b55bac826588ab8fb83c20d46e662f24afc364ea50cf9f4be8a55cfc0d46814cd75e70c0a6e3fff7f7013a77195bc15b42ce219020f31679f423e7b53ba420ecda6ef21862bc53a56a51f065dcba6879cf62ce6223f2c3779d752cce9ea447c616f85f16a7f197a05170a4bdc93a6e415a71e04b9e3cc5a015140ef7f382d2af23ceb1f94fbe2a4732ae2fa91e9acb5ae4a03027aa9072fda25250b32d1543422e8a5beddae017607c38bd34217331ff2c0f15ac97b55e73685de4a5f05e8578797e810f79e38d83e64c76fe2eec33fe516085cd23c2489375da7b225e781760146b536d9bec5070347988ece6f589edef376b59cd77e30a07de8b52192a4869594148757cf94eb9749b63eaa29fbeb941ea10acd359a19f1f7eb63be1235bca9d08f7da998250e91750c94b6e9e67af8de6f6ccb4e5d95d4cfde02a7bdbb414748c1080be0977b79c15ca44a6d90630ed9bb29380cae8c8d81e332736c732ec5bcdae4c009aa9e8ab65eaac5151fc1c4eefbf379231a113d2935740a1c5c60d5c7afb0b3b5dcc2eac2db62f7816b0324ba6b7eaaaadbb007a351f1df1c316e9a35f7ab0e355b45406526c3f70ef2862dc592d59ac16d02261d40aa5f8214193d9c4e54ab6f73fbfdc88c2ecd471d525af1b718193cfa0612c283aa2d4ce427996737003f1e8ba274669fb69f12f99f1d6ab589de93720803f20b2f0dd99d0f739720b9e055289847c3c997b92ccbd563078f5916a1aa55f9267fac233e359d0198440f0b2b961cfc15796684fda25ef9218539b9c9d405400a51aec15c704c6768829a4d15129e7c96dceb060889d81272e111a27954946ad564ea70b61fbf030dcfa4331e1e254bdc78d37fbf720d699a131f389f1829eec79c1e9d9b23c853da54c215b295ba17432705fbf1e9a2184688df6ae21c89294d154e3aee1b09071c02fa040fc131b806c0d946a3fa8c844e3a695815775e4383ec5a19b98366e013fc248f1835ff054a2891afdfd69f404171e392e268bc5ea923bbb9f55e0dd4e2b38eb13461d854521e40b6ec90eab71a0fa21f4b44c2d96f63bb99b2f362c3ce47ae0643bd74ff1a54e7f0d24e31472ebcc3b9cc7d3621cc137a2a71212c55b84c7b203df333742076ca81b571aeccee8000a47a791b823fa52a7b403c3e73e07a58641b537609b7ba9e0249a0bd0ad7b1d4d9b4145ca91853b8b42934a3d82522a7239b6f346cd1da18de7ed4ba8a0f2b5a3c1da04b6fb4721dd6ab37e53c1a47acfd7362101cff9cd096ef3fd77b83bb45b2d46a25b7517f1b20475ac7cdedaaf18f063506c86573fa69e217da1820f7fea1e55c5ddcea86442a15490963d20b9f63535695be809a66af2d5f2d46688eec17dae4665cebaa01fd8ba7c35637db73942232a79bdd3d25c18f8d911f4c3f72435fc07be7d5a286eced159f928e3eb55c1a53d74905dbfe21a7a2289d7bee229a59dfda234e1abc691f2150bb0b02ec064f4c5744de27c7d83d0f09a9d294cfc691fa98d291dd1ddde5fe8813f5bbdc18e6d2ce6c30ae6bd512d25e1e7c4769ae3e1b9f4d26c32943ab5079ff35c2163e70cb9225c381bf67e84bf9546b08b9deafd6b2660aeb65558dadd8f4b692"},
{"0000000000000000000000000000000000000000000000000000000000000ad2", "0012c8aecc0d9278a5af2943d7f8dfd258a25feab011e66922091387cf5f40e1484a18b55ac3e23c5d480ca2f27c9e84e0fcc3a507c99dc008834ba37d4609148d9184108f2e45e8c023d14930c68cf84fb7c2f800c5a153230958c1d3f662037e7ca9ef6a96fff22c3fa8db088dd4618d56b58574774402f6374bf8171410083a8b14840dfbcb4d666a6e4966ff13563c9d2e8c49bd66ed2da24f8a3e89de7cd2b68295e758422f056fa7e8df8a330e9a9694dfb4755a42d21b1cae8d07341f5caa53e7acf53ac1bc9de268f47d356530bc17557543bb1395c779e6852ad8b69ef55c6eeaf16826147a44cae8842f563fe3351f58eda593308d17b10b1a5870c814f2a305b4118a3c7566719c34ee8c1623392b309dcf6947e842e3d0f1eac84d5c9b70b31f10ceefab6c0a4fce65fc52029d7c4fdd27ea0cc63d393e6dbc341f5379410cd8d0f7647ceae0535e50f70405f0e8b50768e599b234c2dac691459dd7550ddd226c4fa68e495e5fdd24b3eba1c9a262840036d4d70f62a4d9718d3bcfcbd9c4e18a3dab16b02afc1a3e1103a4c50a08effd0d2267b623c157e1f253be0b67085bddab048f049b9bf9838a274e4bce8e693b9f3b30de952726d550919f8a458974d3fda1817918b50d0bbfd5fa572246fd6644d0c2be411d11e573d0bba22015cc8433e420d1f06342ba3de72ee174656c664807039a5ed00869c858bf8859dd7186c65fb9dce1d31fef91b8008b5c39e21e546c834a78be7d2a7f5f7619f64ad0a4ac7803969e64ad6bde5772f2029963e61f537ef61914dd95988b52af7ed01c313dc7159c160d6037d3522027a9c45a6212479ac67a8989b5ebfc28150f5097739ad5b751254b9fc5a45dec8adc710b0e117bb100d3613b0f46516e91ed351a17ff3c0167482f1dd5669c08c137b8955d2ac7d5157bb919450a003b887343e633cd806005beb042c1aeb6833686bc3d33fbc0551e0843fb1f966392e551f9b8375441e10495edadb58131b5c85c03a2a7416a4562762e6e7a0e8ceb87b31cb534fcf9b5597f52de3318a43d055c054a224740e334cda4c325f9416d8f21a56ef380ed1a4113895a5c14ab9347b5fbeb62b0e5848f7901b207e97b3fb6c33538bdc650a8afc2a482a85df7f8f452f894d53228168773045668044407d59f78fb0c830185d8f7610ba9e5261aa0499521d161d1c66f074d0950af2baa6474dffd9eb15a9bae5a0c71e74542d4023e558c69dcaabb1b88048794605c4668f5fa14a91e242ec33a4fbccde155c458d44368ed66af8dbe8709541e740cd6750b45af7835b4c6422e2dbddfb5f534eece9b1b6c228dc1bb13590b5066be3165f42fa20b1226c12567ade97b12965e97516a3998f46ef4b23ec78b206ce8a8c9aa72954b2648b5656c1a0efd43011c261dc81fb6c3fa87d102c190f24630d73432e012635c68dd619a2ffbe2b22e13be13fa6524d975d002017837bd0f6994c3ef52e317c963bd5903daf66c349aa79e3519ef710bacea27e0d7e6ab12b9dae1e908f097a877c3971d22a121d91b2af3c9db695cc0ea0d16d0ecc6619027e8b7f173e0f795b62d6856e3fc09847629adde84bdc84fb140b3971ac11004d032f5324641fc4e5805cfd69f944ec1fda9735158ffe4c708a5158110079928a4e561c0325492469109dfaa9011cbddaac04b106f7af371a8c129575269fadad8f90c43a16ffa8c5da2aede71d7ff9a16458aec966d260e4caa59a2238433b0c25798db632757d6185eb210090e91e2d458228dfc6169280ee49f6252bd983315355542cedf652c4d975f67ac08bf3f632e3d3d06d90d792aa1dd46d1cc90d121321cd83bc4aa004f7eb8203527c622cbde50cff5c5dc5ce41a3a6d93bc1c41"},
{"0000000000000000000000000000000000000000000000000000000000000f5a", "0081dd9be2e0ab034c9a00848a7fc8e51d33b0f13937b7825e5c549d05d3a4d3d6bd6e3ffdc9c59485e50d15ea06f2211fe70ac755e96fb20fb9ece71297d230ef019faccf3423aca8e439b4ff1476401b5dcda20213c05d22d0455537425a9980f116c2ae8f56458b42af122624a8a465878bd6f2ecf2ce51e82bfcb4f32a203d6076afff25b787c626cf5714c27321fe82263824d7814619ba7714dc48caabd54c2e8ed5bb1fae02ebe90a72e6adc171b424245cc84b5b346a7acca85a45fc786c96e73f3cec7886176f090263ba94371221a2eac4a1af596de0ce2ae2e4687a1ece961a31dc28567a085395d0a5b04ad394b31cf305d7e1b4f5ec049914fa1d0b3f493842d6a666df128699dcfd909136c0b32e0f6ef62dfa82348ec9f45edbabbc3e875c08c511c29fdfb6a94f96a1023ac5beca2b6b92344830ddb76cd2947827afde346c82ebf7056f05ad1c4601e68571c00ce1046fd0e1a319ee7215899e302cf20ac5e36dd5a025e796a5f28530c84200d16a4d83e911baf0de205726bd734852da04bb9c3ed73b98743523792d7dad9b7441df791632b5cd2d35cfad6ef03208143c5f3ecf474aab456240eded187f72711ec20e0df2e882e61cb1ab02ae46f0be7f5b4a1bdfbebe1632b69e12e2a4ec5d3387c3878c5915b9c6bdd1129f46ec0e1dfe6edf69c2c3b8b76cce6b66b20ffb44e1086feec161ddc387a85af2bb1be9067eabaf3c42d81a692f8e1b46d1356496041a1633d7993a4a7f894a2512844dff28074dea48b27b19a9454d5d60d83bb77c9b8654ed6d780571dd199c4ced0dc315371aa9e30e094258f0decb4dd921923732a51b0de3839360de2d2635db4264e00ba2d934f5113a5f8b12e59fbcc1130daf306a8cf72f2bdb33e77c51b6ceb650be0d9c26db2cb150abe415641a32bf0827256bade1ddee5f031eda0ca5c28829d130a08be2dbaa7848ef74f15915bfa6a0c865b755fc580358de3525c1e32d1adf730375531f2d653391875592782bd1dfd20dc41899d51a607e1d1fdc6edeeefe441c3dd00f7e16add63dd6048c9dc47b837414eeaba1132509d4df7adb5e44e50896d2a9955781f2d194b1e82efd69f981cd53874805da25d75dff76d3fbcb41d6677c9f78bd0e9d04a75d4fe3c6435f6e3fa64f5a1ec45af2168a6c9d27d4040f894a160eefe5eb452781467ba1c24d48bbf5481af0b28ae0aefe37b7c9e4516a53a8c12156a925b809839bb9978728368f3031b7f72df312558ad3bcb70b4a186752ca1bcbf027d3ccb43ba10519fed169460f2185baa7149d637cbfd2c0a14a871f1bfb9c2a7e1cb2dc48f79f026b4792f7825073f8c75252de3c7d3816cb1e1edd565796a7568356e5e85ebc8d5dcd734e29bba9a0e75f6d63ebf78fc2690067a67f7dc50c052cb9ddf548fb56e612431a4eb0bea8df9771e2d41602c533a7d30c5f47d0a5f3213254adcd24da906747bd37df137116cff45cc61876e4be4b02c33a4f61595636bfd2687bb34cff36b570508a1747779e44770e2bb13568a8c40fea61a2362df2cd08ccb0345e7021bf1f01e05d71def10cc7dadc763b966260f660d3139f1179f9af3d0b9d660791a5cba4165e53db3e3715e1514be20d199ccce436347d4a306e0b7090649b05cb5cd9b65b1ecf781ff782b2f358ea16dff27b2a074e441fe0301a7fb4b95232ea275d5216eadd28a309634f251285f30bc60e1494deb686da4407f321643e1387c662ebfa8d78253480395f3515ba83f5bad412b935b285f29a5da37732db394bf6652fdb362f4a1714412aee0ba9c471551604c8baf6119a231b859f17464421d888756ef8b7c5de8860b476164f1e85395b806510cd34b47fd140095a065a931a6ed2d8f5cd"},
{"0000000000000000000000000000000000000000000000000000000000001ca7", "018bbb465b2c7d279b5c006c91f192d26bbedb0b5f0fc5ff3c9b5f5e0d854427dec85c3362136b980f5a0ac03a46b645bc87a963b1eab32dcee5ba5337948f13926e35cbe1c579a9d5c1e64160a0a8a1d335583e0388f86c9edb595165b483ab2c7354fea1a0b8ff8f0464b3371ec419e150f471a805d785b0f1341781cb055ca0783408ae4bd11d509dc586fe04d1edcbdd4008481ab564a2c379c9d541598b2a508e24addd9389025404aaca0bdd3fa71c58c32ad8bcd232f85d449d0d1635d048d2a17396c52702eb38c4ca013a76978c262822065c58368cd69ef2cfc66e89b6c1c9d9102a28a9423bfa51fa31b617b464c86f38ed86d67371ab031099c50b723e0dbe46e0db92e3439a257d3f0a7129b189a5ded6ded1b90693a621b584b984d5f3dbbc13720262a6922a119bc112c44fdc3e4d25973587791714293a30d714b1fb402508a27924a1bdee1c2aba06e68e64141d98e9fc62715efdbc9d25bea73133850804dffef7205e97c45a3207e52d7dc991f65c4a684c5536456198c7615f46a84ea9522b925352f31a9e577feb965ba116496d440681545857fa7a9d5e90a5094b91ed7e1079dd8f74e09a6e96d88add89d9ec8f365aa642b59cf685b61893fc634f820d6e8cdd65db14458d7b1714a4dfdd10e66e8b4e5e8eccd0d98f112a15060c85cc3f0b2e8a44daeded2521822090de5b0adf3ccb3e8b6732f0a504994eb1cab6357e7b929d1cb5b1a94eb71237d4ca1204b023eb3498267d233e0e583904ff4744888aad663bff64766a4259b4fe361926d67db397fffccab056426cf567f5f198f785300b081bfbd9d602b2e87ea12f9f269725b8e57839374f537fe6f6de3abba272658e405f18d5bfe3905ce81657e5544799da65686f2586084d54929ff83951982f2485c56d4d6cd6a092032e29b19ce9047a39e6c301cfae9b98cce93114694175c954810e6cae1f883c065bc1c4e45c19f389069424f0360e86cf6afd5e02048365346411a1e4cbfe0410e7f1ff122c1ab4857f169d211520d02433c7abc37705b8ac854611928c310888a456f616cebf3f77f79187ffc5dae6c95991c015bbaa622a4e9c95b9e883c588cfd3cbc8505ef01c1e471d4071e3d093ad6ae4888ca9632989341bbcba3a519652016ff17d91bb168c6de72b29f50554edd0081b549499e77025621ed0b5521358ed1d6993faa923a16d3d7c13f31375cc13ad2b4cc6758b565ecd7c19443a447f93fe573fd7f23c10313616074e1a2d572bdcfe71d1d252faab664544e653638f01793c71dc094476efe24788cc89e9432fda4b60e52381dd2c1e3faf67a9a39a11e52bf6a70b4b74ddea2a87dd321c0ceec5695e040afd0fc4e2b164e73531b4533ddd5b43f3a2bbe0715085a2bbe58e50e6b489c570f8360f0238fff1f2c91c5d670cf1c367cbd130cf87197025250fa3f5bbca3ff5c65f63cc1834aff629a73d5b8f125832fa3221241f6c59493f93ee8e62a4ebdae2911b8edce4ba109fccab6c635182cf91e92c5ddcf43502fe06d0b5890838d431a0cf91d3f3fac2359a4f4013248111d15716c753da540358a75399ea22bda000038514e1e58f9b5d04233122575201d165e1de156f11e2b44d19192abb4c93c7181cf13626c454dc8deb025320e7e113225cbccca02566e13ef4f3d2dc83c703c973e5bb4743faecd0a629a44495a7c8f01e69501062a247fbc98ff33471a107e17ad17578926cbc811b2436d6671d469331e463116f98ffa54caf4ba6180a65d92f4233931fe06fa84edfc9a58280f47a713b1abaac49d28c5834e760e506b3c1aa3bc3aa3ec408130a5daa0f52af39996115648b52c2fb3dd37d11f04d465d7dca21f76b6abbfa8dc76087aef78258f27b"},
{"0000000000000000000000000000000000000000000000000000000000000bc1", "004450e8399792037fed35c905efa3c21e38d52c6b1a9e1b7f36c9078cd3168225bf4a17ba006a1c33c105ac22792314370dbdda79509dde862661105dd0bc1734ad9f12df287bc4e251893becc8d9a7a0b5a8b202a1b7af30a845d1eec9741ae35dc7ef76a75fca9a0ec65dcb909e1435111711ec74fed6bafaefba5d270d786fb0cb60ca87a597b21c7dbbdcb515bb158d6d525f1fccef9ae98fe891d5392df1b3668547dcafad00ac04cb81655fa9546532a56adc1485330f51eba6398e2ecafaa3af693566e7dfa46a01c7296aba34550cbd71a81810deedaf1d66f2bb61cc86b89d3e602e29509ea7455a9b5efc58e44f7532763a219991ad6904ee19a63a61c4d1afc1943eff55ed4ed59579b4da0c02414b38863837ae0014ea4061373ee69f7bd6fe1f4a2445a3dda331d4fae383a5b7a10d118211cf4a27be2e0764df3bb96234d4f270a868c26d94774415023370acf062d8df19e9d7af3b65fd1ea6e53b9209296b434df2d7e69dd42e46b02964107e79a83a193402ab263fe89b9c1f5940e26678f667d933e4fba3741a05bf62ffbe4543f829592ff5697b330a30d8df2609d23bc50150404a8742316ad3b8b00d1a850d0d451ddd8bf5be989c03731db39d09dbfb0e6096fb9e580e883695be8cc12535dc0155a3ed4206208d154a9b1b7b4190f135a6bbed2e82a070e2fc7d2a976b68aa06d04f38d85b93adcde182bdd0d2d8fd565378a11d50fc27b26d5c2d73e7f668a1ea5702668900fb067712d2a7e0a4c7c60b68fa02affbfa2aaab58e1f13702fa397ac1adb4849d174c3990342619d869e9f8eb40e902975cd075e796a2a3add92f799af086a5fc14a2623ba6ed063f95db88106cf46c6a529cfe38f2f4816075c3000652327de28734c84fcb355b92bf0f5662bbdcdec0cd39d311ee4331545cbf685ea12ba057a00c9b9744f721c01d7ade055ef7566cf443b7b6cfb22524f88ac256bef59d7430efd312c38df0aebf20b29808d72609075c5ef231dbac4f8ddab7818dd915834aa7307c32e829d9f99c4447e591856cf2638447201c3aaa04c80fd7264ef10af5037226b8b7d9de7d84c24d44ea5939d79b72025514d5ebbc6f5d17f07a22ed6fa88b85dac7fcf6b9503fcc08a8a750f798d7c378f2f294bbd927fedb2643ad7e3864b14e89ba467014145e3b224f46d37c862e0d9ccb89aca68f81b7644d04c03c3a427efe9b507aa1b3ed58e43a29c569e0a45e2cbdfc6a3b47bee33bf265dedea7fb5dea2b8139020a22b1c7873a89b556e8be7043d95fbbdc5e60428dad7014baec5c505c521ef479091b60890713d1c71293659d7b8e0f91f03985db97a758edc799a801977768cdba3c5f12a17e1b7226a8862e17e5ed7172fbe0279ae6f994bd85bc499563f5617471e1a49750621a11e464620fd1f2af10a849fb0a066486426b11766899f7ef0cf979f3074da42b7df8d6671d5f7ec1b63737f6cd4418906acc2e3aab3892cf5572a59a425c8b7c6ea0eace8a597b60df034eab5b15714c01c0ca5264020f3638bc743e2124d9fa82497780cb70f2a44f7e8d8cc99c1066002d42c56e72eec8cd837f311df8f6a174fa83ae245e2397cf7f4a8ee84cfda8a21d2071f4e5cb0c132b94c5b46ffa593bd817f62590687d979422367c9c057c895d64dfac2d957375d2c16f186588f928fcfd50a3283e3aa6aae7ca7783a7507606a3fe715dfaf71c028e0455ca1866e365e7dce08600ea80adf7aa5664481befea20a994b705db96e0693d7a2e85bdfadaddfd16322f05621dd8fd740bf1abb792df20f3d24e3e3e309596550cf0716ddb2ec159c219a71d22d53ecca729c0d62fd34b2519a7d081767873ac5e5a5b9e7b3524dbf39a810ab4df4d044"},
{"0000000000000000000000000000000000000000000000000000000000002463", "011fe9bc62c35e571b70d8e6156662d3977edd9c6908d716a2f024c50f3a17416e5352b6b647827951db087e2c820307836c956e53e44e6c5ebe07a7f97c9b57ed4fefa85ace10d918c58db34a9039979d8fc68402399beca0aacb415cebe67c7cc1e45ac26bf63bc60837dc6c6fb132df9c5214b2d6d8038a13197e5fb90e16b5f2c99e364d026e243a42c45406a8115846e438294fa86f18db2fc2cd3bd3db65e00f1ecbdf23f3056e7094fd53bd63064799d24df66702ba03db5a90400a5ed7c81273b5cd7d8a39196a5167270bbb70e016888a83ea2329714d92a2a0f7192605ba24f3ddfd1aa8dc830967d769da99943e4bb3cab1700bedd9530cb1a88ecb4b99bdc01cb4e53d75a3ae2f8bd40dfe1823cdf4f1466e8dc95c44d35672fd49e4e0fc47cb0ccc007931c4828786264464ffe85877dd9f7f88a011be5754d79a027747c847258071cb024e9a566a79016b58ea58047a2f507c2274f034debd7d19cfc107175661aa6d871655b95574b3c0baf1aada84fb88a301b0a4a69655ac035f682920566486deba5b5f9d221771b0d2ca6fae19e8f1a40a57aabd1a0925d9af410818a516a2a4aec1c40744a78a2d2865efb8fa40673f49ea91f3319f79a47f44f78a6416930fc59c074840bcbdf6b8e0d4cf72c028b3dce4b9aea782ba2a6442842d16791bd0fedeab249c0f6519e3583bfb6e2f063c77bde9c4d4c4bc81c157113f95f6bc917e1faa11538e09391cd92f54703307b9f461c4f63a5c94773bb3376fe02a52affa58470da36d34ade11dde697149b574ea4b94128b1d1725340d3cc4617af47e61bd08162e78fd30fe29cd64639cceb0f521322bb0349b14d53add6b47b161fd3cb2f2d0fece01b71c90247f0dd91da60b879521094a362ce0daccae3fed16277f1c5962b1a5136eaceb7ee2131039c3d70561bb430001b724ea96932162f54920770aa0982109a111cbe13a478694199a3f1ffe746e3eb176b1e7b5bc7edb1507b99a57fd07b1727af34376945187dd6fd85584e41a8f830e2a75ea29ff53a49b46684c6e2d945901a60708a5971b846871c8bef0ce37f41ddc583a6e57cc25e2374c989b42fda99cea23d1e5c83f17b17c401415439540d9857694712a94e47734a4dd8028bc09fa2410dd7ea111eabaee6ce6d6a6f641428e341fb9fc09ab158aef08e2584d9235fd14d855fb39d93b1dc5171128cfffd11b4fbb460386ff4b9071cb926ef733209933a8dc50497eb26c328e947ce4ee2974bfa2ca3e5cfbc6cc263a5f7844d58376e952fb30d49d92b209f1cba737c4516abcb468684d7845ce4aa9b96459137f7dd1df2a8a3581f56b2972e33b3afb01b97d6b1133c4a6031df831e65c15f35f41864e9e66fe3d173c3f36b21fd292d8ef82845943cda1c2d8f2fe489b02a7516d88d4e139843f07e9bcdad45e8b75d5bd280d7511c690d681f5125f9455cc6aa2564a6c7fd62210d391f99be88ca58b6ef772aee490a2d39fd8fcb31ba7a1df74347d79c64241e493bf1fb21bd158ff2f02c71463efd424dd8b7503841bcd23a20fda5c4032037ff93329bc5511e8c5ad0369fb02e34e28bd04e9121dd774a41b91a594c0c3c773f2dc35fd28df5591554c137795e248cfd368e588167b91039fa35fdd9a05ab0f64e249c7479a8935e09d791936afd858271c303a7a00289c2e96fb19d351576aed59370e8cdd2606b820fa88936a87b132e10a232419d1d91c706a32222c06670891d3d15246c300694216aa6da7dcab8210ee67a1ba218d17245e112825899236e6957981e9262a86f1dbd6ffdfbc3dcad992dd1b8314269ddcab1a2555ecef9d73f16c8a6665735f9421c9853ede1c2228f26c5e4905a0a6285230581ae4d8bf0a31d3bb"},
{"0000000000000000000000000000000000000000000000000000000000001247", "00d9f8926165d90d59f842aa762eec20afe572224d40aae70f81eac8fff933997516d05a167286fcfa571c77cffd5a16286f1ab3574698c89eae18f45d96c242a325860ba39713ac73e549a6bc1e23a8141ffcc9043bc596d385f7f28296b05b656d73c44736b707610fb61fd6ebd52feb755801c141d7736db5695a9dff095b92f2897074fbce157484c2d4f3f1346111c3ce45f9de9fcab1370f8ec0462348de6f89f461103a8009dca2efe3ddc5ebb27921ec6f7786453dbc89ee4d1ff011da43c89d092405558aa070cf02b62ade8b32280554734e1d203fb568c3552c626b59142fdcec592e64a6f09c573855b3230577f451103b5c833bcf2e11540d2f472918579534a33297fc60bb5f70be0f6717707b0bd6b9031bf34022f7397484ce47cddc11ad126c546fdd05b0183fea23d22afdc5f108784db20b1aa424f89657fcfde64ce27007391e10b4ebb31bb70206faa8b709221b8674272ec2ff05bb494d9f0546190ef3d682942591a02972b52f1646d3c77dfe97e817d61358f0176c1995c8c3100b2f0a8df04872883e7c7a2fa0b16393f755d9c956d84fc756ed8a5d091e02f5474c2e72c165d4025315cfb2ca4a72b87a660a11e0bf47ef9f4697f12bb13da664cafc9b07f4b5c035a5aaad6ded6a3bab4ef44e814d69929a033ce14b4a19ab9ee993bb23b9a0c5e0c8747b6f83545dd606031b3a11e61e6227e6e6e65a8ab663d2c9617e2f1823568c58648ebf0be2d652a85428bfe5070caf6b8812a54bb9b51d014b9ee9a3e29254f5c9243f9bf022343b81c401a17cf35ba529e5e86eb7db968a5f043c08850e32bb5bc8b1a5744639d8fac8f9bb95b684610898b13f4b5594d0e857b3d98dc915ad1b06b4595b126f4b2ced1af4df4fa721b2a00f5b3090c9eff0c92f48e5ddc95c09a34b59c53fcfb5e7b19cf1efcf8601e58121fc18cc19260eb880cd6306ae482bb6402d04d4724a5ffe27b9f7b131e6fee5d2c915564a28632996637e3263656bbdeaf823bceb8eb33f6a5cbcb638b60b2d86a3073537e957a77f72e92f2678dcf6aa0db2793e583586fff2b858376174642640c6b49adc17635c6dd44f87cfde15f3f1adca9f2a3ed85fcd813865a3d3a655f5a7ed84a5e0fadc1e76c727bab2f372704e3b96fc2b43f100a8722ccb051a3cb6f2640e0364b0bd46db9e393eeef07c58dc7fe1c07ed669381cadcefc2ad88158fad653951d6de38d2bb6b4be5303650dce6d862973f927b413bf5ebf2d91a132c15e2a7a5f64fbd3a645114773baa7cd26967f77992a68037d9c03700cb668cea553f86aba392b2597baee9832814a89cdf6de65edc10480b5f2e69d3b88f2a2910c6eb8b474565ca8dfb6c27db948240a9982f9593124661d3539e3f5edca34c2e35244cd0762badcf356021d657e8356b82b3cf973483052afcf3fcdbb072e03b46f8c48cfab14dfe1d512d1de438daa2b36acfe029ea5e6c29be7494bcfa23ff728d47204019297860e996d869891ede19390c66932eab4d23cbdfe2c93048458423c4547538c044171ac2a9738f913346dac1337e48d7550c8b55c8377d71962b6664dcfb9b2f20c42fcd4cf03fa30295911e33cdff7ce0666d6bc023d60674ebd8f60891eb5aad46a5d7b8f509bbe7f870309d1be8a168e0755e7c4bf11a64881538b53099e25ebe4d801ac5cefd3c1d2d444a9e73a5018540a440d8df44dbc3171edbff99284eb55c43caa1dd00e1f22cfd1f3b114024edd18d50dc1316fba04fa32f680059358debd94e2f7005d92ecb33319aaced43e2ea50a5c8f820e94095cbe51e19d44d58fc56658ac11000f2af5b1a0d895112f2a619903f91c64d9d1f85f3b110186f3bb06a0b34c824677bcd53a87af555ed997"},
{"00000000000000000000000000000000000000000000000000000000000005bb", "001ac390930ab7f47acf242ec04f4911472a1e5560077ab1761ccf16e38e7c02e8e41ecad5434f54fa1c16df6d2f4d6b7e536226a4176d3c9b99c00fdd6cbe3c556bff6f980688fb7a985dda5766d2887a5dab3d0103cae41f102a8ca6949476ef713009f184511c7926717f6fcb58f8e1feefe3c4eef94f49ae89b9b7740e7ff0c9479df179a1067144ba11620cc53b482cb44b82248a041e2fa1336398f037cde886703b9b9b940400a5298b5c62e3fb96d522f5d6340e3eddfcc9374272969090d7b315be45664ee8c03f69f20896f18b105b22b414b37aebad77515f13b3dc950784915228117007617c91a377b3bfa55d3bd0738ecfa297f1d009e1061269cbc195c27b30dd7b401d6f26301bd8a42dd83a790294f539141b149e84659ad9594ad4c70010707ff5019a867735e8b14782b0bcbb334a1ff6bb21d422c1a4a5a5a75fd6a2b16be2f538e569a7545300807ca1b61a328fe527879aaffb3f6a6c98fd0a462e70128ffc26600150cee5d2fa5489b6f7f05f7a831c742749770f34df529313209ac4ddd1f2865a114c45b026c780d28cafd7dba619785105cb0166dd7f3f0eb90cdfae5204319e5ca7b664cf128a809e793b6a19c29d4ef5d74440c9e46b6a37ebdec6e320bb48a21650abe506252c3f9fc9544144f398d912374df3544dcf6bce18593862dbf236f546bc2b22e1c51ef6dd04b5b2ad1890cbeabc1a4129f432abecc1c887ae6f08a693ef72465a1dcc913172f8bc04e943abda415e1890392806200a7f67d5550e7871b7ce0fc170f8a619a922a013efdc93cd5ce56f446c9859926dd2edc206304e98060fe1796945f093341b01907ab5fd396d500794cc14e1cc01734ffa9bb2f65503665c9b9ae924d4223fb6d08745670bd86afa5917fe8b03f4f9ff4d4a6306b49a93997cf9a5f574d643170cd8fcc6de00f0523292edfa2dd78e813662465a61ffdefdf337142396c6f5d33da5dcc6154859b808433cf69e9025079c8b96266d2073bffdd12685f48cf9842a11c2e21df9f61b43e65143faa7aa593b62f75326acbe469403120ab2c90843e0471243a1077c84637e8b1c2fbb50aab37af398791d2d8605a33566921f22c87e5cb6157fb290daf2669bed6815b2cc7f0eb9e130ff21ce3062aee1d2e642af55aec81c2b5fb36a638bd9b75114137f2bb3d64c6bc36cea53a17b749748137f256d1f34aaf248ccdbe4731733329fd5ad0254fefa25091db48dad448bace3ba4e75b991e745afaf7ebf3af230182b83bc9f579fb4677393e94a3859ee3cd13e9720ee95ba2874db2fb3a4b22ce81b09ca7ed03fb43a238843eb990bb75b0ab9237ad2cebfd8ea1cb26682273eeb546e0e3503ae10941d8d513c31310acd33982fdbad57b7f3cc55aa35fc758479fb63b63b7f3fb00256badef4ccdbead01871048c2728215465afc370174cbab55a8f6a6d454a33e5cfbdf09211b5dca3850739bfc202b4373fcdfd91d244202bfd3731d2a67a08f3f467381c7f3ee95fd61114db1f41ab3432bdba03f5ba1833ef6007ed8e411808a7c7b512e65c4b9607cfec18ea243bcf7de8f3cf0ffb152d21773948592b141180c662388d4f72643f6f6f541aa71cb9bb8441e0a4fe0b53c6b9bf2a0496d2acac6952c3f451f2054ac5639542948944c312db53a92dccd7b15b80f6338dfbe85d617b5b2add87d7df7fd0b69d787d24d6126d79d533accb3beef8e6787741dedb7fdefe24e82d38ec8b394fb1bdf66c476649f54f05e39f1c0a970acc9fc2ff6330bd8028710b90bb430df6f49bc02a35775d27ade703c76a95e61f1db4045dd6c53f79ef13848eb20ab0fc3fcc9f33588528c05afa2abf59cb69ef1c7c3f5bae9eeba017823edd6959f63fbfef1c"},
{"0000000000000000000000000000000000000000000000000000000000000ebb", "00acc80df3df6ab75aaca389d1c9804cf85cd3d09b01c202bb8551b1ddd46f6268b3f5475df3a311ec8c12c293e5061f4755c047ca3803f0a87ec82a98cf824122bc15952e0227e32965bd614b7f0191499fbf44046c9e9f558b849b90e7b7033bf9c84b106afbd32412873a5da595f92128b296f5d1eae88dea0b58612b26c05d8915976758c01a061a28bf1c81e3615489352707c26895699a0551d437c0ecfc819e4840fb522c04ce95a0390c1639f24431e4cdf949af9bd61dea182773a2d01414404985beb65f363d38cf22d45c4d5110ac5d0e3a94933dc354b2985ffc4da26ad475f6203031dc234ba62bfd46c9f3dbb9b95292b914d7a9220666d9e53c053358f45792dd884efd6e6a7a9831c547347c7099b314b3fce194bcaa66aec755237e78d72604044c7ee0cdd7f5e17371b1d1e1e8dfcb2e61c581a105eaf069e61d9d7fc8a00ee96f2787d9dc97b603ec0c3482891d9910dd72c26542fba4f6413c7e520855739b42e912eb7d74bbb0c97883ab555c1f7c4d082284b22446185ed92f52c26a722f6efd4558cc39240da45f0562b40bf2b034ff34ca770af5d89ab819053e886adc0acb2a572cc56079e92151cd1efdc8d0155917cf1a7931dff4a0946fa7d9f9331ddc5fefe410e7a6cbc58b3472e703ec79676d632f3fedfd141614a510af84ab79ef9d2a81cd53ad0eb950db908c1e0b7d964e6b5ffb8badaa23dd29ea4aa220bc3ad4b7103eba597576327bf24f3514d9c2b30188086e31bd12726c6f085462ace282e3faf0f47c6b622ebef4b2300f529a77d47401d699748b3fe4a03a3f8133f5f015956c65f1d587d5bf2361d523b512e8cf7333dcc01aa85190906f391db37d71e7451c4be2d0d916f7343909d348d4a15cf7be5b34b1445a5925ae30b01d683fa644849674b2c1d78ce7bed3f699f36a251f3d4f00f9822690169c8f088a4059409f5130784005b5d51a780647ba0ee4ecf1ef057c2dde7f5e260db9386c1d5679ce211fec33dcd2d37118b304c54a98b875ed38a65d5a7970b10bc994156fe555de1de1c7b2573b0699e60a82f1232990a9b1dd3ace2f0de8bfd85738506184892cd9fcc94774281eafd50ddf80a7dc4715075f734e0bdd8aeb513ed29decb9ad0b3c089a161807da806aa14e1c2aac8422fbdc37ce8900db1131eb042e34a6f192b7b53184b152a929c328b946f9925c2f051b2e959451fdf5e699e4665e9102a37e9f4b4c0c5f547bf9d9cabff3059262c1a023f61a9af36e3b1f6121d2bacc199e648e6662533c171a05baf37f690b353b435959763535d9c4efc971935b373edd80af640c9e03c3a00f815368a6d09a5c8dfa2841bea9281d54ba85ac498a5daf524594d57b144a06285960531e562a5da61630497cb704afc6f778dd59590bb9f903fcc38623c23310ddd506f22f71dd69f3b1972df123fdf2da6ed74f251263a5860450bf0de37cd601f90861d3c02eaf4f7fc13021de0628b834ac9b2723ca177e993c5636ada9e5518382c3387bb549bcd8d8460ec1bc835fd80e2acac0ba2392e41f42ef645c45cc31bc63b7886e9a13a83beaafa3dfa746c1fc19bedd2577bbd05ccf246f3e4356b2943ded55c5f25279ac4945aeb350aed435af3ba8547552c68670defb59100af8cd1e2be32dcf8ae3c821924cc09f5b93bcb0304ee7a2c1bad8fae2cccbf5c947d3ed4578bffd80121464e33fdacee2a97c5f58511aff67a2654cf9829d14ea5ace1685e4f6968ed32cdf28eb7a08a39936610c9b8bcef04e8180ede30149fb3e6a8180fb1501f06c29667ec22c68b3d5d279c9d6fe8b0f6a1cdf2b7c110d388c98c56f5ac449e23e0e3013f68044389d2512da8557b907f294f47a3326b1625e524040be6960"},
{"000000000000000000000000000000000000000000000000000000000000159f", "004c6cb4d71465ccb24f4228ef9c0914b3efd2e2972635f932406cc7f5c558c7c832f30aca7ac5f5b76b1a8f63c3ccd640f1c2c6e3051328b9d5ab4e30b5a033f183bb080d1943136179754c52fe8b42077ee18d052cd3d3b9d537b5cfeed3f3c069e966991016c3b8201f09e81815ac91e557c60d3be1538e3477b56beb1636ad0b5c4643d0cbd438e92571182771063d6d5120e5c4689e0ecaf753aa527bac202ab1880699d14a0068cb730310ffb3c8d2e2bae94f9f0943d416495f1100199b535ffa750a8f6191b0e368bddbc5d1368908c07069b8848f9cead9b72cc0c213b1d0ed5827f773181d6b585cece5a33748925761c4ee7ddf78979110bb1b88d758661331e3e428c621e8198c79d2992a2836df40e6d31068e7c644924aa6e7fd50a0dacadc236ba79171d9f821c9f444edaf483485ec55b2473444526fb00d7c22ebf8dc048478397dfdfaea91c6e102e8d8ba8c64b58d7b2e3046d4ec2a3a45f2fa00d2429944de031d9b9d26f535270ad35131afc631fbbc03d06638b34b7d533e98c9cce355b7b6b51f390d8a1405fbf53547911dbae625146667af8a9bb258ae56041a36b0d50eab75debbc60265bc7953053c7a07ae0b2b2140760ec2497c7b45eedf662d558a755d3b1d05a2691829138564a4f71645c855713663d79613ff2d5e82d6cf53002b54c683e660aa706b92d99edced04e72670b8d449f73399d1b529db3ca1786efb14461f4bdb8b599e90bd5f9f42f43a49762583b79763f71a9c72a45b0ffcd084087207d84e8e24a6d64cf9ef2069ee5e18b3eb57dc4c7926585437373e8e5c2f9e0a9d3c69e548ffe28110e2e319ef91ad65c45361550aefc27f23b80df5f0ee13f3acc31c1ed68b58766327568ee0dbaaccd9639df3280f6ab232ac18be416d391d0f1f039bbc2931eed4db246aefddb27a3eff3d006690e49fc57eb076a9d3768eff3ae5b38c51625119b20199ee59162aceb5a1c758624b94e5a9bc711504cc4ad940440136958ae2ddf73bf03da892db2bd235e065f30fe58599de23e9b41fe7fb72be0eff78f00290ea95008d1ddd2babf4489c588621c9263727bb1eb4ab5055c8ed198bab72dcd4fda463506f1db4862e156da711a0c7a128909308d6a3e79dbe29168eea32c0e9a6700d581d032069f60b6abecb63373d8ac0012a43ec654fbda7e4a4c0251983b644840aabb64f0c9e0604dc5949ad2435f4a4455d4b7d35709cef650e8e79ab9e5450cd3b97e26d55efeca219ef731ec415cb6e1853ef625baa4462682359173175aad247c6041111accc534a3f9aa010a96e2728319719af6e732e2fb350a9115f530a4ae89a4bef504b492b7e13060464f557e790dfbacc99f46c6bac28b9d250906466065c11e37f183b52eaef314e20b633c16fa7b76afa01d2ce9379d054e16e4a21a7666923c5a191f7a23622bc19c7c4f65681ba55d35e547fad4583a614327c070400a2eca6dc038c59219873616574f13e3c188125e53cfded90d9756f3c03c0f6d4bb952e93f34170056bd2f2dfe9cc6ba41cb2a7535994a11326160b152048e9e3dd12cee3dc2e7961aa5aa65f0d093c1bdd0d0c064784d9a8f1332a59215061727ea27aff230647473d6044d5d3e6ed40969c94e7794660119ab0ea01ef9d0d5786e8db6603516a6aaa786a8b439a24a30ec11bc28247cfefccce234384780c0a0efa14b04f1027b97c23eece6bb51ae40499ad25c9552c2dc050107d857ae4647409e8e051c8b661bc1e260551f1580ce0d7187dc6cd968f9411fc55148f160c2351757e0d979597ce6a29475b8186dd16d1c2979227fd1f0013c4f4f5fba24ef33429d9756ae82d8f605a1f299e5efebe8de562aca1487db648ed7371d5e42e9d27b0"},
{"0000000000000000000000000000000000000000000000000000000000000158", "001c93009f8bea13690e44cd634301914c568c720504cb4dd2940e05df7c715387076700d8e4ccdb88080ae0f27f0a6402532264320c597ce6c377e47cf15b0e79774c53cc9cc52ecae16cce3da43ef444fb6eae04506dc0741700573deab0c367c3e3e935b175fbbb1857e3803a24e005714821a342189b6d97ee7fe2821061cae7fd509681c8e8a6d6d3bb04af3079bfd3973539ac992216caf7809ca5478866649221d012a4fe010841dcacd822154ebb77f948ca7d4e45623b790522fd4ca4b90f9f41e814d2e00920a9368e899c4acd0c5aa6201acc973b444be2abee44d968fff81440642dfc7523bf9ae8a57b48e64110c890d5dec53ad2940d28690eb3f01975829015cf55f7f501de4f3488584d92da6cb0b19ddfab35f611e06481418c92db545b36566780ce9cd3e5e9eaa98d5ed00c668c2e7e51e96d7097c40de598713db776ec4cbecf7e9898fb08da0479a2e96152f29be672426345ca756d64af13477f29aac6d8204ca3590c3883e8fd5d60022063b74c6f06fef7b1b388ecbe7acfa576f43880bd6694b41e9a1545639003170985842318ce6bed782b5dae5e654e06a1e03dbdd7b1e1dca904d8182778b22d9dd9d3dc089c85edfec96683bec572a080e3c6e5904577dfa00e559ce9a0cc85b4e26921745f98fd6ce5f08c792a23416a8829dd14751ae6266eac67ed5f45413b65fb0671719128db3a1f1cbcb0fecd7dc3813dde6b29ce162d9c6f994ea679830c230e54ccf58f6674db43dd0b7b6b30505ca4eb4427767885e6590a316efaf16b2ed172a7085b16c74013d4e8b2d2321200de76fb6d11346f30266b84c190b681325a5f97e4736cc4afd81cfd1b1f999b9355c122c448e033adca410496901e161f2346c9c7704b5efe11dd1c53c16243e8bdcfee2285493160ef085facbd2349516f947226153dd52b00b7a4aa8f0983df184884deb9510639d0b23bc55f5a29d372ee98bad2e574e5edd34f27f6643974b467011029f151d850dd4ce6f1cd714f7b799dcfd4af982eae873c579794275762831698a945e57ae6dfd5370101cab4eee3662b5c64b028d4fbdb46b3f3ba3c1d61c9c769e99f8fbb4bd03675ff43a06a854d1f516314b412fb38f253a7a95c167b10d08f7e19d53a1c473de7a2cd246fc899cd6f345987f25945424affd7ac0c04f761d9915fde9754739edff6e71678f21c433d25498f5195b5218de3dd23e370b7a4fd64221fe85720af59a5e725144ba8ff05735b7f47c57538af672b422eeff0ba719367a2931ac36f62cebb58655d38d01cab24af0a1b257aed0ba60b886cf6ee30d05dfd492f29ccff5020ef79636a76b4ccdad03f1cf4db811b4290122163a0723dbccfd51086f39fae3143798295459bcd2977946d3de0210622cebca52e36943a9c28029490e07199b614d00673a6f9fdc36aa35ef9b73a0970d4fafacea3f48893c677e4d90f6638715d839d2c918dc0f89353fb6be2f7fa39bfe19a66bdbeb3b549fae6b2a29932712265984bfdf882b63438d4aa0f05f947c984eb9a47ee4d25fc214fcfc3211ebdb7e111a4ee4dde1e052b5c9d6621abe0b866dbe0385bed079fa914a0eee831ce2522d026b606851f8aeffef827e0b7aca6141b60c75f666c43d8b28e4f7d94a835039717d5c04af924d5f2d29471a91c9d23476c25e02c13599773298a71b617a2c56db97151334e8a06224979cd8ab3a60ac1479ac5a5a5f37e4d76f65b73165b22cfd6149766134e06aad6236eedfaf43f785b26242e8e8b661bcf8d00ae045e0f3af569e2acb4c4aa3c242bab53b8ac39fa0596df8574fe828892572ef8273e8f90474e1b6108a0e42185d04522120ad8517f31dbcf2485da1f211a232371389cb45f272b7eaba5"},
{"0000000000000000000000000000000000000000000000000000000000000606", "0038adfe05454b9b32bde2b987b84eaa2b67f404a929cdceaba42338316a7053890c41637962dff6779a092d487520885f9484eec256caaef9e0d9c1fcba58511e8e79831970ef3b86469b6e728516f825988c3d0373fcf4360bfe86dc3345240cdc51138ca67fe6b60810e8c5664d09991d86a0f7962672610a25c93c8b1b16655e138ff9dcd621c52f7cead36279ccde199f2814afd8b98a30d98e8f79b0eacec1eb255afe49fc026a87d136936811ea0e7203135c2b85292a09b7730940b4a1252a0685b6143500352bcaa6f9ae78f77618aeb5f2e6a31055b7fcf3c0acec42d25a011d168f50397ac8a7df1141bf52f6bf3bd52a79f5987593640c3325a9f4d4a0db584e146a4e44da3945305b3eaa373253b53fe19cdd66a64902a0f961171dc75aa34b2e5aa5dfaf26a1b1844fd327a299b2a2f2c858ca1a31eba5613113b6f7f6a24409df3d8efa2bdaff945b00be977a889c3a9f748fd09e7b33ad80ffdbb61ffa107186e5bf09b33882ecc46e9f56a1ce0d5e78610604cad340b0d16af112b4019afafa4219192a7cf418219016e52695799dd49fb68cc1e6e799eebb502a66049d4ff3e20f5261a45cc7411f7b54ba7139b68ca30d85c5e822de11cb02d2a1b4cd37de192ace990fe70d8064123b9f3281fa53374f9265d55a612436b86c1f994f272f7418f5e5151256bac234eea6c1ba1e7f0c073cfafb3400b5a2be12b39362d010d8e9cad26727c3825a4d8a4beae68df31ae242c3d99003f7de923415e7885d1ab0a550f8e6de4dc76ad75696be78ba552e431bf6a1c2ad46e635f6a9cf3515a27ace66400f75fba5235c9b6351b04152048e37fcc6fb6a5a4640d3c5cfdad4ad6ba55014a5b9c62b19eab493e12c0f84c5b086610e47987f16b583422e3e1c803649b91593ba53626a0b3be8e677697553cba5f0d5dd774500c4f323b2939853b05f323269c8e1bd942bda22e60ae08e9e85b12407c2b63508173d59df5c145e79fd1f46752b94d7db60e05da3d0465946a6fc087d19ea328976de1bf562bdeb9af6b58539d451d2b971209305706b28d2092f40afb180e427d248ba31c036bd770729239580c9bf6747e120e126a3e315709e6d54670b99945127c822809e611178a49760ad941f74ca775312bbe91f585baf075238d32b4758aa83423671c201fb7f623e4c2c06e65cc5897dd53a8a786f58dd66060f293743aec6ad8d3f0229a7f20c3a7070593ec20327c7db38a61bc1d84f709dddb6cda82c100cf713415f7a5863e27d355d8c590555d0c8e2548dd3346308ac55091f4a58f75166633973642faa23bedc03ac1427f8b0fec9c7852659d35e3ae9957f9615fcb2f90bffb754c4eed927f642311602a0896c91fda519170d9af22e569b630b19bc039cbcb0ac55203677a4bc02df3e4e37d936e5cc6941ce49e2f83aac733f423d175a4584544ca8bce2ef74c5cde453755da4d4a64f257c9dd1379a5e5faab26724676a5bbe5e6afaec345b66558a6be02527678546c60143e5d64296193231094a096e011b6597993c60d439c8f6eb3d825b8ee8176dc625580a633b0db133e870cb35769625b6d85636806bb60c2231451cd656988167152e745693c30460b97d6d1fdfd5b149eaa6abce72d74e947476d68b04928069930f83e8a3bd418e9c39a4e8d6b607eb280ae89b759f71712bfa7915ad6fb8f899f77139b8f80c02bb301d0cd314a563b0fb11dcd359120ba9aa1142a8433f1853debeb1802a6eca725a27aa4e5ff21707ba93310c06dc02c552634d5d75ee69b37f3a7cc2180a64ec9e53da45a30b65963966ac32e645bdfe970928535ca4c93636bc59b0b6bdd6eb28869fda48282620aed0ea12a6d0be0c77a57ed2f1fa250f5c42a5"},
{"00000000000000000000000000000000000000000000000000000000000004dd", "000229b5f56c140d9cce93f203ab56da28d85b8416067fcf6142a0acb1f38170c834bb4b763ae336393208b69c3faed40baf9ea951a6fae2ea82449ef8d8700d9c0c59825e2933e884811bb5ea95064355564f5a002bbd40f5ca75733d9a00ed8f594ae4c1ecfa245606ae7d04275e30698030c242e135c7a4cf3a885d0e0ad829b9b6960ad7af42a183ad61987f5d879b5bca2a30060b4ccfe85b7167753442c8618ddc821a9056001632bba8573f0fc5ad3475cf34bf4adef97c521112ac0b351489335d2ffdc2c009742520d75b594e651117240c1f571ca2e220c8c330d2635ad037f9653d2e4cf979dc684c4f98e899d0f2e3450ae2473eff4a006581abf591ef832fa4009e3f513809073752a97d022837d3c8085a26d9bc91b96119b030fcbbbe3e65084394dd498d29b56d6570ee44e5417873a25f8d2709eb169e8de22277b05490a437ca78e5bc6b79eb2101c7a6e13d1ac067ab6436c82f4423ae5cc75e1caf12a2c9da4f1a1aa11e20e3fdaf7d3e455115aaa3a709446e85c9ca86590dec9317a6b93fe0cdf9704fa219e41a0a65e6a9b9aaa9d2c8293e2a4a13b35716e00bd60b354e09f0f7d3aad140181c5c0b20747ae94716a45e11505cc1092f38922aa4e6a5dc9af8e742882e77b232be91a3353c2b65177d3c4d017c6e9a87fe3d7e735debd1d224a19ca61c1a5d5d77184219e63b02454b552dc0a2fd074b82c15ab141dcd5831c896b0fb122feafc787d6d89d3124631639722d611de99c02f48cae7e427b795851169f5159e496e160581d011b7ce5136bc7fbfef9651c58917739ab8ad75fcaa002738576fb27c01b5971e0681db816908c7e70ba003d20bdc541d08bc385ec0577b47d3f1a788ab5ef5510ae48d0aa2eba37b61d414c8af60b346f415c09524802b4eb3968384bce6b65423143776a8d94bac18a0040b94f62c1a1ccbc89b20336bcf08d9bc43826a8264dc6b8bb14b84f6fa633674460b356deacbe8ed1033e8b4a504f74ebfc101297a140b198edc92a5d17059cf3a5d1c62a30a02041b96093b4bce7deea7a130edc6a1e8f15f7e34863b2884351c404b5748bbed21109e515dad10ff99b26f5513058f2423573f5427e1456a1c2f207fb5563d1b36ed4d91fd4df73a88d615bd74ec51bb14c53a6cc8785c2bdeb62e06b1a8e4600d2dc349a968a31ced24053592f1c804e806eb3ba28b2accb725d252965edd9aaaf695256cc9cbf11b00a6470ef130f23b4adb530dd1d55445c55c23c66f70f9830960304c17b8c7ed3b018344c81693df1d46a0cefac4bc0074198f2aaa630863d6515ac471645dd2bff1a4b0633333da8065614cffd48558d710fac000e9f3ecb021f8c1bd944b3720e4244598fa1b5ed341c87c5b8fdd676c5c672a5633fcea06981758ff8f50048f7a18e4226dce5feb09ad6dc1310cdcb0c2564028c490c204b546c6a17d6671260870a4d469b91dd076adb89c19e56351903b2a8ce2d61aa0798f469b9149c6d5f99e5455bef79b680bd5b3f5fb069be3f3d0237a5f77406b6f3e1a1b24eb0e4c1ff6872fff7f51f2ee2c6860cf15b9482fb94ec6e462706beb9d65d147916ae6ddd38bf67f017bf97f98afb67c4dd3063202c3e42d55745278d48140fe9d7dc2ed7a8df5d3a0a4d6166e19e415593c5c538677d2ff5df54d3984010dbad82a2cd1eab5b9521555fc4ec4693ef17dd011b8ed7571f9ad777902ae34cbe68ff2323621eacd43f6a1cb52fe2dd8ffb6827e4127443cf20e05c32de11cf3b52b1856f3c7d66e12dd5665a9ab8193c731415a6f8fbb891bd0b354eb513563a125def22594c4e35c47215f7b70b3ffe34f8951e51607270b19b471038cae7f8ae4ff5ec803da7a08854cd7b4954dbbe88"},
{"0000000000000000000000000000000000000000000000000000000000001190", "008e0a8d28735fb9cf5f448996d2ba76d7823f434f10d6a2cd14600b1d5deb743bfa24557210157f719505dbab16bb47fadbfbe4b20dc3cfc9ffa298fdccfb096b2ecf484fd30adeb3b6939d4cd4f33dbe7c65ee039aa58e7061e91b9643c16c0ea8eadf1119fedb1f0cc59fd6701f40dd04ad68a934e64d9a3b53f4aa3f2f4edaf01311c2c4ea5084278b472c9dbcb03e217e34dcf28f195c7b6d952595b81dc7a87fb7a13e15bb0406ea3744d5804fb73f280011dde222bd86d94b5e12ded672a5cbd51307c2e307b5d4b9e21ffbda2f4b0893da708f4c64c4997c526d34a6586e29837d843a1699441552d524efee90e8279763f72b027e59a87a15fd01adfae31d87b13ba75def47c8a6c2ae764d2f1a820146de0d779bf0433304bfaa66656165ba62ee2216ce7fae3c698bff1704391af5a42d51f39906254d2b2f26611e72ebac3bd5f2cdf85d53414ddec2cd037bc91dfe8ff0572ac7e8a5b4ffb7fe4311dec88d07e997b01c1feda17d67f08bd57ad8b08b66ae88b203f3e9579189d20ec1bf5124ee7caabdd9ccd6bd56141539b2b5087ebd08c8a3c1dd7a27bd583c6dae900777fd64f4b8e9ade68c05bce7c6221ba0b85ddc9e2b660da1e75869d580a3f336a56eeb77c5c19fc26b0c73dccf9218c7f55831d1e2a94cc7f9922331d22e1978bcba34d06b91d356a5c60734d89de3cc9e48380b4f299f0493e1d52240d801e67b4ad61e9c966d6c46a6b38ef4ab6115ce7db5023a339e457c816d32e12b8e03d2fad1b88b41fad7810245162ee6c4fc6ccf45ee6f880c954af7d357280f29c1c912c0a99d4fa410a66c7be31fc81530fbe5c35ad9f276c6e9170d8137976e73f3a1c885ea7d7466efd47cb19decb9181d1468cbae0432d915a5a7e7327f4ca16b0d335fd7f11a2e256c59d487679040d5b6843a416590e9583d2202c5b61c3588b4f2e68dc49bc6c80df678b41c80926f793e42225d156d81e22902e777596a67eb38aed60308f7791d21d02d4670e4afdce1ac3d38c5f6056e188cb10003dbd4a949aef1adb5e0549d79c3faf719143cef9a99972df9394e73aa91c3ca9993a0f4fc571cf04bcbd2cc3bb6cf5ee4d0c3c8936d496e5aca6c28503eaef65c16d1d8f8e2f0837f9928e2e45ec3663a54e451338f5d3beb9f7506b3b04e6588dd1ad7660458bf3cd7d69fb0ce1cd26bb85bacde9c1137bf510b6bf0bbc2caeff8acf9f3d38f61d74aae619af9450af04aae0873fff9b0b7519855cc9591d0d518f70a19a6594d478e60d5178494e547d034c7904abef270055792242dcaef3a7acbd1a9d76ba2c3a40e9f9a740fb4bf9de6c402d7bcfeb202e37c5809dc8b1a0cdb0959ca22c88b9329bf7dc2e435c0d1cdc3fab01b9211f088d01cd5bb91cb06217ba995ad3d0e03793c1903e64b43df12c4337148c067749636554428cbdd0b203a5f0fcf38aae1d83f562c8bf37e99e1500f18860974aa731d54f952f35f52716248b7b9c8ddf02ef51d8da60aaa78e4fbd64512d752c20489d7e93bbdf10ca5adbe825efd1f1e60356ed3ee16464ccc9df6951eb12720144831c9713f45c530f805557d873ca94612e6e99c161d2ef31221e1524d414f7b06e89acbf5216bee10e70c715f740b85ed8bdf15b6181236af6e0e9a7dcf33974ee922fe5682e0c87ef2b06df73095320c82364e28fa53c67bc6cbc9573fe6347bdb230310a221d648dd717fbe88026a52561f77032e9cc73b271c1ddc75e626155116c2c01ea4e1ed232c5e5a451056d10cfc13c4454efeb6fdd141162e19d7f274782c45fdc70e16e7bb3a784390e3f71052ab291aa5d2112501db51250917891e58e283d78bff3fbbbc7c4112b29e8ec9fe3ee3fbb091f456711d5192bcd9cea5"},
{"000000000000000000000000000000000000000000000000000000000000130b", "017acafe3934c0f3b2595a9f9e71c84eeda3dbc2851f9fa4f3f91b641940d8d2522723f90642b93f56481fb42edb33d63983b630d21f04a33c1102be9b7b8829c32739f8d6ee22d1afa394fc414321746cb7b58d0b419c7d33a02db75efbf54eca5f7a33307d5a7b570eb455a34ab3a901e11f21ec8f9db329a1b29e7d370e56fbdb418dba8363ccc10dea501a2ed0825a4b8854fe55cf8499d1f8de6aaba0a4fffc335b43dd981e02af1c719e0e01bf236e52704f5db678d24fb8c17628abfa82bc1249b4d4401409a1decb3ac891dc9ba539d9776a5392b7b7eb10387b786921f2534b3ca2fd3db8f2ac07d4f77974d165c6dbf59379b9b039628c0376b0b42e6e4f41f2cdd3084cc0d3f5f85bf2191f0a4337386326cf9bda72d1c800ffc3c649447727621a30ed8796e085af0de481ccc2ca6bfcd7c9f44cbf287655763ecf5ff3b1e835f77beb4ff19a319a1acc020fe9ef526da61de2efb0df7a3e392cf440ed3d080b1e6cdd9a8cc3ab02ff94d684bd725e4c3298af4c1829e76017c84f3bc9ba659226d82b25688472098e2b69eb1c6ab0bfabc53e66490c521d76298c7f8baa0be26e87214db5090b19d43867e3de7eefee7b24d62165c966448ffb937d0093acd43ddb018196f415fc10b31d930e8a1dad2dd2a17e0eff383c95cb298ff32481a5b734f3309fd520b27ba1d3604e5f5f1dcefa04fdc4c2f34f1354873c5059441b809347cd3e233538b43fa96867a7ab8423962662d4ea1a24033b109810f60f33b51fd85dce52f36cb93af296f51a3f51bd32465fe792e320a34729e5c504e64c15d86373552f08ef1a4cfccaacbb3aaf31e92efd971ec3933d56a3093ce8c719a7b619bf53f32a94b04c12f8cb1be5ca0df68faeca370e21f8d302bfb2eaab56239059f7a51734e92d609bc3f926d644a65bb18749e4ddb97e0c0235f514a029a45dc54fe2c54e192ae54fd419574e55401b6b1f1c3e474a66459e3dad6d21847b9489f9044dae6767d94ea3f06b524caf484628c8360b0ca63a3cd205e81164ddfd9c66ee77d055eaa4a616edd2084e16ca86830de419b79415aa7d4745b75e91017409f16d1f5a893c45170b1336f8ad16cb340659a1f310ec4b76b34fce27f284b9d6dd6880eed38459600117071fd95d11992152b4221483e077ad7b70ad2c4602c01fbce1dc1697d70df210bdaa23c4a9103da8bc236c2e1918dcb4dfea88f6b282e5a753395e7fe4f8196bfd30520ad953f932021833985439273f1d0b6a19a4dc7d2f8ac9e9f20cf55c72c5eccdf5d4109cf81420eb9c1acf8d7e9bb79736535bdf4a65acf9c7f924a1057c3f20c14f2b5d8844fc48ca2e9028fe936d283b9adc006e6b5b7a8697afd47ed29b0c111d7d5e438cbd7b5220dccf7a2b36d5325eb2bebf0cbfe70d0516ce827089c3614f5e907a3bd016853dd77a687a34593360215a04ef502e19ccf4e0307e7588bc639d0c8e4bc01be77e8751f002a91de6ce357030130e9622949cf56764fd85bccd8a17cc7ed3ea975b976524153a3d6007a9e01de09801a43b5235518d873857ba24811c29429819ad5b7dd5066f57fa5fe10f7f3b6e1976074c1fa26e6de2c5942352dec3e5d9f29a048240e8ede2f87b8b4dfa1894c1cff217a59f03360894060a0e44e88bbabdece032f511c39425610696d2622921bcce6d3427b9ee35cabb535afc96d2601ddb360e35c660eb4e966576eff240edfebb910f4d1107b820cc1f675cd1b7c8bb2472b0b9beef43797d9c6fe30ab33a2c31979d01302b03db864c66b163ba3a369826f331d65f74a71dc66539aa76fe765a889096264a1b82278d78d76df7a9b21359cae5744d28d3eae7fc5e86acb7e3daaf4bf62a196abdf7f80a9d8319d242"},
{"0000000000000000000000000000000000000000000000000000000000000154", "00a5d3d4fee34b1fd4fdd07abe65572e81e878262f06de2c3cc845e4074455648fa6b462a658ea18cf15075fa926d4dccce18f9bc12ba64e55dc9521f279b121fcf3a89dd72c3f6b03626f92a8b6ee0cd938b06103f3183339029f12317da6e277b95b27be997e5c1e11a1a8c273a86251c3324292d96beb8a54b69ebebc1546578c32aa0cbd7b70c63023ca035991d04f24df26ee278573dc1b7ef736945cdd7d6366ceb43a7ee512979207180be214c0bc8246bc695934e42ac9aa921aecad62106ec14bdc6af4aeb14a7589a280745f5a31ebae70422c8cbfb16f0336c625d3b2d7765f55045bef7d12a9dbfc15aa1b67037a720a961e621f78cf140d6e9f791a7e4dd95eb598acb370c63ac21dd5796257de205e3b0f11fcdfe6ee72b9d8bdd07f554e5e158a4bba9aa2af078988152d11d8ac7dfa06d957ce7c6badf323b3c275dde88a955f6959a7aa701fcd9000e43e4b27d850f7a2ad1547df42c14f808dbcb2eb256af40a3a1d348af684b491a9296e2a4720f79da316fdae084c124235ccaef3e84a478d8efabe9ae3615b9623976c3b1d47fbd9194f875fa75e6d723b5e9a0ef05fb7340b49cebea8b27da369aa8947fa56a5ed4b58b619ec2b6e7b7b68180cfbe28ff2edbe7e4aca16385a5122520ef544a2760722c3bdca8347dedd043e6646bce22147bfec2015fc19d3aaeadc5c5d012916ceefe7000d1e99e6448247a542fb994fcc2f089844fa957e5a958f736836d76b74e3a16a15b872d66120f56a2ca7661d2d5baf82e2d2b86e40c6bf4978002c7ba417dee26ee9abdca32aa56e46e5c6a26e980e1ca9e9b623cca30fbe8ba57a7b36850e4ff25ba8911d61da4e58cb7a5bf97052663fe93054c3114dee5221a3818d27238e69978e928a62ca51e4a9ab927eb12ec8c544615968b5dee90512ed61f76ec9e5bd0c1601c4f95b0221f55f345a722e68249a8c9ae33cc5290e6add805dd8632fd3f6f11d20df3622fdc33fe12619bbd9b2e6cbfb349503d4721d61f7556e9598850b1f6a22fb98c84da6f1cdc7c474cd4fa29a87bd6a5d0895f9a350c68161ac25b25a4a308b8d74e99b8d28150e77b06f526ff35acf91ded8944fd4b00d8c2fbf2166a2ec5cea7491c7a783ba7e728cede2e29660a424da32631e25faf3f0ed130451ed404ab8dc19030002fdb7cb4f2159b32913cae7265e9f92e3db5f57303f8e564e36d48d3f9032eaf137fb547b4da61e97b31e7455bb1ed22620bd6f355ff93ff312d584fb8cbd6966ee6b1e66fba378d1c6f651df4c1b44771d38840925a185af89961b4576825bc53c927ac2173f765b1e914ddb1e9ec2f1b708a36826bf8351bd26dd7a312978f2da5fdbbfc323bb64fcc0abe7a547795cdda1359205a0c9eb9637696583e1c46b2e2adead79442e03650780c74b8be92ed32767b97a82af38d4dd3cbe03cd9f669aa0c6918dc3833c96739b95e704defccc0392dcdedb687e2b7eaf848600fe891b713dbcc881139e0ace7708fc173bfffade3974006ed85a7e4432074b3c1626c8ee2e6924c1812b49f2e69aaadc139d35c3f225c86ba517a709c3de093d6e5b6c5edf3082153acdf0c828465f73b7c5644c59632db350572bbe6eeeadab9aa64d47c3c9d8588cf1836668ee56e6c305909ff879e6a24d4e7b74967331fe4a6e8e15479507089c835171f32df51218d0cac890727e5a1409d909085542a3d5c4a94c3ef6a4a5e0c629ce86f2f438284fe98899569490bbd36356dddfc08e955a7fe25009d1aac858779ae9d18260d5167a241e3e1f9f9c3012370bc4764cb5c87d1f928b309a469a73dd5fd4281cd37df42ad67df94b2b64ce2abd1fc568e15f3067561af7cd63e3bb39d4a0e6a2826db49236aa1b1925"},
{"0000000000000000000000000000000000000000000000000000000000000bf6", "00282ba93bcb748b9fe6c7aeb755207f59377f360909990ac08116e389e69be15ecf7c37cce244bf07f10d031b17ccce0054841041acadfcd43262237f4a1a1661bb5a4e953b64b133eba14de1454723d6fd0615059d44488a0a3dff454506b0df4cbfbdb52a5d31700a4815198a461164efcb02de304ac5791c663676250a0e88623eb044af889e8653b963e22edfb05959550cfc12e11a57f880c66b714c2ea0d9d90506f3d7ac0129671ddd06950d1d59d273a53716da86d23c678627b0f647cf916c39813d96c6a5d020ae019616297718390a2e8651535fb415f3f1bfb69bef56025b60f11a49a0fca3314367c971b3741e304df69f16f66ac6051c203f7710369731b940a6fbe39e572b569e0cba112510c6dfd2df13d07c712279a5cb18ccf72acbcf0870276273ca2810d23861751b8ea43d805a6f9f540b36c0ef5a776fc1e3252259f7476c3eab107f78fa016bd2cd6059a333472c12de5619a53532bd0b244c2884fce94058873dbf052565013bdad9f4ed3755101a5c2dfc485cafe7a93a02ddaf66d5bcc7e934271825a6d4610228d65faf9c33bd4abc47ed0c158d3118044ddcd7bbda0c8da8445547dbec49d5ba69b04c633c45ba2daa9c165ae6a19590ea371d1185c1f6b71d1bf9bce2e612fae9803771f5f866e97d29e339f6cd20cbb4e11b5948ab52242346badb1dc29e8cdff7a30cb7f36e98cc955d8547f21e53b2a3412493ae9e231eb39cf1b5d0c37734280707d7ce057610d3f5b19c0cb9fc2cca0b9c7b8223b6ff8abf2ef1f939f7119f0e650ad1ae19a2f59fb5f3a3adc1b405b45f2f098a0ed1e42bd989715f2be63802daf66e06b795588cb41342e9c1208f0133d10f7942b74a23ffa6f15e4330193ef7aecc465e8d5ffa43aed367d1878f6d9db22d4d2544f779a93f977171d656bbc297321fc51ce13d010072361ec47cf7a00da0146f4e12d2f1f317e8fe229fce879a710d0dddbf6302e95ba70a8bbe36c9e60436007615ee5447af6322c3c97336c1bcb53722cb06822cdee647451097c0343acfdf52122622f76330022f52da86c6db1ec59b00848dcc168c687274080d03fe55484049e8009f6102ffeaa30f1e61117dcc0125327635bc25a55f59d2a4eeb7a93c69f5179e027e62d3c7a1e9f5b5c5e62888b6ac6c0c9ac75cbeb80d0e78538a86f5754bbd348465f44ca69e4a0237345d1d1b3acdd80e5cc16aec3a5ed3e7e79ed392799dc31076a6cecb8714bf3db1214722f8c731c15318de02170e5dc8fdf20bc197eb54108f3eb1e909f6108a580ff95c46400fb99b7ea0bdf381fa13a7bb757ef276320536a1e932e9bbd00dbc60ac6da1932050bf8aed1aab952a1b48c69aaf8082cae078dbe0ead6b267062763ac5297619cd59b7ad28a736d13a63082130b7e02bda966daecc28faf7a116331943400e7d4ef98e2153f99303dd2360944bb625dd997e1116f381f4c5e156eb7e9ede55b51f72f533568daab153eae30a72d1f923a3f0b181ccd77f2b313fae04a2e8cb65f1c13078bf500c90f660dcf0e232015bb577d837c33b42f0d8c5588de54aacecfa6e293e8f5059d48b8d8cce6081bf68686ad56c7ea9580ecb6f911c9fc1911dfe11eeb1729cf0bf5c5297378c0145c653b98ff9fe7a6038b1c01442f6937c7eb239f6fb55cc501c77b3b122a5e5e316a4b656f80f418078149378ab8c8386d6c2e07a1a02d4cc5bc6fc455ade53a8e1e017bf5e62635934396d7aa6487afb186800c368166093839f1a203fe37e276016b8c504863fd36b12abd1982374d053e3252710aac3e6596853a5b706b489ec3cadefff817681b3687a601c17916540e2dc47b2278891dac77188bd713f2cfa189a5ac819acd21a32738095d4005"},
{"0000000000000000000000000000000000000000000000000000000000000904", "00d3689dcc540c42a60c1955cb611252b16afb7b770a0c061f9f943b16df69b808226189168d9eddee4c20db4c67daa9fb4d750c139d823804418e5f305dc0253293ccfd8a8026728235c937d0fb7a71cd1b874a064eb4d9255120f9d1daa37d595d109e8422db2c083039dc737de08c6f8ab0858d577cfb921af57fd6e11d6034cd9172f7e1ee6733fd76e76f1a449335c79d33b4f36208a183e1715903fb73e103bdd1fadc2252018eed1ada9a05bcf79ef79dc5e348c717d91dea9e3dae536e0813785d7c420504706e8f8a245218a69224e5d2b931e838b9cbcd23bc6c494e8e0b06f131414e9c8b2abf25529d8dff37ed8cf5b6be7833d53b3308a1dd148b93ec6bdb81d26b524f5ded8a3a7b0963099ea8f1b2893bf5bc1fd462a26d2f5b64a33c77951c5276eaf2f7737bebdbe4da87b34f028f86f7a388241d679fc65fb01fa8cee70001c405a293d0dadbaf02c65578c82a734b68cd83cf6a61591552d0bbad2a054c9bc71103dda2f491c3bd9ca532eb4797fbc8410e3fbdcb80a650eff265047199ab1a663cd873187932002d569511fdabda89e4ece0c8779d85d3b0d7f504984ea2431ed291ec944103fec85e78c9802be56006795135cce27499d912417df752d07e8141de3934091d6ed71e674ce79092e357424d2bae89a4df4ded1f64d9f3299b390b9869b24cb07d3e3a77cfdca58c03f008fb96cc6c3a78a5c281fde00d615e53558312142fd1207aec9e437792b57f66f965016739dc34e20934d4df4312742ba90b53b73ac71b77a7099f7f76250bf17ae499f863c800f73f0f5ed1cb57fbfd5ad7064288d9aec3c43c60a754e22d72013dde889a7a770a2dc7076e223e7df64a8373dbd75ed15ad012e2e327f7f716a9920a31c37522b602d30c4500e9fa81f63a13872dfd6c4713d21d67218474606e21157726aa00f3ec523f09d997cc5672ed83be986d3a430ad42e07452773904510fa39013bf6cee0f16beaa7df990b027d8b3ffe11cdc4aaa08331ffa14b2a8e33d7c1b018b20b6703d773b7f7769a92c95b3cdf58603f8b7105658e528d10ea212621a316a0d7db0e5e5d5c0c5108588419d664f2818f2837877d7d4592260134d46e20aaf1a276273fdd83a057a93f7739eb61a2fe875081928c146f70c567d07afab8056027137d3cff9bfc08c1e66717963b0d81b3b4a5a56d5c1d6fe8992fba10d179371c0ecd5fff9236b566fcfbf6faf19b999e0b8cecb0b3c86d63251bb23c13fc7ebd1aa132dd534d9ad56b0e7115e39cba898f3e639b628a869fd4a10d2bd19e9a6ad93ba011754537e1c0c20c46b90fe61ed75d45e31802a1d9f5432b5e7fd03e22cb976fcf125839f51aabd9fb729d55547dd2ba52179bb1566c42d6d61b4752878d2cbc76b42dfa56c24ff2bd538a032eef10474f7dc9a9ec8155c17abdbc9c16d942c935de1286caa3ea6f3bd686a3e77d9bef8ad51c9cb9264c656379b8e1c5dc5aa7421ae4c85e87577e5ef42f8eec68621066d9851454e0f9bd232dbe53f1546d099280e0ab853164df3e909d579329a5503d1be23750287e87276b9979b65936fce3414c9e1875b75a9610d58609bac54e9e98bf733ddbcd3c211c88af9ead39cd3d79c5564041ac7557554df2fe56b3c4374d630c1a056d955bf0256a4d7105b0b1dbf1d8bf9ebd8d1ec3914b339f44acfa72a78e5e7b17b2074319e09117ebd7cbb5788b47dade776d5dd6a01a1b9d57c4842d50cc64d9ad86c7ba543460d45b3bca6e9adec09e0c2b5b8679cddf19265ef13f8a7d9e1aa66456204a44c1d551b5dbcecffb0664bafbd5aef18bdfd8245814713a5cfed1d7e508fc4184c7e912e15df0f1f22e20d90515fe0ae7699a04b77d03bc399217f8f13453"},
{"0000000000000000000000000000000000000000000000000000000000000869", "000a133e004e8576d8a950506bbf02c532919e76d30d102bd973ac33e17a11924dc35d0d00a239af04c80305f426deeac771c1b0a77a71c616da7f8556c18211b60af3949c3cf59f41c1d6ebd5bbc8911793ce0a015ce8d90ec5759c7be7119fcf1b0b08cbd1feb72407aaeedc0256f7b93c38b494bb6ef8f63571b25b2e13270c46e349ba50ac6bc2352a274520f7c3570a9519fec71b4bce532d6b9d943f8ecb6a698566f5953c0d8324db8fc786f30bd923f64172e83e5afe1f120450e4b6b984592a05cf10c88e057638863657bb164c11604a27af048ba55881f162612327bf0717bb0e6b31e1ec87ced10ca4bcc2a5c969f72eeed6439845cc1116a66606c58e88f8629562176d37a9bea10df69f19b0044fc3dec2e9f823f48a5e4c0746c1369e779a16201c405dd78b5f7501796f8f528f02e0653c61bf3801f2fd8b15e0d0b99398a72470e9d672929c21ee01623e0caf809c5d507eca8698fa8ba2ed40d9adb20beb65902c04a3c9684801c58e43c3f4cb235da033094a6735b9a6a85df77260e97339e3f90fbe546e83211c19fd256a7b4993490867537b10ab25585b845f07fea658644a00617ca25ac34fed58d6eb615a402d1bf431987b4d4eb09b76e2a1e2a93b50c891ad377e13f87d68c6a4b4e77dd324bdcd7b890dc0fa3b741d393cfbfeecd55b692f28aacd80da987edb685f33e50b8384b1fc69183348e295d8d3ed6a49c2139807fd399b9ff2319cb86902de5831e27bd32b1b0d1d82601abe4bf7e9af272daa1e82abfc71d111c0d2d7aa493073f58acb193f7b688434fce9cf07da92f53f3f3e0d275cda0e5d39978333213dbe235124931f2e262c1db1e6690e675595b9d7023d1c52d017a4725d3b4d34cca34c1ace4c61081a23c51671d565af4313d0204b245e833f625dd58b8b689a535c5b1730601db9c1000bf025d7dbbce5bdc612ec5aa69526057dfae4ec1b031c67362473f1edc5832d2dda48ace1d8073f0405611a4dfb8ea2f9048701914a6da6486b1a1198e72e1624b15714798ef272ba3c6a7cc02f065fbfeb2407481c06459f67a1040b80b0b527feb98cf47ba0846ac99367a9e235cb4bc86bd99ee087ff3f573de103079daeb9dc4f1d89ecd5632570f99815004a6e9a4b081dc60c2351b26503c753e58ed7f96ddae0f52d570543bdc5c8c1a6b7cad543caafaa0288f6bf35a5591ea349b6b158fb3f67670205a6f2d586ed76dd7d890a258d6c72a21bef6cec0196a2599ca521b2d4cdc133fb3b06deda3609da34473f665968ab73b6fc50cc0a5436ece951ac49fa81e8c58f75c20e629397b0ed17d0f61b499404cb6f15d1fb8c44f95d9f68168da20be3e48d8d56df832abc2104c84a35bc95d091fb4917e962a68a9480318bb3333bf1406214fe8792ab18031fda9e42267669ea92457855fd5cf5973914d947070751755850dd0da33a24843bc06159eca8b1f2044f927c702c67ea375c02b7dd4169b1f291a0dacfe0504fc75f70d88b77179d78bcd169a7dbc7e03ea3c311c5e0e440dfb737b89fa5eaa6c4469af88a996c692ef2aa6d73f1eeb9cc8817794bed7a2622487a9bd926aa49b1a1cf93a3412273b53a68c4e4fbb6b789d380f7f4419921d1ab19d63a4cdcd6537f40237e020304c5d270d75fb6bb1386c7ed34e47e330a7ddc5729077a864746915ce8f995a2f0bbbd53e1a3d813ffbd04ccd6f952919c934731d43d396370b9c7e051b5e7052ea3c794c2a84f43310346c45b05acd42b78173605615f6f2bd9b9e7b596e2311f9604b94730b9a7ba1450878a90d6d80743a1f2011c95035971af9ab344073bf4f7ec65aca969b565336272059db9b3dbbbcb2729f74f74379327f986d45162bfd1c557dc2ebe79"},
{"00000000000000000000000000000000000000000000000000000000000015b8", "00e32ae2030b9cd4f0f3d7b26b711d260f14f4013b0489ad07dea76647ea6b6203b8f7cddeb68557f31e025d939699a83153a3dcb38e7ba92d19d35db29844250db9d5924b779af274d4d16370ced59f862d10960aad7919aeaef325ccb127ea7d60e84a40b577a1ad160d75fd1607bea35813a3b6cee4c999106c5726c41caa34dde44c9ea8ffa512e4ab35da2ccfb06c76ae601bac4ee8b42eb7e01ab62dcd771ec5cc41f0778c04eab882b3966abfcb22c08a832d5d172be3fb5b7b3680be82569c9ce734edc9cdc0650502f2f5387c2c0d92ffe7138c3f04f1ab916b1e37dd111e3e9947ae149571d9aa455e349f7c47711f7b952abc3c1897970b0b9f55af84dc84712333123453e01d228ade0e7f33c38673670dbf81326898937e4982f705e75984f811e4020bd5dd973193ca052b8c344077524cdf56dd2bbf1397951bd379187a63ee7762173202c33bd97801d8b6dcaa9fb753b730e24e8d522c462f725fd81e3817b529f5535a2d6ba074849afeea75678df9ea5019e9fca0021b29ead99b45b0325970c5ec71f44ba03207b6d48c5db78902e5068cdaf72d89b2fd9086390c415b1e26551f0f55f359731bd392a2ff1cdc113f32bd62fa8271896bc98af65694480145b130fa7c4c23b95281ade2e2893cadc31134f6e380ce8b08960626d7553a57940977cd83941c0c774a128d3bbc27210959147240c88d26dffaa2d7ecae87ad8bac2cf4a659448f117b9d63d5cc7fe76016d8e5da5ffa9390130be7f42a6199ad2f2b8631741427f4e93c7d7a517113fc63505d54ff0de4401693e96d7f226584b8e99525f93774e312c6dfdc147402316cb11561c4fd8a2d4edc1ae535dbcf3f8fabd7dd03fb00470f739fc1973cd3a72a3f167345a67ce6d5e1d0545a4a225d70af453f0d501b5f991b6f00552aef6634d23877d2485f011362966be5411d2e65b44c40b36615ce7c17bf0c43a3fda585d54ecb86939657ea528a56b5ab19f0ba0f8502d3a6f384a9b875d0fc96cd10657d0018d566293956c918136fb0cb9e799aabed7abab66bdcd24b0be6ed045630e13ff20a6c4600f9912fcd7d7e7b5842420c0a71e522394d7f8536604105ef15df9af8793579437920d3ca20ad23176f3053c51bacfc9d70d14c2b447d0fdc8d8becb115440148fadd65b6bd3b0203d34628da5381f0da4077397e417e4e2e5218af8f16674b9cc3a61373f7d821a3af41b28879add5cd4511337c6fa71546deba5d882fc35450ca8095bf7be3154cfb8da0dbdca95c05f34f87ce200e2c42f5ebd2081fe95054967b10fe6213baf35d29c4fe164857ac54dd6e292f97aa2590dd9765784e51c6c3171be4b20b0ef2ef0acb2b11b0b3b2c7eccc0d950750daa3af1ae23e3236c7a18bf902455453f707bdef10dafe5503e276ae6550cd81aaf7f1b67bb544c2192b3870f608f0eac944d50221bd1246d820d4dfba0480197cd8159885fadce642994520d44ae03a9e5a024873e9ff2e6b2a02ea6aa771f55ed3021169a7aea864bf94ca0f21342f38956a2105a37672263460da2049fcf3c43368b73844b380d39e7a142f11335175b274cfe36c11c23dae1c109bd8a61e32fa2cfd221a09bf3a88981937cc1c1a3100818a17d33562ab6960f19bf6757516ce36ab56c87c52f2bf524864a0e4bca8e7534eac1a54eab38493b0cd64db467c91d2e8cec6169e438a29b5b41a58e6a4b15f17f5725c4b3d95925270217e35aba7e3d95adc8adab0d52d05bf2c49922f33cec318dd85bbbcaaf6abec70630e7da1802e042698e5ff21cc34e5df15901dec9db35b1ee41575a01675b8ed26e06ac51dd815bece91e52580b7cbedf7e4f0615147a78c197bd2b6e516fe3510eaeb87819819de7b49"},
{"00000000000000000000000000000000000000000000000000000000000010cb", "001c706aaf1d2d270809e6a7d2f0c2e6d14fdeb0fb45a06a7826a9bf5dd9d5351ca95cee56311238e38e265ab1e87b96e535a50b9274a52b7f050e1fdb2a613c8c34e4faeba1f1ab2ff9491d6a3ac2bab6de17f4034e289b81e2f115d98352582f39eabf0ee4b8a63609b1a731b294c00cb7d6050d91af99b5d0c59224bd1cde9904ee54d7c7e069b2548f463389d66fd94f513456a794ce7f6c25ffd2642312db55f952b23adf5e022d01bdc0095ec69602c86404fc877647665a0fbe052b212a8ec9af0e63fa91be31d7aa68f047fbe4f10849c857d496eb0ecb5e516fd336e9ea8ef9bce5e30c712538749a2fd33cbe29a7ba67f63ad4b41cfb8503db6a54cf09d339a6b840961a85daf8cde10e0e7f0530ca61d79d6e71c276a05da5d0fc28658271511a2c66ef1b089ad6ced7897863f35eb94a1f8d7e112340bbbc184fa328cd2480d5eb656ccb3a58f53ffce1018a6b65f742de3599b2e4f0e471a0ce0f4635feae6347b451c0aa6223c319c7559c42a6f621695b15e5026c9eee6324785743a9d1d43eb387fee23dbac6a92be0872fe6f14007e668c2dc4936656d8db61caff901b5c55eb763273f27ee701d04f975c1c7f13b27c40b3e7d442e20f995c8e860c81acf5d9944ae761c7f0774cecfac4f61954822734e27f59de61dfb5df1231e782cb80aa7306163f3c2c96d545a4e7d5cfc7941057dcc28d54fdbebd72f7223bff7e1ef3b993e731f44bae280d9d635c5926e45176255a9f16e1def3472091f7c03bb4d3195d89735d98b4c2841bdc696bd601b3d8d56f4d9f28b4c1dd3882750a9c962e419dac40aec8adc7778b479deedb1105a12a4533c0a3bcbee0d382def81ccc43535c3230cbf24d3c92deabf8ad3122d6509b010c152e0cf6331216de222dce3fa51f712b86777d4cab0f46946a42ecc7cbdc5a52799248c00a39cbb306a08c3f0c592aa08c6140a10bb59daaf1ffb1c3d0612ec912b7dd38cdb744a11109651cd301b33adc52337b3adede8b87cb9704107cb415e83835e2ab4116d9ba7ecfc83c6f49eea3a468cc23ce4c611025ed04229d7cdd9cef38f7dad66517b5d1a9310817a679dfa27f741c62ef98d4771523ada699db7152e806454200f205f27d435311a6d993200a892de3f47a34f10dfa283f92e4ff609a439dd8e5c85b9cef60376ccb769db5c8bda96128e9c55f352d93e39a5cf2d12c6c95aa141355fa1b5e670c90339aa335eff310cd0b53a3e5b391ef35ff3aaf1753eb542dcf689860e57616933f11347891342603b611e7965efd2148309c42bec5b58540d2b5353a9f742111d384009f33116cd0fb759612c0dded96217c01af53564426e3b3f0d7687e1ac911ee2cf3312a1dc60c524f380fd426215b2bfcf3145ec92aa2627bb12647b2ef1ca5e748908ebe5c036433f6749f3d377204a0580f690f50a972565a7288e542a6f6c5c762ed0e8fcd1cf8d9d6c3208ef9f7d6cc4f7b0e701e100ec524258961cb4601725880ba53c9f1f834bd495c42ae382da22705154402a68c9bfda353873f1ebb46396e10daab13e1b14da466184a4af77bce7e0b945b5e8e13f6a578b348b2b37cd3710a197733da82697069a4b39126f9af635bc6d609d5175206a3335f808c820df5b864912f59f55093e3602bc07fad2cc6250c345c3a0d8c7e16a98ef196aebd5a759410dbf9c56468664c211a06d1b699518505f83caccc905db5981d3bb38d7ac89e48549742e7b44e30326ec9b49cec38a614b046ec3f39ab607100ca0d19e94200f4dbd926d77f8fda50ae071e83d13473b3b255b4cf11e2c7252872da68c94d0df9e5626748f2b20af7ba3cf2fb2d64c6160cd984a35151d3963476e8f6c7103fd94370f55edca9a6c15b7699b"},
{"0000000000000000000000000000000000000000000000000000000000001652", "000a779571c2b44d7fda937d5fe3bb9e115998225c27b127878d952eb93618234f049d80fdf74af479bc0e06a4ee7c3bf1f1f790a3fb656b9b6e102fd4bf1d37bc3d0c342841d58d6bb8077cc872f75dc09ed87b04f649f7b94de4c79ec550c893a5ce09fcca9c2ec41e996e951bcba813bae46a3ae564d7e2b74216ec1837769d422f628791a33469caccf222ff1cb09c0dc644a863e76ba8ad03b418277a4fc8d1a2294079054105f317a155c9e50b10bd6135d568d9bca73ebe0bfc09d6e360b6e5f6e734d355b727b1ad5e1a5cf6f8f2139e437b24ce679b154ce7934e47e5b38b08dea856305c12403b68b803c334b3a1dbb428b5d9719b4d8406198dae290c1a60d8df246f90d17736a7d5d9bb5a2b23b1a24e13b7873bd5f4c8ace717a5922d6d568e09dc3e4ebf46f037a15721cad1c89748c8e9fcdbc452dae3f63d260103fb3305b9bbc47db57d227f9eda01855c386233d5c5b206c0e98c0c571a145574ed8b01c41de3ce955a87961300a4e8e49df529279d792e02212d5f3145587d6f9bf0e275e0033d049d2984ee03a63cf8270aaa9968a7022d9cc7c8118fcdbd8fa9095f60901160ac5966268b05a3f78d5f27819c10a5121741864fc51b4abf4e52c3dd6b7e9692463ca933204b8f4174a9d2bf521f42253339225e0cb1d9788f25ab39d05a0cc696e3d33567c3ba73e78a0a3d42330249a879614ebc8d783eb2fe55ef9e812ec12ce9070dc8068eab914542a27551bd022dc6493c2a5eda760b506784f7ae16ad9cf601b6b9d6d5a0a9a8ff55bd49a9faedfc21ffa5c864fbfd4aea7a73032cd9b0aa10f9ce5e1d6e898ff162463d28792045ed503010e729cd33e68c9375739c87d3b316ac09699e79b22943276286057ecea191fa6353f119c0fc55560db0ab163c6f320637e3d99be0b8454e3c369f3ac24c5ece8f004a3d5a88cc21f292c6e0f1b4568a006b9ccf3c6d0fecc50d8cdc3d7eef5393a96bb16f399e860f377b0668190b2a05a01463d25a8f3570dfb2d4ee1ab83e09bbbdd6a68f20d5fd64414591438ddcd65e0fb14f0f38e8fa732c82cfdfaeb3bdc8c9f43f0d15de0ef9270afcc9395769c74a4863de8df68ba303ee38a39527bfaa4be42d797591ed74720c6cbede28589e6f12404eb2acfbdd50453ea0d44fefae3e1ee6819c409c0f21f70cc903f3eea75415ca5a74236978a80cd3771566da06fc513d0d8a9ee29f65d527f9a165175aa725808bf060ce3e93545ec355301f7671953179194e75b405acc35fa7f56e271ae8cfde2f3f3f94bf18c80fb6a0cf2a072b578791519cf875c9d86c7251ef470fc008c1ba440527f7df41bbfab4b7e5f7995d0f67185d0127afc6ceaebf375415aaec9d93615fbe1e7b3cb78b3ebf9022034719e860395f02425a28b3326800c06bff8570bf9fc7a090724ace349aa35d38831110204bca839e86f91c433102d21f36b1ad5097b42007b665d46b5daf0dffbc41ef49cd90397d0b1e083112709c889af0db7d9c4421831b651f71ade89676a30b889ab706a6d839586cd3e05ee4001112db88e2d12c71c540a2cb40fe79d4d3a5a355ac1345ad7b4b500e63cf4ccfd694df53b44300add9bc60e2c8bb3c5c24e50f9f30df7a196ea8d37300e934656cec2c3f6301707d660176f9edd674304c29fcca1d6d7c9c6352181344ce010873005edaac7f16e597c7258c5b6e8f2646d2d2a45acdd334e5a3ac041da8ba532ddb6e2b2e9ac20670ce59bcdb13b38e193e7ca33fd4faa93e24f02a49186692d1f022e27579fcb5c4b99c0b88ae26667f70b5d8b387b755969eb7711216996aff8cdc401f833dd0a6ef57b9c9270253e70a4dcc455de0e15c546644401f4a99e6a1f6cf366a94ab9b9a9da237"},
{"00000000000000000000000000000000000000000000000000000000000008a3", "00bd559ad249caded7163150acabdd099a9b71d9ef0164c5d5474368d8e29427fad66f52da483cb24dc9099541a094c501522a12d13abc168d9597124cda1b09e8ccd1940fb1079f9bd523095d4a4222091f71d507a6f46ae61a5e4edbd368ac9755ceeaa96bb5559c2e4a76b261af004ffcfc341e305bab61c33a314a2708136892c6a1907dc94b611adbb024919f8fbab1333e0f7550f67b9399f9d806224251fce1fe581eb48d022f32780d1d0f479a0b90e56a445b40daf958ea08459284091c96cb78c3d1981c6359404b5ddbdfb15910c881a317e1bd338d0703eab164458f006b5850d328ac448b1591940bbe06646c1c3dbdd68a7f5d1d9e035de483af172f1dfea3442f487aa3fa6ad9de25180f771303ba48be41ae02b4517b38db6691c59ca7ce0efa114766102c9da3fe9354cad16525cf1c169af65032e2c9a4b5bc8dc5cea89327f3d65a6f491cf7b9016615bf0ddad08b90fcd33ea6673c1127ea92a5ad39533b84ede54811c7cb33ad216e1748fe98bea0010454b56d5e1540a8fdd57bd47c7d8573d9d75f86902be46a7925e3dc43b88e660e39b18c8e2eb439a4611ef1de111193cc7d2ab1358db7f3e05dd4d1dd1ccf2b166968fdcb5c18cca632f4d4998d4cfa37974a202265e71fbfcbd89729b9760dd036b2d594297f62b25b9f87360f6d6ab39372a5d0c5cf78aaedda7f090d055397152aa3943d374585e8bbbd9c06dc99df8d8b0eeb272c96d535997537317fd3587ee2f154fcb4a1061da9cbe782fa16acb2c2ed771849fd9414ceb99e2e94cc8a489e474fe11fd62fd65c5d55a36eb41bc90600b5e4b0dc3529705a7343f1ed08e52f683588f0153897538b32f38de09372603337e8722146db84700811669028a07ffbcee8408956ce92947cbdcd06cd347b1f3c7f1f23911593352178cd56a998e798dc06018981989865229f597f2042a7335f7441e59308362b91e7a2a1a159c9d27195273b31c36188fa9d64ad067578aa0cb55069aefb837c7de2babdbc56aedca62d51874d6e5929c901ed592cf56347c26f7976a0b90785793c7e42792d272956ae8d38d26e1d91d7b5042668be86fd21bac73d6f0422a6c49ffbb4b95fcadc0a0779e0bf13afe5afd9c1f0afd0f829477b79b7951bc1ec704c5ae185bee863e21b23f935842d53a2a70429dfdaa54f20435069461524c474f9e6c33ceaf717334af18008a3ec8f02d24b7174028570ca3d197713d70bdf671f6dcb6cb2552bbdd1c0c73e06febc042530bf7594d49253596db2ece2c6bba5d362787edc086dec83461bfd2b1af5c285235eddbdd0c8fb95011393ecc91d4b82c9a53b4823e756bc3ed9c97762f51758ef4643d760df66d5220ef2a8f16d0d584aa13b47f9ce5e3c95bfc8b527c4af0840547a96e1bab11c026da16b29b571b3c779b405b64c55fb25921d240815a7c92389e4ce0b400d0394244d275a2883fc9cad184a76bc4b67dafb9dd5f296c1fafdd0d52795c90b2359216bd8a3e7b130d2c6883f4b22c61a7edb043b04f1216b98b229bdee9de584f9c3cf51a18452ec346101275e18e9546dd7b1897ff0e56d27052dbc96e1089edee91097a616bd683320a61c3fcd99131be1ce1b1ad10379500751ea1907c550f3c1df249c5c1edb032aa0be98954b435de075e9daff4c3df0f41282e0196d679fa990cb85ea1946e6d0e212ea1f437cce8b1001b5f53545fcc2d862b11bdfdfc23532bd76650d737e7fb49224b7e56b92d79ac74e5b61ea9b3ccc4b0604c6988324320374bd5269f1739f30c4c1e736150b07a9158b152e45588b66ce13d7f33614dc55d18211ad8ba63caad39fee4c15548ef3d40162d6f5b3cd3aa9afeda0a2e20ba02f83c414e9c5e92a863c0eee"},
{"000000000000000000000000000000000000000000000000000000000000060a", "01d2f32340427431391d16fabe7b216613d15d80681b62e9583e17017fdb641cb65170856f7448fc274902aeec53d897351cdd2f63ef74a588eac7df5d7bdb1eed33294d8cdf9d8bfcb28b5ee0534a07ec5cc10c03509defdcfe91c7f712d062511b03d228005d65f2173b5f718c4d2dad222fab662bf8f8b2f6d2de109f19b03f9ba70fcebfe3e257de5b5ba2ae85951e382c216f326211cbacdbfe8cc4024be6e39715ec3e368a029e2ddca4e2ca21891592041f956b9b415c5fba8a1915379a8e697b09b7f71302d4d426850ad5352d3e0ffa048387841826e7c6857a38db171572b2f7b6bc158033ee7499e27925c642d403bcd01512425287d303c43f35efc70112da7b91fb6c5506b4acdf0d7f2b0650346a801b280df734410f67d424a583d4efa53f0c8054496d59d613e16950ce9c2ed5fb41625aa25d1f10aea44d57a310e3bd165b333fcd05ff4cfa1a6004062daf12158bbbbae81178efd228997e7cfcd1ba04fc199894475cbdbc55330c482acd6a3b3afbad680d3ef334cc9354919c5af0e977e6d6797ad519e5512d62c72cd398d54ce381652cec4e999da727d3002406c17f4810cd21b7846e64d948d12a5f5a945e4c0408cd0fcf78f00d7f8523d25812fe7034cb1253f3c1098aa4d1c75ff18b110522270bac8e99bcdb365115126f4c0251abfca9d82913a83b2e6eda40503bf007053be4754a85a8f5fbb461fc43d1da45458c6de66f14bd8c1c6645d5b9342d079ddd58ee22189993dff62c94c9e5c56559cbddb7053489ae3f1a55c47340092f616db5fe5349eb3ed6da061bf8f016a02d95291d127b16475487d2bd7ed1d4422428a686bff8f7a9c73872cfdd604f3a92e0efab4f217d6a6339131f6c981515124083e57eb1e1213765564da43eb7b59f0c181dad1ad7954e285fe69c845f9aade7c9199e6a894a0201f8b90a1375ebeda6e68c233f8b163274d512751b65b3919309ba08f986c274de519e5d1c4cbc3a4d06535660c79deefb1810a2da09bac6f911ec1cd37145e3f2cf43d4a6eb9e81e5f904537fbe3dc01c90320b69bcfb5dc3dc1a970225107a416cd9ed0b51a1bc2394aecfbdccd5d9a2c6773b9bd8d241eea492157911464e093a0a77e76ac5746195e606bd58c2bb66d4260c133035d6490d905a842fa95f9f8a1c705a80cd0568245aa790bb0fea59b14fe210a37c5ff175b207448f961807231bf3568a668e5ab8242e71945a891707a696f660922bbeaf1b60bb640732dccecdc8eb3d1a5979e6935540213418c9ea545181c33ea91ec7f70a5c49801547285cf80e91f64ca2fea9ef607faf4365e49ff8a3a8552b7913b847ba52feba644af94b6c21e19ee9250a7927efb755aa243c2a92c9afbd649131a2d4f8bf702107f28fd3d56234bfda6d3eb7e52403e43c54411e0aabe1d111fb845a102b1f96fb5611250eac40028bece3911575d2e34076ad8e272db28405b3bf0dc686fb631251758bd2c9e33a4ef275876626c93d9a2deeeea1e1c785211b63fabf56b3de34dc0d4e7f4f7db40b23aed6f1710d408f407269777a071e737cffdf8f56b78f0fd33f17b0576d45301c82d20ff961fd4459071d4d81e12dca37b5ce2eaf7ad6915f3572ff28d946b6cfbc58766b4b6d7a33feb884e707e5cd61efe796ed9ea021e54f45dfeca3b8954bba3116cf9a92ff2a7fffa2767d9773ae3e7cc8ffe2a60d063ee9ae0c9fbb934d55d6cd4d2ab33d387d9a181769e9215d9892ef4109d2a5a524b3f54ae8ff77561983b9f1291c37d8fdc5b53636de572185001d59c11b242e16e4ac29d37a1f13e74a3bd5062ae31e8f4f1b8568ddf528ebb5d375d368b1e9d535ba2e3aeac93563bf40e3995f3f710cf8895369f17a5a5d14bb6a"},
{"0000000000000000000000000000000000000000000000000000000000000e67", "006104bfc0d7d12fed0162241b28c22d415cb1cfce0298bccfdba64f6dd1ea60337cc2e4d07a2a2608811c6349d7c3fa24f5de5a3741e4673a334a157bc7fa446497645065ba7bf319e6084ab828ca589bf6e27505865af28b79e631d46d08bc72f7dee29844d9c4012ee92dbb696f5d137d70b668bff7a3b6a0021cbcf10a915468d66e6b379f96321d2d7e5d4a3e9457c03e0ed89d84b09ee9e9902e31d885a573c961d61ca35004f87f677c1c0bc5f488d05331602f80d9b57d42e906ab11d9be0fdc48b8f1968a87ebea39d083394e481675f2a85e35a76fdd1de94005578d7f693a1fd931472a4cda98ea6f19c532d61a6ecba7a5b7377b48ac08c9c485b7d187e37809d46f80d0f9d17b21fc57782e7716962acf2b6d67f246bfcfdf0aae04efd86fb019cd9e44c9133548ef9251a62eb596009bfeff55e01fa46402d88b00789d0173d96c73fed1aaf737ddbc00b9d2a4b0c56406c5c7371a98ef1fe39ba07d0f511c3457dfa65c99893954b45c89c76d493dbc106dfe1ee42ce1dd9f15c79636c50bfe76a99f1b909993451f39549b5e885c95e7ed75e570377be338d25bf783010541dc774b2b7baac350cc925bc2885f926dc6293e9dba3d86d3a8a1ff5a76c75d60892aedc1bd07e907fb5c3eec0af4e501bac201fa4364355e1daf0bef135d45bc07518f3b92dbe4abed79bb7de16eff7ffd05cd3cbbb283b05220f970d1cda05ea280dc3b684f0def76a6f31c62f39e6e340d2f7a74ca45621f32f41c791c8d5a13bce4a12dc77d7f40d502613454282b2a7b7c717ce58ad96444e327f1be4fd68e2915f30f069fa966b8629621a0ea11abd773a0589476ddefbc15d35bb95e6929f3af87317065100c4ce68327c09910467371ee469069fbfd773223ebd0c2a8a2b7c2c11893dc9cd8d091f0e476b4bd443021595daa9cd40b0283a1da707171afc89bf90a414d19b7a116fecac676aad68670af80f5b539eacbb3e14656edab7aed7910e572e131dba74ded3f34256be26e79ab133620c543cd346925515c433c4586b0e65d98df20607c8fc1104d709b7e9c8125e925a574aeae31b271245e4f6c7d311d9cdc318609960e595d15fd9eb75e357d03be1440d9d42f4994094dd387b02d458e56cd8c3eadf638360a1e2d53321d268eab48c07814ab4acf7dbfee02d774daf574feb9c0bce41c63cfe532eb4c7ece86657034e580bb9b47ebf6d9c528e5e0268ef3553bfc25283d6c9916cddf7129f341006f412f50759cea1f3d4bc67d8d5ba8a2e69f863f5add092a5cecbcc6d60bd61b8980affb1f99cbc145b0c19c98a79d8c7fc45cc9aef7dd2ce9bfba74d8dd6dccf18f26409e883317291cc6e7eae04fa97341f1cd640dedef071e10671e32746226230cd132f7a5f612634529c75b7b938d0566f3f07305d276f2e859100851c42ae052fefb4725d679933bb2e36baa6aa3cc7d1f6626c88f19cf7d13b49d05f686b8f37b82b44cb5bd315e0cb4fbb4bb18ecb40e0a0a8993ceaf329fd72e6ff9339cd77f870728a418d00340d554d7015a1022dbe49bd567b4473305afd1d0ac781199a7e58f2041bd9f1184fb60480d34924e1a793625d7ca514fea1f015a391e5dda8017155b7c80a94b9ba6863523682d2873bbc09e6cb0056ec4d7370db33ed7366511fead2d3b2a825990e922c1cd3180eba683eead129e264a09d92845edb40a2bb5db26a624b12f84e4d60d3ad954c1daefb622ab2d61ab41644e36bffc14a497a8d99bc14fc77072250b0d81157f95aeb0d52c133bf7a87fca50c138f61e37eecc99dcd121bc98b1d843624f90778e7a9ed64c18ca1a88450e5c76a82751948a291caeb301585e78263ddfed46da579fa16574a37776c8ad31d6dc2a66"},
{"0000000000000000000000000000000000000000000000000000000000001a1e", "02c15514adacf021e7dc629d773d4eb9b9d4fb7e2f0bd2407da31e4923d48236140e69808da546b6e5ed0cc7515e51102a70df67f67cdc3721130fe67db65e300bcae2168cad7ecd25447c0949243d3eca0aec9b079344297cc4dcef96a1f1dc14e7a4059990f4e583092ad5c6d947c1c09a582435065637e1296eec816d12102b2758094c0665a0b469d176335e4639b368d420611dbf82d13dd5e1b1624b7868c5060459d8cdf80619f75625f4561df9a3e7765dc388a2503bbcf3e01d962c8042f9de6bd39a6538ece99fe6dc399bfa390e8c8d9cce6452ebe7ba1945b0756ee39e4f1e636f5605cea4f4f2ba91f0a2f748827ad725d5177bfb5127b53c7827d385a12d4432a0a8a244bd62d8ee88d028009364b3d94fcd17e6f3f112b15c757a6d9e627937afffbeca1284d3f891a703cd57907289853bd917494d324df71a6e3b2518473233b998e232fab930850783928ff2946959551d8174fbc01ef357c05acdd40a564fe99b4b87fd79a0f247b0bffd1da7a635bb6720f9947f9b26866da04a96fa00b956d6255056d01627cbd41f88d7636b757e72e530c1f4855720d7b6370f2e89749bc85394b74ef46d446aae767aa298e0304c989eea99608f3f8802666778bbbf0f403edf9b8c1ddff3b0abdb2f914b4ff3157ebb9244c83910d2ff26e3f7bd2b4a41278da2e35914f3339eb60eb673d3094e114395921ec7f999b37e1132719b6bec3c4c20364b2635f8d68160f2b9c462482c7d569303df78c80b9c0bd14049a15985ea3aa5a6578a3b5c6b9f73b214f48ad797171f492bad5211b164a5561fdbdf0d8211dc5722a48b4de16de122ffc1f0fa5657489889862c63a3b82b4c7af7f30097eeaffd955659eefa7d2e1447b37fbf659367815b92dd28aa31cd569810dd7f429f2a486ddae7d5c131a667b2c5fca7bd757fa6a802dc0a288dc3a7d92391f496186a32132bc879c0c4042f87432b1cdbe569da105d325097d821c193e3b106bea48a55164bd7d2de0c08bf7d3f2772961cf3b31c5f07a61de7c1d3738cb3eab256992e568cbaa24103d892044f61f23dd296c23936c873c51e383d1b82144dc3e97e8b9f3b916f916590b29c93c9bcde6db01a557312778f562d5dd16877d1f6355a30b29c0ec52cd2ae11171e93db29f57896b6567d6ab74d7ceea804dfd8a0910a5ee2df875427853c2da123307bb0dd59181dfedd9783e4e85a86365b58260a9fb67d644b08dad713428f6306a0ed4973c9f9b9b6658d1fd4693b5da341dd5194d5942ea677b93be4d9c73c548e38092341a411ce321f986e553ff6745dc2464816b8422c935c0f40633a5771d7b3edddc1648e2b453308200d79af05b952d17aa994a1d1d8fbbdf68ded95051324de11b9ff90bd2e9af81625a8d1cd5285bd1e6f0e039a5d2e5b43aa49197ea123b3481c60fa99d43185098683ee4620e871fd1b9118c6998eb4bb9d1dea490b8222218f5792fce4f516a849c15a6ed5c5bc564d122f34c37c22439b4d450223a340729b42c7fe162a08fc2af542dbe8f3492330c8b2f107de7d2ddf172a0deb5df3a94a081968b5b5a321f3a3a5ac94d46dcb12e6f7b889a7dcf96f1e48562be67dca745f5f1d8f2c36fca37ee8cea56414933c655e91a595e3940cee08215963559728f4dbbd32900d1fc23a62fa75dfff13db343b85c73a6aba40d7d3ecc9a44e434d179bfa2636a7cb3b8adfdca3f76a96d3f3baaaf1aaba183c3deec644305f6f7d1fdcc798e36fb2d675aa376a4f12c6aa342214dc1bb979698e71e9a6b67a709e34822f6454c866dcfa7b60f91833346643c2dd12bf0b0f1575133e6905a5e0b28773c9697a47cea5c7d7c1e62bf283b4f6243523e887b566e56a1372f297bb3e33"},
{"00000000000000000000000000000000000000000000000000000000000022de", "007f388bed6b91756ea3e0866716ef6e9485fae6160195c7cda5c1e43f96ee359e105bcf4e8c293690420939124f04a0196363910421187811575929db40500b0bfdd1e8964aa334b801e3339a336d585a30852f1dc294a2d3d36f9ecc747458f3d41b4572415496df2a9fb1f882156cdabf9f65e681f38019865d6d47482277e24c9b8973eb34a41254faae4c5e2caa9dde5925ec118f3d8fa767ae00f434645957154367afe72000c59c79182c8faddd24424b9ebbb09ccd651b00540c96b9c7eec648a28a1d72c2e575d0f2250078511a011598db8e0788edf0ddc15ae24b62f63d6f93f71a2743a3c43ece55471a9802a76f31561a6f365c3647029bfa736395883afc0632bc25d4a8661b25d5aa0310f3c3fd3a183e75d359d6de3e5910b5dfbb74b7660af906917dc42b12e3e484aae1dbd20eaee037ef301572b7fc24d85b4aff9c82b27dcd421cee1639230d0188fec59f0dd4c0ced69c1ad07abd23692b1bd30735af942df597dcf6f403a36371bc416cf3e29a58570f586b05c357dc49515689788ad9581b8887dd913a41dc35e1ac9c9f9f4ea534eb6b36cc8af0299b6d3905750425da0366bdc59a7824477d7946b6f35c4ec90b8e61790fa74a4fa92396ea856661027828d40abb11dbe36bba516fe8ec8913106677285a4790d8034d1d1bf9fd87990889ddffc369b954a3d1c172be7e1812226c2b100cbe82c42bf4423456b6cb2bac3b4828135cb54f7a933a01f7f4a2057ad92136ba8e19fec313b412d43c089a71f06fd1625329b78d49ac92c59e4080932ddb1645910fd874dfb1f358e214231f62041acc41fd2c4e7b7127b3042459e1457f6b307fce9825aa4d2b942277f52665f2a77dd107b4f16cb3280f20c7551ff6cd855f97a6144131f69bab5648fb4b81261eefbf629094e8bcc4e36077f46d51a647da51fc01dca9a9ac12e2f7e2e2b1c9229dae099e95370177143d3b38ab661f19758494a01b32f0c27155b45a872a867dc50f9d76473695e9e2c4f9357f5ba6bb6c455d985f4e2c21486fde6576c6a8ceda6e010a7dc2b504130f429ac33376781ee4af5bbe8d768005bc4cb5092b15c4f296a8bd8c54a298eecd790a5161755a8605cc46bf890b8ff93d508501842b78c7261e5deeb1096891c528a300e57bf2f0aa9e8af2623cdf16bba20427704120484b6af8be26e4983d2685c783ce85d0174f84598719c6beefcc3603a94d4aa62750725df50671d7f9903ec255f779643ebd2fd8122fae3319e61928dcdaa44880d6a483140de63d2d7d7dc9dd449e0ee00d908e0f2164fc054198641e8fb0d74279c9b4117884b9335028a9f50c7223d3c03675ecf73329e52603f77f20cffba99356e51a365b75825f7db56d77542784f3c2663c493a2e564d73f753e9d6ebb0c2f2027a2330a7117c67a20507474fc47282a02cb572de17bbc7a335959316f74a05e3687cfb5227bc5b1b7f084f50902760e77740d420df9a495521c09b911e5f199a8343918b8386fc74f22552a76524a22c8c70ff06084e7fefe9b3ab98e004fadf35eb5f60483f287851712d90ebdd6b512877170d3b7fb34f16813917ae3b5ed54ede6081bdd7cc646fb336658121fd8fbafc52959b48d13375dfa4ce8616c157533a05ee1dc1120f215c348b54357d68adb4da7f5f48d55c005b3e7a23d05746e44d968f7601d4dbdff702861030d6e3a4140e6e1a29978be541f713f8e2cc9aa1ac32fecc941ee4aa4c41bc7f91ea5328ff87cbf35a8de17d1d3d1ad6d4384b0df52d10b3984d62e1678e86dd150ee425490bc727ee7107fda0f5d2433ab1c5d407be9d123fad5c201355601d926d3923787be86a4aa5be0b8d5750171ad658f8e97798b5dcaed46345a9af70c441"},
};
/* TODO: Regenerate miner tests after launch
// NOTE: These tests rely on CreateNewBlock doing its own self-validation!
BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
{
@@ -144,6 +143,10 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
CMutableTransaction tx,tx2;
CScript script;
uint256 hash;
TestMemPoolEntryHelper entry;
entry.nFee = 11;
entry.dPriority = 111.0;
entry.nHeight = 11;
LOCK(cs_main);
fCheckpointsEnabled = false;
@@ -166,6 +169,7 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
// will be closer to the tip, and blocks will appear slower.
pblock->nTime = chainActive.Tip()->GetMedianTimePast()+6*Params().GetConsensus().nPowTargetSpacing;
CMutableTransaction txCoinbase(pblock->vtx[0]);
txCoinbase.nVersion = 1;
txCoinbase.vin[0].scriptSig = CScript() << (chainActive.Height()+1) << OP_0;
txCoinbase.vout[0].scriptPubKey = CScript();
pblock->vtx[0] = CTransaction(txCoinbase);
@@ -175,7 +179,7 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
pblock->nNonce = uint256S(blockinfo[i].nonce_hex);
pblock->nSolution = ParseHex(blockinfo[i].solution_hex);
*//*
/*
{
arith_uint256 try_nonce(0);
unsigned int n = Params().EquihashN();
@@ -254,7 +258,7 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
std::cout << "\"}," << std::endl;
}
*//*
*/
CValidationState state;
BOOST_CHECK(ProcessNewBlock(state, NULL, pblock, true, NULL));
@@ -281,7 +285,8 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
{
tx.vout[0].nValue -= 10;
hash = tx.GetHash();
mempool.addUnchecked(hash, CTxMemPoolEntry(tx, 11, GetTime(), 111.0, 11));
bool spendsCoinbase = (i == 0) ? true : false; // only first tx spends coinbase
mempool.addUnchecked(hash, entry.Time(GetTime()).SpendsCoinbase(spendsCoinbase).FromTx(tx));
tx.vin[0].prevout.hash = hash;
}
BOOST_CHECK(pblocktemplate = CreateNewBlock(scriptPubKey));
@@ -301,7 +306,8 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
{
tx.vout[0].nValue -= 350;
hash = tx.GetHash();
mempool.addUnchecked(hash, CTxMemPoolEntry(tx, 11, GetTime(), 111.0, 11));
bool spendsCoinbase = (i == 0) ? true : false; // only first tx spends coinbase
mempool.addUnchecked(hash, entry.Time(GetTime()).SpendsCoinbase(spendsCoinbase).FromTx(tx));
tx.vin[0].prevout.hash = hash;
}
BOOST_CHECK(pblocktemplate = CreateNewBlock(scriptPubKey));
@@ -310,7 +316,7 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
// orphan in mempool
hash = tx.GetHash();
mempool.addUnchecked(hash, CTxMemPoolEntry(tx, 11, GetTime(), 111.0, 11));
mempool.addUnchecked(hash, entry.Time(GetTime()).FromTx(tx));
BOOST_CHECK(pblocktemplate = CreateNewBlock(scriptPubKey));
delete pblocktemplate;
mempool.clear();
@@ -320,7 +326,7 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
tx.vin[0].prevout.hash = txFirst[1]->GetHash();
tx.vout[0].nValue = 39000LL;
hash = tx.GetHash();
mempool.addUnchecked(hash, CTxMemPoolEntry(tx, 11, GetTime(), 111.0, 11));
mempool.addUnchecked(hash, entry.Time(GetTime()).SpendsCoinbase(true).FromTx(tx));
tx.vin[0].prevout.hash = hash;
tx.vin.resize(2);
tx.vin[1].scriptSig = CScript() << OP_1;
@@ -328,7 +334,7 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
tx.vin[1].prevout.n = 0;
tx.vout[0].nValue = 49000LL;
hash = tx.GetHash();
mempool.addUnchecked(hash, CTxMemPoolEntry(tx, 11, GetTime(), 111.0, 11));
mempool.addUnchecked(hash, entry.Time(GetTime()).SpendsCoinbase(true).FromTx(tx));
BOOST_CHECK(pblocktemplate = CreateNewBlock(scriptPubKey));
delete pblocktemplate;
mempool.clear();
@@ -339,7 +345,7 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
tx.vin[0].scriptSig = CScript() << OP_0 << OP_1;
tx.vout[0].nValue = 0;
hash = tx.GetHash();
mempool.addUnchecked(hash, CTxMemPoolEntry(tx, 11, GetTime(), 111.0, 11));
mempool.addUnchecked(hash, entry.Time(GetTime()).SpendsCoinbase(false).FromTx(tx));
BOOST_CHECK(pblocktemplate = CreateNewBlock(scriptPubKey));
delete pblocktemplate;
mempool.clear();
@@ -352,12 +358,12 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
script = CScript() << OP_0;
tx.vout[0].scriptPubKey = GetScriptForDestination(CScriptID(script));
hash = tx.GetHash();
mempool.addUnchecked(hash, CTxMemPoolEntry(tx, 11, GetTime(), 111.0, 11));
mempool.addUnchecked(hash, entry.Time(GetTime()).SpendsCoinbase(true).FromTx(tx));
tx.vin[0].prevout.hash = hash;
tx.vin[0].scriptSig = CScript() << (std::vector<unsigned char>)script;
tx.vout[0].nValue -= 10000;
hash = tx.GetHash();
mempool.addUnchecked(hash, CTxMemPoolEntry(tx, 11, GetTime(), 111.0, 11));
mempool.addUnchecked(hash, entry.Time(GetTime()).SpendsCoinbase(false).FromTx(tx));
BOOST_CHECK(pblocktemplate = CreateNewBlock(scriptPubKey));
delete pblocktemplate;
mempool.clear();
@@ -368,10 +374,10 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
tx.vout[0].nValue = 49000LL;
tx.vout[0].scriptPubKey = CScript() << OP_1;
hash = tx.GetHash();
mempool.addUnchecked(hash, CTxMemPoolEntry(tx, 11, GetTime(), 111.0, 11));
mempool.addUnchecked(hash, entry.Time(GetTime()).SpendsCoinbase(true).FromTx(tx));
tx.vout[0].scriptPubKey = CScript() << OP_2;
hash = tx.GetHash();
mempool.addUnchecked(hash, CTxMemPoolEntry(tx, 11, GetTime(), 111.0, 11));
mempool.addUnchecked(hash, entry.Time(GetTime()).SpendsCoinbase(true).FromTx(tx));
BOOST_CHECK(pblocktemplate = CreateNewBlock(scriptPubKey));
delete pblocktemplate;
mempool.clear();
@@ -397,7 +403,7 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
tx.vout[0].scriptPubKey = CScript() << OP_1;
tx.nLockTime = chainActive.Tip()->nHeight+1;
hash = tx.GetHash();
mempool.addUnchecked(hash, CTxMemPoolEntry(tx, 11, GetTime(), 111.0, 11));
mempool.addUnchecked(hash, entry.Time(GetTime()).SpendsCoinbase(true).FromTx(tx));
BOOST_CHECK(!CheckFinalTx(tx, LOCKTIME_MEDIAN_TIME_PAST));
// time locked
@@ -411,12 +417,12 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
tx2.vout[0].scriptPubKey = CScript() << OP_1;
tx2.nLockTime = chainActive.Tip()->GetMedianTimePast()+1;
hash = tx2.GetHash();
mempool.addUnchecked(hash, CTxMemPoolEntry(tx2, 11, GetTime(), 111.0, 11));
mempool.addUnchecked(hash, entry.Time(GetTime()).SpendsCoinbase(true).FromTx(tx2));
BOOST_CHECK(!CheckFinalTx(tx2, LOCKTIME_MEDIAN_TIME_PAST));
BOOST_CHECK(pblocktemplate = CreateNewBlock(scriptPubKey));
// Neither tx should have make it into the template.
// Neither tx should have made it into the template.
BOOST_CHECK_EQUAL(pblocktemplate->block.vtx.size(), 1);
delete pblocktemplate;
@@ -443,6 +449,5 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
fCheckpointsEnabled = true;
fCoinbaseEnforcedProtectionEnabled = true;
}
*/
BOOST_AUTO_TEST_SUITE_END()
+21 -16
View File
@@ -2,6 +2,7 @@
// Distributed under the MIT software license, see the accompanying
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
#include "consensus/upgrades.h"
#include "key.h"
#include "keystore.h"
#include "main.h"
@@ -26,9 +27,9 @@ typedef vector<unsigned char> valtype;
BOOST_FIXTURE_TEST_SUITE(multisig_tests, BasicTestingSetup)
CScript
sign_multisig(CScript scriptPubKey, vector<CKey> keys, CTransaction transaction, int whichIn)
sign_multisig(CScript scriptPubKey, vector<CKey> keys, CTransaction transaction, int whichIn, uint32_t consensusBranchId)
{
uint256 hash = SignatureHash(scriptPubKey, transaction, whichIn, SIGHASH_ALL);
uint256 hash = SignatureHash(scriptPubKey, transaction, whichIn, SIGHASH_ALL, 0, consensusBranchId);
CScript result;
result << OP_0; // CHECKMULTISIG bug workaround
@@ -44,10 +45,12 @@ sign_multisig(CScript scriptPubKey, vector<CKey> keys, CTransaction transaction,
BOOST_AUTO_TEST_CASE(multisig_verify)
{
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
unsigned int flags = SCRIPT_VERIFY_P2SH | SCRIPT_VERIFY_STRICTENC;
ScriptError err;
CKey key[4];
CAmount amount = 0;
for (int i = 0; i < 4; i++)
key[i].MakeNewKey(true);
@@ -82,21 +85,21 @@ BOOST_AUTO_TEST_CASE(multisig_verify)
// Test a AND b:
keys.assign(1,key[0]);
keys.push_back(key[1]);
s = sign_multisig(a_and_b, keys, txTo[0], 0);
BOOST_CHECK(VerifyScript(s, a_and_b, flags, MutableTransactionSignatureChecker(&txTo[0], 0), &err));
s = sign_multisig(a_and_b, keys, txTo[0], 0, consensusBranchId);
BOOST_CHECK(VerifyScript(s, a_and_b, flags, MutableTransactionSignatureChecker(&txTo[0], 0, amount), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
for (int i = 0; i < 4; i++)
{
keys.assign(1,key[i]);
s = sign_multisig(a_and_b, keys, txTo[0], 0);
BOOST_CHECK_MESSAGE(!VerifyScript(s, a_and_b, flags, MutableTransactionSignatureChecker(&txTo[0], 0), &err), strprintf("a&b 1: %d", i));
s = sign_multisig(a_and_b, keys, txTo[0], 0, consensusBranchId);
BOOST_CHECK_MESSAGE(!VerifyScript(s, a_and_b, flags, MutableTransactionSignatureChecker(&txTo[0], 0, amount), consensusBranchId, &err), strprintf("a&b 1: %d", i));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_INVALID_STACK_OPERATION, ScriptErrorString(err));
keys.assign(1,key[1]);
keys.push_back(key[i]);
s = sign_multisig(a_and_b, keys, txTo[0], 0);
BOOST_CHECK_MESSAGE(!VerifyScript(s, a_and_b, flags, MutableTransactionSignatureChecker(&txTo[0], 0), &err), strprintf("a&b 2: %d", i));
s = sign_multisig(a_and_b, keys, txTo[0], 0, consensusBranchId);
BOOST_CHECK_MESSAGE(!VerifyScript(s, a_and_b, flags, MutableTransactionSignatureChecker(&txTo[0], 0, amount), consensusBranchId, &err), strprintf("a&b 2: %d", i));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_EVAL_FALSE, ScriptErrorString(err));
}
@@ -104,21 +107,21 @@ BOOST_AUTO_TEST_CASE(multisig_verify)
for (int i = 0; i < 4; i++)
{
keys.assign(1,key[i]);
s = sign_multisig(a_or_b, keys, txTo[1], 0);
s = sign_multisig(a_or_b, keys, txTo[1], 0, consensusBranchId);
if (i == 0 || i == 1)
{
BOOST_CHECK_MESSAGE(VerifyScript(s, a_or_b, flags, MutableTransactionSignatureChecker(&txTo[1], 0), &err), strprintf("a|b: %d", i));
BOOST_CHECK_MESSAGE(VerifyScript(s, a_or_b, flags, MutableTransactionSignatureChecker(&txTo[1], 0, amount), consensusBranchId, &err), strprintf("a|b: %d", i));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
}
else
{
BOOST_CHECK_MESSAGE(!VerifyScript(s, a_or_b, flags, MutableTransactionSignatureChecker(&txTo[1], 0), &err), strprintf("a|b: %d", i));
BOOST_CHECK_MESSAGE(!VerifyScript(s, a_or_b, flags, MutableTransactionSignatureChecker(&txTo[1], 0, amount), consensusBranchId, &err), strprintf("a|b: %d", i));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_EVAL_FALSE, ScriptErrorString(err));
}
}
s.clear();
s << OP_0 << OP_1;
BOOST_CHECK(!VerifyScript(s, a_or_b, flags, MutableTransactionSignatureChecker(&txTo[1], 0), &err));
BOOST_CHECK(!VerifyScript(s, a_or_b, flags, MutableTransactionSignatureChecker(&txTo[1], 0, amount), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_SIG_DER, ScriptErrorString(err));
@@ -127,15 +130,15 @@ BOOST_AUTO_TEST_CASE(multisig_verify)
{
keys.assign(1,key[i]);
keys.push_back(key[j]);
s = sign_multisig(escrow, keys, txTo[2], 0);
s = sign_multisig(escrow, keys, txTo[2], 0, consensusBranchId);
if (i < j && i < 3 && j < 3)
{
BOOST_CHECK_MESSAGE(VerifyScript(s, escrow, flags, MutableTransactionSignatureChecker(&txTo[2], 0), &err), strprintf("escrow 1: %d %d", i, j));
BOOST_CHECK_MESSAGE(VerifyScript(s, escrow, flags, MutableTransactionSignatureChecker(&txTo[2], 0, amount), consensusBranchId, &err), strprintf("escrow 1: %d %d", i, j));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
}
else
{
BOOST_CHECK_MESSAGE(!VerifyScript(s, escrow, flags, MutableTransactionSignatureChecker(&txTo[2], 0), &err), strprintf("escrow 2: %d %d", i, j));
BOOST_CHECK_MESSAGE(!VerifyScript(s, escrow, flags, MutableTransactionSignatureChecker(&txTo[2], 0, amount), consensusBranchId, &err), strprintf("escrow 2: %d %d", i, j));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_EVAL_FALSE, ScriptErrorString(err));
}
}
@@ -276,6 +279,8 @@ BOOST_AUTO_TEST_CASE(multisig_Solver1)
BOOST_AUTO_TEST_CASE(multisig_Sign)
{
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
// Test SignSignature() (and therefore the version of Solver() that signs transactions)
CBasicKeyStore keystore;
CKey key[4];
@@ -312,7 +317,7 @@ BOOST_AUTO_TEST_CASE(multisig_Sign)
for (int i = 0; i < 3; i++)
{
BOOST_CHECK_MESSAGE(SignSignature(keystore, txFrom, txTo[i], 0), strprintf("SignSignature %d", i));
BOOST_CHECK_MESSAGE(SignSignature(keystore, txFrom, txTo[i], 0, SIGHASH_ALL, consensusBranchId), strprintf("SignSignature %d", i));
}
}
+5 -5
View File
@@ -16,6 +16,7 @@ BOOST_FIXTURE_TEST_SUITE(policyestimator_tests, BasicTestingSetup)
BOOST_AUTO_TEST_CASE(BlockPolicyEstimates)
{
CTxMemPool mpool(CFeeRate(1000));
TestMemPoolEntryHelper entry;
CAmount basefee(2000);
double basepri = 1e6;
CAmount deltaFee(100);
@@ -63,7 +64,7 @@ BOOST_AUTO_TEST_CASE(BlockPolicyEstimates)
for (int k = 0; k < 5; k++) { // add 4 fee txs for every priority tx
tx.vin[0].prevout.n = 10000*blocknum+100*j+k; // make transaction unique
uint256 hash = tx.GetHash();
mpool.addUnchecked(hash, CTxMemPoolEntry(tx, feeV[k/4][j], GetTime(), priV[k/4][j], blocknum, mpool.HasNoInputsOf(tx)));
mpool.addUnchecked(hash, entry.Fee(feeV[k/4][j]).Time(GetTime()).Priority(priV[k/4][j]).Height(blocknum).FromTx(tx, &mpool));
txHashes[j].push_back(hash);
}
}
@@ -132,7 +133,7 @@ BOOST_AUTO_TEST_CASE(BlockPolicyEstimates)
for (int k = 0; k < 5; k++) { // add 4 fee txs for every priority tx
tx.vin[0].prevout.n = 10000*blocknum+100*j+k;
uint256 hash = tx.GetHash();
mpool.addUnchecked(hash, CTxMemPoolEntry(tx, feeV[k/4][j], GetTime(), priV[k/4][j], blocknum, mpool.HasNoInputsOf(tx)));
mpool.addUnchecked(hash, entry.Fee(feeV[k/4][j]).Time(GetTime()).Priority(priV[k/4][j]).Height(blocknum).FromTx(tx, &mpool));
txHashes[j].push_back(hash);
}
}
@@ -168,7 +169,7 @@ BOOST_AUTO_TEST_CASE(BlockPolicyEstimates)
for (int k = 0; k < 5; k++) { // add 4 fee txs for every priority tx
tx.vin[0].prevout.n = 10000*blocknum+100*j+k;
uint256 hash = tx.GetHash();
mpool.addUnchecked(hash, CTxMemPoolEntry(tx, feeV[k/4][j], GetTime(), priV[k/4][j], blocknum, mpool.HasNoInputsOf(tx)));
mpool.addUnchecked(hash, entry.Fee(feeV[k/4][j]).Time(GetTime()).Priority(priV[k/4][j]).Height(blocknum).FromTx(tx, &mpool));
CTransaction btx;
if (mpool.lookup(hash, btx))
block.push_back(btx);
@@ -187,9 +188,8 @@ BOOST_AUTO_TEST_CASE(TxConfirmStats_FindBucketIndex)
{
std::vector<double> buckets {0.0, 3.5, 42.0};
TxConfirmStats txcs;
txcs.Initialize(buckets, MAX_BLOCK_CONFIRMS, DEFAULT_DECAY, "Test");
BOOST_CHECK_EQUAL(txcs.FindBucketIndex(-1.0), 0);
BOOST_CHECK_EQUAL(txcs.FindBucketIndex(0.0), 0);
BOOST_CHECK_EQUAL(txcs.FindBucketIndex(1.0), 1);
+6 -10
View File
@@ -42,22 +42,18 @@ BOOST_AUTO_TEST_CASE(reverselock_errors)
BOOST_CHECK(failed);
BOOST_CHECK(!lock.owns_lock());
// Make sure trying to lock a lock after it has been reverse locked fails
failed = false;
bool locked = false;
// Locking the original lock after it has been taken by a reverse lock
// makes no sense. Ensure that the original lock no longer owns the lock
// after giving it to a reverse one.
lock.lock();
BOOST_CHECK(lock.owns_lock());
try {
{
reverse_lock<boost::unique_lock<boost::mutex> > rlock(lock);
lock.lock();
locked = true;
} catch(...) {
failed = true;
BOOST_CHECK(!lock.owns_lock());
}
BOOST_CHECK(locked && failed);
BOOST_CHECK(failed);
BOOST_CHECK(lock.owns_lock());
}
+42 -1
View File
@@ -7,6 +7,7 @@
#include "base58.h"
#include "netbase.h"
#include "utilstrencodings.h"
#include "test/test_bitcoin.h"
@@ -251,7 +252,7 @@ BOOST_AUTO_TEST_CASE(rpc_ban)
BOOST_CHECK(banned_until.get_int64() > now);
BOOST_CHECK(banned_until.get_int64()-now <= 200);
// must throw an exception because 127.0.0.1 is in already banned suubnet range
// must throw an exception because 127.0.0.1 is in already banned subnet range
BOOST_CHECK_THROW(r = CallRPC(string("setban 127.0.0.1 add")), runtime_error);
BOOST_CHECK_NO_THROW(CallRPC(string("setban 127.0.0.0/24 remove")));;
@@ -295,4 +296,44 @@ BOOST_AUTO_TEST_CASE(rpc_ban)
BOOST_CHECK_EQUAL(adr.get_str(), "2001:4d48:ac57:400:cacf:e9ff:fe1d:9c63/ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff");
}
BOOST_AUTO_TEST_CASE(rpc_raw_create_overwinter_v3)
{
SelectParams(CBaseChainParams::REGTEST);
UpdateNetworkUpgradeParameters(Consensus::UPGRADE_OVERWINTER, Consensus::NetworkUpgrade::ALWAYS_ACTIVE);
// Sample regtest address:
// public: tmHU5HLMu3yS8eoNvbrU1NWeJaGf6jxehru
// private: cW1G4SxEm5rui2RQtBcSUZrERTVYPtyZXKbSi5MCwBqzbn5kqwbN
UniValue r;
std::string prevout =
"[{\"txid\":\"b4cc287e58f87cdae59417329f710f3ecd75a4ee1d2872b7248f50977c8493f3\","
"\"vout\":1}]";
r = CallRPC(string("createrawtransaction ") + prevout + " " +
"{\"tmHU5HLMu3yS8eoNvbrU1NWeJaGf6jxehru\":11}");
std::string rawhex = r.get_str();
BOOST_CHECK_NO_THROW(r = CallRPC(string("decoderawtransaction ") + rawhex));
BOOST_CHECK_EQUAL(find_value(r.get_obj(), "overwintered").get_bool(), true);
BOOST_CHECK_EQUAL(find_value(r.get_obj(), "version").get_int(), 3);
BOOST_CHECK_EQUAL(find_value(r.get_obj(), "expiryheight").get_int(), 21);
BOOST_CHECK_EQUAL(
ParseHexToUInt32(find_value(r.get_obj(), "versiongroupid").get_str()),
OVERWINTER_VERSION_GROUP_ID);
// Sanity check we can deserialize the raw hex
// 030000807082c40301f393847c97508f24b772281deea475cd3e0f719f321794e5da7cf8587e28ccb40100000000ffffffff0100ab9041000000001976a914550dc92d3ff8d1f0cb6499fddf2fe43b745330cd88ac000000000000000000
CDataStream ss(ParseHex(rawhex), SER_DISK, PROTOCOL_VERSION);
CTransaction tx;
ss >> tx;
CDataStream ss2(ParseHex(rawhex), SER_DISK, PROTOCOL_VERSION);
CMutableTransaction mtx;
ss2 >> mtx;
BOOST_CHECK_EQUAL(tx.GetHash().GetHex(), CTransaction(mtx).GetHash().GetHex());
// Revert to default
UpdateNetworkUpgradeParameters(Consensus::UPGRADE_OVERWINTER, Consensus::NetworkUpgrade::NO_ACTIVATION_HEIGHT);
}
BOOST_AUTO_TEST_SUITE_END()
File diff suppressed because it is too large Load Diff
-7
View File
@@ -30,14 +30,7 @@ static void microTask(CScheduler& s, boost::mutex& mutex, int& counter, int delt
static void MicroSleep(uint64_t n)
{
#if defined(HAVE_WORKING_BOOST_SLEEP_FOR)
boost::this_thread::sleep_for(boost::chrono::microseconds(n));
#elif defined(HAVE_WORKING_BOOST_SLEEP)
boost::this_thread::sleep(boost::posix_time::microseconds(n));
#else
//should never get here
#error missing boost sleep implementation
#endif
}
BOOST_AUTO_TEST_CASE(manythreads)
+21 -12
View File
@@ -2,6 +2,8 @@
// Distributed under the MIT software license, see the accompanying
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
#include "consensus/upgrades.h"
#include "core_io.h"
#include "key.h"
#include "keystore.h"
#include "main.h"
@@ -31,6 +33,8 @@ Serialize(const CScript& s)
static bool
Verify(const CScript& scriptSig, const CScript& scriptPubKey, bool fStrict, ScriptError& err)
{
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
// Create dummy to/from transactions:
CMutableTransaction txFrom;
txFrom.vout.resize(1);
@@ -44,7 +48,7 @@ Verify(const CScript& scriptSig, const CScript& scriptPubKey, bool fStrict, Scri
txTo.vin[0].scriptSig = scriptSig;
txTo.vout[0].nValue = 1;
return VerifyScript(scriptSig, scriptPubKey, fStrict ? SCRIPT_VERIFY_P2SH : SCRIPT_VERIFY_NONE, MutableTransactionSignatureChecker(&txTo, 0), &err);
return VerifyScript(scriptSig, scriptPubKey, fStrict ? SCRIPT_VERIFY_P2SH : SCRIPT_VERIFY_NONE, MutableTransactionSignatureChecker(&txTo, 0, txFrom.vout[0].nValue), consensusBranchId, &err);
}
@@ -53,6 +57,7 @@ BOOST_FIXTURE_TEST_SUITE(script_P2SH_tests, BasicTestingSetup)
BOOST_AUTO_TEST_CASE(sign)
{
LOCK(cs_main);
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
// Pay-to-script-hash looks like this:
// scriptSig: <sig> <sig...> <serialized_script>
// scriptPubKey: HASH160 <hash> EQUAL
@@ -106,22 +111,24 @@ BOOST_AUTO_TEST_CASE(sign)
}
for (int i = 0; i < 8; i++)
{
BOOST_CHECK_MESSAGE(SignSignature(keystore, txFrom, txTo[i], 0), strprintf("SignSignature %d", i));
BOOST_CHECK_MESSAGE(SignSignature(keystore, txFrom, txTo[i], 0, SIGHASH_ALL, consensusBranchId), strprintf("SignSignature %d", i));
}
// All of the above should be OK, and the txTos have valid signatures
// Check to make sure signature verification fails if we use the wrong ScriptSig:
for (int i = 0; i < 8; i++)
for (int i = 0; i < 8; i++) {
PrecomputedTransactionData txdata(txTo[i]);
for (int j = 0; j < 8; j++)
{
CScript sigSave = txTo[i].vin[0].scriptSig;
txTo[i].vin[0].scriptSig = txTo[j].vin[0].scriptSig;
bool sigOK = CScriptCheck(CCoins(txFrom, 0), txTo[i], 0, SCRIPT_VERIFY_P2SH | SCRIPT_VERIFY_STRICTENC, false)();
bool sigOK = CScriptCheck(CCoins(txFrom, 0), txTo[i], 0, SCRIPT_VERIFY_P2SH | SCRIPT_VERIFY_STRICTENC, false, consensusBranchId, &txdata)();
if (i == j)
BOOST_CHECK_MESSAGE(sigOK, strprintf("VerifySignature %d %d", i, j));
else
BOOST_CHECK_MESSAGE(!sigOK, strprintf("VerifySignature %d %d", i, j));
txTo[i].vin[0].scriptSig = sigSave;
}
}
}
BOOST_AUTO_TEST_CASE(norecurse)
@@ -154,6 +161,7 @@ BOOST_AUTO_TEST_CASE(norecurse)
BOOST_AUTO_TEST_CASE(set)
{
LOCK(cs_main);
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
// Test the CScript::Set* methods
CBasicKeyStore keystore;
CKey key[4];
@@ -203,7 +211,7 @@ BOOST_AUTO_TEST_CASE(set)
}
for (int i = 0; i < 4; i++)
{
BOOST_CHECK_MESSAGE(SignSignature(keystore, txFrom, txTo[i], 0), strprintf("SignSignature %d", i));
BOOST_CHECK_MESSAGE(SignSignature(keystore, txFrom, txTo[i], 0, SIGHASH_ALL, consensusBranchId), strprintf("SignSignature %d", i));
BOOST_CHECK_MESSAGE(IsStandardTx(txTo[i], reason), strprintf("txTo[%d].IsStandard", i));
}
}
@@ -262,6 +270,7 @@ BOOST_AUTO_TEST_CASE(switchover)
BOOST_AUTO_TEST_CASE(AreInputsStandard)
{
LOCK(cs_main);
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
CCoinsView coinsDummy;
CCoinsViewCache coins(&coinsDummy);
CBasicKeyStore keystore;
@@ -332,16 +341,16 @@ BOOST_AUTO_TEST_CASE(AreInputsStandard)
txTo.vin[i].prevout.n = i;
txTo.vin[i].prevout.hash = txFrom.GetHash();
}
BOOST_CHECK(SignSignature(keystore, txFrom, txTo, 0));
BOOST_CHECK(SignSignature(keystore, txFrom, txTo, 1));
BOOST_CHECK(SignSignature(keystore, txFrom, txTo, 2));
BOOST_CHECK(SignSignature(keystore, txFrom, txTo, 0, SIGHASH_ALL, consensusBranchId));
BOOST_CHECK(SignSignature(keystore, txFrom, txTo, 1, SIGHASH_ALL, consensusBranchId));
BOOST_CHECK(SignSignature(keystore, txFrom, txTo, 2, SIGHASH_ALL, consensusBranchId));
// SignSignature doesn't know how to sign these. We're
// not testing validating signatures, so just create
// dummy signatures that DO include the correct P2SH scripts:
txTo.vin[3].scriptSig << OP_11 << OP_11 << static_cast<vector<unsigned char> >(oneAndTwo);
txTo.vin[4].scriptSig << static_cast<vector<unsigned char> >(fifteenSigops);
BOOST_CHECK(::AreInputsStandard(txTo, coins));
BOOST_CHECK(::AreInputsStandard(txTo, coins, consensusBranchId));
// 22 P2SH sigops for all inputs (1 for vin[0], 6 for vin[3], 15 for vin[4]
BOOST_CHECK_EQUAL(GetP2SHSigOpCount(txTo, coins), 22U);
@@ -350,7 +359,7 @@ BOOST_AUTO_TEST_CASE(AreInputsStandard)
{
CScript t = txTo.vin[i].scriptSig;
txTo.vin[i].scriptSig = (CScript() << 11) + t;
BOOST_CHECK(!::AreInputsStandard(txTo, coins));
BOOST_CHECK(!::AreInputsStandard(txTo, coins, consensusBranchId));
txTo.vin[i].scriptSig = t;
}
@@ -363,7 +372,7 @@ BOOST_AUTO_TEST_CASE(AreInputsStandard)
txToNonStd1.vin[0].prevout.hash = txFrom.GetHash();
txToNonStd1.vin[0].scriptSig << static_cast<vector<unsigned char> >(sixteenSigops);
BOOST_CHECK(!::AreInputsStandard(txToNonStd1, coins));
BOOST_CHECK(!::AreInputsStandard(txToNonStd1, coins, consensusBranchId));
BOOST_CHECK_EQUAL(GetP2SHSigOpCount(txToNonStd1, coins), 16U);
CMutableTransaction txToNonStd2;
@@ -375,7 +384,7 @@ BOOST_AUTO_TEST_CASE(AreInputsStandard)
txToNonStd2.vin[0].prevout.hash = txFrom.GetHash();
txToNonStd2.vin[0].scriptSig << static_cast<vector<unsigned char> >(twentySigops);
BOOST_CHECK(!::AreInputsStandard(txToNonStd2, coins));
BOOST_CHECK(!::AreInputsStandard(txToNonStd2, coins, consensusBranchId));
BOOST_CHECK_EQUAL(GetP2SHSigOpCount(txToNonStd2, coins), 20U);
}
+125 -162
View File
@@ -5,6 +5,7 @@
#include "data/script_invalid.json.h"
#include "data/script_valid.json.h"
#include "consensus/upgrades.h"
#include "core_io.h"
#include "key.h"
#include "keystore.h"
@@ -87,12 +88,13 @@ CMutableTransaction BuildSpendingTransaction(const CScript& scriptSig, const CMu
return txSpend;
}
void DoTest(const CScript& scriptPubKey, const CScript& scriptSig, int flags, bool expect, const std::string& message)
void DoTest(const CScript& scriptPubKey, const CScript& scriptSig, int flags, uint32_t consensusBranchId, bool expect, const std::string& message)
{
ScriptError err;
CMutableTransaction tx = BuildSpendingTransaction(scriptSig, BuildCreditingTransaction(scriptPubKey));
CMutableTransaction txCredit = BuildCreditingTransaction(scriptPubKey);
CMutableTransaction tx = BuildSpendingTransaction(scriptSig, txCredit);
CMutableTransaction tx2 = tx;
BOOST_CHECK_MESSAGE(VerifyScript(scriptSig, scriptPubKey, flags, MutableTransactionSignatureChecker(&tx, 0), &err) == expect, message);
BOOST_CHECK_MESSAGE(VerifyScript(scriptSig, scriptPubKey, flags, MutableTransactionSignatureChecker(&tx, 0, txCredit.vout[0].nValue), consensusBranchId, &err) == expect, message);
BOOST_CHECK_MESSAGE(expect == (err == SCRIPT_ERR_OK), std::string(ScriptErrorString(err)) + ": " + message);
#if defined(HAVE_CONSENSUS_LIB)
CDataStream stream(SER_NETWORK, PROTOCOL_VERSION);
@@ -187,6 +189,7 @@ private:
std::vector<unsigned char> push;
std::string comment;
int flags;
uint32_t consensusBranchId;
void DoPush()
{
@@ -204,7 +207,7 @@ private:
}
public:
TestBuilder(const CScript& redeemScript, const std::string& comment_, int flags_, bool P2SH = false) : scriptPubKey(redeemScript), havePush(false), comment(comment_), flags(flags_)
TestBuilder(const CScript& redeemScript, const std::string& comment_, int flags_, bool P2SH = false) : scriptPubKey(redeemScript), havePush(false), comment(comment_), flags(flags_), consensusBranchId(0)
{
if (P2SH) {
creditTx = BuildCreditingTransaction(CScript() << OP_HASH160 << ToByteVector(CScriptID(redeemScript)) << OP_EQUAL);
@@ -236,7 +239,7 @@ public:
TestBuilder& PushSig(const CKey& key, int nHashType = SIGHASH_ALL, unsigned int lenR = 32, unsigned int lenS = 32)
{
uint256 hash = SignatureHash(scriptPubKey, spendTx, 0, nHashType);
uint256 hash = SignatureHash(scriptPubKey, spendTx, 0, nHashType, 0, consensusBranchId);
std::vector<unsigned char> vchSig, r, s;
uint32_t iter = 0;
do {
@@ -288,7 +291,7 @@ public:
{
TestBuilder copy = *this; // Make a copy so we can rollback the push.
DoPush();
DoTest(creditTx.vout[0].scriptPubKey, spendTx.vin[0].scriptSig, flags, expect, comment);
DoTest(creditTx.vout[0].scriptPubKey, spendTx.vin[0].scriptSig, flags, consensusBranchId, expect, comment);
*this = copy;
return *this;
}
@@ -372,114 +375,61 @@ BOOST_AUTO_TEST_CASE(script_build)
"P2SH(2-of-3), 1 sig", SCRIPT_VERIFY_P2SH, true
).Num(0).PushSig(keys.key1).Num(0).PushRedeem());
good.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG,
"P2PK with too much R padding but no DERSIG", 0
).PushSig(keys.key1, SIGHASH_ALL, 31, 32).EditPush(1, "43021F", "44022000"));
bad.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG,
"P2PK with too much R padding", SCRIPT_VERIFY_DERSIG
"P2PK with too much R padding", 0
).PushSig(keys.key1, SIGHASH_ALL, 31, 32).EditPush(1, "43021F", "44022000"));
good.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG,
"P2PK with too much S padding but no DERSIG", 0
).PushSig(keys.key1, SIGHASH_ALL).EditPush(1, "44", "45").EditPush(37, "20", "2100"));
bad.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG,
"P2PK with too much S padding", SCRIPT_VERIFY_DERSIG
"P2PK with too much S padding", 0
).PushSig(keys.key1, SIGHASH_ALL).EditPush(1, "44", "45").EditPush(37, "20", "2100"));
good.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG,
"P2PK with too little R padding but no DERSIG", 0
).PushSig(keys.key1, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220"));
bad.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG,
"P2PK with too little R padding", SCRIPT_VERIFY_DERSIG
"P2PK with too little R padding", 0
).PushSig(keys.key1, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220"));
good.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey2C) << OP_CHECKSIG << OP_NOT,
"P2PK NOT with bad sig with too much R padding but no DERSIG", 0
).PushSig(keys.key2, SIGHASH_ALL, 31, 32).EditPush(1, "43021F", "44022000").DamagePush(10));
bad.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey2C) << OP_CHECKSIG << OP_NOT,
"P2PK NOT with bad sig with too much R padding", SCRIPT_VERIFY_DERSIG
"P2PK NOT with bad sig with too much R padding", 0
).PushSig(keys.key2, SIGHASH_ALL, 31, 32).EditPush(1, "43021F", "44022000").DamagePush(10));
bad.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey2C) << OP_CHECKSIG << OP_NOT,
"P2PK NOT with too much R padding but no DERSIG", 0
).PushSig(keys.key2, SIGHASH_ALL, 31, 32).EditPush(1, "43021F", "44022000"));
bad.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey2C) << OP_CHECKSIG << OP_NOT,
"P2PK NOT with too much R padding", SCRIPT_VERIFY_DERSIG
"P2PK NOT with too much R padding", 0
).PushSig(keys.key2, SIGHASH_ALL, 31, 32).EditPush(1, "43021F", "44022000"));
good.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG,
"BIP66 example 1, without DERSIG", 0
).PushSig(keys.key1, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220"));
bad.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG,
"BIP66 example 1, with DERSIG", SCRIPT_VERIFY_DERSIG
"BIP66 example 1", 0
).PushSig(keys.key1, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220"));
bad.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG << OP_NOT,
"BIP66 example 2, without DERSIG", 0
).PushSig(keys.key1, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220"));
bad.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG << OP_NOT,
"BIP66 example 2, with DERSIG", SCRIPT_VERIFY_DERSIG
"BIP66 example 2", 0
).PushSig(keys.key1, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220"));
bad.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG,
"BIP66 example 3, without DERSIG", 0
).Num(0));
bad.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG,
"BIP66 example 3, with DERSIG", SCRIPT_VERIFY_DERSIG
"BIP66 example 3", 0
).Num(0));
good.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG << OP_NOT,
"BIP66 example 4, without DERSIG", 0
).Num(0));
good.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG << OP_NOT,
"BIP66 example 4, with DERSIG", SCRIPT_VERIFY_DERSIG
"BIP66 example 4", 0
).Num(0));
bad.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG,
"BIP66 example 5, without DERSIG", 0
"BIP66 example 5", 0
).Num(1));
bad.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG,
"BIP66 example 5, with DERSIG", SCRIPT_VERIFY_DERSIG
).Num(1));
good.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG << OP_NOT,
"BIP66 example 6, without DERSIG", 0
).Num(1));
bad.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey1C) << OP_CHECKSIG << OP_NOT,
"BIP66 example 6, with DERSIG", SCRIPT_VERIFY_DERSIG
"BIP66 example 6", 0
).Num(1));
good.push_back(TestBuilder(CScript() << OP_2 << ToByteVector(keys.pubkey1C) << ToByteVector(keys.pubkey2C) << OP_2 << OP_CHECKMULTISIG,
"BIP66 example 7, without DERSIG", 0
).Num(0).PushSig(keys.key1, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220").PushSig(keys.key2));
bad.push_back(TestBuilder(CScript() << OP_2 << ToByteVector(keys.pubkey1C) << ToByteVector(keys.pubkey2C) << OP_2 << OP_CHECKMULTISIG,
"BIP66 example 7, with DERSIG", SCRIPT_VERIFY_DERSIG
"BIP66 example 7", 0
).Num(0).PushSig(keys.key1, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220").PushSig(keys.key2));
bad.push_back(TestBuilder(CScript() << OP_2 << ToByteVector(keys.pubkey1C) << ToByteVector(keys.pubkey2C) << OP_2 << OP_CHECKMULTISIG << OP_NOT,
"BIP66 example 8, without DERSIG", 0
).Num(0).PushSig(keys.key1, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220").PushSig(keys.key2));
bad.push_back(TestBuilder(CScript() << OP_2 << ToByteVector(keys.pubkey1C) << ToByteVector(keys.pubkey2C) << OP_2 << OP_CHECKMULTISIG << OP_NOT,
"BIP66 example 8, with DERSIG", SCRIPT_VERIFY_DERSIG
"BIP66 example 8", 0
).Num(0).PushSig(keys.key1, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220").PushSig(keys.key2));
bad.push_back(TestBuilder(CScript() << OP_2 << ToByteVector(keys.pubkey1C) << ToByteVector(keys.pubkey2C) << OP_2 << OP_CHECKMULTISIG,
"BIP66 example 9, without DERSIG", 0
"BIP66 example 9", 0
).Num(0).Num(0).PushSig(keys.key2, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220"));
bad.push_back(TestBuilder(CScript() << OP_2 << ToByteVector(keys.pubkey1C) << ToByteVector(keys.pubkey2C) << OP_2 << OP_CHECKMULTISIG,
"BIP66 example 9, with DERSIG", SCRIPT_VERIFY_DERSIG
).Num(0).Num(0).PushSig(keys.key2, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220"));
good.push_back(TestBuilder(CScript() << OP_2 << ToByteVector(keys.pubkey1C) << ToByteVector(keys.pubkey2C) << OP_2 << OP_CHECKMULTISIG << OP_NOT,
"BIP66 example 10, without DERSIG", 0
).Num(0).Num(0).PushSig(keys.key2, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220"));
bad.push_back(TestBuilder(CScript() << OP_2 << ToByteVector(keys.pubkey1C) << ToByteVector(keys.pubkey2C) << OP_2 << OP_CHECKMULTISIG << OP_NOT,
"BIP66 example 10, with DERSIG", SCRIPT_VERIFY_DERSIG
"BIP66 example 10", 0
).Num(0).Num(0).PushSig(keys.key2, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220"));
bad.push_back(TestBuilder(CScript() << OP_2 << ToByteVector(keys.pubkey1C) << ToByteVector(keys.pubkey2C) << OP_2 << OP_CHECKMULTISIG,
"BIP66 example 11, without DERSIG", 0
).Num(0).PushSig(keys.key1, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220").Num(0));
bad.push_back(TestBuilder(CScript() << OP_2 << ToByteVector(keys.pubkey1C) << ToByteVector(keys.pubkey2C) << OP_2 << OP_CHECKMULTISIG,
"BIP66 example 11, with DERSIG", SCRIPT_VERIFY_DERSIG
"BIP66 example 11", 0
).Num(0).PushSig(keys.key1, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220").Num(0));
good.push_back(TestBuilder(CScript() << OP_2 << ToByteVector(keys.pubkey1C) << ToByteVector(keys.pubkey2C) << OP_2 << OP_CHECKMULTISIG << OP_NOT,
"BIP66 example 12, without DERSIG", 0
"BIP66 example 12", 0
).Num(0).PushSig(keys.key1, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220").Num(0));
good.push_back(TestBuilder(CScript() << OP_2 << ToByteVector(keys.pubkey1C) << ToByteVector(keys.pubkey2C) << OP_2 << OP_CHECKMULTISIG << OP_NOT,
"BIP66 example 12, with DERSIG", SCRIPT_VERIFY_DERSIG
).Num(0).PushSig(keys.key1, SIGHASH_ALL, 33, 32).EditPush(1, "45022100", "440220").Num(0));
good.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey2C) << OP_CHECKSIG,
"P2PK with multi-byte hashtype, without DERSIG", 0
).PushSig(keys.key2, SIGHASH_ALL).EditPush(70, "01", "0101"));
bad.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey2C) << OP_CHECKSIG,
"P2PK with multi-byte hashtype, with DERSIG", SCRIPT_VERIFY_DERSIG
"P2PK with multi-byte hashtype", 0
).PushSig(keys.key2, SIGHASH_ALL).EditPush(70, "01", "0101"));
good.push_back(TestBuilder(CScript() << ToByteVector(keys.pubkey2C) << OP_CHECKSIG,
@@ -629,6 +579,7 @@ BOOST_AUTO_TEST_CASE(script_build)
BOOST_AUTO_TEST_CASE(script_valid)
{
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
// Read tests from test/data/script_valid.json
// Format is an array of arrays
// Inner arrays are [ "scriptSig", "scriptPubKey", "flags" ]
@@ -652,12 +603,13 @@ BOOST_AUTO_TEST_CASE(script_valid)
CScript scriptPubKey = ParseScript(scriptPubKeyString);
unsigned int scriptflags = ParseScriptFlags(test[2].get_str());
DoTest(scriptPubKey, scriptSig, scriptflags, true, strTest);
DoTest(scriptPubKey, scriptSig, scriptflags, consensusBranchId, true, strTest);
}
}
BOOST_AUTO_TEST_CASE(script_invalid)
{
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
// Scripts that should evaluate as invalid
UniValue tests = read_json(std::string(json_tests::script_invalid, json_tests::script_invalid + sizeof(json_tests::script_invalid)));
@@ -677,12 +629,14 @@ BOOST_AUTO_TEST_CASE(script_invalid)
CScript scriptPubKey = ParseScript(scriptPubKeyString);
unsigned int scriptflags = ParseScriptFlags(test[2].get_str());
DoTest(scriptPubKey, scriptSig, scriptflags, false, strTest);
DoTest(scriptPubKey, scriptSig, scriptflags, consensusBranchId, false, strTest);
}
}
BOOST_AUTO_TEST_CASE(script_PushData)
{
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
// Check that PUSHDATA1, PUSHDATA2, and PUSHDATA4 create the same value on
// the stack as the 1-75 opcodes do.
static const unsigned char direct[] = { 1, 0x5a };
@@ -692,29 +646,29 @@ BOOST_AUTO_TEST_CASE(script_PushData)
ScriptError err;
vector<vector<unsigned char> > directStack;
BOOST_CHECK(EvalScript(directStack, CScript(&direct[0], &direct[sizeof(direct)]), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), &err));
BOOST_CHECK(EvalScript(directStack, CScript(&direct[0], &direct[sizeof(direct)]), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
vector<vector<unsigned char> > pushdata1Stack;
BOOST_CHECK(EvalScript(pushdata1Stack, CScript(&pushdata1[0], &pushdata1[sizeof(pushdata1)]), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), &err));
BOOST_CHECK(EvalScript(pushdata1Stack, CScript(&pushdata1[0], &pushdata1[sizeof(pushdata1)]), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), consensusBranchId, &err));
BOOST_CHECK(pushdata1Stack == directStack);
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
vector<vector<unsigned char> > pushdata2Stack;
BOOST_CHECK(EvalScript(pushdata2Stack, CScript(&pushdata2[0], &pushdata2[sizeof(pushdata2)]), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), &err));
BOOST_CHECK(EvalScript(pushdata2Stack, CScript(&pushdata2[0], &pushdata2[sizeof(pushdata2)]), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), consensusBranchId, &err));
BOOST_CHECK(pushdata2Stack == directStack);
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
vector<vector<unsigned char> > pushdata4Stack;
BOOST_CHECK(EvalScript(pushdata4Stack, CScript(&pushdata4[0], &pushdata4[sizeof(pushdata4)]), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), &err));
BOOST_CHECK(EvalScript(pushdata4Stack, CScript(&pushdata4[0], &pushdata4[sizeof(pushdata4)]), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), consensusBranchId, &err));
BOOST_CHECK(pushdata4Stack == directStack);
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
}
CScript
sign_multisig(CScript scriptPubKey, std::vector<CKey> keys, CTransaction transaction)
sign_multisig(CScript scriptPubKey, std::vector<CKey> keys, CTransaction transaction, uint32_t consensusBranchId)
{
uint256 hash = SignatureHash(scriptPubKey, transaction, 0, SIGHASH_ALL);
uint256 hash = SignatureHash(scriptPubKey, transaction, 0, SIGHASH_ALL, 0, consensusBranchId);
CScript result;
//
@@ -736,15 +690,17 @@ sign_multisig(CScript scriptPubKey, std::vector<CKey> keys, CTransaction transac
return result;
}
CScript
sign_multisig(CScript scriptPubKey, const CKey &key, CTransaction transaction)
sign_multisig(CScript scriptPubKey, const CKey &key, CTransaction transaction, uint32_t consensusBranchId)
{
std::vector<CKey> keys;
keys.push_back(key);
return sign_multisig(scriptPubKey, keys, transaction);
return sign_multisig(scriptPubKey, keys, transaction, consensusBranchId);
}
BOOST_AUTO_TEST_CASE(script_CHECKMULTISIG12)
{
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
ScriptError err;
CKey key1, key2, key3;
key1.MakeNewKey(true);
@@ -757,24 +713,26 @@ BOOST_AUTO_TEST_CASE(script_CHECKMULTISIG12)
CMutableTransaction txFrom12 = BuildCreditingTransaction(scriptPubKey12);
CMutableTransaction txTo12 = BuildSpendingTransaction(CScript(), txFrom12);
CScript goodsig1 = sign_multisig(scriptPubKey12, key1, txTo12);
BOOST_CHECK(VerifyScript(goodsig1, scriptPubKey12, flags, MutableTransactionSignatureChecker(&txTo12, 0), &err));
CScript goodsig1 = sign_multisig(scriptPubKey12, key1, txTo12, consensusBranchId);
BOOST_CHECK(VerifyScript(goodsig1, scriptPubKey12, flags, MutableTransactionSignatureChecker(&txTo12, 0, txFrom12.vout[0].nValue), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
txTo12.vout[0].nValue = 2;
BOOST_CHECK(!VerifyScript(goodsig1, scriptPubKey12, flags, MutableTransactionSignatureChecker(&txTo12, 0), &err));
BOOST_CHECK(!VerifyScript(goodsig1, scriptPubKey12, flags, MutableTransactionSignatureChecker(&txTo12, 0, txFrom12.vout[0].nValue), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_EVAL_FALSE, ScriptErrorString(err));
CScript goodsig2 = sign_multisig(scriptPubKey12, key2, txTo12);
BOOST_CHECK(VerifyScript(goodsig2, scriptPubKey12, flags, MutableTransactionSignatureChecker(&txTo12, 0), &err));
CScript goodsig2 = sign_multisig(scriptPubKey12, key2, txTo12, consensusBranchId);
BOOST_CHECK(VerifyScript(goodsig2, scriptPubKey12, flags, MutableTransactionSignatureChecker(&txTo12, 0, txFrom12.vout[0].nValue), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
CScript badsig1 = sign_multisig(scriptPubKey12, key3, txTo12);
BOOST_CHECK(!VerifyScript(badsig1, scriptPubKey12, flags, MutableTransactionSignatureChecker(&txTo12, 0), &err));
CScript badsig1 = sign_multisig(scriptPubKey12, key3, txTo12, consensusBranchId);
BOOST_CHECK(!VerifyScript(badsig1, scriptPubKey12, flags, MutableTransactionSignatureChecker(&txTo12, 0, txFrom12.vout[0].nValue), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_EVAL_FALSE, ScriptErrorString(err));
}
BOOST_AUTO_TEST_CASE(script_CHECKMULTISIG23)
{
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
ScriptError err;
CKey key1, key2, key3, key4;
key1.MakeNewKey(true);
@@ -790,61 +748,64 @@ BOOST_AUTO_TEST_CASE(script_CHECKMULTISIG23)
std::vector<CKey> keys;
keys.push_back(key1); keys.push_back(key2);
CScript goodsig1 = sign_multisig(scriptPubKey23, keys, txTo23);
BOOST_CHECK(VerifyScript(goodsig1, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0), &err));
CScript goodsig1 = sign_multisig(scriptPubKey23, keys, txTo23, consensusBranchId);
BOOST_CHECK(VerifyScript(goodsig1, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0, txFrom23.vout[0].nValue), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
keys.clear();
keys.push_back(key1); keys.push_back(key3);
CScript goodsig2 = sign_multisig(scriptPubKey23, keys, txTo23);
BOOST_CHECK(VerifyScript(goodsig2, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0), &err));
CScript goodsig2 = sign_multisig(scriptPubKey23, keys, txTo23, consensusBranchId);
BOOST_CHECK(VerifyScript(goodsig2, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0, txFrom23.vout[0].nValue), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
keys.clear();
keys.push_back(key2); keys.push_back(key3);
CScript goodsig3 = sign_multisig(scriptPubKey23, keys, txTo23);
BOOST_CHECK(VerifyScript(goodsig3, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0), &err));
CScript goodsig3 = sign_multisig(scriptPubKey23, keys, txTo23, consensusBranchId);
BOOST_CHECK(VerifyScript(goodsig3, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0, txFrom23.vout[0].nValue), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
keys.clear();
keys.push_back(key2); keys.push_back(key2); // Can't re-use sig
CScript badsig1 = sign_multisig(scriptPubKey23, keys, txTo23);
BOOST_CHECK(!VerifyScript(badsig1, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0), &err));
CScript badsig1 = sign_multisig(scriptPubKey23, keys, txTo23, consensusBranchId);
BOOST_CHECK(!VerifyScript(badsig1, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0, txFrom23.vout[0].nValue), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_EVAL_FALSE, ScriptErrorString(err));
keys.clear();
keys.push_back(key2); keys.push_back(key1); // sigs must be in correct order
CScript badsig2 = sign_multisig(scriptPubKey23, keys, txTo23);
BOOST_CHECK(!VerifyScript(badsig2, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0), &err));
CScript badsig2 = sign_multisig(scriptPubKey23, keys, txTo23, consensusBranchId);
BOOST_CHECK(!VerifyScript(badsig2, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0, txFrom23.vout[0].nValue), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_EVAL_FALSE, ScriptErrorString(err));
keys.clear();
keys.push_back(key3); keys.push_back(key2); // sigs must be in correct order
CScript badsig3 = sign_multisig(scriptPubKey23, keys, txTo23);
BOOST_CHECK(!VerifyScript(badsig3, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0), &err));
CScript badsig3 = sign_multisig(scriptPubKey23, keys, txTo23, consensusBranchId);
BOOST_CHECK(!VerifyScript(badsig3, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0, txFrom23.vout[0].nValue), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_EVAL_FALSE, ScriptErrorString(err));
keys.clear();
keys.push_back(key4); keys.push_back(key2); // sigs must match pubkeys
CScript badsig4 = sign_multisig(scriptPubKey23, keys, txTo23);
BOOST_CHECK(!VerifyScript(badsig4, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0), &err));
CScript badsig4 = sign_multisig(scriptPubKey23, keys, txTo23, consensusBranchId);
BOOST_CHECK(!VerifyScript(badsig4, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0, txFrom23.vout[0].nValue), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_EVAL_FALSE, ScriptErrorString(err));
keys.clear();
keys.push_back(key1); keys.push_back(key4); // sigs must match pubkeys
CScript badsig5 = sign_multisig(scriptPubKey23, keys, txTo23);
BOOST_CHECK(!VerifyScript(badsig5, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0), &err));
CScript badsig5 = sign_multisig(scriptPubKey23, keys, txTo23, consensusBranchId);
BOOST_CHECK(!VerifyScript(badsig5, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0, txFrom23.vout[0].nValue), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_EVAL_FALSE, ScriptErrorString(err));
keys.clear(); // Must have signatures
CScript badsig6 = sign_multisig(scriptPubKey23, keys, txTo23);
BOOST_CHECK(!VerifyScript(badsig6, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0), &err));
CScript badsig6 = sign_multisig(scriptPubKey23, keys, txTo23, consensusBranchId);
BOOST_CHECK(!VerifyScript(badsig6, scriptPubKey23, flags, MutableTransactionSignatureChecker(&txTo23, 0, txFrom23.vout[0].nValue), consensusBranchId, &err));
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_INVALID_STACK_OPERATION, ScriptErrorString(err));
}
BOOST_AUTO_TEST_CASE(script_combineSigs)
{
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
// Test the CombineSignatures function
CAmount amount = 0;
CBasicKeyStore keystore;
vector<CKey> keys;
vector<CPubKey> pubkeys;
@@ -862,62 +823,62 @@ BOOST_AUTO_TEST_CASE(script_combineSigs)
CScript& scriptPubKey = txFrom.vout[0].scriptPubKey;
CScript& scriptSig = txTo.vin[0].scriptSig;
CScript empty;
CScript combined = CombineSignatures(scriptPubKey, txTo, 0, empty, empty);
BOOST_CHECK(combined.empty());
SignatureData empty;
SignatureData combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), empty, empty, consensusBranchId);
BOOST_CHECK(combined.scriptSig.empty());
// Single signature case:
SignSignature(keystore, txFrom, txTo, 0); // changes scriptSig
combined = CombineSignatures(scriptPubKey, txTo, 0, scriptSig, empty);
BOOST_CHECK(combined == scriptSig);
combined = CombineSignatures(scriptPubKey, txTo, 0, empty, scriptSig);
BOOST_CHECK(combined == scriptSig);
SignSignature(keystore, txFrom, txTo, 0, SIGHASH_ALL, consensusBranchId); // changes scriptSig
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), SignatureData(scriptSig), empty, consensusBranchId);
BOOST_CHECK(combined.scriptSig == scriptSig);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), empty, SignatureData(scriptSig), consensusBranchId);
BOOST_CHECK(combined.scriptSig == scriptSig);
CScript scriptSigCopy = scriptSig;
// Signing again will give a different, valid signature:
SignSignature(keystore, txFrom, txTo, 0);
combined = CombineSignatures(scriptPubKey, txTo, 0, scriptSigCopy, scriptSig);
BOOST_CHECK(combined == scriptSigCopy || combined == scriptSig);
SignSignature(keystore, txFrom, txTo, 0, SIGHASH_ALL, consensusBranchId);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), SignatureData(scriptSigCopy), SignatureData(scriptSig), consensusBranchId);
BOOST_CHECK(combined.scriptSig == scriptSigCopy || combined.scriptSig == scriptSig);
// P2SH, single-signature case:
CScript pkSingle; pkSingle << ToByteVector(keys[0].GetPubKey()) << OP_CHECKSIG;
keystore.AddCScript(pkSingle);
scriptPubKey = GetScriptForDestination(CScriptID(pkSingle));
SignSignature(keystore, txFrom, txTo, 0);
combined = CombineSignatures(scriptPubKey, txTo, 0, scriptSig, empty);
BOOST_CHECK(combined == scriptSig);
combined = CombineSignatures(scriptPubKey, txTo, 0, empty, scriptSig);
BOOST_CHECK(combined == scriptSig);
SignSignature(keystore, txFrom, txTo, 0, SIGHASH_ALL, consensusBranchId);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), SignatureData(scriptSig), empty, consensusBranchId);
BOOST_CHECK(combined.scriptSig == scriptSig);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), empty, SignatureData(scriptSig), consensusBranchId);
BOOST_CHECK(combined.scriptSig == scriptSig);
scriptSigCopy = scriptSig;
SignSignature(keystore, txFrom, txTo, 0);
combined = CombineSignatures(scriptPubKey, txTo, 0, scriptSigCopy, scriptSig);
BOOST_CHECK(combined == scriptSigCopy || combined == scriptSig);
SignSignature(keystore, txFrom, txTo, 0, SIGHASH_ALL, consensusBranchId);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), SignatureData(scriptSigCopy), SignatureData(scriptSig), consensusBranchId);
BOOST_CHECK(combined.scriptSig == scriptSigCopy || combined.scriptSig == scriptSig);
// dummy scriptSigCopy with placeholder, should always choose non-placeholder:
scriptSigCopy = CScript() << OP_0 << static_cast<vector<unsigned char> >(pkSingle);
combined = CombineSignatures(scriptPubKey, txTo, 0, scriptSigCopy, scriptSig);
BOOST_CHECK(combined == scriptSig);
combined = CombineSignatures(scriptPubKey, txTo, 0, scriptSig, scriptSigCopy);
BOOST_CHECK(combined == scriptSig);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), SignatureData(scriptSigCopy), SignatureData(scriptSig), consensusBranchId);
BOOST_CHECK(combined.scriptSig == scriptSig);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), SignatureData(scriptSig), SignatureData(scriptSigCopy), consensusBranchId);
BOOST_CHECK(combined.scriptSig == scriptSig);
// Hardest case: Multisig 2-of-3
scriptPubKey = GetScriptForMultisig(2, pubkeys);
keystore.AddCScript(scriptPubKey);
SignSignature(keystore, txFrom, txTo, 0);
combined = CombineSignatures(scriptPubKey, txTo, 0, scriptSig, empty);
BOOST_CHECK(combined == scriptSig);
combined = CombineSignatures(scriptPubKey, txTo, 0, empty, scriptSig);
BOOST_CHECK(combined == scriptSig);
SignSignature(keystore, txFrom, txTo, 0, SIGHASH_ALL, consensusBranchId);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), SignatureData(scriptSig), empty, consensusBranchId);
BOOST_CHECK(combined.scriptSig == scriptSig);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), empty, SignatureData(scriptSig), consensusBranchId);
BOOST_CHECK(combined.scriptSig == scriptSig);
// A couple of partially-signed versions:
vector<unsigned char> sig1;
uint256 hash1 = SignatureHash(scriptPubKey, txTo, 0, SIGHASH_ALL);
uint256 hash1 = SignatureHash(scriptPubKey, txTo, 0, SIGHASH_ALL, 0, consensusBranchId);
BOOST_CHECK(keys[0].Sign(hash1, sig1));
sig1.push_back(SIGHASH_ALL);
vector<unsigned char> sig2;
uint256 hash2 = SignatureHash(scriptPubKey, txTo, 0, SIGHASH_NONE);
uint256 hash2 = SignatureHash(scriptPubKey, txTo, 0, SIGHASH_NONE, 0, consensusBranchId);
BOOST_CHECK(keys[1].Sign(hash2, sig2));
sig2.push_back(SIGHASH_NONE);
vector<unsigned char> sig3;
uint256 hash3 = SignatureHash(scriptPubKey, txTo, 0, SIGHASH_SINGLE);
uint256 hash3 = SignatureHash(scriptPubKey, txTo, 0, SIGHASH_SINGLE, 0, consensusBranchId);
BOOST_CHECK(keys[2].Sign(hash3, sig3));
sig3.push_back(SIGHASH_SINGLE);
@@ -933,32 +894,34 @@ BOOST_AUTO_TEST_CASE(script_combineSigs)
CScript complete13 = CScript() << OP_0 << sig1 << sig3;
CScript complete23 = CScript() << OP_0 << sig2 << sig3;
combined = CombineSignatures(scriptPubKey, txTo, 0, partial1a, partial1b);
BOOST_CHECK(combined == partial1a);
combined = CombineSignatures(scriptPubKey, txTo, 0, partial1a, partial2a);
BOOST_CHECK(combined == complete12);
combined = CombineSignatures(scriptPubKey, txTo, 0, partial2a, partial1a);
BOOST_CHECK(combined == complete12);
combined = CombineSignatures(scriptPubKey, txTo, 0, partial1b, partial2b);
BOOST_CHECK(combined == complete12);
combined = CombineSignatures(scriptPubKey, txTo, 0, partial3b, partial1b);
BOOST_CHECK(combined == complete13);
combined = CombineSignatures(scriptPubKey, txTo, 0, partial2a, partial3a);
BOOST_CHECK(combined == complete23);
combined = CombineSignatures(scriptPubKey, txTo, 0, partial3b, partial2b);
BOOST_CHECK(combined == complete23);
combined = CombineSignatures(scriptPubKey, txTo, 0, partial3b, partial3a);
BOOST_CHECK(combined == partial3c);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), SignatureData(partial1a), SignatureData(partial1b), consensusBranchId);
BOOST_CHECK(combined.scriptSig == partial1a);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), SignatureData(partial1a), SignatureData(partial2a), consensusBranchId);
BOOST_CHECK(combined.scriptSig == complete12);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), SignatureData(partial2a), SignatureData(partial1a), consensusBranchId);
BOOST_CHECK(combined.scriptSig == complete12);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), SignatureData(partial1b), SignatureData(partial2b), consensusBranchId);
BOOST_CHECK(combined.scriptSig == complete12);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), SignatureData(partial3b), SignatureData(partial1b), consensusBranchId);
BOOST_CHECK(combined.scriptSig == complete13);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), SignatureData(partial2a), SignatureData(partial3a), consensusBranchId);
BOOST_CHECK(combined.scriptSig == complete23);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), SignatureData(partial3b), SignatureData(partial2b), consensusBranchId);
BOOST_CHECK(combined.scriptSig == complete23);
combined = CombineSignatures(scriptPubKey, MutableTransactionSignatureChecker(&txTo, 0, amount), SignatureData(partial3b), SignatureData(partial3a), consensusBranchId);
BOOST_CHECK(combined.scriptSig == partial3c);
}
BOOST_AUTO_TEST_CASE(script_standard_push)
{
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
ScriptError err;
for (int i=0; i<67000; i++) {
CScript script;
script << i;
BOOST_CHECK_MESSAGE(script.IsPushOnly(), "Number " << i << " is not pure push.");
BOOST_CHECK_MESSAGE(VerifyScript(script, CScript() << OP_1, SCRIPT_VERIFY_MINIMALDATA, BaseSignatureChecker(), &err), "Number " << i << " push is not minimal data.");
BOOST_CHECK_MESSAGE(VerifyScript(script, CScript() << OP_1, SCRIPT_VERIFY_MINIMALDATA, BaseSignatureChecker(), consensusBranchId, &err), "Number " << i << " push is not minimal data.");
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
}
@@ -967,7 +930,7 @@ BOOST_AUTO_TEST_CASE(script_standard_push)
CScript script;
script << data;
BOOST_CHECK_MESSAGE(script.IsPushOnly(), "Length " << i << " is not pure push.");
BOOST_CHECK_MESSAGE(VerifyScript(script, CScript() << OP_1, SCRIPT_VERIFY_MINIMALDATA, BaseSignatureChecker(), &err), "Length " << i << " push is not minimal data.");
BOOST_CHECK_MESSAGE(VerifyScript(script, CScript() << OP_1, SCRIPT_VERIFY_MINIMALDATA, BaseSignatureChecker(), consensusBranchId, &err), "Length " << i << " push is not minimal data.");
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
}
}
+50 -13
View File
@@ -2,6 +2,7 @@
// Distributed under the MIT software license, see the accompanying
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
#include "consensus/upgrades.h"
#include "consensus/validation.h"
#include "data/sighash.json.h"
#include "main.h"
@@ -15,6 +16,7 @@
#include "sodium.h"
#include <iostream>
#include <random>
#include <boost/test/unit_test.hpp>
@@ -92,8 +94,23 @@ void static RandomScript(CScript &script) {
script << oplist[insecure_rand() % (sizeof(oplist)/sizeof(oplist[0]))];
}
void static RandomTransaction(CMutableTransaction &tx, bool fSingle) {
tx.nVersion = insecure_rand();
// Overwinter tx version numbers are selected randomly from current version range.
// http://en.cppreference.com/w/cpp/numeric/random/uniform_int_distribution
// https://stackoverflow.com/a/19728404
std::random_device rd;
std::mt19937 rng(rd());
std::uniform_int_distribution<int> version_dist(CTransaction::OVERWINTER_MIN_CURRENT_VERSION,
CTransaction::OVERWINTER_MAX_CURRENT_VERSION);
void static RandomTransaction(CMutableTransaction &tx, bool fSingle, uint32_t consensusBranchId) {
tx.fOverwintered = insecure_rand() % 2;
if (tx.fOverwintered) {
tx.nVersion = version_dist(rng);
tx.nVersionGroupId = OVERWINTER_VERSION_GROUP_ID;
tx.nExpiryHeight = (insecure_rand() % 2) ? insecure_rand() : 0;
} else {
tx.nVersion = insecure_rand() & 0x7FFFFFFF;
}
tx.vin.clear();
tx.vout.clear();
tx.nLockTime = (insecure_rand() % 2) ? insecure_rand() : 0;
@@ -143,7 +160,7 @@ void static RandomTransaction(CMutableTransaction &tx, bool fSingle) {
// Empty output script.
CScript scriptCode;
CTransaction signTx(tx);
uint256 dataToBeSigned = SignatureHash(scriptCode, signTx, NOT_AN_INPUT, SIGHASH_ALL);
uint256 dataToBeSigned = SignatureHash(scriptCode, signTx, NOT_AN_INPUT, SIGHASH_ALL, 0, consensusBranchId);
assert(crypto_sign_detached(&tx.joinSplitSig[0], NULL,
dataToBeSigned.begin(), 32,
@@ -152,15 +169,16 @@ void static RandomTransaction(CMutableTransaction &tx, bool fSingle) {
}
}
BOOST_FIXTURE_TEST_SUITE(sighash_tests, BasicTestingSetup)
BOOST_FIXTURE_TEST_SUITE(sighash_tests, JoinSplitTestingSetup)
BOOST_AUTO_TEST_CASE(sighash_test)
{
uint32_t overwinterBranchId = NetworkUpgradeInfo[Consensus::UPGRADE_OVERWINTER].nBranchId;
seed_insecure_rand(false);
#if defined(PRINT_SIGHASH_JSON)
std::cout << "[\n";
std::cout << "\t[\"raw_transaction, script, input_index, hashType, signature_hash (result)\"],\n";
std::cout << "\t[\"raw_transaction, script, input_index, hashType, branchId, signature_hash (result)\"],\n";
#endif
int nRandomTests = 50000;
@@ -169,15 +187,16 @@ BOOST_AUTO_TEST_CASE(sighash_test)
#endif
for (int i=0; i<nRandomTests; i++) {
int nHashType = insecure_rand();
uint32_t consensusBranchId = insecure_rand() % 2 ? SPROUT_BRANCH_ID : overwinterBranchId;
CMutableTransaction txTo;
RandomTransaction(txTo, (nHashType & 0x1f) == SIGHASH_SINGLE);
RandomTransaction(txTo, (nHashType & 0x1f) == SIGHASH_SINGLE, consensusBranchId);
CScript scriptCode;
RandomScript(scriptCode);
int nIn = insecure_rand() % txTo.vin.size();
uint256 sh, sho;
sho = SignatureHashOld(scriptCode, txTo, nIn, nHashType);
sh = SignatureHash(scriptCode, txTo, nIn, nHashType);
sh = SignatureHash(scriptCode, txTo, nIn, nHashType, 0, consensusBranchId);
#if defined(PRINT_SIGHASH_JSON)
CDataStream ss(SER_NETWORK, PROTOCOL_VERSION);
ss << txTo;
@@ -186,14 +205,17 @@ BOOST_AUTO_TEST_CASE(sighash_test)
std::cout << HexStr(ss.begin(), ss.end()) << "\", \"";
std::cout << HexStr(scriptCode) << "\", ";
std::cout << nIn << ", ";
std::cout << nHashType << ", \"";
std::cout << sho.GetHex() << "\"]";
std::cout << nHashType << ", ";
std::cout << consensusBranchId << ", \"";
std::cout << (txTo.fOverwintered ? sh.GetHex() : sho.GetHex()) << "\"]";
if (i+1 != nRandomTests) {
std::cout << ",";
}
std::cout << "\n";
#endif
BOOST_CHECK(sh == sho);
if (!txTo.fOverwintered) {
BOOST_CHECK(sh == sho);
}
}
#if defined(PRINT_SIGHASH_JSON)
std::cout << "]\n";
@@ -217,6 +239,7 @@ BOOST_AUTO_TEST_CASE(sighash_from_data)
std::string raw_tx, raw_script, sigHashHex;
int nIn, nHashType;
uint32_t consensusBranchId;
uint256 sh;
CTransaction tx;
CScript scriptCode = CScript();
@@ -227,14 +250,28 @@ BOOST_AUTO_TEST_CASE(sighash_from_data)
raw_script = test[1].get_str();
nIn = test[2].get_int();
nHashType = test[3].get_int();
sigHashHex = test[4].get_str();
consensusBranchId = test[4].get_int();
sigHashHex = test[5].get_str();
uint256 sh;
CDataStream stream(ParseHex(raw_tx), SER_NETWORK, PROTOCOL_VERSION);
stream >> tx;
CValidationState state;
if (tx.nVersion < MIN_TX_VERSION) {
if (tx.fOverwintered) {
// Note that OVERWINTER_MIN_CURRENT_VERSION and OVERWINTER_MAX_CURRENT_VERSION
// are checked in IsStandardTx(), not in CheckTransactionWithoutProofVerification()
if (tx.nVersion < OVERWINTER_MIN_TX_VERSION ||
tx.nExpiryHeight >= TX_EXPIRY_HEIGHT_THRESHOLD)
{
// Transaction must be invalid
BOOST_CHECK_MESSAGE(!CheckTransactionWithoutProofVerification(tx, state), strTest);
BOOST_CHECK(!state.IsValid());
} else {
BOOST_CHECK_MESSAGE(CheckTransactionWithoutProofVerification(tx, state), strTest);
BOOST_CHECK(state.IsValid());
}
} else if (tx.nVersion < SPROUT_MIN_TX_VERSION) {
// Transaction must be invalid
BOOST_CHECK_MESSAGE(!CheckTransactionWithoutProofVerification(tx, state), strTest);
BOOST_CHECK(!state.IsValid());
@@ -250,7 +287,7 @@ BOOST_AUTO_TEST_CASE(sighash_from_data)
continue;
}
sh = SignatureHash(scriptCode, tx, nIn, nHashType);
sh = SignatureHash(scriptCode, tx, nIn, nHashType, 0, consensusBranchId);
BOOST_CHECK_MESSAGE(sh.GetHex() == sigHashHex, strTest);
}
}
+27 -9
View File
@@ -12,6 +12,7 @@
#include "main.h"
#include "random.h"
#include "txdb.h"
#include "txmempool.h"
#include "ui_interface.h"
#include "util.h"
#ifdef ENABLE_WALLET
@@ -30,20 +31,30 @@ ZCJoinSplit *pzcashParams;
extern bool fPrintToConsole;
extern void noui_connect();
JoinSplitTestingSetup::JoinSplitTestingSetup()
{
boost::filesystem::path pk_path = ZC_GetParamsDir() / "sprout-proving.key";
boost::filesystem::path vk_path = ZC_GetParamsDir() / "sprout-verifying.key";
pzcashParams = ZCJoinSplit::Prepared(vk_path.string(), pk_path.string());
}
JoinSplitTestingSetup::~JoinSplitTestingSetup()
{
delete pzcashParams;
}
BasicTestingSetup::BasicTestingSetup()
{
assert(init_and_check_sodium() != -1);
ECC_Start();
pzcashParams = ZCJoinSplit::Unopened();
SetupEnvironment();
fPrintToDebugLog = false; // don't want to write to debug.log file
fCheckBlockIndex = true;
SelectParams(CBaseChainParams::MAIN);
assert(init_and_check_sodium() != -1);
ECC_Start();
SetupEnvironment();
fPrintToDebugLog = false; // don't want to write to debug.log file
fCheckBlockIndex = true;
SelectParams(CBaseChainParams::MAIN);
}
BasicTestingSetup::~BasicTestingSetup()
{
ECC_Stop();
delete pzcashParams;
ECC_Stop();
}
TestingSetup::TestingSetup()
@@ -92,6 +103,13 @@ TestingSetup::~TestingSetup()
boost::filesystem::remove_all(pathTemp);
}
CTxMemPoolEntry TestMemPoolEntryHelper::FromTx(CMutableTransaction &tx, CTxMemPool *pool) {
return CTxMemPoolEntry(tx, nFee, nTime, dPriority, nHeight,
pool ? pool->HasNoInputsOf(tx) : hadNoDependencies,
spendsCoinbase, nBranchId);
}
void Shutdown(void* parg)
{
exit(0);
+41 -1
View File
@@ -1,6 +1,8 @@
#ifndef BITCOIN_TEST_TEST_BITCOIN_H
#define BITCOIN_TEST_TEST_BITCOIN_H
#include "consensus/upgrades.h"
#include "pubkey.h"
#include "txdb.h"
#include <boost/filesystem.hpp>
@@ -10,15 +12,23 @@
* This just configures logging and chain parameters.
*/
struct BasicTestingSetup {
ECCVerifyHandle globalVerifyHandle;
BasicTestingSetup();
~BasicTestingSetup();
};
// Setup w.r.t. zk-SNARK API
struct JoinSplitTestingSetup: public BasicTestingSetup {
JoinSplitTestingSetup();
~JoinSplitTestingSetup();
};
/** Testing setup that configures a complete environment.
* Included are data directory, coins database, script check threads
* and wallet (if enabled) setup.
*/
struct TestingSetup: public BasicTestingSetup {
struct TestingSetup: public JoinSplitTestingSetup {
CCoinsViewDB *pcoinsdbview;
boost::filesystem::path pathTemp;
boost::thread_group threadGroup;
@@ -27,4 +37,34 @@ struct TestingSetup: public BasicTestingSetup {
~TestingSetup();
};
class CTxMemPoolEntry;
class CTxMemPool;
struct TestMemPoolEntryHelper
{
// Default values
CAmount nFee;
int64_t nTime;
double dPriority;
unsigned int nHeight;
bool hadNoDependencies;
bool spendsCoinbase;
uint32_t nBranchId;
TestMemPoolEntryHelper() :
nFee(0), nTime(0), dPriority(0.0), nHeight(1),
hadNoDependencies(false), spendsCoinbase(false),
nBranchId(SPROUT_BRANCH_ID) { }
CTxMemPoolEntry FromTx(CMutableTransaction &tx, CTxMemPool *pool = NULL);
// Change the default value
TestMemPoolEntryHelper &Fee(CAmount _fee) { nFee = _fee; return *this; }
TestMemPoolEntryHelper &Time(int64_t _time) { nTime = _time; return *this; }
TestMemPoolEntryHelper &Priority(double _priority) { dPriority = _priority; return *this; }
TestMemPoolEntryHelper &Height(unsigned int _height) { nHeight = _height; return *this; }
TestMemPoolEntryHelper &HadNoDependencies(bool _hnd) { hadNoDependencies = _hnd; return *this; }
TestMemPoolEntryHelper &SpendsCoinbase(bool _flag) { spendsCoinbase = _flag; return *this; }
TestMemPoolEntryHelper &BranchId(uint32_t _branchId) { nBranchId = _branchId; return *this; }
};
#endif
+38 -7
View File
@@ -119,29 +119,60 @@ BOOST_AUTO_TEST_CASE(util_ParseTorReplyMapping)
{"Foo", "Bar Baz"},
});
// Escapes (which are left escaped by the parser)
// Escapes
CheckParseTorReplyMapping(
"Foo=\"Bar\\ Baz\"", {
{"Foo", "Bar\\ Baz"},
{"Foo", "Bar Baz"},
});
CheckParseTorReplyMapping(
"Foo=\"Bar\\Baz\"", {
{"Foo", "Bar\\Baz"},
{"Foo", "BarBaz"},
});
CheckParseTorReplyMapping(
"Foo=\"Bar\\@Baz\"", {
{"Foo", "Bar\\@Baz"},
{"Foo", "Bar@Baz"},
});
CheckParseTorReplyMapping(
"Foo=\"Bar\\\"Baz\" Spam=\"\\\"Eggs\\\"\"", {
{"Foo", "Bar\\\"Baz"},
{"Spam", "\\\"Eggs\\\""},
{"Foo", "Bar\"Baz"},
{"Spam", "\"Eggs\""},
});
CheckParseTorReplyMapping(
"Foo=\"Bar\\\\Baz\"", {
{"Foo", "Bar\\\\Baz"},
{"Foo", "Bar\\Baz"},
});
// C escapes
CheckParseTorReplyMapping(
"Foo=\"Bar\\nBaz\\t\" Spam=\"\\rEggs\" Octals=\"\\1a\\11\\17\\18\\81\\377\\378\\400\\2222\" Final=Check", {
{"Foo", "Bar\nBaz\t"},
{"Spam", "\rEggs"},
{"Octals", "\1a\11\17\1" "881\377\37" "8\40" "0\222" "2"},
{"Final", "Check"},
});
CheckParseTorReplyMapping(
"Valid=Mapping Escaped=\"Escape\\\\\"", {
{"Valid", "Mapping"},
{"Escaped", "Escape\\"},
});
CheckParseTorReplyMapping(
"Valid=Mapping Bare=\"Escape\\\"", {});
CheckParseTorReplyMapping(
"OneOctal=\"OneEnd\\1\" TwoOctal=\"TwoEnd\\11\"", {
{"OneOctal", "OneEnd\1"},
{"TwoOctal", "TwoEnd\11"},
});
// Special handling for null case
// (needed because string comparison reads the null as end-of-string)
BOOST_TEST_MESSAGE(std::string("CheckParseTorReplyMapping(Null=\"\\0\")"));
auto ret = ParseTorReplyMapping("Null=\"\\0\"");
BOOST_CHECK_EQUAL(ret.size(), 1);
auto r_it = ret.begin();
BOOST_CHECK_EQUAL(r_it->first, "Null");
BOOST_CHECK_EQUAL(r_it->second.size(), 1);
BOOST_CHECK_EQUAL(r_it->second[0], '\0');
// A more complex valid grammar. PROTOCOLINFO accepts a VersionLine that
// takes a key=value pair followed by an OptArguments, making this valid.
// Because an OptArguments contains no semantic data, there is no point in
+144 -33
View File
@@ -6,7 +6,10 @@
#include "data/tx_valid.json.h"
#include "test/test_bitcoin.h"
#include "init.h"
#include "clientversion.h"
#include "checkqueue.h"
#include "consensus/upgrades.h"
#include "consensus/validation.h"
#include "core_io.h"
#include "key.h"
@@ -14,6 +17,7 @@
#include "main.h"
#include "script/script.h"
#include "script/script_error.h"
#include "script/sign.h"
#include "primitives/transaction.h"
#include "sodium.h"
@@ -42,7 +46,6 @@ static std::map<string, unsigned int> mapFlagNames = boost::assign::map_list_of
(string("NONE"), (unsigned int)SCRIPT_VERIFY_NONE)
(string("P2SH"), (unsigned int)SCRIPT_VERIFY_P2SH)
(string("STRICTENC"), (unsigned int)SCRIPT_VERIFY_STRICTENC)
(string("DERSIG"), (unsigned int)SCRIPT_VERIFY_DERSIG)
(string("LOW_S"), (unsigned int)SCRIPT_VERIFY_LOW_S)
(string("SIGPUSHONLY"), (unsigned int)SCRIPT_VERIFY_SIGPUSHONLY)
(string("MINIMALDATA"), (unsigned int)SCRIPT_VERIFY_MINIMALDATA)
@@ -86,10 +89,12 @@ string FormatScriptFlags(unsigned int flags)
return ret.substr(0, ret.size() - 1);
}
BOOST_FIXTURE_TEST_SUITE(transaction_tests, BasicTestingSetup)
BOOST_FIXTURE_TEST_SUITE(transaction_tests, JoinSplitTestingSetup)
BOOST_AUTO_TEST_CASE(tx_valid)
{
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
// Read tests from test/data/tx_valid.json
// Format is an array of arrays
// Inner arrays are either [ "comment" ]
@@ -98,6 +103,7 @@ BOOST_AUTO_TEST_CASE(tx_valid)
//
// verifyFlags is a comma separated list of script verification flags to apply, or "NONE"
UniValue tests = read_json(std::string(json_tests::tx_valid, json_tests::tx_valid + sizeof(json_tests::tx_valid)));
std::string comment("");
auto verifier = libzcash::ProofVerifier::Strict();
ScriptError err;
@@ -108,7 +114,7 @@ BOOST_AUTO_TEST_CASE(tx_valid)
{
if (test.size() != 3 || !test[1].isStr() || !test[2].isStr())
{
BOOST_ERROR("Bad test: " << strTest);
BOOST_ERROR("Bad test: " << strTest << comment);
continue;
}
@@ -133,7 +139,7 @@ BOOST_AUTO_TEST_CASE(tx_valid)
}
if (!fValid)
{
BOOST_ERROR("Bad test: " << strTest);
BOOST_ERROR("Bad test: " << strTest << comment);
continue;
}
@@ -143,29 +149,40 @@ BOOST_AUTO_TEST_CASE(tx_valid)
stream >> tx;
CValidationState state;
BOOST_CHECK_MESSAGE(CheckTransaction(tx, state, verifier), strTest);
BOOST_CHECK(state.IsValid());
BOOST_CHECK_MESSAGE(CheckTransaction(tx, state, verifier), strTest + comment);
BOOST_CHECK_MESSAGE(state.IsValid(), comment);
PrecomputedTransactionData txdata(tx);
for (unsigned int i = 0; i < tx.vin.size(); i++)
{
if (!mapprevOutScriptPubKeys.count(tx.vin[i].prevout))
{
BOOST_ERROR("Bad test: " << strTest);
BOOST_ERROR("Bad test: " << strTest << comment);
break;
}
CAmount amount = 0;
unsigned int verify_flags = ParseScriptFlags(test[2].get_str());
BOOST_CHECK_MESSAGE(VerifyScript(tx.vin[i].scriptSig, mapprevOutScriptPubKeys[tx.vin[i].prevout],
verify_flags, TransactionSignatureChecker(&tx, i), &err),
strTest);
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
verify_flags, TransactionSignatureChecker(&tx, i, amount, txdata), consensusBranchId, &err),
strTest + comment);
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err) + comment);
}
comment = "";
}
else if (test.size() == 1)
{
comment += "\n# ";
comment += test[0].write();
}
}
}
BOOST_AUTO_TEST_CASE(tx_invalid)
{
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
// Read tests from test/data/tx_invalid.json
// Format is an array of arrays
// Inner arrays are either [ "comment" ]
@@ -174,6 +191,7 @@ BOOST_AUTO_TEST_CASE(tx_invalid)
//
// verifyFlags is a comma separated list of script verification flags to apply, or "NONE"
UniValue tests = read_json(std::string(json_tests::tx_invalid, json_tests::tx_invalid + sizeof(json_tests::tx_invalid)));
std::string comment("");
auto verifier = libzcash::ProofVerifier::Strict();
ScriptError err;
@@ -184,7 +202,7 @@ BOOST_AUTO_TEST_CASE(tx_invalid)
{
if (test.size() != 3 || !test[1].isStr() || !test[2].isStr())
{
BOOST_ERROR("Bad test: " << strTest);
BOOST_ERROR("Bad test: " << strTest << comment);
continue;
}
@@ -209,7 +227,7 @@ BOOST_AUTO_TEST_CASE(tx_invalid)
}
if (!fValid)
{
BOOST_ERROR("Bad test: " << strTest);
BOOST_ERROR("Bad test: " << strTest << comment);
continue;
}
@@ -221,20 +239,29 @@ BOOST_AUTO_TEST_CASE(tx_invalid)
CValidationState state;
fValid = CheckTransaction(tx, state, verifier) && state.IsValid();
PrecomputedTransactionData txdata(tx);
for (unsigned int i = 0; i < tx.vin.size() && fValid; i++)
{
if (!mapprevOutScriptPubKeys.count(tx.vin[i].prevout))
{
BOOST_ERROR("Bad test: " << strTest);
BOOST_ERROR("Bad test: " << strTest << comment);
break;
}
unsigned int verify_flags = ParseScriptFlags(test[2].get_str());
CAmount amount = 0;
fValid = VerifyScript(tx.vin[i].scriptSig, mapprevOutScriptPubKeys[tx.vin[i].prevout],
verify_flags, TransactionSignatureChecker(&tx, i), &err);
verify_flags, TransactionSignatureChecker(&tx, i, amount, txdata), consensusBranchId, &err);
}
BOOST_CHECK_MESSAGE(!fValid, strTest);
BOOST_CHECK_MESSAGE(err != SCRIPT_ERR_OK, ScriptErrorString(err));
BOOST_CHECK_MESSAGE(!fValid, strTest + comment);
BOOST_CHECK_MESSAGE(err != SCRIPT_ERR_OK, ScriptErrorString(err) + comment);
comment = "";
}
else if (test.size() == 1)
{
comment += "\n# ";
comment += test[0].write();
}
}
}
@@ -311,9 +338,6 @@ BOOST_AUTO_TEST_CASE(test_basic_joinsplit_verification)
// Also, it's generally libzcash's job to ensure the
// integrity of the scheme through its own tests.
// construct the r1cs keypair
auto p = ZCJoinSplit::Generate();
// construct a merkle tree
ZCIncrementalMerkleTree merkleTree;
@@ -347,8 +371,8 @@ BOOST_AUTO_TEST_CASE(test_basic_joinsplit_verification)
auto verifier = libzcash::ProofVerifier::Strict();
{
JSDescription jsdesc(*p, pubKeyHash, rt, inputs, outputs, 0, 0);
BOOST_CHECK(jsdesc.Verify(*p, verifier, pubKeyHash));
JSDescription jsdesc(*pzcashParams, pubKeyHash, rt, inputs, outputs, 0, 0);
BOOST_CHECK(jsdesc.Verify(*pzcashParams, verifier, pubKeyHash));
CDataStream ss(SER_DISK, CLIENT_VERSION);
ss << jsdesc;
@@ -357,25 +381,26 @@ BOOST_AUTO_TEST_CASE(test_basic_joinsplit_verification)
ss >> jsdesc_deserialized;
BOOST_CHECK(jsdesc_deserialized == jsdesc);
BOOST_CHECK(jsdesc_deserialized.Verify(*p, verifier, pubKeyHash));
BOOST_CHECK(jsdesc_deserialized.Verify(*pzcashParams, verifier, pubKeyHash));
}
{
// Ensure that the balance equation is working.
BOOST_CHECK_THROW(JSDescription(*p, pubKeyHash, rt, inputs, outputs, 10, 0), std::invalid_argument);
BOOST_CHECK_THROW(JSDescription(*p, pubKeyHash, rt, inputs, outputs, 0, 10), std::invalid_argument);
BOOST_CHECK_THROW(JSDescription(*pzcashParams, pubKeyHash, rt, inputs, outputs, 10, 0), std::invalid_argument);
BOOST_CHECK_THROW(JSDescription(*pzcashParams, pubKeyHash, rt, inputs, outputs, 0, 10), std::invalid_argument);
}
{
// Ensure that it won't verify if the root is changed.
auto test = JSDescription(*p, pubKeyHash, rt, inputs, outputs, 0, 0);
auto test = JSDescription(*pzcashParams, pubKeyHash, rt, inputs, outputs, 0, 0);
test.anchor = GetRandHash();
BOOST_CHECK(!test.Verify(*p, verifier, pubKeyHash));
BOOST_CHECK(!test.Verify(*pzcashParams, verifier, pubKeyHash));
}
}
BOOST_AUTO_TEST_CASE(test_simple_joinsplit_invalidity)
{
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
auto verifier = libzcash::ProofVerifier::Strict();
CMutableTransaction tx;
tx.nVersion = 2;
@@ -403,13 +428,14 @@ BOOST_AUTO_TEST_CASE(test_simple_joinsplit_invalidity)
jsdesc->nullifiers[0] = GetRandHash();
jsdesc->nullifiers[1] = GetRandHash();
BOOST_CHECK(!CheckTransactionWithoutProofVerification(newTx, state));
BOOST_CHECK(CheckTransactionWithoutProofVerification(newTx, state));
BOOST_CHECK(!ContextualCheckTransaction(newTx, state, 0, 100));
BOOST_CHECK(state.GetRejectReason() == "bad-txns-invalid-joinsplit-signature");
// Empty output script.
CScript scriptCode;
CTransaction signTx(newTx);
uint256 dataToBeSigned = SignatureHash(scriptCode, signTx, NOT_AN_INPUT, SIGHASH_ALL);
uint256 dataToBeSigned = SignatureHash(scriptCode, signTx, NOT_AN_INPUT, SIGHASH_ALL, 0, consensusBranchId);
assert(crypto_sign_detached(&newTx.joinSplitSig[0], NULL,
dataToBeSigned.begin(), 32,
@@ -417,6 +443,7 @@ BOOST_AUTO_TEST_CASE(test_simple_joinsplit_invalidity)
) == 0);
BOOST_CHECK(CheckTransactionWithoutProofVerification(newTx, state));
BOOST_CHECK(ContextualCheckTransaction(newTx, state, 0, 100));
}
{
// Ensure that values within the joinsplit are well-formed.
@@ -506,6 +533,8 @@ BOOST_AUTO_TEST_CASE(test_simple_joinsplit_invalidity)
BOOST_AUTO_TEST_CASE(test_Get)
{
uint32_t consensusBranchId = SPROUT_BRANCH_ID;
CBasicKeyStore keystore;
CCoinsView coinsDummy;
CCoinsViewCache coins(&coinsDummy);
@@ -525,17 +554,99 @@ BOOST_AUTO_TEST_CASE(test_Get)
t1.vout.resize(2);
t1.vout[0].nValue = 90*CENT;
t1.vout[0].scriptPubKey << OP_1;
int64_t interest;
BOOST_CHECK(AreInputsStandard(t1, coins));
BOOST_CHECK_EQUAL(coins.GetValueIn(0,&interest,t1,0), (50+21+22)*CENT);
BOOST_CHECK(AreInputsStandard(t1, coins, consensusBranchId));
BOOST_CHECK_EQUAL(coins.GetValueIn(t1), (50+21+22)*CENT);
// Adding extra junk to the scriptSig should make it non-standard:
t1.vin[0].scriptSig << OP_11;
BOOST_CHECK(!AreInputsStandard(t1, coins));
BOOST_CHECK(!AreInputsStandard(t1, coins, consensusBranchId));
// ... as should not having enough:
t1.vin[0].scriptSig = CScript();
BOOST_CHECK(!AreInputsStandard(t1, coins));
BOOST_CHECK(!AreInputsStandard(t1, coins, consensusBranchId));
}
BOOST_AUTO_TEST_CASE(test_big_overwinter_transaction) {
uint32_t consensusBranchId = NetworkUpgradeInfo[Consensus::UPGRADE_OVERWINTER].nBranchId;
CMutableTransaction mtx;
mtx.fOverwintered = true;
mtx.nVersion = 3;
mtx.nVersionGroupId = OVERWINTER_VERSION_GROUP_ID;
CKey key;
key.MakeNewKey(false);
CBasicKeyStore keystore;
keystore.AddKeyPubKey(key, key.GetPubKey());
CKeyID hash = key.GetPubKey().GetID();
CScript scriptPubKey = GetScriptForDestination(hash);
vector<int> sigHashes;
sigHashes.push_back(SIGHASH_NONE | SIGHASH_ANYONECANPAY);
sigHashes.push_back(SIGHASH_SINGLE | SIGHASH_ANYONECANPAY);
sigHashes.push_back(SIGHASH_ALL | SIGHASH_ANYONECANPAY);
sigHashes.push_back(SIGHASH_NONE);
sigHashes.push_back(SIGHASH_SINGLE);
sigHashes.push_back(SIGHASH_ALL);
// create a big transaction of 4500 inputs signed by the same key
for(uint32_t ij = 0; ij < 4500; ij++) {
uint32_t i = mtx.vin.size();
uint256 prevId;
prevId.SetHex("0000000000000000000000000000000000000000000000000000000000000100");
COutPoint outpoint(prevId, i);
mtx.vin.resize(mtx.vin.size() + 1);
mtx.vin[i].prevout = outpoint;
mtx.vin[i].scriptSig = CScript();
mtx.vout.resize(mtx.vout.size() + 1);
mtx.vout[i].nValue = 1000;
mtx.vout[i].scriptPubKey = CScript() << OP_1;
}
// sign all inputs
for(uint32_t i = 0; i < mtx.vin.size(); i++) {
bool hashSigned = SignSignature(keystore, scriptPubKey, mtx, i, 1000, sigHashes.at(i % sigHashes.size()), consensusBranchId);
assert(hashSigned);
}
CTransaction tx;
CDataStream ssout(SER_NETWORK, PROTOCOL_VERSION);
ssout << mtx;
ssout >> tx;
// check all inputs concurrently, with the cache
PrecomputedTransactionData txdata(tx);
boost::thread_group threadGroup;
CCheckQueue<CScriptCheck> scriptcheckqueue(128);
CCheckQueueControl<CScriptCheck> control(&scriptcheckqueue);
for (int i=0; i<20; i++)
threadGroup.create_thread(boost::bind(&CCheckQueue<CScriptCheck>::Thread, boost::ref(scriptcheckqueue)));
CCoins coins;
coins.nVersion = 1;
coins.fCoinBase = false;
for(uint32_t i = 0; i < mtx.vin.size(); i++) {
CTxOut txout;
txout.nValue = 1000;
txout.scriptPubKey = scriptPubKey;
coins.vout.push_back(txout);
}
for(uint32_t i = 0; i < mtx.vin.size(); i++) {
std::vector<CScriptCheck> vChecks;
CScriptCheck check(coins, tx, i, SCRIPT_VERIFY_P2SH, false, consensusBranchId, &txdata);
vChecks.push_back(CScriptCheck());
check.swap(vChecks.back());
control.Add(vChecks);
}
bool controlCheck = control.Wait();
assert(controlCheck);
threadGroup.interrupt_all();
threadGroup.join_all();
}
BOOST_AUTO_TEST_CASE(test_IsStandard)