ETH Price: $3,404.53 (+4.49%)

Contract

0x08C4b60fda8aA6239b7de7d165BCF6F1686Cad82
 

Multichain Info

1 address found via
Transaction Hash
Method
Block
From
To
Deposit For214670252024-12-23 18:38:476 hrs ago1734979127IN
0x08C4b60f...1686Cad82
0 ETH0.0008934610.060879
Deposit For214667632024-12-23 17:46:117 hrs ago1734975971IN
0x08C4b60f...1686Cad82
0 ETH0.0011725413.20348555
Deposit For214658332024-12-23 14:38:5910 hrs ago1734964739IN
0x08C4b60f...1686Cad82
0 ETH0.0026446329.27388535
Deposit For214652012024-12-23 12:31:3512 hrs ago1734957095IN
0x08C4b60f...1686Cad82
0 ETH0.000776498.59511056
Deposit Ether Fo...214647062024-12-23 10:51:5914 hrs ago1734951119IN
0x08C4b60f...1686Cad82
0.0118 ETH0.000700779.08864496
Deposit For214645392024-12-23 10:18:2314 hrs ago1734949103IN
0x08C4b60f...1686Cad82
0 ETH0.0009034410.04952235
Deposit For214644072024-12-23 9:51:3515 hrs ago1734947495IN
0x08C4b60f...1686Cad82
0 ETH0.0009378910.56397797
Deposit For214642712024-12-23 9:24:2315 hrs ago1734945863IN
0x08C4b60f...1686Cad82
0 ETH0.000779028.62314076
Exit214641992024-12-23 9:09:5916 hrs ago1734944999IN
0x08C4b60f...1686Cad82
0 ETH0.001915728.58851144
Deposit For214641982024-12-23 9:09:4716 hrs ago1734944987IN
0x08C4b60f...1686Cad82
0 ETH0.000779428.77903354
Exit214634532024-12-23 6:39:1118 hrs ago1734935951IN
0x08C4b60f...1686Cad82
0 ETH0.000863814.8305555
Deposit For214631602024-12-23 5:40:2319 hrs ago1734932423IN
0x08C4b60f...1686Cad82
0 ETH0.000605666.30067773
Exit214629842024-12-23 5:04:4720 hrs ago1734930287IN
0x08C4b60f...1686Cad82
0 ETH0.000982164.24975157
Deposit For214625962024-12-23 3:46:5921 hrs ago1734925619IN
0x08C4b60f...1686Cad82
0 ETH0.000711257.39820281
Exit214623942024-12-23 3:05:4722 hrs ago1734923147IN
0x08C4b60f...1686Cad82
0 ETH0.001103854.25164582
Deposit For214612762024-12-22 23:20:3525 hrs ago1734909635IN
0x08C4b60f...1686Cad82
0 ETH0.000402454.53183004
Deposit For214612232024-12-22 23:09:4726 hrs ago1734908987IN
0x08C4b60f...1686Cad82
0 ETH0.000531755.88613158
Exit214609202024-12-22 22:08:3527 hrs ago1734905315IN
0x08C4b60f...1686Cad82
0 ETH0.0022876710.60087671
Exit214607132024-12-22 21:26:4727 hrs ago1734902807IN
0x08C4b60f...1686Cad82
0 ETH0.001837877.4269212
Exit214603962024-12-22 20:22:5928 hrs ago1734898979IN
0x08C4b60f...1686Cad82
0 ETH0.0022768710.12637956
Deposit For214602152024-12-22 19:46:3529 hrs ago1734896795IN
0x08C4b60f...1686Cad82
0 ETH0.000719288
Exit214602112024-12-22 19:45:4729 hrs ago1734896747IN
0x08C4b60f...1686Cad82
0 ETH0.002254349.11957236
Exit214598572024-12-22 18:34:3530 hrs ago1734892475IN
0x08C4b60f...1686Cad82
0 ETH0.002780789.60069514
Deposit For214598272024-12-22 18:28:3530 hrs ago1734892115IN
0x08C4b60f...1686Cad82
0 ETH0.00061056.44842695
Deposit For214593082024-12-22 16:44:1132 hrs ago1734885851IN
0x08C4b60f...1686Cad82
0 ETH0.000895229.31291934
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
214647062024-12-23 10:51:5914 hrs ago1734951119
0x08C4b60f...1686Cad82
0.0118 ETH
214586892024-12-22 14:39:3534 hrs ago1734878375
0x08C4b60f...1686Cad82
0.005 ETH
214477922024-12-21 2:05:112 days ago1734746711
0x08C4b60f...1686Cad82
0.0135 ETH
214470822024-12-20 23:41:233 days ago1734738083
0x08C4b60f...1686Cad82
0.047 ETH
214449152024-12-20 16:26:353 days ago1734711995
0x08C4b60f...1686Cad82
0.084 ETH
214395182024-12-19 22:21:354 days ago1734646895
0x08C4b60f...1686Cad82
0.097 ETH
214366552024-12-19 12:46:234 days ago1734612383
0x08C4b60f...1686Cad82
0.011 ETH
214273572024-12-18 5:33:355 days ago1734500015
0x08C4b60f...1686Cad82
0.069 ETH
214181942024-12-16 22:52:477 days ago1734389567
0x08C4b60f...1686Cad82
0.024 ETH
214181432024-12-16 22:42:357 days ago1734388955
0x08C4b60f...1686Cad82
0.174 ETH
214116732024-12-16 1:03:238 days ago1734311003
0x08C4b60f...1686Cad82
0.166 ETH
214112942024-12-15 23:47:358 days ago1734306455
0x08C4b60f...1686Cad82
0.15 ETH
214092132024-12-15 16:48:598 days ago1734281339
0x08C4b60f...1686Cad82
0.013 ETH
214078512024-12-15 12:14:358 days ago1734264875
0x08C4b60f...1686Cad82
0.197 ETH
214072562024-12-15 10:14:598 days ago1734257699
0x08C4b60f...1686Cad82
0.144 ETH
213900622024-12-13 0:38:5911 days ago1734050339
0x08C4b60f...1686Cad82
0.01 ETH
213801872024-12-11 15:33:4712 days ago1733931227
0x08C4b60f...1686Cad82
0.22 ETH
213665352024-12-09 17:47:4714 days ago1733766467
0x08C4b60f...1686Cad82
0.003 ETH
213590362024-12-08 16:42:1115 days ago1733676131
0x08C4b60f...1686Cad82
0.02518144 ETH
213583792024-12-08 14:30:1115 days ago1733668211
0x08C4b60f...1686Cad82
0.01 ETH
213545012024-12-08 1:31:1115 days ago1733621471
0x08C4b60f...1686Cad82
0.11 ETH
213499562024-12-07 10:15:2316 days ago1733566523
0x08C4b60f...1686Cad82
0.19 ETH
213468712024-12-06 23:55:2317 days ago1733529323
0x08C4b60f...1686Cad82
0.013 ETH
213431422024-12-06 11:25:3517 days ago1733484335
0x08C4b60f...1686Cad82
0.393 ETH
213370602024-12-05 15:02:1118 days ago1733410931
0x08C4b60f...1686Cad82
0.025 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.