More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 61 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Claim Bonus | 18790594 | 373 days ago | IN | 0 ETH | 0.001389 | ||||
Claim Bonus | 18790593 | 373 days ago | IN | 0 ETH | 0.0046715 | ||||
Claim Bonus | 18790592 | 373 days ago | IN | 0 ETH | 0.00485962 | ||||
Claim Bonus | 18790591 | 373 days ago | IN | 0 ETH | 0.00473333 | ||||
Claim Bonus | 18790589 | 373 days ago | IN | 0 ETH | 0.00496269 | ||||
Claim Bonus | 18790588 | 373 days ago | IN | 0 ETH | 0.00504562 | ||||
Add Referrals | 18784262 | 374 days ago | IN | 0 ETH | 0.00229893 | ||||
Add Referrals | 18784222 | 374 days ago | IN | 0 ETH | 0.00656971 | ||||
Claim Bonus | 18783583 | 374 days ago | IN | 0 ETH | 0.00431823 | ||||
Claim Bonus | 18783581 | 374 days ago | IN | 0 ETH | 0.00440781 | ||||
Claim Bonus | 18783580 | 374 days ago | IN | 0 ETH | 0.00460385 | ||||
Claim Bonus | 18783578 | 374 days ago | IN | 0 ETH | 0.00467049 | ||||
Claim Bonus | 18783577 | 374 days ago | IN | 0 ETH | 0.00466517 | ||||
Claim Bonus | 18783575 | 374 days ago | IN | 0 ETH | 0.00469898 | ||||
Claim Bonus | 18783574 | 374 days ago | IN | 0 ETH | 0.00461774 | ||||
Claim Bonus | 18783572 | 374 days ago | IN | 0 ETH | 0.00488856 | ||||
Claim Bonus | 18783571 | 374 days ago | IN | 0 ETH | 0.0049896 | ||||
Claim Bonus | 18783568 | 374 days ago | IN | 0 ETH | 0.00482287 | ||||
Claim Bonus | 18783566 | 374 days ago | IN | 0 ETH | 0.00512813 | ||||
Claim Bonus | 18783565 | 374 days ago | IN | 0 ETH | 0.00514044 | ||||
Claim Bonus | 18783562 | 374 days ago | IN | 0 ETH | 0.00480271 | ||||
Claim Bonus | 18783561 | 374 days ago | IN | 0 ETH | 0.00494435 | ||||
Claim Bonus | 18783559 | 374 days ago | IN | 0 ETH | 0.00458897 | ||||
Claim Bonus | 18783558 | 374 days ago | IN | 0 ETH | 0.00475846 | ||||
Claim Bonus | 18783556 | 374 days ago | IN | 0 ETH | 0.00485695 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
CheckmateReferral
Compiler Version
v0.8.17+commit.8df45f5f
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-11-30 */ // File: @openzeppelin/contracts/utils/Context.sol // OpenZeppelin Contracts v4.4.1 (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; } } // File: @openzeppelin/contracts/access/Ownable.sol // OpenZeppelin Contracts (last updated v4.9.0) (access/Ownable.sol) pragma solidity ^0.8.0; /** * @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. */ constructor() { _transferOwnership(_msgSender()); } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { _checkOwner(); _; } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if the sender is not the owner. */ function _checkOwner() internal view virtual { require(owner() == _msgSender(), "Ownable: caller is not the owner"); } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby disabling any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Internal function without access restriction. */ function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } // File: @openzeppelin/contracts/token/ERC20/IERC20.sol // OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/IERC20.sol) pragma solidity ^0.8.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `to`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address to, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `from` to `to` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom(address from, address to, uint256 amount) external returns (bool); } // File: @openzeppelin/contracts/security/ReentrancyGuard.sol // 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 // pointer aliasing, and it cannot be disabled. // The values being non-zero value makes deployment a bit more expensive, // but in exchange the refund on every call to nonReentrant will be lower in // amount. Since refunds are capped to a percentage of the total // transaction's gas, it is best to keep them low in cases like this one, to // increase the likelihood of the full refund coming into effect. uint256 private constant _NOT_ENTERED = 1; uint256 private constant _ENTERED = 2; uint256 private _status; constructor() { _status = _NOT_ENTERED; } /** * @dev Prevents a contract from calling itself, directly or indirectly. * Calling a `nonReentrant` function from another `nonReentrant` * function is not supported. It is possible to prevent this from happening * by making the `nonReentrant` function external, and making it call a * `private` function that does the actual work. */ modifier nonReentrant() { _nonReentrantBefore(); _; _nonReentrantAfter(); } function _nonReentrantBefore() private { // On the first call to nonReentrant, _status will be _NOT_ENTERED require(_status != _ENTERED, "ReentrancyGuard: reentrant call"); // Any calls to nonReentrant after this point will fail _status = _ENTERED; } function _nonReentrantAfter() private { // By storing the original value once again, a refund is triggered (see // https://eips.ethereum.org/EIPS/eip-2200) _status = _NOT_ENTERED; } /** * @dev Returns true if the reentrancy guard is currently set to "entered", which indicates there is a * `nonReentrant` function in the call stack. */ function _reentrancyGuardEntered() internal view returns (bool) { return _status == _ENTERED; } } // File: contracts/Referral.sol pragma solidity ^0.8.0; contract CheckmateReferral is Ownable, ReentrancyGuard { IERC20 public cmBotToken; mapping(address => uint256) public userReferrals; mapping(address => uint256) public userClaimedReferrals; uint256 public constant tokensPerReferral = 100 * 1e8; uint256 public totalReferrelsClaimed; bool public isPaused = false; event ReferralBonusClaimed(address indexed user, uint256 amount); constructor(IERC20 _token) { cmBotToken = _token; } function pause(bool _isPaused) public onlyOwner { isPaused = _isPaused; } function addReferrals( address[] calldata users, uint256[] calldata referrals ) public onlyOwner { require( users.length == referrals.length, "Arrays must be of equal length" ); for (uint256 i = 0; i < users.length; i++) { userReferrals[users[i]] = referrals[i]; } } function removeRefferal(address[] calldata users) public onlyOwner { for (uint256 i = 0; i < users.length; i++) { userReferrals[users[i]] = 0; } } function claimableBonus(address _user) public view returns (uint256 bonus) { uint256 referralCount = userReferrals[_user]; uint256 previousClaimedBonus = userClaimedReferrals[_user]; if (referralCount <= previousClaimedBonus) { return 0; } uint256 totalReferrals = referralCount - previousClaimedBonus; if (totalReferrals > 0) { bonus = totalReferrals * tokensPerReferral; } else { bonus = 0; } } function isClaimbable(address _user) public view returns (bool) { uint256 referralCount = userReferrals[_user]; return referralCount > 0; } function claimBonus() public nonReentrant { require(!isPaused, "Claiming is paused"); uint256 referralCount = userReferrals[msg.sender]; uint256 previousClaimedBonus = userClaimedReferrals[msg.sender]; uint256 totalReferrals = referralCount - previousClaimedBonus; require(totalReferrals > 0, "No referrals to claim"); uint256 bonus = totalReferrals * tokensPerReferral; userClaimedReferrals[msg.sender] += totalReferrals; totalReferrelsClaimed += totalReferrals; userReferrals[msg.sender] = 0; cmBotToken.transfer(msg.sender, bonus); emit ReferralBonusClaimed(msg.sender, bonus); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"contract IERC20","name":"_token","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"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":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"ReferralBonusClaimed","type":"event"},{"inputs":[{"internalType":"address[]","name":"users","type":"address[]"},{"internalType":"uint256[]","name":"referrals","type":"uint256[]"}],"name":"addReferrals","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimBonus","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"claimableBonus","outputs":[{"internalType":"uint256","name":"bonus","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cmBotToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"isClaimbable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isPaused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_isPaused","type":"bool"}],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"users","type":"address[]"}],"name":"removeRefferal","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"tokensPerReferral","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalReferrelsClaimed","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":[{"internalType":"address","name":"","type":"address"}],"name":"userClaimedReferrals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"userReferrals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60806040526006805460ff1916905534801561001a57600080fd5b50604051610ac6380380610ac6833981016040819052610039916100bb565b6100423361006b565b60018055600280546001600160a01b0319166001600160a01b03929092169190911790556100eb565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100cd57600080fd5b81516001600160a01b03811681146100e457600080fd5b9392505050565b6109cc806100fa6000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c806350635394116100975780638da5cb5b116100665780638da5cb5b146101eb578063995d0e23146101fc578063b187bd2614610237578063f2fde38b1461024457600080fd5b806350635394146101af57806352bcd56f146101b75780636b277e37146101c3578063715018a6146101e357600080fd5b806315d37be9116100d357806315d37be9146101555780632363f5391461016857806336c61a431461019357806349841b931461019c57600080fd5b806302329a29146100fa57806302cb754d1461010f57806306dbe2fd14610122575b600080fd5b61010d6101083660046107aa565b610257565b005b61010d61011d36600461081a565b610272565b61014261013036600461085c565b60046020526000908152604090205481565b6040519081526020015b60405180910390f35b61010d610163366004610885565b6102e3565b60025461017b906001600160a01b031681565b6040516001600160a01b03909116815260200161014c565b61014260055481565b6101426101aa36600461085c565b6103c1565b61010d61042d565b6101426402540be40081565b6101426101d136600461085c565b60036020526000908152604090205481565b61010d61060e565b6000546001600160a01b031661017b565b61022761020a36600461085c565b6001600160a01b0316600090815260036020526040902054151590565b604051901515815260200161014c565b6006546102279060ff1681565b61010d61025236600461085c565b610620565b61025f610699565b6006805460ff1916911515919091179055565b61027a610699565b60005b818110156102de5760006003600085858581811061029d5761029d6108f1565b90506020020160208101906102b2919061085c565b6001600160a01b03168152602081019190915260400160002055806102d68161091d565b91505061027d565b505050565b6102eb610699565b82811461033f5760405162461bcd60e51b815260206004820152601e60248201527f417272617973206d757374206265206f6620657175616c206c656e677468000060448201526064015b60405180910390fd5b60005b838110156103ba5782828281811061035c5761035c6108f1565b9050602002013560036000878785818110610379576103796108f1565b905060200201602081019061038e919061085c565b6001600160a01b03168152602081019190915260400160002055806103b28161091d565b915050610342565b5050505050565b6001600160a01b03811660009081526003602090815260408083205460049092528220548082116103f6575060009392505050565b60006104028284610936565b90508015610420576104196402540be4008261094f565b9350610425565b600093505b505050919050565b6104356106f3565b60065460ff161561047d5760405162461bcd60e51b815260206004820152601260248201527110db185a5b5a5b99c81a5cc81c185d5cd95960721b6044820152606401610336565b33600090815260036020908152604080832054600490925282205490916104a48284610936565b9050600081116104ee5760405162461bcd60e51b81526020600482015260156024820152744e6f20726566657272616c7320746f20636c61696d60581b6044820152606401610336565b60006104ff6402540be4008361094f565b33600090815260046020526040812080549293508492909190610523908490610966565b92505081905550816005600082825461053c9190610966565b90915550503360008181526003602052604080822091909155600254905163a9059cbb60e01b81526004810192909252602482018390526001600160a01b03169063a9059cbb906044016020604051808303816000875af11580156105a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c99190610979565b5060405181815233907f53473e2a2e0cc6840d80567f104277ea6daa0891e5316836bac38a686b79ea339060200160405180910390a25050505061060c60018055565b565b610616610699565b61060c600061074c565b610628610699565b6001600160a01b03811661068d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610336565b6106968161074c565b50565b6000546001600160a01b0316331461060c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610336565b6002600154036107455760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610336565b6002600155565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b801515811461069657600080fd5b6000602082840312156107bc57600080fd5b81356107c78161079c565b9392505050565b60008083601f8401126107e057600080fd5b50813567ffffffffffffffff8111156107f857600080fd5b6020830191508360208260051b850101111561081357600080fd5b9250929050565b6000806020838503121561082d57600080fd5b823567ffffffffffffffff81111561084457600080fd5b610850858286016107ce565b90969095509350505050565b60006020828403121561086e57600080fd5b81356001600160a01b03811681146107c757600080fd5b6000806000806040858703121561089b57600080fd5b843567ffffffffffffffff808211156108b357600080fd5b6108bf888389016107ce565b909650945060208701359150808211156108d857600080fd5b506108e5878288016107ce565b95989497509550505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161092f5761092f610907565b5060010190565b8181038181111561094957610949610907565b92915050565b808202811582820484141761094957610949610907565b8082018082111561094957610949610907565b60006020828403121561098b57600080fd5b81516107c78161079c56fea264697066735822122060905847713fae0afb1a5f35abde20ddea4574f9d629a7da79a0b057c7ea681a64736f6c63430008110033000000000000000000000000e02f72be83855c9e400fd9cd9f83158abfc87053
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100f55760003560e01c806350635394116100975780638da5cb5b116100665780638da5cb5b146101eb578063995d0e23146101fc578063b187bd2614610237578063f2fde38b1461024457600080fd5b806350635394146101af57806352bcd56f146101b75780636b277e37146101c3578063715018a6146101e357600080fd5b806315d37be9116100d357806315d37be9146101555780632363f5391461016857806336c61a431461019357806349841b931461019c57600080fd5b806302329a29146100fa57806302cb754d1461010f57806306dbe2fd14610122575b600080fd5b61010d6101083660046107aa565b610257565b005b61010d61011d36600461081a565b610272565b61014261013036600461085c565b60046020526000908152604090205481565b6040519081526020015b60405180910390f35b61010d610163366004610885565b6102e3565b60025461017b906001600160a01b031681565b6040516001600160a01b03909116815260200161014c565b61014260055481565b6101426101aa36600461085c565b6103c1565b61010d61042d565b6101426402540be40081565b6101426101d136600461085c565b60036020526000908152604090205481565b61010d61060e565b6000546001600160a01b031661017b565b61022761020a36600461085c565b6001600160a01b0316600090815260036020526040902054151590565b604051901515815260200161014c565b6006546102279060ff1681565b61010d61025236600461085c565b610620565b61025f610699565b6006805460ff1916911515919091179055565b61027a610699565b60005b818110156102de5760006003600085858581811061029d5761029d6108f1565b90506020020160208101906102b2919061085c565b6001600160a01b03168152602081019190915260400160002055806102d68161091d565b91505061027d565b505050565b6102eb610699565b82811461033f5760405162461bcd60e51b815260206004820152601e60248201527f417272617973206d757374206265206f6620657175616c206c656e677468000060448201526064015b60405180910390fd5b60005b838110156103ba5782828281811061035c5761035c6108f1565b9050602002013560036000878785818110610379576103796108f1565b905060200201602081019061038e919061085c565b6001600160a01b03168152602081019190915260400160002055806103b28161091d565b915050610342565b5050505050565b6001600160a01b03811660009081526003602090815260408083205460049092528220548082116103f6575060009392505050565b60006104028284610936565b90508015610420576104196402540be4008261094f565b9350610425565b600093505b505050919050565b6104356106f3565b60065460ff161561047d5760405162461bcd60e51b815260206004820152601260248201527110db185a5b5a5b99c81a5cc81c185d5cd95960721b6044820152606401610336565b33600090815260036020908152604080832054600490925282205490916104a48284610936565b9050600081116104ee5760405162461bcd60e51b81526020600482015260156024820152744e6f20726566657272616c7320746f20636c61696d60581b6044820152606401610336565b60006104ff6402540be4008361094f565b33600090815260046020526040812080549293508492909190610523908490610966565b92505081905550816005600082825461053c9190610966565b90915550503360008181526003602052604080822091909155600254905163a9059cbb60e01b81526004810192909252602482018390526001600160a01b03169063a9059cbb906044016020604051808303816000875af11580156105a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c99190610979565b5060405181815233907f53473e2a2e0cc6840d80567f104277ea6daa0891e5316836bac38a686b79ea339060200160405180910390a25050505061060c60018055565b565b610616610699565b61060c600061074c565b610628610699565b6001600160a01b03811661068d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610336565b6106968161074c565b50565b6000546001600160a01b0316331461060c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610336565b6002600154036107455760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610336565b6002600155565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b801515811461069657600080fd5b6000602082840312156107bc57600080fd5b81356107c78161079c565b9392505050565b60008083601f8401126107e057600080fd5b50813567ffffffffffffffff8111156107f857600080fd5b6020830191508360208260051b850101111561081357600080fd5b9250929050565b6000806020838503121561082d57600080fd5b823567ffffffffffffffff81111561084457600080fd5b610850858286016107ce565b90969095509350505050565b60006020828403121561086e57600080fd5b81356001600160a01b03811681146107c757600080fd5b6000806000806040858703121561089b57600080fd5b843567ffffffffffffffff808211156108b357600080fd5b6108bf888389016107ce565b909650945060208701359150808211156108d857600080fd5b506108e5878288016107ce565b95989497509550505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161092f5761092f610907565b5060010190565b8181038181111561094957610949610907565b92915050565b808202811582820484141761094957610949610907565b8082018082111561094957610949610907565b60006020828403121561098b57600080fd5b81516107c78161079c56fea264697066735822122060905847713fae0afb1a5f35abde20ddea4574f9d629a7da79a0b057c7ea681a64736f6c63430008110033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000e02f72be83855c9e400fd9cd9f83158abfc87053
-----Decoded View---------------
Arg [0] : _token (address): 0xE02F72be83855C9E400Fd9Cd9F83158aBfC87053
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000e02f72be83855c9e400fd9cd9f83158abfc87053
Deployed Bytecode Sourcemap
9741:2569:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10243:87;;;;;;:::i;:::-;;:::i;:::-;;10715:182;;;;;;:::i;:::-;;:::i;9891:55::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;1634:25:1;;;1622:2;1607:18;9891:55:0;;;;;;;;10338:369;;;;;;:::i;:::-;;:::i;9803:24::-;;;;;-1:-1:-1;;;;;9803:24:0;;;;;;-1:-1:-1;;;;;2626:32:1;;;2608:51;;2596:2;2581:18;9803:24:0;2448:217:1;10015:36:0;;;;;;10905:518;;;;;;:::i;:::-;;:::i;11603:704::-;;;:::i;9955:53::-;;9999:9;9955:53;;9836:48;;;;;;:::i;:::-;;;;;;;;;;;;;;2769:103;;;:::i;2128:87::-;2174:7;2201:6;-1:-1:-1;;;;;2201:6:0;2128:87;;11431:164;;;;;;:::i;:::-;-1:-1:-1;;;;;11530:20:0;11489:4;11530:20;;;:13;:20;;;;;;11570:17;;;11431:164;;;;3043:14:1;;3036:22;3018:41;;3006:2;2991:18;11431:164:0;2878:187:1;10060:28:0;;;;;;;;;3027:201;;;;;;:::i;:::-;;:::i;10243:87::-;2014:13;:11;:13::i;:::-;10302:8:::1;:20:::0;;-1:-1:-1;;10302:20:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10243:87::o;10715:182::-;2014:13;:11;:13::i;:::-;10798:9:::1;10793:97;10813:16:::0;;::::1;10793:97;;;10877:1;10851:13;:23;10865:5;;10871:1;10865:8;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10851:23:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;10851:23:0;:27;10831:3;::::1;::::0;::::1;:::i;:::-;;;;10793:97;;;;10715:182:::0;;:::o;10338:369::-;2014:13;:11;:13::i;:::-;10491:32;;::::1;10469:112;;;::::0;-1:-1:-1;;;10469:112:0;;3676:2:1;10469:112:0::1;::::0;::::1;3658:21:1::0;3715:2;3695:18;;;3688:30;3754:32;3734:18;;;3727:60;3804:18;;10469:112:0::1;;;;;;;;;10597:9;10592:108;10612:16:::0;;::::1;10592:108;;;10676:9;;10686:1;10676:12;;;;;;;:::i;:::-;;;;;;;10650:13;:23;10664:5;;10670:1;10664:8;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10650:23:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;10650:23:0;:38;10630:3;::::1;::::0;::::1;:::i;:::-;;;;10592:108;;;;10338:369:::0;;;;:::o;10905:518::-;-1:-1:-1;;;;;11015:20:0;;10965:13;11015:20;;;:13;:20;;;;;;;;;11077;:27;;;;;;11121:37;;;11117:78;;-1:-1:-1;11182:1:0;;10905:518;-1:-1:-1;;;10905:518:0:o;11117:78::-;11207:22;11232:36;11248:20;11232:13;:36;:::i;:::-;11207:61;-1:-1:-1;11285:18:0;;11281:135;;11328:34;9999:9;11328:14;:34;:::i;:::-;11320:42;;11281:135;;;11403:1;11395:9;;11281:135;10980:443;;;10905:518;;;:::o;11603:704::-;8776:21;:19;:21::i;:::-;11665:8:::1;::::0;::::1;;11664:9;11656:40;;;::::0;-1:-1:-1;;;11656:40:0;;4341:2:1;11656:40:0::1;::::0;::::1;4323:21:1::0;4380:2;4360:18;;;4353:30;-1:-1:-1;;;4399:18:1;;;4392:48;4457:18;;11656:40:0::1;4139:342:1::0;11656:40:0::1;11747:10;11709:21;11733:25:::0;;;:13:::1;:25;::::0;;;;;;;;11800:20:::1;:32:::0;;;;;;11733:25;;11868:36:::1;11800:32:::0;11733:25;11868:36:::1;:::i;:::-;11843:61;;11942:1;11925:14;:18;11917:52;;;::::0;-1:-1:-1;;;11917:52:0;;4688:2:1;11917:52:0::1;::::0;::::1;4670:21:1::0;4727:2;4707:18;;;4700:30;-1:-1:-1;;;4746:18:1;;;4739:51;4807:18;;11917:52:0::1;4486:345:1::0;11917:52:0::1;11982:13;11998:34;9999:9;11998:14:::0;:34:::1;:::i;:::-;12064:10;12043:32;::::0;;;:20:::1;:32;::::0;;;;:50;;11982;;-1:-1:-1;12079:14:0;;12043:32;;;:50:::1;::::0;12079:14;;12043:50:::1;:::i;:::-;;;;;;;;12129:14;12104:21;;:39;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;12168:10:0::1;12182:1;12154:25:::0;;;:13:::1;:25;::::0;;;;;:29;;;;12204:10:::1;::::0;:38;;-1:-1:-1;;;12204:38:0;;::::1;::::0;::::1;5140:51:1::0;;;;5207:18;;;5200:34;;;-1:-1:-1;;;;;12204:10:0::1;::::0;:19:::1;::::0;5113:18:1;;12204:38:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;12260:39:0::1;::::0;1634:25:1;;;12281:10:0::1;::::0;12260:39:::1;::::0;1622:2:1;1607:18;12260:39:0::1;;;;;;;11645:662;;;;8820:20:::0;8214:1;9340:22;;9157:213;8820:20;11603:704::o;2769:103::-;2014:13;:11;:13::i;:::-;2834:30:::1;2861:1;2834:18;:30::i;3027:201::-:0;2014:13;:11;:13::i;:::-;-1:-1:-1;;;;;3116:22:0;::::1;3108:73;;;::::0;-1:-1:-1;;;3108:73:0;;5697:2:1;3108:73:0::1;::::0;::::1;5679:21:1::0;5736:2;5716:18;;;5709:30;5775:34;5755:18;;;5748:62;-1:-1:-1;;;5826:18:1;;;5819:36;5872:19;;3108:73:0::1;5495:402:1::0;3108:73:0::1;3192:28;3211:8;3192:18;:28::i;:::-;3027:201:::0;:::o;2293:132::-;2174:7;2201:6;-1:-1:-1;;;;;2201:6:0;759:10;2357:23;2349:68;;;;-1:-1:-1;;;2349:68:0;;6104:2:1;2349:68:0;;;6086:21:1;;;6123:18;;;6116:30;6182:34;6162:18;;;6155:62;6234:18;;2349:68:0;5902:356:1;8856:293:0;8258:1;8990:7;;:19;8982:63;;;;-1:-1:-1;;;8982:63:0;;6465:2:1;8982:63:0;;;6447:21:1;6504:2;6484:18;;;6477:30;6543:33;6523:18;;;6516:61;6594:18;;8982:63:0;6263:355:1;8982:63:0;8258:1;9123:7;:18;8856:293::o;3388:191::-;3462:16;3481:6;;-1:-1:-1;;;;;3498:17:0;;;-1:-1:-1;;;;;;3498:17:0;;;;;;3531:40;;3481:6;;;;;;;3531:40;;3462:16;3531:40;3451:128;3388:191;:::o;14:118:1:-;100:5;93:13;86:21;79:5;76:32;66:60;;122:1;119;112:12;137:241;193:6;246:2;234:9;225:7;221:23;217:32;214:52;;;262:1;259;252:12;214:52;301:9;288:23;320:28;342:5;320:28;:::i;:::-;367:5;137:241;-1:-1:-1;;;137:241:1:o;383:367::-;446:8;456:6;510:3;503:4;495:6;491:17;487:27;477:55;;528:1;525;518:12;477:55;-1:-1:-1;551:20:1;;594:18;583:30;;580:50;;;626:1;623;616:12;580:50;663:4;655:6;651:17;639:29;;723:3;716:4;706:6;703:1;699:14;691:6;687:27;683:38;680:47;677:67;;;740:1;737;730:12;677:67;383:367;;;;;:::o;755:437::-;841:6;849;902:2;890:9;881:7;877:23;873:32;870:52;;;918:1;915;908:12;870:52;958:9;945:23;991:18;983:6;980:30;977:50;;;1023:1;1020;1013:12;977:50;1062:70;1124:7;1115:6;1104:9;1100:22;1062:70;:::i;:::-;1151:8;;1036:96;;-1:-1:-1;755:437:1;-1:-1:-1;;;;755:437:1:o;1197:286::-;1256:6;1309:2;1297:9;1288:7;1284:23;1280:32;1277:52;;;1325:1;1322;1315:12;1277:52;1351:23;;-1:-1:-1;;;;;1403:31:1;;1393:42;;1383:70;;1449:1;1446;1439:12;1670:773;1792:6;1800;1808;1816;1869:2;1857:9;1848:7;1844:23;1840:32;1837:52;;;1885:1;1882;1875:12;1837:52;1925:9;1912:23;1954:18;1995:2;1987:6;1984:14;1981:34;;;2011:1;2008;2001:12;1981:34;2050:70;2112:7;2103:6;2092:9;2088:22;2050:70;:::i;:::-;2139:8;;-1:-1:-1;2024:96:1;-1:-1:-1;2227:2:1;2212:18;;2199:32;;-1:-1:-1;2243:16:1;;;2240:36;;;2272:1;2269;2262:12;2240:36;;2311:72;2375:7;2364:8;2353:9;2349:24;2311:72;:::i;:::-;1670:773;;;;-1:-1:-1;2402:8:1;-1:-1:-1;;;;1670:773:1:o;3070:127::-;3131:10;3126:3;3122:20;3119:1;3112:31;3162:4;3159:1;3152:15;3186:4;3183:1;3176:15;3202:127;3263:10;3258:3;3254:20;3251:1;3244:31;3294:4;3291:1;3284:15;3318:4;3315:1;3308:15;3334:135;3373:3;3394:17;;;3391:43;;3414:18;;:::i;:::-;-1:-1:-1;3461:1:1;3450:13;;3334:135::o;3833:128::-;3900:9;;;3921:11;;;3918:37;;;3935:18;;:::i;:::-;3833:128;;;;:::o;3966:168::-;4039:9;;;4070;;4087:15;;;4081:22;;4067:37;4057:71;;4108:18;;:::i;4836:125::-;4901:9;;;4922:10;;;4919:36;;;4935:18;;:::i;5245:245::-;5312:6;5365:2;5353:9;5344:7;5340:23;5336:32;5333:52;;;5381:1;5378;5371:12;5333:52;5413:9;5407:16;5432:28;5454:5;5432:28;:::i
Swarm Source
ipfs://60905847713fae0afb1a5f35abde20ddea4574f9d629a7da79a0b057c7ea681a
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.