Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 620 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 20289431 | 50 days ago | IN | 0 ETH | 0.00011327 | ||||
Approve | 20289429 | 50 days ago | IN | 0 ETH | 0.00010715 | ||||
Approve | 16567089 | 573 days ago | IN | 0 ETH | 0.00081189 | ||||
Approve | 16520609 | 579 days ago | IN | 0 ETH | 0.00057749 | ||||
Approve | 16520609 | 579 days ago | IN | 0 ETH | 0.00053352 | ||||
Approve | 16520207 | 579 days ago | IN | 0 ETH | 0.00055932 | ||||
Approve | 16520204 | 579 days ago | IN | 0 ETH | 0.00055725 | ||||
Approve | 16466790 | 587 days ago | IN | 0 ETH | 0.00071803 | ||||
Approve | 16280656 | 613 days ago | IN | 0 ETH | 0.00100045 | ||||
Approve | 16056892 | 644 days ago | IN | 0 ETH | 0.00057188 | ||||
Approve | 15999333 | 652 days ago | IN | 0 ETH | 0.00063007 | ||||
Approve | 15998714 | 652 days ago | IN | 0 ETH | 0.00070097 | ||||
Approve | 15844216 | 674 days ago | IN | 0 ETH | 0.00054343 | ||||
Transfer | 15805415 | 679 days ago | IN | 0 ETH | 0.00075896 | ||||
Approve | 15742312 | 688 days ago | IN | 0 ETH | 0.00080082 | ||||
Approve | 15723234 | 691 days ago | IN | 0 ETH | 0.00118662 | ||||
Approve | 15703350 | 693 days ago | IN | 0 ETH | 0.00055862 | ||||
Approve | 15695586 | 694 days ago | IN | 0 ETH | 0.00028622 | ||||
Approve | 15690267 | 695 days ago | IN | 0 ETH | 0.00066031 | ||||
Approve | 15681135 | 696 days ago | IN | 0 ETH | 0.00023309 | ||||
Approve | 15656075 | 700 days ago | IN | 0 ETH | 0.00056299 | ||||
Approve | 15647306 | 701 days ago | IN | 0 ETH | 0.00127278 | ||||
Approve | 15647289 | 701 days ago | IN | 0 ETH | 0.00081918 | ||||
Approve | 15647288 | 701 days ago | IN | 0 ETH | 0.00145915 | ||||
Approve | 15647276 | 701 days ago | IN | 0 ETH | 0.00132307 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
15516537 | 720 days ago | 0.25475275 ETH | ||||
15516537 | 720 days ago | 0.12737637 ETH | ||||
15516534 | 720 days ago | 0.25475275 ETH | ||||
15516534 | 720 days ago | 0.12737637 ETH | ||||
15516532 | 720 days ago | 0.38212913 ETH | ||||
15512699 | 721 days ago | 0.19123956 ETH | ||||
15512699 | 721 days ago | 0.09561978 ETH | ||||
15500275 | 723 days ago | 0.0425818 ETH | ||||
15500275 | 723 days ago | 0.0212909 ETH | ||||
15500139 | 723 days ago | 0.0638727 ETH | ||||
15498601 | 723 days ago | 0.05921028 ETH | ||||
15498601 | 723 days ago | 0.02960514 ETH | ||||
15498443 | 723 days ago | 0.08881542 ETH | ||||
15493344 | 724 days ago | 0.12285002 ETH | ||||
15493344 | 724 days ago | 0.06142501 ETH | ||||
15493118 | 724 days ago | 0.18427503 ETH | ||||
15492250 | 724 days ago | 0.01675965 ETH | ||||
15492250 | 724 days ago | 0.00837982 ETH | ||||
15492243 | 724 days ago | 0.02513948 ETH | ||||
15492135 | 724 days ago | 0.0908333 ETH | ||||
15492135 | 724 days ago | 0.04541665 ETH | ||||
15492133 | 724 days ago | 0.13624995 ETH | ||||
15492098 | 724 days ago | 0.11466473 ETH | ||||
15492098 | 724 days ago | 0.11466473 ETH | ||||
15492098 | 724 days ago | 0.11466473 ETH |
Loading...
Loading
Contract Name:
Toshi
Compiler Version
v0.7.6+commit.7338295f
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-09-07 */ // SPDX-License-Identifier: MIT pragma solidity >=0.7.0 <0.8.0; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } interface IERC20 { function totalSupply() external view returns (uint256); 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); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } contract Ownable is Context { address private _owner; address private _previousOwner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); constructor() { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } interface IUniswapV2Pair { event Approval(address indexed owner, address indexed spender, uint value); event Transfer(address indexed from, address indexed to, uint value); function name() external pure returns (string memory); function symbol() external pure returns (string memory); function decimals() external pure returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); function DOMAIN_SEPARATOR() external view returns (bytes32); function PERMIT_TYPEHASH() external pure returns (bytes32); function nonces(address owner) external view returns (uint); function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; event Mint(address indexed sender, uint amount0, uint amount1); event Burn(address indexed sender, uint amount0, uint amount1, address indexed to); event Swap( address indexed sender, uint amount0In, uint amount1In, uint amount0Out, uint amount1Out, address indexed to ); event Sync(uint112 reserve0, uint112 reserve1); function MINIMUM_LIQUIDITY() external pure returns (uint); function factory() external view returns (address); function token0() external view returns (address); function token1() external view returns (address); function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast); function price0CumulativeLast() external view returns (uint); function price1CumulativeLast() external view returns (uint); function kLast() external view returns (uint); function mint(address to) external returns (uint liquidity); function burn(address to) external returns (uint amount0, uint amount1); function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external; function skim(address to) external; function sync() external; function initialize(address, address) external; } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; 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 quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB); function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut); function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn); function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts); function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts); } contract Toshi is Context, IERC20, Ownable { using SafeMath for uint256; string private constant _name = "Ghost Of Ryoshi"; string private constant _symbol = "TOSHI"; uint8 private constant _decimals = 9; mapping(address => uint256) private _balances; mapping(address => uint256) private cooldown; mapping(address => bool) private bots; mapping (address => uint256) private _lastTX; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFee; uint256 private constant _tTotal = 100 * 1e5 * 1e9; uint256 public _maxWalletAmount = 1 * 1e5 * 1e9; // fees uint256 public _liquidityFeeOnBuy = 0; uint256 public _marketingFeeOnBuy = 5; uint256 public _liquidityFeeOnSell = 0; uint256 public _marketingFeeOnSell = 25; uint256 private _previousLiquidityFee = _liquidityFee; uint256 private _previousMarketingFee = _marketingFee; uint256 private _liquidityFee; uint256 private _marketingFee; struct FeeBreakdown { uint256 tLiquidity; uint256 tMarketing; uint256 tAmount; } address payable private dev = payable(0xd8553b5C4AB04214A6288C6FBaBe08332A487Db6); address payable private mktg = payable(0xd8553b5C4AB04214A6288C6FBaBe08332A487Db6); IUniswapV2Router02 private uniswapV2Router; address public uniswapV2Pair; uint256 public swapAmount; uint256 private _firstBlock; bool public botProtection = false; bool private inSwap = false; bool public cooldownEnabled = false; bool public swapEnabled = false; event FeesUpdated(uint256 _marketingFee, uint256 _liquidityFee); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor() { IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Router = _uniswapV2Router; _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH()); IERC20(uniswapV2Pair).approve(address(uniswapV2Router),type(uint256).max); swapAmount = 3 * 1e4 * 1e9; _balances[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[dev] = true; _isExcludedFromFee[mktg] = true; _isExcludedFromFee[address(this)] = true; emit Transfer(address(0), _msgSender(), _tTotal); } 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 totalSupply() external pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) external override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) external view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) external override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) { _transfer(sender, recipient, amount); _approve(sender,_msgSender(),_allowances[sender][_msgSender()].sub(amount,"ERC20: transfer amount exceeds allowance")); return true; } function removeAllFee() private { if (_marketingFee == 0 && _liquidityFee == 0) return; _previousMarketingFee = _marketingFee; _previousLiquidityFee = _liquidityFee; _marketingFee = 0; _liquidityFee = 0; } function setCooldownEnabled(bool onoff) external onlyOwner() { cooldownEnabled = onoff; } function restoreAllFee() private { _liquidityFee = _previousLiquidityFee; _marketingFee = _previousMarketingFee; } function toggleBotProtection(bool onoff) external onlyOwner() { botProtection = onoff; } 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 _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if(!swapEnabled){ require(from == dev); // only owner allowed to trade or add liquidity } if (from == uniswapV2Pair && to != address(uniswapV2Router)) { if (block.number <= (_firstBlock.add(4))) { bots[to] = true; } } bool takeFee = true; if (from != owner() && to != owner()) { if (cooldownEnabled) { if (from != address(this) && to != address(this) && from != address(uniswapV2Router) && to != address(uniswapV2Router)) { require(_msgSender() == address(uniswapV2Router) || _msgSender() == uniswapV2Pair, "ERR: Uniswap only"); } if( to != owner() && to != address(this) && to != address(uniswapV2Router) && to != uniswapV2Pair) { require(_lastTX[tx.origin] <= (block.timestamp + 5 minutes), "Cooldown in effect"); _lastTX[tx.origin] = block.timestamp; } } } if (from != owner() && to != owner() && from != address(this) && to != address(this)) { if (from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]) { require(balanceOf(to).add(amount) <= _maxWalletAmount, "wallet balance after transfer must be less than max wallet amount"); } if (from == uniswapV2Pair && to != address(uniswapV2Router)) { _liquidityFee = _liquidityFeeOnBuy; _marketingFee = _marketingFeeOnBuy; } if (to == uniswapV2Pair && from != address(uniswapV2Router)) { if (botProtection) { require(!bots[to] && !bots[from]); } _liquidityFee = _liquidityFeeOnSell; _marketingFee = _marketingFeeOnSell; } if (!inSwap && from != uniswapV2Pair) { uint256 contractTokenBalance = balanceOf(address(this)); if (contractTokenBalance > swapAmount) { swapAndLiquify(contractTokenBalance); } uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) { sendETHToFee(address(this).balance); } } } if (_isExcludedFromFee[from] || _isExcludedFromFee[to]) { takeFee = false; } _tokenTransfer(from, to, amount, takeFee); restoreAllFee(); } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount, 0, path, address(this), block.timestamp); } function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private { _approve(address(this), address(uniswapV2Router), tokenAmount); // add the liquidity uniswapV2Router.addLiquidityETH{value: ethAmount}( address(this), tokenAmount, 0, // slippage is unavoidable 0, // slippage is unavoidable dev, block.timestamp ); } function swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap { uint256 autoLPamount = _liquidityFee.mul(contractTokenBalance).div(_marketingFee.add(_liquidityFee)); // split the contract balance into halves uint256 half = autoLPamount.div(2); uint256 otherHalf = contractTokenBalance.sub(half); // capture the contract's current ETH balance. // this is so that we can capture exactly the amount of ETH that the // swap creates, and not make the liquidity event include any ETH that // has been manually sent to the contract uint256 initialBalance = address(this).balance; // swap tokens for ETH swapTokensForEth(otherHalf); // <- this breaks the ETH -> HATE swap when swap+liquify is triggered // how much ETH did we just swap into? uint256 newBalance = ((address(this).balance.sub(initialBalance)).mul(half)).div(otherHalf); addLiquidity(half, newBalance); } function sendETHToFee(uint256 amount) private { uint256 tfrAmt = amount.div(3); mktg.transfer(tfrAmt); dev.transfer(amount.sub(tfrAmt)); } function delBot(address notbot) public onlyOwner { bots[notbot] = false; } function manualSwap() external { require(_msgSender() == dev); uint256 contractBalance = balanceOf(address(this)); if (contractBalance > 0) { swapTokensForEth(contractBalance); } } function manualSwapandLiquify() public onlyOwner() { uint contractBalance = balanceOf(address(this)); swapAndLiquify(contractBalance); } function setTaxRate(uint256 liqFee, uint256 mktgFee, uint256 buyliqFee, uint256 buymktgFee) public onlyOwner() { _liquidityFeeOnSell = liqFee; _marketingFeeOnSell = mktgFee; _liquidityFeeOnBuy = buyliqFee; _marketingFeeOnBuy = buymktgFee; } function manualSend() external { require(_msgSender() == dev); uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) { sendETHToFee(contractETHBalance); } } function _tokenTransfer(address sender, address recipient, uint256 amount, bool takeFee) private { if (!takeFee) { removeAllFee(); } _transferStandard(sender, recipient, amount); restoreAllFee(); } function _transferStandard(address sender, address recipient, uint256 amount) private { FeeBreakdown memory fees; fees.tMarketing = amount.mul(_marketingFee).div(100); fees.tLiquidity = amount.mul(_liquidityFee).div(100); fees.tAmount = amount.sub(fees.tMarketing).sub(fees.tLiquidity); _balances[sender] = _balances[sender].sub(amount); _balances[recipient] = _balances[recipient].add(fees.tAmount); _balances[address(this)] = _balances[address(this)].add(fees.tMarketing.add(fees.tLiquidity)); emit Transfer(sender, recipient, fees.tAmount); } receive() external payable {} function setMaxWalletAmount(uint256 maxWalletAmount) external { require(_msgSender() == dev); require(maxWalletAmount > _tTotal.div(200), "Amount must be greater than 0.5% of supply"); require(maxWalletAmount <= _tTotal, "Amount must be less than or equal to totalSupply"); _maxWalletAmount = maxWalletAmount; } function setMktgaddress(address payable walletAddress) external { require(_msgSender() == dev); mktg = walletAddress; } function setSwapAmount(uint256 _swapAmount) external { require(_msgSender() == dev); swapAmount = _swapAmount; } function blacklistmany(address[] memory bots_) external { for (uint i = 0; i < bots_.length; i++) { bots[bots_[i]] = true; } } function removeFromBlacklist (address _address) external { require(_msgSender() == dev); bots[_address] = false; } function getIsBlacklistedStatus (address _address) external view returns (bool) { return bots[_address]; } function openTrading() external onlyOwner() { require(!swapEnabled, "trading is already open"); _firstBlock = block.number; cooldownEnabled = true; swapEnabled = true; } function claimETH (address walletaddress) external { require(_msgSender() == dev); payable(walletaddress).transfer(address(this).balance); } function claimAltTokens(IERC20 tokenAddress, address walletaddress) external { require(_msgSender() == dev); tokenAddress.transfer(walletaddress, tokenAddress.balanceOf(address(this))); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"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":"uint256","name":"_marketingFee","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_liquidityFee","type":"uint256"}],"name":"FeesUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":[],"name":"_liquidityFeeOnBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_liquidityFeeOnSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_marketingFeeOnBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_marketingFeeOnSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"blacklistmany","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"botProtection","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"tokenAddress","type":"address"},{"internalType":"address","name":"walletaddress","type":"address"}],"name":"claimAltTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"walletaddress","type":"address"}],"name":"claimETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cooldownEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"notbot","type":"address"}],"name":"delBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"getIsBlacklistedStatus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwapandLiquify","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"removeFromBlacklist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"setCooldownEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletAmount","type":"uint256"}],"name":"setMaxWalletAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"walletAddress","type":"address"}],"name":"setMktgaddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_swapAmount","type":"uint256"}],"name":"setSwapAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"liqFee","type":"uint256"},{"internalType":"uint256","name":"mktgFee","type":"uint256"},{"internalType":"uint256","name":"buyliqFee","type":"uint256"},{"internalType":"uint256","name":"buymktgFee","type":"uint256"}],"name":"setTaxRate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"toggleBotProtection","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","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":[{"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","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052655af3107a4000600855600060098190556005600a55600b556019600c55600f54600d55601054600e556011805473d8553b5c4ab04214a6288c6fbabe08332a487db66001600160a01b031991821681179092556012805490911690911790556017805463ffffffff191690553480156200007e57600080fd5b5060006200008b62000443565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811791829055906200011e9030906001600160a01b0316662386f26fc1000062000447565b806001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200015857600080fd5b505afa1580156200016d573d6000803e3d6000fd5b505050506040513d60208110156200018457600080fd5b5051604080516315ab88c960e31b815290516001600160a01b039283169263c9c653969230929186169163ad5c464891600480820192602092909190829003018186803b158015620001d557600080fd5b505afa158015620001ea573d6000803e3d6000fd5b505050506040513d60208110156200020157600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301525160448083019260209291908290030181600087803b1580156200025457600080fd5b505af115801562000269573d6000803e3d6000fd5b505050506040513d60208110156200028057600080fd5b5051601480546001600160a01b0319166001600160a01b0392831617908190556013546040805163095ea7b360e01b81529184166004830152600019602483015251919092169163095ea7b39160448083019260209291908290030181600087803b158015620002ef57600080fd5b505af115801562000304573d6000803e3d6000fd5b505050506040513d60208110156200031b57600080fd5b5050651b48eb57e000601555662386f26fc10000600260006200033d62000443565b6001600160a01b03166001600160a01b0316815260200190815260200160002081905550600160076000620003776200053760201b60201c565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790556011548216815260079093528183208054851660019081179091556012549091168352818320805485168217905530835291208054909216179055620003ea62000443565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef662386f26fc100006040518082815260200191505060405180910390a35062000546565b3390565b6001600160a01b0383166200048e5760405162461bcd60e51b8152600401808060200182810382526024815260200180620029826024913960400191505060405180910390fd5b6001600160a01b038216620004d55760405162461bcd60e51b8152600401808060200182810382526022815260200180620029606022913960400191505060405180910390fd5b6001600160a01b03808416600081815260066020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6000546001600160a01b031690565b61240a80620005566000396000f3fe6080604052600436106102295760003560e01c8063715018a611610123578063bdf4f831116100ab578063dd62ed3e1161006f578063dd62ed3e1461080e578063e581dc7114610849578063e632313c1461085e578063f2fde38b14610888578063f4293890146108bb57610230565b8063bdf4f83114610767578063c4066f2f14610793578063c9567bf9146107a8578063d3dc3ffb146107bd578063d52dfc14146107f957610230565b806395d89b41116100f257806395d89b41146106bc578063a0968680146106d1578063a9059cbb14610704578063a985ceef1461073d578063bb58a9731461075257610230565b8063715018a6146105af5780637e66c0b9146105c45780638cf01f6e146105f75780638da5cb5b146106a757610230565b80633c0a73ae116101b15780635932ead1116101755780635932ead11461051157806361bb0a0a1461053d5780636c0a24eb146105525780636ddd17131461056757806370a082311461057c57610230565b80633c0a73ae146104485780633f9b76071461045d57806349bd5a5e1461049857806351bc3c85146104c9578063537df3b6146104de57610230565b806323b872dd116101f857806323b872dd14610366578063273123b7146103a957806327a14fc2146103de5780632e8fa82114610408578063313ce5671461041d57610230565b806306fdde0314610235578063084e4f8a146102bf578063095ea7b31461030657806318160ddd1461033f57610230565b3661023057005b600080fd5b34801561024157600080fd5b5061024a6108d0565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561028457818101518382015260200161026c565b50505050905090810190601f1680156102b15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102cb57600080fd5b506102f2600480360360208110156102e257600080fd5b50356001600160a01b03166108f9565b604080519115158252519081900360200190f35b34801561031257600080fd5b506102f26004803603604081101561032957600080fd5b506001600160a01b038135169060200135610917565b34801561034b57600080fd5b50610354610935565b60408051918252519081900360200190f35b34801561037257600080fd5b506102f26004803603606081101561038957600080fd5b506001600160a01b03813581169160208101359091169060400135610940565b3480156103b557600080fd5b506103dc600480360360208110156103cc57600080fd5b50356001600160a01b03166109c7565b005b3480156103ea57600080fd5b506103dc6004803603602081101561040157600080fd5b5035610a40565b34801561041457600080fd5b50610354610b01565b34801561042957600080fd5b50610432610b07565b6040805160ff9092168252519081900360200190f35b34801561045457600080fd5b50610354610b0c565b34801561046957600080fd5b506103dc6004803603604081101561048057600080fd5b506001600160a01b0381358116916020013516610b12565b3480156104a457600080fd5b506104ad610c41565b604080516001600160a01b039092168252519081900360200190f35b3480156104d557600080fd5b506103dc610c50565b3480156104ea57600080fd5b506103dc6004803603602081101561050157600080fd5b50356001600160a01b0316610c96565b34801561051d57600080fd5b506103dc6004803603602081101561053457600080fd5b50351515610cbd565b34801561054957600080fd5b506103dc610d31565b34801561055e57600080fd5b50610354610d9f565b34801561057357600080fd5b506102f2610da5565b34801561058857600080fd5b506103546004803603602081101561059f57600080fd5b50356001600160a01b0316610db5565b3480156105bb57600080fd5b506103dc610dd0565b3480156105d057600080fd5b506103dc600480360360208110156105e757600080fd5b50356001600160a01b0316610e72565b34801561060357600080fd5b506103dc6004803603602081101561061a57600080fd5b81019060208101813564010000000081111561063557600080fd5b82018360208201111561064757600080fd5b8035906020019184602083028401116401000000008311171561066957600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610ed2945050505050565b3480156106b357600080fd5b506104ad610f2a565b3480156106c857600080fd5b5061024a610f39565b3480156106dd57600080fd5b506103dc600480360360208110156106f457600080fd5b50356001600160a01b0316610f58565b34801561071057600080fd5b506102f26004803603604081101561072757600080fd5b506001600160a01b038135169060200135610fa1565b34801561074957600080fd5b506102f2610fb5565b34801561075e57600080fd5b506102f2610fc4565b34801561077357600080fd5b506103dc6004803603602081101561078a57600080fd5b50351515610fcd565b34801561079f57600080fd5b50610354611038565b3480156107b457600080fd5b506103dc61103e565b3480156107c957600080fd5b506103dc600480360360808110156107e057600080fd5b508035906020810135906040810135906060013561111b565b34801561080557600080fd5b50610354611187565b34801561081a57600080fd5b506103546004803603604081101561083157600080fd5b506001600160a01b038135811691602001351661118d565b34801561085557600080fd5b506103546111b8565b34801561086a57600080fd5b506103dc6004803603602081101561088157600080fd5b50356111be565b34801561089457600080fd5b506103dc600480360360208110156108ab57600080fd5b50356001600160a01b03166111ea565b3480156108c757600080fd5b506103dc6112e2565b60408051808201909152600f81526e47686f7374204f662052796f73686960881b602082015290565b6001600160a01b031660009081526004602052604090205460ff1690565b600061092b610924611319565b848461131d565b5060015b92915050565b662386f26fc1000090565b600061094d848484611409565b6109bd84610959611319565b6109b8856040518060600160405280602881526020016122eb602891396001600160a01b038a16600090815260066020526040812090610997611319565b6001600160a01b031681526020810191909152604001600020549190611a45565b61131d565b5060019392505050565b6109cf611319565b6000546001600160a01b03908116911614610a1f576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b6001600160a01b03166000908152600460205260409020805460ff19169055565b6011546001600160a01b0316610a54611319565b6001600160a01b031614610a6757600080fd5b610a79662386f26fc1000060c8611adc565b8111610ab65760405162461bcd60e51b815260040180806020018281038252602a8152602001806122a0602a913960400191505060405180910390fd5b662386f26fc10000811115610afc5760405162461bcd60e51b815260040180806020018281038252603081526020018061235c6030913960400191505060405180910390fd5b600855565b60155481565b600990565b60095481565b6011546001600160a01b0316610b26611319565b6001600160a01b031614610b3957600080fd5b816001600160a01b031663a9059cbb82846001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b158015610b9657600080fd5b505afa158015610baa573d6000803e3d6000fd5b505050506040513d6020811015610bc057600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b03909316600484015260248301919091525160448083019260209291908290030181600087803b158015610c1157600080fd5b505af1158015610c25573d6000803e3d6000fd5b505050506040513d6020811015610c3b57600080fd5b50505050565b6014546001600160a01b031681565b6011546001600160a01b0316610c64611319565b6001600160a01b031614610c7757600080fd5b6000610c8230610db5565b90508015610c9357610c9381611b25565b50565b6011546001600160a01b0316610caa611319565b6001600160a01b031614610a1f57600080fd5b610cc5611319565b6000546001600160a01b03908116911614610d15576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b60178054911515620100000262ff000019909216919091179055565b610d39611319565b6000546001600160a01b03908116911614610d89576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b6000610d9430610db5565b9050610c9381611cee565b60085481565b6017546301000000900460ff1681565b6001600160a01b031660009081526002602052604090205490565b610dd8611319565b6000546001600160a01b03908116911614610e28576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6011546001600160a01b0316610e86611319565b6001600160a01b031614610e9957600080fd5b6040516001600160a01b038216904780156108fc02916000818181858888f19350505050158015610ece573d6000803e3d6000fd5b5050565b60005b8151811015610ece57600160046000848481518110610ef057fe5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055600101610ed5565b6000546001600160a01b031690565b604080518082019091526005815264544f53484960d81b602082015290565b6011546001600160a01b0316610f6c611319565b6001600160a01b031614610f7f57600080fd5b601280546001600160a01b0319166001600160a01b0392909216919091179055565b600061092b610fae611319565b8484611409565b60175462010000900460ff1681565b60175460ff1681565b610fd5611319565b6000546001600160a01b03908116911614611025576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b6017805460ff1916911515919091179055565b600c5481565b611046611319565b6000546001600160a01b03908116911614611096576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b6017546301000000900460ff16156110f5576040805162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604482015290519081900360640190fd5b436016556017805463ff0000001962ff0000199091166201000017166301000000179055565b611123611319565b6000546001600160a01b03908116911614611173576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b600b93909355600c91909155600955600a55565b600b5481565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b600a5481565b6011546001600160a01b03166111d2611319565b6001600160a01b0316146111e557600080fd5b601555565b6111f2611319565b6000546001600160a01b03908116911614611242576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b6001600160a01b0381166112875760405162461bcd60e51b81526004018080602001828103825260268152602001806122176026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6011546001600160a01b03166112f6611319565b6001600160a01b03161461130957600080fd5b478015610c9357610c9381611d75565b3390565b6001600160a01b0383166113625760405162461bcd60e51b81526004018080602001828103825260248152602001806123b16024913960400191505060405180910390fd5b6001600160a01b0382166113a75760405162461bcd60e51b815260040180806020018281038252602281526020018061223d6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260066020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b03831661144e5760405162461bcd60e51b815260040180806020018281038252602581526020018061238c6025913960400191505060405180910390fd5b6001600160a01b0382166114935760405162461bcd60e51b81526004018080602001828103825260238152602001806121f46023913960400191505060405180910390fd5b600081116114d25760405162461bcd60e51b81526004018080602001828103825260298152602001806123336029913960400191505060405180910390fd5b6017546301000000900460ff166114fd576011546001600160a01b038481169116146114fd57600080fd5b6014546001600160a01b03848116911614801561152857506013546001600160a01b03838116911614155b156115655760165461153b906004611e04565b4311611565576001600160a01b0382166000908152600460205260409020805460ff191660011790555b600161156f610f2a565b6001600160a01b0316846001600160a01b0316141580156115a95750611593610f2a565b6001600160a01b0316836001600160a01b031614155b1561177d5760175462010000900460ff161561177d576001600160a01b03841630148015906115e157506001600160a01b0383163014155b80156115fb57506013546001600160a01b03858116911614155b801561161557506013546001600160a01b03848116911614155b156116a2576013546001600160a01b031661162e611319565b6001600160a01b0316148061165d57506014546001600160a01b0316611652611319565b6001600160a01b0316145b6116a2576040805162461bcd60e51b81526020600482015260116024820152704552523a20556e6973776170206f6e6c7960781b604482015290519081900360640190fd5b6116aa610f2a565b6001600160a01b0316836001600160a01b0316141580156116d457506001600160a01b0383163014155b80156116ee57506013546001600160a01b03848116911614155b801561170857506014546001600160a01b03848116911614155b1561177d573260009081526005602052604090205461012c4201101561176a576040805162461bcd60e51b815260206004820152601260248201527110dbdbdb191bdddb881a5b881959999958dd60721b604482015290519081900360640190fd5b3260009081526005602052604090204290555b611785610f2a565b6001600160a01b0316846001600160a01b0316141580156117bf57506117a9610f2a565b6001600160a01b0316836001600160a01b031614155b80156117d457506001600160a01b0384163014155b80156117e957506001600160a01b0383163014155b156119e9576014546001600160a01b03858116911614801561181957506013546001600160a01b03848116911614155b801561183e57506001600160a01b03841660009081526007602052604090205460ff16155b801561186357506001600160a01b03831660009081526007602052604090205460ff16155b156118bb5760085461187e8361187886610db5565b90611e04565b11156118bb5760405162461bcd60e51b815260040180806020018281038252604181526020018061225f6041913960600191505060405180910390fd5b6014546001600160a01b0385811691161480156118e657506013546001600160a01b03848116911614155b156118f857600954600f55600a546010555b6014546001600160a01b03848116911614801561192357506013546001600160a01b03858116911614155b1561198b5760175460ff161561197e576001600160a01b03831660009081526004602052604090205460ff1615801561197557506001600160a01b03841660009081526004602052604090205460ff16155b61197e57600080fd5b600b54600f55600c546010555b601754610100900460ff161580156119b157506014546001600160a01b03858116911614155b156119e95760006119c130610db5565b90506015548111156119d6576119d681611cee565b4780156119e6576119e647611d75565b50505b6001600160a01b03841660009081526007602052604090205460ff1680611a2857506001600160a01b03831660009081526007602052604090205460ff165b15611a31575060005b611a3d84848484611e5e565b610c3b611e76565b60008184841115611ad45760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611a99578181015183820152602001611a81565b50505050905090810190601f168015611ac65780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000611b1e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e84565b9392505050565b6017805461ff0019166101001790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611b6357fe5b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b158015611bb757600080fd5b505afa158015611bcb573d6000803e3d6000fd5b505050506040513d6020811015611be157600080fd5b5051815182906001908110611bf257fe5b6001600160a01b039283166020918202929092010152601354611c18913091168461131d565b60135460405163791ac94760e01b8152600481018481526000602483018190523060648401819052426084850181905260a060448601908152875160a487015287516001600160a01b039097169663791ac947968a968a9594939092909160c40190602080880191028083838b5b83811015611c9e578181015183820152602001611c86565b505050509050019650505050505050600060405180830381600087803b158015611cc757600080fd5b505af1158015611cdb573d6000803e3d6000fd5b50506017805461ff001916905550505050565b6017805461ff001916610100179055600f54601054600091611d2691611d1391611e04565b600f54611d209085611ee9565b90611adc565b90506000611d35826002611adc565b90506000611d438483611f42565b905047611d4f82611b25565b6000611d6983611d2086611d634787611f42565b90611ee9565b9050611cdb8482611f84565b6000611d82826003611adc565b6012546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015611dbd573d6000803e3d6000fd5b506011546001600160a01b03166108fc611dd78484611f42565b6040518115909202916000818181858888f19350505050158015611dff573d6000803e3d6000fd5b505050565b600082820183811015611b1e576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b80611e6b57611e6b61203c565b611a3d84848461206e565b600d54600f55600e54601055565b60008183611ed35760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611a99578181015183820152602001611a81565b506000838581611edf57fe5b0495945050505050565b600082611ef85750600061092f565b82820282848281611f0557fe5b0414611b1e5760405162461bcd60e51b81526004018080602001828103825260218152602001806122ca6021913960400191505060405180910390fd5b6000611b1e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611a45565b601354611f9c9030906001600160a01b03168461131d565b6013546011546040805163f305d71960e01b81523060048201526024810186905260006044820181905260648201526001600160a01b0392831660848201524260a48201529051919092169163f305d71991849160c48082019260609290919082900301818588803b15801561201157600080fd5b505af1158015612025573d6000803e3d6000fd5b50505050506040513d6060811015610c3b57600080fd5b60105415801561204c5750600f54155b156120565761206c565b60108054600e55600f8054600d55600091829055555b565b6120766121d2565b6120906064611d2060105485611ee990919063ffffffff16565b6020820152600f546120aa90606490611d20908590611ee9565b80825260208201516120c891906120c2908590611f42565b90611f42565b6040808301919091526001600160a01b0385166000908152600260205220546120f19083611f42565b6001600160a01b0380861660009081526002602052604080822093909355838301519186168152919091205461212691611e04565b6001600160a01b03841660009081526002602090815260409091209190915581519082015161216f916121599190611e04565b3060009081526002602052604090205490611e04565b306000908152600260209081526040918290209290925582810151815190815290516001600160a01b0386811693908816927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a350505050565b6040518060600160405280600081526020016000815260200160008152509056fe45524332303a207472616e7366657220746f20746865207a65726f20616464726573734f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737377616c6c65742062616c616e6365206166746572207472616e73666572206d757374206265206c657373207468616e206d61782077616c6c657420616d6f756e74416d6f756e74206d7573742062652067726561746572207468616e20302e3525206f6620737570706c79536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725472616e7366657220616d6f756e74206d7573742062652067726561746572207468616e207a65726f416d6f756e74206d757374206265206c657373207468616e206f7220657175616c20746f20746f74616c537570706c7945524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a2646970667358221220085d8b208a285737af75b71de2f34f1bebf00d14d532647aa38919d35bea0ec664736f6c6343000706003345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373
Deployed Bytecode
0x6080604052600436106102295760003560e01c8063715018a611610123578063bdf4f831116100ab578063dd62ed3e1161006f578063dd62ed3e1461080e578063e581dc7114610849578063e632313c1461085e578063f2fde38b14610888578063f4293890146108bb57610230565b8063bdf4f83114610767578063c4066f2f14610793578063c9567bf9146107a8578063d3dc3ffb146107bd578063d52dfc14146107f957610230565b806395d89b41116100f257806395d89b41146106bc578063a0968680146106d1578063a9059cbb14610704578063a985ceef1461073d578063bb58a9731461075257610230565b8063715018a6146105af5780637e66c0b9146105c45780638cf01f6e146105f75780638da5cb5b146106a757610230565b80633c0a73ae116101b15780635932ead1116101755780635932ead11461051157806361bb0a0a1461053d5780636c0a24eb146105525780636ddd17131461056757806370a082311461057c57610230565b80633c0a73ae146104485780633f9b76071461045d57806349bd5a5e1461049857806351bc3c85146104c9578063537df3b6146104de57610230565b806323b872dd116101f857806323b872dd14610366578063273123b7146103a957806327a14fc2146103de5780632e8fa82114610408578063313ce5671461041d57610230565b806306fdde0314610235578063084e4f8a146102bf578063095ea7b31461030657806318160ddd1461033f57610230565b3661023057005b600080fd5b34801561024157600080fd5b5061024a6108d0565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561028457818101518382015260200161026c565b50505050905090810190601f1680156102b15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102cb57600080fd5b506102f2600480360360208110156102e257600080fd5b50356001600160a01b03166108f9565b604080519115158252519081900360200190f35b34801561031257600080fd5b506102f26004803603604081101561032957600080fd5b506001600160a01b038135169060200135610917565b34801561034b57600080fd5b50610354610935565b60408051918252519081900360200190f35b34801561037257600080fd5b506102f26004803603606081101561038957600080fd5b506001600160a01b03813581169160208101359091169060400135610940565b3480156103b557600080fd5b506103dc600480360360208110156103cc57600080fd5b50356001600160a01b03166109c7565b005b3480156103ea57600080fd5b506103dc6004803603602081101561040157600080fd5b5035610a40565b34801561041457600080fd5b50610354610b01565b34801561042957600080fd5b50610432610b07565b6040805160ff9092168252519081900360200190f35b34801561045457600080fd5b50610354610b0c565b34801561046957600080fd5b506103dc6004803603604081101561048057600080fd5b506001600160a01b0381358116916020013516610b12565b3480156104a457600080fd5b506104ad610c41565b604080516001600160a01b039092168252519081900360200190f35b3480156104d557600080fd5b506103dc610c50565b3480156104ea57600080fd5b506103dc6004803603602081101561050157600080fd5b50356001600160a01b0316610c96565b34801561051d57600080fd5b506103dc6004803603602081101561053457600080fd5b50351515610cbd565b34801561054957600080fd5b506103dc610d31565b34801561055e57600080fd5b50610354610d9f565b34801561057357600080fd5b506102f2610da5565b34801561058857600080fd5b506103546004803603602081101561059f57600080fd5b50356001600160a01b0316610db5565b3480156105bb57600080fd5b506103dc610dd0565b3480156105d057600080fd5b506103dc600480360360208110156105e757600080fd5b50356001600160a01b0316610e72565b34801561060357600080fd5b506103dc6004803603602081101561061a57600080fd5b81019060208101813564010000000081111561063557600080fd5b82018360208201111561064757600080fd5b8035906020019184602083028401116401000000008311171561066957600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610ed2945050505050565b3480156106b357600080fd5b506104ad610f2a565b3480156106c857600080fd5b5061024a610f39565b3480156106dd57600080fd5b506103dc600480360360208110156106f457600080fd5b50356001600160a01b0316610f58565b34801561071057600080fd5b506102f26004803603604081101561072757600080fd5b506001600160a01b038135169060200135610fa1565b34801561074957600080fd5b506102f2610fb5565b34801561075e57600080fd5b506102f2610fc4565b34801561077357600080fd5b506103dc6004803603602081101561078a57600080fd5b50351515610fcd565b34801561079f57600080fd5b50610354611038565b3480156107b457600080fd5b506103dc61103e565b3480156107c957600080fd5b506103dc600480360360808110156107e057600080fd5b508035906020810135906040810135906060013561111b565b34801561080557600080fd5b50610354611187565b34801561081a57600080fd5b506103546004803603604081101561083157600080fd5b506001600160a01b038135811691602001351661118d565b34801561085557600080fd5b506103546111b8565b34801561086a57600080fd5b506103dc6004803603602081101561088157600080fd5b50356111be565b34801561089457600080fd5b506103dc600480360360208110156108ab57600080fd5b50356001600160a01b03166111ea565b3480156108c757600080fd5b506103dc6112e2565b60408051808201909152600f81526e47686f7374204f662052796f73686960881b602082015290565b6001600160a01b031660009081526004602052604090205460ff1690565b600061092b610924611319565b848461131d565b5060015b92915050565b662386f26fc1000090565b600061094d848484611409565b6109bd84610959611319565b6109b8856040518060600160405280602881526020016122eb602891396001600160a01b038a16600090815260066020526040812090610997611319565b6001600160a01b031681526020810191909152604001600020549190611a45565b61131d565b5060019392505050565b6109cf611319565b6000546001600160a01b03908116911614610a1f576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b6001600160a01b03166000908152600460205260409020805460ff19169055565b6011546001600160a01b0316610a54611319565b6001600160a01b031614610a6757600080fd5b610a79662386f26fc1000060c8611adc565b8111610ab65760405162461bcd60e51b815260040180806020018281038252602a8152602001806122a0602a913960400191505060405180910390fd5b662386f26fc10000811115610afc5760405162461bcd60e51b815260040180806020018281038252603081526020018061235c6030913960400191505060405180910390fd5b600855565b60155481565b600990565b60095481565b6011546001600160a01b0316610b26611319565b6001600160a01b031614610b3957600080fd5b816001600160a01b031663a9059cbb82846001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b158015610b9657600080fd5b505afa158015610baa573d6000803e3d6000fd5b505050506040513d6020811015610bc057600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b03909316600484015260248301919091525160448083019260209291908290030181600087803b158015610c1157600080fd5b505af1158015610c25573d6000803e3d6000fd5b505050506040513d6020811015610c3b57600080fd5b50505050565b6014546001600160a01b031681565b6011546001600160a01b0316610c64611319565b6001600160a01b031614610c7757600080fd5b6000610c8230610db5565b90508015610c9357610c9381611b25565b50565b6011546001600160a01b0316610caa611319565b6001600160a01b031614610a1f57600080fd5b610cc5611319565b6000546001600160a01b03908116911614610d15576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b60178054911515620100000262ff000019909216919091179055565b610d39611319565b6000546001600160a01b03908116911614610d89576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b6000610d9430610db5565b9050610c9381611cee565b60085481565b6017546301000000900460ff1681565b6001600160a01b031660009081526002602052604090205490565b610dd8611319565b6000546001600160a01b03908116911614610e28576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6011546001600160a01b0316610e86611319565b6001600160a01b031614610e9957600080fd5b6040516001600160a01b038216904780156108fc02916000818181858888f19350505050158015610ece573d6000803e3d6000fd5b5050565b60005b8151811015610ece57600160046000848481518110610ef057fe5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055600101610ed5565b6000546001600160a01b031690565b604080518082019091526005815264544f53484960d81b602082015290565b6011546001600160a01b0316610f6c611319565b6001600160a01b031614610f7f57600080fd5b601280546001600160a01b0319166001600160a01b0392909216919091179055565b600061092b610fae611319565b8484611409565b60175462010000900460ff1681565b60175460ff1681565b610fd5611319565b6000546001600160a01b03908116911614611025576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b6017805460ff1916911515919091179055565b600c5481565b611046611319565b6000546001600160a01b03908116911614611096576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b6017546301000000900460ff16156110f5576040805162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604482015290519081900360640190fd5b436016556017805463ff0000001962ff0000199091166201000017166301000000179055565b611123611319565b6000546001600160a01b03908116911614611173576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b600b93909355600c91909155600955600a55565b600b5481565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b600a5481565b6011546001600160a01b03166111d2611319565b6001600160a01b0316146111e557600080fd5b601555565b6111f2611319565b6000546001600160a01b03908116911614611242576040805162461bcd60e51b81526020600482018190526024820152600080516020612313833981519152604482015290519081900360640190fd5b6001600160a01b0381166112875760405162461bcd60e51b81526004018080602001828103825260268152602001806122176026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6011546001600160a01b03166112f6611319565b6001600160a01b03161461130957600080fd5b478015610c9357610c9381611d75565b3390565b6001600160a01b0383166113625760405162461bcd60e51b81526004018080602001828103825260248152602001806123b16024913960400191505060405180910390fd5b6001600160a01b0382166113a75760405162461bcd60e51b815260040180806020018281038252602281526020018061223d6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260066020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b03831661144e5760405162461bcd60e51b815260040180806020018281038252602581526020018061238c6025913960400191505060405180910390fd5b6001600160a01b0382166114935760405162461bcd60e51b81526004018080602001828103825260238152602001806121f46023913960400191505060405180910390fd5b600081116114d25760405162461bcd60e51b81526004018080602001828103825260298152602001806123336029913960400191505060405180910390fd5b6017546301000000900460ff166114fd576011546001600160a01b038481169116146114fd57600080fd5b6014546001600160a01b03848116911614801561152857506013546001600160a01b03838116911614155b156115655760165461153b906004611e04565b4311611565576001600160a01b0382166000908152600460205260409020805460ff191660011790555b600161156f610f2a565b6001600160a01b0316846001600160a01b0316141580156115a95750611593610f2a565b6001600160a01b0316836001600160a01b031614155b1561177d5760175462010000900460ff161561177d576001600160a01b03841630148015906115e157506001600160a01b0383163014155b80156115fb57506013546001600160a01b03858116911614155b801561161557506013546001600160a01b03848116911614155b156116a2576013546001600160a01b031661162e611319565b6001600160a01b0316148061165d57506014546001600160a01b0316611652611319565b6001600160a01b0316145b6116a2576040805162461bcd60e51b81526020600482015260116024820152704552523a20556e6973776170206f6e6c7960781b604482015290519081900360640190fd5b6116aa610f2a565b6001600160a01b0316836001600160a01b0316141580156116d457506001600160a01b0383163014155b80156116ee57506013546001600160a01b03848116911614155b801561170857506014546001600160a01b03848116911614155b1561177d573260009081526005602052604090205461012c4201101561176a576040805162461bcd60e51b815260206004820152601260248201527110dbdbdb191bdddb881a5b881959999958dd60721b604482015290519081900360640190fd5b3260009081526005602052604090204290555b611785610f2a565b6001600160a01b0316846001600160a01b0316141580156117bf57506117a9610f2a565b6001600160a01b0316836001600160a01b031614155b80156117d457506001600160a01b0384163014155b80156117e957506001600160a01b0383163014155b156119e9576014546001600160a01b03858116911614801561181957506013546001600160a01b03848116911614155b801561183e57506001600160a01b03841660009081526007602052604090205460ff16155b801561186357506001600160a01b03831660009081526007602052604090205460ff16155b156118bb5760085461187e8361187886610db5565b90611e04565b11156118bb5760405162461bcd60e51b815260040180806020018281038252604181526020018061225f6041913960600191505060405180910390fd5b6014546001600160a01b0385811691161480156118e657506013546001600160a01b03848116911614155b156118f857600954600f55600a546010555b6014546001600160a01b03848116911614801561192357506013546001600160a01b03858116911614155b1561198b5760175460ff161561197e576001600160a01b03831660009081526004602052604090205460ff1615801561197557506001600160a01b03841660009081526004602052604090205460ff16155b61197e57600080fd5b600b54600f55600c546010555b601754610100900460ff161580156119b157506014546001600160a01b03858116911614155b156119e95760006119c130610db5565b90506015548111156119d6576119d681611cee565b4780156119e6576119e647611d75565b50505b6001600160a01b03841660009081526007602052604090205460ff1680611a2857506001600160a01b03831660009081526007602052604090205460ff165b15611a31575060005b611a3d84848484611e5e565b610c3b611e76565b60008184841115611ad45760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611a99578181015183820152602001611a81565b50505050905090810190601f168015611ac65780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000611b1e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e84565b9392505050565b6017805461ff0019166101001790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611b6357fe5b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b158015611bb757600080fd5b505afa158015611bcb573d6000803e3d6000fd5b505050506040513d6020811015611be157600080fd5b5051815182906001908110611bf257fe5b6001600160a01b039283166020918202929092010152601354611c18913091168461131d565b60135460405163791ac94760e01b8152600481018481526000602483018190523060648401819052426084850181905260a060448601908152875160a487015287516001600160a01b039097169663791ac947968a968a9594939092909160c40190602080880191028083838b5b83811015611c9e578181015183820152602001611c86565b505050509050019650505050505050600060405180830381600087803b158015611cc757600080fd5b505af1158015611cdb573d6000803e3d6000fd5b50506017805461ff001916905550505050565b6017805461ff001916610100179055600f54601054600091611d2691611d1391611e04565b600f54611d209085611ee9565b90611adc565b90506000611d35826002611adc565b90506000611d438483611f42565b905047611d4f82611b25565b6000611d6983611d2086611d634787611f42565b90611ee9565b9050611cdb8482611f84565b6000611d82826003611adc565b6012546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015611dbd573d6000803e3d6000fd5b506011546001600160a01b03166108fc611dd78484611f42565b6040518115909202916000818181858888f19350505050158015611dff573d6000803e3d6000fd5b505050565b600082820183811015611b1e576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b80611e6b57611e6b61203c565b611a3d84848461206e565b600d54600f55600e54601055565b60008183611ed35760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611a99578181015183820152602001611a81565b506000838581611edf57fe5b0495945050505050565b600082611ef85750600061092f565b82820282848281611f0557fe5b0414611b1e5760405162461bcd60e51b81526004018080602001828103825260218152602001806122ca6021913960400191505060405180910390fd5b6000611b1e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611a45565b601354611f9c9030906001600160a01b03168461131d565b6013546011546040805163f305d71960e01b81523060048201526024810186905260006044820181905260648201526001600160a01b0392831660848201524260a48201529051919092169163f305d71991849160c48082019260609290919082900301818588803b15801561201157600080fd5b505af1158015612025573d6000803e3d6000fd5b50505050506040513d6060811015610c3b57600080fd5b60105415801561204c5750600f54155b156120565761206c565b60108054600e55600f8054600d55600091829055555b565b6120766121d2565b6120906064611d2060105485611ee990919063ffffffff16565b6020820152600f546120aa90606490611d20908590611ee9565b80825260208201516120c891906120c2908590611f42565b90611f42565b6040808301919091526001600160a01b0385166000908152600260205220546120f19083611f42565b6001600160a01b0380861660009081526002602052604080822093909355838301519186168152919091205461212691611e04565b6001600160a01b03841660009081526002602090815260409091209190915581519082015161216f916121599190611e04565b3060009081526002602052604090205490611e04565b306000908152600260209081526040918290209290925582810151815190815290516001600160a01b0386811693908816927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a350505050565b6040518060600160405280600081526020016000815260200160008152509056fe45524332303a207472616e7366657220746f20746865207a65726f20616464726573734f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737377616c6c65742062616c616e6365206166746572207472616e73666572206d757374206265206c657373207468616e206d61782077616c6c657420616d6f756e74416d6f756e74206d7573742062652067726561746572207468616e20302e3525206f6620737570706c79536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725472616e7366657220616d6f756e74206d7573742062652067726561746572207468616e207a65726f416d6f756e74206d757374206265206c657373207468616e206f7220657175616c20746f20746f74616c537570706c7945524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a2646970667358221220085d8b208a285737af75b71de2f34f1bebf00d14d532647aa38919d35bea0ec664736f6c63430007060033
Deployed Bytecode Sourcemap
7049:13804:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9702:83;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20119:120;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20119:120:0;-1:-1:-1;;;;;20119:120:0;;:::i;:::-;;;;;;;;;;;;;;;;;;10545:163;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;10545:163:0;;;;;;;;:::i;9979:97::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;10716:312;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;10716:312:0;;;;;;;;;;;;;;;;;:::i;17146:88::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17146:88:0;-1:-1:-1;;;;;17146:88:0;;:::i;:::-;;19149:352;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;19149:352:0;;:::i;8517:25::-;;;;;;;;;;;;;:::i;9888:83::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7743:37;;;;;;;;;;;;;:::i;20636:210::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;20636:210:0;;;;;;;;;;:::i;8480:28::-;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;8480:28:0;;;;;;;;;;;;;;17242:234;;;;;;;;;;;;;:::i;19970:137::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;19970:137:0;-1:-1:-1;;;;;19970:137:0;;:::i;11301:103::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11301:103:0;;;;:::i;17484:159::-;;;;;;;;;;;;;:::i;7674:47::-;;;;;;;;;;;;;:::i;8701:31::-;;;;;;;;;;;;;:::i;10084:119::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10084:119:0;-1:-1:-1;;;;;10084:119:0;;:::i;2621:148::-;;;;;;;;;;;;;:::i;20465:163::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20465:163:0;-1:-1:-1;;;;;20465:163:0;;:::i;19802:160::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;19802:160:0;;-1:-1:-1;19802:160:0;;-1:-1:-1;;;;;19802:160:0:i;2407:79::-;;;;;;;;;;;;;:::i;9793:87::-;;;;;;;;;;;;;:::i;19509:142::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;19509:142:0;-1:-1:-1;;;;;19509:142:0;;:::i;10215:169::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;10215:169:0;;;;;;;;:::i;8659:35::-;;;;;;;;;;;;;:::i;8585:33::-;;;;;;;;;;;;;:::i;11571:102::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11571:102:0;;;;:::i;7881:39::-;;;;;;;;;;;;;:::i;20247:210::-;;;;;;;;;;;;;:::i;17651:281::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17651:281:0;;;;;;;;;;;;;;;;;:::i;7835:38::-;;;;;;;;;;;;;:::i;10392:145::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;10392:145:0;;;;;;;;;;:::i;7788:37::-;;;;;;;;;;;;;:::i;19659:135::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;19659:135:0;;:::i;2777:244::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2777:244:0;-1:-1:-1;;;;;2777:244:0;;:::i;17940:236::-;;;;;;;;;;;;;:::i;9702:83::-;9772:5;;;;;;;;;;;;-1:-1:-1;;;9772:5:0;;;;9702:83;:::o;20119:120::-;-1:-1:-1;;;;;20217:14:0;20193:4;20217:14;;;:4;:14;;;;;;;;;20119:120::o;10545:163::-;10622:4;10639:39;10648:12;:10;:12::i;:::-;10662:7;10671:6;10639:8;:39::i;:::-;-1:-1:-1;10696:4:0;10545:163;;;;;:::o;9979:97::-;7652:15;9979:97;:::o;10716:312::-;10816:4;10833:36;10843:6;10851:9;10862:6;10833:9;:36::i;:::-;10880:118;10889:6;10896:12;:10;:12::i;:::-;10909:88;10947:6;10909:88;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10909:19:0;;;;;;:11;:19;;;;;;10929:12;:10;:12::i;:::-;-1:-1:-1;;;;;10909:33:0;;;;;;;;;;;;-1:-1:-1;10909:33:0;;;:88;:37;:88::i;:::-;10880:8;:118::i;:::-;-1:-1:-1;11016:4:0;10716:312;;;;;:::o;17146:88::-;2544:12;:10;:12::i;:::-;2534:6;;-1:-1:-1;;;;;2534:6:0;;;:22;;;2526:67;;;;;-1:-1:-1;;;2526:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2526:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;17206:12:0::1;17221:5;17206:12:::0;;;:4:::1;:12;::::0;;;;:20;;-1:-1:-1;;17206:20:0::1;::::0;;17146:88::o;19149:352::-;19246:3;;-1:-1:-1;;;;;19246:3:0;19230:12;:10;:12::i;:::-;-1:-1:-1;;;;;19230:19:0;;19222:28;;;;;;19287:16;7652:15;19299:3;19287:11;:16::i;:::-;19269:15;:34;19261:89;;;;-1:-1:-1;;;19261:89:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7652:15;19369;:26;;19361:87;;;;-1:-1:-1;;;19361:87:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19459:16;:34;19149:352::o;8517:25::-;;;;:::o;9888:83::-;7271:1;9888:83;:::o;7743:37::-;;;;:::o;20636:210::-;20748:3;;-1:-1:-1;;;;;20748:3:0;20732:12;:10;:12::i;:::-;-1:-1:-1;;;;;20732:19:0;;20724:28;;;;;;20763:12;-1:-1:-1;;;;;20763:21:0;;20785:13;20800:12;-1:-1:-1;;;;;20800:22:0;;20831:4;20800:37;;;;;;;;;;;;;-1:-1:-1;;;;;20800:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20800:37:0;20763:75;;;-1:-1:-1;;;;;;20763:75:0;;;;;;;-1:-1:-1;;;;;20763:75:0;;;;;;;;;;;;;;;;;;;;20800:37;;20763:75;;;;;;;-1:-1:-1;20763:75:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;20636:210:0:o;8480:28::-;;;-1:-1:-1;;;;;8480:28:0;;:::o;17242:234::-;17308:3;;-1:-1:-1;;;;;17308:3:0;17292:12;:10;:12::i;:::-;-1:-1:-1;;;;;17292:19:0;;17284:28;;;;;;17323:23;17349:24;17367:4;17349:9;:24::i;:::-;17323:50;-1:-1:-1;17388:19:0;;17384:85;;17424:33;17441:15;17424:16;:33::i;:::-;17242:234;:::o;19970:137::-;20062:3;;-1:-1:-1;;;;;20062:3:0;20046:12;:10;:12::i;:::-;-1:-1:-1;;;;;20046:19:0;;20038:28;;;;;11301:103;2544:12;:10;:12::i;:::-;2534:6;;-1:-1:-1;;;;;2534:6:0;;;:22;;;2526:67;;;;;-1:-1:-1;;;2526:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2526:67:0;;;;;;;;;;;;;;;11373:15:::1;:23:::0;;;::::1;;::::0;::::1;-1:-1:-1::0;;11373:23:0;;::::1;::::0;;;::::1;::::0;;11301:103::o;17484:159::-;2544:12;:10;:12::i;:::-;2534:6;;-1:-1:-1;;;;;2534:6:0;;;:22;;;2526:67;;;;;-1:-1:-1;;;2526:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2526:67:0;;;;;;;;;;;;;;;17546:20:::1;17569:24;17587:4;17569:9;:24::i;:::-;17546:47;;17604:31;17619:15;17604:14;:31::i;7674:47::-:0;;;;:::o;8701:31::-;;;;;;;;;:::o;10084:119::-;-1:-1:-1;;;;;10177:18:0;10150:7;10177:18;;;:9;:18;;;;;;;10084:119::o;2621:148::-;2544:12;:10;:12::i;:::-;2534:6;;-1:-1:-1;;;;;2534:6:0;;;:22;;;2526:67;;;;;-1:-1:-1;;;2526:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2526:67:0;;;;;;;;;;;;;;;2728:1:::1;2712:6:::0;;2691:40:::1;::::0;-1:-1:-1;;;;;2712:6:0;;::::1;::::0;2691:40:::1;::::0;2728:1;;2691:40:::1;2759:1;2742:19:::0;;-1:-1:-1;;;;;;2742:19:0::1;::::0;;2621:148::o;20465:163::-;20551:3;;-1:-1:-1;;;;;20551:3:0;20535:12;:10;:12::i;:::-;-1:-1:-1;;;;;20535:19:0;;20527:28;;;;;;20566:54;;-1:-1:-1;;;;;20566:31:0;;;20598:21;20566:54;;;;;;;;;20598:21;20566:31;:54;;;;;;;;;;;;;;;;;;;;;20465:163;:::o;19802:160::-;19874:6;19869:86;19890:5;:12;19886:1;:16;19869:86;;;19939:4;19922;:14;19927:5;19933:1;19927:8;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;19922:14:0;;;;;;;;;;;-1:-1:-1;19922:14:0;:21;;-1:-1:-1;;19922:21:0;;;;;;;;;;-1:-1:-1;19904:3:0;19869:86;;2407:79;2445:7;2472:6;-1:-1:-1;;;;;2472:6:0;2407:79;:::o;9793:87::-;9865:7;;;;;;;;;;;;-1:-1:-1;;;9865:7:0;;;;9793:87;:::o;19509:142::-;19608:3;;-1:-1:-1;;;;;19608:3:0;19592:12;:10;:12::i;:::-;-1:-1:-1;;;;;19592:19:0;;19584:28;;;;;;19623:4;:20;;-1:-1:-1;;;;;;19623:20:0;-1:-1:-1;;;;;19623:20:0;;;;;;;;;;19509:142::o;10215:169::-;10295:4;10312:42;10322:12;:10;:12::i;:::-;10336:9;10347:6;10312:9;:42::i;8659:35::-;;;;;;;;;:::o;8585:33::-;;;;;;:::o;11571:102::-;2544:12;:10;:12::i;:::-;2534:6;;-1:-1:-1;;;;;2534:6:0;;;:22;;;2526:67;;;;;-1:-1:-1;;;2526:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2526:67:0;;;;;;;;;;;;;;;11644:13:::1;:21:::0;;-1:-1:-1;;11644:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11571:102::o;7881:39::-;;;;:::o;20247:210::-;2544:12;:10;:12::i;:::-;2534:6;;-1:-1:-1;;;;;2534:6:0;;;:22;;;2526:67;;;;;-1:-1:-1;;;2526:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2526:67:0;;;;;;;;;;;;;;;20311:11:::1;::::0;;;::::1;;;20310:12;20302:48;;;::::0;;-1:-1:-1;;;20302:48:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;20375:12;20361:11;:26:::0;20398:15:::1;:22:::0;;-1:-1:-1;;;;20398:22:0;;::::1;::::0;::::1;20431:18;::::0;::::1;::::0;;20247:210::o;17651:281::-;2544:12;:10;:12::i;:::-;2534:6;;-1:-1:-1;;;;;2534:6:0;;;:22;;;2526:67;;;;;-1:-1:-1;;;2526:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2526:67:0;;;;;;;;;;;;;;;17773:19:::1;:28:::0;;;;17812:19:::1;:29:::0;;;;17852:18:::1;:30:::0;17893:18:::1;:31:::0;17651:281::o;7835:38::-;;;;:::o;10392:145::-;-1:-1:-1;;;;;10502:18:0;;;10475:7;10502:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;10392:145::o;7788:37::-;;;;:::o;19659:135::-;19747:3;;-1:-1:-1;;;;;19747:3:0;19731:12;:10;:12::i;:::-;-1:-1:-1;;;;;19731:19:0;;19723:28;;;;;;19762:10;:24;19659:135::o;2777:244::-;2544:12;:10;:12::i;:::-;2534:6;;-1:-1:-1;;;;;2534:6:0;;;:22;;;2526:67;;;;;-1:-1:-1;;;2526:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2526:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;2866:22:0;::::1;2858:73;;;;-1:-1:-1::0;;;2858:73:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2968:6;::::0;;2947:38:::1;::::0;-1:-1:-1;;;;;2947:38:0;;::::1;::::0;2968:6;::::1;::::0;2947:38:::1;::::0;::::1;2996:6;:17:::0;;-1:-1:-1;;;;;;2996:17:0::1;-1:-1:-1::0;;;;;2996:17:0;;;::::1;::::0;;;::::1;::::0;;2777:244::o;17940:236::-;18006:3;;-1:-1:-1;;;;;18006:3:0;17990:12;:10;:12::i;:::-;-1:-1:-1;;;;;17990:19:0;;17982:28;;;;;;18050:21;18086:22;;18082:87;;18125:32;18138:18;18125:12;:32::i;103:98::-;183:10;103:98;:::o;11681:335::-;-1:-1:-1;;;;;11774:19:0;;11766:68;;;;-1:-1:-1;;;11766:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11853:21:0;;11845:68;;;;-1:-1:-1;;;11845:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11924:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;11976:32;;;;;;;;;;;;;;;;;11681:335;;;:::o;12028:3023::-;-1:-1:-1;;;;;12118:18:0;;12110:68;;;;-1:-1:-1;;;12110:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;12197:16:0;;12189:64;;;;-1:-1:-1;;;12189:64:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12281:1;12272:6;:10;12264:64;;;;-1:-1:-1;;;12264:64:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12345:11;;;;;;;12341:111;;12388:3;;-1:-1:-1;;;;;12380:11:0;;;12388:3;;12380:11;12372:20;;;;;;12477:13;;-1:-1:-1;;;;;12469:21:0;;;12477:13;;12469:21;:55;;;;-1:-1:-1;12508:15:0;;-1:-1:-1;;;;;12494:30:0;;;12508:15;;12494:30;;12469:55;12465:180;;;12562:11;;:18;;12578:1;12562:15;:18::i;:::-;12545:12;:36;12541:92;;-1:-1:-1;;;;;12602:8:0;;;;;;:4;:8;;;;;:15;;-1:-1:-1;;12602:15:0;12613:4;12602:15;;;12541:92;12670:4;12697:7;:5;:7::i;:::-;-1:-1:-1;;;;;12689:15:0;:4;-1:-1:-1;;;;;12689:15:0;;;:32;;;;;12714:7;:5;:7::i;:::-;-1:-1:-1;;;;;12708:13:0;:2;-1:-1:-1;;;;;12708:13:0;;;12689:32;12685:722;;;12742:15;;;;;;;12738:636;;;-1:-1:-1;;;;;12782:21:0;;12798:4;12782:21;;;;:44;;-1:-1:-1;;;;;;12807:19:0;;12821:4;12807:19;;12782:44;:80;;;;-1:-1:-1;12846:15:0;;-1:-1:-1;;;;;12830:32:0;;;12846:15;;12830:32;;12782:80;:114;;;;-1:-1:-1;12880:15:0;;-1:-1:-1;;;;;12866:30:0;;;12880:15;;12866:30;;12782:114;12778:266;;;12953:15;;-1:-1:-1;;;;;12953:15:0;12929:12;:10;:12::i;:::-;-1:-1:-1;;;;;12929:40:0;;:73;;;-1:-1:-1;12989:13:0;;-1:-1:-1;;;;;12989:13:0;12973:12;:10;:12::i;:::-;-1:-1:-1;;;;;12973:29:0;;12929:73;12921:103;;;;;-1:-1:-1;;;12921:103:0;;;;;;;;;;;;-1:-1:-1;;;12921:103:0;;;;;;;;;;;;;;;13086:7;:5;:7::i;:::-;-1:-1:-1;;;;;13080:13:0;:2;-1:-1:-1;;;;;13080:13:0;;;:36;;;;-1:-1:-1;;;;;;13097:19:0;;13111:4;13097:19;;13080:36;:70;;;;-1:-1:-1;13134:15:0;;-1:-1:-1;;;;;13120:30:0;;;13134:15;;13120:30;;13080:70;:93;;;;-1:-1:-1;13160:13:0;;-1:-1:-1;;;;;13154:19:0;;;13160:13;;13154:19;;13080:93;13076:283;;;13214:9;13206:18;;;;:7;:18;;;;;;13247:9;13229:15;:27;-1:-1:-1;13206:51:0;13198:82;;;;;-1:-1:-1;;;13198:82:0;;;;;;;;;;;;-1:-1:-1;;;13198:82:0;;;;;;;;;;;;;;;13311:9;13303:18;;;;:7;:18;;;;;13324:15;13303:36;;13076:283;13431:7;:5;:7::i;:::-;-1:-1:-1;;;;;13423:15:0;:4;-1:-1:-1;;;;;13423:15:0;;;:32;;;;;13448:7;:5;:7::i;:::-;-1:-1:-1;;;;;13442:13:0;:2;-1:-1:-1;;;;;13442:13:0;;;13423:32;:57;;;;-1:-1:-1;;;;;;13459:21:0;;13475:4;13459:21;;13423:57;:80;;;;-1:-1:-1;;;;;;13484:19:0;;13498:4;13484:19;;13423:80;13419:1427;;;13534:13;;-1:-1:-1;;;;;13526:21:0;;;13534:13;;13526:21;:55;;;;-1:-1:-1;13565:15:0;;-1:-1:-1;;;;;13551:30:0;;;13565:15;;13551:30;;13526:55;:84;;;;-1:-1:-1;;;;;;13586:24:0;;;;;;:18;:24;;;;;;;;13585:25;13526:84;:111;;;;-1:-1:-1;;;;;;13615:22:0;;;;;;:18;:22;;;;;;;;13614:23;13526:111;13522:275;;;13695:16;;13666:25;13684:6;13666:13;13676:2;13666:9;:13::i;:::-;:17;;:25::i;:::-;:45;;13658:123;;;;-1:-1:-1;;;13658:123:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13825:13;;-1:-1:-1;;;;;13817:21:0;;;13825:13;;13817:21;:55;;;;-1:-1:-1;13856:15:0;;-1:-1:-1;;;;;13842:30:0;;;13856:15;;13842:30;;13817:55;13813:183;;;13909:18;;13893:13;:34;13962:18;;13946:13;:34;13813:183;14038:13;;-1:-1:-1;;;;;14032:19:0;;;14038:13;;14032:19;:55;;;;-1:-1:-1;14071:15:0;;-1:-1:-1;;;;;14055:32:0;;;14071:15;;14055:32;;14032:55;14028:294;;;14112:13;;;;14108:91;;;-1:-1:-1;;;;;14155:8:0;;;;;;:4;:8;;;;;;;;14154:9;:24;;;;-1:-1:-1;;;;;;14168:10:0;;;;;;:4;:10;;;;;;;;14167:11;14154:24;14146:33;;;;;;14233:19;;14217:13;:35;14287:19;;14271:13;:35;14028:294;14355:6;;;;;;;14354:7;:32;;;;-1:-1:-1;14373:13:0;;-1:-1:-1;;;;;14365:21:0;;;14373:13;;14365:21;;14354:32;14350:485;;;14409:28;14440:24;14458:4;14440:9;:24::i;:::-;14409:55;;14512:10;;14489:20;:33;14485:118;;;14547:36;14562:20;14547:14;:36::i;:::-;14652:21;14696:22;;14692:106;;14743:35;14756:21;14743:12;:35::i;:::-;14350:485;;;-1:-1:-1;;;;;14862:24:0;;;;;;:18;:24;;;;;;;;;:50;;-1:-1:-1;;;;;;14890:22:0;;;;;;:18;:22;;;;;;;;14862:50;14858:98;;;-1:-1:-1;14939:5:0;14858:98;14976:41;14991:4;14997:2;15001:6;15009:7;14976:14;:41::i;:::-;15028:15;:13;:15::i;1240:190::-;1326:7;1362:12;1354:6;;;;1346:29;;;;-1:-1:-1;;;1346:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1398:5:0;;;1240:190::o;1692:132::-;1750:7;1777:39;1781:1;1784;1777:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1770:46;1692:132;-1:-1:-1;;;1692:132:0:o;15059:407::-;8845:6;:13;;-1:-1:-1;;8845:13:0;;;;;15161:16:::1;::::0;;15175:1:::1;15161:16:::0;;;;;::::1;::::0;;-1:-1:-1;;15161:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;15161:16:0::1;15137:40;;15206:4;15188;15193:1;15188:7;;;;;;;;-1:-1:-1::0;;;;;15188:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;15232:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;15232:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;15188:7;;15232:22;;;;;:15;:22;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;15232:22:0;15222:7;;:4;;15227:1:::1;::::0;15222:7;::::1;;;;;-1:-1:-1::0;;;;;15222:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;15297:15:::1;::::0;15265:62:::1;::::0;15282:4:::1;::::0;15297:15:::1;15315:11:::0;15265:8:::1;:62::i;:::-;15338:15;::::0;:120:::1;::::0;-1:-1:-1;;;15338:120:0;;::::1;::::0;::::1;::::0;;;:15:::1;:120:::0;;;;;;15435:4:::1;15338:120:::0;;;;;;15442:15:::1;15338:120:::0;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15338:15:0;;::::1;::::0;:66:::1;::::0;15405:11;;15421:4;;15435;15442:15;15338:120;;;;;;;::::1;::::0;;::::1;::::0;::::1;::::0;;;:15;:120:::1;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;8881:6:0;:14;;-1:-1:-1;;8881:14:0;;;-1:-1:-1;;;;15059:407:0:o;15944:1014::-;8845:6;:13;;-1:-1:-1;;8845:13:0;;;;;16114::::1;::::0;16096::::1;::::0;8845;;16052:77:::1;::::0;16096:32:::1;::::0;:17:::1;:32::i;:::-;16052:13;::::0;:39:::1;::::0;16070:20;16052:17:::1;:39::i;:::-;:43:::0;::::1;:77::i;:::-;16029:100:::0;-1:-1:-1;16193:12:0::1;16209:19;16029:100:::0;16226:1:::1;16209:16;:19::i;:::-;16193:35:::0;-1:-1:-1;16239:17:0::1;16259:30;:20:::0;16193:35;16259:24:::1;:30::i;:::-;16239:50:::0;-1:-1:-1;16592:21:0::1;16658:27;16239:50:::0;16658:16:::1;:27::i;:::-;16816:18;16837:70;16897:9:::0;16838:53:::1;16886:4:::0;16839:41:::1;:21;16865:14:::0;16839:25:::1;:41::i;:::-;16838:47:::0;::::1;:53::i;16837:70::-;16816:91;;16920:30;16933:4;16939:10;16920:12;:30::i;16966:172::-:0;17023:14;17040:13;:6;17051:1;17040:10;:13::i;:::-;17064:4;;:21;;17023:30;;-1:-1:-1;;;;;;17064:4:0;;:21;;;;;17023:30;;17064:4;:21;:4;:21;17023:30;17064:4;:21;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17096:3:0;;-1:-1:-1;;;;;17096:3:0;:32;17109:18;:6;17120;17109:10;:18::i;:::-;17096:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16966:172;;:::o;909:179::-;967:7;999:5;;;1023:6;;;;1015:46;;;;;-1:-1:-1;;;1015:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;18184:256;18297:7;18292:60;;18326:14;:12;:14::i;:::-;18362:44;18380:6;18388:9;18399:6;18362:17;:44::i;11416:147::-;11486:21;;11470:13;:37;11534:21;;11518:13;:37;11416:147::o;1832:189::-;1918:7;1953:12;1946:5;1938:28;;;;-1:-1:-1;;;1938:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1977:9;1993:1;1989;:5;;;;;;;1832:189;-1:-1:-1;;;;;1832:189:0:o;1438:246::-;1496:7;1520:6;1516:47;;-1:-1:-1;1550:1:0;1543:8;;1516:47;1585:5;;;1589:1;1585;:5;:1;1609:5;;;;;:10;1601:56;;;;-1:-1:-1;;;1601:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1096:136;1154:7;1181:43;1185:1;1188;1181:43;;;;;;;;;;;;;;;;;:3;:43::i;15478:456::-;15591:15;;15559:62;;15576:4;;-1:-1:-1;;;;;15591:15:0;15609:11;15559:8;:62::i;:::-;15664:15;;15878:3;;15664:262;;;-1:-1:-1;;;15664:262:0;;15738:4;15664:262;;;;;;;;;;:15;:262;;;;;;;;;;-1:-1:-1;;;;;15878:3:0;;;15664:262;;;;15898:15;15664:262;;;;;;:15;;;;;:31;;15703:9;;15664:262;;;;;;;;;;;;;;;15703:9;15664:15;:262;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11036:257;11083:13;;:18;:40;;;;-1:-1:-1;11105:13:0;;:18;11083:40;11079:53;;;11125:7;;11079:53;11166:13;;;11142:21;:37;11214:13;;;11190:21;:37;-1:-1:-1;11240:17:0;;;;11268;11036:257;:::o;18448:652::-;18545:24;;:::i;:::-;18598:34;18628:3;18598:25;18609:13;;18598:6;:10;;:25;;;;:::i;:34::-;18580:15;;;:52;18672:13;;18661:34;;18691:3;;18661:25;;:6;;:10;:25::i;:34::-;18643:52;;;18742:15;;;;18731:48;;18643:52;18731:27;;:6;;:10;:27::i;:::-;:31;;:48::i;:::-;18716:12;;;;:63;;;;-1:-1:-1;;;;;18820:17:0;;;;;;:9;:17;;;;:29;;18842:6;18820:21;:29::i;:::-;-1:-1:-1;;;;;18800:17:0;;;;;;;:9;:17;;;;;;:49;;;;18908:12;;;;18883:20;;;;;;;;;;:38;;:24;:38::i;:::-;-1:-1:-1;;;;;18860:20:0;;;;;;:9;:20;;;;;;;;:61;;;;19008:15;;18988;;;;18959:66;;18988:36;;:15;:19;:36::i;:::-;18977:4;18959:24;;;;:9;:24;;;;;;;:28;:66::i;:::-;18950:4;18932:24;;;;:9;:24;;;;;;;;;:93;;;;19079:12;;;;19051:41;;;;;;;-1:-1:-1;;;;;19051:41:0;;;;;;;;;;;;;;;;;;;18448:652;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;:::o
Swarm Source
ipfs://085d8b208a285737af75b71de2f34f1bebf00d14d532647aa38919d35bea0ec6
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.