ETH Price: $3,068.43 (+2.58%)
Gas: 4 Gwei

Token

Instadapp USDC (iUSDC)
 

Overview

Max Total Supply

13,570.425375 iUSDC

Holders

77 (0.00%)

Market

Price

$1.16 @ 0.000378 ETH (+0.01%)

Onchain Market Cap

$15,741.69

Circulating Supply Market Cap

$15,826.99

Other Info

Token Contract (WITH 6 Decimals)

Balance
9.99888 iUSDC

Value
$11.60 ( ~0.00378042905823351 Eth) [0.0737%]
0xaEB2584fD2C1d1C27dC72afcb8e858a5fFE4C794
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

Instadapp is an open source and non-custodial middleware platform for decentralized finance applications.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
InstaVault

Compiler Version
v0.8.6+commit.11564f7e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 3 : infiniteProxy.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "../../infiniteProxy/proxy.sol";

contract InstaVault is Proxy {
    constructor(address admin_, address dummyImplementation_)
        Proxy(admin_, dummyImplementation_)
    {}
}

File 2 of 3 : proxy.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "./events.sol";

/**
 * @dev This abstract contract provides a fallback function that delegates all calls to another contract using the EVM
 * instruction `delegatecall`.
 */
contract Internals is Events {
    struct AddressSlot {
        address value;
    }

    struct SigsSlot {
        bytes4[] value;
    }

    /**
     * @dev Storage slot with the admin of the contract.
     * This is the keccak-256 hash of "eip1967.proxy.admin" subtracted by 1, and is
     * validated in the constructor.
     */
    bytes32 internal constant _ADMIN_SLOT =
        0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103;

    /**
     * @dev Storage slot with the address of the current dummy-implementation.
     * This is the keccak-256 hash of "eip1967.proxy.implementation" subtracted by 1, and is
     * validated in the constructor.
     */
    bytes32 internal constant _DUMMY_IMPLEMENTATION_SLOT =
        0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;

    function _getSlotImplSigsSlot(address implementation_)
        internal
        pure
        returns (bytes32)
    {
        return
            keccak256(
                abi.encode("eip1967.proxy.implementation", implementation_)
            );
    }

    function _getSlotSigsImplSlot(bytes4 sig_) internal pure returns (bytes32) {
        return keccak256(abi.encode("eip1967.proxy.implementation", sig_));
    }

    /**
     * @dev Returns an `AddressSlot` with member `value` located at `slot`.
     */
    function getAddressSlot(bytes32 slot_)
        internal
        pure
        returns (AddressSlot storage _r)
    {
        assembly {
            _r.slot := slot_
        }
    }

    /**
     * @dev Returns an `SigsSlot` with member `value` located at `slot`.
     */
    function getSigsSlot(bytes32 slot_)
        internal
        pure
        returns (SigsSlot storage _r)
    {
        assembly {
            _r.slot := slot_
        }
    }

    /**
     * @dev Sets new implementation and adds mapping from implementation to sigs and sig to implementation.
     */
    function _setImplementationSigs(
        address implementation_,
        bytes4[] memory sigs_
    ) internal {
        require(sigs_.length != 0, "no-sigs");
        bytes32 slot_ = _getSlotImplSigsSlot(implementation_);
        bytes4[] memory sigsCheck_ = getSigsSlot(slot_).value;
        require(sigsCheck_.length == 0, "implementation-already-exist");
        for (uint256 i = 0; i < sigs_.length; i++) {
            bytes32 sigSlot_ = _getSlotSigsImplSlot(sigs_[i]);
            require(
                getAddressSlot(sigSlot_).value == address(0),
                "sig-already-exist"
            );
            getAddressSlot(sigSlot_).value = implementation_;
        }
        getSigsSlot(slot_).value = sigs_;
        emit setImplementationLog(implementation_, sigs_);
    }

    /**
     * @dev removes implementation and the mappings corresponding to it.
     */
    function _removeImplementationSigs(address implementation_) internal {
        bytes32 slot_ = _getSlotImplSigsSlot(implementation_);
        bytes4[] memory sigs_ = getSigsSlot(slot_).value;
        require(sigs_.length != 0, "implementation-not-exist");
        for (uint256 i = 0; i < sigs_.length; i++) {
            bytes32 sigSlot_ = _getSlotSigsImplSlot(sigs_[i]);
            delete getAddressSlot(sigSlot_).value;
        }
        delete getSigsSlot(slot_).value;
        emit removeImplementationLog(implementation_);
    }

    function _getImplementationSigs(address implementation_)
        internal
        view
        returns (bytes4[] memory)
    {
        bytes32 slot_ = _getSlotImplSigsSlot(implementation_);
        return getSigsSlot(slot_).value;
    }

    function _getSigImplementation(bytes4 sig_)
        internal
        view
        returns (address implementation_)
    {
        bytes32 slot_ = _getSlotSigsImplSlot(sig_);
        return getAddressSlot(slot_).value;
    }

    /**
     * @dev Returns the current admin.
     */
    function _getAdmin() internal view returns (address) {
        return getAddressSlot(_ADMIN_SLOT).value;
    }

    /**
     * @dev Returns the current dummy-implementation.
     */
    function _getDummyImplementation() internal view returns (address) {
        return getAddressSlot(_DUMMY_IMPLEMENTATION_SLOT).value;
    }

    /**
     * @dev Stores a new address in the EIP1967 admin slot.
     */
    function _setAdmin(address newAdmin_) internal {
        address oldAdmin_ = _getAdmin();
        require(
            newAdmin_ != address(0),
            "ERC1967: new admin is the zero address"
        );
        getAddressSlot(_ADMIN_SLOT).value = newAdmin_;
        emit setAdminLog(oldAdmin_, newAdmin_);
    }

    /**
     * @dev Stores a new address in the EIP1967 implementation slot.
     */
    function _setDummyImplementation(address newDummyImplementation_) internal {
        address oldDummyImplementation_ = _getDummyImplementation();
        getAddressSlot(_DUMMY_IMPLEMENTATION_SLOT)
            .value = newDummyImplementation_;
        emit setDummyImplementationLog(
            oldDummyImplementation_,
            newDummyImplementation_
        );
    }

    /**
     * @dev Delegates the current call to `implementation`.
     *
     * This function does not return to its internall call site, it will return directly to the external caller.
     */
    function _delegate(address implementation_) internal {
        // solhint-disable-next-line no-inline-assembly
        assembly {
            // Copy msg.data. We take full control of memory in this inline assembly
            // block because it will not return to Solidity code. We overwrite the
            // Solidity scratch pad at memory position 0.
            calldatacopy(0, 0, calldatasize())

            // Call the implementation.
            // out and outsize are 0 because we don't know the size yet.
            let result := delegatecall(
                gas(),
                implementation_,
                0,
                calldatasize(),
                0,
                0
            )

            // Copy the returned data.
            returndatacopy(0, 0, returndatasize())

            switch result
            // delegatecall returns 0 on error.
            case 0 {
                revert(0, returndatasize())
            }
            default {
                return(0, returndatasize())
            }
        }
    }

    /**
     * @dev Delegates the current call to the address returned by Implementations registry.
     *
     * This function does not return to its internall call site, it will return directly to the external caller.
     */
    function _fallback(bytes4 sig_) internal {
        address implementation_ = _getSigImplementation(sig_);
        require(
            implementation_ != address(0),
            "Liquidity: Not able to find implementation_"
        );
        _delegate(implementation_);
    }
}

