ETH Price: $3,390.44 (-1.64%)
Gas: 1 Gwei

Contract

0x08C4b60fda8aA6239b7de7d165BCF6F1686Cad82
 
Transaction Hash
Method
Block
From
To
Value
Deposit Ether Fo...201928402024-06-28 21:22:114 hrs ago1719609731IN
0x08C4b60f...1686Cad82
0.2 ETH0.000352934.5774537
Exit201927492024-06-28 21:03:594 hrs ago1719608639IN
0x08C4b60f...1686Cad82
0 ETH0.000950824.39544273
Deposit For201920512024-06-28 18:43:357 hrs ago1719600215IN
0x08C4b60f...1686Cad82
0 ETH0.000541295.71598037
Exit201912852024-06-28 16:09:119 hrs ago1719590951IN
0x08C4b60f...1686Cad82
0 ETH0.001792049.97347835
Deposit For201886822024-06-28 7:26:3518 hrs ago1719559595IN
0x08C4b60f...1686Cad82
0 ETH0.000429364.77481313
Deposit For201867802024-06-28 1:03:5924 hrs ago1719536639IN
0x08C4b60f...1686Cad82
0 ETH0.000486735
Exit201854222024-06-27 20:30:1129 hrs ago1719520211IN
0x08C4b60f...1686Cad82
0 ETH0.001429697.95740534
Deposit For201849262024-06-27 18:50:3531 hrs ago1719514235IN
0x08C4b60f...1686Cad82
0 ETH0.0009030210.0422117
Exit201844202024-06-27 17:08:5932 hrs ago1719508139IN
0x08C4b60f...1686Cad82
0 ETH0.003152917.53883199
Exit201822922024-06-27 10:01:1140 hrs ago1719482471IN
0x08C4b60f...1686Cad82
0 ETH0.001878557.79756629
Deposit For201813512024-06-27 6:51:5943 hrs ago1719471119IN
0x08C4b60f...1686Cad82
0 ETH0.000290613.23220527
Exit201812522024-06-27 6:31:5943 hrs ago1719469919IN
0x08C4b60f...1686Cad82
0 ETH0.001253656.97613197
Deposit For201780772024-06-26 19:54:112 days ago1719431651IN
0x08C4b60f...1686Cad82
0 ETH0.000775718.18924658
Deposit For201766602024-06-26 15:08:112 days ago1719414491IN
0x08C4b60f...1686Cad82
0 ETH0.0012788614.2237192
Exit201757042024-06-26 11:56:112 days ago1719402971IN
0x08C4b60f...1686Cad82
0 ETH0.001115835.87595406
Exit201750402024-06-26 9:43:112 days ago1719394991IN
0x08C4b60f...1686Cad82
0 ETH0.000432012.44179189
Deposit For201742062024-06-26 6:55:112 days ago1719384911IN
0x08C4b60f...1686Cad82
0 ETH0.000441124.53146966
Deposit Ether Fo...201730212024-06-26 2:57:352 days ago1719370655IN
0x08C4b60f...1686Cad82
0.018 ETH0.000352674.5739962
Exit201716862024-06-25 22:29:113 days ago1719354551IN
0x08C4b60f...1686Cad82
0 ETH0.001345445.4394094
Deposit For201711462024-06-25 20:41:113 days ago1719348071IN
0x08C4b60f...1686Cad82
0 ETH0.000665497.40165798
Deposit Ether Fo...201704362024-06-25 18:17:593 days ago1719339479IN
0x08C4b60f...1686Cad82
0.059 ETH0.0008593411.14531619
Exit201694912024-06-25 15:07:593 days ago1719328079IN
0x08C4b60f...1686Cad82
0 ETH0.0029142416.22240787
Exit201655882024-06-25 2:02:593 days ago1719280979IN
0x08C4b60f...1686Cad82
0 ETH0.000629813.16059301
Deposit For201652842024-06-25 1:01:474 days ago1719277307IN
0x08C4b60f...1686Cad82
0 ETH0.000563275.94726623
Exit201641432024-06-24 21:11:354 days ago1719263495IN
0x08C4b60f...1686Cad82
0 ETH0.001174386.53770695
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To Value
201928402024-06-28 21:22:114 hrs ago1719609731
0x08C4b60f...1686Cad82
0.2 ETH
201730212024-06-26 2:57:352 days ago1719370655
0x08C4b60f...1686Cad82
0.018 ETH
201704362024-06-25 18:17:593 days ago1719339479
0x08C4b60f...1686Cad82
0.059 ETH
201611492024-06-24 11:09:114 days ago1719227351
0x08C4b60f...1686Cad82
0.0252 ETH
201582132024-06-24 1:17:475 days ago1719191867
0x08C4b60f...1686Cad82
0.3 ETH
201570382024-06-23 21:21:235 days ago1719177683
0x08C4b60f...1686Cad82
0.065 ETH
201561982024-06-23 18:31:595 days ago1719167519
0x08C4b60f...1686Cad82
0.028 ETH
201554112024-06-23 15:53:475 days ago1719158027
0x08C4b60f...1686Cad82
0.015 ETH
201554012024-06-23 15:51:475 days ago1719157907
0x08C4b60f...1686Cad82
0.003 ETH
201553922024-06-23 15:49:595 days ago1719157799
0x08C4b60f...1686Cad82
0.028 ETH
201497192024-06-22 20:46:596 days ago1719089219
0x08C4b60f...1686Cad82
0.11 ETH
201490342024-06-22 18:28:476 days ago1719080927
0x08C4b60f...1686Cad82
0.07 ETH
201457692024-06-22 7:31:236 days ago1719041483
0x08C4b60f...1686Cad82
0.03 ETH
201445752024-06-22 3:30:116 days ago1719027011
0x08C4b60f...1686Cad82
0.029 ETH
201425742024-06-21 20:47:117 days ago1719002831
0x08C4b60f...1686Cad82
0.06 ETH
201349982024-06-20 19:23:238 days ago1718911403
0x08C4b60f...1686Cad82
0.095 ETH
201218112024-06-18 23:06:3510 days ago1718751995
0x08C4b60f...1686Cad82
0.03 ETH
201197522024-06-18 16:12:3510 days ago1718727155
0x08C4b60f...1686Cad82
0.03 ETH
201185882024-06-18 12:17:3510 days ago1718713055
0x08C4b60f...1686Cad82
0.04 ETH
201145282024-06-17 22:36:4711 days ago1718663807
0x08C4b60f...1686Cad82
0.008 ETH
201081372024-06-17 1:09:3512 days ago1718586575
0x08C4b60f...1686Cad82
0.04 ETH
201071872024-06-16 21:58:3512 days ago1718575115
0x08C4b60f...1686Cad82
1 ETH
201062072024-06-16 18:41:1112 days ago1718563271
0x08C4b60f...1686Cad82
0.0027 ETH
201007672024-06-16 0:28:1113 days ago1718497691
0x08C4b60f...1686Cad82
0.03 ETH
200992112024-06-15 19:13:5913 days ago1718478839
0x08C4b60f...1686Cad82
0.055 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
RootChainManagerProxy

