working test_witness_json prototype

This commit is contained in:
andri lim 2020-05-08 12:16:24 +07:00
parent 3cfabeeb3d
commit 758ebabd87
No known key found for this signature in database
GPG Key ID: 31702AE10541E6B9
12 changed files with 3887 additions and 52 deletions

View File

@ -1,28 +0,0 @@
{
"version": "0x01",
"metadata": "0x00",
"rootHash": "0x3351528d9bc2a80f8a7f723c20f17149972e3f52ba016f6b4bafc999c56754f2",
"error": false,
"tree": [
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x40",
"nibbles": "0xfbd9428c5938814d24d63030b68031f1c84f54d725cd3e75fb469dd771308c0c",
"address": "0xecd2a78a540f09d7ea17f60fa0400b3bead91c03",
"balance": "0x1b20fa477e39fd4e558cc223a002babdace335d0f1678dbf6744f6172da84bf2",
"nonce": "0x000000000000000000000000000000000000000000000000f4871685648221cd",
"codeHash": {
"nodeType": "0x03",
"data": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470"
},
"codeLen": "0x000000000",
"storageRoot": {
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
},
"debugDepth": "0x00",
"debugHash": "0x3351528d9bc2a80f8a7f723c20f17149972e3f52ba016f6b4bafc999c56754f2"
}
]
}

View File

@ -0,0 +1,27 @@
{
"version": "0x01",
"metadata": "0x00",
"rootHash": "0xb629598af09d10fde456989823c057fd43f3e1bdb89edf2fb03db28e3db2e7e6",
"error": false,
"tree": [
{
"nodeType": "0x02",
"accountType": "0x01",
"nibblesLen": "0x40",
"nibbles": "0xa07af6d1916daa43b026a3ed4dd13ede4bb6564c533079f656a1914977f53b20",
"address": "0x4105c32aa5078e4c5a5cdc3963191cd6742f89a6",
"balance": "0x76c2193f6e05e17d5e57ea46ac608248bf517ee093cdfc4b23a92bbf4a1198de",
"nonce": "0x000000000000000000000000000000000000000000000000fd3a49b23e5c4d37",
"codeLen": "0x00000065",
"code": "0x70a92f12189c6d8a3d42aa6d43fed21c096611ddfec2712d1ccad9bb3025f52c1d3a2c698c54aa620c535c23cfff68adab866d3db0c4eeec6a3bc3cddbb2f0d2526a89b0e216c031bd7e79d3d92aa48aaa7d918130d6170c0097eab79a8a0a865f35ad7996",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x00",
"debugHash": "0xb629598af09d10fde456989823c057fd43f3e1bdb89edf2fb03db28e3db2e7e6"
}
]
}

View File

@ -0,0 +1,19 @@
{
"version": "0x01",
"metadata": "0x00",
"rootHash": "0x2cb26cf92076431e8549bdad4c81cfb37134cfcea04c3618bfb053e0278f84d4",
"error": false,
"tree": [
{
"nodeType": "0x02",
"accountType": "0x00",
"nibblesLen": "0x40",
"nibbles": "0x5a8c577c20f79ce03b2ee5755d3c933cb066d1fd7a34da5da38ae442307d00ce",
"address": "0xa18c851c300dc383bc1b4617e329e06c0de4a0dd",
"balance": "0x918bfb1039de884aa3360be3e7aaf2cd8532e58325079a976182f696ce2a747f",
"nonce": "0x000000000000000000000000000000000000000000000000c4568a0c22badf95",
"debugDepth": "0x00",
"debugHash": "0x2cb26cf92076431e8549bdad4c81cfb37134cfcea04c3618bfb053e0278f84d4"
}
]
}

View File

@ -0,0 +1,30 @@
{
"version": "0x01",
"metadata": "0x00",
"rootHash": "0x7606196682dd424ec6eefb69e61e876066caacc128c5512781f8a99ccd31466e",
"error": false,
"tree": [
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x40",
"nibbles": "0x04189264d135c92ef0a3f28012ac29fd1606b207ad1dc20a6e7cb94f020aa851",
"address": "0x44ae06bf1d2c4ec0d1b32f5c231817acffafff3a",
"balance": "0x88e7daf3c42e645edc66102f736e1f411a59ceeaef060384800471cdb7924b64",
"nonce": "0x00000000000000000000000000000000000000000000000071f4ab8ce322bf60",
"codeHash": {
"nodeType": "0x03",
"data": "0x5472554f2f4e2e3939fed9720dcaff5f8e4359e5ee8a6376e42bb94218449710"
},
"codeLen": "0x00000031",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x00",
"debugHash": "0x7606196682dd424ec6eefb69e61e876066caacc128c5512781f8a99ccd31466e"
}
]
}

View File

@ -1,31 +1,26 @@
{
"version": "0x01",
"metadata": "0x00",
"rootHash": "0x2af20e6d155f062f13319df2522dc1b19706166c572fff568f7afcfe50d421f7",
"rootHash": "0x6b7a89f83333a21042df2fbeed69f85800278b3c9a02af68b9c31e19808bf505",
"error": false,
"tree": [
{
"nodeType": "0x02",
"accountType": "0x01",
"nibblesLen": "0x40",
"nibbles": "0x779891bdc86c2bdf66c3f02e1739f844b59aeaaced042c9d8b11aca1efc6f990",
"address": "0xe1a66344fefd992aba54d642abb46043884d7d8b",
"balance": "0xaec8cd0040b3f805e16dc0e4340a7134f32e0186262252a190c214bc3ea970a7",
"nonce": "0x00000000000000000000000000000000000000000000000018a122e48d24b58e",
"codeLen": "0x000000000",
"nibbles": "0x6acb512a5750d737c3ab7d040617934b15e0b5874e2e5fe976ed87498e53c430",
"address": "0x02c391005fb75ad7c7bfdd17514257918c9408ef",
"balance": "0x1da1cbddf6d6f1881a3b4425729c28f2376140aa0cb5c6f053c19f4423873191",
"nonce": "0x0000000000000000000000000000000000000000000000008efea63d92fe33cf",
"codeLen": "0x00000000",
"storage": [
{
"nodeType": "0x02",
"nibblesLen": "0x40",
"nibbles": "0x038bd7229bd983fb7bc1c47da7fede25c018488803828f1b76c1bb586e87d15c",
"key": "0x3e4ba4c3e4e0faed0e2990176fb877b6a9552220313bd7b39f17a52b0bf9f6a6",
"value": "0x7cd9fb303af52a9080c1a07a4a64324e812b9d0c9dc03812933baa07083109ad",
"debugDepth": "0x00",
"debugHash": "0x87201020c1cab91a289a28afd098cdf6097050e5f32193ca404055abdb182a53"
"nodeType": "0x03",
"data": "0xba3718b0e569473fe0738a3b9002d9f98a0bc006e32c3b9169c41d8aefa98389"
}
],
"debugDepth": "0x00",
"debugHash": "0x2af20e6d155f062f13319df2522dc1b19706166c572fff568f7afcfe50d421f7"
"debugHash": "0x6b7a89f83333a21042df2fbeed69f85800278b3c9a02af68b9c31e19808bf505"
}
]
}

View File

