HYPE Price: $37.39 (-3.11%)

Contract

0xe12814d768467dB68B0C2B48e45974D8BFEB0194

Overview

HYPE Balance

HyperEvm LogoHyperEvm LogoHyperEvm Logo0 HYPE

HYPE Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To

There are no matching entries

Please try again later

Advanced mode:
Parent Transaction Hash Block From To
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
DataReader

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 1000 runs

Other Settings:
paris EvmVersion
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;

interface ITokenLocker {
    struct LockInfo {
        uint256 amount;
        uint256 unlockTime;
        uint256 lockTime;
        bool withdrawn;
    }
    function locks(address token, address user) external view returns (LockInfo memory);
    function totalActiveTokenLocks() external view returns (uint256);
    function totalValueLocked() external view returns (uint256);
    function recentTokenLocks(uint256 index) external view returns (address token, address lockOwner, uint256 amount, uint256 lockTime, uint256 unlockTime, bool withdrawn);
    function userLockedTokens(address user) external view returns (address[] memory);
    
    // Fonction pour récupérer les jetons d'un utilisateur
    function getUserTokens(address user) external view returns (address[] memory);
}

interface INFTLocker {
    struct NFTLock {
        uint256 unlockTime;
        uint256 lockTime;
        address lockOwner;
        bool withdrawn;
    }
    struct NFTLockInfo {
        address nftContract;
        uint256 tokenId;
    }
    function nftLocks(address nftContract, uint256 tokenId) external view returns (NFTLock memory);
    function totalActiveNFTLocks() external view returns (uint256);
    function userLockedNFTs(address user) external view returns (NFTLockInfo[] memory);
    
    // Fonction pour récupérer les NFTs d'un utilisateur
    function getUserNFTs(address user) external view returns (NFTLockInfo[] memory);
    
    // Nouvelle fonction pour récupérer les verrouillages NFT récents (mise à jour du nom)
    function getRecentNFTLock(uint256 index) external view returns (address nftContract, uint256 tokenId, address lockOwner, uint256 lockTime, uint256 unlockTime, bool withdrawn);
}

