Feature Tip: Add private address tag to any address under My Name Tag !
More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 583 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Unlock By Sender | 17591795 | 477 days ago | IN | 0 ETH | 0.00109411 | ||||
Unlock By Sender | 17333759 | 513 days ago | IN | 0 ETH | 0.00189824 | ||||
Unlock By Sender | 16895314 | 575 days ago | IN | 0 ETH | 0.00090573 | ||||
Unlock By Sender | 16805170 | 588 days ago | IN | 0 ETH | 0.00308106 | ||||
Unlock By Sender | 16721010 | 600 days ago | IN | 0 ETH | 0.00143826 | ||||
Unlock By Sender | 16659916 | 608 days ago | IN | 0 ETH | 0.00064519 | ||||
Unlock By Sender | 16533707 | 626 days ago | IN | 0 ETH | 0.00092252 | ||||
Unlock By Sender | 16533425 | 626 days ago | IN | 0 ETH | 0.00102126 | ||||
Unlock By Sender | 16484299 | 633 days ago | IN | 0 ETH | 0.00114016 | ||||
Unlock By Sender | 16032216 | 696 days ago | IN | 0 ETH | 0.00036959 | ||||
Unlock By Sender | 16032210 | 696 days ago | IN | 0 ETH | 0.00063846 | ||||
Unlock First By ... | 16032200 | 696 days ago | IN | 0 ETH | 0.00105589 | ||||
Unlock By Sender | 15783695 | 731 days ago | IN | 0 ETH | 0.00413586 | ||||
Unlock By Sender | 15757320 | 734 days ago | IN | 0 ETH | 0.00087365 | ||||
Unlock By Sender | 15697259 | 743 days ago | IN | 0 ETH | 0.00101032 | ||||
Unlock By Sender | 15666970 | 747 days ago | IN | 0 ETH | 0.00049264 | ||||
Unlock By Sender | 15567202 | 761 days ago | IN | 0 ETH | 0.00012222 | ||||
Unlock By Sender | 15566631 | 761 days ago | IN | 0 ETH | 0.00026725 | ||||
Unlock By Sender | 15564434 | 761 days ago | IN | 0 ETH | 0.00052214 | ||||
Unlock By Sender | 15513256 | 769 days ago | IN | 0 ETH | 0.00038101 | ||||
Unlock By Sender | 15491367 | 773 days ago | IN | 0 ETH | 0.00226525 | ||||
Unlock By Sender | 15458759 | 778 days ago | IN | 0 ETH | 0.00023325 | ||||
Unlock By Sender | 15458638 | 778 days ago | IN | 0 ETH | 0.00036816 | ||||
Unlock By Sender | 15457477 | 778 days ago | IN | 0 ETH | 0.00068069 | ||||
Unlock By Sender | 15445929 | 780 days ago | IN | 0 ETH | 0.00083143 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
MinePrivateVesting
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-12-30 */ // SPDX-License-Identifier: MIT pragma solidity 0.6.12; interface IERC20 { /** * @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 `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address recipient, 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 `sender` to `recipient` 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 sender, address recipient, uint256 amount) external returns (bool); /** * @dev Returns the decimals places of the token. */ function decimals() external view returns (uint8); /** * @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); } library SafeMath { /** * @dev Returns the addition of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers. Reverts on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } /** * @dev Returns the integer division of two unsigned integers. Reverts with custom message on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { // Solidity only automatically asserts when dividing by 0 require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts with custom message when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } contract MinePrivateVesting { using SafeMath for uint256; IERC20 public token; uint256 public startDate = 1640995201; // 2022-01-01 00:00:01 uint256 public endDate = 1659312001; // 2022-08-01 00:00:01 uint256 public unlockAmountTotal; uint256 public tokenDecimals; uint256 public maxUnlockTimes; address msgSender; mapping(address => UserVestingInfo) public UserVesting; struct UserVestingInfo { uint256 totalAmount; uint256 firstAmount; uint256 unlockAmount; uint256 secondUnlock; uint256 lastUnlockTime; } event FirstBySenderEvent(address indexed sender, uint256 amount); event UnlockBySenderEvent(address indexed sender, uint256 amount); constructor(address _token) public { msgSender = msg.sender; token = IERC20(_token); tokenDecimals = token.decimals(); maxUnlockTimes = endDate.sub(startDate); //add user vesting addUserVestingInfo(0x046a5A1FA5986767ec460B998cC78F59c6ee03Ef, 593_750); addUserVestingInfo(0x05404219D412C7B5A986Be58BC3a4ee3cE56d6ca, 3_437_500); addUserVestingInfo(0x105167FD4edF441cc39113eD43E2169E27687C0F, 593_750); addUserVestingInfo(0x11EfF19DC599ee676b6D65bae0A60479a87e889A, 593_750); addUserVestingInfo(0x15943509d0C216a9aa36fbFe0095948065433df7, 593_750); addUserVestingInfo(0x16E110beD33c0445BE68B957cbbef5cd7e1BBD4f, 1_187_500); addUserVestingInfo(0x1cAD40D5c7302249f4cd76B8C6cdaB1d059AcfF1, 1_187_500); addUserVestingInfo(0x21d426655A41c0874048DD0a3E29B1cFF5Ec5FB6, 2_375_000); addUserVestingInfo(0x2286aa3d41aAd0f901cb94B6e158C86CcCeEcaa1, 875_000); addUserVestingInfo(0x29958CbFbE4c73bF3f97fa40cdC9C75290E382db, 2_000_000); addUserVestingInfo(0x299ea82E5C48160A623AaBa870Cd9D6E1552B991, 6_250_000); addUserVestingInfo(0x2d946C881d2D28b005857658DE1D3a6D48438c3B, 2_968_750); addUserVestingInfo(0x2EbD34Bd6E0fB0672B81cB6F721856Fc4145DD68, 1_250_000); addUserVestingInfo(0x30A15B722DE7Fb242a54a8497D0Fc84528d3f156, 2_000_000); addUserVestingInfo(0x30b8A82c7014454Be3bF67bb172F6312e2639b63, 1_543_750); addUserVestingInfo(0x38ADfcfF7ed4496362ba8FdBDBE07b7C0E756537, 593_750); addUserVestingInfo(0x38dF87028C451AD521B2FB1576732e9637A66e6f, 1_250_000); addUserVestingInfo(0x3904eFc39b16e9CE6483E8bEAC623fca370286D1, 3_750_000); addUserVestingInfo(0x3940eb694f814Ddb6C3593C8D35CC61B26904b2B, 1_250_000); addUserVestingInfo(0x43BC45bE9cba81F2dc29700D79704cAd69f28b9F, 2_500_000); addUserVestingInfo(0x43f4759153292Ac675ec7ff56439c60065ACbC51, 1_187_500); addUserVestingInfo(0x440631dbdC0753E45241569C6d63552eAC8E3130, 1_781_250); addUserVestingInfo(0x464F0f0842c419001F99cd97a3349e14269e8AF6, 593_750); addUserVestingInfo(0x466822e78F979f6285aa40F978cC55A499965dC0, 593_750); addUserVestingInfo(0x4B9dC74F34635556eF99Aafb101AF5a6ADCC59B9, 500_000); addUserVestingInfo(0x4c59E1B80ca11215c2a53b39651825663048a7ED, 1_781_250); addUserVestingInfo(0x4D904df422Ec729d627A289D6913c34D8c347b1D, 1_875_000); addUserVestingInfo(0x57ef2a07b9e70cE289e3E6754fcf20512C8403b4, 593_750); addUserVestingInfo(0x588384e142E5e1a841137B3d4E73b16E3858450d, 1_781_250); addUserVestingInfo(0x58a252cc4073daCC7eaE81e7Ea193FAA13099849, 14_093_750); addUserVestingInfo(0x66c109f9A10627D0ac0068b272Da01F61DAB2b25, 1_250_000); addUserVestingInfo(0x6Aa80bCA0e8047eac7AF3D47c6983a6611F0DB4C, 2_462_500); addUserVestingInfo(0x6cb8e395D1F7c7B00D6594deD6Aa03C5f7cA13C8, 593_750); addUserVestingInfo(0x6CDB0A4902C81E9C63De8c486F31e8d5DDc0A9f7, 593_750); addUserVestingInfo(0x71d1f0a05F82c0EBd02b8704E3d2337b517a6B3A, 1_625_000); addUserVestingInfo(0x72540C9142cd326d2b60a464801D99c04D361dCF, 593_750); addUserVestingInfo(0x7a6D0261da79ACa3564E7D6da146774C14259e1d, 1_250_000); addUserVestingInfo(0x7cd50d621dE372a92f324b5D62173F4Ba344CE50, 593_750); addUserVestingInfo(0x7fCBf5cb2a9dD1BD1e148bF0aa9b049cC0a9e938, 2_137_500); addUserVestingInfo(0x82Ba7508f7F1995AB1623258D66Cb4E2B2b8F467, 593_750); addUserVestingInfo(0x8317Ff8a1B35F331046395f84B5f6A3eC511a8c1, 296_875); addUserVestingInfo(0x84dcCfB3F3e044229fa00e216E2829725579D97f, 2_375_000); addUserVestingInfo(0x8522ABD5E2c17722bF046A6d0af75B60ed579546, 500_000); addUserVestingInfo(0x8663381606Edfc0F2d5136f7e763b91A6d76ed22, 593_750); addUserVestingInfo(0x8937E56f926C04205C27DCe54e273C0dd171Aa36, 593_750); addUserVestingInfo(0x8B6Bbd8e858CC515352E5846a9E5b607Ad43826F, 1_187_500); addUserVestingInfo(0x8bB948CE8D46ffAc5712247B4a501E874cB9c468, 1_187_500); addUserVestingInfo(0x8E2A75e4a07149149C1787d3a55a1736A0c8DDEb, 375_000); addUserVestingInfo(0x91406B5d57893E307f042D71C91e223a7058Eb72, 593_750); addUserVestingInfo(0x9773d0dA32f0Ef40F3346dFD02f9BAF9f945BbA0, 593_750); addUserVestingInfo(0x99DC041D9aDbe5b183efE17586049fa3848df311, 6_250_000); addUserVestingInfo(0x9c2D043aAd476515da882DaA28e70C0dc7A63d67, 593_750); addUserVestingInfo(0x9E6d8980BC9fc98c5d2db48c46237d12d9873ab0, 950_000); addUserVestingInfo(0x9Edc3668e4e990F23663341d0a667EFFdd6F1f56, 593_750); addUserVestingInfo(0xa69303D076dFb54d50589C4D018205a409Aa4293, 831_250); addUserVestingInfo(0xb1e8fd06A5406262e420662bb22e3B9Bb6daD1a6, 2_937_500); addUserVestingInfo(0xb5018Bc174321fFE9e0A38d262e9A448FBD21cdb, 593_750); addUserVestingInfo(0xb72D959a9670b546a5759a9d50E8CdB59187F1b5, 1_781_250); addUserVestingInfo(0xB7adC067507e9485345C96d1f92ECD9fC9345253, 625_000); addUserVestingInfo(0xBA3d570535360bc9383B28691C872959d4A34061, 1_250_000); addUserVestingInfo(0xbCd4cB80Ba69376E10082427D6b50a181abCd307, 1_843_750); addUserVestingInfo(0xc89F9Ba72752b9d9AC33220dBce309f38316730D, 2_500_000); addUserVestingInfo(0xd1B8aD0Dbc972AfC88e68902320100f52bFCF8d8, 593_750); addUserVestingInfo(0xD22108e8681D20227DdAaF5722E5C76B34f62c8B, 7_312_500); addUserVestingInfo(0xD58E6A2B3Baca952D1f937a4C0F1e88Aa92e4772, 1_562_500); addUserVestingInfo(0xDC0D74171B31051d4BFA88de496Ba5Dc700614D1, 593_750); addUserVestingInfo(0xe4bcbFD6E636B15eaff352c867b33603a126ADae, 3_562_500); addUserVestingInfo(0xe585A1A683214A2504Ef36350f72E8E613048660, 593_750); addUserVestingInfo(0xE58Ea0ceD4417f0551Fb82ddF4F6477072DFb430, 1_781_250); addUserVestingInfo(0xe5ab3737Ea9214428A3a3320fFc4C3a1Ed0810c8, 375_000); addUserVestingInfo(0xE816c2932724655782A81009CAb64BC45446afB0, 1_068_750); addUserVestingInfo(0xF1D5f83cAdFB8527E1Ec32bD934FCa87d288de7C, 593_750); addUserVestingInfo(0xf41399aAc0D78cC955108E12916204d90FAff875, 7_500_000); addUserVestingInfo(0xF5f6a4A2a3466b26C7f161258fc47Ff5800c0116, 5_000_000); addUserVestingInfo(0xF76dbc5d9A7465EcEc49700054bF27f88cf9ad05, 1_187_500); addUserVestingInfo(0xF789C8fb4349Ba8762b159Ecd29Ac1b65E327bD3, 1_250_000); addUserVestingInfo(0xf7B496c0178b1Ee935ea3307188B5b1FbB0cDa59, 890_625); addUserVestingInfo(0xfCD1c642a8f73866EbF8526b470a72B31A7e9404, 11_250_000); addUserVestingInfo(0xFDa4723b9b4E7ebaa08E38C64Ea7d73A8E0AAc9B, 593_750); addUserVestingInfo(0xa5013Bce0182E74FfEf440B3B5dd7173ddCb52cE, 500_000); } function addUserVestingInfo(address _address, uint256 _totalAmount) public { require(msgSender == msg.sender, "You do not have permission to operate"); require(_address != address(0), "The lock address cannot be a black hole address"); UserVestingInfo storage _userVestingInfo = UserVesting[_address]; require(_totalAmount > 0, "Lock up amount cannot be 0"); require(_userVestingInfo.totalAmount == 0, "Lock has been added"); _userVestingInfo.totalAmount = _totalAmount.mul(10 ** tokenDecimals); _userVestingInfo.firstAmount = _userVestingInfo.totalAmount.mul(125).div(1000); //12.5% _userVestingInfo.secondUnlock = _userVestingInfo.totalAmount.sub(_userVestingInfo.firstAmount).div(maxUnlockTimes); unlockAmountTotal = unlockAmountTotal.add(_userVestingInfo.totalAmount); } function blockTimestamp() public virtual view returns(uint256) { return block.timestamp; } function getUnlockTimes() public virtual view returns(uint256) { if(blockTimestamp() > startDate) { return blockTimestamp().sub(startDate); } else { return 0; } } function unlockFirstBySender() public { UserVestingInfo storage _userVestingInfo = UserVesting[msg.sender]; require(_userVestingInfo.totalAmount > 0, "The user has no lock record"); require(_userVestingInfo.firstAmount > 0, "The user has unlocked the first token"); require(_userVestingInfo.totalAmount > _userVestingInfo.unlockAmount, "The user has unlocked the first token"); require(blockTimestamp() > startDate, "It's not time to lock and unlock"); _safeTransfer(msg.sender, _userVestingInfo.firstAmount); _userVestingInfo.unlockAmount = _userVestingInfo.unlockAmount.add(_userVestingInfo.firstAmount); emit FirstBySenderEvent(msg.sender, _userVestingInfo.firstAmount); _userVestingInfo.firstAmount = 0; } function unlockBySender() public { UserVestingInfo storage _userVestingInfo = UserVesting[msg.sender]; require(_userVestingInfo.totalAmount > 0, "The user has no lock record"); uint256 unlockAmount = 0; if(blockTimestamp() > endDate) { require(_userVestingInfo.totalAmount > _userVestingInfo.unlockAmount, "The user has no unlocked quota"); unlockAmount = _userVestingInfo.totalAmount.sub(_userVestingInfo.unlockAmount); } else { uint256 unlockTimes = getUnlockTimes(); require(unlockTimes > _userVestingInfo.lastUnlockTime, "The user has no lock record"); unlockAmount = unlockTimes.sub(_userVestingInfo.lastUnlockTime).mul(_userVestingInfo.secondUnlock); _userVestingInfo.lastUnlockTime = unlockTimes; } _safeTransfer(msg.sender, unlockAmount); _userVestingInfo.unlockAmount = _userVestingInfo.unlockAmount.add(unlockAmount); emit UnlockBySenderEvent(msg.sender, unlockAmount); } function _safeTransfer(address _unlockAddress, uint256 _unlockToken) private { require(balanceOf() >= _unlockToken, "Insufficient available balance for transfer"); token.transfer(_unlockAddress, _unlockToken); } function balanceOf() public view returns(uint256) { return token.balanceOf(address(this)); } function balanceOfBySender() public view returns(uint256) { return token.balanceOf(msg.sender); } function balanceOfByAddress(address _address) public view returns(uint256) { return token.balanceOf(_address); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FirstBySenderEvent","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"UnlockBySenderEvent","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"UserVesting","outputs":[{"internalType":"uint256","name":"totalAmount","type":"uint256"},{"internalType":"uint256","name":"firstAmount","type":"uint256"},{"internalType":"uint256","name":"unlockAmount","type":"uint256"},{"internalType":"uint256","name":"secondUnlock","type":"uint256"},{"internalType":"uint256","name":"lastUnlockTime","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"uint256","name":"_totalAmount","type":"uint256"}],"name":"addUserVestingInfo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"balanceOfByAddress","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"balanceOfBySender","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"blockTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"endDate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getUnlockTimes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxUnlockTimes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"startDate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"token","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenDecimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unlockAmountTotal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unlockBySender","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unlockFirstBySender","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040526361cf99816001556362e717816002553480156200002157600080fd5b50604051620029a6380380620029a6833981810160405260208110156200004757600080fd5b810190808051906020019092919050505033600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b1580156200014057600080fd5b505afa15801562000155573d6000803e3d6000fd5b505050506040513d60208110156200016c57600080fd5b810190808051906020019092919050505060ff16600481905550620001a460015460025462000e8160201b62000ec71790919060201c565b600581905550620001d373046a5a1fa5986767ec460b998cc78f59c6ee03ef62090f5662000ed360201b60201c565b620001fc7305404219d412c7b5a986be58bc3a4ee3ce56d6ca623473bc62000ed360201b60201c565b6200022573105167fd4edf441cc39113ed43e2169e27687c0f62090f5662000ed360201b60201c565b6200024e7311eff19dc599ee676b6d65bae0a60479a87e889a62090f5662000ed360201b60201c565b620002777315943509d0c216a9aa36fbfe0095948065433df762090f5662000ed360201b60201c565b620002a07316e110bed33c0445be68b957cbbef5cd7e1bbd4f62121eac62000ed360201b60201c565b620002c9731cad40d5c7302249f4cd76b8c6cdab1d059acff162121eac62000ed360201b60201c565b620002f27321d426655a41c0874048dd0a3e29b1cff5ec5fb662243d5862000ed360201b60201c565b6200031b732286aa3d41aad0f901cb94b6e158c86ccceecaa1620d59f862000ed360201b60201c565b620003447329958cbfbe4c73bf3f97fa40cdc9c75290e382db621e848062000ed360201b60201c565b6200036d73299ea82e5c48160a623aaba870cd9d6e1552b991625f5e1062000ed360201b60201c565b62000396732d946c881d2d28b005857658de1d3a6d48438c3b622d4cae62000ed360201b60201c565b620003bf732ebd34bd6e0fb0672b81cb6f721856fc4145dd68621312d062000ed360201b60201c565b620003e87330a15b722de7fb242a54a8497d0fc84528d3f156621e848062000ed360201b60201c565b620004117330b8a82c7014454be3bf67bb172f6312e2639b6362178e4662000ed360201b60201c565b6200043a7338adfcff7ed4496362ba8fdbdbe07b7c0e75653762090f5662000ed360201b60201c565b620004637338df87028c451ad521b2fb1576732e9637a66e6f621312d062000ed360201b60201c565b6200048c733904efc39b16e9ce6483e8beac623fca370286d16239387062000ed360201b60201c565b620004b5733940eb694f814ddb6c3593c8d35cc61b26904b2b621312d062000ed360201b60201c565b620004de7343bc45be9cba81f2dc29700d79704cad69f28b9f622625a062000ed360201b60201c565b620005077343f4759153292ac675ec7ff56439c60065acbc5162121eac62000ed360201b60201c565b6200053073440631dbdc0753e45241569c6d63552eac8e3130621b2e0262000ed360201b60201c565b6200055973464f0f0842c419001f99cd97a3349e14269e8af662090f5662000ed360201b60201c565b6200058273466822e78f979f6285aa40f978cc55a499965dc062090f5662000ed360201b60201c565b620005ab734b9dc74f34635556ef99aafb101af5a6adcc59b96207a12062000ed360201b60201c565b620005d4734c59e1b80ca11215c2a53b39651825663048a7ed621b2e0262000ed360201b60201c565b620005fd734d904df422ec729d627a289d6913c34d8c347b1d621c9c3862000ed360201b60201c565b620006267357ef2a07b9e70ce289e3e6754fcf20512c8403b462090f5662000ed360201b60201c565b6200064f73588384e142e5e1a841137b3d4e73b16e3858450d621b2e0262000ed360201b60201c565b620006787358a252cc4073dacc7eae81e7ea193faa1309984962d70db662000ed360201b60201c565b620006a17366c109f9a10627d0ac0068b272da01f61dab2b25621312d062000ed360201b60201c565b620006ca736aa80bca0e8047eac7af3d47c6983a6611f0db4c6225932462000ed360201b60201c565b620006f3736cb8e395d1f7c7b00d6594ded6aa03c5f7ca13c862090f5662000ed360201b60201c565b6200071c736cdb0a4902c81e9c63de8c486f31e8d5ddc0a9f762090f5662000ed360201b60201c565b620007457371d1f0a05f82c0ebd02b8704e3d2337b517a6b3a6218cba862000ed360201b60201c565b6200076e7372540c9142cd326d2b60a464801d99c04d361dcf62090f5662000ed360201b60201c565b62000797737a6d0261da79aca3564e7d6da146774c14259e1d621312d062000ed360201b60201c565b620007c0737cd50d621de372a92f324b5d62173f4ba344ce5062090f5662000ed360201b60201c565b620007e9737fcbf5cb2a9dd1bd1e148bf0aa9b049cc0a9e93862209d9c62000ed360201b60201c565b620008127382ba7508f7f1995ab1623258d66cb4e2b2b8f46762090f5662000ed360201b60201c565b6200083b738317ff8a1b35f331046395f84b5f6a3ec511a8c1620487ab62000ed360201b60201c565b620008647384dccfb3f3e044229fa00e216e2829725579d97f62243d5862000ed360201b60201c565b6200088d738522abd5e2c17722bf046a6d0af75b60ed5795466207a12062000ed360201b60201c565b620008b6738663381606edfc0f2d5136f7e763b91a6d76ed2262090f5662000ed360201b60201c565b620008df738937e56f926c04205c27dce54e273c0dd171aa3662090f5662000ed360201b60201c565b62000908738b6bbd8e858cc515352e5846a9e5b607ad43826f62121eac62000ed360201b60201c565b62000931738bb948ce8d46ffac5712247b4a501e874cb9c46862121eac62000ed360201b60201c565b6200095a738e2a75e4a07149149c1787d3a55a1736a0c8ddeb6205b8d862000ed360201b60201c565b620009837391406b5d57893e307f042d71c91e223a7058eb7262090f5662000ed360201b60201c565b620009ac739773d0da32f0ef40f3346dfd02f9baf9f945bba062090f5662000ed360201b60201c565b620009d57399dc041d9adbe5b183efe17586049fa3848df311625f5e1062000ed360201b60201c565b620009fe739c2d043aad476515da882daa28e70c0dc7a63d6762090f5662000ed360201b60201c565b62000a27739e6d8980bc9fc98c5d2db48c46237d12d9873ab0620e7ef062000ed360201b60201c565b62000a50739edc3668e4e990f23663341d0a667effdd6f1f5662090f5662000ed360201b60201c565b62000a7973a69303d076dfb54d50589c4d018205a409aa4293620caf1262000ed360201b60201c565b62000aa273b1e8fd06a5406262e420662bb22e3b9bb6dad1a6622cd29c62000ed360201b60201c565b62000acb73b5018bc174321ffe9e0a38d262e9a448fbd21cdb62090f5662000ed360201b60201c565b62000af473b72d959a9670b546a5759a9d50e8cdb59187f1b5621b2e0262000ed360201b60201c565b62000b1d73b7adc067507e9485345c96d1f92ecd9fc93452536209896862000ed360201b60201c565b62000b4673ba3d570535360bc9383b28691c872959d4a34061621312d062000ed360201b60201c565b62000b6f73bcd4cb80ba69376e10082427d6b50a181abcd307621c222662000ed360201b60201c565b62000b9873c89f9ba72752b9d9ac33220dbce309f38316730d622625a062000ed360201b60201c565b62000bc173d1b8ad0dbc972afc88e68902320100f52bfcf8d862090f5662000ed360201b60201c565b62000bea73d22108e8681d20227ddaaf5722e5c76b34f62c8b626f947462000ed360201b60201c565b62000c1373d58e6a2b3baca952d1f937a4c0f1e88aa92e47726217d78462000ed360201b60201c565b62000c3c73dc0d74171b31051d4bfa88de496ba5dc700614d162090f5662000ed360201b60201c565b62000c6573e4bcbfd6e636b15eaff352c867b33603a126adae62365c0462000ed360201b60201c565b62000c8e73e585a1a683214a2504ef36350f72e8e61304866062090f5662000ed360201b60201c565b62000cb773e58ea0ced4417f0551fb82ddf4f6477072dfb430621b2e0262000ed360201b60201c565b62000ce073e5ab3737ea9214428a3a3320ffc4c3a1ed0810c86205b8d862000ed360201b60201c565b62000d0973e816c2932724655782a81009cab64bc45446afb062104ece62000ed360201b60201c565b62000d3273f1d5f83cadfb8527e1ec32bd934fca87d288de7c62090f5662000ed360201b60201c565b62000d5b73f41399aac0d78cc955108e12916204d90faff875627270e062000ed360201b60201c565b62000d8473f5f6a4a2a3466b26c7f161258fc47ff5800c0116624c4b4062000ed360201b60201c565b62000dad73f76dbc5d9a7465ecec49700054bf27f88cf9ad0562121eac62000ed360201b60201c565b62000dd673f789c8fb4349ba8762b159ecd29ac1b65e327bd3621312d062000ed360201b60201c565b62000dff73f7b496c0178b1ee935ea3307188b5b1fbb0cda59620d970162000ed360201b60201c565b62000e2873fcd1c642a8f73866ebf8526b470a72b31a7e940462aba95062000ed360201b60201c565b62000e5173fda4723b9b4e7ebaa08e38c64ea7d73a8e0aac9b62090f5662000ed360201b60201c565b62000e7a73a5013bce0182e74ffef440b3b5dd7173ddcb52ce6207a12062000ed360201b60201c565b5062001506565b600062000ecb83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506200121160201b60201c565b905092915050565b3373ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161462000f7b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180620029316025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562001003576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602f81526020018062002977602f913960400191505060405180910390fd5b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060008211620010bd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f4c6f636b20757020616d6f756e742063616e6e6f74206265203000000000000081525060200191505060405180910390fd5b600081600001541462001138576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f4c6f636b20686173206265656e2061646465640000000000000000000000000081525060200191505060405180910390fd5b62001157600454600a0a83620012d560201b62000f111790919060201c565b8160000181905550620011996103e862001185607d8460000154620012d560201b62000f111790919060201c565b6200136060201b62000f971790919060201c565b8160010181905550620011de600554620011ca8360010154846000015462000e8160201b62000ec71790919060201c565b6200136060201b62000f971790919060201c565b8160030181905550620012068160000154600354620013b260201b62000fe11790919060201c565b600381905550505050565b6000838311158290620012c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156200128657808201518184015260208101905062001269565b50505050905090810190601f168015620012b45780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b600080831415620012ea57600090506200135a565b6000828402905082848281620012fc57fe5b041462001355576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180620029566021913960400191505060405180910390fd5b809150505b92915050565b6000620013aa83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200143b60201b60201c565b905092915050565b60008082840190508381101562001431576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b60008083118290620014eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015620014af57808201518184015260208101905062001492565b50505050905090810190601f168015620014dd5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581620014f857fe5b049050809150509392505050565b61141b80620015166000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c8063722713f711610097578063c24a0f8b11610066578063c24a0f8b146102b6578063c92972cd146102d4578063f3c82e101461032c578063fc0c546a14610336576100f5565b8063722713f71461023e5780637230fcb61461025c5780637cd8d4fb1461027a578063adb6183214610298576100f5565b80633a70a4e0116100d35780633a70a4e0146101845780633b97e856146101a257806355acc81c146101c05780636fd3cb8a14610234576100f5565b80630b399189146100fa5780630b97bc86146101485780633a1bbb9b14610166575b600080fd5b6101466004803603604081101561011057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061036a565b005b610150610678565b6040518082815260200191505060405180910390f35b61016e61067e565b6040518082815260200191505060405180910390f35b61018c6106bc565b6040518082815260200191505060405180910390f35b6101aa6106c2565b6040518082815260200191505060405180910390f35b610202600480360360208110156101d657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506106c8565b604051808681526020018581526020018481526020018381526020018281526020019550505050505060405180910390f35b61023c6106fe565b005b6102466109a7565b6040518082815260200191505060405180910390f35b610264610a71565b6040518082815260200191505060405180910390f35b610282610a77565b6040518082815260200191505060405180910390f35b6102a0610b41565b6040518082815260200191505060405180910390f35b6102be610b49565b6040518082815260200191505060405180910390f35b610316600480360360208110156102ea57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b4f565b6040518082815260200191505060405180910390f35b610334610c1b565b005b61033e610ea3565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3373ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610410576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602581526020018061134c6025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610496576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602f8152602001806113b7602f913960400191505060405180910390fd5b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000821161054f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f4c6f636b20757020616d6f756e742063616e6e6f74206265203000000000000081525060200191505060405180910390fd5b60008160000154146105c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f4c6f636b20686173206265656e2061646465640000000000000000000000000081525060200191505060405180910390fd5b6105e1600454600a0a83610f1190919063ffffffff16565b81600001819055506106156103e8610607607d8460000154610f1190919063ffffffff16565b610f9790919063ffffffff16565b816001018190555061064c60055461063e83600101548460000154610ec790919063ffffffff16565b610f9790919063ffffffff16565b816003018190555061066d8160000154600354610fe190919063ffffffff16565b600381905550505050565b60015481565b600060015461068b610b41565b11156106b4576106ad60015461069f610b41565b610ec790919063ffffffff16565b90506106b9565b600090505b90565b60055481565b60045481565b60076020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154905085565b6000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060008160000154116107bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f546865207573657220686173206e6f206c6f636b207265636f7264000000000081525060200191505060405180910390fd5b60006002546107c8610b41565b111561086d57816002015482600001541161084b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f546865207573657220686173206e6f20756e6c6f636b65642071756f7461000081525060200191505060405180910390fd5b61086682600201548360000154610ec790919063ffffffff16565b905061092c565b600061087761067e565b9050826004015481116108f2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f546865207573657220686173206e6f206c6f636b207265636f7264000000000081525060200191505060405180910390fd5b61091f8360030154610911856004015484610ec790919063ffffffff16565b610f1190919063ffffffff16565b9150808360040181905550505b6109363382611069565b61094d818360020154610fe190919063ffffffff16565b82600201819055503373ffffffffffffffffffffffffffffffffffffffff167fc549feef53ceaa371dfe1584f0466599c0bf5cc1f1d3df87aaed4ef83075bb86826040518082815260200191505060405180910390a25050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610a3157600080fd5b505afa158015610a45573d6000803e3d6000fd5b505050506040513d6020811015610a5b57600080fd5b8101908080519060200190929190505050905090565b60035481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610b0157600080fd5b505afa158015610b15573d6000803e3d6000fd5b505050506040513d6020811015610b2b57600080fd5b8101908080519060200190929190505050905090565b600042905090565b60025481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231836040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610bd957600080fd5b505afa158015610bed573d6000803e3d6000fd5b505050506040513d6020811015610c0357600080fd5b81019080805190602001909291905050509050919050565b6000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000816000015411610cd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f546865207573657220686173206e6f206c6f636b207265636f7264000000000081525060200191505060405180910390fd5b6000816001015411610d35576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806113716025913960400191505060405180910390fd5b8060020154816000015411610d95576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806113716025913960400191505060405180910390fd5b600154610da0610b41565b11610e13576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f49742773206e6f742074696d6520746f206c6f636b20616e6420756e6c6f636b81525060200191505060405180910390fd5b610e21338260010154611069565b610e3c81600101548260020154610fe190919063ffffffff16565b81600201819055503373ffffffffffffffffffffffffffffffffffffffff167f1a4a03d4107d2642d9b93b0dca8124bcf3893e06e83215ec886942657eacf48382600101546040518082815260200191505060405180910390a26000816001018190555050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610f0983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061119a565b905092915050565b600080831415610f245760009050610f91565b6000828402905082848281610f3557fe5b0414610f8c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806113966021913960400191505060405180910390fd5b809150505b92915050565b6000610fd983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061125a565b905092915050565b60008082840190508381101561105f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b806110726109a7565b10156110c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602b815260200180611321602b913960400191505060405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561115a57600080fd5b505af115801561116e573d6000803e3d6000fd5b505050506040513d602081101561118457600080fd5b8101908080519060200190929190505050505050565b6000838311158290611247576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561120c5780820151818401526020810190506111f1565b50505050905090810190601f1680156112395780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b60008083118290611306576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156112cb5780820151818401526020810190506112b0565b50505050905090810190601f1680156112f85780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161131257fe5b04905080915050939250505056fe496e73756666696369656e7420617661696c61626c652062616c616e636520666f72207472616e73666572596f7520646f206e6f742068617665207065726d697373696f6e20746f206f70657261746554686520757365722068617320756e6c6f636b65642074686520666972737420746f6b656e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77546865206c6f636b20616464726573732063616e6e6f74206265206120626c61636b20686f6c652061646472657373a2646970667358221220466f83f2e488564994e3a65b96d43efe97cbdcbd6ef928da4f03896d5594175264736f6c634300060c0033596f7520646f206e6f742068617665207065726d697373696f6e20746f206f706572617465536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77546865206c6f636b20616464726573732063616e6e6f74206265206120626c61636b20686f6c652061646472657373000000000000000000000000829c97092c0cc92efe7397dd3ddb831cc5835bae
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100f55760003560e01c8063722713f711610097578063c24a0f8b11610066578063c24a0f8b146102b6578063c92972cd146102d4578063f3c82e101461032c578063fc0c546a14610336576100f5565b8063722713f71461023e5780637230fcb61461025c5780637cd8d4fb1461027a578063adb6183214610298576100f5565b80633a70a4e0116100d35780633a70a4e0146101845780633b97e856146101a257806355acc81c146101c05780636fd3cb8a14610234576100f5565b80630b399189146100fa5780630b97bc86146101485780633a1bbb9b14610166575b600080fd5b6101466004803603604081101561011057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061036a565b005b610150610678565b6040518082815260200191505060405180910390f35b61016e61067e565b6040518082815260200191505060405180910390f35b61018c6106bc565b6040518082815260200191505060405180910390f35b6101aa6106c2565b6040518082815260200191505060405180910390f35b610202600480360360208110156101d657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506106c8565b604051808681526020018581526020018481526020018381526020018281526020019550505050505060405180910390f35b61023c6106fe565b005b6102466109a7565b6040518082815260200191505060405180910390f35b610264610a71565b6040518082815260200191505060405180910390f35b610282610a77565b6040518082815260200191505060405180910390f35b6102a0610b41565b6040518082815260200191505060405180910390f35b6102be610b49565b6040518082815260200191505060405180910390f35b610316600480360360208110156102ea57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b4f565b6040518082815260200191505060405180910390f35b610334610c1b565b005b61033e610ea3565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3373ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610410576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602581526020018061134c6025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610496576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602f8152602001806113b7602f913960400191505060405180910390fd5b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000821161054f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f4c6f636b20757020616d6f756e742063616e6e6f74206265203000000000000081525060200191505060405180910390fd5b60008160000154146105c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f4c6f636b20686173206265656e2061646465640000000000000000000000000081525060200191505060405180910390fd5b6105e1600454600a0a83610f1190919063ffffffff16565b81600001819055506106156103e8610607607d8460000154610f1190919063ffffffff16565b610f9790919063ffffffff16565b816001018190555061064c60055461063e83600101548460000154610ec790919063ffffffff16565b610f9790919063ffffffff16565b816003018190555061066d8160000154600354610fe190919063ffffffff16565b600381905550505050565b60015481565b600060015461068b610b41565b11156106b4576106ad60015461069f610b41565b610ec790919063ffffffff16565b90506106b9565b600090505b90565b60055481565b60045481565b60076020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154905085565b6000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060008160000154116107bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f546865207573657220686173206e6f206c6f636b207265636f7264000000000081525060200191505060405180910390fd5b60006002546107c8610b41565b111561086d57816002015482600001541161084b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f546865207573657220686173206e6f20756e6c6f636b65642071756f7461000081525060200191505060405180910390fd5b61086682600201548360000154610ec790919063ffffffff16565b905061092c565b600061087761067e565b9050826004015481116108f2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f546865207573657220686173206e6f206c6f636b207265636f7264000000000081525060200191505060405180910390fd5b61091f8360030154610911856004015484610ec790919063ffffffff16565b610f1190919063ffffffff16565b9150808360040181905550505b6109363382611069565b61094d818360020154610fe190919063ffffffff16565b82600201819055503373ffffffffffffffffffffffffffffffffffffffff167fc549feef53ceaa371dfe1584f0466599c0bf5cc1f1d3df87aaed4ef83075bb86826040518082815260200191505060405180910390a25050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610a3157600080fd5b505afa158015610a45573d6000803e3d6000fd5b505050506040513d6020811015610a5b57600080fd5b8101908080519060200190929190505050905090565b60035481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610b0157600080fd5b505afa158015610b15573d6000803e3d6000fd5b505050506040513d6020811015610b2b57600080fd5b8101908080519060200190929190505050905090565b600042905090565b60025481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231836040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610bd957600080fd5b505afa158015610bed573d6000803e3d6000fd5b505050506040513d6020811015610c0357600080fd5b81019080805190602001909291905050509050919050565b6000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000816000015411610cd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f546865207573657220686173206e6f206c6f636b207265636f7264000000000081525060200191505060405180910390fd5b6000816001015411610d35576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806113716025913960400191505060405180910390fd5b8060020154816000015411610d95576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806113716025913960400191505060405180910390fd5b600154610da0610b41565b11610e13576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f49742773206e6f742074696d6520746f206c6f636b20616e6420756e6c6f636b81525060200191505060405180910390fd5b610e21338260010154611069565b610e3c81600101548260020154610fe190919063ffffffff16565b81600201819055503373ffffffffffffffffffffffffffffffffffffffff167f1a4a03d4107d2642d9b93b0dca8124bcf3893e06e83215ec886942657eacf48382600101546040518082815260200191505060405180910390a26000816001018190555050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610f0983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061119a565b905092915050565b600080831415610f245760009050610f91565b6000828402905082848281610f3557fe5b0414610f8c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806113966021913960400191505060405180910390fd5b809150505b92915050565b6000610fd983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061125a565b905092915050565b60008082840190508381101561105f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b806110726109a7565b10156110c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602b815260200180611321602b913960400191505060405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561115a57600080fd5b505af115801561116e573d6000803e3d6000fd5b505050506040513d602081101561118457600080fd5b8101908080519060200190929190505050505050565b6000838311158290611247576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561120c5780820151818401526020810190506111f1565b50505050905090810190601f1680156112395780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b60008083118290611306576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156112cb5780820151818401526020810190506112b0565b50505050905090810190601f1680156112f85780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161131257fe5b04905080915050939250505056fe496e73756666696369656e7420617661696c61626c652062616c616e636520666f72207472616e73666572596f7520646f206e6f742068617665207065726d697373696f6e20746f206f70657261746554686520757365722068617320756e6c6f636b65642074686520666972737420746f6b656e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77546865206c6f636b20616464726573732063616e6e6f74206265206120626c61636b20686f6c652061646472657373a2646970667358221220466f83f2e488564994e3a65b96d43efe97cbdcbd6ef928da4f03896d5594175264736f6c634300060c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000829c97092c0cc92efe7397dd3ddb831cc5835bae
-----Decoded View---------------
Arg [0] : _token (address): 0x829C97092C0Cc92EfE7397dd3ddb831Cc5835Bae
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000829c97092c0cc92efe7397dd3ddb831cc5835bae
Deployed Bytecode Sourcemap
7558:11360:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15246:860;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7658:37;;;:::i;:::-;;;;;;;;;;;;;;;;;;;16226:220;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7886:29;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7845:28;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7954:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17259:1047;;;:::i;:::-;;18556:106;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7800:32;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18670:111;;;:::i;:::-;;;;;;;;;;;;;;;;;;;16114:104;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7727:37;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18789:126;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;16454:797;;;:::i;:::-;;7630:19;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;15246:860;15353:10;15340:23;;:9;;;;;;;;;;;:23;;;15332:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15444:1;15424:22;;:8;:22;;;;15416:82;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15509:40;15552:11;:21;15564:8;15552:21;;;;;;;;;;;;;;;15509:64;;15607:1;15592:12;:16;15584:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15690:1;15658:16;:28;;;:33;15650:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15757:37;15780:13;;15774:2;:19;15757:12;:16;;:37;;;;:::i;:::-;15726:16;:28;;:68;;;;15836:47;15878:4;15836:37;15869:3;15836:16;:28;;;:32;;:37;;;;:::i;:::-;:41;;:47;;;;:::i;:::-;15805:16;:28;;:78;;;;15934:82;16001:14;;15934:62;15967:16;:28;;;15934:16;:28;;;:32;;:62;;;;:::i;:::-;:66;;:82;;;;:::i;:::-;15902:16;:29;;:114;;;;16047:51;16069:16;:28;;;16047:17;;:21;;:51;;;;:::i;:::-;16027:17;:71;;;;15246:860;;;:::o;7658:37::-;;;;:::o;16226:220::-;16280:7;16322:9;;16303:16;:14;:16::i;:::-;:28;16300:139;;;16355:31;16376:9;;16355:16;:14;:16::i;:::-;:20;;:31;;;;:::i;:::-;16348:38;;;;16300:139;16426:1;16419:8;;16226:220;;:::o;7886:29::-;;;;:::o;7845:28::-;;;;:::o;7954:54::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;17259:1047::-;17303:40;17346:11;:23;17358:10;17346:23;;;;;;;;;;;;;;;17303:66;;17419:1;17388:16;:28;;;:32;17380:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17463:20;17520:7;;17501:16;:14;:16::i;:::-;:26;17498:598;;;17583:16;:29;;;17552:16;:28;;;:60;17544:103;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17677:63;17710:16;:29;;;17677:16;:28;;;:32;;:63;;;;:::i;:::-;17662:78;;17498:598;;;17773:19;17795:16;:14;:16::i;:::-;17773:38;;17848:16;:31;;;17834:11;:45;17826:85;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17941:83;17994:16;:29;;;17941:48;17957:16;:31;;;17941:11;:15;;:48;;;;:::i;:::-;:52;;:83;;;;:::i;:::-;17926:98;;18073:11;18039:16;:31;;:45;;;;17498:598;;18106:39;18120:10;18132:12;18106:13;:39::i;:::-;18188:47;18222:12;18188:16;:29;;;:33;;:47;;;;:::i;:::-;18156:16;:29;;:79;;;;18273:10;18253:45;;;18285:12;18253:45;;;;;;;;;;;;;;;;;;17259:1047;;:::o;18556:106::-;18597:7;18624:5;;;;;;;;;;;:15;;;18648:4;18624:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18617:37;;18556:106;:::o;7800:32::-;;;;:::o;18670:111::-;18719:7;18746:5;;;;;;;;;;;:15;;;18762:10;18746:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18739:34;;18670:111;:::o;16114:104::-;16168:7;16195:15;16188:22;;16114:104;:::o;7727:37::-;;;;:::o;18789:126::-;18855:7;18882:5;;;;;;;;;;;:15;;;18898:8;18882:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18875:32;;18789:126;;;:::o;16454:797::-;16503:40;16546:11;:23;16558:10;16546:23;;;;;;;;;;;;;;;16503:66;;16619:1;16588:16;:28;;;:32;16580:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16702:1;16671:16;:28;;;:32;16663:82;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16795:16;:29;;;16764:16;:28;;;:60;16756:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16904:9;;16885:16;:14;:16::i;:::-;:28;16877:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16961:55;16975:10;16987:16;:28;;;16961:13;:55::i;:::-;17059:63;17093:16;:28;;;17059:16;:29;;;:33;;:63;;;;:::i;:::-;17027:16;:29;;:95;;;;17159:10;17140:60;;;17171:16;:28;;;17140:60;;;;;;;;;;;;;;;;;;17242:1;17211:16;:28;;:32;;;;16454:797;:::o;7630:19::-;;;;;;;;;;;;:::o;3543:136::-;3601:7;3628:43;3632:1;3635;3628:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;3621:50;;3543:136;;;;:::o;4417:471::-;4475:7;4725:1;4720;:6;4716:47;;;4750:1;4743:8;;;;4716:47;4775:9;4791:1;4787;:5;4775:17;;4820:1;4815;4811;:5;;;;;;:10;4803:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4879:1;4872:8;;;4417:471;;;;;:::o;5356:132::-;5414:7;5441:39;5445:1;5448;5441:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;5434:46;;5356:132;;;;:::o;3087:181::-;3145:7;3165:9;3181:1;3177;:5;3165:17;;3206:1;3201;:6;;3193:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3259:1;3252:8;;;3087:181;;;;:::o;18314:234::-;18425:12;18410:11;:9;:11::i;:::-;:27;;18402:83;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18496:5;;;;;;;;;;:14;;;18511;18527:12;18496:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18314:234;;:::o;3974:192::-;4060:7;4093:1;4088;:6;;4096:12;4080:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4120:9;4136:1;4132;:5;4120:17;;4157:1;4150:8;;;3974:192;;;;;:::o;5976:345::-;6062:7;6161:1;6157;:5;6164:12;6149:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6188:9;6204:1;6200;:5;;;;;;6188:17;;6312:1;6305:8;;;5976:345;;;;;:::o
Swarm Source
ipfs://466f83f2e488564994e3a65b96d43efe97cbdcbd6ef928da4f03896d55941752
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 29 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.