Transaction Hash:
Block:
22584361 at May-28-2025 10:52:59 PM +UTC
Transaction Fee:
0.00029977023380265 ETH
$0.76
Gas Used:
257,585 Gas / 1.16377209 Gwei
Emitted Events:
279 |
Comp.Transfer( from=ERC20PredicateProxy, to=[Sender] 0xca74f404e0c7bfa35b13b511097df966d5a65597, amount=5169592000000000000 )
|
280 |
ERC20PredicateProxy.0xbb61bd1b26b3684c7c028ff1a8f6dabcac2fac8ac57b66fa6b1efb6edeab03c4( 0xbb61bd1b26b3684c7c028ff1a8f6dabcac2fac8ac57b66fa6b1efb6edeab03c4, 0x000000000000000000000000ca74f404e0c7bfa35b13b511097df966d5a65597, 0x000000000000000000000000c00e94cb662c3520282e6f5717214004a7f26888, 00000000000000000000000000000000000000000000000047be1488c9b38000 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x95222290...5CC4BAfe5
Miner
| (beaverbuild) | 11.190382626765121761 Eth | 11.190424175225621761 Eth | 0.0000415484605 | |
0xA0c68C63...1bFc77C77 | (Polygon (Matic): Bridge) | ||||
0xc00e94Cb...4A7f26888 | |||||
0xcA74F404...6D5a65597 |
31.613548168293483567 Eth
Nonce: 421507
|
31.613248398059680917 Eth
Nonce: 421508
| 0.00029977023380265 |
Execution Trace
RootChainManagerProxy.3805550f( )

RootChainManager.exit( inputData=0xF90A45843125F090B90160AB9E42C104939E8EC561EDE36BC5158ED1ED351E2F47D270B09DC7F795C48BE1B00EDA968D5E53E9792AA65AA0880A612A55988EC3465C79E1F38B9BA6ACF9299C92026CF9ACE15BD38247934A8FC1B4737DC2274BB24FB24E182FD6A8C660D79658840A7CF631A0247E351D04E53B7E8A09C85D351D8C655A408E440C80A90AEA713AF18D18911647DBD92644257E1B5E5375B7AC0C5BB1821E93580D3A287504EABF75E8DC2DF8DAF418EDDBA8D9825870F379F0CC017546782EE54FCD478B136A38BD39808D8A740C200C7CAEC88199F43B592D2940639D29F1B4336225A877BA1AAF596E7F2AF3A61B7E1A8CE0EB6B17449C42A31CC8E63E4DBFB1518C9223D826BF212602875E1EF4FC576EB7580CECFBAFA4910C5B074D2192B1D77D58CEFAD4E508C098B9A7E1D8FEB19955FB02BA9675585078710969D3440F5054E044931FEA92E24AE5AAA5810A71B7F6370654BEB3670F5740B498365907DDD53284044BF3B98468378984A0D6C601EA67A95302E3815D004B8A2FED72484DD3D48A537EF23BEE11022DEB86A0E0A2CBFD6B9F938ECB4C1DA37AB7D2A847F37E718AB0E0359DCB9937CA098B41B902EB02F902E70182ECE4B9010000000000000000000000000002000000000000000000000000000000000000000000000000000000200000000000000000008000000000000000000000000000000000000000000000000008000040800000000000000000000100000000000000000000020000000000000000000800000000000000000080000090000000000000000000000000000000000000000000000000000000000002000000000000300000000000000000000000000000000000000000000000080000000000004000000002000000000001000000000000000000000000000000100100000020000000000000000000000000000000000000000000000000000000000000100800F901DDF89B948505B9D2254A7AE468C0E9DD10CCEA3A837AEF5CF863A0DDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EFA0000000000000000000000000CA74F404E0C7BFA35B13B511097DF966D5A65597A00000000000000000000000000000000000000000000000000000000000000000A000000000000000000000000000000000000000000000000047BE1488C9B38000F9013D940000000000000000000000000000000000001010F884A04DFE1BBBCF077DDC3E01291EEA2D5C70C2B422B415D95645B9ADCFD678CB1D63A00000000000000000000000000000000000000000000000000000000000001010A0000000000000000000000000CA74F404E0C7BFA35B13B511097DF966D5A65597A000000000000000000000000069F5C4D08F6BC8CD29FE5F004D46FB566270868DB8A0000000000000000000000000000000000000000000000000001C2B339B7EC00000000000000000000000000000000000000000000000005693F76CD793253B0C00000000000000000000000000000000000000000000006164AE1C7DA703D3C600000000000000000000000000000000000000000000005693DB41A3F7A67B0C00000000000000000000000000000000000000000000006164CA47B1428293C6B9059CF90599F8B1A045E42AC94F3DCE055CA2D70258E2E4FC4C03CC85C86F7D189C21F81605080009A01AE27CB335616242601A1E5BF9E7791D0B32190CA4C71369A192749E953C1683A08A0EE9B71C4009D3A11E84499AAC965F77B9EDA5271E15298FAA1BC99C96C5D9A0180D44BF1F34661914D0830E1EA4076E6C456478F14A2B53FA7A43CD3543766880808080A05D72F323FD50D33B061A840EC510AA5EA36BDB0A43090E22BC2674E3E2457BF08080808080808080F901F180A0D972576AD97767FDA832A98CA1DD69F8D8DEC7F50D8DB6B5B3F3AB543C46D17BA053601238F7C148C40B084B7831D5163047224B4A9E609D9CB1D89032ACA5DDD8A0C7285BD0FBAC394021D66A649B1B3457CFFE49CBC8A6B4CFE51526CCDDB531E5A0633F9F2B7FFAEFE4422240D276965777C4114ADA5DDB798A7415A9C4BF6E022EA0A45D6A978A79EA5A4A05D2ABC2A8FDA427309CDBB57524B2DCDADC663023F264A0A63C519A713F7D225EF975AC27131E0C930993C37057591EA7BB0451B68FE963A0BC4195B3BD179EB25455E5AE9D47629589B7AF0225D8357222F7E78E900AF283A08FED0EA57D71270CA753A0E31FC1FE9A82F1CDE5ACB8ECEB90DD9A6FADE5C7C2A070CEAE104C037B0D538EB287AB094D8F3F4FDDD4C9639D97C4FB7B8A4CD04A71A0729441BB62D4D9BD9E03250F1BDEE741982D1A41AD3B7160AB70DDB4D7E7AF84A0FC1BF13925C253307A2686F8A0CF07A9D08DBC2D3B842D75D90280164FC507F9A0C5C4AF1881049220F719235F941232B8462F5129ABE6427025B5A00C242E5828A01899C88447D756BA53DB4B60450A2AFD43625D1BFAC34CEBB8940F832285049FA087AB9108F5BFE39E1D0D661CBD9DA5B70F614CCE873339A591120BDF33ED6E93A0187CD2F10A21A9F7F6EC6C3DAAEB00ADCA01B5E4CF2D8EC7C5DBA8A8A936322E80F902EF20B902EB02F902E70182ECE4B9010000000000000000000000000002000000000000000000000000000000000000000000000000000000200000000000000000008000000000000000000000000000000000000000000000000008000040800000000000000000000100000000000000000000020000000000000000000800000000000000000080000090000000000000000000000000000000000000000000000000000000000002000000000000300000000000000000000000000000000000000000000000080000000000004000000002000000000001000000000000000000000000000000100100000020000000000000000000000000000000000000000000000000000000000000100800F901DDF89B948505B9D2254A7AE468C0E9DD10CCEA3A837AEF5CF863A0DDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EFA0000000000000000000000000CA74F404E0C7BFA35B13B511097DF966D5A65597A00000000000000000000000000000000000000000000000000000000000000000A000000000000000000000000000000000000000000000000047BE1488C9B38000F9013D940000000000000000000000000000000000001010F884A04DFE1BBBCF077DDC3E01291EEA2D5C70C2B422B415D95645B9ADCFD678CB1D63A00000000000000000000000000000000000000000000000000000000000001010A0000000000000000000000000CA74F404E0C7BFA35B13B511097DF966D5A65597A000000000000000000000000069F5C4D08F6BC8CD29FE5F004D46FB566270868DB8A0000000000000000000000000000000000000000000000000001C2B339B7EC00000000000000000000000000000000000000000000000005693F76CD793253B0C00000000000000000000000000000000000000000000006164AE1C7DA703D3C600000000000000000000000000000000000000000000005693DB41A3F7A67B0C00000000000000000000000000000000000000000000006164CA47B1428293C682000180 )
-
RootChainProxy.headerBlocks( 824570000 ) => ( root=986B888788D65E458CC79774D55E9B0F8AA38C9D50D82F94F8B2E3F860DE60B9, start=72085414, end=72086949, createdAt=1748472743, proposer=0x67B94473D81D0cd00849D563C94d0432Ac988B49 )
ERC20PredicateProxy.8274664f( )
ERC20Predicate.exitTokens( 0xcA74F404E0C7bfA35B13B511097df966D5a65597, rootToken=0xc00e94Cb662C3520282E6f5717214004A7f26888, log=0xF89B948505B9D2254A7AE468C0E9DD10CCEA3A837AEF5CF863A0DDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EFA0000000000000000000000000CA74F404E0C7BFA35B13B511097DF966D5A65597A00000000000000000000000000000000000000000000000000000000000000000A000000000000000000000000000000000000000000000000047BE1488C9B38000 )
-
Comp.transfer( dst=0xcA74F404E0C7bfA35B13B511097df966D5a65597, rawAmount=5169592000000000000 ) => ( True )
-
-
exit[RootChainManager (ln:313)]
toExitPayload[RootChainManager (ln:314)]
getBranchMaskAsBytes[RootChainManager (ln:315)]
getBlockNumber[RootChainManager (ln:320)]
_getNibbleArray[RootChainManager (ln:324)]
_getNthNibbleOfBytes[MerklePatriciaProof (ln:1169)]
_getNthNibbleOfBytes[MerklePatriciaProof (ln:1172)]
_getNthNibbleOfBytes[MerklePatriciaProof (ln:1180)]
getReceiptLogIndex[RootChainManager (ln:325)]
getReceipt[RootChainManager (ln:333)]
getLog[RootChainManager (ln:334)]
getEmitter[RootChainManager (ln:336)]
getBranchMaskAsUint[RootChainManager (ln:346)]
verify[RootChainManager (ln:353)]
toRlpItem[MerklePatriciaProof (ln:1067)]
RLPItem[RLPReader (ln:664)]
toList[MerklePatriciaProof (ln:1068)]
isList[RLPReader (ln:703)]
numItems[RLPReader (ln:704)]
_payloadOffset[RLPReader (ln:831)]
_itemLength[RLPReader (ln:834)]
_payloadOffset[RLPReader (ln:706)]
_itemLength[RLPReader (ln:709)]
RLPItem[RLPReader (ln:710)]
_getNibbleArray[MerklePatriciaProof (ln:1073)]
_getNthNibbleOfBytes[MerklePatriciaProof (ln:1169)]
_getNthNibbleOfBytes[MerklePatriciaProof (ln:1172)]
_getNthNibbleOfBytes[MerklePatriciaProof (ln:1180)]
toRlpBytes[MerklePatriciaProof (ln:1081)]
toList[MerklePatriciaProof (ln:1085)]
isList[RLPReader (ln:703)]
numItems[RLPReader (ln:704)]
_payloadOffset[RLPReader (ln:831)]
_itemLength[RLPReader (ln:834)]
_payloadOffset[RLPReader (ln:706)]
_itemLength[RLPReader (ln:709)]
RLPItem[RLPReader (ln:710)]
toBytes[MerklePatriciaProof (ln:1089)]
payloadLocation[RLPReader (ln:815)]
_payloadOffset[RLPReader (ln:687)]
copy[RLPReader (ln:821)]
toUintStrict[MerklePatriciaProof (ln:1102)]
toBytes[MerklePatriciaProof (ln:1106)]
payloadLocation[RLPReader (ln:815)]
_payloadOffset[RLPReader (ln:687)]
copy[RLPReader (ln:821)]
_nibblesToTraverse[MerklePatriciaProof (ln:1107)]
_getNibbleArray[MerklePatriciaProof (ln:1145)]
_getNthNibbleOfBytes[MerklePatriciaProof (ln:1169)]
_getNthNibbleOfBytes[MerklePatriciaProof (ln:1172)]
_getNthNibbleOfBytes[MerklePatriciaProof (ln:1180)]
_getNthNibbleOfBytes[MerklePatriciaProof (ln:1113)]
toBytes[MerklePatriciaProof (ln:1117)]
payloadLocation[RLPReader (ln:815)]
_payloadOffset[RLPReader (ln:687)]
copy[RLPReader (ln:821)]
toUintStrict[MerklePatriciaProof (ln:1130)]
toBytes[RootChainManager (ln:354)]
getReceiptProof[RootChainManager (ln:356)]
getReceiptRoot[RootChainManager (ln:357)]
_checkBlockMembershipInCheckpoint[RootChainManager (ln:362)]
headerBlocks[RootChainManager (ln:389)]
checkMembership[RootChainManager (ln:391)]
sub[RootChainManager (ln:395)]
getBlockNumber[RootChainManager (ln:363)]
getBlockTime[RootChainManager (ln:364)]
getTxRoot[RootChainManager (ln:365)]
getReceiptRoot[RootChainManager (ln:366)]
getHeaderNumber[RootChainManager (ln:367)]
getBlockProof[RootChainManager (ln:368)]
exitTokens[RootChainManager (ln:370)]
_msgSender[RootChainManager (ln:371)]
msgSender[RootChainManager (ln:47)]
toRlpBytes[RootChainManager (ln:373)]
File 1 of 6: RootChainManagerProxy
File 2 of 6: ERC20PredicateProxy
File 3 of 6: Comp
File 4 of 6: RootChainManager
File 5 of 6: RootChainProxy
File 6 of 6: ERC20Predicate
12345678910111213141516// File: contracts/common/Proxy/IERCProxy.solpragma solidity 0.6.6;interface IERCProxy {function proxyType() external pure returns (uint256 proxyTypeId);function implementation() external view returns (address codeAddr);}// File: contracts/common/Proxy/Proxy.solpragma solidity 0.6.6;abstract contract Proxy is IERCProxy {
File 2 of 6: ERC20PredicateProxy
12345678910111213141516// File: contracts/common/Proxy/IERCProxy.solpragma solidity 0.6.6;interface IERCProxy {function proxyType() external pure returns (uint256 proxyTypeId);function implementation() external view returns (address codeAddr);}// File: contracts/common/Proxy/Proxy.solpragma solidity 0.6.6;abstract contract Proxy is IERCProxy {
File 3 of 6: Comp
12345678910111213141516pragma solidity ^0.5.16;pragma experimental ABIEncoderV2;contract Comp {/// @notice EIP-20 token name for this tokenstring public constant name = "Compound";/// @notice EIP-20 token symbol for this tokenstring public constant symbol = "COMP";/// @notice EIP-20 token decimals for this tokenuint8 public constant decimals = 18;/// @notice Total number of tokens in circulationuint public constant totalSupply = 10000000e18; // 10 million Comp
File 4 of 6: RootChainManager
12345678910111213141516pragma solidity 0.6.6;import {SafeMath} from "@openzeppelin/contracts/math/SafeMath.sol";import {IRootChainManager} from "./IRootChainManager.sol";import {RootChainManagerStorage} from "./RootChainManagerStorage.sol";import {IStateSender} from "../StateSender/IStateSender.sol";import {ICheckpointManager} from "../ICheckpointManager.sol";import {RLPReader} from "../../lib/RLPReader.sol";import {ExitPayloadReader} from "../../lib/ExitPayloadReader.sol";import {MerklePatriciaProof} from "../../lib/MerklePatriciaProof.sol";import {Merkle} from "../../lib/Merkle.sol";import {ITokenPredicate} from "../TokenPredicates/ITokenPredicate.sol";import {Initializable} from "../../common/Initializable.sol";import {NativeMetaTransaction} from "../../common/NativeMetaTransaction.sol";import {AccessControl} from "@openzeppelin/contracts/access/AccessControl.sol";import {AccessControlMixin} from "../../common/AccessControlMixin.sol";import {ContextMixin} from "../../common/ContextMixin.sol";
File 5 of 6: RootChainProxy
12345678910111213141516// File: contracts/common/governance/IGovernance.solpragma solidity ^0.5.2;interface IGovernance {function update(address target, bytes calldata data) external;}// File: contracts/common/governance/Governable.solpragma solidity ^0.5.2;contract Governable {IGovernance public governance;
File 6 of 6: ERC20Predicate
12345678910111213141516pragma solidity 0.6.6;import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/SafeERC20.sol";import {AccessControlMixin} from "../../common/AccessControlMixin.sol";import {RLPReader} from "../../lib/RLPReader.sol";import {ITokenPredicate} from "./ITokenPredicate.sol";import {Initializable} from "../../common/Initializable.sol";contract ERC20Predicate is ITokenPredicate, AccessControlMixin, Initializable {using RLPReader for bytes;using RLPReader for RLPReader.RLPItem;using SafeERC20 for IERC20;bytes32 public constant MANAGER_ROLE = keccak256("MANAGER_ROLE");bytes32 public constant TOKEN_TYPE = keccak256("ERC20");bytes32 public constant TRANSFER_EVENT_SIG = 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef;event LockedERC20(address indexed depositor,