contract DataReader {
    ITokenLocker public tokenLocker;
    INFTLocker public nftLocker;
    
    constructor(address _tokenLocker, address _nftLocker) {
        tokenLocker = ITokenLocker(_tokenLocker);
        nftLocker = INFTLocker(_nftLocker);
    }
    
    // Récupérer les jetons verrouillés par un utilisateur
    function getUserLockedTokens(address user) external view returns (
        address[] memory tokens,
        uint256[] memory amounts,
        uint256[] memory lockTimes,
        uint256[] memory unlockTimes,
        bool[] memory withdrawnStates
    ) {
        // Utiliser la nouvelle fonction getUserTokens au lieu d'accéder directement au mapping
        address[] memory userTokens = tokenLocker.getUserTokens(user);
        uint256 length = userTokens.length;
        
        tokens = new address[](length);
        amounts = new uint256[](length);
        lockTimes = new uint256[](length);
        unlockTimes = new uint256[](length);
        withdrawnStates = new bool[](length);
        
        for (uint256 i = 0; i < length; i++) {
            address token = userTokens[i];
            ITokenLocker.LockInfo memory lock = tokenLocker.locks(token, user);
            tokens[i] = token;
            amounts[i] = lock.amount;
            lockTimes[i] = lock.lockTime;
            unlockTimes[i] = lock.unlockTime;
            withdrawnStates[i] = lock.withdrawn;
        }
        
        return (tokens, amounts, lockTimes, unlockTimes, withdrawnStates);
    }

    // Version modifiée de getUserLockedNFTs
    function getUserLockedNFTs(address user) external view returns (
        address[] memory nftContracts,
        uint256[] memory tokenIds,
        uint256[] memory lockTimes,
        uint256[] memory unlockTimes,
        bool[] memory withdrawnStates
    ) {
        // Utiliser la nouvelle fonction getUserNFTs au lieu d'accéder directement au mapping
        INFTLocker.NFTLockInfo[] memory userNFTs = nftLocker.getUserNFTs(user);
        uint256 length = userNFTs.length;
        
        nftContracts = new address[](length);
        tokenIds = new uint256[](length);
        lockTimes = new uint256[](length);
        unlockTimes = new uint256[](length);
        withdrawnStates = new bool[](length);
        
        for (uint256 i = 0; i < length; i++) {
            INFTLocker.NFTLockInfo memory nftInfo = userNFTs[i];
            INFTLocker.NFTLock memory lock = nftLocker.nftLocks(nftInfo.nftContract, nftInfo.tokenId);
            nftContracts[i] = nftInfo.nftContract;
            tokenIds[i] = nftInfo.tokenId;
            lockTimes[i] = lock.lockTime;
            unlockTimes[i] = lock.unlockTime;
            withdrawnStates[i] = lock.withdrawn;
        }
        
        return (nftContracts, tokenIds, lockTimes, unlockTimes, withdrawnStates);
    }
    
    // Récupérer les détails d'un lock de jetons
    function getTokenLockDetails(address token, address user) external view returns (
        uint256 amount,
        uint256 lockTime,
        uint256 unlockTime,
        bool withdrawn
    ) {
        ITokenLocker.LockInfo memory lock = tokenLocker.locks(token, user);
        return (lock.amount, lock.lockTime, lock.unlockTime, lock.withdrawn);
    }
    
    // Récupérer les détails d'un lock NFT
    function getNFTLockDetails(address nftContract, uint256 tokenId) external view returns (
        address lockOwner,
        uint256 lockTime,
        uint256 unlockTime,
        bool withdrawn
    ) {
        INFTLocker.NFTLock memory lock = nftLocker.nftLocks(nftContract, tokenId);
        return (lock.lockOwner, lock.lockTime, lock.unlockTime, lock.withdrawn);
    }
    
    // Récupérer le nombre total de locks
    function getTotalActiveLocks() external view returns (uint256) {
        return tokenLocker.totalActiveTokenLocks() + nftLocker.totalActiveNFTLocks();
    }
    
    // Récupérer les locks récents de tokens
    function getRecentTokenLocks() external view returns (
        address[] memory tokens,
        address[] memory owners,
        uint256[] memory amounts,
        uint256[] memory lockTimes,
        uint256[] memory unlockTimes,
        bool[] memory withdrawnStates
    ) {
        tokens = new address[](10);
        owners = new address[](10);
        amounts = new uint256[](10);
        lockTimes = new uint256[](10);
        unlockTimes = new uint256[](10);
        withdrawnStates = new bool[](10);
        
        for (uint256 i = 0; i < 10; i++) {
            (tokens[i], owners[i], amounts[i], lockTimes[i], unlockTimes[i], withdrawnStates[i]) = tokenLocker.recentTokenLocks(i);
        }
        
        return (tokens, owners, amounts, lockTimes, unlockTimes, withdrawnStates);
    }
    
    // NOUVELLE FONCTION: Récupérer les locks NFT récents
    function getRecentNFTLocks() external view returns (
        address[] memory nftContracts,
        uint256[] memory tokenIds,
        address[] memory owners,
        uint256[] memory lockTimes,
        uint256[] memory unlockTimes,
        bool[] memory withdrawnStates
    ) {
        nftContracts = new address[](10);
        tokenIds = new uint256[](10);
        owners = new address[](10);
        lockTimes = new uint256[](10);
        unlockTimes = new uint256[](10);
        withdrawnStates = new bool[](10);
        
        for (uint256 i = 0; i < 10; i++) {
            // Utilisation du nouveau nom de fonction
            (nftContracts[i], tokenIds[i], owners[i], lockTimes[i], unlockTimes[i], withdrawnStates[i]) = nftLocker.getRecentNFTLock(i);
        }
        
        return (nftContracts, tokenIds, owners, lockTimes, unlockTimes, withdrawnStates);
    }
    
    // Récupérer le temps restant pour un lock de jetons
    function getTokenRemainingLockTime(address token, address user) external view returns (uint256) {
        ITokenLocker.LockInfo memory lock = tokenLocker.locks(token, user);
        if (lock.amount == 0 || lock.withdrawn || block.timestamp >= lock.unlockTime) {
            return 0;
        }
        return lock.unlockTime - block.timestamp;
    }
    
    // Récupérer le temps restant pour un lock NFT
    function getNFTRemainingLockTime(address nftContract, uint256 tokenId) external view returns (uint256) {
        INFTLocker.NFTLock memory lock = nftLocker.nftLocks(nftContract, tokenId);
        if (lock.lockOwner == address(0) || lock.withdrawn || block.timestamp >= lock.unlockTime) {
            return 0;
        }
        return lock.unlockTime - block.timestamp;
    }
}