contract AdminStuff is Internals {
    modifier onlyAdmin() {
        require(msg.sender == _getAdmin(), "not-the-admin");
        _;
    }

    /**
     * @dev sets new admin.
     */
    function setAdmin(address newAdmin_) external onlyAdmin {
        _setAdmin(newAdmin_);
    }

    /**
     * @dev sets new dummy-implementation.
     */
    function setDummyImplementation(address newDummyImplementation_)
        external
        onlyAdmin
    {
        _setDummyImplementation(newDummyImplementation_);
    }

    /**
     * @dev adds new implementation address.
     */
    function addImplementation(address implementation_, bytes4[] calldata sigs_)
        external
        onlyAdmin
    {
        _setImplementationSigs(implementation_, sigs_);
    }

    /**
     * @dev removes an existing implementation address.
     */
    function removeImplementation(address implementation_) external onlyAdmin {
        _removeImplementationSigs(implementation_);
    }

    constructor(address admin_, address dummyImplementation_) {
        _setAdmin(admin_);
        _setDummyImplementation(dummyImplementation_);
    }
}

abstract contract Proxy is AdminStuff {
    constructor(address admin_, address dummyImplementation_)
        AdminStuff(admin_, dummyImplementation_)
    {}

    /**
     * @dev returns admin's address.
     */
    function getAdmin() external view returns (address) {
        return _getAdmin();
    }

    /**
     * @dev returns dummy-implementations's address.
     */
    function getDummyImplementation() external view returns (address) {
        return _getDummyImplementation();
    }

    /**
     * @dev returns bytes4[] sigs from implementation address If not registered then returns empty array.
     */
    function getImplementationSigs(address impl_)
        external
        view
        returns (bytes4[] memory)
    {
        return _getImplementationSigs(impl_);
    }

    /**
     * @dev returns implementation address from bytes4 sig. If sig is not registered then returns address(0).
     */
    function getSigsImplementation(bytes4 sig_)
        external
        view
        returns (address)
    {
        return _getSigImplementation(sig_);
    }

    /**
     * @dev Fallback function that delegates calls to the address returned by Implementations registry.
     */
    fallback() external payable {
        _fallback(msg.sig);
    }

    /**
     * @dev Fallback function that delegates calls to the address returned by Implementations registry.
     */
    receive() external payable {
        if (msg.sig != 0x00000000) {
            _fallback(msg.sig);
        }
    }
}

