EVMSEALEDEVM
▒▒╱○●●~#■╳@●▒#~▒■@╳░●╲╳!&▫&?%▪▒▒▫^#▪╲?▪*▪╲╲▫╱▓◆*&▫○&@◇█▓●■◇&▫#▪╳
Transaction ID
Execution Fee
0.00006398 FLOWTransaction Summary
EVMCalled EVM
EVM Hashes
Contracts
Script Arguments
0hexEncodedTxs[String]
[ "02f901158202eb830145d38405f5e1008405f5e1028302544a94e381283c44091c018ad77e143e9928d5b394bee780b8a4d204c45e00000000000000000000000029cabda895bc0bf7c52c9f0d033470978fd432f00000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000003568747470733a2f2f697066732e77656972646f67686f73742e636f6d2f6d65746164617461732f3030313031323030312e6a736f6e0000000000000000000000c001a00a7c165005c0760b7c4c675ee49b0973bfb0397a7ae266610a6a869aefeb17f8a07cf3119db6503861f9e8f9d6727fd36b66122fd4d87b5aace13dddbd68524ed4", "02f901158202eb830145d38405f5e1008405f5e1028302544a94e381283c44091c018ad77e143e9928d5b394bee780b8a4d204c45e000000000000000000000000a35718700ee50a2bffe5a458579aa50d213cd1cb0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000003568747470733a2f2f697066732e77656972646f67686f73742e636f6d2f6d65746164617461732f3030313030323031352e6a736f6e0000000000000000000000c080a0bdc24384a1b97b6ce78e6349ee0e570ee72a3f6c7524d0d5a3f729f24190c37ea04f5d8f5c5553098ea8ea9e3c6eb94a1b4179a91bdc0c21d952b81d987cc54028", "02f901158202eb830145d38405f5e1008405f5e1028302544a94e381283c44091c018ad77e143e9928d5b394bee780b8a4d204c45e0000000000000000000000002068a919bd0f8cefbd0aed80a2015feb0cf996290000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000003568747470733a2f2f697066732e77656972646f67686f73742e636f6d2f6d65746164617461732f3030313030343030352e6a736f6e0000000000000000000000c001a0cc416d0cedfa68a9a0de31d8f00dfc2ca47f64cdfb0499644efd6240385c832ea051bbbb85ad42dd8ba0db6b5695a2a71f3606b4569987313b06e611f339391d9a", "02f901158202eb830145d38405f5e1008405f5e1028302544a94e381283c44091c018ad77e143e9928d5b394bee780b8a4d204c45e000000000000000000000000661c0306f171dc1a4c7c9706ddcb471d4689f8a70000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000003568747470733a2f2f697066732e77656972646f67686f73742e636f6d2f6d65746164617461732f3030313031333030352e6a736f6e0000000000000000000000c080a0a5e0e1f4d28307dc5ae023fd0eb7fa681318973c72a97b52f4fd9007362a43a1a03c3ebe951d3a154bb6523829694f19af1df1a9b264dfc8d9fc5bbcf5df272899" ]
Cadence Script
1import EVM from 0xe467b9dd11fa00df
2
3transaction(hexEncodedTxs: [String], coinbase: String) {
4 execute {
5 let txs: [[UInt8]] = []
6 for tx in hexEncodedTxs {
7 txs.append(tx.decodeHex())
8 }
9
10 let txResults = EVM.batchRun(
11 txs: txs,
12 coinbase: EVM.addressFromString(coinbase)
13 )
14
15 // If at least one of the EVM transactions in the batch is either
16 // failed or successful, in other words not invalid, we let the
17 // Cadence transaction succeed.
18 for txResult in txResults {
19 if txResult.status == EVM.Status.failed || txResult.status == EVM.Status.successful {
20 return
21 }
22 }
23
24 // Otherwise, all EVM transactions are invalid txs and can't be
25 // executed (such as nonce too low).
26 // In this case, we fail the Cadence transaction with the error
27 // message from the first EVM transaction.
28 for txResult in txResults {
29 assert(
30 txResult.status == EVM.Status.failed || txResult.status == EVM.Status.successful,
31 message: "evm_error=".concat(txResult.errorMessage).concat("\n")
32 )
33 }
34 }
35}