ETH Price: $2,540.86 (+0.28%)

Contract

0x680903545Eb03aC212910eF558F438DA3b867590
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Set Approval For...201959592024-06-29 7:49:4761 days ago1719647387IN
0x68090354...A3b867590
0 ETH0.000133992.50140665
Set Approval For...199920462024-05-31 19:57:4789 days ago1717185467IN
0x68090354...A3b867590
0 ETH0.000439598.2066281
Safe Transfer Fr...198862762024-05-17 1:00:11104 days ago1715907611IN
0x68090354...A3b867590
0 ETH0.000689792.89820783
Set Approval For...195739592024-04-03 8:07:59148 days ago1712131679IN
0x68090354...A3b867590
0 ETH0.0012751923.80609386
Set Approval For...195011112024-03-24 1:20:47158 days ago1711243247IN
0x68090354...A3b867590
0 ETH0.0007944314.83098107
Set Approval For...194451552024-03-16 4:40:47166 days ago1710564047IN
0x68090354...A3b867590
0 ETH0.0016343930.51861719
Set Approval For...194284002024-03-13 20:05:35168 days ago1710360335IN
0x68090354...A3b867590
0 ETH0.003732669.69800549
Transfer From194233942024-03-13 3:12:47169 days ago1710299567IN
0x68090354...A3b867590
0 ETH0.0085773139.41037931
Set Approval For...189317372024-01-04 4:58:35238 days ago1704344315IN
0x68090354...A3b867590
0 ETH0.0004621113.72632125
Set Approval For...189317372024-01-04 4:58:35238 days ago1704344315IN
0x68090354...A3b867590
0 ETH0.0007352613.72632125
Set Approval For...189067902023-12-31 16:57:23242 days ago1704041843IN
0x68090354...A3b867590
0 ETH0.0009152317.08607476
Set Approval For...189060352023-12-31 14:23:59242 days ago1704032639IN
0x68090354...A3b867590
0 ETH0.0009881618.45174311
Set Approval For...186627972023-11-27 11:51:35276 days ago1701085895IN
0x68090354...A3b867590
0 ETH0.0016587531.01528195
Set Render Type ...185115192023-11-06 7:41:11297 days ago1699256471IN
0x68090354...A3b867590
0 ETH0.0014285326.69709299
Set Render Type ...185115182023-11-06 7:40:59297 days ago1699256459IN
0x68090354...A3b867590
0 ETH0.0013430325.09915304
Set Approval For...185104682023-11-06 4:08:47297 days ago1699243727IN
0x68090354...A3b867590
0 ETH0.0012769223.83827968
Set Approval For...180022892023-08-27 0:00:59368 days ago1693094459IN
0x68090354...A3b867590
0 ETH0.0006917312.92816027
Set Approval For...179477632023-08-19 8:55:11376 days ago1692435311IN
0x68090354...A3b867590
0 ETH0.0006483312.12245423
Set Approval For...178959592023-08-12 2:59:59383 days ago1691809199IN
0x68090354...A3b867590
0 ETH0.0007104313.28355753
Set Approval For...178957902023-08-12 2:25:59383 days ago1691807159IN
0x68090354...A3b867590
0 ETH0.0006879812.84370581
Safe Transfer Fr...178953052023-08-12 0:47:35383 days ago1691801255IN
0x68090354...A3b867590
0 ETH0.0017372412.76334461
Safe Transfer Fr...178952972023-08-12 0:45:59383 days ago1691801159IN
0x68090354...A3b867590
0 ETH0.0032386614.14864086
Initialize178952352023-08-12 0:33:23383 days ago1691800403IN
0x68090354...A3b867590
0 ETH0.0669739313.18794275
Initialize178952272023-08-12 0:31:47383 days ago1691800307IN
0x68090354...A3b867590
0 ETH0.0679968613.55438356
Initialize178951822023-08-12 0:22:47383 days ago1691799767IN
0x68090354...A3b867590
0 ETH0.0004185812.04979774
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
201959592024-06-29 7:49:4761 days ago1719647387
0x68090354...A3b867590
0 ETH
199920462024-05-31 19:57:4789 days ago1717185467
0x68090354...A3b867590
0 ETH
198862762024-05-17 1:00:11104 days ago1715907611
0x68090354...A3b867590
0 ETH
198862762024-05-17 1:00:11104 days ago1715907611
0x68090354...A3b867590
0 ETH
198862762024-05-17 1:00:11104 days ago1715907611
0x68090354...A3b867590
0 ETH
198862762024-05-17 1:00:11104 days ago1715907611
0x68090354...A3b867590
0 ETH
198862762024-05-17 1:00:11104 days ago1715907611
0x68090354...A3b867590
0 ETH
198862762024-05-17 1:00:11104 days ago1715907611
0x68090354...A3b867590
0 ETH
198862762024-05-17 1:00:11104 days ago1715907611
0x68090354...A3b867590
0 ETH
198862762024-05-17 1:00:11104 days ago1715907611
0x68090354...A3b867590
0 ETH
198862762024-05-17 1:00:11104 days ago1715907611
0x68090354...A3b867590
0 ETH
198862762024-05-17 1:00:11104 days ago1715907611
0x68090354...A3b867590
0 ETH
198862762024-05-17 1:00:11104 days ago1715907611
0x68090354...A3b867590
0 ETH
195739682024-04-03 8:09:47148 days ago1712131787
0x68090354...A3b867590
0 ETH
195739682024-04-03 8:09:47148 days ago1712131787
0x68090354...A3b867590
0 ETH
195739682024-04-03 8:09:47148 days ago1712131787
0x68090354...A3b867590
0 ETH
195739682024-04-03 8:09:47148 days ago1712131787
0x68090354...A3b867590
0 ETH
195739682024-04-03 8:09:47148 days ago1712131787
0x68090354...A3b867590
0 ETH
195739682024-04-03 8:09:47148 days ago1712131787
0x68090354...A3b867590
0 ETH
195739682024-04-03 8:09:47148 days ago1712131787
0x68090354...A3b867590
0 ETH
195739682024-04-03 8:09:47148 days ago1712131787
0x68090354...A3b867590
0 ETH
195739682024-04-03 8:09:47148 days ago1712131787
0x68090354...A3b867590
0 ETH
195739682024-04-03 8:09:47148 days ago1712131787
0x68090354...A3b867590
0 ETH
195739682024-04-03 8:09:47148 days ago1712131787
0x68090354...A3b867590
0 ETH
195739682024-04-03 8:09:47148 days ago1712131787
0x68090354...A3b867590
0 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
TransparentUpgradeableProxy

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-08-12
*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.18;

