From 7576e059e0e681e07c93b0a9d6bfba296bc2801f Mon Sep 17 00:00:00 2001 From: Robin Salen Date: Thu, 8 Aug 2024 13:51:31 -0400 Subject: [PATCH] Fix account creation reversion in decoder processing --- trace_decoder/src/decoding.rs | 17 +- .../data/witnesses/zero_jerigon/b28_dev.json | 325 ++++++++++++++++++ .../zero_jerigon/b28_dev_header.json | 32 ++ 3 files changed, 370 insertions(+), 4 deletions(-) create mode 100644 trace_decoder/tests/data/witnesses/zero_jerigon/b28_dev.json create mode 100644 trace_decoder/tests/data/witnesses/zero_jerigon/b28_dev_header.json diff --git a/trace_decoder/src/decoding.rs b/trace_decoder/src/decoding.rs index 8621c8d51..fa7f08518 100644 --- a/trace_decoder/src/decoding.rs +++ b/trace_decoder/src/decoding.rs @@ -532,10 +532,19 @@ impl ProcessedBlockTrace { )?; let updated_account_bytes = rlp::encode(&account); - trie_state - .state - .insert(val_k, updated_account_bytes.to_vec()) - .map_err(TraceParsingError::from)?; + if *updated_account_bytes == EMPTY_ACCOUNT_BYTES_RLPED { + // If the account is still empty, this means we reverted its creation. + // We then need to remove it from the state trie. + trie_state + .state + .delete(val_k) + .map_err(TraceParsingError::from)?; + } else { + trie_state + .state + .insert(val_k, updated_account_bytes.to_vec()) + .map_err(TraceParsingError::from)?; + } } Ok(out) diff --git a/trace_decoder/tests/data/witnesses/zero_jerigon/b28_dev.json b/trace_decoder/tests/data/witnesses/zero_jerigon/b28_dev.json new file mode 100644 index 000000000..e94bfd458 --- /dev/null +++ b/trace_decoder/tests/data/witnesses/zero_jerigon/b28_dev.json @@ -0,0 +1,325 @@ +[ + { + "block_trace": { + "trie_pre_images": { + "combined": { + "compact": "0x000397e4ae58e8d997dd2b19ed09ad9a66d1c0fd304d074e4a7bfb3f1fcc512a3e6303e3f965eb951555f4f5b98ab8ff7a6e33813bf9ac6830c1f8e5806e5563d580580338e34f9e0e4830343ba24f5fcf0eba28d79cb86397adfb16a0169ee7f018003605582003d2dbe83a6ba7fd75737c8d7453d984e7938ba7ae113d3da2ad7433061157b0084101055820039c0a91ba30d346a55890b1b07287d8aae35baa8c4068ef8f1de66084aca750084101055820032dee2834b372effea65d7c74ab9f3ac60ef271e846721aa8759a346a3b55400c182c4c033b2e3c9e69be1f3b8f45fc0219020303d2e57f615a47508c6e60935353428b9fc1cc75677a3eb8f5f73d61dd0aaff5f5055820021d99c6bec3aecbec962be74b25448511983b013c0876f6f4e6029773dfad61084101034d78166b48044fdc28ed22d2fd39c8df6f8aaa04cb71d3a17286856f6893ff830361d0d822132d4f46ea985e243ddfec94d3d12badf05efc100c2acaab3232979a05582002b3096c912adc7674ca92b68ddb3b0494e9b988fbef1bed7938e8fac4c2df7a0841010458613373fffffffffffffffffffffffffffffffffffffffe14604d57602036146024575f5ffd5b5f35801560495762001fff810690815414603c575f5ffd5b62001fff01545f5260205ff35b5f5ffd5b62001fff42064281555f359062001fff01550003b42b3ff34cf94e9bbe576c7d3407125a4a78bc7ed3612b0859c3d54732184c04005820027b7c396774442700f076020d6320b11205bdfa1ed29bca4e6403a4ed13003e5820ae9e0c29f970fa4b19e4dd1e122f44e36e28b0366016bede9cad8ee2b9abc0ec00582002b38c731c4c7dcfa7fe43e88c29fc820b7a639725c025ad4d57a4ba4bfc7021582056138500dd56d246b423922d012878336234e86eb5163ddfe56ded875b6bb90b0219010803ae2be4c29fc3af59f45ec87171244d90f717dff0b4053c3f9e515f255ad21016037be6082e5131fd0ec3d0443048028ff5165919d8135b83eb9e871689af6151b800582002a35688244862fc757c3be1f20703dd54ed23a0500e2ba3a8c715f441dab6695820ee297c12fffb82a628f254b4e8b04d1068789f928e5ebbd53a9c6960f6a09ff500582002ac6e5f6b2ae78fed03998a21fffd6d0abe57ee36fa18fd8f390bf96881e1864466b12ee40219801003805f6a0a46b011fe00f83634ae7b5ee301e296ae987730717c0438d498fdb74303d08a05d0052c73e1436082038fba2562fcf36d5f1f6366027bf2c4c78218324703202eba034d3583cbc1fa600657c8bb355910c171c2e7174a016ee7f84a9982bb0352392a3a7f95abdd8c48bbaadf77e7be701e1a9c259a379f7837c6fdd77d569703327d2799bdf55eb20ae98ff3acac7a7e6d1bd5d5a763f529efb0872988c15e1f03241da08797ca89e9a4ae4d4d6fcbb1b22001c4aac25a1ef3e8b2edef94e3d62503f9b28e4f179934edd4393a00171269821a9a44893002137f760faa68fe8f19fb03bb4cbca0dff5a0525413795bd818ec527f9e385e8df4c101f7050f0cf93e61fa0363f140c8c24a1024f88d5c51292e514db03f1c7eec2a58e7c06d1ebeeea4ad7f03650d71b12779260726c804623311ab746d2bfa6162f236b8fd87234c0a63eb5e0332ee5d5e5496bb9209cd8bc651126d19b79b38b9fc12122ce469cfefd53099180219ffff05582002d65eaa92c6bc4c13a5ec45527f0c18ea8932588728769ec7aecfe6d9f32e420701186105582002401b4e97e67c4a6d8095979b4c1ecb9eaf5726fc8a12798975a7653e98087208410105582002c8bb92227ba91a2657f29c5498f5c5b07ae36369c8d9283444f477930c79be0841010391d9c76bfbc066e84f0b415c737ab8c477498701d920526db41690050cfade9905582002a5ac70a18399817ccbe8bd4d9c78115136cc61699d51af87608af520226c32084101055820029bd268aedc8dbb36db0a4664e17b83abcfd87e404901eee7bd5704a95064ee08410105582002a06a67e7fee9c938155c50e6cec9da70b66679e777da6f02149c6674cd910508410103d9240a9d2d5851d05a97ff3305334dfdb0101e1e321fc279d2bb3cad6afa8fc802197ffd03bb47debc67bc4630b38be2bcb4da207e5eeb900be8ebef5391e33f311259fe8f03f5973ddf4b6e95090d9f952ebba2f1efb05ecf7a8ca1108a51b83035168aedbb03724f631a141f6a338cc83620dba6cbc53e49035312204f3847a68e2d852fd67a0318385194f4abe12385937758d7599c7a11760dcfe3e3e2ba06ebfad44f10484e035750dfde66a7a051d429386138dc80cc40f94d0212ebbd6f3dd7950b994b7e6903be88e4724326382a8b56e2328eeef0ad51f18d5bae0e84296afe14c4028c4af903bcfafd70d9348d083c7d2e0e4a50b5012fc315c98366d3549628ce4ef1ee27d30558200216c0a47b12c20d5ac5c381464a89521d8b0c1a5cb328aeabb29b70bc3347d408410105582002b41c13f6e16fd2242a43b041cfd1f02cbb4cf06943d14365bb8f0a30ff507a0841010558200225fd832d00c025204251bf6c3f044d57347429973f8c48fd3d325f0e758f1b084c033b2e3c9fd0803ce8000000055820022e9dc15a35c1ab9d0ac4345b1f02fd8e8070883a33651c0c143b25827082680841010558200276da518a393dbd067dc72abfa08d475ed6447fca96d92ec3f9e7eba503ca61084102055820023db8611e8d0c159eb724d2aea72763dfb5a6909a8516467c79d0386d61a51108410103fd04efc67927fbaef3b8defd259a7f78b261bd8a0f93eedf78c0cb27c491083a0390c5d06de0e326fe782f9469df01c9028941571dffbbc643aed052feb1cff2f603ce35ec89408b73b495e2b3e0ef46d1ec796c7c2e6b05b8ad21547ffa391875c40558200203175444dc43cc33391c4c4010eac15d401b2eb5ffc7bc778abe372f28ce370841010219e75d031796617427e67ed10cdf8a72b02689a700ba71eb93186a1b120c9ad0b0e56eae03ebc052143e57028286ef115b03a8a7736efa26c165fcfffc807960b2bf91e1c003bffc43dfea9c9a304f9ae5154c60adff35f4c9a6e722a59d60cca4d97c4038bb030029f4fb3c18471948807d3163670fc396e8459d738d87a9aeb32444a6b9322d035740575999fde2ddd421a9f5907dfc4be5fc3f5f96d65240ae3b3b596d38465f055820028fd226a1d43fd9da3e823f52b7dbdfcb4e694ea884df54d86a14f708f43bd30848016345785d8a000005582002b693085beb21b0878c7e5fab7519ce0d6105354cf6744dbfb73e3745e929e4084101055820027f470df15c88b9beaf3fad72890a64f8851d01ece546b0c9fb3bdf92041a35084101055820029cb4b751333c144710961e20611eb00c783b77e8cb532c64307202fb109699084c033b2e3c9fd0803ce8000000035f4ca08c32e4a3997d0e94d8946e3d361ec5d0225d9cd85c6de8d572bb0a99c903faecf459527318d12fee2db8d85c54fc244d0207ba336a01e397593b801ae61f055820039bbcf08818ec3329e5769dff3fbdad66e6312a961acb32c1b203edf70aeba0084101031c13664b9096979e0a6a58919940b248687992af952308581eff9d0e8c14119a02194008033c4172d2125ea08dbe10db0a4a54290a622f10f24ba3a2460969ac13fcab7db3055820026a58207750197f48cb90864096850259845c2c8e90c74433325c0b144bf8bb08410105582002fa0eae268038cfa984647a1d0635beb86eda9fb7b500688f3189520cfa9ee50841010219fb710219ffff" + } + }, + "code_db": null, + "txn_info": [ + { + "traces": { + "0x6383f81bdc7c347888a54a8c6dd72f808221de21": { + "balance": "0x0" + }, + "0x3c0273033f6ad2ed3d768bb83b269d4dcf381fd1": { + "balance": "0x162e7fb2886c260", + "nonce": "0x1" + }, + "0x8943545177806ed17b9f23f0a21ee5948ecaa776": { + "balance": "0x33b2e3c9e6a196373797c7c" + } + }, + "meta": { + "byte_code": "0xf86a80843d44ddd9830186a08087d529ae9e8600009060005b600101804050630000000256008360306ba0b4615acfbef3163918e6907cfe40f0225ef4ce9ce3663ac905e01e56b307064ca03b2189980a28734c355d1b4da64cc8c4027806c5de077d7a84763a3db08a3db2", + "new_txn_trie_node_byte": "0xf86a80843d44ddd9830186a08087d529ae9e8600009060005b600101804050630000000256008360306ba0b4615acfbef3163918e6907cfe40f0225ef4ce9ce3663ac905e01e56b307064ca03b2189980a28734c355d1b4da64cc8c4027806c5de077d7a84763a3db08a3db2", + "new_receipt_trie_node_byte": "0xf9010980830186a0b9010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0", + "gas_used": 100000 + } + } + ] + }, + "other_data": { + "b_data": { + "b_meta": { + "block_beneficiary": "0x8943545177806ed17b9f23f0a21ee5948ecaa776", + "block_timestamp": "0x66b12fe0", + "block_number": "0x1c", + "block_difficulty": "0x0", + "block_random": "0x1c84d61f862e3937c259d3f998dac1381f170c18fcd63652db04f4eada8defc8", + "block_gaslimit": "0x1c9c380", + "block_chain_id": "0x301824", + "block_base_fee": "0x174e475", + "block_gas_used": "0x186a0", + "block_blob_gas_used": "0x0", + "block_excess_blob_gas": "0x0", + "parent_beacon_block_root": "0x287ecf202259331c4b437237cf469539abc2ab02d6ab3072f14a8523cd855a36", + "block_bloom": [ + "0x0", + "0x0", + "0x0", + "0x0", + "0x0", + "0x0", + "0x0", + "0x0" + ] + }, + "b_hashes": { + "prev_hashes": [ + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x5c09356fd54924bd63d5bef3f0f334114d8cb34e545b98f6289115d996e40c82", + "0xc7c2166896d1e9a890bcdeb2ca8470ca7d020de136588d8a05edb8fdf6ad9ac3", + "0x5329cbde8e0b834329c353a5f95b49beed7fb692395838fd005c26a2146fcc49", + "0xe4c9847766b928037efe232abe211de3c2cc75254d8a2cde999c2c00682c82eb", + "0xb3f21feee05522028e2618ea8377f6a2a84ecec35fe3292ced387537e66f33e2", + "0xd209ac9bd40d44278a40bbebcda14234d00c17519242847224256ce3d054f236", + "0x89003258f6a8487f5b66efa320cfde14fabb3b904bbf6cd71a3869045d7b961e", + "0x369bd1e5568cc7270031694949fbce7a44b7fe8b41d23e48a43c8d2d2c76dc45", + "0x289a8ad22308f255c8831085473986eb119cb1fe931efddffbbc38a45ca21978", + "0x30302bbf676bd710268dd16aaee094293722f3ffbbaaa895c04e44cd6e617586", + "0xd527fd267764e4edd30e6b00997ba8dc8372ffb0011a550bd1cd90ae08b71c2d", + "0x25dee803de79dce71c8c69ebbdb785df3e9a702fea51e44dfbc5772602d579c6", + "0xaa1e00aa825a379627e2ad25494ef4df8746117516777c059a56189b439f160f", + "0x05998aee0a94a1641718cfeabef8be9c1ff2317d40ee6f6d556984e47806645f", + "0xba33e8ebb6967582ac6655ff3df8c853b7b9c8f1049fe428ba983ae0777acb01", + "0x12c849a7cd349cad36c8af763dcde0aad8599e379cd4eb10ba1db4f71b849485", + "0xe47d533ba58626f1cac70e4c3c0232dbeb82fad0a6a40ca72dda8109ef3f0ea4", + "0xc4328e04fc8b7ec9391e934f283b2b1c7aea53fb6d20c057ffc87bffeceb79bb", + "0x53ea70df099bd2917e3c92b227dddcd08ec9304e09fc890ba10bbec233fcb951", + "0x10efed26e262a50f58b785edcfc20f0a12a4dfc792e6d49ec41dfa59023e3cbd", + "0x26acd6026abf999eb2be60bcb83ddbb63321c2527a5b3a9ec00a57d28535dddf", + "0x4cc4863be89f71110bfae4adcedd6baffdbfc6bab79647f20efd70883d220e63", + "0xe9a0d90fcd20b37ce2a01b75801f3aab6a5a4916e5c6d2586df64d2c0e5ccf6d", + "0xdb18b431446c147511678da8c3974ed68917e76238c0058ea281684ee45aac4e", + "0x4c82a772a2ef771fc7e0b2fdc95a74c1c37629c434658f21ffcf7f05cd055450", + "0xf0b132b1881455ebeff23c2823ceeaf4cd919803d1f0d28a208a32c6ba9e2e75", + "0xf52f4745f69063ba2705aec5c7478eb1cbaf3d4ef82e15ffe221d2a2dc798e30", + "0x46df26e4fe1d2df293cf06fe02296c0c80aa33cb00b6a3ca68baff077aefd17e" + ], + "cur_hash": "0x92162ed5e309ee46bf55cb3a811d423e6a34c5003e9d73cfacc6014789f48917" + }, + "withdrawals": [] + }, + "checkpoint_state_trie_root": "0x106d584f6804109c493182d0bb8ef06380aea582090f4c2927276869a8d1e436" + } + } +] \ No newline at end of file diff --git a/trace_decoder/tests/data/witnesses/zero_jerigon/b28_dev_header.json b/trace_decoder/tests/data/witnesses/zero_jerigon/b28_dev_header.json new file mode 100644 index 000000000..abf62be05 --- /dev/null +++ b/trace_decoder/tests/data/witnesses/zero_jerigon/b28_dev_header.json @@ -0,0 +1,32 @@ +[ + { + "baseFeePerGas": "0x174e475", + "blobGasUsed": "0x0", + "difficulty": "0x0", + "excessBlobGas": "0x0", + "extraData": "0x", + "gasLimit": "0x1c9c380", + "gasUsed": "0x186a0", + "hash": "0x92162ed5e309ee46bf55cb3a811d423e6a34c5003e9d73cfacc6014789f48917", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "miner": "0x8943545177806ed17b9f23f0a21ee5948ecaa776", + "mixHash": "0x1c84d61f862e3937c259d3f998dac1381f170c18fcd63652db04f4eada8defc8", + "nonce": "0x0000000000000000", + "number": "0x1c", + "parentBeaconBlockRoot": "0x287ecf202259331c4b437237cf469539abc2ab02d6ab3072f14a8523cd855a36", + "parentHash": "0x46df26e4fe1d2df293cf06fe02296c0c80aa33cb00b6a3ca68baff077aefd17e", + "receiptsRoot": "0x777f1c1c378807634128348e4f0eeca6a0e7f516ea411690ca04266323f671a4", + "sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", + "size": "0x2b7", + "stateRoot": "0x1cc97e7468f7cfb76f239d373d9f5124d1055f72e400b6ba865ae4f0aa1abbbf", + "timestamp": "0x66b12fe0", + "totalDifficulty": "0x1", + "transactions": [ + "0xf7be24d19c8398bbbfc2238de4b3da9a9a2a645099de4601bfa2fadf70aac9da" + ], + "transactionsRoot": "0x75cd82907b1e556b0cb52d18449487629b2b82c769a37a4b60b1760bac90a734", + "uncles": [], + "withdrawals": [], + "withdrawalsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421" + } +] \ No newline at end of file