Compiler Version
v0.6.6+commit.6c089d02

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2023-08-09
*/

pragma solidity 0.6.6;


interface IERCProxy {
    function proxyType() external pure returns (uint256 proxyTypeId);

    function implementation() external view returns (address codeAddr);
}



abstract contract Proxy is IERCProxy {
    function delegatedFwd(address _dst, bytes memory _calldata) internal {
        // solium-disable-next-line security/no-inline-assembly
        assembly {
            let result := delegatecall(
                sub(gas(), 10000),
                _dst,
                add(_calldata, 0x20),
                mload(_calldata),
                0,
                0
            )
            let size := returndatasize()

            let ptr := mload(0x40)
            returndatacopy(ptr, 0, size)

            // revert instead of invalid() bc if the underlying call failed with invalid() it already wasted gas.
            // if the call returned error data, forward it
            switch result
                case 0 {
                    revert(ptr, size)
                }
                default {
                    return(ptr, size)
                }
        }
    }

    function proxyType() external virtual override pure returns (uint256 proxyTypeId) {
        // Upgradeable proxy
        proxyTypeId = 2;
    }

    function implementation() external virtual override view returns (address);
}



contract UpgradableProxy is Proxy {
    event ProxyUpdated(address indexed _new, address indexed _old);
    event ProxyOwnerUpdate(address _new, address _old);

    bytes32 constant IMPLEMENTATION_SLOT = keccak256("matic.network.proxy.implementation");
    bytes32 constant OWNER_SLOT = keccak256("matic.network.proxy.owner");

    constructor(address _proxyTo) public {
        setProxyOwner(msg.sender);
        setImplementation(_proxyTo);
    }

    fallback() external payable {
        delegatedFwd(loadImplementation(), msg.data);
    }

    receive() external payable {
        delegatedFwd(loadImplementation(), msg.data);
    }

    modifier onlyProxyOwner() {
        require(loadProxyOwner() == msg.sender, "NOT_OWNER");
        _;
    }

    function proxyOwner() external view returns(address) {
        return loadProxyOwner();
    }

    function loadProxyOwner() internal view returns(address) {
        address _owner;
        bytes32 position = OWNER_SLOT;
        assembly {
            _owner := sload(position)
        }
        return _owner;
    }

    function implementation() external override view returns (address) {
        return loadImplementation();
    }

    function loadImplementation() internal view returns(address) {
        address _impl;
        bytes32 position = IMPLEMENTATION_SLOT;
        assembly {
            _impl := sload(position)
        }
        return _impl;
    }

    function transferProxyOwnership(address newOwner) public onlyProxyOwner {
        require(newOwner != address(0), "ZERO_ADDRESS");
        emit ProxyOwnerUpdate(newOwner, loadProxyOwner());
        setProxyOwner(newOwner);
    }

    function setProxyOwner(address newOwner) private {
        bytes32 position = OWNER_SLOT;
        assembly {
            sstore(position, newOwner)
        }
    }

    function updateImplementation(address _newProxyTo) public onlyProxyOwner {
        require(_newProxyTo != address(0x0), "INVALID_PROXY_ADDRESS");
        require(isContract(_newProxyTo), "DESTINATION_ADDRESS_IS_NOT_A_CONTRACT");

        emit ProxyUpdated(_newProxyTo, loadImplementation());
        
        setImplementation(_newProxyTo);
    }

    function updateAndCall(address _newProxyTo, bytes memory data) payable public onlyProxyOwner {
        updateImplementation(_newProxyTo);

        (bool success, bytes memory returnData) = address(this).call{value: msg.value}(data);
        require(success, string(returnData));
    }

    function setImplementation(address _newProxyTo) private {
        bytes32 position = IMPLEMENTATION_SLOT;
        assembly {
            sstore(position, _newProxyTo)
        }
    }
    
    function isContract(address _target) internal view returns (bool) {
        if (_target == address(0)) {
            return false;
        }

        uint256 size;
        assembly {
            size := extcodesize(_target)
        }
        return size > 0;
    }
}