File 3 of 3 : events.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract Events {
    event setAdminLog(address oldAdmin_, address newAdmin_);

    event setDummyImplementationLog(
        address oldDummyImplementation_,
        address newDummyImplementation_
    );

    event setImplementationLog(address implementation_, bytes4[] sigs_);

    event removeImplementationLog(address implementation_);
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"admin_","type":"address"},{"internalType":"address","name":"dummyImplementation_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"implementation_","type":"address"}],"name":"removeImplementationLog","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldAdmin_","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin_","type":"address"}],"name":"setAdminLog","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldDummyImplementation_","type":"address"},{"indexed":false,"internalType":"address","name":"newDummyImplementation_","type":"address"}],"name":"setDummyImplementationLog","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"implementation_","type":"address"},{"indexed":false,"internalType":"bytes4[]","name":"sigs_","type":"bytes4[]"}],"name":"setImplementationLog","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"implementation_","type":"address"},{"internalType":"bytes4[]","name":"sigs_","type":"bytes4[]"}],"name":"addImplementation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDummyImplementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"impl_","type":"address"}],"name":"getImplementationSigs","outputs":[{"internalType":"bytes4[]","name":"","type":"bytes4[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes4","name":"sig_","type":"bytes4"}],"name":"getSigsImplementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"implementation_","type":"address"}],"name":"removeImplementation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin_","type":"address"}],"name":"setAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newDummyImplementation_","type":"address"}],"name":"setDummyImplementation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040523480156200001157600080fd5b506040516200106138038062001061833981016040819052620000349162000208565b8181818162000043826200005a565b6200004e816200013e565b50505050505062000240565b600062000066620001b1565b90506001600160a01b038216620000d25760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840160405180910390fd5b816000805160206200102183398151915280546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527fa2010e522d52edde51a4dcbc8241004a97a55844cfa6823ddabbb3cafe993a6291015b60405180910390a15050565b60006200014a620001d3565b9050816000805160206200104183398151915280546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527fa0dd191daed6af360e85495ba5fa09c213452c3cda2f13e995775d5756deda00910162000132565b6000600080516020620010218339815191525b546001600160a01b0316919050565b600060008051602062001041833981519152620001c4565b80516001600160a01b03811681146200020357600080fd5b919050565b600080604083850312156200021c57600080fd5b6200022783620001eb565b91506200023760208401620001eb565b90509250929050565b610dd180620002506000396000f3fe60806040526004361061007f5760003560e01c8063908bfe5e1161004e578063908bfe5e14610161578063a5fcc8bc14610176578063c39aa07d14610196578063f0c01b42146101b6576100ad565b806322175a32146100c25780636e9960c3146100e2578063704b6c021461011457806389396dc814610134576100ad565b366100ad576001600160e01b031960003516156100ab576100ab6000356001600160e01b0319166101d6565b005b6100ab6000356001600160e01b0319166101d6565b3480156100ce57600080fd5b506100ab6100dd366004610b34565b61025f565b3480156100ee57600080fd5b506100f76102a3565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561012057600080fd5b506100ab61012f366004610b34565b6102b2565b34801561014057600080fd5b5061015461014f366004610b34565b6102f3565b60405161010b9190610c77565b34801561016d57600080fd5b506100f7610304565b34801561018257600080fd5b506100f7610191366004610bdc565b61030e565b3480156101a257600080fd5b506100ab6101b1366004610b34565b610319565b3480156101c257600080fd5b506100ab6101d1366004610b56565b61035a565b60006101e1826103d4565b90506001600160a01b0381166102525760405162461bcd60e51b815260206004820152602b60248201527f4c69717569646974793a204e6f742061626c6520746f2066696e6420696d706c60448201526a656d656e746174696f6e5f60a81b60648201526084015b60405180910390fd5b61025b816103f1565b5050565b610267610415565b6001600160a01b0316336001600160a01b0316146102975760405162461bcd60e51b815260040161024990610d35565b6102a081610448565b50565b60006102ad610415565b905090565b6102ba610415565b6001600160a01b0316336001600160a01b0316146102ea5760405162461bcd60e51b815260040161024990610d35565b6102a0816105c3565b60606102fe826106b1565b92915050565b60006102ad610742565b60006102fe826103d4565b610321610415565b6001600160a01b0316336001600160a01b0316146103515760405162461bcd60e51b815260040161024990610d35565b6102a08161076a565b610362610415565b6001600160a01b0316336001600160a01b0316146103925760405162461bcd60e51b815260040161024990610d35565b6103cf838383808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152506107eb92505050565b505050565b6000806103e0836109ef565b546001600160a01b03169392505050565b3660008037600080366000845af43d6000803e808015610410573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b600061045382610a1f565b90506000818054604080516020808402820181019092528281529291908301828280156104cc57602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b0319168152602001906004019060208260030104928301926001038202915080841161048e5790505b505050505090508051600014156105255760405162461bcd60e51b815260206004820152601860248201527f696d706c656d656e746174696f6e2d6e6f742d657869737400000000000000006044820152606401610249565b60005b815181101561057657600061055583838151811061054857610548610d85565b60200260200101516109ef565b80546001600160a01b0319169055508061056e81610d5c565b915050610528565b50610582826000610a32565b6040516001600160a01b03841681527fd854fc630d6476d1ad6df14d295fdb83c1464a63cf75d456f14cd75353696ed39060200160405180910390a1505050565b60006105cd610415565b90506001600160a01b0382166106345760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b6064820152608401610249565b817fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610380546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527fa2010e522d52edde51a4dcbc8241004a97a55844cfa6823ddabbb3cafe993a6291015b60405180910390a15050565b606060006106be83610a1f565b90508080546040805160208084028201810190925282815292919083018282801561073557602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116106f75790505b5050505050915050919050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610439565b6000610774610742565b9050817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527fa0dd191daed6af360e85495ba5fa09c213452c3cda2f13e995775d5756deda0091016106a5565b80516108235760405162461bcd60e51b81526020600482015260076024820152666e6f2d7369677360c81b6044820152606401610249565b600061082e83610a1f565b90506000818054604080516020808402820181019092528281529291908301828280156108a757602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116108695790505b5050505050905080516000146108ff5760405162461bcd60e51b815260206004820152601c60248201527f696d706c656d656e746174696f6e2d616c72656164792d6578697374000000006044820152606401610249565b60005b835181101561099d57600061092285838151811061054857610548610d85565b9050600081546001600160a01b0316146109725760405162461bcd60e51b81526020600482015260116024820152701cda59cb585b1c9958591e4b595e1a5cdd607a1b6044820152606401610249565b80546001600160a01b0319166001600160a01b0387161790558061099581610d5c565b915050610902565b50828281516109af9260200190610a57565b507f955f674d8fbada18242ae4d19f71c66ce496150270d0c82520ab4b40ce61d1af84846040516109e1929190610c4b565b60405180910390a150505050565b600081604051602001610a029190610ce1565b604051602081830303815290604052805190602001209050919050565b600081604051602001610a029190610c8a565b5080546000825560070160089004906000526020600020908101906102a09190610b03565b82805482825590600052602060002090600701600890048101928215610af35791602002820160005b83821115610ac157835183826101000a81548163ffffffff021916908360e01c02179055509260200192600401602081600301049283019260010302610a80565b8015610af15782816101000a81549063ffffffff0219169055600401602081600301049283019260010302610ac1565b505b50610aff929150610b03565b5090565b5b80821115610aff5760008155600101610b04565b80356001600160a01b0381168114610b2f57600080fd5b919050565b600060208284031215610b4657600080fd5b610b4f82610b18565b9392505050565b600080600060408486031215610b6b57600080fd5b610b7484610b18565b9250602084013567ffffffffffffffff80821115610b9157600080fd5b818601915086601f830112610ba557600080fd5b813581811115610bb457600080fd5b8760208260051b8501011115610bc957600080fd5b6020830194508093505050509250925092565b600060208284031215610bee57600080fd5b81356001600160e01b031981168114610b4f57600080fd5b600081518084526020808501945080840160005b83811015610c405781516001600160e01b03191687529582019590820190600101610c1a565b509495945050505050565b6001600160a01b0383168152604060208201819052600090610c6f90830184610c06565b949350505050565b602081526000610b4f6020830184610c06565b604081526000610cc760408301601c81527f656970313936372e70726f78792e696d706c656d656e746174696f6e00000000602082015260400190565b6001600160a01b0393909316602092909201919091525090565b604081526000610d1e60408301601c81527f656970313936372e70726f78792e696d706c656d656e746174696f6e00000000602082015260400190565b905063ffffffff60e01b8316602083015292915050565b6020808252600d908201526c3737ba16ba343296b0b236b4b760991b604082015260600190565b6000600019821415610d7e57634e487b7160e01b600052601160045260246000fd5b5060010190565b634e487b7160e01b600052603260045260246000fdfea26469706673582212201a3d0bdbe0efe66c8e042905301f3f524fe4a8e6740f8ca26e1eff5c2f82725464736f6c63430008060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc00000000000000000000000085b40eb65e49eb61de78a3a989752249f8837fc500000000000000000000000076b2d8a03ada1b767974aa6af20c86737eb3e103