Settings
{
  "evmVersion": "paris",
  "libraries": {
    ".sol": {}
  },
  "metadata": {
    "bytecodeHash": "ipfs"
  },
  "optimizer": {
    "enabled": true,
    "runs": 1000
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"_tokenLocker","type":"address"},{"internalType":"address","name":"_nftLocker","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"nftContract","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getNFTLockDetails","outputs":[{"internalType":"address","name":"lockOwner","type":"address"},{"internalType":"uint256","name":"lockTime","type":"uint256"},{"internalType":"uint256","name":"unlockTime","type":"uint256"},{"internalType":"bool","name":"withdrawn","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"nftContract","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getNFTRemainingLockTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRecentNFTLocks","outputs":[{"internalType":"address[]","name":"nftContracts","type":"address[]"},{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"},{"internalType":"address[]","name":"owners","type":"address[]"},{"internalType":"uint256[]","name":"lockTimes","type":"uint256[]"},{"internalType":"uint256[]","name":"unlockTimes","type":"uint256[]"},{"internalType":"bool[]","name":"withdrawnStates","type":"bool[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRecentTokenLocks","outputs":[{"internalType":"address[]","name":"tokens","type":"address[]"},{"internalType":"address[]","name":"owners","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"},{"internalType":"uint256[]","name":"lockTimes","type":"uint256[]"},{"internalType":"uint256[]","name":"unlockTimes","type":"uint256[]"},{"internalType":"bool[]","name":"withdrawnStates","type":"bool[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"user","type":"address"}],"name":"getTokenLockDetails","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"lockTime","type":"uint256"},{"internalType":"uint256","name":"unlockTime","type":"uint256"},{"internalType":"bool","name":"withdrawn","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"user","type":"address"}],"name":"getTokenRemainingLockTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalActiveLocks","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getUserLockedNFTs","outputs":[{"internalType":"address[]","name":"nftContracts","type":"address[]"},{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"},{"internalType":"uint256[]","name":"lockTimes","type":"uint256[]"},{"internalType":"uint256[]","name":"unlockTimes","type":"uint256[]"},{"internalType":"bool[]","name":"withdrawnStates","type":"bool[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getUserLockedTokens","outputs":[{"internalType":"address[]","name":"tokens","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"},{"internalType":"uint256[]","name":"lockTimes","type":"uint256[]"},{"internalType":"uint256[]","name":"unlockTimes","type":"uint256[]"},{"internalType":"bool[]","name":"withdrawnStates","type":"bool[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nftLocker","outputs":[{"internalType":"contract INFTLocker","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenLocker","outputs":[{"internalType":"contract ITokenLocker","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

60806040523480156200001157600080fd5b50604051620018f1380380620018f1833981016040819052620000349162000083565b600080546001600160a01b039384166001600160a01b03199182161790915560018054929093169116179055620000bb565b80516001600160a01b03811681146200007e57600080fd5b919050565b600080604083850312156200009757600080fd5b620000a28362000066565b9150620000b26020840162000066565b90509250929050565b61182680620000cb6000396000f3fe608060405234801561001057600080fd5b50600436106100c85760003560e01c8063a80bf3e611610081578063cf08608a1161005b578063cf08608a146101d1578063e88f8ebd14610210578063e949769c1461022357600080fd5b8063a80bf3e614610176578063b1a203f414610189578063c75b0307146101be57600080fd5b80631009e0b3116100b25780631009e0b3146101175780632796526314610131578063477f6e421461014b57600080fd5b806228af4a146100cd57806303426660146100f3575b600080fd5b6100e06100db3660046111a6565b61022b565b6040519081526020015b60405180910390f35b6101066101013660046111d2565b6102f4565b6040516100ea95949392919061129c565b61011f610680565b6040516100ea96959493929190611309565b6101396108d0565b6040516100ea9695949392919061138b565b60015461015e906001600160a01b031681565b6040516001600160a01b0390911681526020016100ea565b60005461015e906001600160a01b031681565b61019c6101973660046113c4565b610b18565b60408051948552602085019390935291830152151560608201526080016100ea565b6100e06101cc3660046113c4565b610bb8565b6101e46101df3660046111a6565b610c6f565b604080516001600160a01b039095168552602085019390935291830152151560608201526080016100ea565b61010661021e3660046111d2565b610d11565b6100e0611083565b60015460405163e9d4f41b60e01b81526001600160a01b03848116600483015260248201849052600092839291169063e9d4f41b90604401608060405180830381865afa158015610280573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102a491906114a5565b60408101519091506001600160a01b031615806102c2575080606001515b806102ce575080514210155b156102dd5760009150506102ee565b80516102ea90429061150e565b9150505b92915050565b6001546040517f52de4ee50000000000000000000000000000000000000000000000000000000081526001600160a01b0383811660048301526060928392839283928392600092909116906352de4ee590602401600060405180830381865afa158015610365573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261038d9190810190611545565b80519091508067ffffffffffffffff8111156103ab576103ab6113fd565b6040519080825280602002602001820160405280156103d4578160200160208202803683370190505b5096508067ffffffffffffffff8111156103f0576103f06113fd565b604051908082528060200260200182016040528015610419578160200160208202803683370190505b5095508067ffffffffffffffff811115610435576104356113fd565b60405190808252806020026020018201604052801561045e578160200160208202803683370190505b5094508067ffffffffffffffff81111561047a5761047a6113fd565b6040519080825280602002602001820160405280156104a3578160200160208202803683370190505b5093508067ffffffffffffffff8111156104bf576104bf6113fd565b6040519080825280602002602001820160405280156104e8578160200160208202803683370190505b50925060005b8181101561067457600083828151811061050a5761050a611609565b60209081029190910181015160015481519282015160405163e9d4f41b60e01b81526001600160a01b0394851660048201526024810191909152919350600092169063e9d4f41b90604401608060405180830381865afa158015610572573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059691906114a5565b905081600001518a84815181106105af576105af611609565b60200260200101906001600160a01b031690816001600160a01b03168152505081602001518984815181106105e6576105e6611609565b602002602001018181525050806020015188848151811061060957610609611609565b602002602001018181525050806000015187848151811061062c5761062c611609565b602002602001018181525050806060015186848151811061064f5761064f611609565b911515602092830291909101909101525081905061066c8161161f565b9150506104ee565b50505091939590929450565b60608080808080600a6040519080825280602002602001820160405280156106b2578160200160208202803683370190505b5060408051600a80825261016082019092529197506020820161014080368337505060408051600a808252610160820190925292975090506020820161014080368337505060408051600a808252610160820190925292965090506020820161014080368337505060408051600a808252610160820190925292955090506020820161014080368337505060408051600a80825261016082019092529294509050602082016101408036833701905050905060005b600a8110156108c7576000546040517f6a852cfd000000000000000000000000000000000000000000000000000000008152600481018390526001600160a01b0390911690636a852cfd9060240160c060405180830381865afa1580156107d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f69190611638565b8c878151811061080857610808611609565b602002602001018c888151811061082157610821611609565b602002602001018c898151811061083a5761083a611609565b602002602001018c8a8151811061085357610853611609565b602002602001018c8b8151811061086c5761086c611609565b602002602001018c8c8151811061088557610885611609565b961515602097880291909101909601959095529490935293909252929092526001600160a01b03928316905291169052806108bf8161161f565b915050610767565b50909192939495565b60608080808080600a604051908082528060200260200182016040528015610902578160200160208202803683370190505b5060408051600a80825261016082019092529197506020820161014080368337505060408051600a808252610160820190925292975090506020820161014080368337505060408051600a808252610160820190925292965090506020820161014080368337505060408051600a808252610160820190925292955090506020820161014080368337505060408051600a80825261016082019092529294509050602082016101408036833701905050905060005b600a8110156108c7576001546040517f45a1ccda000000000000000000000000000000000000000000000000000000008152600481018390526001600160a01b03909116906345a1ccda9060240160c060405180830381865afa158015610a22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a46919061169e565b8c8781518110610a5857610a58611609565b602002602001018c8881518110610a7157610a71611609565b602002602001018c8981518110610a8a57610a8a611609565b602002602001018c8a81518110610aa357610aa3611609565b602002602001018c8b81518110610abc57610abc611609565b602002602001018c8c81518110610ad557610ad5611609565b9615156020978802919091019096019590955294909352939092526001600160a01b03938416905292905291909116905280610b108161161f565b9150506109b7565b6000805460405163c05f615560e01b81526001600160a01b03858116600483015284811660248301528392839283928392169063c05f615590604401608060405180830381865afa158015610b71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b9591906116f7565b805160408201516020830151606090930151919a90995091975095509350505050565b6000805460405163c05f615560e01b81526001600160a01b03858116600483015284811660248301528392169063c05f615590604401608060405180830381865afa158015610c0b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c2f91906116f7565b80519091501580610c41575080606001515b80610c50575080602001514210155b15610c5f5760009150506102ee565b4281602001516102ea919061150e565b60015460405163e9d4f41b60e01b81526001600160a01b03848116600483015260248201849052600092839283928392839291169063e9d4f41b90604401608060405180830381865afa158015610cca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cee91906114a5565b604081015160208201518251606090930151919a90995091975095509350505050565b600080546040517f519dc8d20000000000000000000000000000000000000000000000000000000081526001600160a01b038481166004830152606093849384938493849392169063519dc8d290602401600060405180830381865afa158015610d7f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610da79190810190611735565b80519091508067ffffffffffffffff811115610dc557610dc56113fd565b604051908082528060200260200182016040528015610dee578160200160208202803683370190505b5096508067ffffffffffffffff811115610e0a57610e0a6113fd565b604051908082528060200260200182016040528015610e33578160200160208202803683370190505b5095508067ffffffffffffffff811115610e4f57610e4f6113fd565b604051908082528060200260200182016040528015610e78578160200160208202803683370190505b5094508067ffffffffffffffff811115610e9457610e946113fd565b604051908082528060200260200182016040528015610ebd578160200160208202803683370190505b5093508067ffffffffffffffff811115610ed957610ed96113fd565b604051908082528060200260200182016040528015610f02578160200160208202803683370190505b50925060005b81811015610674576000838281518110610f2457610f24611609565b60209081029190910101516000805460405163c05f615560e01b81526001600160a01b0380851660048301528e811660248301529394509192169063c05f615590604401608060405180830381865afa158015610f85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa991906116f7565b9050818a8481518110610fbe57610fbe611609565b60200260200101906001600160a01b031690816001600160a01b0316815250508060000151898481518110610ff557610ff5611609565b602002602001018181525050806040015188848151811061101857611018611609565b602002602001018181525050806020015187848151811061103b5761103b611609565b602002602001018181525050806060015186848151811061105e5761105e611609565b911515602092830291909101909101525081905061107b8161161f565b915050610f08565b600154604080517f07d4ec3600000000000000000000000000000000000000000000000000000000815290516000926001600160a01b0316916307d4ec369160048083019260209291908290030181865afa1580156110e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061110a91906117c4565b60008054906101000a90046001600160a01b03166001600160a01b031663398d367d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561115b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117f91906117c4565b61118991906117dd565b905090565b6001600160a01b03811681146111a357600080fd5b50565b600080604083850312156111b957600080fd5b82356111c48161118e565b946020939093013593505050565b6000602082840312156111e457600080fd5b81356111ef8161118e565b9392505050565b600081518084526020808501945080840160005b8381101561122f5781516001600160a01b03168752958201959082019060010161120a565b509495945050505050565b600081518084526020808501945080840160005b8381101561122f5781518752958201959082019060010161124e565b600081518084526020808501945080840160005b8381101561122f57815115158752958201959082019060010161127e565b60a0815260006112af60a08301886111f6565b82810360208401526112c1818861123a565b905082810360408401526112d5818761123a565b905082810360608401526112e9818661123a565b905082810360808401526112fd818561126a565b98975050505050505050565b60c08152600061131c60c08301896111f6565b828103602084015261132e81896111f6565b90508281036040840152611342818861123a565b90508281036060840152611356818761123a565b9050828103608084015261136a818661123a565b905082810360a084015261137e818561126a565b9998505050505050505050565b60c08152600061139e60c08301896111f6565b82810360208401526113b0818961123a565b9050828103604084015261134281886111f6565b600080604083850312156113d757600080fd5b82356113e28161118e565b915060208301356113f28161118e565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715611436576114366113fd565b60405290565b6040805190810167ffffffffffffffff81118282101715611436576114366113fd565b604051601f8201601f1916810167ffffffffffffffff81118282101715611488576114886113fd565b604052919050565b805180151581146114a057600080fd5b919050565b6000608082840312156114b757600080fd5b6114bf611413565b825181526020830151602082015260408301516114db8161118e565b60408201526114ec60608401611490565b60608201529392505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156102ee576102ee6114f8565b600067ffffffffffffffff82111561153b5761153b6113fd565b5060051b60200190565b6000602080838503121561155857600080fd5b825167ffffffffffffffff81111561156f57600080fd5b8301601f8101851361158057600080fd5b805161159361158e82611521565b61145f565b81815260069190911b820183019083810190878311156115b257600080fd5b928401925b828410156115fe57604084890312156115d05760008081fd5b6115d861143c565b84516115e38161118e565b815284860151868201528252604090930192908401906115b7565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b600060018201611631576116316114f8565b5060010190565b60008060008060008060c0878903121561165157600080fd5b865161165c8161118e565b602088015190965061166d8161118e565b8095505060408701519350606087015192506080870151915061169260a08801611490565b90509295509295509295565b60008060008060008060c087890312156116b757600080fd5b86516116c28161118e565b6020880151604089015191975095506116da8161118e565b606088015160808901519195509350915061169260a08801611490565b60006080828403121561170957600080fd5b611711611413565b8251815260208301516020820152604083015160408201526114ec60608401611490565b6000602080838503121561174857600080fd5b825167ffffffffffffffff81111561175f57600080fd5b8301601f8101851361177057600080fd5b805161177e61158e82611521565b81815260059190911b8201830190838101908783111561179d57600080fd5b928401925b828410156115fe5783516117b58161118e565b825292840192908401906117a2565b6000602082840312156117d657600080fd5b5051919050565b808201808211156102ee576102ee6114f856fea2646970667358221220f1ae2ea17cdfc08d715d9b6817021f43bb2eccb40bd811fcf5c16d48637fc76b64736f6c634300081400330000000000000000000000009d3823d98c76b4ae692167f2149bb375cfd34c9b00000000000000000000000099e5f38f7d6d778ed3aaa0444c418b93c51758fa

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100c85760003560e01c8063a80bf3e611610081578063cf08608a1161005b578063cf08608a146101d1578063e88f8ebd14610210578063e949769c1461022357600080fd5b8063a80bf3e614610176578063b1a203f414610189578063c75b0307146101be57600080fd5b80631009e0b3116100b25780631009e0b3146101175780632796526314610131578063477f6e421461014b57600080fd5b806228af4a146100cd57806303426660146100f3575b600080fd5b6100e06100db3660046111a6565b61022b565b6040519081526020015b60405180910390f35b6101066101013660046111d2565b6102f4565b6040516100ea95949392919061129c565b61011f610680565b6040516100ea96959493929190611309565b6101396108d0565b6040516100ea9695949392919061138b565b60015461015e906001600160a01b031681565b6040516001600160a01b0390911681526020016100ea565b60005461015e906001600160a01b031681565b61019c6101973660046113c4565b610b18565b60408051948552602085019390935291830152151560608201526080016100ea565b6100e06101cc3660046113c4565b610bb8565b6101e46101df3660046111a6565b610c6f565b604080516001600160a01b039095168552602085019390935291830152151560608201526080016100ea565b61010661021e3660046111d2565b610d11565b6100e0611083565b60015460405163e9d4f41b60e01b81526001600160a01b03848116600483015260248201849052600092839291169063e9d4f41b90604401608060405180830381865afa158015610280573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102a491906114a5565b60408101519091506001600160a01b031615806102c2575080606001515b806102ce575080514210155b156102dd5760009150506102ee565b80516102ea90429061150e565b9150505b92915050565b6001546040517f52de4ee50000000000000000000000000000000000000000000000000000000081526001600160a01b0383811660048301526060928392839283928392600092909116906352de4ee590602401600060405180830381865afa158015610365573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261038d9190810190611545565b80519091508067ffffffffffffffff8111156103ab576103ab6113fd565b6040519080825280602002602001820160405280156103d4578160200160208202803683370190505b5096508067ffffffffffffffff8111156103f0576103f06113fd565b604051908082528060200260200182016040528015610419578160200160208202803683370190505b5095508067ffffffffffffffff811115610435576104356113fd565b60405190808252806020026020018201604052801561045e578160200160208202803683370190505b5094508067ffffffffffffffff81111561047a5761047a6113fd565b6040519080825280602002602001820160405280156104a3578160200160208202803683370190505b5093508067ffffffffffffffff8111156104bf576104bf6113fd565b6040519080825280602002602001820160405280156104e8578160200160208202803683370190505b50925060005b8181101561067457600083828151811061050a5761050a611609565b60209081029190910181015160015481519282015160405163e9d4f41b60e01b81526001600160a01b0394851660048201526024810191909152919350600092169063e9d4f41b90604401608060405180830381865afa158015610572573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059691906114a5565b905081600001518a84815181106105af576105af611609565b60200260200101906001600160a01b031690816001600160a01b03168152505081602001518984815181106105e6576105e6611609565b602002602001018181525050806020015188848151811061060957610609611609565b602002602001018181525050806000015187848151811061062c5761062c611609565b602002602001018181525050806060015186848151811061064f5761064f611609565b911515602092830291909101909101525081905061066c8161161f565b9150506104ee565b50505091939590929450565b60608080808080600a6040519080825280602002602001820160405280156106b2578160200160208202803683370190505b5060408051600a80825261016082019092529197506020820161014080368337505060408051600a808252610160820190925292975090506020820161014080368337505060408051600a808252610160820190925292965090506020820161014080368337505060408051600a808252610160820190925292955090506020820161014080368337505060408051600a80825261016082019092529294509050602082016101408036833701905050905060005b600a8110156108c7576000546040517f6a852cfd000000000000000000000000000000000000000000000000000000008152600481018390526001600160a01b0390911690636a852cfd9060240160c060405180830381865afa1580156107d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f69190611638565b8c878151811061080857610808611609565b602002602001018c888151811061082157610821611609565b602002602001018c898151811061083a5761083a611609565b602002602001018c8a8151811061085357610853611609565b602002602001018c8b8151811061086c5761086c611609565b602002602001018c8c8151811061088557610885611609565b961515602097880291909101909601959095529490935293909252929092526001600160a01b03928316905291169052806108bf8161161f565b915050610767565b50909192939495565b60608080808080600a604051908082528060200260200182016040528015610902578160200160208202803683370190505b5060408051600a80825261016082019092529197506020820161014080368337505060408051600a808252610160820190925292975090506020820161014080368337505060408051600a808252610160820190925292965090506020820161014080368337505060408051600a808252610160820190925292955090506020820161014080368337505060408051600a80825261016082019092529294509050602082016101408036833701905050905060005b600a8110156108c7576001546040517f45a1ccda000000000000000000000000000000000000000000000000000000008152600481018390526001600160a01b03909116906345a1ccda9060240160c060405180830381865afa158015610a22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a46919061169e565b8c8781518110610a5857610a58611609565b602002602001018c8881518110610a7157610a71611609565b602002602001018c8981518110610a8a57610a8a611609565b602002602001018c8a81518110610aa357610aa3611609565b602002602001018c8b81518110610abc57610abc611609565b602002602001018c8c81518110610ad557610ad5611609565b9615156020978802919091019096019590955294909352939092526001600160a01b03938416905292905291909116905280610b108161161f565b9150506109b7565b6000805460405163c05f615560e01b81526001600160a01b03858116600483015284811660248301528392839283928392169063c05f615590604401608060405180830381865afa158015610b71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b9591906116f7565b805160408201516020830151606090930151919a90995091975095509350505050565b6000805460405163c05f615560e01b81526001600160a01b03858116600483015284811660248301528392169063c05f615590604401608060405180830381865afa158015610c0b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c2f91906116f7565b80519091501580610c41575080606001515b80610c50575080602001514210155b15610c5f5760009150506102ee565b4281602001516102ea919061150e565b60015460405163e9d4f41b60e01b81526001600160a01b03848116600483015260248201849052600092839283928392839291169063e9d4f41b90604401608060405180830381865afa158015610cca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cee91906114a5565b604081015160208201518251606090930151919a90995091975095509350505050565b600080546040517f519dc8d20000000000000000000000000000000000000000000000000000000081526001600160a01b038481166004830152606093849384938493849392169063519dc8d290602401600060405180830381865afa158015610d7f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610da79190810190611735565b80519091508067ffffffffffffffff811115610dc557610dc56113fd565b604051908082528060200260200182016040528015610dee578160200160208202803683370190505b5096508067ffffffffffffffff811115610e0a57610e0a6113fd565b604051908082528060200260200182016040528015610e33578160200160208202803683370190505b5095508067ffffffffffffffff811115610e4f57610e4f6113fd565b604051908082528060200260200182016040528015610e78578160200160208202803683370190505b5094508067ffffffffffffffff811115610e9457610e946113fd565b604051908082528060200260200182016040528015610ebd578160200160208202803683370190505b5093508067ffffffffffffffff811115610ed957610ed96113fd565b604051908082528060200260200182016040528015610f02578160200160208202803683370190505b50925060005b81811015610674576000838281518110610f2457610f24611609565b60209081029190910101516000805460405163c05f615560e01b81526001600160a01b0380851660048301528e811660248301529394509192169063c05f615590604401608060405180830381865afa158015610f85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa991906116f7565b9050818a8481518110610fbe57610fbe611609565b60200260200101906001600160a01b031690816001600160a01b0316815250508060000151898481518110610ff557610ff5611609565b602002602001018181525050806040015188848151811061101857611018611609565b602002602001018181525050806020015187848151811061103b5761103b611609565b602002602001018181525050806060015186848151811061105e5761105e611609565b911515602092830291909101909101525081905061107b8161161f565b915050610f08565b600154604080517f07d4ec3600000000000000000000000000000000000000000000000000000000815290516000926001600160a01b0316916307d4ec369160048083019260209291908290030181865afa1580156110e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061110a91906117c4565b60008054906101000a90046001600160a01b03166001600160a01b031663398d367d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561115b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117f91906117c4565b61118991906117dd565b905090565b6001600160a01b03811681146111a357600080fd5b50565b600080604083850312156111b957600080fd5b82356111c48161118e565b946020939093013593505050565b6000602082840312156111e457600080fd5b81356111ef8161118e565b9392505050565b600081518084526020808501945080840160005b8381101561122f5781516001600160a01b03168752958201959082019060010161120a565b509495945050505050565b600081518084526020808501945080840160005b8381101561122f5781518752958201959082019060010161124e565b600081518084526020808501945080840160005b8381101561122f57815115158752958201959082019060010161127e565b60a0815260006112af60a08301886111f6565b82810360208401526112c1818861123a565b905082810360408401526112d5818761123a565b905082810360608401526112e9818661123a565b905082810360808401526112fd818561126a565b98975050505050505050565b60c08152600061131c60c08301896111f6565b828103602084015261132e81896111f6565b90508281036040840152611342818861123a565b90508281036060840152611356818761123a565b9050828103608084015261136a818661123a565b905082810360a084015261137e818561126a565b9998505050505050505050565b60c08152600061139e60c08301896111f6565b82810360208401526113b0818961123a565b9050828103604084015261134281886111f6565b600080604083850312156113d757600080fd5b82356113e28161118e565b915060208301356113f28161118e565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715611436576114366113fd565b60405290565b6040805190810167ffffffffffffffff81118282101715611436576114366113fd565b604051601f8201601f1916810167ffffffffffffffff81118282101715611488576114886113fd565b604052919050565b805180151581146114a057600080fd5b919050565b6000608082840312156114b757600080fd5b6114bf611413565b825181526020830151602082015260408301516114db8161118e565b60408201526114ec60608401611490565b60608201529392505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156102ee576102ee6114f8565b600067ffffffffffffffff82111561153b5761153b6113fd565b5060051b60200190565b6000602080838503121561155857600080fd5b825167ffffffffffffffff81111561156f57600080fd5b8301601f8101851361158057600080fd5b805161159361158e82611521565b61145f565b81815260069190911b820183019083810190878311156115b257600080fd5b928401925b828410156115fe57604084890312156115d05760008081fd5b6115d861143c565b84516115e38161118e565b815284860151868201528252604090930192908401906115b7565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b600060018201611631576116316114f8565b5060010190565b60008060008060008060c0878903121561165157600080fd5b865161165c8161118e565b602088015190965061166d8161118e565b8095505060408701519350606087015192506080870151915061169260a08801611490565b90509295509295509295565b60008060008060008060c087890312156116b757600080fd5b86516116c28161118e565b6020880151604089015191975095506116da8161118e565b606088015160808901519195509350915061169260a08801611490565b60006080828403121561170957600080fd5b611711611413565b8251815260208301516020820152604083015160408201526114ec60608401611490565b6000602080838503121561174857600080fd5b825167ffffffffffffffff81111561175f57600080fd5b8301601f8101851361177057600080fd5b805161177e61158e82611521565b81815260059190911b8201830190838101908783111561179d57600080fd5b928401925b828410156115fe5783516117b58161118e565b825292840192908401906117a2565b6000602082840312156117d657600080fd5b5051919050565b808201808211156102ee576102ee6114f856fea2646970667358221220f1ae2ea17cdfc08d715d9b6817021f43bb2eccb40bd811fcf5c16d48637fc76b64736f6c63430008140033

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

0000000000000000000000009d3823d98c76b4ae692167f2149bb375cfd34c9b00000000000000000000000099e5f38f7d6d778ed3aaa0444c418b93c51758fa

-----Decoded View---------------
Arg [0] : _tokenLocker (address): 0x9d3823D98c76b4aE692167F2149bB375cfD34C9B
Arg [1] : _nftLocker (address): 0x99E5F38F7d6d778eD3aAa0444C418B93c51758fa

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000009d3823d98c76b4ae692167f2149bb375cfd34c9b
Arg [1] : 00000000000000000000000099e5f38f7d6d778ed3aaa0444c418b93c51758fa


Block Transaction 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

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.