ERC-20
Overview
Max Total Supply
1,000,000,000 Ōkami
Holders
221
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
1,605,133.481825774 ŌkamiValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
OKAMI
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-01-26 */ /* * 🔥🔥 Ōkami Inu 🔥🔥 * Utility driven meme token * Telegram : * Website : **** Tokenomics **** ** Buy Fee/Default Sell Fee : 12% (10% TX 2% Liquidity) ** 1 Hour Sell Fee : 24% (12% TX 12% Liquidity) ** 24 Hour Sell Fee : 18% (12% TX 6% Liquidity) ** Holder Appreciation : After 30 days 0% sell fee **** Bot and Whale Protection **** ** .5% Max tx ** 1.5% Max wallet ** 30 Second cooldown between buys ** 0-2 Block buys automatically blacklisted */ // SPDX-License-Identifier: MIT pragma solidity ^0.6.12; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ 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); } interface IERC20Metadata is IERC20 { function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } contract Ownable is Context { address private _owner; address private _previousOwner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () public { 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); } } 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; } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( 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, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } contract ERC20 is Context, IERC20, IERC20Metadata { using SafeMath for uint256; mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; uint256 private _totalSupply; string private _name; string private _symbol; constructor(string memory name_, string memory symbol_) public { _name = name_; _symbol = symbol_; } function name() public view virtual override returns (string memory) { return _name; } function symbol() public view virtual override returns (string memory) { return _symbol; } function decimals() public view virtual override returns (uint8) { return 9; } function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public virtual override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function _transfer( address sender, address recipient, uint256 amount ) internal virtual { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(sender, recipient, amount); _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance"); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); } function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply = _totalSupply.add(amount); _balances[account] = _balances[account].add(amount); emit Transfer(address(0), account, amount); } function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); _beforeTokenTransfer(account, address(0), amount); _balances[account] = _balances[account].sub(amount, "ERC20: burn amount exceeds balance"); _totalSupply = _totalSupply.sub(amount); emit Transfer(account, address(0), amount); } function _approve( address owner, address spender, uint256 amount ) internal virtual { 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 _beforeTokenTransfer( address from, address to, uint256 amount ) internal virtual {} } contract OKAMI is ERC20, Ownable { using SafeMath for uint256; address public constant DEAD_ADDRESS = address(0xdead); IUniswapV2Router02 public constant uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uint256 public buyLiquidityFee = 2; uint256 public sellLiquidityFee = 2; uint256 public buyTxFee = 10; uint256 public sellTxFee = 10; uint256 public defaultSellLiquidityFee = 2; uint256 public defaultSellTxFee = 10; uint256 public hourSellLiquidityFee = 12; uint256 public hourSellTxFee = 12; uint256 public daySellLiquidityFee = 6; uint256 public daySellTxFee = 12; uint256 public tokensForLiquidity; uint256 public tokensForTax; uint256 public _tTotal = 10**9 * 10**9; // 1 billion uint256 public swapAtAmount = _tTotal.mul(50).div(10000); // 0.10% of total supply uint256 public maxTxLimit = _tTotal; // 0.5% of total supply set in open trading uint256 public maxWalletLimit = _tTotal; // 1% of total supply set in open trading address private dev; address private liquidity; address public uniswapV2Pair; uint256 public launchBlock; bool private swapping; bool public isLaunched; bool private cooldownEnabled = false; bool private useBuyMap = true; // exclude from fees mapping (address => bool) public isExcludedFromFees; // exclude from max transaction amount mapping (address => bool) public isExcludedFromTxLimit; // exclude from max wallet limit mapping (address => bool) public isExcludedFromWalletLimit; // if the account is blacklisted from transacting mapping (address => bool) public isBlacklisted; // buy map for timed sell tax mapping (address => uint256) public _buyMap; // mapping for cooldown mapping (address => uint) public cooldown; constructor() public ERC20("Ōkami Inu", "Ōkami") { uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); _approve(address(this), address(uniswapV2Router), type(uint256).max); // exclude from fees, wallet limit and transaction limit excludeFromAllLimits(owner(), true); excludeFromAllLimits(address(this), true); excludeFromWalletLimit(uniswapV2Pair, true); dev = payable(0x1f30Eb1644Cb6528d0ab609815EE7930a0F5720c); liquidity = payable(0x1f30Eb1644Cb6528d0ab609815EE7930a0F5720c); /* _mint is an internal function in ERC20.sol that is only called here, and CANNOT be called ever again */ _mint(owner(), _tTotal); } function excludeFromFees(address account, bool value) public onlyOwner() { require(isExcludedFromFees[account] != value, "Fees: Already set to this value"); isExcludedFromFees[account] = value; } function excludeFromTxLimit(address account, bool value) public onlyOwner() { require(isExcludedFromTxLimit[account] != value, "TxLimit: Already set to this value"); isExcludedFromTxLimit[account] = value; } function excludeFromWalletLimit(address account, bool value) public onlyOwner() { require(isExcludedFromWalletLimit[account] != value, "WalletLimit: Already set to this value"); isExcludedFromWalletLimit[account] = value; } function excludeFromAllLimits(address account, bool value) public onlyOwner() { excludeFromFees(account, value); excludeFromTxLimit(account, value); excludeFromWalletLimit(account, value); } function setBuyFee(uint256 liquidityFee, uint256 txFee) external onlyOwner() { require(liquidityFee.add(txFee) <= 12, "Total buy fee can not be more than 12"); buyLiquidityFee = liquidityFee; buyTxFee = txFee; } function setSellFee(uint256 liquidityFee, uint256 txFee) external onlyOwner() { require(liquidityFee.add(txFee) <= 12, "Total default fee can not be more than 12"); sellLiquidityFee = liquidityFee; sellTxFee = txFee; defaultSellLiquidityFee = liquidityFee; defaultSellTxFee = txFee; } function setHourSellFee(uint256 liquidityFee, uint256 txFee) external onlyOwner() { require(liquidityFee.add(txFee) <= 24, "Total default fee can not be more than 25"); hourSellLiquidityFee = liquidityFee; hourSellTxFee = txFee; } function setDaySellFee(uint256 liquidityFee, uint256 txFee) external onlyOwner() { require(liquidityFee.add(txFee) <= 18, "Total default fee can not be more than 18"); daySellLiquidityFee = liquidityFee; daySellTxFee = txFee; } function setCooldownEnabled(bool _enabled) external onlyOwner() { cooldownEnabled = _enabled; } function setUseBuyMap(bool _enabled) external onlyOwner() { useBuyMap = _enabled; } function setMaxTxLimit(uint256 newLimit) external onlyOwner() { require(newLimit > 0, "max tx can not be 0"); maxTxLimit = newLimit * (10**9); } function setMaxWalletLimit(uint256 newLimit) external onlyOwner() { require(newLimit > 0, "max wallet can not be 0"); maxWalletLimit = newLimit * (10**9); } function setSwapAtAmount(uint256 amountToSwap) external onlyOwner() { swapAtAmount = amountToSwap * (10**9); } function updateDevWallet(address newWallet) external onlyOwner() { dev = newWallet; } function updateLiqWallet(address newWallet) external onlyOwner() { liquidity = newWallet; } function addBlacklist(address account) external onlyOwner() { require(!isBlacklisted[account], "Blacklist: Already blacklisted"); require(account != uniswapV2Pair, "Cannot blacklist pair"); _setBlacklist(account, true); } function removeBlacklist(address account) external onlyOwner() { require(isBlacklisted[account], "Blacklist: Not blacklisted"); _setBlacklist(account, false); } function manualswap() external onlyOwner() { uint256 totalTokensForFee = tokensForLiquidity + tokensForTax; swapBack(totalTokensForFee); } function manualsend() external onlyOwner(){ uint256 contractETHBalance = address(this).balance; payable(address(dev)).transfer(contractETHBalance); } function openTrading() external onlyOwner() { require(!isLaunched, "Contract is already launched"); isLaunched = true; launchBlock = block.number; cooldownEnabled = true; maxTxLimit = _tTotal.mul(50).div(10000); maxWalletLimit = _tTotal.mul(100).div(10000); } function _transfer(address from, address to, uint256 amount) internal override { require(from != address(0), "transfer from the zero address"); require(to != address(0), "transfer to the zero address"); require(amount <= maxTxLimit || isExcludedFromTxLimit[from] || isExcludedFromTxLimit[to], "Tx Amount too large"); require(balanceOf(to).add(amount) <= maxWalletLimit || isExcludedFromWalletLimit[to], "Transfer will exceed wallet limit"); require(isLaunched || isExcludedFromFees[from] || isExcludedFromFees[to], "Waiting to go live"); require(!isBlacklisted[from], "Sender is blacklisted"); if(amount == 0) { super._transfer(from, to, 0); return; } uint256 totalTokensForFee = tokensForLiquidity + tokensForTax; bool canSwap = totalTokensForFee >= swapAtAmount; if( from != uniswapV2Pair && canSwap && !swapping ) { swapping = true; swapBack(totalTokensForFee); swapping = false; } else if( from == uniswapV2Pair && to != uniswapV2Pair && block.number < launchBlock + 1 && !isExcludedFromFees[to] ) { _setBlacklist(to, true); } bool takeFee = !swapping; if(isExcludedFromFees[from] || isExcludedFromFees[to]) { takeFee = false; } if(takeFee) { uint256 fees; // on sell if (to == uniswapV2Pair) { if(useBuyMap){ if (_buyMap[from] != 0 && (_buyMap[from] + (1 hours) >= block.timestamp)) { sellLiquidityFee = hourSellLiquidityFee; sellTxFee = hourSellTxFee; _buyMap[from] = block.timestamp; } else if (_buyMap[from] != 0 && (_buyMap[from] + (24 hours) >= block.timestamp)) { sellLiquidityFee = daySellLiquidityFee; sellTxFee = daySellTxFee; _buyMap[from] = block.timestamp; } else if (_buyMap[from] != 0 && (_buyMap[from] + (30 days) >= block.timestamp)) { sellLiquidityFee = 0; sellTxFee = 0; } else { sellLiquidityFee = defaultSellLiquidityFee; sellTxFee = defaultSellTxFee; } } else { sellLiquidityFee = defaultSellLiquidityFee; sellTxFee = defaultSellTxFee; } uint256 sellTotalFees = sellLiquidityFee.add(sellTxFee); fees = amount.mul(sellTotalFees).div(100); tokensForLiquidity = tokensForLiquidity.add(fees.mul(sellLiquidityFee).div(sellTotalFees)); tokensForTax = tokensForTax.add(fees.mul(sellTxFee).div(sellTotalFees)); } // on buy & wallet transfers else { if(cooldownEnabled){ require(cooldown[to] < block.timestamp); cooldown[to] = block.timestamp + (30 seconds); } if (useBuyMap && _buyMap[to] == 0) { _buyMap[to] = block.timestamp; } uint256 buyTotalFees = buyLiquidityFee.add(buyTxFee); fees = amount.mul(buyTotalFees).div(100); tokensForLiquidity = tokensForLiquidity.add(fees.mul(buyLiquidityFee).div(buyTotalFees)); tokensForTax = tokensForTax.add(fees.mul(buyTxFee).div(buyTotalFees)); } if(fees > 0){ super._transfer(from, address(this), fees); amount = amount.sub(fees); } } super._transfer(from, to, amount); } function swapBack(uint256 totalTokensForFee) private { uint256 toSwap = swapAtAmount; // Halve the amount of liquidity tokens uint256 liquidityTokens = toSwap.mul(tokensForLiquidity).div(totalTokensForFee).div(2); uint256 taxTokens = toSwap.sub(liquidityTokens).sub(liquidityTokens); uint256 amountToSwapForETH = toSwap.sub(liquidityTokens); _swapTokensForETH(amountToSwapForETH); uint256 ethBalance = address(this).balance; uint256 ethForTax = ethBalance.mul(taxTokens).div(amountToSwapForETH); uint256 ethForLiquidity = ethBalance.sub(ethForTax); tokensForLiquidity = tokensForLiquidity.sub(liquidityTokens.mul(2)); tokensForTax = tokensForTax.sub(toSwap.sub(liquidityTokens.mul(2))); payable(address(dev)).transfer(ethForTax); _addLiquidity(liquidityTokens, ethForLiquidity); } function _addLiquidity(uint256 tokenAmount, uint256 ethAmount) private { uniswapV2Router.addLiquidityETH{value: ethAmount}( address(this), tokenAmount, 0, 0, liquidity, block.timestamp ); } function _swapTokensForETH(uint256 tokenAmount) private { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function _setBlacklist(address account, bool value) internal { isBlacklisted[account] = value; } function transferForeignToken(address _token, address _to) external onlyOwner returns (bool _sent){ require(_token != address(this), "Can't withdraw native tokens"); uint256 _contractBalance = IERC20(_token).balanceOf(address(this)); _sent = IERC20(_token).transfer(_to, _contractBalance); } receive() external payable {} }
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":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":"DEAD_ADDRESS","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_buyMap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_tTotal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"addBlacklist","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":"buyLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTxFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"cooldown","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"daySellLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"daySellTxFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"defaultSellLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"defaultSellTxFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"excludeFromAllLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"excludeFromTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"excludeFromWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"hourSellLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"hourSellTxFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isBlacklisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromTxLimit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromWalletLimit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isLaunched","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTxLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","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":"account","type":"address"}],"name":"removeBlacklist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellTxFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"liquidityFee","type":"uint256"},{"internalType":"uint256","name":"txFee","type":"uint256"}],"name":"setBuyFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setCooldownEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"liquidityFee","type":"uint256"},{"internalType":"uint256","name":"txFee","type":"uint256"}],"name":"setDaySellFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"liquidityFee","type":"uint256"},{"internalType":"uint256","name":"txFee","type":"uint256"}],"name":"setHourSellFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"setMaxTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"setMaxWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"liquidityFee","type":"uint256"},{"internalType":"uint256","name":"txFee","type":"uint256"}],"name":"setSellFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountToSwap","type":"uint256"}],"name":"setSwapAtAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setUseBuyMap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokensForLiquidity","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokensForTax","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":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"address","name":"_to","type":"address"}],"name":"transferForeignToken","outputs":[{"internalType":"bool","name":"_sent","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":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newWallet","type":"address"}],"name":"updateDevWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newWallet","type":"address"}],"name":"updateLiqWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405260026007556002600855600a600955600a80556002600b55600a600c55600c600d55600c600e556006600f55600c601055670de0b6b3a764000060135562000079612710620000656032601354620003cb60201b62001fe21790919060201c565b6200043260201b620020421790919060201c565b6014556013546015819055601655601b805463ffff000019166301000000179055348015620000a757600080fd5b50604080518082018252600a815269c58c6b616d6920496e7560b01b602080830191825283518085019094526006845265c58c6b616d6960d01b908401528151919291620000f89160039162000ae3565b5080516200010e90600490602084019062000ae3565b5050506000620001236200047c60201b60201c565b600580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015620001bf57600080fd5b505afa158015620001d4573d6000803e3d6000fd5b505050506040513d6020811015620001eb57600080fd5b5051604080516315ab88c960e31b815290516001600160a01b039092169163c9c65396913091737a250d5630b4cf539739df2c5dacb4c659f2488d9163ad5c4648916004808301926020929190829003018186803b1580156200024d57600080fd5b505afa15801562000262573d6000803e3d6000fd5b505050506040513d60208110156200027957600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301525160448083019260209291908290030181600087803b158015620002cc57600080fd5b505af1158015620002e1573d6000803e3d6000fd5b505050506040513d6020811015620002f857600080fd5b5051601980546001600160a01b0319166001600160a01b039092169190911790556200033c30737a250d5630b4cf539739df2c5dacb4c659f2488d60001962000480565b620003526200034a62000570565b60016200057f565b6200035f3060016200057f565b60195462000378906001600160a01b0316600162000603565b60178054731f30eb1644cb6528d0ab609815ee7930a0f5720c6001600160a01b03199182168117909255601880549091169091179055620003c5620003bc62000570565b601354620006ea565b62000b7f565b600082620003dc575060006200042c565b82820282848281620003ea57fe5b0414620004295760405162461bcd60e51b815260040180806020018281038252602181526020018062003d896021913960400191505060405180910390fd5b90505b92915050565b60006200042983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250620007f960201b60201c565b3390565b6001600160a01b038316620004c75760405162461bcd60e51b815260040180806020018281038252602481526020018062003dca6024913960400191505060405180910390fd5b6001600160a01b0382166200050e5760405162461bcd60e51b815260040180806020018281038252602281526020018062003d456022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6005546001600160a01b031690565b620005896200047c565b6005546001600160a01b03908116911614620005db576040805162461bcd60e51b8152602060048201819052602482015260008051602062003daa833981519152604482015290519081900360640190fd5b620005e78282620008a0565b620005f382826200099c565b620005ff828262000603565b5050565b6200060d6200047c565b6005546001600160a01b039081169116146200065f576040805162461bcd60e51b8152602060048201819052602482015260008051602062003daa833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152601e602052604090205460ff1615158115151415620006bf5760405162461bcd60e51b815260040180806020018281038252602681526020018062003dee6026913960400191505060405180910390fd5b6001600160a01b03919091166000908152601e60205260409020805460ff1916911515919091179055565b6001600160a01b03821662000746576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b620007546000838362000a83565b620007708160025462000a8860201b620020841790919060201c565b6002556001600160a01b03821660009081526020818152604090912054620007a39183906200208462000a88821b17901c565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b60008183620008895760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156200084d57818101518382015260200162000833565b50505050905090810190601f1680156200087b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816200089657fe5b0495945050505050565b620008aa6200047c565b6005546001600160a01b03908116911614620008fc576040805162461bcd60e51b8152602060048201819052602482015260008051602062003daa833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152601c602052604090205460ff161515811515141562000971576040805162461bcd60e51b815260206004820152601f60248201527f466565733a20416c72656164792073657420746f20746869732076616c756500604482015290519081900360640190fd5b6001600160a01b03919091166000908152601c60205260409020805460ff1916911515919091179055565b620009a66200047c565b6005546001600160a01b03908116911614620009f8576040805162461bcd60e51b8152602060048201819052602482015260008051602062003daa833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152601d602052604090205460ff161515811515141562000a585760405162461bcd60e51b815260040180806020018281038252602281526020018062003d676022913960400191505060405180910390fd5b6001600160a01b03919091166000908152601d60205260409020805460ff1916911515919091179055565b505050565b60008282018381101562000429576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1062000b2657805160ff191683800117855562000b56565b8280016001018555821562000b56579182015b8281111562000b5657825182559160200191906001019062000b39565b5062000b6492915062000b68565b5090565b5b8082111562000b64576000815560010162000b69565b6131b68062000b8f6000396000f3fe6080604052600436106103905760003560e01c80637f2feddc116101dc578063c024666811610102578063e470437f116100a0578063f11a24d31161006f578063f11a24d314610c32578063f637434214610c47578063fb0ecfa414610c5c578063fe575a8714610c8c57610397565b8063e470437f14610bc0578063e6acd7e514610bd5578063e9b786cb14610bea578063eb91e65114610bff57610397565b8063cd49513f116100dc578063cd49513f14610afa578063d00efb2f14610b35578063dd62ed3e14610b4a578063e16830a814610b8557610397565b8063c024666814610a95578063c3c8cd8014610ad0578063c9567bf914610ae557610397565b80639cfe42da1161017a578063af465a2711610149578063af465a27146109e7578063b222e0c2146109fc578063b40f946914610a2f578063bf95793d14610a6257610397565b80639cfe42da1461093a578063a1addd951461096d578063a3e6746014610999578063a9059cbb146109ae57610397565b806386917524116101b657806386917524146108e65780638da5cb5b146108fb578063904236d11461091057806395d89b411461092557610397565b80637f2feddc146108635780638036d590146108965780638366e79a146108ab57610397565b80634e6fd6c4116102c15780636ac9a8701161025f578063715018a61161022e578063715018a6146107dc578063728d41c9146107f157806373dd858c1461081b578063766f9bb21461084e57610397565b80636ac9a8701461074f5780636d7adcad1461077f5780636fc3eaec1461079457806370a08231146107a957610397565b80635ec6ee761161029b5780635ec6ee76146106b65780636402511e146106e657806364f5a5bb1461071057806366a88d961461073a57610397565b80634e6fd6c4146106425780634fbee193146106575780635932ead11461068a57610397565b80631daa8a651161032e57806330280a711161030857806330280a71146105b2578063307aebc9146105ed578063313ce5671461060257806349bd5a5e1461062d57610397565b80631daa8a651461054557806323b872dd1461055a5780632d3aecc91461059d57610397565b806318160ddd1161036a57806318160ddd146104a45780631816467f146104cb5780631a8145bb146105005780631b5df42e1461051557610397565b806306fdde031461039c578063095ea7b3146104265780631694505e1461047357610397565b3661039757005b600080fd5b3480156103a857600080fd5b506103b1610cbf565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103eb5781810151838201526020016103d3565b50505050905090810190601f1680156104185780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561043257600080fd5b5061045f6004803603604081101561044957600080fd5b506001600160a01b038135169060200135610d55565b604080519115158252519081900360200190f35b34801561047f57600080fd5b50610488610d73565b604080516001600160a01b039092168252519081900360200190f35b3480156104b057600080fd5b506104b9610d8b565b60408051918252519081900360200190f35b3480156104d757600080fd5b506104fe600480360360208110156104ee57600080fd5b50356001600160a01b0316610d91565b005b34801561050c57600080fd5b506104b9610e0b565b34801561052157600080fd5b506104fe6004803603604081101561053857600080fd5b5080359060200135610e11565b34801561055157600080fd5b506104b9610ebd565b34801561056657600080fd5b5061045f6004803603606081101561057d57600080fd5b506001600160a01b03813581169160208101359091169060400135610ec3565b3480156105a957600080fd5b506104b9610f4a565b3480156105be57600080fd5b506104fe600480360360408110156105d557600080fd5b506001600160a01b0381351690602001351515610f50565b3480156105f957600080fd5b5061045f611031565b34801561060e57600080fd5b5061061761103f565b6040805160ff9092168252519081900360200190f35b34801561063957600080fd5b50610488611044565b34801561064e57600080fd5b50610488611053565b34801561066357600080fd5b5061045f6004803603602081101561067a57600080fd5b50356001600160a01b0316611059565b34801561069657600080fd5b506104fe600480360360208110156106ad57600080fd5b5035151561106e565b3480156106c257600080fd5b506104fe600480360360408110156106d957600080fd5b50803590602001356110e2565b3480156106f257600080fd5b506104fe6004803603602081101561070957600080fd5b503561118e565b34801561071c57600080fd5b506104fe6004803603602081101561073357600080fd5b50356111f1565b34801561074657600080fd5b506104b961129f565b34801561075b57600080fd5b506104fe6004803603604081101561077257600080fd5b50803590602001356112a5565b34801561078b57600080fd5b506104b961135b565b3480156107a057600080fd5b506104fe611361565b3480156107b557600080fd5b506104b9600480360360208110156107cc57600080fd5b50356001600160a01b03166113f7565b3480156107e857600080fd5b506104fe611412565b3480156107fd57600080fd5b506104fe6004803603602081101561081457600080fd5b50356114b4565b34801561082757600080fd5b506104fe6004803603602081101561083e57600080fd5b50356001600160a01b031661156c565b34801561085a57600080fd5b506104b96115e6565b34801561086f57600080fd5b506104b96004803603602081101561088657600080fd5b50356001600160a01b03166115ec565b3480156108a257600080fd5b506104b96115fd565b3480156108b757600080fd5b5061045f600480360360408110156108ce57600080fd5b506001600160a01b0381358116916020013516611603565b3480156108f257600080fd5b506104b96117c0565b34801561090757600080fd5b506104886117c6565b34801561091c57600080fd5b506104b96117d5565b34801561093157600080fd5b506103b16117db565b34801561094657600080fd5b506104fe6004803603602081101561095d57600080fd5b50356001600160a01b031661183c565b34801561097957600080fd5b506104fe6004803603602081101561099057600080fd5b5035151561196b565b3480156109a557600080fd5b506104b96119e1565b3480156109ba57600080fd5b5061045f600480360360408110156109d157600080fd5b506001600160a01b0381351690602001356119e7565b3480156109f357600080fd5b506104b96119fb565b348015610a0857600080fd5b506104b960048036036020811015610a1f57600080fd5b50356001600160a01b0316611a01565b348015610a3b57600080fd5b5061045f60048036036020811015610a5257600080fd5b50356001600160a01b0316611a13565b348015610a6e57600080fd5b5061045f60048036036020811015610a8557600080fd5b50356001600160a01b0316611a28565b348015610aa157600080fd5b506104fe60048036036040811015610ab857600080fd5b506001600160a01b0381351690602001351515611a3d565b348015610adc57600080fd5b506104fe611b34565b348015610af157600080fd5b506104fe611b9c565b348015610b0657600080fd5b506104fe60048036036040811015610b1d57600080fd5b506001600160a01b0381351690602001351515611cab565b348015610b4157600080fd5b506104b9611d21565b348015610b5657600080fd5b506104b960048036036040811015610b6d57600080fd5b506001600160a01b0381358116916020013516611d27565b348015610b9157600080fd5b506104fe60048036036040811015610ba857600080fd5b506001600160a01b0381351690602001351515611d52565b348015610bcc57600080fd5b506104b9611e33565b348015610be157600080fd5b506104b9611e39565b348015610bf657600080fd5b506104b9611e3f565b348015610c0b57600080fd5b506104fe60048036036020811015610c2257600080fd5b50356001600160a01b0316611e45565b348015610c3e57600080fd5b506104b9611f15565b348015610c5357600080fd5b506104b9611f1b565b348015610c6857600080fd5b506104fe60048036036040811015610c7f57600080fd5b5080359060200135611f21565b348015610c9857600080fd5b5061045f60048036036020811015610caf57600080fd5b50356001600160a01b0316611fcd565b60038054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610d4b5780601f10610d2057610100808354040283529160200191610d4b565b820191906000526020600020905b815481529060010190602001808311610d2e57829003601f168201915b5050505050905090565b6000610d69610d626120de565b84846120e2565b5060015b92915050565b737a250d5630b4cf539739df2c5dacb4c659f2488d81565b60025490565b610d996120de565b6005546001600160a01b03908116911614610de9576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b601780546001600160a01b0319166001600160a01b0392909216919091179055565b60115481565b610e196120de565b6005546001600160a01b03908116911614610e69576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6012610e758383612084565b1115610eb25760405162461bcd60e51b81526004018080602001828103825260298152602001806131586029913960400191505060405180910390fd5b600f91909155601055565b600f5481565b6000610ed08484846121ce565b610f4084610edc6120de565b610f3b85604051806060016040528060288152602001613057602891396001600160a01b038a16600090815260016020526040812090610f1a6120de565b6001600160a01b031681526020810191909152604001600020549190612911565b6120e2565b5060019392505050565b600c5481565b610f586120de565b6005546001600160a01b03908116911614610fa8576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152601d602052604090205460ff16151581151514156110065760405162461bcd60e51b81526004018080602001828103825260228152602001806130146022913960400191505060405180910390fd5b6001600160a01b03919091166000908152601d60205260409020805460ff1916911515919091179055565b601b54610100900460ff1681565b600990565b6019546001600160a01b031681565b61dead81565b601c6020526000908152604090205460ff1681565b6110766120de565b6005546001600160a01b039081169116146110c6576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b601b8054911515620100000262ff000019909216919091179055565b6110ea6120de565b6005546001600160a01b0390811691161461113a576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b60186111468383612084565b11156111835760405162461bcd60e51b815260040180806020018281038252602981526020018061312f6029913960400191505060405180910390fd5b600d91909155600e55565b6111966120de565b6005546001600160a01b039081169116146111e6576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b633b9aca0002601455565b6111f96120de565b6005546001600160a01b03908116911614611249576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b60008111611294576040805162461bcd60e51b815260206004820152601360248201527206d61782074782063616e206e6f74206265203606c1b604482015290519081900360640190fd5b633b9aca0002601555565b60165481565b6112ad6120de565b6005546001600160a01b039081169116146112fd576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b600c6113098383612084565b11156113465760405162461bcd60e51b8152600401808060200182810382526029815260200180612fc66029913960400191505060405180910390fd5b6008829055600a819055600b91909155600c55565b60125481565b6113696120de565b6005546001600160a01b039081169116146113b9576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b60175460405147916001600160a01b03169082156108fc029083906000818181858888f193505050501580156113f3573d6000803e3d6000fd5b5050565b6001600160a01b031660009081526020819052604090205490565b61141a6120de565b6005546001600160a01b0390811691161461146a576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6005546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6114bc6120de565b6005546001600160a01b0390811691161461150c576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b60008111611561576040805162461bcd60e51b815260206004820152601760248201527f6d61782077616c6c65742063616e206e6f742062652030000000000000000000604482015290519081900360640190fd5b633b9aca0002601655565b6115746120de565b6005546001600160a01b039081169116146115c4576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b601880546001600160a01b0319166001600160a01b0392909216919091179055565b600e5481565b602080526000908152604090205481565b60155481565b600061160d6120de565b6005546001600160a01b0390811691161461165d576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6001600160a01b0383163014156116bb576040805162461bcd60e51b815260206004820152601c60248201527f43616e2774207769746864726177206e617469766520746f6b656e7300000000604482015290519081900360640190fd5b6000836001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b15801561170a57600080fd5b505afa15801561171e573d6000803e3d6000fd5b505050506040513d602081101561173457600080fd5b50516040805163a9059cbb60e01b81526001600160a01b0386811660048301526024820184905291519293509086169163a9059cbb916044808201926020929091908290030181600087803b15801561178c57600080fd5b505af11580156117a0573d6000803e3d6000fd5b505050506040513d60208110156117b657600080fd5b5051949350505050565b60145481565b6005546001600160a01b031690565b600a5481565b60048054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610d4b5780601f10610d2057610100808354040283529160200191610d4b565b6118446120de565b6005546001600160a01b03908116911614611894576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6001600160a01b0381166000908152601f602052604090205460ff1615611902576040805162461bcd60e51b815260206004820152601e60248201527f426c61636b6c6973743a20416c726561647920626c61636b6c69737465640000604482015290519081900360640190fd5b6019546001600160a01b038281169116141561195d576040805162461bcd60e51b815260206004820152601560248201527421b0b73737ba10313630b1b5b634b9ba103830b4b960591b604482015290519081900360640190fd5b6119688160016129a8565b50565b6119736120de565b6005546001600160a01b039081169116146119c3576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b601b805491151563010000000263ff00000019909216919091179055565b600d5481565b6000610d696119f46120de565b84846121ce565b60135481565b60216020526000908152604090205481565b601e6020526000908152604090205460ff1681565b601d6020526000908152604090205460ff1681565b611a456120de565b6005546001600160a01b03908116911614611a95576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152601c602052604090205460ff1615158115151415611b09576040805162461bcd60e51b815260206004820152601f60248201527f466565733a20416c72656164792073657420746f20746869732076616c756500604482015290519081900360640190fd5b6001600160a01b03919091166000908152601c60205260409020805460ff1916911515919091179055565b611b3c6120de565b6005546001600160a01b03908116911614611b8c576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b60125460115401611968816129d3565b611ba46120de565b6005546001600160a01b03908116911614611bf4576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b601b54610100900460ff1615611c51576040805162461bcd60e51b815260206004820152601c60248201527f436f6e747261637420697320616c7265616479206c61756e6368656400000000604482015290519081900360640190fd5b601b805443601a5562ff00001961ff0019909116610100171662010000179055601354611c8d9061271090611c87906032611fe2565b90612042565b601555601354611ca69061271090611c87906064611fe2565b601655565b611cb36120de565b6005546001600160a01b03908116911614611d03576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b611d0d8282611a3d565b611d178282610f50565b6113f38282611d52565b601a5481565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b611d5a6120de565b6005546001600160a01b03908116911614611daa576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152601e602052604090205460ff1615158115151415611e085760405162461bcd60e51b81526004018080602001828103825260268152602001806131096026913960400191505060405180910390fd5b6001600160a01b03919091166000908152601e60205260409020805460ff1916911515919091179055565b60105481565b600b5481565b60095481565b611e4d6120de565b6005546001600160a01b03908116911614611e9d576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6001600160a01b0381166000908152601f602052604090205460ff16611f0a576040805162461bcd60e51b815260206004820152601a60248201527f426c61636b6c6973743a204e6f7420626c61636b6c6973746564000000000000604482015290519081900360640190fd5b6119688160006129a8565b60075481565b60085481565b611f296120de565b6005546001600160a01b03908116911614611f79576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b600c611f858383612084565b1115611fc25760405162461bcd60e51b8152600401808060200182810382526025815260200180612fef6025913960400191505060405180910390fd5b600791909155600955565b601f6020526000908152604090205460ff1681565b600082611ff157506000610d6d565b82820282848281611ffe57fe5b041461203b5760405162461bcd60e51b81526004018080602001828103825260218152602001806130366021913960400191505060405180910390fd5b9392505050565b600061203b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612ad9565b60008282018381101561203b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b3390565b6001600160a01b0383166121275760405162461bcd60e51b81526004018080602001828103825260248152602001806130e56024913960400191505060405180910390fd5b6001600160a01b03821661216c5760405162461bcd60e51b8152600401808060200182810382526022815260200180612f7e6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316612229576040805162461bcd60e51b815260206004820152601e60248201527f7472616e736665722066726f6d20746865207a65726f20616464726573730000604482015290519081900360640190fd5b6001600160a01b038216612284576040805162461bcd60e51b815260206004820152601c60248201527f7472616e7366657220746f20746865207a65726f206164647265737300000000604482015290519081900360640190fd5b601554811115806122ad57506001600160a01b0383166000908152601d602052604090205460ff165b806122d057506001600160a01b0382166000908152601d602052604090205460ff165b612317576040805162461bcd60e51b8152602060048201526013602482015272547820416d6f756e7420746f6f206c6172676560681b604482015290519081900360640190fd5b60165461232d82612327856113f7565b90612084565b11158061235257506001600160a01b0382166000908152601e602052604090205460ff165b61238d5760405162461bcd60e51b815260040180806020018281038252602181526020018061309f6021913960400191505060405180910390fd5b601b54610100900460ff16806123bb57506001600160a01b0383166000908152601c602052604090205460ff165b806123de57506001600160a01b0382166000908152601c602052604090205460ff165b612424576040805162461bcd60e51b815260206004820152601260248201527157616974696e6720746f20676f206c69766560701b604482015290519081900360640190fd5b6001600160a01b0383166000908152601f602052604090205460ff161561248a576040805162461bcd60e51b815260206004820152601560248201527414d95b99195c881a5cc8189b1858dadb1a5cdd1959605a1b604482015290519081900360640190fd5b806124a05761249b83836000612b3e565b61290c565b6012546011546014546019549190920191821015906001600160a01b038681169116148015906124cd5750805b80156124dc5750601b5460ff16155b1561250657601b805460ff191660011790556124f7826129d3565b601b805460ff19169055612576565b6019546001600160a01b03868116911614801561253157506019546001600160a01b03858116911614155b80156125415750601a5460010143105b801561256657506001600160a01b0384166000908152601c602052604090205460ff16155b15612576576125768460016129a8565b601b546001600160a01b0386166000908152601c602052604090205460ff918216159116806125bd57506001600160a01b0385166000908152601c602052604090205460ff165b156125c6575060005b80156128fd576019546000906001600160a01b03878116911614156127d357601b546301000000900460ff1615612748576001600160a01b03871660009081526020805260409020541580159061263a57506001600160a01b038716600090815260208052604090205442610e1090910110155b1561266a57600d54600855600e54600a556001600160a01b03871660009081526020805260409020429055612743565b6001600160a01b0387166000908152602080526040902054158015906126ae57506001600160a01b0387166000908152602080526040902054426201518090910110155b156126de57600f54600855601054600a556001600160a01b03871660009081526020805260409020429055612743565b6001600160a01b03871660009081526020805260409020541580159061272257506001600160a01b03871660009081526020805260409020544262278d0090910110155b156127365760006008819055600a55612743565b600b54600855600c54600a555b612755565b600b54600855600c54600a555b600061276e600a5460085461208490919063ffffffff16565b905061277f6064611c878884611fe2565b91506127a661279d82611c8760085486611fe290919063ffffffff16565b60115490612084565b601155600a546127ca906127c1908390611c87908690611fe2565b60125490612084565b601255506128dd565b601b5462010000900460ff1615612827576001600160a01b038616600090815260216020526040902054421161280857600080fd5b6001600160a01b0386166000908152602160205260409020601e420190555b601b546301000000900460ff16801561285557506001600160a01b0386166000908152602080526040902054155b15612875576001600160a01b038616600090815260208052604090204290555b600061288e60095460075461208490919063ffffffff16565b905061289f6064611c878884611fe2565b91506128bd61279d82611c8760075486611fe290919063ffffffff16565b6011556009546128d8906127c1908390611c87908690611fe2565b601255505b80156128fb576128ee873083612b3e565b6128f88582612c99565b94505b505b612908868686612b3e565b5050505b505050565b600081848411156129a05760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561296557818101518382015260200161294d565b50505050905090810190601f1680156129925780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b03919091166000908152601f60205260409020805460ff1916911515919091179055565b6000601454905060006129fa6002611c8785611c8760115487611fe290919063ffffffff16565b90506000612a1282612a0c8582612c99565b90612c99565b90506000612a208484612c99565b9050612a2b81612cdb565b476000612a3c83611c878487611fe2565b90506000612a4a8383612c99565b9050612a63612a5a876002611fe2565b60115490612c99565b601155612a87612a7e612a77886002611fe2565b8990612c99565b60125490612c99565b6012556017546040516001600160a01b039091169083156108fc029084906000818181858888f19350505050158015612ac4573d6000803e3d6000fd5b50612acf8682612ea7565b5050505050505050565b60008183612b285760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561296557818101518382015260200161294d565b506000838581612b3457fe5b0495945050505050565b6001600160a01b038316612b835760405162461bcd60e51b81526004018080602001828103825260258152602001806130c06025913960400191505060405180910390fd5b6001600160a01b038216612bc85760405162461bcd60e51b8152600401808060200182810382526023815260200180612f5b6023913960400191505060405180910390fd5b612bd383838361290c565b612c1081604051806060016040528060268152602001612fa0602691396001600160a01b0386166000908152602081905260409020549190612911565b6001600160a01b038085166000908152602081905260408082209390935590841681522054612c3f9082612084565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600061203b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612911565b60408051600280825260608083018452926020830190803683370190505090503081600081518110612d0957fe5b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015612d7657600080fd5b505afa158015612d8a573d6000803e3d6000fd5b505050506040513d6020811015612da057600080fd5b5051815182906001908110612db157fe5b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663791ac9478360008430426040518663ffffffff1660e01b81526004018086815260200185815260200180602001846001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015612e6a578181015183820152602001612e52565b505050509050019650505050505050600060405180830381600087803b158015612e9357600080fd5b505af1158015612908573d6000803e3d6000fd5b6018546040805163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0390921660848301524260a483015251737a250d5630b4cf539739df2c5dacb4c659f2488d9163f305d71991849160c48082019260609290919082900301818588803b158015612f2957600080fd5b505af1158015612f3d573d6000803e3d6000fd5b50505050506040513d6060811015612f5457600080fd5b5050505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365546f74616c2064656661756c74206665652063616e206e6f74206265206d6f7265207468616e203132546f74616c20627579206665652063616e206e6f74206265206d6f7265207468616e20313254784c696d69743a20416c72656164792073657420746f20746869732076616c7565536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725472616e736665722077696c6c206578636565642077616c6c6574206c696d697445524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737357616c6c65744c696d69743a20416c72656164792073657420746f20746869732076616c7565546f74616c2064656661756c74206665652063616e206e6f74206265206d6f7265207468616e203235546f74616c2064656661756c74206665652063616e206e6f74206265206d6f7265207468616e203138a264697066735822122087fc00fe1ca41a3ffd6b38cbbeb3dffc648ab9d11b541176c23663221b1d4f1364736f6c634300060c003345524332303a20617070726f766520746f20746865207a65726f206164647265737354784c696d69743a20416c72656164792073657420746f20746869732076616c7565536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657245524332303a20617070726f76652066726f6d20746865207a65726f206164647265737357616c6c65744c696d69743a20416c72656164792073657420746f20746869732076616c7565
Deployed Bytecode
0x6080604052600436106103905760003560e01c80637f2feddc116101dc578063c024666811610102578063e470437f116100a0578063f11a24d31161006f578063f11a24d314610c32578063f637434214610c47578063fb0ecfa414610c5c578063fe575a8714610c8c57610397565b8063e470437f14610bc0578063e6acd7e514610bd5578063e9b786cb14610bea578063eb91e65114610bff57610397565b8063cd49513f116100dc578063cd49513f14610afa578063d00efb2f14610b35578063dd62ed3e14610b4a578063e16830a814610b8557610397565b8063c024666814610a95578063c3c8cd8014610ad0578063c9567bf914610ae557610397565b80639cfe42da1161017a578063af465a2711610149578063af465a27146109e7578063b222e0c2146109fc578063b40f946914610a2f578063bf95793d14610a6257610397565b80639cfe42da1461093a578063a1addd951461096d578063a3e6746014610999578063a9059cbb146109ae57610397565b806386917524116101b657806386917524146108e65780638da5cb5b146108fb578063904236d11461091057806395d89b411461092557610397565b80637f2feddc146108635780638036d590146108965780638366e79a146108ab57610397565b80634e6fd6c4116102c15780636ac9a8701161025f578063715018a61161022e578063715018a6146107dc578063728d41c9146107f157806373dd858c1461081b578063766f9bb21461084e57610397565b80636ac9a8701461074f5780636d7adcad1461077f5780636fc3eaec1461079457806370a08231146107a957610397565b80635ec6ee761161029b5780635ec6ee76146106b65780636402511e146106e657806364f5a5bb1461071057806366a88d961461073a57610397565b80634e6fd6c4146106425780634fbee193146106575780635932ead11461068a57610397565b80631daa8a651161032e57806330280a711161030857806330280a71146105b2578063307aebc9146105ed578063313ce5671461060257806349bd5a5e1461062d57610397565b80631daa8a651461054557806323b872dd1461055a5780632d3aecc91461059d57610397565b806318160ddd1161036a57806318160ddd146104a45780631816467f146104cb5780631a8145bb146105005780631b5df42e1461051557610397565b806306fdde031461039c578063095ea7b3146104265780631694505e1461047357610397565b3661039757005b600080fd5b3480156103a857600080fd5b506103b1610cbf565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103eb5781810151838201526020016103d3565b50505050905090810190601f1680156104185780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561043257600080fd5b5061045f6004803603604081101561044957600080fd5b506001600160a01b038135169060200135610d55565b604080519115158252519081900360200190f35b34801561047f57600080fd5b50610488610d73565b604080516001600160a01b039092168252519081900360200190f35b3480156104b057600080fd5b506104b9610d8b565b60408051918252519081900360200190f35b3480156104d757600080fd5b506104fe600480360360208110156104ee57600080fd5b50356001600160a01b0316610d91565b005b34801561050c57600080fd5b506104b9610e0b565b34801561052157600080fd5b506104fe6004803603604081101561053857600080fd5b5080359060200135610e11565b34801561055157600080fd5b506104b9610ebd565b34801561056657600080fd5b5061045f6004803603606081101561057d57600080fd5b506001600160a01b03813581169160208101359091169060400135610ec3565b3480156105a957600080fd5b506104b9610f4a565b3480156105be57600080fd5b506104fe600480360360408110156105d557600080fd5b506001600160a01b0381351690602001351515610f50565b3480156105f957600080fd5b5061045f611031565b34801561060e57600080fd5b5061061761103f565b6040805160ff9092168252519081900360200190f35b34801561063957600080fd5b50610488611044565b34801561064e57600080fd5b50610488611053565b34801561066357600080fd5b5061045f6004803603602081101561067a57600080fd5b50356001600160a01b0316611059565b34801561069657600080fd5b506104fe600480360360208110156106ad57600080fd5b5035151561106e565b3480156106c257600080fd5b506104fe600480360360408110156106d957600080fd5b50803590602001356110e2565b3480156106f257600080fd5b506104fe6004803603602081101561070957600080fd5b503561118e565b34801561071c57600080fd5b506104fe6004803603602081101561073357600080fd5b50356111f1565b34801561074657600080fd5b506104b961129f565b34801561075b57600080fd5b506104fe6004803603604081101561077257600080fd5b50803590602001356112a5565b34801561078b57600080fd5b506104b961135b565b3480156107a057600080fd5b506104fe611361565b3480156107b557600080fd5b506104b9600480360360208110156107cc57600080fd5b50356001600160a01b03166113f7565b3480156107e857600080fd5b506104fe611412565b3480156107fd57600080fd5b506104fe6004803603602081101561081457600080fd5b50356114b4565b34801561082757600080fd5b506104fe6004803603602081101561083e57600080fd5b50356001600160a01b031661156c565b34801561085a57600080fd5b506104b96115e6565b34801561086f57600080fd5b506104b96004803603602081101561088657600080fd5b50356001600160a01b03166115ec565b3480156108a257600080fd5b506104b96115fd565b3480156108b757600080fd5b5061045f600480360360408110156108ce57600080fd5b506001600160a01b0381358116916020013516611603565b3480156108f257600080fd5b506104b96117c0565b34801561090757600080fd5b506104886117c6565b34801561091c57600080fd5b506104b96117d5565b34801561093157600080fd5b506103b16117db565b34801561094657600080fd5b506104fe6004803603602081101561095d57600080fd5b50356001600160a01b031661183c565b34801561097957600080fd5b506104fe6004803603602081101561099057600080fd5b5035151561196b565b3480156109a557600080fd5b506104b96119e1565b3480156109ba57600080fd5b5061045f600480360360408110156109d157600080fd5b506001600160a01b0381351690602001356119e7565b3480156109f357600080fd5b506104b96119fb565b348015610a0857600080fd5b506104b960048036036020811015610a1f57600080fd5b50356001600160a01b0316611a01565b348015610a3b57600080fd5b5061045f60048036036020811015610a5257600080fd5b50356001600160a01b0316611a13565b348015610a6e57600080fd5b5061045f60048036036020811015610a8557600080fd5b50356001600160a01b0316611a28565b348015610aa157600080fd5b506104fe60048036036040811015610ab857600080fd5b506001600160a01b0381351690602001351515611a3d565b348015610adc57600080fd5b506104fe611b34565b348015610af157600080fd5b506104fe611b9c565b348015610b0657600080fd5b506104fe60048036036040811015610b1d57600080fd5b506001600160a01b0381351690602001351515611cab565b348015610b4157600080fd5b506104b9611d21565b348015610b5657600080fd5b506104b960048036036040811015610b6d57600080fd5b506001600160a01b0381358116916020013516611d27565b348015610b9157600080fd5b506104fe60048036036040811015610ba857600080fd5b506001600160a01b0381351690602001351515611d52565b348015610bcc57600080fd5b506104b9611e33565b348015610be157600080fd5b506104b9611e39565b348015610bf657600080fd5b506104b9611e3f565b348015610c0b57600080fd5b506104fe60048036036020811015610c2257600080fd5b50356001600160a01b0316611e45565b348015610c3e57600080fd5b506104b9611f15565b348015610c5357600080fd5b506104b9611f1b565b348015610c6857600080fd5b506104fe60048036036040811015610c7f57600080fd5b5080359060200135611f21565b348015610c9857600080fd5b5061045f60048036036020811015610caf57600080fd5b50356001600160a01b0316611fcd565b60038054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610d4b5780601f10610d2057610100808354040283529160200191610d4b565b820191906000526020600020905b815481529060010190602001808311610d2e57829003601f168201915b5050505050905090565b6000610d69610d626120de565b84846120e2565b5060015b92915050565b737a250d5630b4cf539739df2c5dacb4c659f2488d81565b60025490565b610d996120de565b6005546001600160a01b03908116911614610de9576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b601780546001600160a01b0319166001600160a01b0392909216919091179055565b60115481565b610e196120de565b6005546001600160a01b03908116911614610e69576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6012610e758383612084565b1115610eb25760405162461bcd60e51b81526004018080602001828103825260298152602001806131586029913960400191505060405180910390fd5b600f91909155601055565b600f5481565b6000610ed08484846121ce565b610f4084610edc6120de565b610f3b85604051806060016040528060288152602001613057602891396001600160a01b038a16600090815260016020526040812090610f1a6120de565b6001600160a01b031681526020810191909152604001600020549190612911565b6120e2565b5060019392505050565b600c5481565b610f586120de565b6005546001600160a01b03908116911614610fa8576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152601d602052604090205460ff16151581151514156110065760405162461bcd60e51b81526004018080602001828103825260228152602001806130146022913960400191505060405180910390fd5b6001600160a01b03919091166000908152601d60205260409020805460ff1916911515919091179055565b601b54610100900460ff1681565b600990565b6019546001600160a01b031681565b61dead81565b601c6020526000908152604090205460ff1681565b6110766120de565b6005546001600160a01b039081169116146110c6576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b601b8054911515620100000262ff000019909216919091179055565b6110ea6120de565b6005546001600160a01b0390811691161461113a576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b60186111468383612084565b11156111835760405162461bcd60e51b815260040180806020018281038252602981526020018061312f6029913960400191505060405180910390fd5b600d91909155600e55565b6111966120de565b6005546001600160a01b039081169116146111e6576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b633b9aca0002601455565b6111f96120de565b6005546001600160a01b03908116911614611249576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b60008111611294576040805162461bcd60e51b815260206004820152601360248201527206d61782074782063616e206e6f74206265203606c1b604482015290519081900360640190fd5b633b9aca0002601555565b60165481565b6112ad6120de565b6005546001600160a01b039081169116146112fd576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b600c6113098383612084565b11156113465760405162461bcd60e51b8152600401808060200182810382526029815260200180612fc66029913960400191505060405180910390fd5b6008829055600a819055600b91909155600c55565b60125481565b6113696120de565b6005546001600160a01b039081169116146113b9576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b60175460405147916001600160a01b03169082156108fc029083906000818181858888f193505050501580156113f3573d6000803e3d6000fd5b5050565b6001600160a01b031660009081526020819052604090205490565b61141a6120de565b6005546001600160a01b0390811691161461146a576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6005546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6114bc6120de565b6005546001600160a01b0390811691161461150c576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b60008111611561576040805162461bcd60e51b815260206004820152601760248201527f6d61782077616c6c65742063616e206e6f742062652030000000000000000000604482015290519081900360640190fd5b633b9aca0002601655565b6115746120de565b6005546001600160a01b039081169116146115c4576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b601880546001600160a01b0319166001600160a01b0392909216919091179055565b600e5481565b602080526000908152604090205481565b60155481565b600061160d6120de565b6005546001600160a01b0390811691161461165d576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6001600160a01b0383163014156116bb576040805162461bcd60e51b815260206004820152601c60248201527f43616e2774207769746864726177206e617469766520746f6b656e7300000000604482015290519081900360640190fd5b6000836001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b15801561170a57600080fd5b505afa15801561171e573d6000803e3d6000fd5b505050506040513d602081101561173457600080fd5b50516040805163a9059cbb60e01b81526001600160a01b0386811660048301526024820184905291519293509086169163a9059cbb916044808201926020929091908290030181600087803b15801561178c57600080fd5b505af11580156117a0573d6000803e3d6000fd5b505050506040513d60208110156117b657600080fd5b5051949350505050565b60145481565b6005546001600160a01b031690565b600a5481565b60048054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610d4b5780601f10610d2057610100808354040283529160200191610d4b565b6118446120de565b6005546001600160a01b03908116911614611894576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6001600160a01b0381166000908152601f602052604090205460ff1615611902576040805162461bcd60e51b815260206004820152601e60248201527f426c61636b6c6973743a20416c726561647920626c61636b6c69737465640000604482015290519081900360640190fd5b6019546001600160a01b038281169116141561195d576040805162461bcd60e51b815260206004820152601560248201527421b0b73737ba10313630b1b5b634b9ba103830b4b960591b604482015290519081900360640190fd5b6119688160016129a8565b50565b6119736120de565b6005546001600160a01b039081169116146119c3576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b601b805491151563010000000263ff00000019909216919091179055565b600d5481565b6000610d696119f46120de565b84846121ce565b60135481565b60216020526000908152604090205481565b601e6020526000908152604090205460ff1681565b601d6020526000908152604090205460ff1681565b611a456120de565b6005546001600160a01b03908116911614611a95576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152601c602052604090205460ff1615158115151415611b09576040805162461bcd60e51b815260206004820152601f60248201527f466565733a20416c72656164792073657420746f20746869732076616c756500604482015290519081900360640190fd5b6001600160a01b03919091166000908152601c60205260409020805460ff1916911515919091179055565b611b3c6120de565b6005546001600160a01b03908116911614611b8c576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b60125460115401611968816129d3565b611ba46120de565b6005546001600160a01b03908116911614611bf4576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b601b54610100900460ff1615611c51576040805162461bcd60e51b815260206004820152601c60248201527f436f6e747261637420697320616c7265616479206c61756e6368656400000000604482015290519081900360640190fd5b601b805443601a5562ff00001961ff0019909116610100171662010000179055601354611c8d9061271090611c87906032611fe2565b90612042565b601555601354611ca69061271090611c87906064611fe2565b601655565b611cb36120de565b6005546001600160a01b03908116911614611d03576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b611d0d8282611a3d565b611d178282610f50565b6113f38282611d52565b601a5481565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b611d5a6120de565b6005546001600160a01b03908116911614611daa576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152601e602052604090205460ff1615158115151415611e085760405162461bcd60e51b81526004018080602001828103825260268152602001806131096026913960400191505060405180910390fd5b6001600160a01b03919091166000908152601e60205260409020805460ff1916911515919091179055565b60105481565b600b5481565b60095481565b611e4d6120de565b6005546001600160a01b03908116911614611e9d576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b6001600160a01b0381166000908152601f602052604090205460ff16611f0a576040805162461bcd60e51b815260206004820152601a60248201527f426c61636b6c6973743a204e6f7420626c61636b6c6973746564000000000000604482015290519081900360640190fd5b6119688160006129a8565b60075481565b60085481565b611f296120de565b6005546001600160a01b03908116911614611f79576040805162461bcd60e51b8152602060048201819052602482015260008051602061307f833981519152604482015290519081900360640190fd5b600c611f858383612084565b1115611fc25760405162461bcd60e51b8152600401808060200182810382526025815260200180612fef6025913960400191505060405180910390fd5b600791909155600955565b601f6020526000908152604090205460ff1681565b600082611ff157506000610d6d565b82820282848281611ffe57fe5b041461203b5760405162461bcd60e51b81526004018080602001828103825260218152602001806130366021913960400191505060405180910390fd5b9392505050565b600061203b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612ad9565b60008282018381101561203b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b3390565b6001600160a01b0383166121275760405162461bcd60e51b81526004018080602001828103825260248152602001806130e56024913960400191505060405180910390fd5b6001600160a01b03821661216c5760405162461bcd60e51b8152600401808060200182810382526022815260200180612f7e6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316612229576040805162461bcd60e51b815260206004820152601e60248201527f7472616e736665722066726f6d20746865207a65726f20616464726573730000604482015290519081900360640190fd5b6001600160a01b038216612284576040805162461bcd60e51b815260206004820152601c60248201527f7472616e7366657220746f20746865207a65726f206164647265737300000000604482015290519081900360640190fd5b601554811115806122ad57506001600160a01b0383166000908152601d602052604090205460ff165b806122d057506001600160a01b0382166000908152601d602052604090205460ff165b612317576040805162461bcd60e51b8152602060048201526013602482015272547820416d6f756e7420746f6f206c6172676560681b604482015290519081900360640190fd5b60165461232d82612327856113f7565b90612084565b11158061235257506001600160a01b0382166000908152601e602052604090205460ff165b61238d5760405162461bcd60e51b815260040180806020018281038252602181526020018061309f6021913960400191505060405180910390fd5b601b54610100900460ff16806123bb57506001600160a01b0383166000908152601c602052604090205460ff165b806123de57506001600160a01b0382166000908152601c602052604090205460ff165b612424576040805162461bcd60e51b815260206004820152601260248201527157616974696e6720746f20676f206c69766560701b604482015290519081900360640190fd5b6001600160a01b0383166000908152601f602052604090205460ff161561248a576040805162461bcd60e51b815260206004820152601560248201527414d95b99195c881a5cc8189b1858dadb1a5cdd1959605a1b604482015290519081900360640190fd5b806124a05761249b83836000612b3e565b61290c565b6012546011546014546019549190920191821015906001600160a01b038681169116148015906124cd5750805b80156124dc5750601b5460ff16155b1561250657601b805460ff191660011790556124f7826129d3565b601b805460ff19169055612576565b6019546001600160a01b03868116911614801561253157506019546001600160a01b03858116911614155b80156125415750601a5460010143105b801561256657506001600160a01b0384166000908152601c602052604090205460ff16155b15612576576125768460016129a8565b601b546001600160a01b0386166000908152601c602052604090205460ff918216159116806125bd57506001600160a01b0385166000908152601c602052604090205460ff165b156125c6575060005b80156128fd576019546000906001600160a01b03878116911614156127d357601b546301000000900460ff1615612748576001600160a01b03871660009081526020805260409020541580159061263a57506001600160a01b038716600090815260208052604090205442610e1090910110155b1561266a57600d54600855600e54600a556001600160a01b03871660009081526020805260409020429055612743565b6001600160a01b0387166000908152602080526040902054158015906126ae57506001600160a01b0387166000908152602080526040902054426201518090910110155b156126de57600f54600855601054600a556001600160a01b03871660009081526020805260409020429055612743565b6001600160a01b03871660009081526020805260409020541580159061272257506001600160a01b03871660009081526020805260409020544262278d0090910110155b156127365760006008819055600a55612743565b600b54600855600c54600a555b612755565b600b54600855600c54600a555b600061276e600a5460085461208490919063ffffffff16565b905061277f6064611c878884611fe2565b91506127a661279d82611c8760085486611fe290919063ffffffff16565b60115490612084565b601155600a546127ca906127c1908390611c87908690611fe2565b60125490612084565b601255506128dd565b601b5462010000900460ff1615612827576001600160a01b038616600090815260216020526040902054421161280857600080fd5b6001600160a01b0386166000908152602160205260409020601e420190555b601b546301000000900460ff16801561285557506001600160a01b0386166000908152602080526040902054155b15612875576001600160a01b038616600090815260208052604090204290555b600061288e60095460075461208490919063ffffffff16565b905061289f6064611c878884611fe2565b91506128bd61279d82611c8760075486611fe290919063ffffffff16565b6011556009546128d8906127c1908390611c87908690611fe2565b601255505b80156128fb576128ee873083612b3e565b6128f88582612c99565b94505b505b612908868686612b3e565b5050505b505050565b600081848411156129a05760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561296557818101518382015260200161294d565b50505050905090810190601f1680156129925780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b03919091166000908152601f60205260409020805460ff1916911515919091179055565b6000601454905060006129fa6002611c8785611c8760115487611fe290919063ffffffff16565b90506000612a1282612a0c8582612c99565b90612c99565b90506000612a208484612c99565b9050612a2b81612cdb565b476000612a3c83611c878487611fe2565b90506000612a4a8383612c99565b9050612a63612a5a876002611fe2565b60115490612c99565b601155612a87612a7e612a77886002611fe2565b8990612c99565b60125490612c99565b6012556017546040516001600160a01b039091169083156108fc029084906000818181858888f19350505050158015612ac4573d6000803e3d6000fd5b50612acf8682612ea7565b5050505050505050565b60008183612b285760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561296557818101518382015260200161294d565b506000838581612b3457fe5b0495945050505050565b6001600160a01b038316612b835760405162461bcd60e51b81526004018080602001828103825260258152602001806130c06025913960400191505060405180910390fd5b6001600160a01b038216612bc85760405162461bcd60e51b8152600401808060200182810382526023815260200180612f5b6023913960400191505060405180910390fd5b612bd383838361290c565b612c1081604051806060016040528060268152602001612fa0602691396001600160a01b0386166000908152602081905260409020549190612911565b6001600160a01b038085166000908152602081905260408082209390935590841681522054612c3f9082612084565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600061203b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612911565b60408051600280825260608083018452926020830190803683370190505090503081600081518110612d0957fe5b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015612d7657600080fd5b505afa158015612d8a573d6000803e3d6000fd5b505050506040513d6020811015612da057600080fd5b5051815182906001908110612db157fe5b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663791ac9478360008430426040518663ffffffff1660e01b81526004018086815260200185815260200180602001846001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015612e6a578181015183820152602001612e52565b505050509050019650505050505050600060405180830381600087803b158015612e9357600080fd5b505af1158015612908573d6000803e3d6000fd5b6018546040805163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0390921660848301524260a483015251737a250d5630b4cf539739df2c5dacb4c659f2488d9163f305d71991849160c48082019260609290919082900301818588803b158015612f2957600080fd5b505af1158015612f3d573d6000803e3d6000fd5b50505050506040513d6060811015612f5457600080fd5b5050505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365546f74616c2064656661756c74206665652063616e206e6f74206265206d6f7265207468616e203132546f74616c20627579206665652063616e206e6f74206265206d6f7265207468616e20313254784c696d69743a20416c72656164792073657420746f20746869732076616c7565536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725472616e736665722077696c6c206578636565642077616c6c6574206c696d697445524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737357616c6c65744c696d69743a20416c72656164792073657420746f20746869732076616c7565546f74616c2064656661756c74206665652063616e206e6f74206265206d6f7265207468616e203235546f74616c2064656661756c74206665652063616e206e6f74206265206d6f7265207468616e203138a264697066735822122087fc00fe1ca41a3ffd6b38cbbeb3dffc648ab9d11b541176c23663221b1d4f1364736f6c634300060c0033
Deployed Bytecode Sourcemap
8366:13190:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5014:100;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5915:169;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;5915:169:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;8502:115;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;8502:115:0;;;;;;;;;;;;;;5328:108;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;13983:99;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13983:99:0;-1:-1:-1;;;;;13983:99:0;;:::i;:::-;;9051:33;;;;;;;;;;;;;:::i;13001:259::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13001:259:0;;;;;;;:::i;8965:38::-;;;;;;;;;;;;;:::i;6092:355::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;6092:355:0;;;;;;;;;;;;;;;;;:::i;8831:36::-;;;;;;;;;;;;;:::i;11421:230::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;11421:230:0;;;;;;;;;;:::i;9689:22::-;;;;;;;;;;;;;:::i;5230:92::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9589:28;;;;;;;;;;;;;:::i;8441:54::-;;;;;;;;;;;;;:::i;9825:51::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9825:51:0;-1:-1:-1;;;;;9825:51:0;;:::i;13268:109::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13268:109:0;;;;:::i;12731:262::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12731:262:0;;;;;;;:::i;13851:124::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13851:124:0;;:::i;13489:167::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13489:167:0;;:::i;9416:39::-;;;;;;;;;;;;;:::i;12387:336::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12387:336:0;;;;;;;:::i;9091:27::-;;;;;;;;;;;;;:::i;14828:172::-;;;;;;;;;;;;;:::i;5444:127::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5444:127:0;-1:-1:-1;;;;;5444:127:0;;:::i;2499:148::-;;;;;;;;;;;;;:::i;13664:179::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13664:179:0;;:::i;14090:105::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14090:105:0;-1:-1:-1;;;;;14090:105:0;;:::i;8923:33::-;;;;;;;;;;;;;:::i;10242:43::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10242:43:0;-1:-1:-1;;;;;10242:43:0;;:::i;9303:35::-;;;;;;;;;;;;;:::i;21187:323::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;21187:323:0;;;;;;;;;;:::i;9209:56::-;;;;;;;;;;;;;:::i;2285:79::-;;;;;;;;;;;;;:::i;8744:29::-;;;;;;;;;;;;;:::i;5120:104::-;;;;;;;;;;;;;:::i;14203:253::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14203:253:0;-1:-1:-1;;;;;14203:253:0;;:::i;13384:97::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13384:97:0;;;;:::i;8876:40::-;;;;;;;;;;;;;:::i;5577:175::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;5577:175:0;;;;;;;;:::i;9127:38::-;;;;;;;;;;;;;:::i;10323:41::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10323:41:0;-1:-1:-1;;;;;10323:41:0;;:::i;10030:58::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10030:58:0;-1:-1:-1;;;;;10030:58:0;;:::i;9929:54::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9929:54:0;-1:-1:-1;;;;;9929:54:0;;:::i;11195:218::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;11195:218:0;;;;;;;;;;:::i;14655:161::-;;;;;;;;;;;;;:::i;15014:326::-;;;;;;;;;;;;;:::i;11913:222::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;11913:222:0;;;;;;;;;;:::i;9626:26::-;;;;;;;;;;;;;:::i;5758:151::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;5758:151:0;;;;;;;;;;:::i;11659:246::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;11659:246:0;;;;;;;;;;:::i;9010:32::-;;;;;;;;;;;;;:::i;8782:42::-;;;;;;;;;;;;;:::i;8709:28::-;;;;;;;;;;;;;:::i;14464:183::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14464:183:0;-1:-1:-1;;;;;14464:183:0;;:::i;8626:34::-;;;;;;;;;;;;;:::i;8667:35::-;;;;;;;;;;;;;:::i;12143:236::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12143:236:0;;;;;;;:::i;10152:46::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10152:46:0;-1:-1:-1;;;;;10152:46:0;;:::i;5014:100::-;5101:5;5094:12;;;;;;;;-1:-1:-1;;5094:12:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5068:13;;5094:12;;5101:5;;5094:12;;5101:5;5094:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5014:100;:::o;5915:169::-;5998:4;6015:39;6024:12;:10;:12::i;:::-;6038:7;6047:6;6015:8;:39::i;:::-;-1:-1:-1;6072:4:0;5915:169;;;;;:::o;8502:115::-;8574:42;8502:115;:::o;5328:108::-;5416:12;;5328:108;:::o;13983:99::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;14059:3:::1;:15:::0;;-1:-1:-1;;;;;;14059:15:0::1;-1:-1:-1::0;;;;;14059:15:0;;;::::1;::::0;;;::::1;::::0;;13983:99::o;9051:33::-;;;;:::o;13001:259::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;13128:2:::1;13101:23;:12:::0;13118:5;13101:16:::1;:23::i;:::-;:29;;13093:83;;;;-1:-1:-1::0;;;13093:83:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13187:19;:34:::0;;;;13232:12:::1;:20:::0;13001:259::o;8965:38::-;;;;:::o;6092:355::-;6232:4;6249:36;6259:6;6267:9;6278:6;6249:9;:36::i;:::-;6296:121;6305:6;6313:12;:10;:12::i;:::-;6327:89;6365:6;6327:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6327:19:0;;;;;;:11;:19;;;;;;6347:12;:10;:12::i;:::-;-1:-1:-1;;;;;6327:33:0;;;;;;;;;;;;-1:-1:-1;6327:33:0;;;:89;:37;:89::i;:::-;6296:8;:121::i;:::-;-1:-1:-1;6435:4:0;6092:355;;;;;:::o;8831:36::-;;;;:::o;11421:230::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;11516:30:0;::::1;;::::0;;;:21:::1;:30;::::0;;;;;::::1;;:39;;::::0;::::1;;;;11508:86;;;;-1:-1:-1::0;;;11508:86:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;11605:30:0;;;::::1;;::::0;;;:21:::1;:30;::::0;;;;:38;;-1:-1:-1;;11605:38:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11421:230::o;9689:22::-;;;;;;;;;:::o;5230:92::-;5313:1;5230:92;:::o;9589:28::-;;;-1:-1:-1;;;;;9589:28:0;;:::o;8441:54::-;8488:6;8441:54;:::o;9825:51::-;;;;;;;;;;;;;;;:::o;13268:109::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;13343:15:::1;:26:::0;;;::::1;;::::0;::::1;-1:-1:-1::0;;13343:26:0;;::::1;::::0;;;::::1;::::0;;13268:109::o;12731:262::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;12859:2:::1;12832:23;:12:::0;12849:5;12832:16:::1;:23::i;:::-;:29;;12824:83;;;;-1:-1:-1::0;;;12824:83:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12918:20;:35:::0;;;;12964:13:::1;:21:::0;12731:262::o;13851:124::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;13961:5:::1;13945:22;13930:12;:37:::0;13851:124::o;13489:167::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;13581:1:::1;13570:8;:12;13562:44;;;::::0;;-1:-1:-1;;;13562:44:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;13562:44:0;;;;;;;;;;;;;::::1;;13642:5;13630:18;13617:10;:31:::0;13489:167::o;9416:39::-;;;;:::o;12387:336::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;12511:2:::1;12484:23;:12:::0;12501:5;12484:16:::1;:23::i;:::-;:29;;12476:83;;;;-1:-1:-1::0;;;12476:83:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12570:16;:31:::0;;;12612:9:::1;:17:::0;;;12642:23:::1;:38:::0;;;;12691:16:::1;:24:::0;12387:336::o;9091:27::-;;;;:::o;14828:172::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;14958:3:::1;::::0;14942:50:::1;::::0;14910:21:::1;::::0;-1:-1:-1;;;;;14958:3:0::1;::::0;14942:50;::::1;;;::::0;14910:21;;14881:26:::1;14942:50:::0;14881:26;14942:50;14910:21;14958:3;14942:50;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;2482:1;14828:172::o:0;5444:127::-;-1:-1:-1;;;;;5545:18:0;5518:7;5545:18;;;;;;;;;;;;5444:127::o;2499:148::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;2590:6:::1;::::0;2569:40:::1;::::0;2606:1:::1;::::0;-1:-1:-1;;;;;2590:6:0::1;::::0;2569:40:::1;::::0;2606:1;;2569:40:::1;2620:6;:19:::0;;-1:-1:-1;;;;;;2620:19:0::1;::::0;;2499:148::o;13664:179::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;13760:1:::1;13749:8;:12;13741:48;;;::::0;;-1:-1:-1;;;13741:48:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;13829:5;13817:18;13800:14;:35:::0;13664:179::o;14090:105::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;14166:9:::1;:21:::0;;-1:-1:-1;;;;;;14166:21:0::1;-1:-1:-1::0;;;;;14166:21:0;;;::::1;::::0;;;::::1;::::0;;14090:105::o;8923:33::-;;;;:::o;10242:43::-;;;;;;;;;;;;;:::o;9303:35::-;;;;:::o;21187:323::-;21274:10;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;21304:23:0;::::1;21322:4;21304:23;;21296:64;;;::::0;;-1:-1:-1;;;21296:64:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;21371:24;21405:6;-1:-1:-1::0;;;;;21398:24:0::1;;21431:4;21398:39;;;;;;;;;;;;;-1:-1:-1::0;;;;;21398:39:0::1;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;21398:39:0;21456:46:::1;::::0;;-1:-1:-1;;;21456:46:0;;-1:-1:-1;;;;;21456:46:0;;::::1;;::::0;::::1;::::0;;;;;;;;;21398:39;;-1:-1:-1;21456:23:0;;::::1;::::0;::::1;::::0;:46;;;;;21398:39:::1;::::0;21456:46;;;;;;;;-1:-1:-1;21456:23:0;:46;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;21456:46:0;;21187:323;-1:-1:-1;;;;21187:323:0:o;9209:56::-;;;;:::o;2285:79::-;2350:6;;-1:-1:-1;;;;;2350:6:0;2285:79;:::o;8744:29::-;;;;:::o;5120:104::-;5209:7;5202:14;;;;;;;;-1:-1:-1;;5202:14:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5176:13;;5202:14;;5209:7;;5202:14;;5209:7;5202:14;;;;;;;;;;;;;;;;;;;;;;;;14203:253;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;14283:22:0;::::1;;::::0;;;:13:::1;:22;::::0;;;;;::::1;;14282:23;14274:66;;;::::0;;-1:-1:-1;;;14274:66:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;14370:13;::::0;-1:-1:-1;;;;;14359:24:0;;::::1;14370:13:::0;::::1;14359:24;;14351:58;;;::::0;;-1:-1:-1;;;14351:58:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;14351:58:0;;;;;;;;;;;;;::::1;;14420:28;14434:7;14443:4;14420:13;:28::i;:::-;14203:253:::0;:::o;13384:97::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;13453:9:::1;:20:::0;;;::::1;;::::0;::::1;-1:-1:-1::0;;13453:20:0;;::::1;::::0;;;::::1;::::0;;13384:97::o;8876:40::-;;;;:::o;5577:175::-;5663:4;5680:42;5690:12;:10;:12::i;:::-;5704:9;5715:6;5680:9;:42::i;9127:38::-;;;;:::o;10323:41::-;;;;;;;;;;;;;:::o;10030:58::-;;;;;;;;;;;;;;;:::o;9929:54::-;;;;;;;;;;;;;;;:::o;11195:218::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;11287:27:0;::::1;;::::0;;;:18:::1;:27;::::0;;;;;::::1;;:36;;::::0;::::1;;;;11279:80;;;::::0;;-1:-1:-1;;;11279:80:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;-1:-1:-1::0;;;;;11370:27:0;;;::::1;;::::0;;;:18:::1;:27;::::0;;;;:35;;-1:-1:-1;;11370:35:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11195:218::o;14655:161::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;14758:12:::1;::::0;14737:18:::1;::::0;:33:::1;14781:27;14737:33:::0;14781:8:::1;:27::i;15014:326::-:0;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;15078:10:::1;::::0;::::1;::::0;::::1;;;15077:11;15069:52;;;::::0;;-1:-1:-1;;;15069:52:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;15132:10;:17:::0;;15174:12:::1;15160:11;:26:::0;-1:-1:-1;;;;15132:17:0;;::::1;;;15197:22;::::0;::::1;::::0;;15243:7:::1;::::0;:26:::1;::::0;15263:5:::1;::::0;15243:15:::1;::::0;15255:2:::1;15243:11;:15::i;:::-;:19:::0;::::1;:26::i;:::-;15230:10;:39:::0;15305:7:::1;::::0;:27:::1;::::0;15326:5:::1;::::0;15305:16:::1;::::0;15317:3:::1;15305:11;:16::i;:27::-;15288:14;:44:::0;15014:326::o;11913:222::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;12002:31:::1;12018:7;12027:5;12002:15;:31::i;:::-;12044:34;12063:7;12072:5;12044:18;:34::i;:::-;12089:38;12112:7;12121:5;12089:22;:38::i;9626:26::-:0;;;;:::o;5758:151::-;-1:-1:-1;;;;;5874:18:0;;;5847:7;5874:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5758:151::o;11659:246::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;11758:34:0;::::1;;::::0;;;:25:::1;:34;::::0;;;;;::::1;;:43;;::::0;::::1;;;;11750:94;;;;-1:-1:-1::0;;;11750:94:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;11855:34:0;;;::::1;;::::0;;;:25:::1;:34;::::0;;;;:42;;-1:-1:-1;;11855:42:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11659:246::o;9010:32::-;;;;:::o;8782:42::-;;;;:::o;8709:28::-;;;;:::o;14464:183::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;14546:22:0;::::1;;::::0;;;:13:::1;:22;::::0;;;;;::::1;;14538:61;;;::::0;;-1:-1:-1;;;14538:61:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;14610:29;14624:7;14633:5;14610:13;:29::i;8626:34::-:0;;;;:::o;8667:35::-;;;;:::o;12143:236::-;2422:12;:10;:12::i;:::-;2412:6;;-1:-1:-1;;;;;2412:6:0;;;:22;;;2404:67;;;;;-1:-1:-1;;;2404:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2404:67:0;;;;;;;;;;;;;;;12259:2:::1;12232:23;:12:::0;12249:5;12232:16:::1;:23::i;:::-;:29;;12224:79;;;;-1:-1:-1::0;;;12224:79:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12314:15;:30:::0;;;;12355:8:::1;:16:::0;12143:236::o;10152:46::-;;;;;;;;;;;;;;;:::o;3210:246::-;3268:7;3292:6;3288:47;;-1:-1:-1;3322:1:0;3315:8;;3288:47;3357:5;;;3361:1;3357;:5;:1;3381:5;;;;;:10;3373:56;;;;-1:-1:-1;;;3373:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3447:1;3210:246;-1:-1:-1;;;3210:246:0:o;3464:132::-;3522:7;3549:39;3553:1;3556;3549:39;;;;;;;;;;;;;;;;;:3;:39::i;2681:179::-;2739:7;2771:5;;;2795:6;;;;2787:46;;;;;-1:-1:-1;;;2787:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;1573:98;1653:10;1573:98;:::o;7846:380::-;-1:-1:-1;;;;;7982:19:0;;7974:68;;;;-1:-1:-1;;;7974:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8061:21:0;;8053:68;;;;-1:-1:-1;;;8053:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8134:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8186:32;;;;;;;;;;;;;;;;;7846:380;;;:::o;15348:4082::-;-1:-1:-1;;;;;15446:18:0;;15438:61;;;;;-1:-1:-1;;;15438:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15518:16:0;;15510:57;;;;;-1:-1:-1;;;15510:57:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;15596:10;;15586:6;:20;;:51;;;-1:-1:-1;;;;;;15610:27:0;;;;;;:21;:27;;;;;;;;15586:51;:80;;;-1:-1:-1;;;;;;15641:25:0;;;;;;:21;:25;;;;;;;;15586:80;15578:112;;;;;-1:-1:-1;;;15578:112:0;;;;;;;;;;;;-1:-1:-1;;;15578:112:0;;;;;;;;;;;;;;;15738:14;;15709:25;15727:6;15709:13;15719:2;15709:9;:13::i;:::-;:17;;:25::i;:::-;:43;;:76;;;-1:-1:-1;;;;;;15756:29:0;;;;;;:25;:29;;;;;;;;15709:76;15701:122;;;;-1:-1:-1;;;15701:122:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15842:10;;;;;;;;:38;;-1:-1:-1;;;;;;15856:24:0;;;;;;:18;:24;;;;;;;;15842:38;:64;;;-1:-1:-1;;;;;;15884:22:0;;;;;;:18;:22;;;;;;;;15842:64;15834:95;;;;;-1:-1:-1;;;15834:95:0;;;;;;;;;;;;-1:-1:-1;;;15834:95:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;15949:19:0;;;;;;:13;:19;;;;;;;;15948:20;15940:54;;;;;-1:-1:-1;;;15940:54:0;;;;;;;;;;;;-1:-1:-1;;;15940:54:0;;;;;;;;;;;;;;;16010:11;16007:92;;16038:28;16054:4;16060:2;16064:1;16038:15;:28::i;:::-;16081:7;;16007:92;16160:12;;16139:18;;16219:12;;16269:13;;16139:33;;;;;16198;;;;-1:-1:-1;;;;;16261:21:0;;;16269:13;;16261:21;;;;:45;;;16299:7;16261:45;:71;;;;-1:-1:-1;16324:8:0;;;;16323:9;16261:71;16244:444;;;16359:8;:15;;-1:-1:-1;;16359:15:0;16370:4;16359:15;;;16389:27;16398:17;16389:8;:27::i;:::-;16431:8;:16;;-1:-1:-1;;16431:16:0;;;16244:444;;;16490:13;;-1:-1:-1;;;;;16482:21:0;;;16490:13;;16482:21;:57;;;;-1:-1:-1;16526:13:0;;-1:-1:-1;;;;;16520:19:0;;;16526:13;;16520:19;;16482:57;:104;;;;;16571:11;;16585:1;16571:15;16556:12;:30;16482:104;:144;;;;-1:-1:-1;;;;;;16604:22:0;;;;;;:18;:22;;;;;;;;16603:23;16482:144;16465:223;;;16653:23;16667:2;16671:4;16653:13;:23::i;:::-;16716:8;;-1:-1:-1;;;;;16740:24:0;;16700:12;16740:24;;;:18;:24;;;;;;16716:8;;;;16715:9;;16740:24;;:50;;-1:-1:-1;;;;;;16768:22:0;;;;;;:18;:22;;;;;;;;16740:50;16737:97;;;-1:-1:-1;16817:5:0;16737:97;16849:7;16846:2531;;;16934:13;;16873:12;;-1:-1:-1;;;;;16928:19:0;;;16934:13;;16928:19;16924:2293;;;16971:9;;;;;;;16968:1171;;;-1:-1:-1;;;;;17008:13:0;;;;;;:7;:13;;;;;;:18;;;;:93;;-1:-1:-1;;;;;;17056:13:0;;;;;;:7;:13;;;;;;17085:15;17073:7;17056:25;;;:44;;17008:93;17004:974;;;17150:20;;17131:16;:39;17209:13;;17197:9;:25;-1:-1:-1;;;;;17249:13:0;;-1:-1:-1;17249:13:0;;;:7;:13;;;;;17265:15;17249:31;;17004:974;;;-1:-1:-1;;;;;17314:13:0;;;;;;:7;:13;;;;;;:18;;;;:94;;-1:-1:-1;;;;;;17362:13:0;;;;;;:7;:13;;;;;;17392:15;17379:8;17362:26;;;:45;;17314:94;17310:668;;;17456:19;;17437:16;:38;17514:12;;17502:9;:24;-1:-1:-1;;;;;17553:13:0;;-1:-1:-1;17553:13:0;;;:7;:13;;;;;17569:15;17553:31;;17310:668;;;-1:-1:-1;;;;;17618:13:0;;;;;;:7;:13;;;;;;:18;;;;:93;;-1:-1:-1;;;;;;17666:13:0;;;;;;:7;:13;;;;;;17695:15;17683:7;17666:25;;;:44;;17618:93;17614:364;;;17759:1;17740:16;:20;;;17787:9;:13;17614:364;;;17876:23;;17857:16;:42;17938:16;;17926:9;:28;17614:364;16968:1171;;;18045:23;;18026:16;:42;18103:16;;18091:9;:28;16968:1171;18173:21;18197:31;18218:9;;18197:16;;:20;;:31;;;;:::i;:::-;18173:55;-1:-1:-1;18254:34:0;18284:3;18254:25;:6;18173:55;18254:10;:25::i;:34::-;18247:41;;18328:69;18351:45;18382:13;18351:26;18360:16;;18351:4;:8;;:26;;;;:::i;:45::-;18328:18;;;:22;:69::i;:::-;18307:18;:90;18457:9;;18431:56;;18448:38;;18472:13;;18448:19;;:4;;:8;:19::i;:38::-;18431:12;;;:16;:56::i;:::-;18416:12;:71;-1:-1:-1;16924:2293:0;;;18586:15;;;;;;;18583:169;;;-1:-1:-1;;;;;18633:12:0;;;;;;:8;:12;;;;;;18648:15;-1:-1:-1;18625:39:0;;;;;;-1:-1:-1;;;;;18687:12:0;;;;;;:8;:12;;;;;18721:10;18702:15;:30;18687:45;;18583:169;18774:9;;;;;;;:29;;;;-1:-1:-1;;;;;;18787:11:0;;;;;;:7;:11;;;;;;:16;18774:29;18770:107;;;-1:-1:-1;;;;;18828:11:0;;;;;;:7;:11;;;;;18842:15;18828:29;;18770:107;18895:20;18918:29;18938:8;;18918:15;;:19;;:29;;;;:::i;:::-;18895:52;-1:-1:-1;18973:33:0;19002:3;18973:24;:6;18895:52;18973:10;:24::i;:33::-;18966:40;;19046:67;19069:43;19099:12;19069:25;19078:15;;19069:4;:8;;:25;;;;:::i;19046:67::-;19025:18;:88;19173:8;;19147:54;;19164:36;;19187:12;;19164:18;;:4;;:8;:18::i;19147:54::-;19132:12;:69;-1:-1:-1;16924:2293:0;19236:8;;19233:133;;19264:42;19280:4;19294;19301;19264:15;:42::i;:::-;19334:16;:6;19345:4;19334:10;:16::i;:::-;19325:25;;19233:133;16846:2531;;19389:33;19405:4;19411:2;19415:6;19389:15;:33::i;:::-;15348:4082;;;;;;;:::o;3012:190::-;3098:7;3134:12;3126:6;;;;3118:29;;;;-1:-1:-1;;;3118:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3170:5:0;;;3012:190::o;21069:110::-;-1:-1:-1;;;;;21141:22:0;;;;;;;;:13;:22;;;;;:30;;-1:-1:-1;;21141:30:0;;;;;;;;;;21069:110::o;19438:912::-;19502:14;19519:12;;19502:29;;19593:23;19619:60;19677:1;19619:53;19654:17;19619:30;19630:18;;19619:6;:10;;:30;;;;:::i;:60::-;19593:86;-1:-1:-1;19690:17:0;19710:48;19593:86;19710:27;:6;19593:86;19710:10;:27::i;:::-;:31;;:48::i;:::-;19690:68;-1:-1:-1;19769:26:0;19798:27;:6;19809:15;19798:10;:27::i;:::-;19769:56;;19838:37;19856:18;19838:17;:37::i;:::-;19909:21;19888:18;19961:49;19991:18;19961:25;19909:21;19976:9;19961:14;:25::i;:49::-;19941:69;-1:-1:-1;20021:23:0;20047:25;:10;19941:69;20047:14;:25::i;:::-;20021:51;-1:-1:-1;20106:46:0;20129:22;:15;20149:1;20129:19;:22::i;:::-;20106:18;;;:22;:46::i;:::-;20085:18;:67;20178:52;20195:34;20206:22;:15;20226:1;20206:19;:22::i;:::-;20195:6;;:10;:34::i;:::-;20178:12;;;:16;:52::i;:::-;20163:12;:67;20259:3;;20243:41;;-1:-1:-1;;;;;20259:3:0;;;;20243:41;;;;;20274:9;;20259:3;20243:41;20259:3;20243:41;20274:9;20259:3;20243:41;;;;;;;;;;;;;;;;;;;;;20295:47;20309:15;20326;20295:13;:47::i;:::-;19438:912;;;;;;;;:::o;3604:189::-;3690:7;3725:12;3718:5;3710:28;;;;-1:-1:-1;;;3710:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3749:9;3765:1;3761;:5;;;;;;;3604:189;-1:-1:-1;;;;;3604:189:0:o;6455:573::-;-1:-1:-1;;;;;6595:20:0;;6587:70;;;;-1:-1:-1;;;6587:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6676:23:0;;6668:71;;;;-1:-1:-1;;;6668:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6752:47;6773:6;6781:9;6792:6;6752:20;:47::i;:::-;6832:71;6854:6;6832:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6832:17:0;;:9;:17;;;;;;;;;;;;:71;:21;:71::i;:::-;-1:-1:-1;;;;;6812:17:0;;;:9;:17;;;;;;;;;;;:91;;;;6937:20;;;;;;;:32;;6962:6;6937:24;:32::i;:::-;-1:-1:-1;;;;;6914:20:0;;;:9;:20;;;;;;;;;;;;:55;;;;6985:35;;;;;;;6914:20;;6985:35;;;;;;;;;;;;;6455:573;;;:::o;2868:136::-;2926:7;2953:43;2957:1;2960;2953:43;;;;;;;;;;;;;;;;;:3;:43::i;20658:403::-;20751:16;;;20765:1;20751:16;;;20727:21;20751:16;;;;;20727:21;20751:16;;;;;;;;;;-1:-1:-1;20751:16:0;20727:40;;20796:4;20778;20783:1;20778:7;;;;;;;;;;;;;:23;-1:-1:-1;;;;;20778:23:0;;;-1:-1:-1;;;;;20778:23:0;;;;;8574:42;-1:-1:-1;;;;;20822:20:0;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20822:22:0;20812:7;;:4;;20817:1;;20812:7;;;;;;;;;;;:32;-1:-1:-1;;;;;20812:32:0;;;-1:-1:-1;;;;;20812:32:0;;;;;8574:42;-1:-1:-1;;;;;20857:66:0;;20938:11;20964:1;20980:4;21007;21027:15;20857:196;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;20857:196:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20358:292;20592:9;;20442:200;;;-1:-1:-1;;;20442:200:0;;20514:4;20442:200;;;;;;;;;;-1:-1:-1;20442:200:0;;;;;;;;;;-1:-1:-1;;;;;20592:9:0;;;20442:200;;;;20616:15;20442:200;;;;;8574:42;;20442:31;;20481:9;;20442:200;;;;;;;;;;;;;;;20481:9;8574:42;20442:200;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;20358:292:0:o
Swarm Source
ipfs://87fc00fe1ca41a3ffd6b38cbbeb3dffc648ab9d11b541176c23663221b1d4f13
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.