More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 167 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Withdraw | 21628847 | 5 days ago | IN | 0 ETH | 0.00021208 | ||||
Lock LP Token | 20964601 | 98 days ago | IN | 0.1 ETH | 0.01810122 | ||||
Withdraw | 20639549 | 143 days ago | IN | 0 ETH | 0.00008606 | ||||
Lock LP Token | 20509174 | 161 days ago | IN | 0.1 ETH | 0.00008792 | ||||
Withdraw | 20382657 | 179 days ago | IN | 0 ETH | 0.00015558 | ||||
Lock LP Token | 20242636 | 199 days ago | IN | 0.1 ETH | 0.00021017 | ||||
Withdraw | 19918229 | 244 days ago | IN | 0 ETH | 0.00158592 | ||||
Lock LP Token | 19897074 | 247 days ago | IN | 0.1 ETH | 0.00114503 | ||||
Lock LP Token | 19698665 | 275 days ago | IN | 0.1 ETH | 0.00241919 | ||||
Withdraw | 19357247 | 322 days ago | IN | 0 ETH | 0.00286899 | ||||
Withdraw | 19357227 | 322 days ago | IN | 0 ETH | 0.00420388 | ||||
Lock LP Token | 19312196 | 329 days ago | IN | 0.1 ETH | 0.02423289 | ||||
Withdraw | 19254246 | 337 days ago | IN | 0 ETH | 0.00136189 | ||||
Lock LP Token | 19254229 | 337 days ago | IN | 0.1 ETH | 0.01928635 | ||||
Lock LP Token | 19249445 | 338 days ago | IN | 0.1 ETH | 0.00572501 | ||||
Withdraw | 19181442 | 347 days ago | IN | 0 ETH | 0.00239809 | ||||
Withdraw | 19113854 | 357 days ago | IN | 0 ETH | 0.00091761 | ||||
Lock LP Token | 19112886 | 357 days ago | IN | 0.1 ETH | 0.00817801 | ||||
Lock LP Token | 18774177 | 404 days ago | IN | 0.1 ETH | 0.01843993 | ||||
Lock LP Token | 18656399 | 421 days ago | IN | 0.1 ETH | 0.00818748 | ||||
Relock | 18594274 | 429 days ago | IN | 0 ETH | 0.00089861 | ||||
Lock LP Token | 18370590 | 461 days ago | IN | 0.1 ETH | 0.00543369 | ||||
Withdraw | 18343576 | 465 days ago | IN | 0 ETH | 0.0004757 | ||||
Withdraw | 18183704 | 487 days ago | IN | 0 ETH | 0.0013398 | ||||
Withdraw | 18120595 | 496 days ago | IN | 0 ETH | 0.00167815 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
20964601 | 98 days ago | 0.1 ETH | ||||
20936911 | 102 days ago | 0.1 ETH | ||||
20936911 | 102 days ago | 0.1 ETH | ||||
20633647 | 144 days ago | 0.1 ETH | ||||
20633647 | 144 days ago | 0.1 ETH | ||||
20249319 | 198 days ago | 0.1 ETH | ||||
20249319 | 198 days ago | 0.1 ETH | ||||
19897074 | 247 days ago | 0.1 ETH | ||||
19805975 | 260 days ago | 0.1 ETH | ||||
19805975 | 260 days ago | 0.1 ETH | ||||
19701930 | 274 days ago | 0.1 ETH | ||||
19701930 | 274 days ago | 0.1 ETH | ||||
19699450 | 274 days ago | 0.1 ETH | ||||
19699450 | 274 days ago | 0.1 ETH | ||||
19698665 | 275 days ago | 0.1 ETH | ||||
19696457 | 275 days ago | 0.1 ETH | ||||
19696457 | 275 days ago | 0.1 ETH | ||||
19356728 | 323 days ago | 0.1 ETH | ||||
19356728 | 323 days ago | 0.1 ETH | ||||
19312196 | 329 days ago | 0.1 ETH | ||||
19254229 | 337 days ago | 0.1 ETH | ||||
19249445 | 338 days ago | 0.1 ETH | ||||
19112886 | 357 days ago | 0.1 ETH | ||||
19108589 | 357 days ago | 0.1 ETH | ||||
19108589 | 357 days ago | 0.1 ETH |
Loading...
Loading
Contract Name:
TokenLocker
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-07-07 */ pragma solidity >=0.6.0 <0.8.0; contract EternalStorage { mapping(bytes32 => uint256) internal uintStorage; mapping(bytes32 => string) internal stringStorage; mapping(bytes32 => address) internal addressStorage; mapping(bytes32 => bytes) internal bytesStorage; mapping(bytes32 => bool) internal boolStorage; mapping(bytes32 => int256) internal intStorage; } // File: @openzeppelin/contracts/utils/ReentrancyGuard.sol // SPDX-License-Identifier: MIT pragma solidity >=0.6.0 <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 () internal { _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 make it call a * `private` function that does the actual work. */ modifier nonReentrant() { // On the first call to nonReentrant, _notEntered will be true require(_status != _ENTERED, "ReentrancyGuard: reentrant call"); // Any calls to nonReentrant after this point will fail _status = _ENTERED; _; // By storing the original value once again, a refund is triggered (see // https://eips.ethereum.org/EIPS/eip-2200) _status = _NOT_ENTERED; } } // File: @openzeppelin/contracts/math/SafeMath.sol /** * @dev Wrappers over Solidity's arithmetic operations with added overflow * checks. * * Arithmetic operations in Solidity wrap on overflow. This can easily result * in bugs, because programmers usually assume that an overflow raises an * error, which is the standard behavior in high level programming languages. * `SafeMath` restores this intuition by reverting the transaction when an * operation overflows. * * Using this library instead of the unchecked operations eliminates an entire * class of bugs, so it's recommended to use it always. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { uint256 c = a + b; if (c < a) return (false, 0); return (true, c); } /** * @dev Returns the substraction of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { if (b > a) return (false, 0); return (true, a - b); } /** * @dev Returns the multiplication of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function tryMul(uint256 a, uint256 b) internal pure returns (bool, 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 (true, 0); uint256 c = a * b; if (c / a != b) return (false, 0); return (true, c); } /** * @dev Returns the division of two unsigned integers, with a division by zero flag. * * _Available since v3.4._ */ function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { if (b == 0) return (false, 0); return (true, a / b); } /** * @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag. * * _Available since v3.4._ */ function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) { if (b == 0) return (false, 0); return (true, a % b); } /** * @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) { require(b <= a, "SafeMath: subtraction overflow"); return a - b; } /** * @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) { 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, reverting 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) { require(b > 0, "SafeMath: division by zero"); return a / b; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * reverting 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) { require(b > 0, "SafeMath: modulo by zero"); return a % b; } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * CAUTION: This function is deprecated because it requires allocating memory for the error * message unnecessarily. For custom revert reasons use {trySub}. * * 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); return a - b; } /** * @dev Returns the integer division of two unsigned integers, reverting with custom message on * division by zero. The result is rounded towards zero. * * CAUTION: This function is deprecated because it requires allocating memory for the error * message unnecessarily. For custom revert reasons use {tryDiv}. * * 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) { require(b > 0, errorMessage); return a / b; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * reverting with custom message when dividing by zero. * * CAUTION: This function is deprecated because it requires allocating memory for the error * message unnecessarily. For custom revert reasons use {tryMod}. * * 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; } } // File: @openzeppelin/contracts/utils/Context.sol /* * @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 GSN 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 payable) { return msg.sender; } function _msgData() internal view virtual returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } // File: @openzeppelin/contracts/access/Ownable.sol /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor () internal { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = 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"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } // File: @uniswap/lib/contracts/libraries/TransferHelper.sol // helper methods for interacting with ERC20 tokens and sending ETH that do not consistently return true/false library TransferHelper { function safeApprove( address token, address to, uint256 value ) internal { // bytes4(keccak256(bytes('approve(address,uint256)'))); (bool success, bytes memory data) = token.call(abi.encodeWithSelector(0x095ea7b3, to, value)); require( success && (data.length == 0 || abi.decode(data, (bool))), 'TransferHelper::safeApprove: approve failed' ); } function safeTransfer( address token, address to, uint256 value ) internal { // bytes4(keccak256(bytes('transfer(address,uint256)'))); (bool success, bytes memory data) = token.call(abi.encodeWithSelector(0xa9059cbb, to, value)); require( success && (data.length == 0 || abi.decode(data, (bool))), 'TransferHelper::safeTransfer: transfer failed' ); } function safeTransferFrom( address token, address from, address to, uint256 value ) internal { // bytes4(keccak256(bytes('transferFrom(address,address,uint256)'))); (bool success, bytes memory data) = token.call(abi.encodeWithSelector(0x23b872dd, from, to, value)); require( success && (data.length == 0 || abi.decode(data, (bool))), 'TransferHelper::transferFrom: transferFrom failed' ); } function safeTransferBaseToken(address token, address payable to, uint value, bool isERC20) internal { if (!isERC20) { to.transfer(value); } else { (bool success, bytes memory data) = token.call(abi.encodeWithSelector(0xa9059cbb, to, value)); require(success && (data.length == 0 || abi.decode(data, (bool))), 'TransferHelper: TRANSFER_FAILED'); } } } interface IERCBurn { function burn(uint256 _amount) external; function approve(address spender, uint256 amount) external returns (bool); function allowance(address owner, address spender) external returns (uint256); function balanceOf(address account) external view returns (uint256); } interface IUniFactory { function getPair(address tokenA, address tokenB) external view returns (address); } interface IMigrator { function migrate(address lpToken, uint256 amount, uint256 unlockDate, address owner) external returns (bool); } contract TokenLocker is Ownable, ReentrancyGuard,EternalStorage { using SafeMath for uint256; struct TokenLock { uint256 lockDate; // the date the token was locked uint256 amount; // the amount of tokens still locked (initialAmount minus withdrawls) uint256 initialAmount; // the initial lock amount uint256 unlockDate; // the date the token can be withdrawn address owner; } mapping(address => address[]) public lockedTokens; mapping(address => address[]) public lockedUser; mapping(address => mapping (address => TokenLock)) public tokenLocks; //map univ2 pair to all its locks struct FeeStruct { uint256 ethFee; // Small eth fee to prevent spam on the platform uint256 liquidityFee; // fee on univ2 liquidity tokens } FeeStruct public gFees; address payable devaddr; address payable lpaddr; IMigrator migrator; event onDeposit(address lpToken, address user, uint256 amount, uint256 lockDate, uint256 unlockDate); event onWithdraw(address lpToken, uint256 amount); constructor(address payable _lpaddr) public { devaddr = msg.sender; lpaddr = _lpaddr; gFees.ethFee = 0.1 ether; gFees.liquidityFee = 10; // 1% } function setDev(address payable _devaddr) public onlyOwner { devaddr = _devaddr; } /** * @notice set the migrator contract which allows locked lp tokens to be migrated to uniswap v3 */ function setMigrator(IMigrator _migrator) public onlyOwner { migrator = _migrator; } function setFees(uint256 _ethFee, uint256 _liquidityFee) public onlyOwner { gFees.ethFee = _ethFee; gFees.liquidityFee = _liquidityFee; } /** * @notice Creates a new lock * @param _lpToken the univ2 token address * @param _amount amount of LP tokens to lock * @param _unlock_date the unix timestamp (in seconds) until unlock * @param _withdrawer the user who can withdraw liquidity once the lock expires. */ function lockLPToken (address _lpToken, uint256 _amount, uint256 _unlock_date, address payable _withdrawer) external payable nonReentrant { require(_unlock_date < 10000000000, 'TIMESTAMP INVALID'); // prevents errors when timestamp entered in milliseconds require(_amount > 0, 'INSUFFICIENT'); TransferHelper.safeTransferFrom(_lpToken, address(msg.sender), address(this), _amount); uint256 ethFee = gFees.ethFee; require(msg.value == ethFee, 'FEE NOT MET'); uint256 devFee = ethFee; devaddr.transfer(devFee); // percent fee uint256 liquidityFee = _amount.mul(gFees.liquidityFee).div(1000); TransferHelper.safeTransfer(_lpToken, lpaddr, liquidityFee); uint256 amountLocked = _amount.sub(liquidityFee); if(!boolStorage[keccak256(abi.encodePacked(_lpToken,_withdrawer))]){ TokenLock memory token_lock; token_lock.lockDate = block.timestamp; token_lock.amount = amountLocked; token_lock.initialAmount = amountLocked; token_lock.unlockDate = _unlock_date; token_lock.owner = _withdrawer; // record the lock for the univ2pair tokenLocks[_lpToken][_withdrawer] = token_lock; boolStorage[keccak256(abi.encodePacked(_lpToken,_withdrawer))] = true; if(!boolStorage[keccak256(abi.encodePacked(_withdrawer,_lpToken))]){ lockedTokens[_lpToken].push(_withdrawer); lockedUser[_withdrawer].push(_lpToken); boolStorage[keccak256(abi.encodePacked(_withdrawer,_lpToken))] = true; } emit onDeposit(_lpToken, msg.sender, token_lock.amount, token_lock.lockDate, token_lock.unlockDate); }else{ require(msg.sender == _withdrawer, '_withdrawer no sender'); TokenLock storage tokenLock = tokenLocks[_lpToken][_withdrawer]; tokenLock.amount= tokenLock.amount.add(amountLocked); tokenLock.initialAmount= tokenLock.initialAmount.add(amountLocked); tokenLock.lockDate = block.timestamp; if(_unlock_date > tokenLock.unlockDate){ tokenLock.unlockDate = _unlock_date; } emit onDeposit(_lpToken, msg.sender, tokenLock.amount, tokenLock.lockDate, tokenLock.unlockDate); } } function relock (address _lpToken, uint256 _unlock_date) external nonReentrant { require(_unlock_date < 10000000000, 'TIMESTAMP INVALID'); // prevents errors when timestamp entered in milliseconds TokenLock storage userLock = tokenLocks[_lpToken][msg.sender]; require(userLock.owner == msg.sender, 'LOCK MISMATCH'); // ensures correct lock is affected require(userLock.unlockDate < _unlock_date, 'UNLOCK BEFORE'); userLock.unlockDate = _unlock_date; } /** * @notice withdraw a specified amount from a lock. _index and _lockID ensure the correct lock is changed * this prevents errors when a user performs multiple tx per block possibly with varying gas prices */ function withdraw (address _lpToken, uint256 _amount) external nonReentrant { require(_amount > 0, 'ZERO WITHDRAWL'); TokenLock storage userLock = tokenLocks[_lpToken][msg.sender]; require(userLock.owner == msg.sender, 'LOCK MISMATCH'); // ensures correct lock is affected require(userLock.unlockDate < block.timestamp, 'NOT YET'); userLock.amount = userLock.amount.sub(_amount); // clean user storage if (userLock.amount == 0) { boolStorage[keccak256(abi.encodePacked(_lpToken,msg.sender))] = false; } TransferHelper.safeTransfer(_lpToken, msg.sender, _amount); emit onWithdraw(_lpToken, _amount); } function getLockForToken (address _lpToken) external view returns (address[] memory) { address[] memory addr_list = lockedTokens[_lpToken]; return addr_list; } function getLockForUser (address _user) external view returns (address[] memory) { address[] memory addr_list = lockedUser[_user]; return addr_list; } function getUserLockForToken (address _user, address _lpToken) external view returns (uint256, uint256, uint256, uint256, address) { TokenLock storage tokenLock = tokenLocks[_lpToken][_user]; return (tokenLock.lockDate, tokenLock.amount, tokenLock.initialAmount, tokenLock.unlockDate, tokenLock.owner); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address payable","name":"_lpaddr","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":false,"internalType":"address","name":"lpToken","type":"address"},{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"lockDate","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"unlockDate","type":"uint256"}],"name":"onDeposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"lpToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"onWithdraw","type":"event"},{"inputs":[],"name":"gFees","outputs":[{"internalType":"uint256","name":"ethFee","type":"uint256"},{"internalType":"uint256","name":"liquidityFee","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_lpToken","type":"address"}],"name":"getLockForToken","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"getLockForUser","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"address","name":"_lpToken","type":"address"}],"name":"getUserLockForToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_lpToken","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"uint256","name":"_unlock_date","type":"uint256"},{"internalType":"address payable","name":"_withdrawer","type":"address"}],"name":"lockLPToken","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"lockedTokens","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"lockedUser","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_lpToken","type":"address"},{"internalType":"uint256","name":"_unlock_date","type":"uint256"}],"name":"relock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_devaddr","type":"address"}],"name":"setDev","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_ethFee","type":"uint256"},{"internalType":"uint256","name":"_liquidityFee","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IMigrator","name":"_migrator","type":"address"}],"name":"setMigrator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"tokenLocks","outputs":[{"internalType":"uint256","name":"lockDate","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"initialAmount","type":"uint256"},{"internalType":"uint256","name":"unlockDate","type":"uint256"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_lpToken","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b506040516119e93803806119e98339818101604052602081101561003357600080fd5b5051600061003f6100d1565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060018055600d8054336001600160a01b031991821617909155600e80549091166001600160a01b039290921691909117905567016345785d8a0000600b55600a600c556100d5565b3390565b611905806100e46000396000f3fe6080604052600436106100f35760003560e01c806390e1a0031161008a578063d98dcfa811610059578063d98dcfa8146103dc578063df41bc5f1461040f578063f2fde38b14610449578063f3fef3a31461047c576100f3565b806390e1a003146102bd578063be4e74d0146102eb578063c463c6d81461036e578063d477f05f146103a9576100f3565b806353719b6e116100c657806353719b6e146101eb578063715018a6146102245780637444c591146102395780638da5cb5b146102a8576100f3565b80630b78f9c0146100f857806323cf31181461012a578063447eb6ed1461015d5780634675bb3d146101b2575b600080fd5b34801561010457600080fd5b506101286004803603604081101561011b57600080fd5b50803590602001356104b5565b005b34801561013657600080fd5b506101286004803603602081101561014d57600080fd5b50356001600160a01b0316610522565b34801561016957600080fd5b506101966004803603604081101561018057600080fd5b506001600160a01b0381351690602001356105a6565b604080516001600160a01b039092168252519081900360200190f35b3480156101be57600080fd5b50610128600480360360408110156101d557600080fd5b506001600160a01b0381351690602001356105db565b3480156101f757600080fd5b506101966004803603604081101561020e57600080fd5b506001600160a01b038135169060200135610747565b34801561023057600080fd5b50610128610760565b34801561024557600080fd5b506102746004803603604081101561025c57600080fd5b506001600160a01b038135811691602001351661080c565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b3480156102b457600080fd5b50610196610856565b3480156102c957600080fd5b506102d2610865565b6040805192835260208301919091528051918290030190f35b3480156102f757600080fd5b5061031e6004803603602081101561030e57600080fd5b50356001600160a01b031661086e565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561035a578181015183820152602001610342565b505050509050019250505060405180910390f35b34801561037a57600080fd5b506102746004803603604081101561039157600080fd5b506001600160a01b03813581169160200135166108f7565b3480156103b557600080fd5b50610128600480360360208110156103cc57600080fd5b50356001600160a01b031661093a565b3480156103e857600080fd5b5061031e600480360360208110156103ff57600080fd5b50356001600160a01b03166109be565b6101286004803603608081101561042557600080fd5b506001600160a01b0381358116916020810135916040820135916060013516610a45565b34801561045557600080fd5b506101286004803603602081101561046c57600080fd5b50356001600160a01b0316611085565b34801561048857600080fd5b506101286004803603604081101561049f57600080fd5b506001600160a01b038135169060200135611187565b6104bd61139d565b6001600160a01b03166104ce610856565b6001600160a01b031614610517576040805162461bcd60e51b81526020600482018190526024820152600080516020611883833981519152604482015290519081900360640190fd5b600b91909155600c55565b61052a61139d565b6001600160a01b031661053b610856565b6001600160a01b031614610584576040805162461bcd60e51b81526020600482018190526024820152600080516020611883833981519152604482015290519081900360640190fd5b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b600960205281600052604060002081815481106105bf57fe5b6000918252602090912001546001600160a01b03169150829050565b60026001541415610633576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026001556402540be4008110610685576040805162461bcd60e51b81526020600482015260116024820152701512535154d51053540812539590531251607a1b604482015290519081900360640190fd5b6001600160a01b038083166000908152600a602090815260408083203380855292529091206004810154909216146106f4576040805162461bcd60e51b815260206004820152600d60248201526c0989e8696409a92a69a82a8869609b1b604482015290519081900360640190fd5b8181600301541061073c576040805162461bcd60e51b815260206004820152600d60248201526c554e4c4f434b204245464f524560981b604482015290519081900360640190fd5b600301555060018055565b600860205281600052604060002081815481106105bf57fe5b61076861139d565b6001600160a01b0316610779610856565b6001600160a01b0316146107c2576040805162461bcd60e51b81526020600482018190526024820152600080516020611883833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b039081166000908152600a602090815260408083209484168352939052919091208054600182015460028301546003840154600490940154929591949093921690565b6000546001600160a01b031690565b600b54600c5482565b60608060096000846001600160a01b03166001600160a01b031681526020019081526020016000208054806020026020016040519081016040528092919081815260200182805480156108ea57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116108cc575b5093979650505050505050565b600a60209081526000928352604080842090915290825290208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b61094261139d565b6001600160a01b0316610953610856565b6001600160a01b03161461099c576040805162461bcd60e51b81526020600482018190526024820152600080516020611883833981519152604482015290519081900360640190fd5b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b60608060086000846001600160a01b03166001600160a01b031681526020019081526020016000208054806020026020016040519081016040528092919081815260200182805480156108ea576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116108cc575093979650505050505050565b60026001541415610a9d576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026001556402540be4008210610aef576040805162461bcd60e51b81526020600482015260116024820152701512535154d51053540812539590531251607a1b604482015290519081900360640190fd5b60008311610b33576040805162461bcd60e51b815260206004820152600c60248201526b125394d551919250d251539560a21b604482015290519081900360640190fd5b610b3f843330866113a1565b600b54348114610b84576040805162461bcd60e51b815260206004820152600b60248201526a119151481393d50813515560aa1b604482015290519081900360640190fd5b600d5460405182916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610bbe573d6000803e3d6000fd5b506000610be56103e8610bdf600b60010154896114fe90919063ffffffff16565b90611560565b600e54909150610c009088906001600160a01b0316836115c7565b6000610c0c878361171b565b6040805160608b811b6001600160601b0319908116602080850191909152918a901b166034830152825180830360280181526048909201835281519181019190912060009081526006909152205490915060ff16610f5b57610c6c6117d2565b428160000181815250508181602001818152505081816040018181525050868160600181815250508581608001906001600160a01b031690816001600160a01b03168152505080600a60008b6001600160a01b03166001600160a01b031681526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000206000820151816000015560208201518160010155604082015181600201556060820151816003015560808201518160040160006101000a8154816001600160a01b0302191690836001600160a01b031602179055509050506001600660008b8960405160200180836001600160a01b031660601b8152601401826001600160a01b031660601b81526014019250505060405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548160ff02191690831515021790555060066000878b60405160200180836001600160a01b031660601b8152601401826001600160a01b031660601b81526014019250505060405160208183030381529060405280519060200120815260200190815260200160002060009054906101000a900460ff16610ee0576001600160a01b03808a166000818152600860209081526040808320805460018181018355918552838520018054968d166001600160a01b031997881681179091558452600983528184208054808301825590855283852001805490961690941790945583516001600160601b031960608c811b8216838501528f901b166034820152845160288183030181526048909101855280519082012082526006905291909120805460ff191690911790555b7f830357565da6ecfc26d8d9f69df488ed6f70361af9a07e570544aeb5c5e765e5893383602001518460000151856060015160405180866001600160a01b03168152602001856001600160a01b031681526020018481526020018381526020018281526020019550505050505060405180910390a150611077565b336001600160a01b03861614610fb0576040805162461bcd60e51b81526020600482015260156024820152742fbbb4ba34323930bbb2b91037379039b2b73232b960591b604482015290519081900360640190fd5b6001600160a01b038089166000908152600a602090815260408083209389168352929052206001810154610fe49083611778565b60018201556002810154610ff89083611778565b6002820155428155600381015487111561101457600381018790555b600181015481546003830154604080516001600160a01b038e1681523360208201528082019490945260608401929092526080830152517f830357565da6ecfc26d8d9f69df488ed6f70361af9a07e570544aeb5c5e765e59181900360a00190a1505b505060018055505050505050565b61108d61139d565b6001600160a01b031661109e610856565b6001600160a01b0316146110e7576040805162461bcd60e51b81526020600482018190526024820152600080516020611883833981519152604482015290519081900360640190fd5b6001600160a01b03811661112c5760405162461bcd60e51b815260040180806020018281038252602681526020018061180b6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600260015414156111df576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b600260015580611227576040805162461bcd60e51b815260206004820152600e60248201526d16915493c815d2551211149055d360921b604482015290519081900360640190fd5b6001600160a01b038083166000908152600a60209081526040808320338085529252909120600481015490921614611296576040805162461bcd60e51b815260206004820152600d60248201526c0989e8696409a92a69a82a8869609b1b604482015290519081900360640190fd5b428160030154106112d8576040805162461bcd60e51b81526020600482015260076024820152661393d50816515560ca1b604482015290519081900360640190fd5b60018101546112e7908361171b565b600182018190556113455760408051606085811b6001600160601b0319166020808401919091523390911b603483015282518083036028018152604890920183528151918101919091206000908152600690915220805460ff191690555b6113508333846115c7565b604080516001600160a01b03851681526020810184905281517fccad973dcd043c7d680389db4378bd6b9775db7124092e9e0422c9e46d7985dc929181900390910190a150506001805550565b3390565b604080516001600160a01b0385811660248301528481166044830152606480830185905283518084039091018152608490920183526020820180516001600160e01b03166323b872dd60e01b17815292518251600094606094938a169392918291908083835b602083106114265780518252601f199092019160209182019101611407565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611488576040519150601f19603f3d011682016040523d82523d6000602084013e61148d565b606091505b50915091508180156114bb5750805115806114bb57508080602001905160208110156114b857600080fd5b50515b6114f65760405162461bcd60e51b81526004018080602001828103825260318152602001806118316031913960400191505060405180910390fd5b505050505050565b60008261150d5750600061155a565b8282028284828161151a57fe5b04146115575760405162461bcd60e51b81526004018080602001828103825260218152602001806118626021913960400191505060405180910390fd5b90505b92915050565b60008082116115b6576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b8183816115bf57fe5b049392505050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b178152925182516000946060949389169392918291908083835b602083106116445780518252601f199092019160209182019101611625565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146116a6576040519150601f19603f3d011682016040523d82523d6000602084013e6116ab565b606091505b50915091508180156116d95750805115806116d957508080602001905160208110156116d657600080fd5b50515b6117145760405162461bcd60e51b815260040180806020018281038252602d8152602001806118a3602d913960400191505060405180910390fd5b5050505050565b600082821115611772576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082820183811015611557576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6040518060a001604052806000815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573735472616e7366657248656c7065723a3a7472616e7366657246726f6d3a207472616e7366657246726f6d206661696c6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725472616e7366657248656c7065723a3a736166655472616e736665723a207472616e73666572206661696c6564a2646970667358221220256d892ce59b82b7191abea34488bd99c6c8989c22e3d7764d611c64f7ab4d0264736f6c634300060c003300000000000000000000000011111111686b45eb94d9688f715815fc0cc0e5ec
Deployed Bytecode
0x6080604052600436106100f35760003560e01c806390e1a0031161008a578063d98dcfa811610059578063d98dcfa8146103dc578063df41bc5f1461040f578063f2fde38b14610449578063f3fef3a31461047c576100f3565b806390e1a003146102bd578063be4e74d0146102eb578063c463c6d81461036e578063d477f05f146103a9576100f3565b806353719b6e116100c657806353719b6e146101eb578063715018a6146102245780637444c591146102395780638da5cb5b146102a8576100f3565b80630b78f9c0146100f857806323cf31181461012a578063447eb6ed1461015d5780634675bb3d146101b2575b600080fd5b34801561010457600080fd5b506101286004803603604081101561011b57600080fd5b50803590602001356104b5565b005b34801561013657600080fd5b506101286004803603602081101561014d57600080fd5b50356001600160a01b0316610522565b34801561016957600080fd5b506101966004803603604081101561018057600080fd5b506001600160a01b0381351690602001356105a6565b604080516001600160a01b039092168252519081900360200190f35b3480156101be57600080fd5b50610128600480360360408110156101d557600080fd5b506001600160a01b0381351690602001356105db565b3480156101f757600080fd5b506101966004803603604081101561020e57600080fd5b506001600160a01b038135169060200135610747565b34801561023057600080fd5b50610128610760565b34801561024557600080fd5b506102746004803603604081101561025c57600080fd5b506001600160a01b038135811691602001351661080c565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b3480156102b457600080fd5b50610196610856565b3480156102c957600080fd5b506102d2610865565b6040805192835260208301919091528051918290030190f35b3480156102f757600080fd5b5061031e6004803603602081101561030e57600080fd5b50356001600160a01b031661086e565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561035a578181015183820152602001610342565b505050509050019250505060405180910390f35b34801561037a57600080fd5b506102746004803603604081101561039157600080fd5b506001600160a01b03813581169160200135166108f7565b3480156103b557600080fd5b50610128600480360360208110156103cc57600080fd5b50356001600160a01b031661093a565b3480156103e857600080fd5b5061031e600480360360208110156103ff57600080fd5b50356001600160a01b03166109be565b6101286004803603608081101561042557600080fd5b506001600160a01b0381358116916020810135916040820135916060013516610a45565b34801561045557600080fd5b506101286004803603602081101561046c57600080fd5b50356001600160a01b0316611085565b34801561048857600080fd5b506101286004803603604081101561049f57600080fd5b506001600160a01b038135169060200135611187565b6104bd61139d565b6001600160a01b03166104ce610856565b6001600160a01b031614610517576040805162461bcd60e51b81526020600482018190526024820152600080516020611883833981519152604482015290519081900360640190fd5b600b91909155600c55565b61052a61139d565b6001600160a01b031661053b610856565b6001600160a01b031614610584576040805162461bcd60e51b81526020600482018190526024820152600080516020611883833981519152604482015290519081900360640190fd5b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b600960205281600052604060002081815481106105bf57fe5b6000918252602090912001546001600160a01b03169150829050565b60026001541415610633576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026001556402540be4008110610685576040805162461bcd60e51b81526020600482015260116024820152701512535154d51053540812539590531251607a1b604482015290519081900360640190fd5b6001600160a01b038083166000908152600a602090815260408083203380855292529091206004810154909216146106f4576040805162461bcd60e51b815260206004820152600d60248201526c0989e8696409a92a69a82a8869609b1b604482015290519081900360640190fd5b8181600301541061073c576040805162461bcd60e51b815260206004820152600d60248201526c554e4c4f434b204245464f524560981b604482015290519081900360640190fd5b600301555060018055565b600860205281600052604060002081815481106105bf57fe5b61076861139d565b6001600160a01b0316610779610856565b6001600160a01b0316146107c2576040805162461bcd60e51b81526020600482018190526024820152600080516020611883833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b039081166000908152600a602090815260408083209484168352939052919091208054600182015460028301546003840154600490940154929591949093921690565b6000546001600160a01b031690565b600b54600c5482565b60608060096000846001600160a01b03166001600160a01b031681526020019081526020016000208054806020026020016040519081016040528092919081815260200182805480156108ea57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116108cc575b5093979650505050505050565b600a60209081526000928352604080842090915290825290208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b61094261139d565b6001600160a01b0316610953610856565b6001600160a01b03161461099c576040805162461bcd60e51b81526020600482018190526024820152600080516020611883833981519152604482015290519081900360640190fd5b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b60608060086000846001600160a01b03166001600160a01b031681526020019081526020016000208054806020026020016040519081016040528092919081815260200182805480156108ea576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116108cc575093979650505050505050565b60026001541415610a9d576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026001556402540be4008210610aef576040805162461bcd60e51b81526020600482015260116024820152701512535154d51053540812539590531251607a1b604482015290519081900360640190fd5b60008311610b33576040805162461bcd60e51b815260206004820152600c60248201526b125394d551919250d251539560a21b604482015290519081900360640190fd5b610b3f843330866113a1565b600b54348114610b84576040805162461bcd60e51b815260206004820152600b60248201526a119151481393d50813515560aa1b604482015290519081900360640190fd5b600d5460405182916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610bbe573d6000803e3d6000fd5b506000610be56103e8610bdf600b60010154896114fe90919063ffffffff16565b90611560565b600e54909150610c009088906001600160a01b0316836115c7565b6000610c0c878361171b565b6040805160608b811b6001600160601b0319908116602080850191909152918a901b166034830152825180830360280181526048909201835281519181019190912060009081526006909152205490915060ff16610f5b57610c6c6117d2565b428160000181815250508181602001818152505081816040018181525050868160600181815250508581608001906001600160a01b031690816001600160a01b03168152505080600a60008b6001600160a01b03166001600160a01b031681526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000206000820151816000015560208201518160010155604082015181600201556060820151816003015560808201518160040160006101000a8154816001600160a01b0302191690836001600160a01b031602179055509050506001600660008b8960405160200180836001600160a01b031660601b8152601401826001600160a01b031660601b81526014019250505060405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548160ff02191690831515021790555060066000878b60405160200180836001600160a01b031660601b8152601401826001600160a01b031660601b81526014019250505060405160208183030381529060405280519060200120815260200190815260200160002060009054906101000a900460ff16610ee0576001600160a01b03808a166000818152600860209081526040808320805460018181018355918552838520018054968d166001600160a01b031997881681179091558452600983528184208054808301825590855283852001805490961690941790945583516001600160601b031960608c811b8216838501528f901b166034820152845160288183030181526048909101855280519082012082526006905291909120805460ff191690911790555b7f830357565da6ecfc26d8d9f69df488ed6f70361af9a07e570544aeb5c5e765e5893383602001518460000151856060015160405180866001600160a01b03168152602001856001600160a01b031681526020018481526020018381526020018281526020019550505050505060405180910390a150611077565b336001600160a01b03861614610fb0576040805162461bcd60e51b81526020600482015260156024820152742fbbb4ba34323930bbb2b91037379039b2b73232b960591b604482015290519081900360640190fd5b6001600160a01b038089166000908152600a602090815260408083209389168352929052206001810154610fe49083611778565b60018201556002810154610ff89083611778565b6002820155428155600381015487111561101457600381018790555b600181015481546003830154604080516001600160a01b038e1681523360208201528082019490945260608401929092526080830152517f830357565da6ecfc26d8d9f69df488ed6f70361af9a07e570544aeb5c5e765e59181900360a00190a1505b505060018055505050505050565b61108d61139d565b6001600160a01b031661109e610856565b6001600160a01b0316146110e7576040805162461bcd60e51b81526020600482018190526024820152600080516020611883833981519152604482015290519081900360640190fd5b6001600160a01b03811661112c5760405162461bcd60e51b815260040180806020018281038252602681526020018061180b6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600260015414156111df576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b600260015580611227576040805162461bcd60e51b815260206004820152600e60248201526d16915493c815d2551211149055d360921b604482015290519081900360640190fd5b6001600160a01b038083166000908152600a60209081526040808320338085529252909120600481015490921614611296576040805162461bcd60e51b815260206004820152600d60248201526c0989e8696409a92a69a82a8869609b1b604482015290519081900360640190fd5b428160030154106112d8576040805162461bcd60e51b81526020600482015260076024820152661393d50816515560ca1b604482015290519081900360640190fd5b60018101546112e7908361171b565b600182018190556113455760408051606085811b6001600160601b0319166020808401919091523390911b603483015282518083036028018152604890920183528151918101919091206000908152600690915220805460ff191690555b6113508333846115c7565b604080516001600160a01b03851681526020810184905281517fccad973dcd043c7d680389db4378bd6b9775db7124092e9e0422c9e46d7985dc929181900390910190a150506001805550565b3390565b604080516001600160a01b0385811660248301528481166044830152606480830185905283518084039091018152608490920183526020820180516001600160e01b03166323b872dd60e01b17815292518251600094606094938a169392918291908083835b602083106114265780518252601f199092019160209182019101611407565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611488576040519150601f19603f3d011682016040523d82523d6000602084013e61148d565b606091505b50915091508180156114bb5750805115806114bb57508080602001905160208110156114b857600080fd5b50515b6114f65760405162461bcd60e51b81526004018080602001828103825260318152602001806118316031913960400191505060405180910390fd5b505050505050565b60008261150d5750600061155a565b8282028284828161151a57fe5b04146115575760405162461bcd60e51b81526004018080602001828103825260218152602001806118626021913960400191505060405180910390fd5b90505b92915050565b60008082116115b6576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b8183816115bf57fe5b049392505050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b178152925182516000946060949389169392918291908083835b602083106116445780518252601f199092019160209182019101611625565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146116a6576040519150601f19603f3d011682016040523d82523d6000602084013e6116ab565b606091505b50915091508180156116d95750805115806116d957508080602001905160208110156116d657600080fd5b50515b6117145760405162461bcd60e51b815260040180806020018281038252602d8152602001806118a3602d913960400191505060405180910390fd5b5050505050565b600082821115611772576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082820183811015611557576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6040518060a001604052806000815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573735472616e7366657248656c7065723a3a7472616e7366657246726f6d3a207472616e7366657246726f6d206661696c6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725472616e7366657248656c7065723a3a736166655472616e736665723a207472616e73666572206661696c6564a2646970667358221220256d892ce59b82b7191abea34488bd99c6c8989c22e3d7764d611c64f7ab4d0264736f6c634300060c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000011111111686b45eb94d9688f715815fc0cc0e5ec
-----Decoded View---------------
Arg [0] : _lpaddr (address): 0x11111111686b45EB94D9688F715815fc0CC0e5Ec
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000011111111686b45eb94d9688f715815fc0cc0e5ec
Deployed Bytecode Sourcemap
16422:6354:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17998:150;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17998:150:0;;;;;;;:::i;:::-;;17890:92;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17890:92:0;-1:-1:-1;;;;;17890:92:0;;:::i;16899:47::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;16899:47:0;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;16899:47:0;;;;;;;;;;;;;;20693:484;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;20693:484:0;;;;;;;;:::i;16845:49::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;16845:49:0;;;;;;;;:::i;13242:148::-;;;;;;;;;;;;;:::i;22446:321::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;22446:321:0;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;22446:321:0;;;;;;;;;;;;;;12591:87;;;;;;;;;;;;;:::i;17226:22::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;22271:167;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;22271:167:0;-1:-1:-1;;;;;22271:167:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16951:69;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;16951:69:0;;;;;;;;;;:::i;17679:90::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17679:90:0;-1:-1:-1;;;;;17679:90:0;;:::i;22087:176::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;22087:176:0;-1:-1:-1;;;;;22087:176:0;;:::i;18457:2226::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;18457:2226:0;;;;;;;;;;;;;;;;;;;;:::i;13545:244::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13545:244:0;-1:-1:-1;;;;;13545:244:0;;:::i;21411:664::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;21411:664:0;;;;;;;;:::i;17998:150::-;12822:12;:10;:12::i;:::-;-1:-1:-1;;;;;12811:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;12811:23:0;;12803:68;;;;;-1:-1:-1;;;12803:68:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;12803:68:0;;;;;;;;;;;;;;;18079:5:::1;:22:::0;;;;18108:18;:34;17998:150::o;17890:92::-;12822:12;:10;:12::i;:::-;-1:-1:-1;;;;;12811:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;12811:23:0;;12803:68;;;;;-1:-1:-1;;;12803:68:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;12803:68:0;;;;;;;;;;;;;;;17956:8:::1;:20:::0;;-1:-1:-1;;;;;;17956:20:0::1;-1:-1:-1::0;;;;;17956:20:0;;;::::1;::::0;;;::::1;::::0;;17890:92::o;16899:47::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16899:47:0;;-1:-1:-1;16899:47:0;;-1:-1:-1;16899:47:0:o;20693:484::-;2180:1;2786:7;;:19;;2778:63;;;;;-1:-1:-1;;;2778:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;2180:1;2919:7;:18;20803:11:::1;20788:26:::0;::::1;20780:56;;;::::0;;-1:-1:-1;;;20780:56:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;20780:56:0;;;;;;;;;;;;;::::1;;-1:-1:-1::0;;;;;20930:20:0;;::::1;20901:26;20930:20:::0;;;:10:::1;:20;::::0;;;;;;;20951:10:::1;20930:32:::0;;;;;;;;20977:14:::1;::::0;::::1;::::0;20930:32;;20977:14:::1;:28;20969:54;;;::::0;;-1:-1:-1;;;20969:54:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;20969:54:0;;;;;;;;;;;;;::::1;;21096:12;21074:8;:19;;;:34;21066:60;;;::::0;;-1:-1:-1;;;21066:60:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;21066:60:0;;;;;;;;;;;;;::::1;;21135:19;;:34:::0;-1:-1:-1;2136:1:0;3098:22;;20693:484::o;16845:49::-;;;;;;;;;;;;;;;;;;13242:148;12822:12;:10;:12::i;:::-;-1:-1:-1;;;;;12811:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;12811:23:0;;12803:68;;;;;-1:-1:-1;;;12803:68:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;12803:68:0;;;;;;;;;;;;;;;13349:1:::1;13333:6:::0;;13312:40:::1;::::0;-1:-1:-1;;;;;13333:6:0;;::::1;::::0;13312:40:::1;::::0;13349:1;;13312:40:::1;13380:1;13363:19:::0;;-1:-1:-1;;;;;;13363:19:0::1;::::0;;13242:148::o;22446:321::-;-1:-1:-1;;;;;22618:20:0;;;22536:7;22618:20;;;:10;:20;;;;;;;;:27;;;;;;;;;;;;22660:18;;22680:16;;;;22698:23;;;;22723:20;;;;22745:15;;;;;22660:18;;22680:16;;22698:23;;22723:20;22745:15;;22446:321::o;12591:87::-;12637:7;12664:6;-1:-1:-1;;;;;12664:6:0;12591:87;:::o;17226:22::-;;;;;;:::o;22271:167::-;22338:16;22363:26;22392:10;:17;22403:5;-1:-1:-1;;;;;22392:17:0;-1:-1:-1;;;;;22392:17:0;;;;;;;;;;;;22363:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;22363:46:0;;;;;;;;;;;;;;;;-1:-1:-1;22363:46:0;;22271:167;-1:-1:-1;;;;;;;22271:167:0:o;16951:69::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16951:69:0;;:::o;17679:90::-;12822:12;:10;:12::i;:::-;-1:-1:-1;;;;;12811:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;12811:23:0;;12803:68;;;;;-1:-1:-1;;;12803:68:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;12803:68:0;;;;;;;;;;;;;;;17745:7:::1;:18:::0;;-1:-1:-1;;;;;;17745:18:0::1;-1:-1:-1::0;;;;;17745:18:0;;;::::1;::::0;;;::::1;::::0;;17679:90::o;22087:176::-;22158:16;22183:26;22212:12;:22;22225:8;-1:-1:-1;;;;;22212:22:0;-1:-1:-1;;;;;22212:22:0;;;;;;;;;;;;22183:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;22183:51:0;;;;;;;;;;;;;;;-1:-1:-1;22183:51:0;;22087:176;-1:-1:-1;;;;;;;22087:176:0:o;18457:2226::-;2180:1;2786:7;;:19;;2778:63;;;;;-1:-1:-1;;;2778:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;2180:1;2919:7;:18;18625:11:::1;18610:26:::0;::::1;18602:56;;;::::0;;-1:-1:-1;;;18602:56:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;18602:56:0;;;;;;;;;;;;;::::1;;18741:1;18731:7;:11;18723:36;;;::::0;;-1:-1:-1;;;18723:36:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;18723:36:0;;;;;;;;;;;;;::::1;;18770:86;18802:8;18820:10;18841:4;18848:7;18770:31;:86::i;:::-;18892:5;:12:::0;18919:9:::1;:19:::0;::::1;18911:43;;;::::0;;-1:-1:-1;;;18911:43:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;18911:43:0;;;;;;;;;;;;;::::1;;18991:7;::::0;:24:::1;::::0;18978:6;;-1:-1:-1;;;;;18991:7:0::1;::::0;:24;::::1;;;::::0;18978:6;;18961:14:::1;18991:24:::0;18961:14;18991:24;18978:6;18991:7;:24;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;19048:20;19071:41;19107:4;19071:31;19083:5;:18;;;19071:7;:11;;:31;;;;:::i;:::-;:35:::0;::::1;:41::i;:::-;19157:6;::::0;19048:64;;-1:-1:-1;19119:59:0::1;::::0;19147:8;;-1:-1:-1;;;;;19157:6:0::1;19048:64:::0;19119:27:::1;:59::i;:::-;19185:20;19208:25;:7:::0;19220:12;19208:11:::1;:25::i;:::-;19269:38;::::0;;::::1;::::0;;;-1:-1:-1;;;;;;19269:38:0;;;::::1;::::0;;::::1;::::0;;;;;;;;;;;;;;;;;;;;;;;;;;;;19259:49;;;;::::1;::::0;;;;-1:-1:-1;19247:62:0;;;:11:::1;:62:::0;;;;;19185:48;;-1:-1:-1;19247:62:0::1;;19243:1427;;19321:27;;:::i;:::-;19381:15;19359:10;:19;;:37;;;::::0;::::1;19427:12;19407:10;:17;;:32;;;::::0;::::1;19477:12;19450:10;:24;;:39;;;::::0;::::1;19524:12;19500:10;:21;;:36;;;::::0;::::1;19566:11;19547:10;:16;;:30;-1:-1:-1::0;;;;;19547:30:0::1;;;-1:-1:-1::0;;;;;19547:30:0::1;;;::::0;::::1;19670:10;19634;:20;19645:8;-1:-1:-1::0;;;;;19634:20:0::1;-1:-1:-1::0;;;;;19634:20:0::1;;;;;;;;;;;;:33;19655:11;-1:-1:-1::0;;;;;19634:33:0::1;-1:-1:-1::0;;;;;19634:33:0::1;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;19634:46:0::1;;;;;-1:-1:-1::0;;;;;19634:46:0::1;;;;;;;;;19756:4;19691:11;:62;19730:8;19739:11;19713:38;;;;;;-1:-1:-1::0;;;;;19713:38:0::1;;;;;;;;-1:-1:-1::0;;;;;19713:38:0::1;;;;;;;;;;;;;;;;;;;;;;;19703:49;;;;;;19691:62;;;;;;;;;;;;:69;;;;;;;;;;;;;;;;;;19785:11;:62;19824:11;19836:8;19807:38;;;;;;-1:-1:-1::0;;;;;19807:38:0::1;;;;;;;;-1:-1:-1::0;;;;;19807:38:0::1;;;;;;;;;;;;;;;;;;;;;;;19797:49;;;;;;19785:62;;;;;;;;;;;;;;;;;;;;;19781:265;;-1:-1:-1::0;;;;;19861:22:0;;::::1;;::::0;;;:12:::1;:22;::::0;;;;;;;:40;;::::1;::::0;;::::1;::::0;;;;;;;;::::1;::::0;;;;::::1;-1:-1:-1::0;;;;;;19861:40:0;;::::1;::::0;::::1;::::0;;;19914:23;;:10:::1;:23:::0;;;;;:38;;;;::::1;::::0;;;;;;;;::::1;::::0;;;;::::1;::::0;;::::1;::::0;;;19987;;-1:-1:-1;;;;;;19987:38:0::1;::::0;;;;;;;::::1;::::0;;;;;;;;;;;;;;;;;;;;;;;;19977:49;;;;::::1;::::0;19965:62;;:11:::1;:62:::0;;;;;;:69;;-1:-1:-1;;19965:69:0::1;::::0;;::::1;::::0;;19781:265:::1;20061:94;20071:8;20081:10;20093;:17;;;20112:10;:19;;;20133:10;:21;;;20061:94;;;;-1:-1:-1::0;;;;;20061:94:0::1;;;;;;-1:-1:-1::0;;;;;20061:94:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19243:1427;;;;20180:10;-1:-1:-1::0;;;;;20180:25:0;::::1;;20172:59;;;::::0;;-1:-1:-1;;;20172:59:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;20172:59:0;;;;;;;;;;;;;::::1;;-1:-1:-1::0;;;;;20269:20:0;;::::1;20239:27;20269:20:::0;;;:10:::1;:20;::::0;;;;;;;:33;;::::1;::::0;;;;;;20325:16:::1;::::0;::::1;::::0;:34:::1;::::0;20346:12;20325:20:::1;:34::i;:::-;20307:16;::::0;::::1;:52:::0;20389:23:::1;::::0;::::1;::::0;:41:::1;::::0;20417:12;20389:27:::1;:41::i;:::-;20364:23;::::0;::::1;:66:::0;20456:15:::1;20435:36:::0;;20494:20:::1;::::0;::::1;::::0;20479:35;::::1;20476:89;;;20524:20;::::0;::::1;:35:::0;;;20476:89:::1;20606:16;::::0;::::1;::::0;20624:18;;20644:20:::1;::::0;::::1;::::0;20574:91:::1;::::0;;-1:-1:-1;;;;;20574:91:0;::::1;::::0;;20594:10:::1;20574:91;::::0;::::1;::::0;;;;;;;;;;;;;;;;;;;;::::1;::::0;;;;;;;::::1;19243:1427;;-1:-1:-1::0;;2136:1:0;3098:22;;-1:-1:-1;;;;;;18457:2226:0:o;13545:244::-;12822:12;:10;:12::i;:::-;-1:-1:-1;;;;;12811:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;12811:23:0;;12803:68;;;;;-1:-1:-1;;;12803:68:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;12803:68:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;13634:22:0;::::1;13626:73;;;;-1:-1:-1::0;;;13626:73:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13736:6;::::0;;13715:38:::1;::::0;-1:-1:-1;;;;;13715:38:0;;::::1;::::0;13736:6;::::1;::::0;13715:38:::1;::::0;::::1;13764:6;:17:::0;;-1:-1:-1;;;;;;13764:17:0::1;-1:-1:-1::0;;;;;13764:17:0;;;::::1;::::0;;;::::1;::::0;;13545:244::o;21411:664::-;2180:1;2786:7;;:19;;2778:63;;;;;-1:-1:-1;;;2778:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;2180:1;2919:7;:18;21502:11;21494:38:::1;;;::::0;;-1:-1:-1;;;21494:38:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;21494:38:0;;;;;;;;;;;;;::::1;;-1:-1:-1::0;;;;;21568:20:0;;::::1;21539:26;21568:20:::0;;;:10:::1;:20;::::0;;;;;;;21589:10:::1;21568:32:::0;;;;;;;;21615:14:::1;::::0;::::1;::::0;21568:32;;21615:14:::1;:28;21607:54;;;::::0;;-1:-1:-1;;;21607:54:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;21607:54:0;;;;;;;;;;;;;::::1;;21734:15;21712:8;:19;;;:37;21704:57;;;::::0;;-1:-1:-1;;;21704:57:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;21704:57:0;;;;;;;;;;;;;::::1;;21786:15;::::0;::::1;::::0;:28:::1;::::0;21806:7;21786:19:::1;:28::i;:::-;21768:15;::::0;::::1;:46:::0;;;21850:108:::1;;21903:37;::::0;;::::1;::::0;;;-1:-1:-1;;;;;;21903:37:0;::::1;::::0;;::::1;::::0;;;;21929:10:::1;21903:37:::0;;::::1;::::0;;;;;;;;;;;;;;;;;;;21893:48;;;;::::1;::::0;;;;-1:-1:-1;21881:61:0;;;:11:::1;:61:::0;;;;:69;;-1:-1:-1;;21881:69:0::1;::::0;;21850:108:::1;21970:58;21998:8;22008:10;22020:7;21970:27;:58::i;:::-;22040:29;::::0;;-1:-1:-1;;;;;22040:29:0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;::::1;::::0;;;;;;;;;::::1;-1:-1:-1::0;;2136:1:0;3098:22;;-1:-1:-1;21411:664:0:o;11165:106::-;11253:10;11165:106;:::o;14914:498::-;15185:51;;;-1:-1:-1;;;;;15185:51:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15185:51:0;-1:-1:-1;;;15185:51:0;;;15174:63;;;;15139:12;;15153:17;;15174:10;;;;15185:51;15174:63;;;15185:51;15174:63;;15185:51;15174:63;;;;;;;;;;-1:-1:-1;;15174:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15138:99;;;;15270:7;:57;;;;-1:-1:-1;15282:11:0;;:16;;:44;;;15313:4;15302:24;;;;;;;;;;;;;;;-1:-1:-1;15302:24:0;15282:44;15248:156;;;;-1:-1:-1;;;15248:156:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14914:498;;;;;;:::o;6774:220::-;6832:7;6856:6;6852:20;;-1:-1:-1;6871:1:0;6864:8;;6852:20;6895:5;;;6899:1;6895;:5;:1;6919:5;;;;;:10;6911:56;;;;-1:-1:-1;;;6911:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6985:1;-1:-1:-1;6774:220:0;;;;;:::o;7472:153::-;7530:7;7562:1;7558;:5;7550:44;;;;;-1:-1:-1;;;7550:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;7616:1;7612;:5;;;;;;;7472:153;-1:-1:-1;;;7472:153:0:o;14457:449::-;14689:45;;;-1:-1:-1;;;;;14689:45:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;14689:45:0;-1:-1:-1;;;14689:45:0;;;14678:57;;;;14643:12;;14657:17;;14678:10;;;;14689:45;14678:57;;;14689:45;14678:57;;14689:45;14678:57;;;;;;;;;;-1:-1:-1;;14678:57:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14642:93;;;;14768:7;:57;;;;-1:-1:-1;14780:11:0;;:16;;:44;;;14811:4;14800:24;;;;;;;;;;;;;;;-1:-1:-1;14800:24:0;14780:44;14746:152;;;;-1:-1:-1;;;14746:152:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14457:449;;;;;:::o;6357:158::-;6415:7;6448:1;6443;:6;;6435:49;;;;;-1:-1:-1;;;6435:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6502:5:0;;;6357:158::o;5895:179::-;5953:7;5985:5;;;6009:6;;;;6001:46;;;;;-1:-1:-1;;;6001:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o
Swarm Source
ipfs://256d892ce59b82b7191abea34488bd99c6c8989c22e3d7764d611c64f7ab4d02
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
BASE | 32.14% | $3,330.58 | 6.3795 | $21,247.4 | |
SCROLL | 23.52% | $3,331.99 | 4.668 | $15,553.73 | |
ARB | 15.20% | $3,331.97 | 3.0165 | $10,050.88 | |
LINEA | 12.15% | $3,331.99 | 2.4111 | $8,033.76 | |
OP | 8.96% | $3,332.33 | 1.7775 | $5,923.22 | |
MANTLE | 6.53% | $1.02 | 4,241 | $4,315.21 | |
BLAST | 0.69% | $3,330.24 | 0.1375 | $457.91 | |
AVAX | 0.39% | $36.58 | 7.095 | $259.5 | |
ETH | 0.22% | $0.001461 | 99,000 | $144.68 | |
OPBNB | 0.19% | $683.03 | 0.18 | $122.95 | |
APE | 0.01% | $1 | 7.65 | $7.66 |
Loading...
Loading
[ Download: CSV Export ]
[ 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.