abstract contract Proxy {
    function _delegate(address implementation) internal virtual {
        assembly {
            calldatacopy(0, 0, calldatasize())

            let result := delegatecall(gas(), implementation, 0, calldatasize(), 0, 0)

            returndatacopy(0, 0, returndatasize())

            switch result

            case 0 {
                revert(0, returndatasize())
            }
            default {
                return(0, returndatasize())
            }
        }
    }

    function _implementation() internal view virtual returns (address);

    function _fallback() internal virtual {
        _beforeFallback();
        _delegate(_implementation());
    }

    fallback() external payable virtual {
        _fallback();
    }

    receive() external payable virtual {
        _fallback();
    }

    function _beforeFallback() internal virtual {}
}

interface IBeacon {
    function implementation() external view returns (address);
}
interface IERC1822Proxiable {
    function proxiableUUID() external view returns (bytes32);
}
library Address {
    function isContract(address account) internal view returns (bool) {
        return account.code.length > 0;
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        (bool success, ) = recipient.call{value: amount}("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }

    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0, "Address: low-level call failed");
    }

    function functionCall(
        address target,
        bytes memory data,
        string memory errorMessage
    ) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0, errorMessage);
    }

    function functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value
    ) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
    }

    function functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value,
        string memory errorMessage
    ) internal returns (bytes memory) {
        require(address(this).balance >= value, "Address: insufficient balance for call");
        (bool success, bytes memory returndata) = target.call{value: value}(data);
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
    }

    function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
        return functionStaticCall(target, data, "Address: low-level static call failed");
    }

    function functionStaticCall(
        address target,
        bytes memory data,
        string memory errorMessage
    ) internal view returns (bytes memory) {
        (bool success, bytes memory returndata) = target.staticcall(data);
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
    }

    function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionDelegateCall(target, data, "Address: low-level delegate call failed");
    }

    function functionDelegateCall(
        address target,
        bytes memory data,
        string memory errorMessage
    ) internal returns (bytes memory) {
        (bool success, bytes memory returndata) = target.delegatecall(data);
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
    }

    function verifyCallResultFromTarget(
        address target,
        bool success,
        bytes memory returndata,
        string memory errorMessage
    ) internal view returns (bytes memory) {
        if (success) {
            if (returndata.length == 0) {
                require(isContract(target), "Address: call to non-contract");
            }
            return returndata;
        } else {
            _revert(returndata, errorMessage);
        }
    }

    function verifyCallResult(
        bool success,
        bytes memory returndata,
        string memory errorMessage
    ) internal pure returns (bytes memory) {
        if (success) {
            return returndata;
        } else {
            _revert(returndata, errorMessage);
        }
    }

    function _revert(bytes memory returndata, string memory errorMessage) private pure {
        if (returndata.length > 0) {
            assembly {
                let returndata_size := mload(returndata)
                revert(add(32, returndata), returndata_size)
            }
        } else {
            revert(errorMessage);
        }
    }
}
library StorageSlot {
    struct AddressSlot {
        address value;
    }

    struct BooleanSlot {
        bool value;
    }

    struct Bytes32Slot {
        bytes32 value;
    }

    struct Uint256Slot {
        uint256 value;
    }

    function getAddressSlot(bytes32 slot) internal pure returns (AddressSlot storage r) {
        assembly {
            r.slot := slot
        }
    }

    function getBooleanSlot(bytes32 slot) internal pure returns (BooleanSlot storage r) {
        assembly {
            r.slot := slot
        }
    }

    function getBytes32Slot(bytes32 slot) internal pure returns (Bytes32Slot storage r) {
        assembly {
            r.slot := slot
        }
    }

    function getUint256Slot(bytes32 slot) internal pure returns (Uint256Slot storage r) {
        assembly {
            r.slot := slot
        }
    }
}

