More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 339 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Withdraw | 17469937 | 674 days ago | IN | 0 ETH | 0.00183138 | ||||
Withdraw | 17401058 | 684 days ago | IN | 0 ETH | 0.00310742 | ||||
Unstake | 17399686 | 684 days ago | IN | 0 ETH | 0.00188706 | ||||
Unstake | 17311235 | 696 days ago | IN | 0 ETH | 0.0026958 | ||||
Withdraw | 17120807 | 723 days ago | IN | 0 ETH | 0.00354632 | ||||
Withdraw | 17120806 | 723 days ago | IN | 0 ETH | 0.00386871 | ||||
Unstake | 17120804 | 723 days ago | IN | 0 ETH | 0.00284525 | ||||
Unstake | 17120802 | 723 days ago | IN | 0 ETH | 0.00292655 | ||||
Withdraw | 17092959 | 727 days ago | IN | 0 ETH | 0.00428479 | ||||
Unstake | 17086789 | 728 days ago | IN | 0 ETH | 0.00422724 | ||||
Withdraw | 17053085 | 733 days ago | IN | 0 ETH | 0.00278655 | ||||
Unstake | 17053016 | 733 days ago | IN | 0 ETH | 0.00202838 | ||||
Withdraw | 17049589 | 733 days ago | IN | 0 ETH | 0.00299935 | ||||
Unstake | 17049565 | 733 days ago | IN | 0 ETH | 0.00178844 | ||||
Withdraw | 17025681 | 737 days ago | IN | 0 ETH | 0.00371133 | ||||
Unstake | 17025676 | 737 days ago | IN | 0 ETH | 0.00282884 | ||||
Withdraw | 17023094 | 737 days ago | IN | 0 ETH | 0.00248838 | ||||
Unstake | 17023091 | 737 days ago | IN | 0 ETH | 0.00161764 | ||||
Withdraw | 17022576 | 737 days ago | IN | 0 ETH | 0.00261326 | ||||
Unstake | 17022572 | 737 days ago | IN | 0 ETH | 0.00159574 | ||||
Withdraw | 17017124 | 738 days ago | IN | 0 ETH | 0.00211648 | ||||
Unstake | 17017120 | 738 days ago | IN | 0 ETH | 0.00173533 | ||||
Withdraw | 17017096 | 738 days ago | IN | 0 ETH | 0.00235255 | ||||
Unstake | 17015784 | 738 days ago | IN | 0 ETH | 0.00195103 | ||||
Unstake | 17015708 | 738 days ago | IN | 0 ETH | 0.00155615 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
CollarStake
Compiler Version
v0.8.17+commit.8df45f5f
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-10-21 */ // SPDX-License-Identifier: UNLICENSED pragma solidity ^0.8.16; interface IERC20 { function totalSupply() external view returns (uint256); function decimals() external view returns (uint8); function symbol() external view returns (string memory); function name() external view returns (string memory); function getOwner() external view returns (address); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address _owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } contract Context { constructor() {} function _msgSender() internal view returns (address ) { return msg.sender; } function _msgData() internal view returns (bytes memory) { this; return msg.data; } } contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), 'Ownable: caller is not the owner'); _; } function transferOwnership(address newOwner) public onlyOwner { _transferOwnership(newOwner); } function _transferOwnership(address newOwner) internal { require(newOwner != address(0), 'Ownable: new owner is the zero address'); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } abstract contract ReentrancyGuard { uint256 private constant _NOT_ENTERED = 1; uint256 private constant _ENTERED = 2; uint256 private _status; constructor() { _status = _NOT_ENTERED; } modifier nonReentrant() { require(_status != _ENTERED, "ReentrancyGuard: reentrant call"); _status = _ENTERED; _; _status = _NOT_ENTERED; } } contract Pausable is Context { event Paused(address account); event Unpaused(address account); bool private _paused; constructor () { _paused = false; } function paused() public view returns (bool) { return _paused; } modifier whenNotPaused() { require(!_paused, "Pausable: paused"); _; } modifier whenPaused() { require(_paused, "Pausable: not paused"); _; } function _pause() internal virtual whenNotPaused { _paused = true; emit Paused(_msgSender()); } function _unpause() internal virtual whenPaused { _paused = false; emit Unpaused(_msgSender()); } } contract CollarStake is Ownable, ReentrancyGuard, Pausable { IERC20 public CollarToken; uint256 public stakeDays = 365; uint256 public stakeLimit; uint256 public coolDownTime = 10 * 86400; uint256 public currentPool; struct UserInfo { address staker; uint256 poolID; uint256 stakeID; uint256 stakeAmount; uint256 stakeTime; uint256 unstakeTime; uint256 withdrawTime; uint256 stakingDays; uint256 APY_percentage; uint256 lastClaim; uint256 rewardEndTime; uint256 rewardAmount; bool claimed; } struct poolInfo { uint256 poolID; IERC20 stakeToken; uint256 APYpercentage; uint256 poolStakeID; uint256 totalStakedToken; bool UnActive; } struct userID{ uint256[] stakeIDs; } mapping(uint256 => mapping(uint256 => UserInfo)) internal userDetails; mapping(address => mapping(uint256 => userID)) internal userIDs; mapping(uint256 => poolInfo) internal poolDetails; event emergencySafe(address indexed receiver, address tokenAddressss, uint256 TokenAmount); event CreatePool(address indexed creator,uint256 poolID, address stakeToken,uint256 APYPercentage); event stakeing(address indexed staker, uint256 stakeID, uint256 stakeAmount, uint256 stakeTime); event unstakeing(address indexed staker, uint256 stakeID, uint256 stakeAmount, uint256 UnstakeTime); event setAPYPercentage(address indexed owner,uint256 poolID, uint256 newPercentage); event withdrawTokens(address indexed staker, uint256 withdrawToken, uint256 withdrawTime); event RewardClaimed(address indexed staker,uint256 stakeID, uint256 rewardAmount, uint256 claimTime); event adminDeposits(address indexed owner, uint256 RewardDepositamount); event UpdatePoolStatus(address indexed owner,uint256 poolID,bool status); constructor ( uint256 _maxTokenStake, address _CollarAddress) { stakeLimit = _maxTokenStake; CollarToken = IERC20(_CollarAddress); } function viewUserDetails(uint256 _poolID, uint256 _stakeID) external view returns(UserInfo memory){ return userDetails[_poolID][_stakeID]; } function veiwPools(uint256 _poolID) external view returns(poolInfo memory){ return poolDetails[_poolID]; } function userStakeIDs(address _account, uint256 _poolID) external view returns(uint256[] memory stakeIDs){ return userIDs[_account][_poolID].stakeIDs; } function updateMaxTokenStake(uint256 _maxTokenStake) external onlyOwner { stakeLimit = _maxTokenStake; } function pause() external onlyOwner { _pause(); } function unPause() external onlyOwner { _unpause(); } function updatePoolAPYpercentage(uint256 _poolID, uint256 _APYpercentage) external onlyOwner { poolInfo storage pool = poolDetails[_poolID]; pool.APYpercentage = _APYpercentage; emit setAPYPercentage(msg.sender, _poolID, _APYpercentage); } function updateCoolDownTime(uint256 _coolDownTime ) external onlyOwner { coolDownTime = _coolDownTime; } function updateCollarToken(address _CollarToken) external onlyOwner { require(_CollarToken != address(0x0),"Collar is not a zero address"); CollarToken = IERC20(_CollarToken); } function poolCreation(address _stakeToken, uint256 _APYPercentage) external onlyOwner { currentPool++; poolInfo storage pool = poolDetails[currentPool]; pool.stakeToken = IERC20(_stakeToken); pool.APYpercentage = _APYPercentage; pool.poolID = currentPool; emit CreatePool(msg.sender, currentPool, _stakeToken, _APYPercentage); } function poolStatus(uint256 poolID, bool status) external onlyOwner { poolInfo storage pool = poolDetails[poolID]; require(pool.poolID > 0,"Pool Not found"); pool.UnActive = status; emit UpdatePoolStatus(msg.sender, poolID, status); } function stake(uint256 _poolID,uint256 _tokenAmount, uint256 _stakeDays) external nonReentrant whenNotPaused { require( _tokenAmount > 0 && _tokenAmount < stakeLimit,"incorrect token amount"); poolInfo storage pool = poolDetails[_poolID]; require(!pool.UnActive,"pool is not active"); pool.poolStakeID++; UserInfo storage user = userDetails[_poolID][pool.poolStakeID]; user.staker = msg.sender; user.stakeID = pool.poolStakeID; user.poolID = _poolID; user.stakeAmount = _tokenAmount; user.stakeTime = block.timestamp; user.lastClaim = block.timestamp; user.rewardEndTime = (block.timestamp + (_stakeDays * (86400))); user.APY_percentage = pool.APYpercentage; user.stakingDays = _stakeDays; pool.totalStakedToken = pool.totalStakedToken + (_tokenAmount); userIDs[msg.sender][_poolID].stakeIDs.push(pool.poolStakeID); (pool.stakeToken).transferFrom(msg.sender, address(this), _tokenAmount); emit stakeing(msg.sender, pool.poolStakeID, _tokenAmount, block.timestamp); } function unstake(uint256 _poolID,uint256 _stakeID) external nonReentrant whenNotPaused { UserInfo storage user = userDetails[_poolID][_stakeID]; require(user.stakeTime > 0 , "Invalid stake ID"); require(user.rewardEndTime <= block.timestamp,""); require(user.unstakeTime == 0, "user already claim this ID"); require(user.staker == msg.sender," invalid user ID"); claimReward( _poolID,_stakeID); user.unstakeTime = block.timestamp; emit unstakeing(msg.sender, _stakeID, user.stakeAmount, block.timestamp); } function withdraw(uint256 _poolID,uint256 _stakeID) external whenNotPaused { UserInfo storage user = userDetails[_poolID][_stakeID]; poolInfo storage pool = poolDetails[_poolID]; require(user.staker == msg.sender," invalid user ID"); require(user.unstakeTime != 0,"User not unstake the tokens"); require(user.unstakeTime + (coolDownTime) < block.timestamp, "Withdraw time not reached" ); require(user.withdrawTime == 0, "This ID already withdrawed"); user.withdrawTime = block.timestamp; user.claimed = true; pool.totalStakedToken = pool.totalStakedToken - (user.stakeAmount); (pool.stakeToken).transfer(msg.sender, user.stakeAmount); emit withdrawTokens(msg.sender, user.stakeAmount, user.withdrawTime); } function claimReward(uint256 _poolID,uint256 _stakeID) public whenNotPaused { UserInfo storage user = userDetails[_poolID][_stakeID]; require(user.staker == msg.sender," invalid user ID"); uint256 rewardAmount = pendingReward(_poolID,_stakeID); if(block.timestamp > user.rewardEndTime){ user.lastClaim = user.rewardEndTime; } else{ user.lastClaim = block.timestamp; } user.rewardAmount += rewardAmount; CollarToken.transfer(msg.sender, rewardAmount); emit RewardClaimed(msg.sender,_stakeID, rewardAmount, user.lastClaim); } function pendingReward(uint256 _poolID, uint256 _stakeID) public view returns(uint256 Reward) { UserInfo storage user = userDetails[_poolID][_stakeID]; require(user.unstakeTime == 0, "ID unstaked"); uint256[3] memory localVar; if(user.lastClaim < user.rewardEndTime){ localVar[2] = block.timestamp; if(block.timestamp > user.rewardEndTime){ localVar[2] = user.rewardEndTime; } localVar[0] = (localVar[2]) - (user.lastClaim); localVar[1] = (user.APY_percentage) * (1e16) / (stakeDays); Reward = user.stakeAmount * (localVar[0]) * (localVar[1]) / (100) / (1e16) / (86400); } else { Reward = 0; } } function adminDeposit(uint256 _tokenAmount) external onlyOwner { CollarToken.transferFrom(msg.sender, address(this), _tokenAmount); emit adminDeposits(msg.sender, _tokenAmount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"uint256","name":"_maxTokenStake","type":"uint256"},{"internalType":"address","name":"_CollarAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"creator","type":"address"},{"indexed":false,"internalType":"uint256","name":"poolID","type":"uint256"},{"indexed":false,"internalType":"address","name":"stakeToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"APYPercentage","type":"uint256"}],"name":"CreatePool","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"staker","type":"address"},{"indexed":false,"internalType":"uint256","name":"stakeID","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"rewardAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"claimTime","type":"uint256"}],"name":"RewardClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"poolID","type":"uint256"},{"indexed":false,"internalType":"bool","name":"status","type":"bool"}],"name":"UpdatePoolStatus","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"RewardDepositamount","type":"uint256"}],"name":"adminDeposits","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"address","name":"tokenAddressss","type":"address"},{"indexed":false,"internalType":"uint256","name":"TokenAmount","type":"uint256"}],"name":"emergencySafe","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"poolID","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newPercentage","type":"uint256"}],"name":"setAPYPercentage","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"staker","type":"address"},{"indexed":false,"internalType":"uint256","name":"stakeID","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"stakeAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"stakeTime","type":"uint256"}],"name":"stakeing","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"staker","type":"address"},{"indexed":false,"internalType":"uint256","name":"stakeID","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"stakeAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"UnstakeTime","type":"uint256"}],"name":"unstakeing","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"staker","type":"address"},{"indexed":false,"internalType":"uint256","name":"withdrawToken","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"withdrawTime","type":"uint256"}],"name":"withdrawTokens","type":"event"},{"inputs":[],"name":"CollarToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tokenAmount","type":"uint256"}],"name":"adminDeposit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_poolID","type":"uint256"},{"internalType":"uint256","name":"_stakeID","type":"uint256"}],"name":"claimReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"coolDownTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currentPool","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_poolID","type":"uint256"},{"internalType":"uint256","name":"_stakeID","type":"uint256"}],"name":"pendingReward","outputs":[{"internalType":"uint256","name":"Reward","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_stakeToken","type":"address"},{"internalType":"uint256","name":"_APYPercentage","type":"uint256"}],"name":"poolCreation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"poolID","type":"uint256"},{"internalType":"bool","name":"status","type":"bool"}],"name":"poolStatus","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_poolID","type":"uint256"},{"internalType":"uint256","name":"_tokenAmount","type":"uint256"},{"internalType":"uint256","name":"_stakeDays","type":"uint256"}],"name":"stake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stakeDays","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"stakeLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unPause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_poolID","type":"uint256"},{"internalType":"uint256","name":"_stakeID","type":"uint256"}],"name":"unstake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_CollarToken","type":"address"}],"name":"updateCollarToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_coolDownTime","type":"uint256"}],"name":"updateCoolDownTime","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxTokenStake","type":"uint256"}],"name":"updateMaxTokenStake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_poolID","type":"uint256"},{"internalType":"uint256","name":"_APYpercentage","type":"uint256"}],"name":"updatePoolAPYpercentage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"},{"internalType":"uint256","name":"_poolID","type":"uint256"}],"name":"userStakeIDs","outputs":[{"internalType":"uint256[]","name":"stakeIDs","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_poolID","type":"uint256"}],"name":"veiwPools","outputs":[{"components":[{"internalType":"uint256","name":"poolID","type":"uint256"},{"internalType":"contract IERC20","name":"stakeToken","type":"address"},{"internalType":"uint256","name":"APYpercentage","type":"uint256"},{"internalType":"uint256","name":"poolStakeID","type":"uint256"},{"internalType":"uint256","name":"totalStakedToken","type":"uint256"},{"internalType":"bool","name":"UnActive","type":"bool"}],"internalType":"struct CollarStake.poolInfo","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_poolID","type":"uint256"},{"internalType":"uint256","name":"_stakeID","type":"uint256"}],"name":"viewUserDetails","outputs":[{"components":[{"internalType":"address","name":"staker","type":"address"},{"internalType":"uint256","name":"poolID","type":"uint256"},{"internalType":"uint256","name":"stakeID","type":"uint256"},{"internalType":"uint256","name":"stakeAmount","type":"uint256"},{"internalType":"uint256","name":"stakeTime","type":"uint256"},{"internalType":"uint256","name":"unstakeTime","type":"uint256"},{"internalType":"uint256","name":"withdrawTime","type":"uint256"},{"internalType":"uint256","name":"stakingDays","type":"uint256"},{"internalType":"uint256","name":"APY_percentage","type":"uint256"},{"internalType":"uint256","name":"lastClaim","type":"uint256"},{"internalType":"uint256","name":"rewardEndTime","type":"uint256"},{"internalType":"uint256","name":"rewardAmount","type":"uint256"},{"internalType":"bool","name":"claimed","type":"bool"}],"internalType":"struct CollarStake.UserInfo","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_poolID","type":"uint256"},{"internalType":"uint256","name":"_stakeID","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405261016d600355620d2f0060055534801561001d57600080fd5b50604051611a81380380611a8183398101604081905261003c916100b1565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060018055600280546004939093556001600160a01b03909116610100026001600160a81b03199092169190911790556100ee565b600080604083850312156100c457600080fd5b825160208401519092506001600160a01b03811681146100e357600080fd5b809150509250929050565b611984806100fd6000396000f3fe608060405234801561001057600080fd5b50600436106101735760003560e01c80638456cb59116100de578063a638f2e211610097578063da98b54211610071578063da98b54214610373578063e36cf9c714610386578063f2fde38b14610399578063f7b188a5146103ac57600080fd5b8063a638f2e214610344578063aa21a54314610357578063d2ce0db21461036a57600080fd5b80638456cb59146102dc57806386bb8f37146102e45780638da5cb5b146102f75780639902d7bd146103085780639e2c8a5b14610311578063a2cbdf811461032457600080fd5b806345ef79af1161013057806345ef79af1461021c5780635c975abb1461022557806367aa8b951461023b578063692b69ae1461024e5780637693e479146102575780637930b3ca1461027757600080fd5b8063042ccb8214610178578063086877941461018d5780631879d5aa146101a05780631f95819a146101b35780633185c0bd146101e8578063441a3e7014610209575b600080fd5b61018b61018636600461162d565b6103b4565b005b61018b61019b36600461162d565b6103ec565b61018b6101ae36600461162d565b6104ce565b6002546101cb9061010090046001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6101fb6101f6366004611646565b6104fd565b6040519081526020016101df565b61018b610217366004611646565b61062c565b6101fb60045481565b60025460ff1660405190151581526020016101df565b61018b610249366004611676565b6108a0565b6101fb60065481565b61026a6102653660046116c2565b61096c565b6040516101df91906116ec565b61028a61028536600461162d565b6109e2565b6040516101df9190815181526020808301516001600160a01b03169082015260408083015190820152606080830151908201526080808301519082015260a09182015115159181019190915260c00190565b61018b610a8d565b61018b6102f2366004611646565b610ac1565b6000546001600160a01b03166101cb565b6101fb60035481565b61018b61031f366004611646565b610c2f565b610337610332366004611646565b610e13565b6040516101df9190611730565b61018b6103523660046117cc565b610f41565b61018b6103653660046117f8565b611218565b6101fb60055481565b61018b6103813660046116c2565b6112c0565b61018b610394366004611646565b61137f565b61018b6103a73660046117f8565b6113f8565b61018b61142e565b6000546001600160a01b031633146103e75760405162461bcd60e51b81526004016103de9061181a565b60405180910390fd5b600455565b6000546001600160a01b031633146104165760405162461bcd60e51b81526004016103de9061181a565b6002546040516323b872dd60e01b8152336004820152306024820152604481018390526101009091046001600160a01b0316906323b872dd906064016020604051808303816000875af1158015610471573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610495919061184f565b5060405181815233907fca0fce8fec7e0fe5ae14829b105a07688abef2f30c4be5663eb131471b01758b9060200160405180910390a250565b6000546001600160a01b031633146104f85760405162461bcd60e51b81526004016103de9061181a565b600555565b600082815260076020908152604080832084845290915281206005810154156105565760405162461bcd60e51b815260206004820152600b60248201526a1251081d5b9cdd185ad95960aa1b60448201526064016103de565b61055e61160f565b81600a01548260090154101561061f57428160026020020152600a82015442111561058e57600a82015460408201525b600982015460408201516105a29190611882565b815260035460088301546105bd90662386f26fc10000611895565b6105c791906118ac565b60208201819052815160038401546201518092662386f26fc10000926064926105f09190611895565b6105fa9190611895565b61060491906118ac565b61060e91906118ac565b61061891906118ac565b9250610624565b600092505b505092915050565b60025460ff161561064f5760405162461bcd60e51b81526004016103de906118ce565b60008281526007602090815260408083208484528252808320858452600990925290912081546001600160a01b0316331461069c5760405162461bcd60e51b81526004016103de906118f8565b81600501546000036106f05760405162461bcd60e51b815260206004820152601b60248201527f55736572206e6f7420756e7374616b652074686520746f6b656e73000000000060448201526064016103de565b4260055483600501546107039190611922565b106107505760405162461bcd60e51b815260206004820152601960248201527f57697468647261772074696d65206e6f7420726561636865640000000000000060448201526064016103de565b6006820154156107a25760405162461bcd60e51b815260206004820152601a60248201527f5468697320494420616c7265616479207769746864726177656400000000000060448201526064016103de565b426006830155600c8201805460ff19166001179055600382015460048201546107cb9190611882565b6004828101919091556001820154600384015460405163a9059cbb60e01b8152339381019390935260248301526001600160a01b03169063a9059cbb906044016020604051808303816000875af115801561082a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061084e919061184f565b506003820154600683015460405133927f4c1d1fdebe46d255ef3bfcbd19dbe80241f155dfb8de9fdacc068866c96f64649261089292918252602082015260400190565b60405180910390a250505050565b6000546001600160a01b031633146108ca5760405162461bcd60e51b81526004016103de9061181a565b600082815260096020526040902080546109175760405162461bcd60e51b815260206004820152600e60248201526d141bdbdb08139bdd08199bdd5b9960921b60448201526064016103de565b60058101805460ff191683151590811790915560408051858152602081019290925233917f5e4a3ec3e741ff104a7847b3a874e7d043517cc216fbd1bd944604c3567ffd7a91015b60405180910390a2505050565b6001600160a01b03821660009081526008602090815260408083208484528252918290208054835181840281018401909452808452606093928301828280156109d457602002820191906000526020600020905b8154815260200190600101908083116109c0575b505050505090505b92915050565b610a266040518060c001604052806000815260200160006001600160a01b031681526020016000815260200160008152602001600081526020016000151581525090565b50600090815260096020908152604091829020825160c0810184528154815260018201546001600160a01b031692810192909252600281015492820192909252600382015460608201526004820154608082015260059091015460ff16151560a082015290565b6000546001600160a01b03163314610ab75760405162461bcd60e51b81526004016103de9061181a565b610abf611460565b565b60025460ff1615610ae45760405162461bcd60e51b81526004016103de906118ce565b6000828152600760209081526040808320848452909152902080546001600160a01b03163314610b265760405162461bcd60e51b81526004016103de906118f8565b6000610b3284846104fd565b905081600a0154421115610b4f57600a8201546009830155610b56565b4260098301555b8082600b016000828254610b6a9190611922565b909155505060025460405163a9059cbb60e01b8152336004820152602481018390526101009091046001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610bc4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be8919061184f565b50600982015460408051858152602081018490529081019190915233907f812be816db82c66cd18ca8457005cd84689642d8ac4d38599cc6af444a2dc72a90606001610892565b600260015403610c815760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016103de565b600260018190555460ff1615610ca95760405162461bcd60e51b81526004016103de906118ce565b600082815260076020908152604080832084845290915290206004810154610d065760405162461bcd60e51b815260206004820152601060248201526f125b9d985b1a59081cdd185ad948125160821b60448201526064016103de565b4281600a01541115610d345760405162461bcd60e51b815260206004820152600060248201526044016103de565b600581015415610d865760405162461bcd60e51b815260206004820152601a60248201527f7573657220616c726561647920636c61696d207468697320494400000000000060448201526064016103de565b80546001600160a01b03163314610daf5760405162461bcd60e51b81526004016103de906118f8565b610db98383610ac1565b4260058201819055600382015460408051858152602081019290925281019190915233907f2e38d96499ef6255dfc32e83e3a35290125aa298dc293e96634690fc3e32bc8f9060600160405180910390a250506001805550565b610e89604051806101a0016040528060006001600160a01b0316815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000151581525090565b5060009182526007602081815260408085209385529281529282902082516101a08101845281546001600160a01b031681526001820154948101949094526002810154928401929092526003820154606084015260048201546080840152600582015460a0840152600682015460c084015281015460e083015260088101546101008301526009810154610120830152600a810154610140830152600b810154610160830152600c015460ff16151561018082015290565b600260015403610f935760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016103de565b600260018190555460ff1615610fbb5760405162461bcd60e51b81526004016103de906118ce565b600082118015610fcc575060045482105b6110115760405162461bcd60e51b81526020600482015260166024820152751a5b98dbdc9c9958dd081d1bdad95b88185b5bdd5b9d60521b60448201526064016103de565b6000838152600960205260409020600581015460ff16156110695760405162461bcd60e51b8152602060048201526012602482015271706f6f6c206973206e6f742061637469766560701b60448201526064016103de565b60038101805490600061107b83611935565b9091555050600084815260076020908152604080832060038086018054865291909352922080546001600160a01b0319163317815591546002830155600182018690558101849055426004820181905560098201556110dd8362015180611895565b6110e79042611922565b600a8201556002820154600882015560078101839055600482015461110d908590611922565b6004838101919091553360008181526008602090815260408083208a845282528083206003880154815460018082018455928652939094209092019290925585015490516323b872dd60e01b815292830191909152306024830152604482018690526001600160a01b0316906323b872dd906064016020604051808303816000875af11580156111a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c5919061184f565b5060038201546040805191825260208201869052429082015233907f7e0bbb001c489e06bafe1cd05aa13423a1ba2df2176528366777299a91417f1c9060600160405180910390a2505060018055505050565b6000546001600160a01b031633146112425760405162461bcd60e51b81526004016103de9061181a565b6001600160a01b0381166112985760405162461bcd60e51b815260206004820152601c60248201527f436f6c6c6172206973206e6f742061207a65726f20616464726573730000000060448201526064016103de565b600280546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6000546001600160a01b031633146112ea5760405162461bcd60e51b81526004016103de9061181a565b600680549060006112fa83611935565b9091555050600680546000908152600960209081526040918290206001810180546001600160a01b0319166001600160a01b03881690811790915560028201869055935480825583519081529182019390935290810183905233907fb309b1df4a2dca378ea4c78b8bd65b336b9a2984718dcf7573827734ff7711329060600161095f565b6000546001600160a01b031633146113a95760405162461bcd60e51b81526004016103de9061181a565b6000828152600960209081526040918290206002810184905582518581529182018490529133917f2a5a44de32bf68dba00586f4e66a9002d8132de942fbb217478c4e4b322d44b7910161095f565b6000546001600160a01b031633146114225760405162461bcd60e51b81526004016103de9061181a565b61142b816114d5565b50565b6000546001600160a01b031633146114585760405162461bcd60e51b81526004016103de9061181a565b610abf611595565b60025460ff16156114835760405162461bcd60e51b81526004016103de906118ce565b6002805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586114b83390565b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b03811661153a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103de565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b60025460ff166115de5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016103de565b6002805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336114b8565b60405180606001604052806003906020820280368337509192915050565b60006020828403121561163f57600080fd5b5035919050565b6000806040838503121561165957600080fd5b50508035926020909101359150565b801515811461142b57600080fd5b6000806040838503121561168957600080fd5b82359150602083013561169b81611668565b809150509250929050565b80356001600160a01b03811681146116bd57600080fd5b919050565b600080604083850312156116d557600080fd5b6116de836116a6565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b8181101561172457835183529284019291840191600101611708565b50909695505050505050565b81516001600160a01b031681526101a081016020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e0830152610100808401518184015250610120808401518184015250610140808401518184015250610160808401518184015250610180808401516106248285018215159052565b6000806000606084860312156117e157600080fd5b505081359360208301359350604090920135919050565b60006020828403121561180a57600080fd5b611813826116a6565b9392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561186157600080fd5b815161181381611668565b634e487b7160e01b600052601160045260246000fd5b818103818111156109dc576109dc61186c565b80820281158282048414176109dc576109dc61186c565b6000826118c957634e487b7160e01b600052601260045260246000fd5b500490565b60208082526010908201526f14185d5cd8589b194e881c185d5cd95960821b604082015260600190565b60208082526010908201526f081a5b9d985b1a59081d5cd95c88125160821b604082015260600190565b808201808211156109dc576109dc61186c565b6000600182016119475761194761186c565b506001019056fea264697066735822122048b93f9cd2858cdee78a03416829bfb412bf8220ea422a3f8e5b11cd6229688764736f6c6343000811003300000000000000000000000000000000000000000000003635c9adc5dea000000000000000000000000000009783b81438c24848f85848f8df31845097341771
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101735760003560e01c80638456cb59116100de578063a638f2e211610097578063da98b54211610071578063da98b54214610373578063e36cf9c714610386578063f2fde38b14610399578063f7b188a5146103ac57600080fd5b8063a638f2e214610344578063aa21a54314610357578063d2ce0db21461036a57600080fd5b80638456cb59146102dc57806386bb8f37146102e45780638da5cb5b146102f75780639902d7bd146103085780639e2c8a5b14610311578063a2cbdf811461032457600080fd5b806345ef79af1161013057806345ef79af1461021c5780635c975abb1461022557806367aa8b951461023b578063692b69ae1461024e5780637693e479146102575780637930b3ca1461027757600080fd5b8063042ccb8214610178578063086877941461018d5780631879d5aa146101a05780631f95819a146101b35780633185c0bd146101e8578063441a3e7014610209575b600080fd5b61018b61018636600461162d565b6103b4565b005b61018b61019b36600461162d565b6103ec565b61018b6101ae36600461162d565b6104ce565b6002546101cb9061010090046001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6101fb6101f6366004611646565b6104fd565b6040519081526020016101df565b61018b610217366004611646565b61062c565b6101fb60045481565b60025460ff1660405190151581526020016101df565b61018b610249366004611676565b6108a0565b6101fb60065481565b61026a6102653660046116c2565b61096c565b6040516101df91906116ec565b61028a61028536600461162d565b6109e2565b6040516101df9190815181526020808301516001600160a01b03169082015260408083015190820152606080830151908201526080808301519082015260a09182015115159181019190915260c00190565b61018b610a8d565b61018b6102f2366004611646565b610ac1565b6000546001600160a01b03166101cb565b6101fb60035481565b61018b61031f366004611646565b610c2f565b610337610332366004611646565b610e13565b6040516101df9190611730565b61018b6103523660046117cc565b610f41565b61018b6103653660046117f8565b611218565b6101fb60055481565b61018b6103813660046116c2565b6112c0565b61018b610394366004611646565b61137f565b61018b6103a73660046117f8565b6113f8565b61018b61142e565b6000546001600160a01b031633146103e75760405162461bcd60e51b81526004016103de9061181a565b60405180910390fd5b600455565b6000546001600160a01b031633146104165760405162461bcd60e51b81526004016103de9061181a565b6002546040516323b872dd60e01b8152336004820152306024820152604481018390526101009091046001600160a01b0316906323b872dd906064016020604051808303816000875af1158015610471573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610495919061184f565b5060405181815233907fca0fce8fec7e0fe5ae14829b105a07688abef2f30c4be5663eb131471b01758b9060200160405180910390a250565b6000546001600160a01b031633146104f85760405162461bcd60e51b81526004016103de9061181a565b600555565b600082815260076020908152604080832084845290915281206005810154156105565760405162461bcd60e51b815260206004820152600b60248201526a1251081d5b9cdd185ad95960aa1b60448201526064016103de565b61055e61160f565b81600a01548260090154101561061f57428160026020020152600a82015442111561058e57600a82015460408201525b600982015460408201516105a29190611882565b815260035460088301546105bd90662386f26fc10000611895565b6105c791906118ac565b60208201819052815160038401546201518092662386f26fc10000926064926105f09190611895565b6105fa9190611895565b61060491906118ac565b61060e91906118ac565b61061891906118ac565b9250610624565b600092505b505092915050565b60025460ff161561064f5760405162461bcd60e51b81526004016103de906118ce565b60008281526007602090815260408083208484528252808320858452600990925290912081546001600160a01b0316331461069c5760405162461bcd60e51b81526004016103de906118f8565b81600501546000036106f05760405162461bcd60e51b815260206004820152601b60248201527f55736572206e6f7420756e7374616b652074686520746f6b656e73000000000060448201526064016103de565b4260055483600501546107039190611922565b106107505760405162461bcd60e51b815260206004820152601960248201527f57697468647261772074696d65206e6f7420726561636865640000000000000060448201526064016103de565b6006820154156107a25760405162461bcd60e51b815260206004820152601a60248201527f5468697320494420616c7265616479207769746864726177656400000000000060448201526064016103de565b426006830155600c8201805460ff19166001179055600382015460048201546107cb9190611882565b6004828101919091556001820154600384015460405163a9059cbb60e01b8152339381019390935260248301526001600160a01b03169063a9059cbb906044016020604051808303816000875af115801561082a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061084e919061184f565b506003820154600683015460405133927f4c1d1fdebe46d255ef3bfcbd19dbe80241f155dfb8de9fdacc068866c96f64649261089292918252602082015260400190565b60405180910390a250505050565b6000546001600160a01b031633146108ca5760405162461bcd60e51b81526004016103de9061181a565b600082815260096020526040902080546109175760405162461bcd60e51b815260206004820152600e60248201526d141bdbdb08139bdd08199bdd5b9960921b60448201526064016103de565b60058101805460ff191683151590811790915560408051858152602081019290925233917f5e4a3ec3e741ff104a7847b3a874e7d043517cc216fbd1bd944604c3567ffd7a91015b60405180910390a2505050565b6001600160a01b03821660009081526008602090815260408083208484528252918290208054835181840281018401909452808452606093928301828280156109d457602002820191906000526020600020905b8154815260200190600101908083116109c0575b505050505090505b92915050565b610a266040518060c001604052806000815260200160006001600160a01b031681526020016000815260200160008152602001600081526020016000151581525090565b50600090815260096020908152604091829020825160c0810184528154815260018201546001600160a01b031692810192909252600281015492820192909252600382015460608201526004820154608082015260059091015460ff16151560a082015290565b6000546001600160a01b03163314610ab75760405162461bcd60e51b81526004016103de9061181a565b610abf611460565b565b60025460ff1615610ae45760405162461bcd60e51b81526004016103de906118ce565b6000828152600760209081526040808320848452909152902080546001600160a01b03163314610b265760405162461bcd60e51b81526004016103de906118f8565b6000610b3284846104fd565b905081600a0154421115610b4f57600a8201546009830155610b56565b4260098301555b8082600b016000828254610b6a9190611922565b909155505060025460405163a9059cbb60e01b8152336004820152602481018390526101009091046001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610bc4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be8919061184f565b50600982015460408051858152602081018490529081019190915233907f812be816db82c66cd18ca8457005cd84689642d8ac4d38599cc6af444a2dc72a90606001610892565b600260015403610c815760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016103de565b600260018190555460ff1615610ca95760405162461bcd60e51b81526004016103de906118ce565b600082815260076020908152604080832084845290915290206004810154610d065760405162461bcd60e51b815260206004820152601060248201526f125b9d985b1a59081cdd185ad948125160821b60448201526064016103de565b4281600a01541115610d345760405162461bcd60e51b815260206004820152600060248201526044016103de565b600581015415610d865760405162461bcd60e51b815260206004820152601a60248201527f7573657220616c726561647920636c61696d207468697320494400000000000060448201526064016103de565b80546001600160a01b03163314610daf5760405162461bcd60e51b81526004016103de906118f8565b610db98383610ac1565b4260058201819055600382015460408051858152602081019290925281019190915233907f2e38d96499ef6255dfc32e83e3a35290125aa298dc293e96634690fc3e32bc8f9060600160405180910390a250506001805550565b610e89604051806101a0016040528060006001600160a01b0316815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000151581525090565b5060009182526007602081815260408085209385529281529282902082516101a08101845281546001600160a01b031681526001820154948101949094526002810154928401929092526003820154606084015260048201546080840152600582015460a0840152600682015460c084015281015460e083015260088101546101008301526009810154610120830152600a810154610140830152600b810154610160830152600c015460ff16151561018082015290565b600260015403610f935760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016103de565b600260018190555460ff1615610fbb5760405162461bcd60e51b81526004016103de906118ce565b600082118015610fcc575060045482105b6110115760405162461bcd60e51b81526020600482015260166024820152751a5b98dbdc9c9958dd081d1bdad95b88185b5bdd5b9d60521b60448201526064016103de565b6000838152600960205260409020600581015460ff16156110695760405162461bcd60e51b8152602060048201526012602482015271706f6f6c206973206e6f742061637469766560701b60448201526064016103de565b60038101805490600061107b83611935565b9091555050600084815260076020908152604080832060038086018054865291909352922080546001600160a01b0319163317815591546002830155600182018690558101849055426004820181905560098201556110dd8362015180611895565b6110e79042611922565b600a8201556002820154600882015560078101839055600482015461110d908590611922565b6004838101919091553360008181526008602090815260408083208a845282528083206003880154815460018082018455928652939094209092019290925585015490516323b872dd60e01b815292830191909152306024830152604482018690526001600160a01b0316906323b872dd906064016020604051808303816000875af11580156111a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c5919061184f565b5060038201546040805191825260208201869052429082015233907f7e0bbb001c489e06bafe1cd05aa13423a1ba2df2176528366777299a91417f1c9060600160405180910390a2505060018055505050565b6000546001600160a01b031633146112425760405162461bcd60e51b81526004016103de9061181a565b6001600160a01b0381166112985760405162461bcd60e51b815260206004820152601c60248201527f436f6c6c6172206973206e6f742061207a65726f20616464726573730000000060448201526064016103de565b600280546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6000546001600160a01b031633146112ea5760405162461bcd60e51b81526004016103de9061181a565b600680549060006112fa83611935565b9091555050600680546000908152600960209081526040918290206001810180546001600160a01b0319166001600160a01b03881690811790915560028201869055935480825583519081529182019390935290810183905233907fb309b1df4a2dca378ea4c78b8bd65b336b9a2984718dcf7573827734ff7711329060600161095f565b6000546001600160a01b031633146113a95760405162461bcd60e51b81526004016103de9061181a565b6000828152600960209081526040918290206002810184905582518581529182018490529133917f2a5a44de32bf68dba00586f4e66a9002d8132de942fbb217478c4e4b322d44b7910161095f565b6000546001600160a01b031633146114225760405162461bcd60e51b81526004016103de9061181a565b61142b816114d5565b50565b6000546001600160a01b031633146114585760405162461bcd60e51b81526004016103de9061181a565b610abf611595565b60025460ff16156114835760405162461bcd60e51b81526004016103de906118ce565b6002805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586114b83390565b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b03811661153a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103de565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b60025460ff166115de5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016103de565b6002805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa336114b8565b60405180606001604052806003906020820280368337509192915050565b60006020828403121561163f57600080fd5b5035919050565b6000806040838503121561165957600080fd5b50508035926020909101359150565b801515811461142b57600080fd5b6000806040838503121561168957600080fd5b82359150602083013561169b81611668565b809150509250929050565b80356001600160a01b03811681146116bd57600080fd5b919050565b600080604083850312156116d557600080fd5b6116de836116a6565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b8181101561172457835183529284019291840191600101611708565b50909695505050505050565b81516001600160a01b031681526101a081016020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e0830152610100808401518184015250610120808401518184015250610140808401518184015250610160808401518184015250610180808401516106248285018215159052565b6000806000606084860312156117e157600080fd5b505081359360208301359350604090920135919050565b60006020828403121561180a57600080fd5b611813826116a6565b9392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561186157600080fd5b815161181381611668565b634e487b7160e01b600052601160045260246000fd5b818103818111156109dc576109dc61186c565b80820281158282048414176109dc576109dc61186c565b6000826118c957634e487b7160e01b600052601260045260246000fd5b500490565b60208082526010908201526f14185d5cd8589b194e881c185d5cd95960821b604082015260600190565b60208082526010908201526f081a5b9d985b1a59081d5cd95c88125160821b604082015260600190565b808201808211156109dc576109dc61186c565b6000600182016119475761194761186c565b506001019056fea264697066735822122048b93f9cd2858cdee78a03416829bfb412bf8220ea422a3f8e5b11cd6229688764736f6c63430008110033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000000000000000000000000003635c9adc5dea000000000000000000000000000009783b81438c24848f85848f8df31845097341771
-----Decoded View---------------
Arg [0] : _maxTokenStake (uint256): 1000000000000000000000
Arg [1] : _CollarAddress (address): 0x9783B81438C24848f85848f8df31845097341771
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000003635c9adc5dea00000
Arg [1] : 0000000000000000000000009783b81438c24848f85848f8df31845097341771
Deployed Bytecode Sourcemap
3333:8360:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5949:119;;;;;;:::i;:::-;;:::i;:::-;;11486:204;;;;;;:::i;:::-;;:::i;6504:119::-;;;;;;:::i;:::-;;:::i;3401:25::-;;;;;;;;-1:-1:-1;;;;;3401:25:0;;;;;;-1:-1:-1;;;;;376:32:1;;;358:51;;346:2;331:18;3401:25:0;;;;;;;;10732:746;;;;;;:::i;:::-;;:::i;:::-;;;819:25:1;;;807:2;792:18;10732:746:0;673:177:1;9278:820:0;;;;;;:::i;:::-;;:::i;3470:25::-;;;;;;2792:78;2855:7;;;;2792:78;;1116:14:1;;1109:22;1091:41;;1079:2;1064:18;2792:78:0;951:187:1;7238:279:0;;;;;;:::i;:::-;;:::i;3549:26::-;;;;;;5775:166;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;5647:120::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;2869:13:1;;2851:32;;2943:4;2931:17;;;2925:24;-1:-1:-1;;;;;2921:50:1;2899:20;;;2892:80;3028:4;3016:17;;;3010:24;2988:20;;;2981:54;3091:4;3079:17;;;3073:24;3051:20;;;3044:54;3154:4;3142:17;;;3136:24;3114:20;;;3107:54;2959:3;3219:17;;;3213:24;3206:32;3199:40;3177:20;;;3170:70;;;;2838:3;2823:19;;2654:592;6076:63:0;;;:::i;10106:618::-;;;;;;:::i;:::-;;:::i;1602:79::-;1640:7;1667:6;-1:-1:-1;;;;;1667:6:0;1602:79;;3433:30;;;;;;8668:602;;;;;;:::i;:::-;;:::i;5485:154::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;7525:1135::-;;;;;;:::i;:::-;;:::i;6631:201::-;;;;;;:::i;:::-;;:::i;3502:40::-;;;;;;6840:390;;;;;;:::i;:::-;;:::i;6222:274::-;;;;;;:::i;:::-;;:::i;1816:109::-;;;;;;:::i;:::-;;:::i;6147:67::-;;;:::i;5949:119::-;1729:6;;-1:-1:-1;;;;;1729:6:0;1142:10;1729:22;1721:67;;;;-1:-1:-1;;;1721:67:0;;;;;;;:::i;:::-;;;;;;;;;6033:10:::1;:27:::0;5949:119::o;11486:204::-;1729:6;;-1:-1:-1;;;;;1729:6:0;1142:10;1729:22;1721:67;;;;-1:-1:-1;;;1721:67:0;;;;;;;:::i;:::-;11560:11:::1;::::0;:65:::1;::::0;-1:-1:-1;;;11560:65:0;;11585:10:::1;11560:65;::::0;::::1;5844:34:1::0;11605:4:0::1;5894:18:1::0;;;5887:43;5946:18;;;5939:34;;;11560:11:0::1;::::0;;::::1;-1:-1:-1::0;;;;;11560:11:0::1;::::0;:24:::1;::::0;5779:18:1;;11560:65:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;11643:39:0::1;::::0;819:25:1;;;11657:10:0::1;::::0;11643:39:::1;::::0;807:2:1;792:18;11643:39:0::1;;;;;;;11486:204:::0;:::o;6504:119::-;1729:6;;-1:-1:-1;;;;;1729:6:0;1142:10;1729:22;1721:67;;;;-1:-1:-1;;;1721:67:0;;;;;;;:::i;:::-;6587:12:::1;:28:::0;6504:119::o;10732:746::-;10810:14;10861:20;;;:11;:20;;;;;;;;:30;;;;;;;;10910:16;;;;:21;10902:45;;;;-1:-1:-1;;;10902:45:0;;6436:2:1;10902:45:0;;;6418:21:1;6475:2;6455:18;;;6448:30;-1:-1:-1;;;6494:18:1;;;6487:41;6545:18;;10902:45:0;6234:335:1;10902:45:0;10958:26;;:::i;:::-;11015:4;:18;;;10998:4;:14;;;:35;10995:476;;;11063:15;11049:8;11058:1;11049:11;;;:29;11114:18;;;;11096:15;:36;11093:77;;;11149:18;;;;11135:11;;;:32;11093:77;11229:14;;;;11213:11;;;;11212:32;;11229:14;11212:32;:::i;:::-;11198:46;;11307:9;;11274:19;;;;11273:30;;11298:4;11273:30;:::i;:::-;:44;;;;:::i;:::-;11259:11;;;:58;;;11361:11;;11341:16;;;;11410:5;;11401:4;;11393:3;;11341:32;;11361:11;11341:32;:::i;:::-;:48;;;;:::i;:::-;:56;;;;:::i;:::-;:65;;;;:::i;:::-;:75;;;;:::i;:::-;11332:84;;10995:476;;;11458:1;11449:10;;10995:476;10826:652;;10732:746;;;;:::o;9278:820::-;2923:7;;;;2922:8;2914:37;;;;-1:-1:-1;;;2914:37:0;;;;;;;:::i;:::-;9364:21:::1;9388:20:::0;;;:11:::1;:20;::::0;;;;;;;:30;;;;;;;;9453:20;;;:11:::1;:20:::0;;;;;;9492:11;;-1:-1:-1;;;;;9492:11:0::1;9507:10;9492:25;9484:53;;;;-1:-1:-1::0;;;9484:53:0::1;;;;;;;:::i;:::-;9556:4;:16;;;9576:1;9556:21:::0;9548:60:::1;;;::::0;-1:-1:-1;;;9548:60:0;;8258:2:1;9548:60:0::1;::::0;::::1;8240:21:1::0;8297:2;8277:18;;;8270:30;8336:29;8316:18;;;8309:57;8383:18;;9548:60:0::1;8056:351:1::0;9548:60:0::1;9663:15;9647:12;;9627:4;:16;;;:33;;;;:::i;:::-;:51;9619:90;;;::::0;-1:-1:-1;;;9619:90:0;;8744:2:1;9619:90:0::1;::::0;::::1;8726:21:1::0;8783:2;8763:18;;;8756:30;8822:27;8802:18;;;8795:55;8867:18;;9619:90:0::1;8542:349:1::0;9619:90:0::1;9728:17;::::0;::::1;::::0;:22;9720:61:::1;;;::::0;-1:-1:-1;;;9720:61:0;;9098:2:1;9720:61:0::1;::::0;::::1;9080:21:1::0;9137:2;9117:18;;;9110:30;9176:28;9156:18;;;9149:56;9222:18;;9720:61:0::1;8896:350:1::0;9720:61:0::1;9812:15;9792:17;::::0;::::1;:35:::0;9838:12:::1;::::0;::::1;:19:::0;;-1:-1:-1;;9838:19:0::1;9853:4;9838:19;::::0;;9918:16:::1;::::0;::::1;::::0;9893:21:::1;::::0;::::1;::::0;:42:::1;::::0;9918:16;9893:42:::1;:::i;:::-;9869:21;::::0;;::::1;:66:::0;;;;9947:15:::1;::::0;::::1;::::0;9985:16:::1;::::0;::::1;::::0;9946:56:::1;::::0;-1:-1:-1;;;9946:56:0;;9973:10:::1;9946:56:::0;;::::1;9425:51:1::0;;;;9492:18;;;9485:34;-1:-1:-1;;;;;9947:15:0::1;::::0;9946:26:::1;::::0;9398:18:1;;9946:56:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;10054:16:0::1;::::0;::::1;::::0;10072:17:::1;::::0;::::1;::::0;10027:63:::1;::::0;10042:10:::1;::::0;10027:63:::1;::::0;::::1;::::0;9704:25:1;;;9760:2;9745:18;;9738:34;9692:2;9677:18;;9530:248;10027:63:0::1;;;;;;;;9353:745;;9278:820:::0;;:::o;7238:279::-;1729:6;;-1:-1:-1;;;;;1729:6:0;1142:10;1729:22;1721:67;;;;-1:-1:-1;;;1721:67:0;;;;;;;:::i;:::-;7318:21:::1;7342:19:::0;;;:11:::1;:19;::::0;;;;7380:11;;7372:41:::1;;;::::0;-1:-1:-1;;;7372:41:0;;9985:2:1;7372:41:0::1;::::0;::::1;9967:21:1::0;10024:2;10004:18;;;9997:30;-1:-1:-1;;;10043:18:1;;;10036:44;10097:18;;7372:41:0::1;9783:338:1::0;7372:41:0::1;7424:13;::::0;::::1;:23:::0;;-1:-1:-1;;7424:23:0::1;::::0;::::1;;::::0;;::::1;::::0;;;7465:44:::1;::::0;;10294:25:1;;;10350:2;10335:18;;10328:50;;;;7482:10:0::1;::::0;7465:44:::1;::::0;10267:18:1;7465:44:0::1;;;;;;;;7307:210;7238:279:::0;;:::o;5775:166::-;-1:-1:-1;;;;;5898:17:0;;;;;;:7;:17;;;;;;;;:26;;;;;;;;;5891:42;;;;;;;;;;;;;;;;;5854:25;;5891:42;;;5898:26;5891:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5775:166;;;;;:::o;5647:120::-;5705:15;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5705:15:0;-1:-1:-1;5739:20:0;;;;:11;:20;;;;;;;;;5732:27;;;;;;;;;;;;;;;-1:-1:-1;;;;;5732:27:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5647:120::o;6076:63::-;1729:6;;-1:-1:-1;;;;;1729:6:0;1142:10;1729:22;1721:67;;;;-1:-1:-1;;;1721:67:0;;;;;;;:::i;:::-;6123:8:::1;:6;:8::i;:::-;6076:63::o:0;10106:618::-;2923:7;;;;2922:8;2914:37;;;;-1:-1:-1;;;2914:37:0;;;;;;;:::i;:::-;10193:21:::1;10217:20:::0;;;:11:::1;:20;::::0;;;;;;;:30;;;;;;;;10266:11;;-1:-1:-1;;;;;10266:11:0::1;10281:10;10266:25;10258:53;;;;-1:-1:-1::0;;;10258:53:0::1;;;;;;;:::i;:::-;10322:20;10345:31;10359:7;10367:8;10345:13;:31::i;:::-;10322:54;;10408:4;:18;;;10390:15;:36;10387:146;;;10459:18;::::0;::::1;::::0;10442:14:::1;::::0;::::1;:35:::0;10387:146:::1;;;10515:15;10498:14;::::0;::::1;:32:::0;10387:146:::1;10564:12;10543:4;:17;;;:33;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;10587:11:0::1;::::0;:46:::1;::::0;-1:-1:-1;;;10587:46:0;;10608:10:::1;10587:46;::::0;::::1;9425:51:1::0;9492:18;;;9485:34;;;10587:11:0::1;::::0;;::::1;-1:-1:-1::0;;;;;10587:11:0::1;::::0;:20:::1;::::0;9398:18:1;;10587:46:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;10701:14:0::1;::::0;::::1;::::0;10652:64:::1;::::0;;10591:25:1;;;10647:2;10632:18;;10625:34;;;10675:18;;;10668:34;;;;10666:10:0::1;::::0;10652:64:::1;::::0;10579:2:1;10564:18;10652:64:0::1;10389:319:1::0;8668:602:0;2296:1;2442:7;;:19;2434:63;;;;-1:-1:-1;;;2434:63:0;;10915:2:1;2434:63:0;;;10897:21:1;10954:2;10934:18;;;10927:30;10993:33;10973:18;;;10966:61;11044:18;;2434:63:0;10713:355:1;2434:63:0;2296:1;2508:7;:18;;;2923:7;::::1;;2922:8;2914:37;;;;-1:-1:-1::0;;;2914:37:0::1;;;;;;;:::i;:::-;8766:21:::2;8790:20:::0;;;:11:::2;:20;::::0;;;;;;;:30;;;;;;;;8839:14:::2;::::0;::::2;::::0;8831:48:::2;;;::::0;-1:-1:-1;;;8831:48:0;;11275:2:1;8831:48:0::2;::::0;::::2;11257:21:1::0;11314:2;11294:18;;;11287:30;-1:-1:-1;;;11333:18:1;;;11326:46;11389:18;;8831:48:0::2;11073:340:1::0;8831:48:0::2;8920:15;8898:4;:18;;;:37;;8890:49;;;::::0;-1:-1:-1;;;8890:49:0;;11620:2:1;8890:49:0::2;::::0;::::2;11602:21:1::0;-1:-1:-1;11639:18:1;;;11632:29;11678:18;;8890:49:0::2;11418:284:1::0;8890:49:0::2;8958:16;::::0;::::2;::::0;:21;8950:60:::2;;;::::0;-1:-1:-1;;;8950:60:0;;11909:2:1;8950:60:0::2;::::0;::::2;11891:21:1::0;11948:2;11928:18;;;11921:30;11987:28;11967:18;;;11960:56;12033:18;;8950:60:0::2;11707:350:1::0;8950:60:0::2;9029:11:::0;;-1:-1:-1;;;;;9029:11:0::2;9044:10;9029:25;9021:53;;;;-1:-1:-1::0;;;9021:53:0::2;;;;;;;:::i;:::-;9085:30;9098:7;9106:8;9085:11;:30::i;:::-;9145:15;9126:16;::::0;::::2;:34:::0;;;9228:16:::2;::::0;::::2;::::0;9195:67:::2;::::0;;10591:25:1;;;10647:2;10632:18;;10625:34;;;;10675:18;;10668:34;;;;9206:10:0::2;::::0;9195:67:::2;::::0;10579:2:1;10564:18;9195:67:0::2;;;;;;;-1:-1:-1::0;;2252:1:0;2549:22;;-1:-1:-1;8668:602:0:o;5485:154::-;5567:15;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5567:15:0;-1:-1:-1;5601:20:0;;;;:11;:20;;;;;;;;:30;;;;;;;;;;5594:37;;;;;;;;;-1:-1:-1;;;;;5594:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5485:154::o;7525:1135::-;2296:1;2442:7;;:19;2434:63;;;;-1:-1:-1;;;2434:63:0;;10915:2:1;2434:63:0;;;10897:21:1;10954:2;10934:18;;;10927:30;10993:33;10973:18;;;10966:61;11044:18;;2434:63:0;10713:355:1;2434:63:0;2296:1;2508:7;:18;;;2923:7;::::1;;2922:8;2914:37;;;;-1:-1:-1::0;;;2914:37:0::1;;;;;;;:::i;:::-;7669:1:::2;7654:12;:16;:45;;;;;7689:10;;7674:12;:25;7654:45;7645:80;;;::::0;-1:-1:-1;;;7645:80:0;;12264:2:1;7645:80:0::2;::::0;::::2;12246:21:1::0;12303:2;12283:18;;;12276:30;-1:-1:-1;;;12322:18:1;;;12315:52;12384:18;;7645:80:0::2;12062:346:1::0;7645:80:0::2;7736:21;7760:20:::0;;;:11:::2;:20;::::0;;;;7800:13:::2;::::0;::::2;::::0;::::2;;7799:14;7791:44;;;::::0;-1:-1:-1;;;7791:44:0;;12615:2:1;7791:44:0::2;::::0;::::2;12597:21:1::0;12654:2;12634:18;;;12627:30;-1:-1:-1;;;12673:18:1;;;12666:48;12731:18;;7791:44:0::2;12413:342:1::0;7791:44:0::2;7846:16;::::0;::::2;:18:::0;;;:16:::2;:18;::::0;::::2;:::i;:::-;::::0;;;-1:-1:-1;;7875:21:0::2;7899:20:::0;;;:11:::2;:20;::::0;;;;;;;7920:16:::2;::::0;;::::2;::::0;;7899:38;;;;;;;;7948:24;;-1:-1:-1;;;;;;7948:24:0::2;7962:10;7948:24;::::0;;7998:16;;7983:12:::2;::::0;::::2;:31:::0;7948:24;8025:11;::::2;:21:::0;;;8057:16;::::2;:31:::0;;;8116:15:::2;8099:14;::::0;::::2;:32:::0;;;8142:14:::2;::::0;::::2;:32:::0;8226:20:::2;:10:::0;8240:5:::2;8226:20;:::i;:::-;8207:40;::::0;:15:::2;:40;:::i;:::-;8185:18;::::0;::::2;:63:::0;8281:18:::2;::::0;::::2;::::0;8259:19:::2;::::0;::::2;:40:::0;8310:16:::2;::::0;::::2;:29:::0;;;8374:21:::2;::::0;::::2;::::0;:38:::2;::::0;8399:12;;8374:38:::2;:::i;:::-;8350:21;::::0;;::::2;:62:::0;;;;8431:10:::2;8423:19;::::0;;;:7:::2;:19;::::0;;;;;;;:28;;;;;;;;8466:16:::2;::::0;::::2;::::0;8423:60;;::::2;::::0;;::::2;::::0;;;;;;;;;;;::::2;::::0;;;;8497:15;::::2;::::0;8496:71;;-1:-1:-1;;;8496:71:0;;;;::::2;5844:34:1::0;;;;8547:4:0::2;5894:18:1::0;;;5887:43;5946:18;;;5939:34;;;-1:-1:-1;;;;;8497:15:0::2;::::0;8496:30:::2;::::0;5779:18:1;;8496:71:0::2;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;8604:16:0::2;::::0;::::2;::::0;8583:69:::2;::::0;;10591:25:1;;;10647:2;10632:18;;10625:34;;;8636:15:0::2;10675:18:1::0;;;10668:34;8592:10:0::2;::::0;8583:69:::2;::::0;10579:2:1;10564:18;8583:69:0::2;;;;;;;-1:-1:-1::0;;2252:1:0;2549:22;;-1:-1:-1;;;7525:1135:0:o;6631:201::-;1729:6;;-1:-1:-1;;;;;1729:6:0;1142:10;1729:22;1721:67;;;;-1:-1:-1;;;1721:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;6719:28:0;::::1;6711:68;;;::::0;-1:-1:-1;;;6711:68:0;;13102:2:1;6711:68:0::1;::::0;::::1;13084:21:1::0;13141:2;13121:18;;;13114:30;13180;13160:18;;;13153:58;13228:18;;6711:68:0::1;12900:352:1::0;6711:68:0::1;6790:11;:34:::0;;-1:-1:-1;;;;;6790:34:0;;::::1;;;-1:-1:-1::0;;;;;;6790:34:0;;::::1;::::0;;;::::1;::::0;;6631:201::o;6840:390::-;1729:6;;-1:-1:-1;;;;;1729:6:0;1142:10;1729:22;1721:67;;;;-1:-1:-1;;;1721:67:0;;;;;;;:::i;:::-;6938:11:::1;:13:::0;;;:11:::1;:13;::::0;::::1;:::i;:::-;::::0;;;-1:-1:-1;;6998:11:0::1;::::0;;6962:21:::1;6986:24:::0;;;:11:::1;:24;::::0;;;;;;;;7021:15:::1;::::0;::::1;:37:::0;;-1:-1:-1;;;;;;7021:37:0::1;-1:-1:-1::0;;;;;7021:37:0;::::1;::::0;;::::1;::::0;;;7069:18:::1;::::0;::::1;:35:::0;;;7129:11;;7115:25;;;7158:64;;13459:25:1;;;13500:18;;;13493:60;;;;13569:18;;;13562:34;;;7169:10:0::1;::::0;7158:64:::1;::::0;13447:2:1;13432:18;7158:64:0::1;13257:345:1::0;6222:274:0;1729:6;;-1:-1:-1;;;;;1729:6:0;1142:10;1729:22;1721:67;;;;-1:-1:-1;;;1721:67:0;;;;;;;:::i;:::-;6327:21:::1;6351:20:::0;;;:11:::1;:20;::::0;;;;;;;;6382:18:::1;::::0;::::1;:35:::0;;;6435:53;;9704:25:1;;;9745:18;;;9738:34;;;6351:20:0;6452:10:::1;::::0;6435:53:::1;::::0;9677:18:1;6435:53:0::1;9530:248:1::0;1816:109:0;1729:6;;-1:-1:-1;;;;;1729:6:0;1142:10;1729:22;1721:67;;;;-1:-1:-1;;;1721:67:0;;;;;;;:::i;:::-;1889:28:::1;1908:8;1889:18;:28::i;:::-;1816:109:::0;:::o;6147:67::-;1729:6;;-1:-1:-1;;;;;1729:6:0;1142:10;1729:22;1721:67;;;;-1:-1:-1;;;1721:67:0;;;;;;;:::i;:::-;6196:10:::1;:8;:10::i;3080:118::-:0;2923:7;;;;2922:8;2914:37;;;;-1:-1:-1;;;2914:37:0;;;;;;;:::i;:::-;3140:7:::1;:14:::0;;-1:-1:-1;;3140:14:0::1;3150:4;3140:14;::::0;;3170:20:::1;3177:12;1142:10:::0;;1069:91;3177:12:::1;3170:20;::::0;-1:-1:-1;;;;;376:32:1;;;358:51;;346:2;331:18;3170:20:0::1;;;;;;;3080:118::o:0;1933:229::-;-1:-1:-1;;;;;2007:22:0;;1999:73;;;;-1:-1:-1;;;1999:73:0;;13809:2:1;1999:73:0;;;13791:21:1;13848:2;13828:18;;;13821:30;13887:34;13867:18;;;13860:62;-1:-1:-1;;;13938:18:1;;;13931:36;13984:19;;1999:73:0;13607:402:1;1999:73:0;2109:6;;;2088:38;;-1:-1:-1;;;;;2088:38:0;;;;2109:6;;;2088:38;;;2137:6;:17;;-1:-1:-1;;;;;;2137:17:0;-1:-1:-1;;;;;2137:17:0;;;;;;;;;;1933:229::o;3206:120::-;3020:7;;;;3012:40;;;;-1:-1:-1;;;3012:40:0;;14216:2:1;3012:40:0;;;14198:21:1;14255:2;14235:18;;;14228:30;-1:-1:-1;;;14274:18:1;;;14267:50;14334:18;;3012:40:0;14014:344:1;3012:40:0;3265:7:::1;:15:::0;;-1:-1:-1;;3265:15:0::1;::::0;;3296:22:::1;1142:10:::0;3305:12:::1;1069:91:::0;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:180:1:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:1;;14:180;-1:-1:-1;14:180:1:o;420:248::-;488:6;496;549:2;537:9;528:7;524:23;520:32;517:52;;;565:1;562;555:12;517:52;-1:-1:-1;;588:23:1;;;658:2;643:18;;;630:32;;-1:-1:-1;420:248:1:o;1143:118::-;1229:5;1222:13;1215:21;1208:5;1205:32;1195:60;;1251:1;1248;1241:12;1266:309;1331:6;1339;1392:2;1380:9;1371:7;1367:23;1363:32;1360:52;;;1408:1;1405;1398:12;1360:52;1444:9;1431:23;1421:33;;1504:2;1493:9;1489:18;1476:32;1517:28;1539:5;1517:28;:::i;:::-;1564:5;1554:15;;;1266:309;;;;;:::o;1580:173::-;1648:20;;-1:-1:-1;;;;;1697:31:1;;1687:42;;1677:70;;1743:1;1740;1733:12;1677:70;1580:173;;;:::o;1758:254::-;1826:6;1834;1887:2;1875:9;1866:7;1862:23;1858:32;1855:52;;;1903:1;1900;1893:12;1855:52;1926:29;1945:9;1926:29;:::i;:::-;1916:39;2002:2;1987:18;;;;1974:32;;-1:-1:-1;;;1758:254:1:o;2017:632::-;2188:2;2240:21;;;2310:13;;2213:18;;;2332:22;;;2159:4;;2188:2;2411:15;;;;2385:2;2370:18;;;2159:4;2454:169;2468:6;2465:1;2462:13;2454:169;;;2529:13;;2517:26;;2598:15;;;;2563:12;;;;2490:1;2483:9;2454:169;;;-1:-1:-1;2640:3:1;;2017:632;-1:-1:-1;;;;;;2017:632:1:o;3568:1158::-;3784:13;;-1:-1:-1;;;;;3317:31:1;3305:44;;3752:3;3737:19;;3865:4;3857:6;3853:17;3847:24;3840:4;3829:9;3825:20;3818:54;3928:4;3920:6;3916:17;3910:24;3903:4;3892:9;3888:20;3881:54;3991:4;3983:6;3979:17;3973:24;3966:4;3955:9;3951:20;3944:54;4054:4;4046:6;4042:17;4036:24;4029:4;4018:9;4014:20;4007:54;4117:4;4109:6;4105:17;4099:24;4092:4;4081:9;4077:20;4070:54;4180:4;4172:6;4168:17;4162:24;4155:4;4144:9;4140:20;4133:54;4243:4;4235:6;4231:17;4225:24;4218:4;4207:9;4203:20;4196:54;4269:6;4329:2;4321:6;4317:15;4311:22;4306:2;4295:9;4291:18;4284:50;;4353:6;4413:2;4405:6;4401:15;4395:22;4390:2;4379:9;4375:18;4368:50;;4437:6;4497:2;4489:6;4485:15;4479:22;4474:2;4463:9;4459:18;4452:50;;4521:6;4581:2;4573:6;4569:15;4563:22;4558:2;4547:9;4543:18;4536:50;;4605:6;4658:2;4650:6;4646:15;4640:22;4671:49;4716:2;4705:9;4701:18;4687:12;925:13;918:21;906:34;;855:91;4731:316;4808:6;4816;4824;4877:2;4865:9;4856:7;4852:23;4848:32;4845:52;;;4893:1;4890;4883:12;4845:52;-1:-1:-1;;4916:23:1;;;4986:2;4971:18;;4958:32;;-1:-1:-1;5037:2:1;5022:18;;;5009:32;;4731:316;-1:-1:-1;4731:316:1:o;5052:186::-;5111:6;5164:2;5152:9;5143:7;5139:23;5135:32;5132:52;;;5180:1;5177;5170:12;5132:52;5203:29;5222:9;5203:29;:::i;:::-;5193:39;5052:186;-1:-1:-1;;;5052:186:1:o;5243:356::-;5445:2;5427:21;;;5464:18;;;5457:30;5523:34;5518:2;5503:18;;5496:62;5590:2;5575:18;;5243:356::o;5984:245::-;6051:6;6104:2;6092:9;6083:7;6079:23;6075:32;6072:52;;;6120:1;6117;6110:12;6072:52;6152:9;6146:16;6171:28;6193:5;6171:28;:::i;6706:127::-;6767:10;6762:3;6758:20;6755:1;6748:31;6798:4;6795:1;6788:15;6822:4;6819:1;6812:15;6838:128;6905:9;;;6926:11;;;6923:37;;;6940:18;;:::i;6971:168::-;7044:9;;;7075;;7092:15;;;7086:22;;7072:37;7062:71;;7113:18;;:::i;7144:217::-;7184:1;7210;7200:132;;7254:10;7249:3;7245:20;7242:1;7235:31;7289:4;7286:1;7279:15;7317:4;7314:1;7307:15;7200:132;-1:-1:-1;7346:9:1;;7144:217::o;7366:340::-;7568:2;7550:21;;;7607:2;7587:18;;;7580:30;-1:-1:-1;;;7641:2:1;7626:18;;7619:46;7697:2;7682:18;;7366:340::o;7711:::-;7913:2;7895:21;;;7952:2;7932:18;;;7925:30;-1:-1:-1;;;7986:2:1;7971:18;;7964:46;8042:2;8027:18;;7711:340::o;8412:125::-;8477:9;;;8498:10;;;8495:36;;;8511:18;;:::i;12760:135::-;12799:3;12820:17;;;12817:43;;12840:18;;:::i;:::-;-1:-1:-1;12887:1:1;12876:13;;12760:135::o
Swarm Source
ipfs://48b93f9cd2858cdee78a03416829bfb412bf8220ea422a3f8e5b11cd62296887
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
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.