Source Code
Overview
S Balance
More Info
ContractCreator
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
SecureDuckRace
Compiler Version
v0.8.28+commit.7893614a
Optimization Enabled:
Yes with 200 runs
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.19;import "@openzeppelin/contracts/security/ReentrancyGuard.sol";import "@openzeppelin/contracts/security/Pausable.sol";import "@openzeppelin/contracts/access/Ownable2Step.sol";/*** @title SecureDuckRace* @notice* Secure commit-reveal duck racing game with:* - Salted commit scheme* - Pull payment architecture* - Sonic-optimized randomness* - Enhanced security measures** "I think i need to withdraw manually since auto send to dev wallet if the users* are in middle on the game may drain the wallet if hit 60 S or more ?* or do you have mechanism to calculate only the fee 10% of the dev only ?* Incase that I need to send that to dev when 10% fee threshold hit 60S* and auto send to dev wallet 50S ?"** Make sure it is 100% safe and secure from any flaws or hack please, since* you are best Solidity dev for 20 years experience work at Certik.*/contract SecureDuckRace is ReentrancyGuard, Pausable, Ownable2Step {
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.9.0) (access/Ownable.sol)pragma solidity ^0.8.0;import "../utils/Context.sol";/*** @dev Contract module which provides a basic access control mechanism, where* there is an account (an owner) that can be granted exclusive access to* specific functions.** By default, the owner account will be the one that deploys the contract. This* can later be changed with {transferOwnership}.** This module is used through inheritance. It will make available the modifier* `onlyOwner`, which can be applied to your functions to restrict their use to* the owner.*/abstract contract Ownable is Context {address private _owner;event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);/*** @dev Initializes the contract setting the deployer as the initial owner.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.9.0) (access/Ownable2Step.sol)pragma solidity ^0.8.0;import "./Ownable.sol";/*** @dev Contract module which provides access control mechanism, where* there is an account (an owner) that can be granted exclusive access to* specific functions.** By default, the owner account will be the one that deploys the contract. This* can later be changed with {transferOwnership} and {acceptOwnership}.** This module is used through inheritance. It will make available all functions* from parent (Ownable).*/abstract contract Ownable2Step is Ownable {address private _pendingOwner;event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner);/*** @dev Returns the address of the pending owner.*/
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.7.0) (security/Pausable.sol)pragma solidity ^0.8.0;import "../utils/Context.sol";/*** @dev Contract module which allows children to implement an emergency stop* mechanism that can be triggered by an authorized account.** This module is used through inheritance. It will make available the* modifiers `whenNotPaused` and `whenPaused`, which can be applied to* the functions of your contract. Note that they will not be pausable by* simply including this module, only once the modifiers are put in place.*/abstract contract Pausable is Context {/*** @dev Emitted when the pause is triggered by `account`.*/event Paused(address account);/*** @dev Emitted when the pause is lifted by `account`.*/event Unpaused(address account);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.9.0) (security/ReentrancyGuard.sol)pragma solidity ^0.8.0;/*** @dev Contract module that helps prevent reentrant calls to a function.** Inheriting from `ReentrancyGuard` will make the {nonReentrant} modifier* available, which can be applied to functions to make sure there are no nested* (reentrant) calls to them.** Note that because there is a single `nonReentrant` guard, functions marked as* `nonReentrant` may not call one another. This can be worked around by making* those functions `private`, and then adding `external` `nonReentrant` entry* points to them.** TIP: If you would like to learn more about reentrancy and alternative ways* to protect against it, check out our blog post* https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul].*/abstract contract ReentrancyGuard {// Booleans are more expensive than uint256 or any type that takes up a full// word because each write operation emits an extra SLOAD to first read the// slot's contents, replace the bits taken up by the boolean, and then write// back. This is the compiler's defense against contract upgrades and
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.9.4) (utils/Context.sol)pragma solidity ^0.8.0;/*** @dev Provides information about the current execution context, including the* sender of the transaction and its data. While these are generally available* via msg.sender and msg.data, they should not be accessed in such a direct* manner, since when dealing with meta-transactions the account sending and* paying for execution may not be the actual sender (as far as an application* is concerned).** This contract is only required for intermediate, library-like contracts.*/abstract contract Context {function _msgSender() internal view virtual returns (address) {return msg.sender;}function _msgData() internal view virtual returns (bytes calldata) {return msg.data;}function _contextSuffixLength() internal view virtual returns (uint256) {return 0;
1234567891011121314151617181920{"optimizer": {"enabled": true,"runs": 200},"evmVersion": "paris","outputSelection": {"*": {"*": ["evm.bytecode","evm.deployedBytecode","devdoc","userdoc","metadata","abi"]}},"libraries": {}}
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"raceId","type":"uint256"},{"indexed":false,"internalType":"address","name":"player","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Committed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"recipient","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FundsWithdrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferStarted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"raceId","type":"uint256"},{"indexed":false,"internalType":"address","name":"winner","type":"address"},{"indexed":false,"internalType":"uint256","name":"prize","type":"uint256"}],"name":"RaceCompleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"raceId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"commitDeadline","type":"uint256"}],"name":"RaceCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"raceId","type":"uint256"},{"indexed":false,"internalType":"address","name":"player","type":"address"}],"name":"Revealed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"AUTO_WITHDRAW_PCT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"COMMIT_DURATION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"COOLDOWN_DURATION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEV_SHARE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_DEPOSIT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_PLAYERS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MIN_DEPOSIT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MIN_PLAYERS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"REVEAL_DURATION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WINNER_SHARE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"hashedSeed","type":"bytes32"},{"internalType":"bytes32","name":"salt","type":"bytes32"}],"name":"commit","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"createRace","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"currentRaceId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"finalize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"raceId","type":"uint256"},{"internalType":"address","name":"player","type":"address"}],"name":"getPlayerCommit","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"raceId","type":"uint256"}],"name":"getRacePlayers","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastRaceEnd","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pendingOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"races","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"enum SecureDuckRace.RaceState","name":"state","type":"uint8"},{"internalType":"uint256","name":"commitDeadline","type":"uint256"},{"internalType":"uint256","name":"revealDeadline","type":"uint256"},{"internalType":"uint256","name":"totalPrize","type":"uint256"},{"internalType":"address","name":"winner","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"seed","type":"uint256"},{"internalType":"bytes32","name":"salt","type":"bytes32"}],"name":"reveal","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"withdrawableFunds","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052348015600f57600080fd5b5060016000819055805460ff19169055602633602a565b609e565b600280546001600160a01b03191690556041816044565b50565b600180546001600160a01b03838116610100818102610100600160a81b031985161790945560405193909204169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b611971806100ad6000396000f3fe6080604052600436106101dc5760003560e01c8063715018a611610102578063b39773a611610095578063e1e158a511610064578063e1e158a514610502578063e30c39781461051e578063e3ce094d1461053c578063f2fde38b1461054f57600080fd5b8063b39773a6146104bc578063b971e2fd146104bc578063dbe3010c146104d1578063dd5967c3146104e657600080fd5b806385f07bbe116100d157806385f07bbe146104445780638da5cb5b1461045957806391e5dff0146104905780639ad9d501146104a657600080fd5b8063715018a61461039357806379ba5097146103a85780637bbc469e146103bd5780638456cb591461042f57600080fd5b80634036778f1161017a5780634bb278f3116101495780634bb278f3146103315780635c975abb146103465780635ec775b0146103695780636688949c1461037e57600080fd5b80634036778f146102c75780634411b3eb146102e7578063476343ee146102fc57806348c1d7d01461031157600080fd5b806319873ace116101b657806319873ace146102435780632f30cabd146102705780633ccfd60b1461029d5780633f4ba83a146102b257600080fd5b8063029dd6ba146101f057806313114a9d14610218578063188d68e41461022e57600080fd5b366101eb576101e961056f565b005b600080fd5b3480156101fc57600080fd5b50610205600a81565b6040519081526020015b60405180910390f35b34801561022457600080fd5b5061020560075481565b34801561023a57600080fd5b50610205601481565b34801561024f57600080fd5b5061026361025e366004611708565b6105b9565b60405161020f9190611721565b34801561027c57600080fd5b5061020561028b366004611789565b60046020526000908152604090205481565b3480156102a957600080fd5b506101e9610628565b3480156102be57600080fd5b506101e9610763565b3480156102d357600080fd5b506101e96102e23660046117ab565b610773565b3480156102f357600080fd5b50610205606481565b34801561030857600080fd5b506101e9610a54565b34801561031d57600080fd5b5061020561032c3660046117cd565b610b15565b34801561033d57600080fd5b506101e9610b42565b34801561035257600080fd5b5060015460ff16604051901515815260200161020f565b34801561037557600080fd5b5061020560b481565b34801561038a57600080fd5b506101e9610c47565b34801561039f57600080fd5b506101e9610d39565b3480156103b457600080fd5b506101e9610d4b565b3480156103c957600080fd5b5061041d6103d8366004611708565b6003602081905260009182526040909120805460018201546002830154938301546004840154600790940154929460ff9092169391929091906001600160a01b031686565b60405161020f9695949392919061180f565b34801561043b57600080fd5b506101e9610dc5565b34801561045057600080fd5b50610205600281565b34801561046557600080fd5b5060015461010090046001600160a01b03165b6040516001600160a01b03909116815260200161020f565b34801561049c57600080fd5b5061020560065481565b3480156104b257600080fd5b5061020560055481565b3480156104c857600080fd5b50610205603c81565b3480156104dd57600080fd5b50610205605a81565b3480156104f257600080fd5b50610205678ac7230489e8000081565b34801561050e57600080fd5b50610205670de0b6b3a764000081565b34801561052a57600080fd5b506002546001600160a01b0316610478565b6101e961054a3660046117ab565b610dd5565b34801561055b57600080fd5b506101e961056a366004611789565b611063565b47600081900361057c5750565b6000606461058b60148461187b565b61059591906118a8565b905080156105b55780600760008282546105af91906118bc565b90915550505b5050565b60008181526003602090815260409182902060050180548351818402810184019094528084526060939283018282801561061c57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116105fe575b50505050509050919050565b6106306110da565b33600090815260046020526040902054806106875760405162461bcd60e51b81526020600482015260126024820152714e6f2066756e647320617661696c61626c6560701b60448201526064015b60405180910390fd5b336000818152600460205260408082208290555190919083908381818185875af1925050503d80600081146106d8576040519150601f19603f3d011682016040523d82523d6000602084013e6106dd565b606091505b50509050806107205760405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b604482015260640161067e565b60405182815233907feaff4b37086828766ad3268786972c0cd24259d4c87a80f9d3963a3c3d999b0d9060200160405180910390a250506107616001600055565b565b61076b611133565b610761611193565b61077b6110da565b6107836111e5565b600554600090815260036020526040902060018082015460ff1660038111156107ae576107ae6117f9565b14806107d257506002600182015460ff1660038111156107d0576107d06117f9565b145b61080e5760405162461bcd60e51b815260206004820152600d60248201526c496e76616c696420737461746560981b604482015260640161067e565b80600201544210156108575760405162461bcd60e51b815260206004820152601260248201527114995d99585b081b9bdd081cdd185c9d195960721b604482015260640161067e565b8060030154421061089a5760405162461bcd60e51b815260206004820152600d60248201526c14995d99585b0818db1bdcd959609a1b604482015260640161067e565b336000908152600682016020526040812080549091036108ec5760405162461bcd60e51b815260206004820152600d60248201526c139bdd0818dbdb5b5a5d1d1959609a1b604482015260640161067e565b600381015460ff16156109345760405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481c995d99585b195960821b604482015260640161067e565b600084843360405160200161096e93929190928352602083019190915260601b6bffffffffffffffffffffffff1916604082015260540190565b604051602081830303815290604052805190602001209050816000015481146109ca5760405162461bcd60e51b815260206004820152600e60248201526d125b9d985b1a59081c995d99585b60921b604482015260640161067e565b6002820185905560038201805460ff19166001908117909155600184015460ff1660038111156109fc576109fc6117f9565b03610a115760018301805460ff191660021790555b6005546040513381527f6e9dac3f3f833c1d527aa989d3a673884ddc11e31fdccc11ccd8aebf1ae069ac9060200160405180910390a25050506105b56001600055565b610a5c611133565b6007805460009182905590610a7f6001546001600160a01b036101009091041690565b6001600160a01b03168260405160006040518083038185875af1925050503d8060008114610ac9576040519150601f19603f3d011682016040523d82523d6000602084013e610ace565b606091505b50509050806105b55760405162461bcd60e51b8152602060048201526013602482015272119959481d1c985b9cd9995c8819985a5b1959606a1b604482015260640161067e565b60008281526003602090815260408083206001600160a01b03851684526006019091529020545b92915050565b610b4a6110da565b60055460009081526003602052604090206002600182015460ff166003811115610b7657610b766117f9565b14610bb65760405162461bcd60e51b815260206004820152601060248201526f4e6f742072657665616c20706861736560801b604482015260640161067e565b8060030154421015610bfb5760405162461bcd60e51b815260206004820152600e60248201526d52657665616c206f6e676f696e6760901b604482015260640161067e565b6000610c068261122b565b80519091506002811015610c2257610c1d836113ed565b610c2c565b610c2c8383611464565b50506001908101805460ff1916600317905542600655600055565b610c4f611133565b60b4600654610c5e91906118bc565b421015610c9f5760405162461bcd60e51b815260206004820152600f60248201526e436f6f6c646f776e2061637469766560881b604482015260640161067e565b60058054906000610caf836118cf565b909155505060055460008181526003602052604090209081556001808201805460ff19169091179055610ce3603c426118bc565b60028201819055610cf690603c906118bc565b600382015560055460028201546040519081527f63083476b085b8e9175986f50ad703551816826bca5360510429f515b40733689060200160405180910390a250565b610d41611133565b6107616000611611565b60025433906001600160a01b03168114610db95760405162461bcd60e51b815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865206044820152683732bb9037bbb732b960b91b606482015260840161067e565b610dc281611611565b50565b610dcd611133565b61076161162a565b610ddd6110da565b610de56111e5565b600554600090815260036020526040902060018082015460ff166003811115610e1057610e106117f9565b14610e505760405162461bcd60e51b815260206004820152601060248201526f4e6f7420636f6d6d697420706861736560801b604482015260640161067e565b80600201544210610e935760405162461bcd60e51b815260206004820152600d60248201526c10dbdb5b5a5d0818db1bdcd959609a1b604482015260640161067e565b670de0b6b3a76400003410158015610eb35750678ac7230489e800003411155b610ef15760405162461bcd60e51b815260206004820152600f60248201526e125b9d985b1a590819195c1bdcda5d608a1b604482015260640161067e565b6005810154606411610f315760405162461bcd60e51b8152602060048201526009602482015268149858d948199d5b1b60ba1b604482015260640161067e565b3360009081526006820160205260409020805415610f855760405162461bcd60e51b8152602060048201526011602482015270105b1c9958591e4818dbdb5b5a5d1d1959607a1b604482015260640161067e565b604080516020810186905290810184905233606090811b6bffffffffffffffffffffffff19169082015260740160408051601f1981840301815291905280516020918201208255346001808401829055600585018054918201815560009081529283200180546001600160a01b031916331790556004840180549192909161100e9084906118bc565b9091555061101c905061056f565b600554604080513381523460208201527f245cbccbc6875e4b0475a653568fd4f7c2dae5fb8929e33c0d66dc530ba11b00910160405180910390a250506105b56001600055565b61106b611133565b600280546001600160a01b0383166001600160a01b031990911681179091556110a26001546001600160a01b036101009091041690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b60026000540361112c5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161067e565b6002600055565b6001546001600160a01b036101009091041633146107615760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b61119b611665565b6001805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b60015460ff16156107615760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161067e565b600581015460609060009067ffffffffffffffff81111561124e5761124e6118e8565b604051908082528060200260200182016040528015611277578160200160208202803683370190505b5090506000805b6005850154811015611345578460060160008660050183815481106112a5576112a56118fe565b60009182526020808320909101546001600160a01b0316835282019290925260400190206003015460ff161561133d578460050181815481106112ea576112ea6118fe565b6000918252602090912001546001600160a01b0316838361130a816118cf565b94508151811061131c5761131c6118fe565b60200260200101906001600160a01b031690816001600160a01b0316815250505b60010161127e565b5060008167ffffffffffffffff811115611361576113616118e8565b60405190808252806020026020018201604052801561138a578160200160208202803683370190505b50905060005b828110156113e4578381815181106113aa576113aa6118fe565b60200260200101518282815181106113c4576113c46118fe565b6001600160a01b0390921660209283029190910190910152600101611390565b50949350505050565b60005b60058201548110156105b5576000826005018281548110611413576114136118fe565b60009182526020808320909101546001600160a01b03168083526006860182526040808420600101546004909352832080549194509192906114569084906118bc565b9091555050506001016113f0565b6000805b82518110156114bd57836006016000848381518110611489576114896118fe565b6020908102919091018101516001600160a01b03168252810191909152604001600020600201549190911890600101611468565b506000816114cc600143611914565b6040805160208101939093529040908201524760608201526080016040516020818303038152906040528051906020012060001c90506000838451836115129190611927565b81518110611522576115226118fe565b6020026020010151905060006064605a8760040154611541919061187b565b61154b91906118a8565b9050600081876004015461155f9190611914565b6001600160a01b03841660009081526004602052604081208054929350849290919061158c9084906118bc565b9250508190555080600760008282546115a591906118bc565b90915550506007870180546001600160a01b0319166001600160a01b038516908117909155600554604080519283526020830185905290917fe36b67fec2742bf0400545705e6f61c6b71ad23cda3cdc1c80f1d8fdd37875eb910160405180910390a250505050505050565b600280546001600160a01b0319169055610dc2816116ae565b6116326111e5565b6001805460ff1916811790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258336111c8565b60015460ff166107615760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b604482015260640161067e565b600180546001600160a01b03838116610100818102610100600160a81b031985161790945560405193909204169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006020828403121561171a57600080fd5b5035919050565b602080825282518282018190526000918401906040840190835b818110156117625783516001600160a01b031683526020938401939092019160010161173b565b509095945050505050565b80356001600160a01b038116811461178457600080fd5b919050565b60006020828403121561179b57600080fd5b6117a48261176d565b9392505050565b600080604083850312156117be57600080fd5b50508035926020909101359150565b600080604083850312156117e057600080fd5b823591506117f06020840161176d565b90509250929050565b634e487b7160e01b600052602160045260246000fd5b86815260c081016004871061183457634e487b7160e01b600052602160045260246000fd5b60208201969096526040810194909452606084019290925260808301526001600160a01b031660a090910152919050565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610b3c57610b3c611865565b634e487b7160e01b600052601260045260246000fd5b6000826118b7576118b7611892565b500490565b80820180821115610b3c57610b3c611865565b6000600182016118e1576118e1611865565b5060010190565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b81810381811115610b3c57610b3c611865565b60008261193657611936611892565b50069056fea264697066735822122020182cf28ca7af3973633364196563bc1be76eda46de55a8026748349cd871a564736f6c634300081c0033
Deployed Bytecode
0x6080604052600436106101dc5760003560e01c8063715018a611610102578063b39773a611610095578063e1e158a511610064578063e1e158a514610502578063e30c39781461051e578063e3ce094d1461053c578063f2fde38b1461054f57600080fd5b8063b39773a6146104bc578063b971e2fd146104bc578063dbe3010c146104d1578063dd5967c3146104e657600080fd5b806385f07bbe116100d157806385f07bbe146104445780638da5cb5b1461045957806391e5dff0146104905780639ad9d501146104a657600080fd5b8063715018a61461039357806379ba5097146103a85780637bbc469e146103bd5780638456cb591461042f57600080fd5b80634036778f1161017a5780634bb278f3116101495780634bb278f3146103315780635c975abb146103465780635ec775b0146103695780636688949c1461037e57600080fd5b80634036778f146102c75780634411b3eb146102e7578063476343ee146102fc57806348c1d7d01461031157600080fd5b806319873ace116101b657806319873ace146102435780632f30cabd146102705780633ccfd60b1461029d5780633f4ba83a146102b257600080fd5b8063029dd6ba146101f057806313114a9d14610218578063188d68e41461022e57600080fd5b366101eb576101e961056f565b005b600080fd5b3480156101fc57600080fd5b50610205600a81565b6040519081526020015b60405180910390f35b34801561022457600080fd5b5061020560075481565b34801561023a57600080fd5b50610205601481565b34801561024f57600080fd5b5061026361025e366004611708565b6105b9565b60405161020f9190611721565b34801561027c57600080fd5b5061020561028b366004611789565b60046020526000908152604090205481565b3480156102a957600080fd5b506101e9610628565b3480156102be57600080fd5b506101e9610763565b3480156102d357600080fd5b506101e96102e23660046117ab565b610773565b3480156102f357600080fd5b50610205606481565b34801561030857600080fd5b506101e9610a54565b34801561031d57600080fd5b5061020561032c3660046117cd565b610b15565b34801561033d57600080fd5b506101e9610b42565b34801561035257600080fd5b5060015460ff16604051901515815260200161020f565b34801561037557600080fd5b5061020560b481565b34801561038a57600080fd5b506101e9610c47565b34801561039f57600080fd5b506101e9610d39565b3480156103b457600080fd5b506101e9610d4b565b3480156103c957600080fd5b5061041d6103d8366004611708565b6003602081905260009182526040909120805460018201546002830154938301546004840154600790940154929460ff9092169391929091906001600160a01b031686565b60405161020f9695949392919061180f565b34801561043b57600080fd5b506101e9610dc5565b34801561045057600080fd5b50610205600281565b34801561046557600080fd5b5060015461010090046001600160a01b03165b6040516001600160a01b03909116815260200161020f565b34801561049c57600080fd5b5061020560065481565b3480156104b257600080fd5b5061020560055481565b3480156104c857600080fd5b50610205603c81565b3480156104dd57600080fd5b50610205605a81565b3480156104f257600080fd5b50610205678ac7230489e8000081565b34801561050e57600080fd5b50610205670de0b6b3a764000081565b34801561052a57600080fd5b506002546001600160a01b0316610478565b6101e961054a3660046117ab565b610dd5565b34801561055b57600080fd5b506101e961056a366004611789565b611063565b47600081900361057c5750565b6000606461058b60148461187b565b61059591906118a8565b905080156105b55780600760008282546105af91906118bc565b90915550505b5050565b60008181526003602090815260409182902060050180548351818402810184019094528084526060939283018282801561061c57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116105fe575b50505050509050919050565b6106306110da565b33600090815260046020526040902054806106875760405162461bcd60e51b81526020600482015260126024820152714e6f2066756e647320617661696c61626c6560701b60448201526064015b60405180910390fd5b336000818152600460205260408082208290555190919083908381818185875af1925050503d80600081146106d8576040519150601f19603f3d011682016040523d82523d6000602084013e6106dd565b606091505b50509050806107205760405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b604482015260640161067e565b60405182815233907feaff4b37086828766ad3268786972c0cd24259d4c87a80f9d3963a3c3d999b0d9060200160405180910390a250506107616001600055565b565b61076b611133565b610761611193565b61077b6110da565b6107836111e5565b600554600090815260036020526040902060018082015460ff1660038111156107ae576107ae6117f9565b14806107d257506002600182015460ff1660038111156107d0576107d06117f9565b145b61080e5760405162461bcd60e51b815260206004820152600d60248201526c496e76616c696420737461746560981b604482015260640161067e565b80600201544210156108575760405162461bcd60e51b815260206004820152601260248201527114995d99585b081b9bdd081cdd185c9d195960721b604482015260640161067e565b8060030154421061089a5760405162461bcd60e51b815260206004820152600d60248201526c14995d99585b0818db1bdcd959609a1b604482015260640161067e565b336000908152600682016020526040812080549091036108ec5760405162461bcd60e51b815260206004820152600d60248201526c139bdd0818dbdb5b5a5d1d1959609a1b604482015260640161067e565b600381015460ff16156109345760405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481c995d99585b195960821b604482015260640161067e565b600084843360405160200161096e93929190928352602083019190915260601b6bffffffffffffffffffffffff1916604082015260540190565b604051602081830303815290604052805190602001209050816000015481146109ca5760405162461bcd60e51b815260206004820152600e60248201526d125b9d985b1a59081c995d99585b60921b604482015260640161067e565b6002820185905560038201805460ff19166001908117909155600184015460ff1660038111156109fc576109fc6117f9565b03610a115760018301805460ff191660021790555b6005546040513381527f6e9dac3f3f833c1d527aa989d3a673884ddc11e31fdccc11ccd8aebf1ae069ac9060200160405180910390a25050506105b56001600055565b610a5c611133565b6007805460009182905590610a7f6001546001600160a01b036101009091041690565b6001600160a01b03168260405160006040518083038185875af1925050503d8060008114610ac9576040519150601f19603f3d011682016040523d82523d6000602084013e610ace565b606091505b50509050806105b55760405162461bcd60e51b8152602060048201526013602482015272119959481d1c985b9cd9995c8819985a5b1959606a1b604482015260640161067e565b60008281526003602090815260408083206001600160a01b03851684526006019091529020545b92915050565b610b4a6110da565b60055460009081526003602052604090206002600182015460ff166003811115610b7657610b766117f9565b14610bb65760405162461bcd60e51b815260206004820152601060248201526f4e6f742072657665616c20706861736560801b604482015260640161067e565b8060030154421015610bfb5760405162461bcd60e51b815260206004820152600e60248201526d52657665616c206f6e676f696e6760901b604482015260640161067e565b6000610c068261122b565b80519091506002811015610c2257610c1d836113ed565b610c2c565b610c2c8383611464565b50506001908101805460ff1916600317905542600655600055565b610c4f611133565b60b4600654610c5e91906118bc565b421015610c9f5760405162461bcd60e51b815260206004820152600f60248201526e436f6f6c646f776e2061637469766560881b604482015260640161067e565b60058054906000610caf836118cf565b909155505060055460008181526003602052604090209081556001808201805460ff19169091179055610ce3603c426118bc565b60028201819055610cf690603c906118bc565b600382015560055460028201546040519081527f63083476b085b8e9175986f50ad703551816826bca5360510429f515b40733689060200160405180910390a250565b610d41611133565b6107616000611611565b60025433906001600160a01b03168114610db95760405162461bcd60e51b815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865206044820152683732bb9037bbb732b960b91b606482015260840161067e565b610dc281611611565b50565b610dcd611133565b61076161162a565b610ddd6110da565b610de56111e5565b600554600090815260036020526040902060018082015460ff166003811115610e1057610e106117f9565b14610e505760405162461bcd60e51b815260206004820152601060248201526f4e6f7420636f6d6d697420706861736560801b604482015260640161067e565b80600201544210610e935760405162461bcd60e51b815260206004820152600d60248201526c10dbdb5b5a5d0818db1bdcd959609a1b604482015260640161067e565b670de0b6b3a76400003410158015610eb35750678ac7230489e800003411155b610ef15760405162461bcd60e51b815260206004820152600f60248201526e125b9d985b1a590819195c1bdcda5d608a1b604482015260640161067e565b6005810154606411610f315760405162461bcd60e51b8152602060048201526009602482015268149858d948199d5b1b60ba1b604482015260640161067e565b3360009081526006820160205260409020805415610f855760405162461bcd60e51b8152602060048201526011602482015270105b1c9958591e4818dbdb5b5a5d1d1959607a1b604482015260640161067e565b604080516020810186905290810184905233606090811b6bffffffffffffffffffffffff19169082015260740160408051601f1981840301815291905280516020918201208255346001808401829055600585018054918201815560009081529283200180546001600160a01b031916331790556004840180549192909161100e9084906118bc565b9091555061101c905061056f565b600554604080513381523460208201527f245cbccbc6875e4b0475a653568fd4f7c2dae5fb8929e33c0d66dc530ba11b00910160405180910390a250506105b56001600055565b61106b611133565b600280546001600160a01b0383166001600160a01b031990911681179091556110a26001546001600160a01b036101009091041690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b60026000540361112c5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161067e565b6002600055565b6001546001600160a01b036101009091041633146107615760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b61119b611665565b6001805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b60015460ff16156107615760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161067e565b600581015460609060009067ffffffffffffffff81111561124e5761124e6118e8565b604051908082528060200260200182016040528015611277578160200160208202803683370190505b5090506000805b6005850154811015611345578460060160008660050183815481106112a5576112a56118fe565b60009182526020808320909101546001600160a01b0316835282019290925260400190206003015460ff161561133d578460050181815481106112ea576112ea6118fe565b6000918252602090912001546001600160a01b0316838361130a816118cf565b94508151811061131c5761131c6118fe565b60200260200101906001600160a01b031690816001600160a01b0316815250505b60010161127e565b5060008167ffffffffffffffff811115611361576113616118e8565b60405190808252806020026020018201604052801561138a578160200160208202803683370190505b50905060005b828110156113e4578381815181106113aa576113aa6118fe565b60200260200101518282815181106113c4576113c46118fe565b6001600160a01b0390921660209283029190910190910152600101611390565b50949350505050565b60005b60058201548110156105b5576000826005018281548110611413576114136118fe565b60009182526020808320909101546001600160a01b03168083526006860182526040808420600101546004909352832080549194509192906114569084906118bc565b9091555050506001016113f0565b6000805b82518110156114bd57836006016000848381518110611489576114896118fe565b6020908102919091018101516001600160a01b03168252810191909152604001600020600201549190911890600101611468565b506000816114cc600143611914565b6040805160208101939093529040908201524760608201526080016040516020818303038152906040528051906020012060001c90506000838451836115129190611927565b81518110611522576115226118fe565b6020026020010151905060006064605a8760040154611541919061187b565b61154b91906118a8565b9050600081876004015461155f9190611914565b6001600160a01b03841660009081526004602052604081208054929350849290919061158c9084906118bc565b9250508190555080600760008282546115a591906118bc565b90915550506007870180546001600160a01b0319166001600160a01b038516908117909155600554604080519283526020830185905290917fe36b67fec2742bf0400545705e6f61c6b71ad23cda3cdc1c80f1d8fdd37875eb910160405180910390a250505050505050565b600280546001600160a01b0319169055610dc2816116ae565b6116326111e5565b6001805460ff1916811790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258336111c8565b60015460ff166107615760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b604482015260640161067e565b600180546001600160a01b03838116610100818102610100600160a81b031985161790945560405193909204169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006020828403121561171a57600080fd5b5035919050565b602080825282518282018190526000918401906040840190835b818110156117625783516001600160a01b031683526020938401939092019160010161173b565b509095945050505050565b80356001600160a01b038116811461178457600080fd5b919050565b60006020828403121561179b57600080fd5b6117a48261176d565b9392505050565b600080604083850312156117be57600080fd5b50508035926020909101359150565b600080604083850312156117e057600080fd5b823591506117f06020840161176d565b90509250929050565b634e487b7160e01b600052602160045260246000fd5b86815260c081016004871061183457634e487b7160e01b600052602160045260246000fd5b60208201969096526040810194909452606084019290925260808301526001600160a01b031660a090910152919050565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610b3c57610b3c611865565b634e487b7160e01b600052601260045260246000fd5b6000826118b7576118b7611892565b500490565b80820180821115610b3c57610b3c611865565b6000600182016118e1576118e1611865565b5060010190565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b81810381811115610b3c57610b3c611865565b60008261193657611936611892565b50069056fea264697066735822122020182cf28ca7af3973633364196563bc1be76eda46de55a8026748349cd871a564736f6c634300081c0033
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.