@ -0,0 +1,368 @@
{
"version": "0x01",
"metadata": "0x00",
"rootHash": "0x1339b5d780ff5c4713b6a6d38faf4448cf5afd4b616ffe3c88d15f38d2c575ac",
"error": false,
"tree": [
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x40",
"nibbles": "0xa57728d9ff180513d0f4a43a19487dc761e3a1a855a8ebf69a2539a0701feae6",
"address": "0x8a2dd1126fcff91b18f4a4c39d44d5dbc67c39fc",
"balance": "0x3112cc29335cf1b5f3c06a4931b324b36d4968e52aecbbe757dd2d972a876f00",
"nonce": "0x0000000000000000000000000000000000000000000000000e428f438a0c77af",
"codeHash": {
"nodeType": "0x03",
"data": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470"
},
"codeLen": "0x00000000",
"storage": [
{
"nodeType": "0x00",
"mask": "0xF775",
"debugDepth": "0x00",
"debugHash": "0xd6b117fadf28c9270701aed45935300890d9ad9e49f9e357f7f3b507ea6a9720"
},
{
"nodeType": "0x00",
"mask": "0x0060",
"debugDepth": "0x01",
"debugHash": "0x38aa0f0b22bc6f5a56493334f8e45ccc8a9b1af635db4aae2eb1e74e259c6d53"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x670ec6cb145c744027c61392367a6295d103b422dd59736cdfce88b02a10fc",
"key": "0xd47303578066f85f494628ecbbdbfce93934b0c88b57000ef475d5a932e0e614",
"value": "0x1d10ff79b7b0669088fa516d4231b5768cde9e5331852fe19175473e647afd02",
"debugDepth": "0x02",
"debugHash": "0x4d236fe1cf06227aaa78d93391635312f08c0b175a946902fc280aeffc12a72d"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x36ee270a10f395a3ba43efc7a6fe7beca941b22423a36fd13aa435161eb9df",
"key": "0x51a2287382f8ac3a56ae9836ba516a8960b1684b7445e6e0f88f0382855dff46",
"value": "0xfe3bd104e8ba40ffce7fe51f8bd0055b8eb4e223a9e160526c43165647dc84ac",
"debugDepth": "0x02",
"debugHash": "0x2f6c0056e0133db054d02978bdf777484f2d4c095e0e1470e8751f6ddc2700fd"
},
{
"nodeType": "0x00",
"mask": "0x88A4",
"debugDepth": "0x01",
"debugHash": "0xb0010cee8b764bf1de83ff22402f50467e915982eb23a70f11dff5d34c9fc6d3"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0xb1123325eff75f1b1068bff50b94305d0b41a46b362ce68e667539ed2836bf",
"key": "0x805e8ae7acddfc2e458dd7635fa4b56c86889163334b37032607315d0ca7a6e9",
"value": "0x7471c619144edeeca438052ce4d5f9229dd71f02e7135898fda4035421d935e7",
"debugDepth": "0x02",
"debugHash": "0xaf87d5710f7a6e22a42de8d5acb887c81ff3ae048caf4a5a4e7ce221fa1fde55"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x15af5858ac6d05f3d8be1ea71b2f6fa30efc8c16b19fc7d286d589bd66af80",
"key": "0x05d8aa012a701b4efd4efb4c120519f163952b90e21340c6ef1173fe956ddef4",
"value": "0xc1720d16624c82fd76a363fc18bc4c87d7e565031ced6ec1820b6578a0f4c81c",
"debugDepth": "0x02",
"debugHash": "0x8e14a0921e13c2a523b6df04c37021a871b44c467d4830dda68f3ae07ee25d21"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x66aaf0c3b22227acc68b729c59cdbf683c277bb7af3a707f8f585b40874ff3",
"key": "0x9a019ba831a4c0210320bf1889028db5ae90b7bd11ab10dc4a3ddde8ee84d14c",
"value": "0xc683ade70bffc7ef21fd8551307e5b20fce6bfd9711ec075b3f1c96d41033152",
"debugDepth": "0x02",
"debugHash": "0x487bf79cb03594d96cf2e8a04d9e6fa8b851c32a803103b378b5c709e419b39f"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x23e0151c7fcb23426f2da041d4f6019c6f6eb13c1499ecc50194710891a7e6",
"key": "0xe5f78889ca7f3dbfe969d8a7a010aa6295633d8a48b230656dfd8d66920fc1ea",
"value": "0x95a04bb13a597ff974c4a29cdb75247e23cc8edbd22675e552dbf5af98e40202",
"debugDepth": "0x02",
"debugHash": "0x888b26ca068a203d42cc03a5f1abdc05318ce1b9c60a10f9e26beb8c2ef1d556"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x92133c50c4750f77d1919381bbac96d3d6b547a04fbfc491f2a09acf5341f7",
"key": "0x0362fc5636f51d7d599e38b03c04335ee4f25ff3a57836770ec15aef3c5b1dc6",
"value": "0xc1a218145629baa10e8e240bf441b885b07334b2524385832af163453ef2a579",
"debugDepth": "0x02",
"debugHash": "0xaee90a9ec4acbd77c9994392ab04bcdb5c3948e9fb7db0dc4f28a68ca1dd41c4"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3F",
"nibbles": "0x492c255d77b7c939c4ac0d4e7e454a6097a7069e4dbe8b64a09ede2ff2946090",
"key": "0xb399be595c10390baec326c817989157fba6a9a79b2f3353932145282e4fca2b",
"value": "0xd8f3398e619934b608690ca8a2c28f1ac6640c8b8ad62ad4cc8f3414ceb33d53",
"debugDepth": "0x01",
"debugHash": "0x9b08aa2850104aef77f08ad2b762f8f4ae6a9befaadf533fde71bbeb73810397"
},
{
"nodeType": "0x00",
"mask": "0x4100",
"debugDepth": "0x01",
"debugHash": "0x6bbb61d3afb91adc479f566515a528f957a363c98988ebc4553811486a11a5e8"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0xa859d85f4d223a3358edd3556de6d301310926ac690c4d13dceaaa15b05b17",
"key": "0xfedf29d1f7ff6065f56a548c7da12a6b4ee2cd6b088940b32a82bbb1b6ff395d",
"value": "0xb47d2ae9ab9971ab268cc111f0fac015b66def89fa91b44d077af6cc18b1b948",
"debugDepth": "0x02",
"debugHash": "0x0d1348b49bd2189cff90ac7482ffb5f448ff67a4b5ee4ea52fa6cd243183d6fc"
},
{
"nodeType": "0x00",
"mask": "0x0092",
"debugDepth": "0x02",
"debugHash": "0x63d2a41df24fd6273e1af812dd9b63714916ee77c9992c1ca530892099361af6"
},
{
"nodeType": "0x00",
"mask": "0x4080",
"debugDepth": "0x03",
"debugHash": "0x57916fd66b5b9034e6cbdb1e372581d9a4424f354001bdce453609f74f8e8154"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3C",
"nibbles": "0xe51ecd3ca9d839e76cecb1899605d9823042d0c7e952677889d60c85a470",
"key": "0x173418876815874e12e0cf64ee8e715fa50206e3701b609d7492794c4ccd5ccf",
"value": "0x278583f4b39f083e342a4fb9e73f5e960574cc3d169f8dba489323b096846c46",
"debugDepth": "0x04",
"debugHash": "0xf2da2f0f6a12c2608cf9e0f74aeb1c810fbb78333dfd693998e283bbf0b2d9e7"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3C",
"nibbles": "0x058b46b73db3148a9a602ca3ca61c84ae6910ff52dee0a6a8496847b06d5",
"key": "0x0f26d7f25a28e42c0dccb25ffe80b8b5809c959b3569c3846cff92fcb0c9fe78",
"value": "0x4565d0128407097f6501663f4d4dcbc5dda8de6d0f94e011fc5047fadd0a0300",
"debugDepth": "0x04",
"debugHash": "0xe2522da28a84aaeb27559b46ae11a0178aab3d037fe0afeb8c841cf4c67e3f18"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3D",
"nibbles": "0x0b5dbc85adfa492866bba900002898da8bc62c304741a9c6f5a86197a48dd0",
"key": "0x6bf8a2cfb8a1145e1f15bfaba4bed473c587e83c5ea9b4c301ad377ca34eba5b",
"value": "0xca4a36a0492a335c3e8c514fe22636ddafeeda2dbf165d1e5eceb5bfb3829c64",
"debugDepth": "0x03",
"debugHash": "0x98ea9a4289c03dd2e159425974fbcd33ff7d0dc5a8a7fce3cd7560f866d7f2bd"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3D",
"nibbles": "0x1d8579629c13701a44923e49f90bfa26f68e945794cbba0a786440996a4f90",
"key": "0x339db4aef12c6c97fcf9c0b6b15b311fab3e3f3e20638bee68b240a69e2f8adb",
"value": "0x0281eba07ad0a496b31ee78cdfb31e288e62955a863c571a1427a0c1c2a95fd9",
"debugDepth": "0x03",
"debugHash": "0x69d5b64fe7d673dbbcdf19dbaaae6cfb82c2757be0493647645f28ad7ffaf37a"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3F",
"nibbles": "0x38569ce15d242a83b80dc88dcc23d9f992546f3937aaa1d5647b4d764ba40550",
"key": "0xd1c1388e9002ace271300b3be4d770e019f1111e893f1b9584687e63cc2c5a17",
"value": "0xef019bf1216665c77c65b2340d8c15ffaed389986a93cf9b93ab27c73ef3321e",
"debugDepth": "0x01",
"debugHash": "0x2ee61de4a374d6e41db18773574381184e82c23aced8c2f0300de22ffb556cd4"
},
{
"nodeType": "0x00",
"mask": "0x6080",
"debugDepth": "0x01",
"debugHash": "0x8edad43d497090bad60736a22ee2392157e329006155e2310b78d0a54dcba5ce"
},
{
"nodeType": "0x00",
"mask": "0x3000",
"debugDepth": "0x02",
"debugHash": "0x307fc7ba651c35a1fa257d978e0841bf5399226fb81dc1e06483cc9be829e4e1"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3D",
"nibbles": "0xcadb4169ff5ce8ae9b4ca06179e2502aaf828313cb0013f6e914c38d3d9bd0",
"key": "0x8ffe8b9343b6bc02f514f476b13628f38534e92ac97ded5276facc4f4cfa8250",
"value": "0x0a9d9838420e37b10ad52beb5be1559c1bcb2f093f234397a5e654c69bb9f190",
"debugDepth": "0x03",
"debugHash": "0x0341fc421bc0a7589bdfc068a4ade59bc6f186b3c438e24c646426aab179f854"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3D",
"nibbles": "0x97605b517295134624827074186b88ad216329a24a6021faa56f590e2e4620",
"key": "0xec2dc7abea0ed2bf9fb0658b3bab68271e4497a88641a96ce105ae55ac4ea49a",
"value": "0x8aa06378b75cef01014f24059c69352d306acd08dacf06665ee72ee718dc2d6c",
"debugDepth": "0x03",
"debugHash": "0x92789930301fb213ab4f6042f4f2e7a3ee3b5afba225abce7696e99af2c63ff7"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0xb88bca75c3618c9c09965bdbd9b51e1d9b5ba88681302b8b2bbff74e6ff4a4",
"key": "0xd8aeab934633fd7e3e450f14bd872460083d1de3c77646b90be32b185ff281f7",
"value": "0xb4be3be2bfb96e126a6f93aa3ea0a52d51e60438fa0e7d9659070ecacdf7af8e",
"debugDepth": "0x02",
"debugHash": "0xd181c045e343efc64cac28c95177c12008d28ececbbd89efc8b11a86768017f8"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0xfdecc844a495ac72a2deb78001aab6396cc1336ec686fe4e1d43af94f49766",
"key": "0x295746206953cbbab7ea0b19a4b44833cc0355715a2f70ec23106cb2683c250d",
"value": "0xdcaf2a863256a392a5d3033b3df492f6ef0d13b4ce87e443cc04b9f27af8f9e9",
"debugDepth": "0x02",
"debugHash": "0x51f8ced73dfae44084e80177da9e2c64a2851393f67ddafbff3f5135ac1685f2"
},
{
"nodeType": "0x00",
"mask": "0x1800",
"debugDepth": "0x01",
"debugHash": "0x9e79a6c3e231c1f73238c630882f0598fe3a2494b1be9fb01a4c70f3d99534d9"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x717b9e72c9f6e1fe46a73fb9ece0486c5c315e4312d89daabaa8f56679a505",
"key": "0x24b3cfaa33689e2c5d6ba7f8c745079a6e970b853626ffd3ff6e9becaaf8c4ed",
"value": "0xffbe98e3216fad147196eef602efd204edd66b29905a6c3c0715d4b0ac870953",
"debugDepth": "0x02",
"debugHash": "0xbe2e89feda819f370ee9c38800b7a9f204f22493eaa3b94165134bfd47630ee4"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x7a47a87a25fe4036884f4617fc08b10ce31de4519cbb697ecabc6b20a9a6cd",
"key": "0x965383b1aac06662174f12a830c8450d1720c990abc9e84f03e0c8cb7d302ace",
"value": "0x39c6d0dc737d09851cc33457173ad226bc2e2a6c48652640dc58c8688499517c",
"debugDepth": "0x02",
"debugHash": "0xb4691deec34163d079adee1f7b7352081b394835a4b64a9d071407c7c2280dd6"
},
{
"nodeType": "0x00",
"mask": "0xB010",
"debugDepth": "0x01",
"debugHash": "0x87a9e46802cc57d7e0fb9a446c206f878184edfcb4fd65f1098cec0ee4e3cbb0"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0xf1c64c60a7378e7ff606ec7b0bc9478fab2aa8a6997716a0a2ae70b71fc1a7",
"key": "0x679e6657894cd6490e4b1e324e432b2e0503926425e9c2366008d96af1ae8107",
"value": "0x00b8a87b3ecd85957e4d838db426cc071d3eade358facecd1007d8b50f4e5ec4",
"debugDepth": "0x02",
"debugHash": "0xdab2d5f2c4f5655ed4c5999577fd91e1abaa12fa8f16ee2775d3ccbed7b1050a"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x6ee282483aa94e5bfad3a454bbce74252ace5047ab53510d048a6fbeabe246",
"key": "0xe9a7a5de344d9613bbd89869bec0ef5ecf27da5d25fb4798e87ac536093f0219",
"value": "0xa00f88b6abd0b009bd7588276c20ff7c022f5f262fa94b101af23e4568c71d77",
"debugDepth": "0x02",
"debugHash": "0xc3d0a14d3586743c0e46934eceeeb27fa318278d8fd3c73353bdf03228d4ffd0"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0xe083b63a7e214b9332a0425184a1fff969a41b8b3d7ad722788560ec3ddb6e",
"key": "0x4ae89c3f9baf604b2a7577e2fb777234eceaef38a2e1d9c43f31a285860dd7ae",
"value": "0x2e941e13d3e10058b9a51c55a5dede81503bf251fe88c998e4773a7cd2444210",
"debugDepth": "0x02",
"debugHash": "0x9618fa5b387166dac0c5730072df1c6c049a3377409d3f73f12545af5de679cb"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x48c88b69e4b28061ab6ef96e3deb32ee2baeef3d95d60182af3282c011a73c",
"key": "0xca91b36bc6f1dbc05de1c192d295a1ec0b63e5aa242e938500fbd5e22a1d79d7",
"value": "0x71c624a3514d58477cf2d7de820e86aaab76801bfb5efa33c0f0a8dc5c93540d",
"debugDepth": "0x02",
"debugHash": "0x3fa774bb0791206032f45e46bb3ddbe0469af43c3bcb34f50e967f691b631024"
},
{
"nodeType": "0x00",
"mask": "0x0204",
"debugDepth": "0x01",
"debugHash": "0xdd5c358287de72f92177c363b4168138c8c1065876b9ec86edfaaf7fab52a29e"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x6cafca256c143fc834bdaaa2bef8ba11524017ef21a5f6f14627fe358c0199",
"key": "0x2d8f35e61403a3cdb3a500ecc8ba7f38ed131bf9332e489acfbea7a526ed2998",
"value": "0x55dfa122dcb9ec9a355dccd5ad980eef647997f0c8d8416b3ad3a5c1f73aeee8",
"debugDepth": "0x02",
"debugHash": "0xd92bc164e7a3cf5706b86f69234939490c3380a2fba47fd40c806c49bf196c2a"
},
{
"nodeType": "0x00",
"mask": "0x2800",
"debugDepth": "0x02",
"debugHash": "0xea45093605710f0f3caecfbccf866604b6f9f4d4b6aff15401a81b3e8028d81e"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3D",
"nibbles": "0x62fcb48dad8fde60aa65c56fcde7f42d29ab0f26ffc65d6ebafce1a599d230",
"key": "0x39d9e036e274a15b9b3995e5abeaacff6a16ecc6a7cdac267bdd68ff30f4fe92",
"value": "0x29281a7408424d86a1d03d34944c41c7119568957bb83368e4943b19da821639",
"debugDepth": "0x03",
"debugHash": "0x3a372e5dcca1838848d69daae87e0e600b0ee93d91e3353aaac5cca660b4ea8f"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3D",
"nibbles": "0x2c77fe45326219bc001b2289094ff91cf31b54cd094e088724ae86ec422710",
"key": "0x86c484bd02cd510673437bad7e1311476357cf79c22aa39940aa346bbe422c82",
"value": "0x9cff6938b49d23ad4aafcc1287a1dc4b92a4ae6d8b2a19e2eb2dbf69cb832c6f",
"debugDepth": "0x03",
"debugHash": "0xc8453e3fedf4a978147c46c3cf79e948578c65d5cfc8c383bfd961c6c406537b"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3F",
"nibbles": "0x85a7bf6131d98e5ff192f2de020362355d25eca26ad7cd0a102a2d0b75e539f0",
"key": "0xeb1447a26ff7a6774c0829023d035a00c5692a5a3f2674b5fdcb8cf7dff1f076",
"value": "0x7f66777ee81441a2e40f8f63bbdce7212efea7e71c0a1822029cf242dd76a83c",
"debugDepth": "0x01",
"debugHash": "0x5506f096d6aad311f63c3859ca99914add436af18b5d8548fdf71d5f10634eb5"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3F",
"nibbles": "0xc03a5a73bf46960cf0faf50744a498bb3f859030474126168938a6a34accb690",
"key": "0x5d3d053e01934e396430f5acbbc02a830386535c0a9bd703c8af6433b31c66ba",
"value": "0x3f7cd3b23789334d059c04e73dba087e308df6290b027d6362975e70383da845",
"debugDepth": "0x01",
"debugHash": "0x4bf8c9b2c727abc65fa1c7da36af8f729ef3724996a4c047fdbbe989fdc84cae"
},
{
"nodeType": "0x02",
"nibblesLen": "0x3F",
"nibbles": "0xa8b7f66172e2fb3a7280af6fd79a568396ba20ceb096c7ccd6cde239f00ffa50",
"key": "0x4eeae1d7c640f79f8eb64db23114e1b02295937597216e317016a16066f0a7ae",
"value": "0x20dff778776c5a927feb12c2fdb789fc1e2e61059cf84cdec2d39c83858892fe",
"debugDepth": "0x01",
"debugHash": "0xd25c39394a76913e380c010e4816b6fa1442e27d7323de9b5388bbc538b7b203"
}
],
"debugDepth": "0x00",
"debugHash": "0x1339b5d780ff5c4713b6a6d38faf4448cf5afd4b616ffe3c88d15f38d2c575ac"
}
]
}