contract RootChainManagerProxy is UpgradableProxy {
    constructor(address _proxyTo)
        public
        UpgradableProxy(_proxyTo)
    {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_proxyTo","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_new","type":"address"},{"indexed":false,"internalType":"address","name":"_old","type":"address"}],"name":"ProxyOwnerUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_new","type":"address"},{"indexed":true,"internalType":"address","name":"_old","type":"address"}],"name":"ProxyUpdated","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"implementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxyType","outputs":[{"internalType":"uint256","name":"proxyTypeId","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferProxyOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newProxyTo","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"updateAndCall","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_newProxyTo","type":"address"}],"name":"updateImplementation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405234801561001057600080fd5b506040516108783803806108788339818101604052602081101561003357600080fd5b505180610048336001600160e01b0361006116565b61005a816001600160e01b0361009616565b50506100b8565b604080517f6d617469632e6e6574776f726b2e70726f78792e6f776e6572000000000000008152905190819003601901902055565b6000604051808061085660229139604051908190036022019020929092555050565b61078f806100c76000396000f3fe6080604052600436106100595760003560e01c8063025313a2146100b3578063025b22bc146100e45780634555d5c9146101175780635c60da1b1461013e578063d88ca2c814610153578063f1739cae14610209576100a8565b366100a8576100a661006961023c565b6000368080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061026292505050565b005b6100a661006961023c565b3480156100bf57600080fd5b506100c861028a565b604080516001600160a01b039092168252519081900360200190f35b3480156100f057600080fd5b506100a66004803603602081101561010757600080fd5b50356001600160a01b0316610299565b34801561012357600080fd5b5061012c6103d3565b60408051918252519081900360200190f35b34801561014a57600080fd5b506100c86103d8565b6100a66004803603604081101561016957600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561019457600080fd5b8201836020820111156101a657600080fd5b803590602001918460018302840111640100000000831117156101c857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506103e2945050505050565b34801561021557600080fd5b506100a66004803603602081101561022c57600080fd5b50356001600160a01b0316610578565b600080600060405180806107386022913960405190819003602201902054935050505090565b600080825160208401856127105a03f43d604051816000823e828015610286578282f35b8282fd5b600061029461066a565b905090565b336102a261066a565b6001600160a01b0316146102e9576040805162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015290519081900360640190fd5b6001600160a01b03811661033c576040805162461bcd60e51b8152602060048201526015602482015274494e56414c49445f50524f58595f4144445245535360581b604482015290519081900360640190fd5b6103458161069c565b6103805760405162461bcd60e51b81526004018080602001828103825260258152602001806107136025913960400191505060405180910390fd5b61038861023c565b6001600160a01b0316816001600160a01b03167fd32d24edea94f55e932d9a008afc425a8561462d1b1f57bc6e508e9a6b9509e160405160405180910390a36103d0816106bf565b50565b600290565b600061029461023c565b336103eb61066a565b6001600160a01b031614610432576040805162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015290519081900360640190fd5b61043b82610299565b60006060306001600160a01b031634846040518082805190602001908083835b6020831061047a5780518252601f19909201916020918201910161045b565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146104dc576040519150601f19603f3d011682016040523d82523d6000602084013e6104e1565b606091505b50915091508181906105715760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561053657818101518382015260200161051e565b50505050905090810190601f1680156105635780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5050505050565b3361058161066a565b6001600160a01b0316146105c8576040805162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015290519081900360640190fd5b6001600160a01b038116610612576040805162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b604482015290519081900360640190fd5b7fdbe5fd65bcdbae152f24ab660ea68e72b4d4705b57b16e0caae994e214680ee28161063c61066a565b604080516001600160a01b03938416815291909216602082015281519081900390910190a16103d0816106e1565b604080517836b0ba34b1973732ba3bb7b93597383937bc3c9737bbb732b960391b815290519081900360190190205490565b60006001600160a01b0382166106b4575060006106ba565b50803b15155b919050565b6000604051808061073860229139604051908190036022019020929092555050565b604080517836b0ba34b1973732ba3bb7b93597383937bc3c9737bbb732b960391b815290519081900360190190205556fe44455354494e4154494f4e5f414444524553535f49535f4e4f545f415f434f4e54524143546d617469632e6e6574776f726b2e70726f78792e696d706c656d656e746174696f6ea264697066735822122052f0cfc019e93456705af4fd061c1975fbf3d286e8331d79a6d31f24b39a8ad764736f6c634300060600336d617469632e6e6574776f726b2e70726f78792e696d706c656d656e746174696f6e0000000000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106100595760003560e01c8063025313a2146100b3578063025b22bc146100e45780634555d5c9146101175780635c60da1b1461013e578063d88ca2c814610153578063f1739cae14610209576100a8565b366100a8576100a661006961023c565b6000368080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061026292505050565b005b6100a661006961023c565b3480156100bf57600080fd5b506100c861028a565b604080516001600160a01b039092168252519081900360200190f35b3480156100f057600080fd5b506100a66004803603602081101561010757600080fd5b50356001600160a01b0316610299565b34801561012357600080fd5b5061012c6103d3565b60408051918252519081900360200190f35b34801561014a57600080fd5b506100c86103d8565b6100a66004803603604081101561016957600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561019457600080fd5b8201836020820111156101a657600080fd5b803590602001918460018302840111640100000000831117156101c857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506103e2945050505050565b34801561021557600080fd5b506100a66004803603602081101561022c57600080fd5b50356001600160a01b0316610578565b600080600060405180806107386022913960405190819003602201902054935050505090565b600080825160208401856127105a03f43d604051816000823e828015610286578282f35b8282fd5b600061029461066a565b905090565b336102a261066a565b6001600160a01b0316146102e9576040805162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015290519081900360640190fd5b6001600160a01b03811661033c576040805162461bcd60e51b8152602060048201526015602482015274494e56414c49445f50524f58595f4144445245535360581b604482015290519081900360640190fd5b6103458161069c565b6103805760405162461bcd60e51b81526004018080602001828103825260258152602001806107136025913960400191505060405180910390fd5b61038861023c565b6001600160a01b0316816001600160a01b03167fd32d24edea94f55e932d9a008afc425a8561462d1b1f57bc6e508e9a6b9509e160405160405180910390a36103d0816106bf565b50565b600290565b600061029461023c565b336103eb61066a565b6001600160a01b031614610432576040805162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015290519081900360640190fd5b61043b82610299565b60006060306001600160a01b031634846040518082805190602001908083835b6020831061047a5780518252601f19909201916020918201910161045b565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146104dc576040519150601f19603f3d011682016040523d82523d6000602084013e6104e1565b606091505b50915091508181906105715760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561053657818101518382015260200161051e565b50505050905090810190601f1680156105635780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5050505050565b3361058161066a565b6001600160a01b0316146105c8576040805162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015290519081900360640190fd5b6001600160a01b038116610612576040805162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b604482015290519081900360640190fd5b7fdbe5fd65bcdbae152f24ab660ea68e72b4d4705b57b16e0caae994e214680ee28161063c61066a565b604080516001600160a01b03938416815291909216602082015281519081900390910190a16103d0816106e1565b604080517836b0ba34b1973732ba3bb7b93597383937bc3c9737bbb732b960391b815290519081900360190190205490565b60006001600160a01b0382166106b4575060006106ba565b50803b15155b919050565b6000604051808061073860229139604051908190036022019020929092555050565b604080517836b0ba34b1973732ba3bb7b93597383937bc3c9737bbb732b960391b815290519081900360190190205556fe44455354494e4154494f4e5f414444524553535f49535f4e4f545f415f434f4e54524143546d617469632e6e6574776f726b2e70726f78792e696d706c656d656e746174696f6ea264697066735822122052f0cfc019e93456705af4fd061c1975fbf3d286e8331d79a6d31f24b39a8ad764736f6c63430006060033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _proxyTo (address): 0x0000000000000000000000000000000000000000

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000000


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.