abstract contract ERC1967Upgrade {
    bytes32 private constant _ROLLBACK_SLOT = 0x4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143;

    bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;

    event Upgraded(address indexed implementation);

    function _getImplementation() internal view returns (address) {
        return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value;
    }

    function _setImplementation(address newImplementation) private {
        require(Address.isContract(newImplementation), "ERC1967: new implementation is not a contract");
        StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = newImplementation;
    }

    function _upgradeTo(address newImplementation) internal {
        _setImplementation(newImplementation);
        emit Upgraded(newImplementation);
    }

    function _upgradeToAndCall(
        address newImplementation,
        bytes memory data,
        bool forceCall
    ) internal {
        _upgradeTo(newImplementation);
        if (data.length > 0 || forceCall) {
            Address.functionDelegateCall(newImplementation, data);
        }
    }

    function _upgradeToAndCallUUPS(
        address newImplementation,
        bytes memory data,
        bool forceCall
    ) internal {
        if (StorageSlot.getBooleanSlot(_ROLLBACK_SLOT).value) {
            _setImplementation(newImplementation);
        } else {
            try IERC1822Proxiable(newImplementation).proxiableUUID() returns (bytes32 slot) {
                require(slot == _IMPLEMENTATION_SLOT, "ERC1967Upgrade: unsupported proxiableUUID");
            } catch {
                revert("ERC1967Upgrade: new implementation is not UUPS");
            }
            _upgradeToAndCall(newImplementation, data, forceCall);
        }
    }

    bytes32 internal constant _ADMIN_SLOT = 0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103;

    event AdminChanged(address previousAdmin, address newAdmin);

    function _getAdmin() internal view returns (address) {
        return StorageSlot.getAddressSlot(_ADMIN_SLOT).value;
    }

    function _setAdmin(address newAdmin) private {
        require(newAdmin != address(0), "ERC1967: new admin is the zero address");
        StorageSlot.getAddressSlot(_ADMIN_SLOT).value = newAdmin;
    }

    function _changeAdmin(address newAdmin) internal {
        emit AdminChanged(_getAdmin(), newAdmin);
        _setAdmin(newAdmin);
    }

    bytes32 internal constant _BEACON_SLOT = 0xa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d50;

    event BeaconUpgraded(address indexed beacon);

    function _getBeacon() internal view returns (address) {
        return StorageSlot.getAddressSlot(_BEACON_SLOT).value;
    }

    function _setBeacon(address newBeacon) private {
        require(Address.isContract(newBeacon), "ERC1967: new beacon is not a contract");
        require(
            Address.isContract(IBeacon(newBeacon).implementation()),
            "ERC1967: beacon implementation is not a contract"
        );
        StorageSlot.getAddressSlot(_BEACON_SLOT).value = newBeacon;
    }

    function _upgradeBeaconToAndCall(
        address newBeacon,
        bytes memory data,
        bool forceCall
    ) internal {
        _setBeacon(newBeacon);
        emit BeaconUpgraded(newBeacon);
        if (data.length > 0 || forceCall) {
            Address.functionDelegateCall(IBeacon(newBeacon).implementation(), data);
        }
    }
}