View File

@ -0,0 +1,630 @@
{
"version": "0x01",
"metadata": "0x00",
"rootHash": "0x33ab08b27c4e481586bdedb4a9ce49dd58c2cafae01d876f7916e4dac7580228",
"error": false,
"tree": [
{
"nodeType": "0x00",
"mask": "0xEFFA",
"debugDepth": "0x00",
"debugHash": "0x33ab08b27c4e481586bdedb4a9ce49dd58c2cafae01d876f7916e4dac7580228"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3F",
"nibbles": "0x50917b30ccc2fe4514748ff36f56cc7e9fd6ee58b30c123c7490145c0b558450",
"address": "0xbd18f5b00d7356ec4668d8023a42ebe7c1b5c45d",
"balance": "0xaf438892e5541b99b47d934f71356b59f507c5c1ac7f188fb2a2d4021d1dc1d3",
"nonce": "0x0000000000000000000000000000000000000000000000005ff06a504991ad39",
"codeHash": {
"nodeType": "0x03",
"data": "0xb70b054f6e7e87fe30ec6b0a082984b448157e04f5e1b6855ecb0290975ea1dc"
},
"codeLen": "0x00000024",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x01",
"debugHash": "0x1a408f6d5b218a89bc4f34effe5922e84ff034b87cab3cf3850adb72583d1fc2"
},
{
"nodeType": "0x00",
"mask": "0x0044",
"debugDepth": "0x01",
"debugHash": "0x859ee667e5324accddc05e207a752e6434416f3071b76b2c56c9031ec4846f43"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0xa6f9fd2a4bf2e3524e9b1ba2aa6465999b8dd980e92bccf04abdeac3dedbad",
"address": "0xcb8137818b2815b061db70d16336676828049463",
"balance": "0x465c956e5ed65a2b437d1f3a16ffd878945bb92d0c7e08e7f31a4ca06af644ae",
"nonce": "0x00000000000000000000000000000000000000000000000032c893507f54a253",
"codeHash": {
"nodeType": "0x03",
"data": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470"
},
"codeLen": "0x00000000",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0xa3d6ad96683394495619e010f0fcc9fb51e765666209a7bc8e8267067672708c"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0xf2c51c0dcff6af94072475f192ad0ffc6afb8a1dc5e5f7213687f2317ca3c7",
"address": "0x21969343e6db5a4de7e64819d40f132bbf9daa41",
"balance": "0x3fb0bacc5d560fe6638315a1ca612b529f7c03dbfcbe62d0307595fadc24eab5",
"nonce": "0x0000000000000000000000000000000000000000000000001a364673a996e4be",
"codeHash": {
"nodeType": "0x03",
"data": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470"
},
"codeLen": "0x00000000",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0x0ffe84bfbe0d6d1d3cf54ff82260e4295166cf9ea6fff807e002d99e8e36796e"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3F",
"nibbles": "0xf366db1cd3c6295c23c1479c5d42f3f9aecaaa9ed5ea3a5957327690d62e62b0",
"address": "0xac68dcfdd88b953d9cbb1e868fd06899a0acb7c4",
"balance": "0x32e58ab2d20a6fe5176d2c8af8e039eec6fac3c6292d358f1d7659587a99d798",
"nonce": "0x000000000000000000000000000000000000000000000000f3f69e1544e903d5",
"codeHash": {
"nodeType": "0x03",
"data": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470"
},
"codeLen": "0x00000000",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x01",
"debugHash": "0x038f42ab3523495b5f5d007c79e2d787f1c73260663270fe9af5e835f44423dc"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3F",
"nibbles": "0x5c2b78e50db91990b3815ddedc6b5f41e8694ba638d045a960008e7c2cf732a0",
"address": "0x4cf50aa9656ed022a487076b65a2cdbe7708c691",
"balance": "0x34fb938aab1b8ecf716a70831b08b75d27cd63db26f01944ed69af164be41106",
"nonce": "0x0000000000000000000000000000000000000000000000009fcded31b0abe602",
"codeHash": {
"nodeType": "0x03",
"data": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470"
},
"codeLen": "0x00000000",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x01",
"debugHash": "0xb25dc179bc8acecc614f3b06e3e04874cebe0741568229a196ada12396c91f05"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3F",
"nibbles": "0x474d595e53aeff09a17aed2a78ce269a4367c6beca46fd6603d2dcedad88d930",
"address": "0x44ec24c3284ea17787d3bf48d792653b59f1f1e5",
"balance": "0x24b37a8a65c46c819951bb71cffa933f78f1933c52c12a52feb03e39c822d405",
"nonce": "0x00000000000000000000000000000000000000000000000015f6d7d02500bd62",
"codeHash": {
"nodeType": "0x03",
"data": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470"
},
"codeLen": "0x00000000",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x01",
"debugHash": "0x03522e7be57615ecbf4b99be35204d2da9282717fc0f75172ad2b9cd82b56566"
},
{
"nodeType": "0x02",
"accountType": "0x00",
"nibblesLen": "0x3F",
"nibbles": "0x4cf3b6c855a4df3556b22bc6e32734f30581ec912904b8a85f2f68144b7dd2c0",
"address": "0xdace27b32bfd1448c1d0babfa857ee03b612205a",
"balance": "0x2eb87328b7cad0f6880275c03f3be52cac66e4a29c60d9aa38063fbf701ebcf3",
"nonce": "0x000000000000000000000000000000000000000000000000498c2ecb4e61acb8",
"debugDepth": "0x01",
"debugHash": "0xda18555896116c7e0349358cc54b6fe3d9629b5b472ce4dcfdcf2dbbddab9419"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3F",
"nibbles": "0x51c116bd7ce99bb83a965ce473b1d4a49883f2c10ae503eeadf1776866d22580",
"address": "0x6f57c4e9cc210a0d58665d13de26584e1c575521",
"balance": "0x4ba06cc5944b1f3be8bbdd9bd33728d572d2203c88edb071796c59e7fe4140db",
"nonce": "0x000000000000000000000000000000000000000000000000f0a8e1741eafc2b3",
"codeHash": {
"nodeType": "0x03",
"data": "0xbea52d3e1eec728ace8471598d267be569f975c9774f0089d5d0bb5599ea48a7"
},
"codeLen": "0x00000086",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x01",
"debugHash": "0x5d8df2a76c49dc0c13a5c2eef574ed578dbc2d04edc22a58d264459b91125293"
},
{
"nodeType": "0x00",
"mask": "0x8444",
"debugDepth": "0x01",
"debugHash": "0xe40d0be6259bc8c56e1af344d3b3003d7547a3046e95fd4b06e86a2803c20cb1"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x30fa6db60fb6747667f256165435321c583473b858ac6c72bed9d77cc1c653",
"address": "0x5b9dfbf41e8a6282e87072d14503f72951a1cd68",
"balance": "0x1919498c9878362f95f33f943af6a4592c7b25118e4a5315262b4a320cbbec3f",
"nonce": "0x000000000000000000000000000000000000000000000000e7ae7ffab34d65a8",
"codeHash": {
"nodeType": "0x03",
"data": "0x8ebdbfa384e5d516ff0ce37c0d00a8c9dec4c12fdb79caca43dba923a1649082"
},
"codeLen": "0x00000015",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0x8888110b7a04a0ab191b80bb60b42f4b86facf6401cd315d84c37300ba9deff3"
},
{
"nodeType": "0x02",
"accountType": "0x01",
"nibblesLen": "0x3E",
"nibbles": "0x1e4cd52a51ccb5faff13808bcc653192c25ffda77de8f1e8e37842a99a6802",
"address": "0x504d8b02705b8f00e1de1f7b5c43d8e384bace30",
"balance": "0xb0bde0adc91726d59d4007543d8ec27571ae4fd0ad413beb8e62c63c451d6805",
"nonce": "0x00000000000000000000000000000000000000000000000009f8a98eb93d6c49",
"codeLen": "0x00000071",
"code": "0x6082dee0c4e43955f41b5d54fbef20edae2e441fd57cf47195ad350ade2f32c8050124cc8e32e09dc309e7017e7730db3a2d84ff092fad7491a942d8809262da884b82f2a310228d42ef20089a70d55b99df7b7b80fa8fedce7e6beec4c3fb236f912be4c404790abcc2bec78eb99bb111",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0x469505c77970145ec4befdd2c8e2584d9d8eb5447d14bfd7d1dddf49ccdad507"
},
{
"nodeType": "0x02",
"accountType": "0x00",
"nibblesLen": "0x3E",
"nibbles": "0xb16c0811e068ced610e7547ad9c10aee66db3534a5eb90e0c04f9a789fd6aa",
"address": "0xb64a7ed17ae2a52663279ef66455c7fa484c9b2f",
"balance": "0x3e290c37379c3ad5e6d6487d098d5f2b95ffce965b5ac40ef90e9b3f790b4a99",
"nonce": "0x0000000000000000000000000000000000000000000000001adfbef693fa606e",
"debugDepth": "0x02",
"debugHash": "0xe85b5df972dfc36ddb431d12cade6cb232f35360508a781ac3533846e42720be"
},
{
"nodeType": "0x02",
"accountType": "0x00",
"nibblesLen": "0x3E",
"nibbles": "0xefa3370ffa90841c69bca4842768abafb56fa42968142a36e7b0ee4e6c7d62",
"address": "0x0c3b48739d78c7d7b88764aec8e37c697b4f7bbc",
"balance": "0x73efcd30d74a91b8608260ec4169ae5b0c725373a1a96887ab88858c3204cfc3",
"nonce": "0x0000000000000000000000000000000000000000000000005d70b93581ad8e76",
"debugDepth": "0x02",
"debugHash": "0xae0dba2ec2f669f0b745bc89e13907f0c006f5fb17dd0a647bc2a004895d56a8"
},
{
"nodeType": "0x00",
"mask": "0x0252",
"debugDepth": "0x01",
"debugHash": "0xe8ecd9180f6bc504049b9d1dbf18026da807e942b03153efe11e5e4310961dd4"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0xed4e13ede6837db69acb01ee1b6c5e564dfb04bab66081cc91390bba6a8b7f",
"address": "0x833524a6144afd2bfdf3227d61ce43c028847c5a",
"balance": "0x54d61a5c663350d3b2acd6a569f5b791744099a5e956b978c99a9190108e80b0",
"nonce": "0x000000000000000000000000000000000000000000000000c008cd97ba288ba4",
"codeHash": {
"nodeType": "0x03",
"data": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470"
},
"codeLen": "0x00000000",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0xbdd35facffb1b35e4036b93bbc1c210f0f4a6cb1ae6e4bed8389e717bcb7ed6e"
},
{
"nodeType": "0x02",
"accountType": "0x00",
"nibblesLen": "0x3E",
"nibbles": "0x576f079f2f1b58a815acce9a4c9948914b2ec587c554c78b650a210052f3bd",
"address": "0xe4ae35d1dbdb1a046453683ef242f7486e4a3c86",
"balance": "0x80130042ad828ed842ef8426ad8d16a4f2e7df72f2266b1d9fe39c1b47c921dc",
"nonce": "0x00000000000000000000000000000000000000000000000010b4b50967dc1006",
"debugDepth": "0x02",
"debugHash": "0xce357e297b023c8340177f7d1a30cfd0a5950ce3f96c300f8987510fd70e3dfe"
},
{
"nodeType": "0x02",
"accountType": "0x00",
"nibblesLen": "0x3E",
"nibbles": "0x163cc6675ee6c35321cda2e34671e2ce2535191d69723e28c0a04637c8275b",
"address": "0x1ca28c312ff091aaf67e2763d7378baf95b91432",
"balance": "0x0344a8a83ec8a260d55c447ed8a6c630c37cb73648431216a58201e5c2dc90da",
"nonce": "0x0000000000000000000000000000000000000000000000000725b78844c9b0ef",
"debugDepth": "0x02",
"debugHash": "0x0e7845242c0fc9c84079817a9a18121d3dd2caf4d3fbf09194f3e44566ad2d4d"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x287dd358063ce07afed1847b28d6bd660bb7b985352b8e217b5f3be72ad767",
"address": "0xe3a57baa2f36eaa4b63d9f8023bc40e283b0f9a6",
"balance": "0x05bbd29c7499d0dbbab3c571df50ccb0d4e7c01450e78940a1b56333d2106695",
"nonce": "0x0000000000000000000000000000000000000000000000004ba238278fa829fd",
"codeHash": {
"nodeType": "0x03",
"data": "0x2f5a79bbaae04e2ca602ada697490f04d753c3372eabf21ec52d874a8e90c190"
},
"codeLen": "0x00000039",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0x732a6af656b27855faec883c0b2c26eb15295a0371f95b4dba6e0cdbd52422d8"
},
{
"nodeType": "0x00",
"mask": "0x04A1",
"debugDepth": "0x01",
"debugHash": "0x9f0ee6ab549f33423e05805e7ce0c34334a99253cfe826834bd5e25b10f50c09"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x0eeef0aac3c0f6da0451f500e95af310a8e948305954edae3f50e2d49ba1bf",
"address": "0x5b222f9ca37d9b2ac2f9ad8727706d0bff1adfa5",
"balance": "0x59664f23453dec779670d852bada8679a2190ae51a02332cbc6ea5e5d59d73be",
"nonce": "0x000000000000000000000000000000000000000000000000c97285bbf4450f7d",
"codeHash": {
"nodeType": "0x03",
"data": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470"
},
"codeLen": "0x00000000",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0xbe3b09dd41d1e72268537a47d78e5fdd285cbbf614b608da562517959c79f724"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x401d60ae5538f2a7bb660b145ef9d64364dd2fba94af20e295001888c9b18a",
"address": "0x0bd512e0da9a6fdf693c76c71dbc7e1cf70b2edd",
"balance": "0x191071075bbbbfb4ccc2612ee72f68b2ec50f05c4efefd0ed1ef3c79fc83e185",
"nonce": "0x000000000000000000000000000000000000000000000000f0e076184037a367",
"codeHash": {
"nodeType": "0x03",
"data": "0x39e86c2ca43f0a9a037d537209ca28627e39bc3404811f52bf214736d1cdc689"
},
"codeLen": "0x00000087",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0x87b65484de1f04df0326397e98772c98d66f4108f45d12ea18e5a6d376b45db0"
},
{
"nodeType": "0x02",
"accountType": "0x01",
"nibblesLen": "0x3E",
"nibbles": "0xd3dc28ddcafbede1eeb720334d83f3fd886633026d442dda98cb97aceded9e",
"address": "0xb353de7447723a82f666e272b876fd4924794d2c",
"balance": "0xec4c9a9ceb972b6e9befa307b16eab56739efe41b765ab94e3fb28a9be633af2",
"nonce": "0x000000000000000000000000000000000000000000000000c13cdf484abe0556",
"codeLen": "0x0000006d",
"code": "0xd91e970ee979e6bd5569dc5cceaca8ab99a65e60c8b4e01712d72c19c6e799cde8b66305e1700557f1f54a1d2388e57c2427e663d67e194c6bc5691a862e89973300bffc2f4cbe1c92c67ab0a1309a1a7d47ba1573279a742131ab47677098f75c77ea75b658e5c7f90f6a94d6",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0xdb21accb96e62f7f32cc8365382737e5082660c42007c3b33fe4fa0837f681ff"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0xc99ba08f7c5820c725c6ced1623bb243e657717ecf998e2afc47434fcfd8c3",
"address": "0x91907ad931a7db204091e7efe5ce42fff81793d5",
"balance": "0x981ac79256fa899a8d0dc3d39bcaccbac61d9ddf6ae312d429186efa47d5c45f",
"nonce": "0x000000000000000000000000000000000000000000000000443fab4f03bb80a2",
"codeHash": {
"nodeType": "0x03",
"data": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470"
},
"codeLen": "0x00000000",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0x66941324a32ce7dbb54c7add8e9caa75f7892dd4d743927b28e3150f4b3c564c"
},
{
"nodeType": "0x00",
"mask": "0x2061",
"debugDepth": "0x01",
"debugHash": "0xe0767ca3d93636ed584da75ce1b5a423100b4a53e7d5f67173927dc7bad29fe2"
},
{
"nodeType": "0x02",
"accountType": "0x01",
"nibblesLen": "0x3E",
"nibbles": "0xd8eef084aae1f4f72d66049aaf45fbe1463e0b2c1314ddce9bbd26d10e6831",
"address": "0x6dfdc54b603cfff7bef12eaf0d1553b926093647",
"balance": "0x9f16e6d923d43161b0af8fb5fb294e8e6331e19b71d04828187edd79926b522a",
"nonce": "0x000000000000000000000000000000000000000000000000fc610a8f798bc046",
"codeLen": "0x0000005c",
"code": "0x094393c3f02d5db6965c943b7cd586d6121dc4340f10a274bfec1206e7e6c8fba55fc7ac312d7650a90688c244ca05ba86a49a5cacf33aa551ae0af77ddba6928a379f4516737eb6bcea828bbf3108c3f5d89e249231095b87dd2181",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0x8b0831bb9c30253d4f87095aeedddd61940c973592a04d6f1f1897bb89aabcca"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x1eaff2a2b35d24c80a19319a8f0f647f780c582cfb73040b43135162ab122f",
"address": "0x010e516429b597cbc1dd1335d1bb71344188b175",
"balance": "0x4195dae0a829799f66d6087e81f69fcca2d8ac8b1e91441651ce1a76c6d36b70",
"nonce": "0x000000000000000000000000000000000000000000000000e5b9a297e4cc0359",
"codeHash": {
"nodeType": "0x03",
"data": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470"
},
"codeLen": "0x00000000",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0x2cf40c59acc31c47f2ebba72b06b92fd741eb1ce0202ef3112ed3699ea342405"
},
{
"nodeType": "0x02",
"accountType": "0x00",
"nibblesLen": "0x3E",
"nibbles": "0x1d08df6afc15e003fd5fecf197544315ee81ea6d94012cd5ed11c830814ce4",
"address": "0x05a945d3d7d42ea7edb13452a779f5967a5124b6",
"balance": "0x20c44e58aa64ffa2c3b3ec10a3f555ff5bd09f01d821eadfe2bf3cc680008b1f",
"nonce": "0x000000000000000000000000000000000000000000000000004e227da5c251f4",
"debugDepth": "0x02",
"debugHash": "0xaa7249baa8a3e60f3e88594457a341ce997e1947d78418d17ee2ac65b43ae59b"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0x31041ef3dfe2108bb113bc0e5aa893ca493f56b44e3a66f62883431af7d7af",
"address": "0xf5ebce43a192f56757d007acd6279a551345cdb7",
"balance": "0xec6d67c4aaa4b3ab924df0f05869f2d9ed9d8a87d49fad5970f93621313da108",
"nonce": "0x000000000000000000000000000000000000000000000000797d04d1c536e32e",
"codeHash": {
"nodeType": "0x03",
"data": "0xaf51e50607c4bae5e45fb90697ebebe4d702fbdf3d0d12a54267a770ffb1a144"
},
"codeLen": "0x00000095",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0xdc7f6099982dc0f68bb51394785ccf7c79d71bd16f43573d1c7462a4a35a28de"
},
{
"nodeType": "0x00",
"mask": "0x0003",
"debugDepth": "0x01",
"debugHash": "0xb9d4fdfc712b511fb3a6e644e3f3591a64ee2b5623a048d9feb4929fe3dcd43a"
},
{
"nodeType": "0x00",
"mask": "0x0220",
"debugDepth": "0x02",
"debugHash": "0x27812ea0e95193d31ef04a5804d66a249b7f985b5b471d48344445c398065efa"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3D",
"nibbles": "0xfae6cb5549de19c35dd9b844747119a539c3b8174d7669b43a6ae3aa24aa60",
"address": "0x67c101f45f7815b2ea52a3cb3875dc745782a679",
"balance": "0x7c646d13fed03073b8e26fb2f5534025bc1a0d5fd7350c5be54718c0aaca2d3a",
"nonce": "0x000000000000000000000000000000000000000000000000ca8ff2c76fcebd72",
"codeHash": {
"nodeType": "0x03",
"data": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470"
},
"codeLen": "0x00000000",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x03",
"debugHash": "0xeefd411e941ca3342801bf17f470187823c80d01248c640a079dd9ad3ae0dea9"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3D",
"nibbles": "0x4a0f67aebeaccb5d3b3e79b364f4e88319e6abaec53cc4c37d820551c779b0",
"address": "0x0a4c146a22fe765724139522319ee322fe543a46",
"balance": "0x7519a83f8d075c41039a54b85dfa08ba8be1921d4763aaf64e26651800274865",
"nonce": "0x000000000000000000000000000000000000000000000000b3d5bfa8c0551d1e",
"codeHash": {
"nodeType": "0x03",
"data": "0x2c33a267918bd92623a8043525055e167725af4d6de88935ae739560b11ef8d6"
},
"codeLen": "0x0000003b",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x03",
"debugHash": "0x95ca5ca7f809a92822ad5b78f04e9ba6878f8239ad57a699e4060f78aba9a881"
},
{
"nodeType": "0x02",
"accountType": "0x00",
"nibblesLen": "0x3E",
"nibbles": "0x93af897b20d6aecc8bc998ed9919efe1f27d5cdcdd559cee2eb3f4bdea3b20",
"address": "0x2e322b1d15211d6228937b3d7ad4e8889ff2c1e4",
"balance": "0x750d978e0d7cf5fa983e624a514846233c21393cb3655d78dae7cf2fed724f49",
"nonce": "0x00000000000000000000000000000000000000000000000058a2d96d970a8b6b",
"debugDepth": "0x02",
"debugHash": "0x88c1db3c937e62781726b71dedb669f51ee29f00a44686bfb3ccdca6c78e1e16"
},
{
"nodeType": "0x00",
"mask": "0x0805",
"debugDepth": "0x01",
"debugHash": "0xa58b9af46406de5e5f249308f0f1e5e961431e42b21e7ed9940e2c3cf0b7fb00"
},
{
"nodeType": "0x02",
"accountType": "0x01",
"nibblesLen": "0x3E",
"nibbles": "0xc4a591be6849791dcf157167e92a0827e6ccbe0f77544207c9bf42fb04e112",
"address": "0x231936cb38eb94a6ed026e569c0f5196cb02d01f",
"balance": "0x88a02f6772fef345f8fccb37905635832a07e9d75639976772802023f7db3a88",
"nonce": "0x0000000000000000000000000000000000000000000000004518bbd97bc330b6",
"codeLen": "0x0000000f",
"code": "0x802e383c4083366f4b08cd2c87ba30",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0xb64956bc3c115e4b66fcec3e44952142eec38c89123cb2bfd8ad00840c2a58cc"
},
{
"nodeType": "0x02",
"accountType": "0x01",
"nibblesLen": "0x3E",
"nibbles": "0x53343e7c6935e37df0e84447c24ac4da8ea6868b1d50d8699ba4fc8666f1e1",
"address": "0x681591b66ea7f2921708a5d0906ee54cfe4f032d",
"balance": "0xa9c1f939bd16ba2d4d87c5f3f9cb08964d16f1f437700cc8f750b5d7b4065323",
"nonce": "0x00000000000000000000000000000000000000000000000064008f081b402198",
"codeLen": "0x0000003d",
"code": "0x70203eee4f3c22c6844c47941c50164777f0063ff3bbc17ee9f0f299ab2de7ac1347aa87204d0290dce7fbb8cc274eb2e21af63b3b2363f6aa1d00e072",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0x115b609d07d16b3bd1c71b6127d9edbef86c4281151388d13f44e2b1fa3395d7"
},
{
"nodeType": "0x02",
"accountType": "0x02",
"nibblesLen": "0x3E",
"nibbles": "0xf154b79558fd6b8e56a1a13b3d2c7d66400cdcfa7e8ac9e9abd196dcb27557",
"address": "0xf54e3ecea25c6e6a554e86ae6b83676b08547181",
"balance": "0x056957fabab12c6e5654cd5869a774f7c269f7bc208fd242173a409df15d469f",
"nonce": "0x00000000000000000000000000000000000000000000000030baa534518a3ab2",
"codeHash": {
"nodeType": "0x03",
"data": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470"
},
"codeLen": "0x00000000",
"storage": [
{
"nodeType": "0x03",
"data": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"
}
],
"debugDepth": "0x02",
"debugHash": "0xe56e7b18e824dc8b2851ebb7149452f09e2f09fbe7298362dc014f72a5fe02ca"
}
]
}