Deployed Bytecode

0x60806040526004361061007f5760003560e01c8063908bfe5e1161004e578063908bfe5e14610161578063a5fcc8bc14610176578063c39aa07d14610196578063f0c01b42146101b6576100ad565b806322175a32146100c25780636e9960c3146100e2578063704b6c021461011457806389396dc814610134576100ad565b366100ad576001600160e01b031960003516156100ab576100ab6000356001600160e01b0319166101d6565b005b6100ab6000356001600160e01b0319166101d6565b3480156100ce57600080fd5b506100ab6100dd366004610b34565b61025f565b3480156100ee57600080fd5b506100f76102a3565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561012057600080fd5b506100ab61012f366004610b34565b6102b2565b34801561014057600080fd5b5061015461014f366004610b34565b6102f3565b60405161010b9190610c77565b34801561016d57600080fd5b506100f7610304565b34801561018257600080fd5b506100f7610191366004610bdc565b61030e565b3480156101a257600080fd5b506100ab6101b1366004610b34565b610319565b3480156101c257600080fd5b506100ab6101d1366004610b56565b61035a565b60006101e1826103d4565b90506001600160a01b0381166102525760405162461bcd60e51b815260206004820152602b60248201527f4c69717569646974793a204e6f742061626c6520746f2066696e6420696d706c60448201526a656d656e746174696f6e5f60a81b60648201526084015b60405180910390fd5b61025b816103f1565b5050565b610267610415565b6001600160a01b0316336001600160a01b0316146102975760405162461bcd60e51b815260040161024990610d35565b6102a081610448565b50565b60006102ad610415565b905090565b6102ba610415565b6001600160a01b0316336001600160a01b0316146102ea5760405162461bcd60e51b815260040161024990610d35565b6102a0816105c3565b60606102fe826106b1565b92915050565b60006102ad610742565b60006102fe826103d4565b610321610415565b6001600160a01b0316336001600160a01b0316146103515760405162461bcd60e51b815260040161024990610d35565b6102a08161076a565b610362610415565b6001600160a01b0316336001600160a01b0316146103925760405162461bcd60e51b815260040161024990610d35565b6103cf838383808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152506107eb92505050565b505050565b6000806103e0836109ef565b546001600160a01b03169392505050565b3660008037600080366000845af43d6000803e808015610410573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b600061045382610a1f565b90506000818054604080516020808402820181019092528281529291908301828280156104cc57602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b0319168152602001906004019060208260030104928301926001038202915080841161048e5790505b505050505090508051600014156105255760405162461bcd60e51b815260206004820152601860248201527f696d706c656d656e746174696f6e2d6e6f742d657869737400000000000000006044820152606401610249565b60005b815181101561057657600061055583838151811061054857610548610d85565b60200260200101516109ef565b80546001600160a01b0319169055508061056e81610d5c565b915050610528565b50610582826000610a32565b6040516001600160a01b03841681527fd854fc630d6476d1ad6df14d295fdb83c1464a63cf75d456f14cd75353696ed39060200160405180910390a1505050565b60006105cd610415565b90506001600160a01b0382166106345760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b6064820152608401610249565b817fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610380546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527fa2010e522d52edde51a4dcbc8241004a97a55844cfa6823ddabbb3cafe993a6291015b60405180910390a15050565b606060006106be83610a1f565b90508080546040805160208084028201810190925282815292919083018282801561073557602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116106f75790505b5050505050915050919050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610439565b6000610774610742565b9050817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527fa0dd191daed6af360e85495ba5fa09c213452c3cda2f13e995775d5756deda0091016106a5565b80516108235760405162461bcd60e51b81526020600482015260076024820152666e6f2d7369677360c81b6044820152606401610249565b600061082e83610a1f565b90506000818054604080516020808402820181019092528281529291908301828280156108a757602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116108695790505b5050505050905080516000146108ff5760405162461bcd60e51b815260206004820152601c60248201527f696d706c656d656e746174696f6e2d616c72656164792d6578697374000000006044820152606401610249565b60005b835181101561099d57600061092285838151811061054857610548610d85565b9050600081546001600160a01b0316146109725760405162461bcd60e51b81526020600482015260116024820152701cda59cb585b1c9958591e4b595e1a5cdd607a1b6044820152606401610249565b80546001600160a01b0319166001600160a01b0387161790558061099581610d5c565b915050610902565b50828281516109af9260200190610a57565b507f955f674d8fbada18242ae4d19f71c66ce496150270d0c82520ab4b40ce61d1af84846040516109e1929190610c4b565b60405180910390a150505050565b600081604051602001610a029190610ce1565b604051602081830303815290604052805190602001209050919050565b600081604051602001610a029190610c8a565b5080546000825560070160089004906000526020600020908101906102a09190610b03565b82805482825590600052602060002090600701600890048101928215610af35791602002820160005b83821115610ac157835183826101000a81548163ffffffff021916908360e01c02179055509260200192600401602081600301049283019260010302610a80565b8015610af15782816101000a81549063ffffffff0219169055600401602081600301049283019260010302610ac1565b505b50610aff929150610b03565b5090565b5b80821115610aff5760008155600101610b04565b80356001600160a01b0381168114610b2f57600080fd5b919050565b600060208284031215610b4657600080fd5b610b4f82610b18565b9392505050565b600080600060408486031215610b6b57600080fd5b610b7484610b18565b9250602084013567ffffffffffffffff80821115610b9157600080fd5b818601915086601f830112610ba557600080fd5b813581811115610bb457600080fd5b8760208260051b8501011115610bc957600080fd5b6020830194508093505050509250925092565b600060208284031215610bee57600080fd5b81356001600160e01b031981168114610b4f57600080fd5b600081518084526020808501945080840160005b83811015610c405781516001600160e01b03191687529582019590820190600101610c1a565b509495945050505050565b6001600160a01b0383168152604060208201819052600090610c6f90830184610c06565b949350505050565b602081526000610b4f6020830184610c06565b604081526000610cc760408301601c81527f656970313936372e70726f78792e696d706c656d656e746174696f6e00000000602082015260400190565b6001600160a01b0393909316602092909201919091525090565b604081526000610d1e60408301601c81527f656970313936372e70726f78792e696d706c656d656e746174696f6e00000000602082015260400190565b905063ffffffff60e01b8316602083015292915050565b6020808252600d908201526c3737ba16ba343296b0b236b4b760991b604082015260600190565b6000600019821415610d7e57634e487b7160e01b600052601160045260246000fd5b5060010190565b634e487b7160e01b600052603260045260246000fdfea26469706673582212201a3d0bdbe0efe66c8e042905301f3f524fe4a8e6740f8ca26e1eff5c2f82725464736f6c63430008060033

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

00000000000000000000000085b40eb65e49eb61de78a3a989752249f8837fc500000000000000000000000076b2d8a03ada1b767974aa6af20c86737eb3e103

-----Decoded View---------------
Arg [0] : admin_ (address): 0x85B40eb65e49eB61De78a3a989752249f8837fc5
Arg [1] : dummyImplementation_ (address): 0x76b2d8A03Ada1B767974aa6Af20C86737Eb3e103

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 00000000000000000000000085b40eb65e49eb61de78a3a989752249f8837fc5
Arg [1] : 00000000000000000000000076b2d8a03ada1b767974aa6af20c86737eb3e103


Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.