contract ERC1967Proxy is Proxy, ERC1967Upgrade {
    constructor(address _logic, bytes memory _data) payable {
        _upgradeToAndCall(_logic, _data, false);
    }
    function _implementation() internal view virtual override returns (address impl) {
        return ERC1967Upgrade._getImplementation();
    }
}

contract TransparentUpgradeableProxy is ERC1967Proxy {
    constructor(
        address _logic,
        address admin_,
        bytes memory _data
    ) payable ERC1967Proxy(_logic, _data) {
        _changeAdmin(admin_);
    }

    modifier ifAdmin() {
        if (msg.sender == _getAdmin()) {
            _;
        } else {
            _fallback();
        }
    }

    function admin() external ifAdmin returns (address admin_) {
        admin_ = _getAdmin();
    }

    function implementation() external ifAdmin returns (address implementation_) {
        implementation_ = _implementation();
    }

    function changeAdmin(address newAdmin) external virtual ifAdmin {
        _changeAdmin(newAdmin);
    }

    function upgradeTo(address newImplementation) external ifAdmin {
        _upgradeToAndCall(newImplementation, bytes(""), false);
    }

    function upgradeToAndCall(address newImplementation, bytes calldata data) external payable ifAdmin {
        _upgradeToAndCall(newImplementation, data, true);
    }

    function _admin() internal view virtual returns (address) {
        return _getAdmin();
    }

    function _beforeFallback() internal virtual override {
        require(msg.sender != _getAdmin(), "TransparentUpgradeableProxy: admin cannot fallback to proxy target");
        super._beforeFallback();
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_logic","type":"address"},{"internalType":"address","name":"admin_","type":"address"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"previousAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"beacon","type":"address"}],"name":"BeaconUpgraded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"implementation","type":"address"}],"name":"Upgraded","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"admin_","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"changeAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"implementation","outputs":[{"internalType":"address","name":"implementation_","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"name":"upgradeTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[],"stateMutability":"payable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405260405162000e5138038062000e51833981016040819052620000269162000497565b828162000036828260006200004d565b50620000449050826200008a565b505050620005ca565b6200005883620000e5565b600082511180620000665750805b1562000085576200008383836200012760201b6200022e1760201c565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000b562000156565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000e2816200018f565b50565b620000f08162000244565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200014f838360405180606001604052806027815260200162000e2a60279139620002f8565b9392505050565b60006200018060008051602062000e0a83398151915260001b6200037760201b620001ea1760201c565b546001600160a01b0316919050565b6001600160a01b038116620001fa5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b806200022360008051602062000e0a83398151915260001b6200037760201b620001ea1760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b6200025a816200037a60201b6200025a1760201c565b620002be5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001f1565b80620002237f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60001b6200037760201b620001ea1760201c565b6060600080856001600160a01b03168560405162000317919062000577565b600060405180830381855af49150503d806000811462000354576040519150601f19603f3d011682016040523d82523d6000602084013e62000359565b606091505b5090925090506200036d8683838762000389565b9695505050505050565b90565b6001600160a01b03163b151590565b60608315620003fd578251600003620003f5576001600160a01b0385163b620003f55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001f1565b508162000409565b62000409838362000411565b949350505050565b815115620004225781518083602001fd5b8060405162461bcd60e51b8152600401620001f1919062000595565b80516001600160a01b03811681146200045657600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200048e57818101518382015260200162000474565b50506000910152565b600080600060608486031215620004ad57600080fd5b620004b8846200043e565b9250620004c8602085016200043e565b60408501519092506001600160401b0380821115620004e657600080fd5b818601915086601f830112620004fb57600080fd5b8151818111156200051057620005106200045b565b604051601f8201601f19908116603f011681019083821181831017156200053b576200053b6200045b565b816040528281528960208487010111156200055557600080fd5b6200056883602083016020880162000471565b80955050505050509250925092565b600082516200058b81846020870162000471565b9190910192915050565b6020815260008251806020840152620005b681604085016020870162000471565b601f01601f19169190910160400192915050565b61083080620005da6000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106c2565b610118565b61005b6100933660046106dd565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106c2565b6101ed565b3480156100f557600080fd5b506100ad61020d565b610106610269565b6101166101116102fe565b610308565b565b61012061032c565b6001600160a01b0316330361014d5761014a8160405180602001604052806000815250600061035f565b50565b61014a6100fe565b61015d61032c565b6001600160a01b031633036101b4576101af8383838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506001925061035f915050565b505050565b6101af6100fe565b60006101c661032c565b6001600160a01b031633036101e2576101dd6102fe565b905090565b6101ea6100fe565b90565b6101f561032c565b6001600160a01b0316330361014d5761014a8161038a565b600061021761032c565b6001600160a01b031633036101e2576101dd61032c565b606061025383836040518060600160405280602781526020016107d4602791396103de565b9392505050565b6001600160a01b03163b151590565b61027161032c565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd610456565b3660008037600080366000845af43d6000803e808015610327573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b6103688361047e565b6000825111806103755750805b156101af57610384838361022e565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103b361032c565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a816104be565b6060600080856001600160a01b0316856040516103fb9190610784565b600060405180830381855af49150503d8060008114610436576040519150601f19603f3d011682016040523d82523d6000602084013e61043b565b606091505b509150915061044c86838387610567565b9695505050505050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610350565b610487816105e8565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105235760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102f5565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b606083156105d65782516000036105cf576001600160a01b0385163b6105cf5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102f5565b50816105e0565b6105e0838361067c565b949350505050565b6001600160a01b0381163b6106555760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102f5565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610546565b81511561068c5781518083602001fd5b8060405162461bcd60e51b81526004016102f591906107a0565b80356001600160a01b03811681146106bd57600080fd5b919050565b6000602082840312156106d457600080fd5b610253826106a6565b6000806000604084860312156106f257600080fd5b6106fb846106a6565b9250602084013567ffffffffffffffff8082111561071857600080fd5b818601915086601f83011261072c57600080fd5b81358181111561073b57600080fd5b87602082850101111561074d57600080fd5b6020830194508093505050509250925092565b60005b8381101561077b578181015183820152602001610763565b50506000910152565b60008251610796818460208701610760565b9190910192915050565b60208152600082518060208401526107bf816040850160208701610760565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220e22ccc9984fa18371d0a7235971694ecb4ea0d62505bed7429f43ea49c2d6d5164736f6c63430008120033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656400000000000000000000000030ab5464441d355502d370b73abf01673f90e80a000000000000000000000000bbc9419d8492228ff9f6015303b4c076276a5cc900000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024bd5404a8000000000000000000000000a236e3a2a486e5937f13a9f421a656456230553800000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106c2565b610118565b61005b6100933660046106dd565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106c2565b6101ed565b3480156100f557600080fd5b506100ad61020d565b610106610269565b6101166101116102fe565b610308565b565b61012061032c565b6001600160a01b0316330361014d5761014a8160405180602001604052806000815250600061035f565b50565b61014a6100fe565b61015d61032c565b6001600160a01b031633036101b4576101af8383838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506001925061035f915050565b505050565b6101af6100fe565b60006101c661032c565b6001600160a01b031633036101e2576101dd6102fe565b905090565b6101ea6100fe565b90565b6101f561032c565b6001600160a01b0316330361014d5761014a8161038a565b600061021761032c565b6001600160a01b031633036101e2576101dd61032c565b606061025383836040518060600160405280602781526020016107d4602791396103de565b9392505050565b6001600160a01b03163b151590565b61027161032c565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd610456565b3660008037600080366000845af43d6000803e808015610327573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b6103688361047e565b6000825111806103755750805b156101af57610384838361022e565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103b361032c565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a816104be565b6060600080856001600160a01b0316856040516103fb9190610784565b600060405180830381855af49150503d8060008114610436576040519150601f19603f3d011682016040523d82523d6000602084013e61043b565b606091505b509150915061044c86838387610567565b9695505050505050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610350565b610487816105e8565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105235760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102f5565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b606083156105d65782516000036105cf576001600160a01b0385163b6105cf5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102f5565b50816105e0565b6105e0838361067c565b949350505050565b6001600160a01b0381163b6106555760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102f5565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610546565b81511561068c5781518083602001fd5b8060405162461bcd60e51b81526004016102f591906107a0565b80356001600160a01b03811681146106bd57600080fd5b919050565b6000602082840312156106d457600080fd5b610253826106a6565b6000806000604084860312156106f257600080fd5b6106fb846106a6565b9250602084013567ffffffffffffffff8082111561071857600080fd5b818601915086601f83011261072c57600080fd5b81358181111561073b57600080fd5b87602082850101111561074d57600080fd5b6020830194508093505050509250925092565b60005b8381101561077b578181015183820152602001610763565b50506000910152565b60008251610796818460208701610760565b9190910192915050565b60208152600082518060208401526107bf816040850160208701610760565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220e22ccc9984fa18371d0a7235971694ecb4ea0d62505bed7429f43ea49c2d6d5164736f6c63430008120033

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

00000000000000000000000030ab5464441d355502d370b73abf01673f90e80a000000000000000000000000bbc9419d8492228ff9f6015303b4c076276a5cc900000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024bd5404a8000000000000000000000000a236e3a2a486e5937f13a9f421a656456230553800000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _logic (address): 0x30aB5464441D355502D370b73aBf01673f90E80A
Arg [1] : admin_ (address): 0xBBC9419d8492228FF9F6015303B4c076276A5cC9
Arg [2] : _data (bytes): 0xbd5404a8000000000000000000000000a236e3a2a486e5937f13a9f421a6564562305538

-----Encoded View---------------
6 Constructor Arguments found :
Arg [0] : 00000000000000000000000030ab5464441d355502d370b73abf01673f90e80a
Arg [1] : 000000000000000000000000bbc9419d8492228ff9f6015303b4c076276a5cc9
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000024
Arg [4] : bd5404a8000000000000000000000000a236e3a2a486e5937f13a9f421a65645
Arg [5] : 6230553800000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

9899:1381:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;903:11;:9;:11::i;:::-;9899:1381;;830:11;:9;:11::i;10646:136::-;;;;;;;;;;-1:-1:-1;10646:136:0;;;;;:::i;:::-;;:::i;10790:166::-;;;;;;:::i;:::-;;:::i;10394:131::-;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;1217:32:1;;;1199:51;;1187:2;1172:18;10394:131:0;;;;;;;10533:105;;;;;;;;;;-1:-1:-1;10533:105:0;;;;;:::i;:::-;;:::i;10288:98::-;;;;;;;;;;;;;:::i;662:113::-;711:17;:15;:17::i;:::-;739:28;749:17;:15;:17::i;:::-;739:9;:28::i;:::-;662:113::o;10646:136::-;10188:11;:9;:11::i;:::-;-1:-1:-1;;;;;10174:25:0;:10;:25;10170:103;;10720:54:::1;10738:17;10757:9;;;;;;;;;;;::::0;10768:5:::1;10720:17;:54::i;:::-;10646:136:::0;:::o;10170:103::-;10250:11;:9;:11::i;10790:166::-;10188:11;:9;:11::i;:::-;-1:-1:-1;;;;;10174:25:0;:10;:25;10170:103;;10900:48:::1;10918:17;10937:4;;10900:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;10943:4:0::1;::::0;-1:-1:-1;10900:17:0::1;::::0;-1:-1:-1;;10900:48:0:i:1;:::-;10790:166:::0;;;:::o;10170:103::-;10250:11;:9;:11::i;10394:131::-;10446:23;10188:11;:9;:11::i;:::-;-1:-1:-1;;;;;10174:25:0;:10;:25;10170:103;;10500:17:::1;:15;:17::i;:::-;10482:35;;10394:131:::0;:::o;10170:103::-;10250:11;:9;:11::i;:::-;10394:131;:::o;10533:105::-;10188:11;:9;:11::i;:::-;-1:-1:-1;;;;;10174:25:0;:10;:25;10170:103;;10608:22:::1;10621:8;10608:12;:22::i;10288:98::-:0;10331:14;10188:11;:9;:11::i;:::-;-1:-1:-1;;;;;10174:25:0;:10;:25;10170:103;;10367:11:::1;:9;:11::i;3350:200::-:0;3433:12;3465:77;3486:6;3494:4;3465:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;3458:84;3350:200;-1:-1:-1;;;3350:200:0:o;1191:115::-;-1:-1:-1;;;;;1275:19:0;;:23;;;1191:115::o;11067:210::-;11153:11;:9;:11::i;:::-;-1:-1:-1;;;;;11139:25:0;:10;:25;11131:104;;;;-1:-1:-1;;;11131:104:0;;1463:2:1;11131:104:0;;;1445:21:1;1502:2;1482:18;;;1475:30;1541:34;1521:18;;;1514:62;1612:34;1592:18;;;1585:62;-1:-1:-1;;;1663:19:1;;;1656:33;1706:19;;11131:104:0;;;;;;;;9750:142;9817:12;9849:35;:33;:35::i;92:487::-;206:14;203:1;200;187:34;309:1;306;290:14;287:1;271:14;264:5;251:60;348:16;345:1;342;327:38;388:6;410:68;;;;529:16;526:1;519:27;410:68;446:16;443:1;436:27;8037:124;8081:7;7894:66;8108:39;:45;-1:-1:-1;;;;;8108:45:0;;8037:124;-1:-1:-1;8037:124:0:o;6867:304::-;7010:29;7021:17;7010:10;:29::i;:::-;7068:1;7054:4;:11;:15;:28;;;;7073:9;7054:28;7050:114;;;7099:53;7128:17;7147:4;7099:28;:53::i;:::-;;6867:304;;;:::o;8381:138::-;8446:35;8459:11;:9;:11::i;:::-;8446:35;;;-1:-1:-1;;;;;1966:15:1;;;1948:34;;2018:15;;;2013:2;1998:18;;1991:43;1883:18;8446:35:0;;;;;;;8492:19;8502:8;8492:9;:19::i;3558:332::-;3703:12;3729;3743:23;3770:6;-1:-1:-1;;;;;3770:19:0;3790:4;3770:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3728:67;;;;3813:69;3840:6;3848:7;3857:10;3869:12;3813:26;:69::i;:::-;3806:76;3558:332;-1:-1:-1;;;;;;3558:332:0:o;6284:142::-;6337:7;6154:66;6364:48;5313:151;6704:155;6771:37;6790:17;6771:18;:37::i;:::-;6824:27;;-1:-1:-1;;;;;6824:27:0;;;;;;;;6704:155;:::o;8169:204::-;-1:-1:-1;;;;;8233:22:0;;8225:73;;;;-1:-1:-1;;;8225:73:0;;2794:2:1;8225:73:0;;;2776:21:1;2833:2;2813:18;;;2806:30;2872:34;2852:18;;;2845:62;-1:-1:-1;;;2923:18:1;;;2916:36;2969:19;;8225:73:0;2592:402:1;8225:73:0;8357:8;7894:66;8309:39;:56;;-1:-1:-1;;;;;;8309:56:0;-1:-1:-1;;;;;8309:56:0;;;;;;;;;;-1:-1:-1;8169:204:0:o;3898:477::-;4083:12;4112:7;4108:260;;;4140:10;:17;4161:1;4140:22;4136:123;;-1:-1:-1;;;;;1275:19:0;;;4183:60;;;;-1:-1:-1;;;4183:60:0;;3201:2:1;4183:60:0;;;3183:21:1;3240:2;3220:18;;;3213:30;3279:31;3259:18;;;3252:59;3328:18;;4183:60:0;2999:353:1;4183:60:0;-1:-1:-1;4280:10:0;4273:17;;4108:260;4323:33;4331:10;4343:12;4323:7;:33::i;:::-;3898:477;;;;;;:::o;6434:262::-;-1:-1:-1;;;;;1275:19:0;;;6508:95;;;;-1:-1:-1;;;6508:95:0;;3559:2:1;6508:95:0;;;3541:21:1;3598:2;3578:18;;;3571:30;3637:34;3617:18;;;3610:62;-1:-1:-1;;;3688:18:1;;;3681:43;3741:19;;6508:95:0;3357:409:1;6508:95:0;6671:17;6154:66;6614:48;5313:151;4696:352;4794:17;;:21;4790:251;;4889:10;4883:17;4946:15;4933:10;4929:2;4925:19;4918:44;4790:251;5016:12;5009:20;;-1:-1:-1;;;5009:20:0;;;;;;;;:::i;14:173:1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:186::-;251:6;304:2;292:9;283:7;279:23;275:32;272:52;;;320:1;317;310:12;272:52;343:29;362:9;343:29;:::i;383:665::-;462:6;470;478;531:2;519:9;510:7;506:23;502:32;499:52;;;547:1;544;537:12;499:52;570:29;589:9;570:29;:::i;:::-;560:39;;650:2;639:9;635:18;622:32;673:18;714:2;706:6;703:14;700:34;;;730:1;727;720:12;700:34;768:6;757:9;753:22;743:32;;813:7;806:4;802:2;798:13;794:27;784:55;;835:1;832;825:12;784:55;875:2;862:16;901:2;893:6;890:14;887:34;;;917:1;914;907:12;887:34;962:7;957:2;948:6;944:2;940:15;936:24;933:37;930:57;;;983:1;980;973:12;930:57;1014:2;1010;1006:11;996:21;;1036:6;1026:16;;;;;383:665;;;;;:::o;2045:250::-;2130:1;2140:113;2154:6;2151:1;2148:13;2140:113;;;2230:11;;;2224:18;2211:11;;;2204:39;2176:2;2169:10;2140:113;;;-1:-1:-1;;2287:1:1;2269:16;;2262:27;2045:250::o;2300:287::-;2429:3;2467:6;2461:13;2483:66;2542:6;2537:3;2530:4;2522:6;2518:17;2483:66;:::i;:::-;2565:16;;;;;2300:287;-1:-1:-1;;2300:287:1:o;3771:396::-;3920:2;3909:9;3902:21;3883:4;3952:6;3946:13;3995:6;3990:2;3979:9;3975:18;3968:34;4011:79;4083:6;4078:2;4067:9;4063:18;4058:2;4050:6;4046:15;4011:79;:::i;:::-;4151:2;4130:15;-1:-1:-1;;4126:29:1;4111:45;;;;4158:2;4107:54;;3771:396;-1:-1:-1;;3771:396:1:o

Swarm Source

ipfs://e22ccc9984fa18371d0a7235971694ecb4ea0d62505bed7429f43ea49c2d6d51

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  ]

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.