File diff suppressed because it is too large Load Diff

View File

@ -84,8 +84,8 @@ proc pop(wb: var WitnessBuilder) =
wb.node = wb.jStack.pop()
proc writeU32Impl(wb: var WitnessBuilder, x: uint32, name: string) =
let y = toBE(x)
wb.node[name] = newJString("0x0" & toHex(y.int, 8))
let y = toBytesBE(x)
wb.node[name] = newJString("0x" & toHex(y))
template writeU32(wb: var WitnessBuilder, x: untyped, name: string) =
wb.writeU32Impl(uint32(x), name)
@ -176,8 +176,9 @@ proc writeAccountNode(wb: var WitnessBuilder, kd: KeyData, acc: Account, nibbles
else:
wb.writeU32(0'u32, "codeLen")
wb.pushArray("storage")
if kd.storageKeys.isNil:
wb.writeHashNode(acc.storageRoot.data, "storageRoot")
wb.writeHashNode(acc.storageRoot.data)
elif acc.storageRoot != emptyRlpHash:
var zz = StackElem(
node: wb.db.get(acc.storageRoot.data),
@ -186,11 +187,10 @@ proc writeAccountNode(wb: var WitnessBuilder, kd: KeyData, acc: Account, nibbles
depth: 0, # reset depth
storageMode: true # switch to storage mode
)
wb.pushArray("storage")
getBranchRecurse(wb, zz)
wb.pop()
else:
wb.writeHashNode(emptyRlpHash.data, "storageRoot")
wb.writeHashNode(emptyRlpHash.data)
wb.pop()
wb.writeByte(depth, "debugDepth")
wb.write(keccak(node).data, "debugHash")

View File

@ -1,5 +1,117 @@
import
eth/[common, rlp], json,
eth/common, eth/trie/db, json, os, unittest,
../stateless/[tree_from_witness],
./witness_types
./witness_types, stew/byteutils
type
Tester = object
rootHash: KeccakHash
error: bool
output: seq[byte]
proc write(t: var Tester, x: openArray[byte]) =
t.output.add x
proc write(t: var Tester, x: string) =
let len = (x.len - 2) div 2
var buf: array[4096, byte]
hexToByteArray(x, buf, 0, len - 1)
t.write(buf.toOpenArray(0, len - 1))
proc write(t: var Tester, x: JsonNode) =
t.write(x.getStr())
proc processBranchNode(t: var Tester, x: JsonNode) =
t.write(x["mask"])
proc processExtensionNode(t: var Tester, x: JsonNode) =
t.write(x["nibblesLen"])
t.write(x["nibbles"])
proc processHashNode(t: var Tester, x: JsonNode) =
t.write(x["data"])
proc processNode(t: var Tester, x: JsonNode, storageMode: bool = false)
proc processStorage(t: var Tester, tree: JsonNode) =
for x in tree:
t.processNode(x, true)
proc processAccountNode(t: var Tester, x: JsonNode) =
let accountType = x["accountType"].getStr()
t.write(accountType)
t.write(x["nibbles"])
t.write(x["address"])
t.write(x["balance"])
t.write(x["nonce"])
case accountType:
of "0x00":
discard
of "0x01":
let codeLen = x["codeLen"].getStr()
t.write(codeLen)
if codeLen != "0x00000000":
t.write(x["code"])
t.processStorage(x["storage"])
of "0x02":
t.write("0x03")
t.processHashNode(x["codeHash"])
t.write(x["codeLen"])
t.processStorage(x["storage"])
else:
doAssert(false, "wrong account type")
proc processStorageLeafNode(t: var Tester, x: JsonNode) =
t.write(x["nibbles"])
t.write(x["key"])
t.write(x["value"])
proc processNode(t: var Tester, x: JsonNode, storageMode: bool = false) =
let nodeType = x["nodeType"].getStr()
t.write(nodeType)
case nodeType
of "0x00": t.processBranchNode(x)
of "0x01": t.processExtensionNode(x)
of "0x02":
if storageMode:
t.processStorageLeafNode(x)
else:
t.processAccountNode(x)
of "0x03": t.processHashNode(x)
else:
doAssert(false, "wrong node type")
proc parseRootHash(x: string): KeccakHash =
result.data = hexToByteArray[32](x)
proc parseTester(t: var Tester, n: JsonNode) =
t.error = n["error"].getBool()
t.rootHash = parseRootHash(n["rootHash"].getStr())
t.write(n["version"])
t.write(n["metadata"])
let tree = n["tree"]
for x in tree:
t.processNode(x)
proc parseTester(filename: string): Tester =
let n = parseFile(filename)
parseTester(result, n)
proc runTest(filePath, fileName: string) =
test fileName:
let t = parseTester(filePath)
var db = newMemoryDB()
var tb = initTreeBuilder(t.output, db, {wfEIP170})
let root = tb.buildTree()
check root == t.rootHash
proc witnessJsonMain*() =
for x in walkDirRec("stateless" / "fixtures"):
let y = splitPath(x)
runTest(x, y.tail)
when isMainModule:
witnessJsonMain()

View File

@ -307,7 +307,7 @@ proc readAddress(t: var TreeBuilder) =
proc readCodeLen(t: var TreeBuilder): int =
let codeLen = t.safeReadU32()
if wfEIP170 in t.flags and codeLen > EIP170_CODE_SIZE_LIMIT:
raise newException(ContractCodeError, "code len exceed EIP170 code size limit")
raise newException(ContractCodeError, "code len exceed EIP170 code size limit: " & $codeLen)
t.keys[^1].codeLen = codeLen.int
result = codeLen.int

View File

@ -101,4 +101,6 @@ cliBuilder:
./test_transaction_json,
./test_blockchain_json,
../stateless/test_witness_keys,
../stateless/test_block_witness
../stateless/test_block_witness,
../stateless/test_witness_json