Source Code
Overview
HYPE Balance
HYPE Value
$0.00Loading...
Loading
Contract Name:
DataReader
Compiler Version
v0.8.20+commit.a1b79de6
Optimization Enabled:
Yes with 1000 runs
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// 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; } }
{ "evmVersion": "paris", "libraries": { ".sol": {} }, "metadata": { "bytecodeHash": "ipfs" }, "optimizer": { "enabled": true, "runs": 1000 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
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"}]
Contract Creation Code
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
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 35 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
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.