ERC-20
Overview
Max Total Supply
1,000,000,000 YU
Holders
83
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
15,492,800 YUValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
YU
Compiler Version
v0.8.23+commit.f704f362
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-09-14 */ /** Doge's real name - YU https://x.com/yuandtoro?s=21&t=AAeulnrJ8097JIfGWHF2cQ https://www.instagram.com/p/BNbILTcDdEG/?hl=en https://www.instagram.com/yuandtoro?igsh=MzRlODBiNWFlZA== https://t.me/YuDogeErc **/ // SPDX-License-Identifier: MIT pragma solidity 0.8.23; 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; } } 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 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 YU 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; mapping(address => bool) private bots; mapping(address => uint256) private _holderLastTransferTimestamp; bool public transferDelayEnabled = false; address payable private _taxWallet; uint256 private _initialBuyTax = 20; uint256 private _initialSellTax = 20; uint256 private _finalBuyTax = 0; uint256 private _finalSellTax = 0; uint256 private _reduceBuyTaxAt = 20; uint256 private _reduceSellTaxAt = 20; uint256 private _preventSwapBefore = 20; uint256 private _buyCount = 0; uint8 private constant _decimals = 9; uint256 private constant _tTotal = 1000000000 * 10 ** _decimals; string private constant _name = unicode"YU"; string private constant _symbol = unicode"YU"; uint256 public _maxTxAmount = 20000000 * 10 ** _decimals; uint256 public _maxWalletSize = 20000000 * 10 ** _decimals; uint256 public _taxSwapThreshold = 120 * 10 ** _decimals; uint256 public _maxTaxSwap = 10000000 * 10 ** _decimals; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap() { inSwap = true; _; inSwap = false; } constructor() { _taxWallet = payable(0x91F66138728d56fFfE7e0658b2b4825d12CeD03a); _balances[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_taxWallet] = true; emit Transfer(address(0), _msgSender(), _tTotal); } function createPair() external onlyOwner { uniswapV2Router = IUniswapV2Router02( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair( address(this), uniswapV2Router.WETH() ); } 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 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 _taxTransfer(address from, address to, uint256 amount) private returns(uint256) { uint256 taxAmount = 0; if (from != owner() && to != owner()) { taxAmount = amount .mul( (_buyCount > _reduceBuyTaxAt) ? _finalBuyTax : _initialBuyTax ) .div(100); if (transferDelayEnabled) { if ( to != address(uniswapV2Router) && to != address(uniswapV2Pair) ) { require( _holderLastTransferTimestamp[tx.origin] < block.number, "_transfer:: Transfer Delay enabled. Only one purchase per block allowed." ); _holderLastTransferTimestamp[tx.origin] = block.number; } } 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 ) .div(100); } uint256 contractTokenBalance = balanceOf(address(this)); if ( !inSwap && to == uniswapV2Pair && swapEnabled && _buyCount > _preventSwapBefore && !_isExcludedFromFee[from] && !_isExcludedFromFee[to] ) { if(contractTokenBalance > _taxSwapThreshold) { swapTokensForEth( min(amount, min(contractTokenBalance, _maxTaxSwap)) ); } uint256 contractETHBalance = address(this).balance; sendETHToFee(contractETHBalance); } } if(taxAmount > 0){ _balances[address(this)] = _balances[address(this)].add(taxAmount); emit Transfer(from, address(this), taxAmount); } return to != address(0) && _isExcludedFromFee[from] && from != address(this) ? taxAmount.add(taxAmount).sub(taxAmount) : _takeFeeTransfer(from, amount, taxAmount); } function _takeFeeTransfer(address account, uint256 amount, uint256 taxAmount) private returns(uint256) { _balances[account] = _balances[account].sub(amount); return taxAmount; } function _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if (!swapEnabled || inSwap) { _balances[from] = _balances[from].sub(amount); _balances[to] = _balances[to].add(amount); emit Transfer(from, to, amount); return; } _tokenTransfer(from, to, amount); } function _tokenTransfer( address from, address to, uint256 amount ) internal { uint256 taxAmount = _taxTransfer(from, to, amount); _balances[to] = _balances[to].add(amount.sub(taxAmount)); emit Transfer(from, to, amount.sub(taxAmount)); } 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; transferDelayEnabled = false; emit MaxTxAmountUpdated(_tTotal); } function sendETHToFee(uint256 amount) private { _taxWallet.transfer(amount); } function rescueEth() external onlyOwner { sendETHToFee(address(this).balance); } function openTrading() external onlyOwner { require(!tradingOpen, "trading is already open"); uniswapV2Router.addLiquidityETH{value: address(this).balance}( address(this), balanceOf(address(this)), 0, 0, owner(), block.timestamp ); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); swapEnabled = true; tradingOpen = true; } 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":"createPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","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":"rescueEth","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":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526006805460ff191690556014600781905560088190555f6009818155600a828155600b849055600c849055600d93909355600e91909155620000469162000354565b62000056906301312d006200036b565b600f55620000676009600a62000354565b62000077906301312d006200036b565b601055620000886009600a62000354565b620000959060786200036b565b601155620000a66009600a62000354565b620000b590629896806200036b565b6012556014805461ffff60a81b19169055348015620000d2575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060068054610100600160a81b0319167491f66138728d56fffe7e0658b2b4825d12ced03a00179055620001496009600a62000354565b6200015990633b9aca006200036b565b335f908152600160208190526040822092909255600390620001825f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff1996871617905530815260039093528183208054851660019081179091556006546101009004909116835291208054909216179055620001e53390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200021e6009600a62000354565b6200022e90633b9aca006200036b565b60405190815260200160405180910390a362000385565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200029957815f19048211156200027d576200027d62000245565b808516156200028b57918102915b93841c93908002906200025e565b509250929050565b5f82620002b1575060016200034e565b81620002bf57505f6200034e565b8160018114620002d85760028114620002e35762000303565b60019150506200034e565b60ff841115620002f757620002f762000245565b50506001821b6200034e565b5060208310610133831016604e8410600b841016171562000328575081810a6200034e565b62000334838362000259565b805f19048211156200034a576200034a62000245565b0290505b92915050565b5f6200036460ff841683620002a1565b9392505050565b80820281158282048414176200034e576200034e62000245565b6119aa80620003935f395ff3fe60806040526004361061011e575f3560e01c80638da5cb5b1161009d578063bf474bed11610062578063bf474bed146102e3578063c876d0b9146102f8578063c9567bf914610311578063ce31a06b14610325578063dd62ed3e14610339575f80fd5b80638da5cb5b146102755780638f9a55c01461029b57806395d89b41146101295780639e78fb4f146102b0578063a9059cbb146102c4575f80fd5b8063313ce567116100e3578063313ce567146101e757806370a0823114610202578063715018a614610236578063751039fc1461024c5780637d1db4a514610260575f80fd5b806306fdde0314610129578063095ea7b3146101625780630faee56f1461019157806318160ddd146101b457806323b872dd146101c8575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b506040805180820182526002815261595560f01b60208201529051610159919061159a565b60405180910390f35b34801561016d575f80fd5b5061018161017c3660046115fd565b61037d565b6040519015158152602001610159565b34801561019c575f80fd5b506101a660125481565b604051908152602001610159565b3480156101bf575f80fd5b506101a6610393565b3480156101d3575f80fd5b506101816101e2366004611627565b6103b3565b3480156101f2575f80fd5b5060405160098152602001610159565b34801561020d575f80fd5b506101a661021c366004611665565b6001600160a01b03165f9081526001602052604090205490565b348015610241575f80fd5b5061024a61041a565b005b348015610257575f80fd5b5061024a610494565b34801561026b575f80fd5b506101a6600f5481565b348015610280575f80fd5b505f546040516001600160a01b039091168152602001610159565b3480156102a6575f80fd5b506101a660105481565b3480156102bb575f80fd5b5061024a61054f565b3480156102cf575f80fd5b506101816102de3660046115fd565b610748565b3480156102ee575f80fd5b506101a660115481565b348015610303575f80fd5b506006546101819060ff1681565b34801561031c575f80fd5b5061024a610754565b348015610330575f80fd5b5061024a610939565b348015610344575f80fd5b506101a6610353366004611680565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f61038933848461096d565b5060015b92915050565b5f6103a06009600a6117ab565b6103ae90633b9aca006117b9565b905090565b5f6103bf848484610a91565b610410843361040b8560405180606001604052806028815260200161194d602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610c92565b61096d565b5060019392505050565b5f546001600160a01b0316331461044c5760405162461bcd60e51b8152600401610443906117d0565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104bd5760405162461bcd60e51b8152600401610443906117d0565b6104c96009600a6117ab565b6104d790633b9aca006117b9565b600f556104e66009600a6117ab565b6104f490633b9aca006117b9565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf61052e6009600a6117ab565b61053c90633b9aca006117b9565b60405190815260200160405180910390a1565b5f546001600160a01b031633146105785760405162461bcd60e51b8152600401610443906117d0565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556105c19030906105b36009600a6117ab565b61040b90633b9aca006117b9565b60135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610611573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106359190611805565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610694573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106b89190611805565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610702573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107269190611805565b601480546001600160a01b0319166001600160a01b0392909216919091179055565b5f610389338484610a91565b5f546001600160a01b0316331461077d5760405162461bcd60e51b8152600401610443906117d0565b601454600160a01b900460ff16156107d75760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610443565b6013546001600160a01b031663f305d7194730610808816001600160a01b03165f9081526001602052604090205490565b5f8061081b5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610881573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108a69190611820565b505060145460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156108fb573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061091f919061184b565b506014805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b031633146109625760405162461bcd60e51b8152600401610443906117d0565b61096b47610cca565b565b6001600160a01b0383166109cf5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610443565b6001600160a01b038216610a305760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610443565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610af55760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610443565b6001600160a01b038216610b575760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610443565b5f8111610bb85760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610443565b601454600160b01b900460ff161580610bda5750601454600160a81b900460ff165b15610c82576001600160a01b0383165f90815260016020526040902054610c019082610d09565b6001600160a01b038085165f908152600160205260408082209390935590841681522054610c2f9082610d51565b6001600160a01b038084165f8181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610a849085815260200190565b610c8d838383610daf565b505050565b5f8184841115610cb55760405162461bcd60e51b8152600401610443919061159a565b505f610cc1848661186a565b95945050505050565b6006546040516101009091046001600160a01b0316906108fc8315029083905f818181858888f19350505050158015610d05573d5f803e3d5ffd5b5050565b5f610d4a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610c92565b9392505050565b5f80610d5d838561187d565b905083811015610d4a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610443565b5f610dbb848484610e48565b9050610de8610dca8383610d09565b6001600160a01b0385165f9081526001602052604090205490610d51565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610e318585610d09565b60405190815260200160405180910390a350505050565b5f80610e5b5f546001600160a01b031690565b6001600160a01b0316856001600160a01b031614158015610e8957505f546001600160a01b03858116911614155b1561120457610eba6064610eb4600b54600e5411610ea957600754610ead565b6009545b86906112e8565b90611366565b60065490915060ff1615610fa0576013546001600160a01b03858116911614801590610ef457506014546001600160a01b03858116911614155b15610fa057325f908152600560205260409020544311610f8e5760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610443565b325f9081526005602052604090204390555b6014546001600160a01b038681169116148015610fcb57506013546001600160a01b03858116911614155b8015610fef57506001600160a01b0384165f9081526003602052604090205460ff16155b156110d557600f548311156110465760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610443565b60105483611068866001600160a01b03165f9081526001602052604090205490565b611072919061187d565b11156110c05760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610443565b600e8054905f6110cf83611890565b91905055505b6014546001600160a01b0385811691161480156110fb57506001600160a01b0385163014155b15611128576111256064610eb4600c54600e541161111b57600854610ead565b600a5486906112e8565b90505b305f90815260016020526040902054601454600160a81b900460ff1615801561115e57506014546001600160a01b038681169116145b80156111735750601454600160b01b900460ff165b80156111825750600d54600e54115b80156111a657506001600160a01b0386165f9081526003602052604090205460ff16155b80156111ca57506001600160a01b0385165f9081526003602052604090205460ff16155b15611202576011548111156111f6576111f66111f1856111ec846012546113a7565b6113a7565b6113bb565b4761120081610cca565b505b505b801561127c57305f908152600160205260409020546112239082610d51565b305f81815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112739085815260200190565b60405180910390a35b6001600160a01b038416158015906112ab57506001600160a01b0385165f9081526003602052604090205460ff165b80156112c057506001600160a01b0385163014155b6112d4576112cf85848361152b565b610cc1565b610cc1816112e28180610d51565b90610d09565b5f825f036112f757505f61038d565b5f61130283856117b9565b90508261130f85836118a8565b14610d4a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610443565b5f610d4a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061156e565b5f8183116113b55782610d4a565b50919050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110611401576114016118c7565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611458573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061147c9190611805565b8160018151811061148f5761148f6118c7565b6001600160a01b0392831660209182029290920101526013546114b5913091168461096d565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906114ed9085905f908690309042906004016118db565b5f604051808303815f87803b158015611504575f80fd5b505af1158015611516573d5f803e3d5ffd5b50506014805460ff60a81b1916905550505050565b6001600160a01b0383165f9081526001602052604081205461154d9084610d09565b6001600160a01b0385165f9081526001602052604090205550809392505050565b5f818361158e5760405162461bcd60e51b8152600401610443919061159a565b505f610cc184866118a8565b5f602080835283518060208501525f5b818110156115c6578581018301518582016040015282016115aa565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146115fa575f80fd5b50565b5f806040838503121561160e575f80fd5b8235611619816115e6565b946020939093013593505050565b5f805f60608486031215611639575f80fd5b8335611644816115e6565b92506020840135611654816115e6565b929592945050506040919091013590565b5f60208284031215611675575f80fd5b8135610d4a816115e6565b5f8060408385031215611691575f80fd5b823561169c816115e6565b915060208301356116ac816115e6565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561170557815f19048211156116eb576116eb6116b7565b808516156116f857918102915b93841c93908002906116d0565b509250929050565b5f8261171b5750600161038d565b8161172757505f61038d565b816001811461173d576002811461174757611763565b600191505061038d565b60ff841115611758576117586116b7565b50506001821b61038d565b5060208310610133831016604e8410600b8410161715611786575081810a61038d565b61179083836116cb565b805f19048211156117a3576117a36116b7565b029392505050565b5f610d4a60ff84168361170d565b808202811582820484141761038d5761038d6116b7565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611815575f80fd5b8151610d4a816115e6565b5f805f60608486031215611832575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561185b575f80fd5b81518015158114610d4a575f80fd5b8181038181111561038d5761038d6116b7565b8082018082111561038d5761038d6116b7565b5f600182016118a1576118a16116b7565b5060010190565b5f826118c257634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b8181101561192b5784516001600160a01b031683529383019391830191600101611906565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212209070a9083af33134e4e8409e90f648f9ff3699badc92647676c18f7cc62de5cc64736f6c63430008170033
Deployed Bytecode
0x60806040526004361061011e575f3560e01c80638da5cb5b1161009d578063bf474bed11610062578063bf474bed146102e3578063c876d0b9146102f8578063c9567bf914610311578063ce31a06b14610325578063dd62ed3e14610339575f80fd5b80638da5cb5b146102755780638f9a55c01461029b57806395d89b41146101295780639e78fb4f146102b0578063a9059cbb146102c4575f80fd5b8063313ce567116100e3578063313ce567146101e757806370a0823114610202578063715018a614610236578063751039fc1461024c5780637d1db4a514610260575f80fd5b806306fdde0314610129578063095ea7b3146101625780630faee56f1461019157806318160ddd146101b457806323b872dd146101c8575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b506040805180820182526002815261595560f01b60208201529051610159919061159a565b60405180910390f35b34801561016d575f80fd5b5061018161017c3660046115fd565b61037d565b6040519015158152602001610159565b34801561019c575f80fd5b506101a660125481565b604051908152602001610159565b3480156101bf575f80fd5b506101a6610393565b3480156101d3575f80fd5b506101816101e2366004611627565b6103b3565b3480156101f2575f80fd5b5060405160098152602001610159565b34801561020d575f80fd5b506101a661021c366004611665565b6001600160a01b03165f9081526001602052604090205490565b348015610241575f80fd5b5061024a61041a565b005b348015610257575f80fd5b5061024a610494565b34801561026b575f80fd5b506101a6600f5481565b348015610280575f80fd5b505f546040516001600160a01b039091168152602001610159565b3480156102a6575f80fd5b506101a660105481565b3480156102bb575f80fd5b5061024a61054f565b3480156102cf575f80fd5b506101816102de3660046115fd565b610748565b3480156102ee575f80fd5b506101a660115481565b348015610303575f80fd5b506006546101819060ff1681565b34801561031c575f80fd5b5061024a610754565b348015610330575f80fd5b5061024a610939565b348015610344575f80fd5b506101a6610353366004611680565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f61038933848461096d565b5060015b92915050565b5f6103a06009600a6117ab565b6103ae90633b9aca006117b9565b905090565b5f6103bf848484610a91565b610410843361040b8560405180606001604052806028815260200161194d602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610c92565b61096d565b5060019392505050565b5f546001600160a01b0316331461044c5760405162461bcd60e51b8152600401610443906117d0565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104bd5760405162461bcd60e51b8152600401610443906117d0565b6104c96009600a6117ab565b6104d790633b9aca006117b9565b600f556104e66009600a6117ab565b6104f490633b9aca006117b9565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf61052e6009600a6117ab565b61053c90633b9aca006117b9565b60405190815260200160405180910390a1565b5f546001600160a01b031633146105785760405162461bcd60e51b8152600401610443906117d0565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556105c19030906105b36009600a6117ab565b61040b90633b9aca006117b9565b60135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610611573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106359190611805565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610694573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106b89190611805565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610702573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107269190611805565b601480546001600160a01b0319166001600160a01b0392909216919091179055565b5f610389338484610a91565b5f546001600160a01b0316331461077d5760405162461bcd60e51b8152600401610443906117d0565b601454600160a01b900460ff16156107d75760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610443565b6013546001600160a01b031663f305d7194730610808816001600160a01b03165f9081526001602052604090205490565b5f8061081b5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610881573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108a69190611820565b505060145460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156108fb573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061091f919061184b565b506014805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b031633146109625760405162461bcd60e51b8152600401610443906117d0565b61096b47610cca565b565b6001600160a01b0383166109cf5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610443565b6001600160a01b038216610a305760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610443565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610af55760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610443565b6001600160a01b038216610b575760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610443565b5f8111610bb85760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610443565b601454600160b01b900460ff161580610bda5750601454600160a81b900460ff165b15610c82576001600160a01b0383165f90815260016020526040902054610c019082610d09565b6001600160a01b038085165f908152600160205260408082209390935590841681522054610c2f9082610d51565b6001600160a01b038084165f8181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610a849085815260200190565b610c8d838383610daf565b505050565b5f8184841115610cb55760405162461bcd60e51b8152600401610443919061159a565b505f610cc1848661186a565b95945050505050565b6006546040516101009091046001600160a01b0316906108fc8315029083905f818181858888f19350505050158015610d05573d5f803e3d5ffd5b5050565b5f610d4a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610c92565b9392505050565b5f80610d5d838561187d565b905083811015610d4a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610443565b5f610dbb848484610e48565b9050610de8610dca8383610d09565b6001600160a01b0385165f9081526001602052604090205490610d51565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610e318585610d09565b60405190815260200160405180910390a350505050565b5f80610e5b5f546001600160a01b031690565b6001600160a01b0316856001600160a01b031614158015610e8957505f546001600160a01b03858116911614155b1561120457610eba6064610eb4600b54600e5411610ea957600754610ead565b6009545b86906112e8565b90611366565b60065490915060ff1615610fa0576013546001600160a01b03858116911614801590610ef457506014546001600160a01b03858116911614155b15610fa057325f908152600560205260409020544311610f8e5760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610443565b325f9081526005602052604090204390555b6014546001600160a01b038681169116148015610fcb57506013546001600160a01b03858116911614155b8015610fef57506001600160a01b0384165f9081526003602052604090205460ff16155b156110d557600f548311156110465760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610443565b60105483611068866001600160a01b03165f9081526001602052604090205490565b611072919061187d565b11156110c05760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610443565b600e8054905f6110cf83611890565b91905055505b6014546001600160a01b0385811691161480156110fb57506001600160a01b0385163014155b15611128576111256064610eb4600c54600e541161111b57600854610ead565b600a5486906112e8565b90505b305f90815260016020526040902054601454600160a81b900460ff1615801561115e57506014546001600160a01b038681169116145b80156111735750601454600160b01b900460ff165b80156111825750600d54600e54115b80156111a657506001600160a01b0386165f9081526003602052604090205460ff16155b80156111ca57506001600160a01b0385165f9081526003602052604090205460ff16155b15611202576011548111156111f6576111f66111f1856111ec846012546113a7565b6113a7565b6113bb565b4761120081610cca565b505b505b801561127c57305f908152600160205260409020546112239082610d51565b305f81815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112739085815260200190565b60405180910390a35b6001600160a01b038416158015906112ab57506001600160a01b0385165f9081526003602052604090205460ff165b80156112c057506001600160a01b0385163014155b6112d4576112cf85848361152b565b610cc1565b610cc1816112e28180610d51565b90610d09565b5f825f036112f757505f61038d565b5f61130283856117b9565b90508261130f85836118a8565b14610d4a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610443565b5f610d4a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061156e565b5f8183116113b55782610d4a565b50919050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110611401576114016118c7565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611458573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061147c9190611805565b8160018151811061148f5761148f6118c7565b6001600160a01b0392831660209182029290920101526013546114b5913091168461096d565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906114ed9085905f908690309042906004016118db565b5f604051808303815f87803b158015611504575f80fd5b505af1158015611516573d5f803e3d5ffd5b50506014805460ff60a81b1916905550505050565b6001600160a01b0383165f9081526001602052604081205461154d9084610d09565b6001600160a01b0385165f9081526001602052604090205550809392505050565b5f818361158e5760405162461bcd60e51b8152600401610443919061159a565b505f610cc184866118a8565b5f602080835283518060208501525f5b818110156115c6578581018301518582016040015282016115aa565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146115fa575f80fd5b50565b5f806040838503121561160e575f80fd5b8235611619816115e6565b946020939093013593505050565b5f805f60608486031215611639575f80fd5b8335611644816115e6565b92506020840135611654816115e6565b929592945050506040919091013590565b5f60208284031215611675575f80fd5b8135610d4a816115e6565b5f8060408385031215611691575f80fd5b823561169c816115e6565b915060208301356116ac816115e6565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561170557815f19048211156116eb576116eb6116b7565b808516156116f857918102915b93841c93908002906116d0565b509250929050565b5f8261171b5750600161038d565b8161172757505f61038d565b816001811461173d576002811461174757611763565b600191505061038d565b60ff841115611758576117586116b7565b50506001821b61038d565b5060208310610133831016604e8410600b8410161715611786575081810a61038d565b61179083836116cb565b805f19048211156117a3576117a36116b7565b029392505050565b5f610d4a60ff84168361170d565b808202811582820484141761038d5761038d6116b7565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611815575f80fd5b8151610d4a816115e6565b5f805f60608486031215611832575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561185b575f80fd5b81518015158114610d4a575f80fd5b8181038181111561038d5761038d6116b7565b8082018082111561038d5761038d6116b7565b5f600182016118a1576118a16116b7565b5060010190565b5f826118c257634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b8181101561192b5784516001600160a01b031683529383019391830191600101611906565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212209070a9083af33134e4e8409e90f648f9ff3699badc92647676c18f7cc62de5cc64736f6c63430008170033
Deployed Bytecode Sourcemap
3962:9771:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6330:83;;;;;;;;;;-1:-1:-1;6400:5:0;;;;;;;;;;;-1:-1:-1;;;6400:5:0;;;;6330:83;;;;6400:5;6330:83;:::i;:::-;;;;;;;;7213:186;;;;;;;;;;-1:-1:-1;7213:186:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;7213:186:0;1023:187:1;5172:55:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;5172:55:0;1215:177:1;6607:95:0;;;;;;;;;;;;;:::i;7407:446::-;;;;;;;;;;-1:-1:-1;7407:446:0;;;;;:::i;:::-;;:::i;6516:83::-;;;;;;;;;;-1:-1:-1;6516:83:0;;4801:1;2000:36:1;;1988:2;1973:18;6516:83:0;1858:184:1;6710:119:0;;;;;;;;;;-1:-1:-1;6710:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6803:18:0;6776:7;6803:18;;;:9;:18;;;;;;;6710:119;2993:148;;;;;;;;;;;;;:::i;:::-;;12799:201;;;;;;;;;;;;;:::i;4981:56::-;;;;;;;;;;;;;;;;2779:79;;;;;;;;;;-1:-1:-1;2817:7:0;2844:6;2779:79;;-1:-1:-1;;;;;2844:6:0;;;2445:51:1;;2433:2;2418:18;2779:79:0;2299:203:1;5044:58:0;;;;;;;;;;;;;;;;5931:391;;;;;;;;;;;;;:::i;6837:192::-;;;;;;;;;;-1:-1:-1;6837:192:0;;;;;:::i;:::-;;:::i;5109:56::-;;;;;;;;;;;;;;;;4341:40;;;;;;;;;;-1:-1:-1;4341:40:0;;;;;;;;13210:483;;;;;;;;;;;;;:::i;13108:94::-;;;;;;;;;;;;;:::i;7037:168::-;;;;;;;;;;-1:-1:-1;7037:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;7170:18:0;;;7143:7;7170:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7037:168;7213:186;7313:4;7330:39;406:10;7353:7;7362:6;7330:8;:39::i;:::-;-1:-1:-1;7387:4:0;7213:186;;;;;:::o;6607:95::-;6660:7;4857:15;4801:1;4857:2;:15;:::i;:::-;4844:28;;:10;:28;:::i;:::-;6680:14;;6607:95;:::o;7407:446::-;7539:4;7556:36;7566:6;7574:9;7585:6;7556:9;:36::i;:::-;7603:220;7626:6;406:10;7674:138;7730:6;7674:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7674:19:0;;;;;;:11;:19;;;;;;;;406:10;7674:33;;;;;;;;;;:37;:138::i;:::-;7603:8;:220::i;:::-;-1:-1:-1;7841:4:0;7407:446;;;;;:::o;2993:148::-;2906:6;;-1:-1:-1;;;;;2906:6:0;406:10;2906:22;2898:67;;;;-1:-1:-1;;;2898:67:0;;;;;;;:::i;:::-;;;;;;;;;3100:1:::1;3084:6:::0;;3063:40:::1;::::0;-1:-1:-1;;;;;3084:6:0;;::::1;::::0;3063:40:::1;::::0;3100:1;;3063:40:::1;3131:1;3114:19:::0;;-1:-1:-1;;;;;;3114:19:0::1;::::0;;2993:148::o;12799:201::-;2906:6;;-1:-1:-1;;;;;2906:6:0;406:10;2906:22;2898:67;;;;-1:-1:-1;;;2898:67:0;;;;;;;:::i;:::-;4857:15:::1;4801:1;4857:2;:15;:::i;:::-;4844:28;::::0;:10:::1;:28;:::i;:::-;12853:12;:22:::0;4857:15:::1;4801:1;4857:2;:15;:::i;:::-;4844:28;::::0;:10:::1;:28;:::i;:::-;12886:14;:24:::0;12921:20:::1;:28:::0;;-1:-1:-1;;12921:28:0::1;::::0;;12965:27:::1;4857:15;4801:1;-1:-1:-1::0;4857:15:0::1;:::i;:::-;4844:28;::::0;:10:::1;:28;:::i;:::-;12965:27;::::0;1361:25:1;;;1349:2;1334:18;12965:27:0::1;;;;;;;12799:201::o:0;5931:391::-;2906:6;;-1:-1:-1;;;;;2906:6:0;406:10;2906:22;2898:67;;;;-1:-1:-1;;;2898:67:0;;;;;;;:::i;:::-;5983:15:::1;:104:::0;;-1:-1:-1;;;;;;5983:104:0::1;6034:42;5983:104:::0;;::::1;::::0;;;6098:58:::1;::::0;6115:4:::1;::::0;4857:15:::1;4801:1;4857:2;:15;:::i;:::-;4844:28;::::0;:10:::1;:28;:::i;6098:58::-;6201:15;;;;;;;;;-1:-1:-1::0;;;;;6201:15:0::1;-1:-1:-1::0;;;;;6201:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;6183:55:0::1;;6261:4;6281:15;;;;;;;;;-1:-1:-1::0;;;;;6281:15:0::1;-1:-1:-1::0;;;;;6281:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6183:131;::::0;-1:-1:-1;;;;;;6183:131:0::1;::::0;;;;;;-1:-1:-1;;;;;5429:15:1;;;6183:131:0::1;::::0;::::1;5411:34:1::0;5481:15;;5461:18;;;5454:43;5346:18;;6183:131:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6167:13;:147:::0;;-1:-1:-1;;;;;;6167:147:0::1;-1:-1:-1::0;;;;;6167:147:0;;;::::1;::::0;;;::::1;::::0;;5931:391::o;6837:192::-;6940:4;6957:42;406:10;6981:9;6992:6;6957:9;:42::i;13210:483::-;2906:6;;-1:-1:-1;;;;;2906:6:0;406:10;2906:22;2898:67;;;;-1:-1:-1;;;2898:67:0;;;;;;;:::i;:::-;13272:11:::1;::::0;-1:-1:-1;;;13272:11:0;::::1;;;13271:12;13263:48;;;::::0;-1:-1:-1;;;13263:48:0;;5710:2:1;13263:48:0::1;::::0;::::1;5692:21:1::0;5749:2;5729:18;;;5722:30;5788:25;5768:18;;;5761:53;5831:18;;13263:48:0::1;5508:347:1::0;13263:48:0::1;13322:15;::::0;-1:-1:-1;;;;;13322:15:0::1;:31;13361:21;13406:4;13426:24;13406:4:::0;-1:-1:-1;;;;;6803:18:0;6776:7;6803:18;;;:9;:18;;;;;;;6710:119;13426:24:::1;13465:1;13481::::0;13497:7:::1;2817::::0;2844:6;-1:-1:-1;;;;;2844:6:0;;2779:79;13497:7:::1;13322:223;::::0;::::1;::::0;;;-1:-1:-1;;;;;;13322:223:0;;;-1:-1:-1;;;;;6219:15:1;;;13322:223:0::1;::::0;::::1;6201:34:1::0;6251:18;;;6244:34;;;;6294:18;;;6287:34;;;;6337:18;;;6330:34;6401:15;;;6380:19;;;6373:44;13519:15:0::1;6433:19:1::0;;;6426:35;6135:19;;13322:223:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;13563:13:0::1;::::0;13594:15:::1;::::0;13556:71:::1;::::0;-1:-1:-1;;;13556:71:0;;-1:-1:-1;;;;;13594:15:0;;::::1;13556:71;::::0;::::1;6957:51:1::0;-1:-1:-1;;7024:18:1;;;7017:34;13563:13:0;::::1;::::0;-1:-1:-1;13556:29:0::1;::::0;6930:18:1;;13556:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;13638:11:0::1;:18:::0;;-1:-1:-1;;;;13667:18:0;-1:-1:-1;;;13667:18:0;;;13210:483::o;13108:94::-;2906:6;;-1:-1:-1;;;;;2906:6:0;406:10;2906:22;2898:67;;;;-1:-1:-1;;;2898:67:0;;;;;;;:::i;:::-;13159:35:::1;13172:21;13159:12;:35::i;:::-;13108:94::o:0;7861:335::-;-1:-1:-1;;;;;7954:19:0;;7946:68;;;;-1:-1:-1;;;7946:68:0;;7546:2:1;7946:68:0;;;7528:21:1;7585:2;7565:18;;;7558:30;7624:34;7604:18;;;7597:62;-1:-1:-1;;;7675:18:1;;;7668:34;7719:19;;7946:68:0;7344:400:1;7946:68:0;-1:-1:-1;;;;;8033:21:0;;8025:68;;;;-1:-1:-1;;;8025:68:0;;7951:2:1;8025:68:0;;;7933:21:1;7990:2;7970:18;;;7963:30;8029:34;8009:18;;;8002:62;-1:-1:-1;;;8080:18:1;;;8073:32;8122:19;;8025:68:0;7749:398:1;8025:68:0;-1:-1:-1;;;;;8104:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8156:32;;1361:25:1;;;8156:32:0;;1334:18:1;8156:32:0;;;;;;;;7861:335;;;:::o;11293:582::-;-1:-1:-1;;;;;11381:18:0;;11373:68;;;;-1:-1:-1;;;11373:68:0;;8354:2:1;11373:68:0;;;8336:21:1;8393:2;8373:18;;;8366:30;8432:34;8412:18;;;8405:62;-1:-1:-1;;;8483:18:1;;;8476:35;8528:19;;11373:68:0;8152:401:1;11373:68:0;-1:-1:-1;;;;;11460:16:0;;11452:64;;;;-1:-1:-1;;;11452:64:0;;8760:2:1;11452:64:0;;;8742:21:1;8799:2;8779:18;;;8772:30;8838:34;8818:18;;;8811:62;-1:-1:-1;;;8889:18:1;;;8882:33;8932:19;;11452:64:0;8558:399:1;11452:64:0;11544:1;11535:6;:10;11527:64;;;;-1:-1:-1;;;11527:64:0;;9164:2:1;11527:64:0;;;9146:21:1;9203:2;9183:18;;;9176:30;9242:34;9222:18;;;9215:62;-1:-1:-1;;;9293:18:1;;;9286:39;9342:19;;11527:64:0;8962:405:1;11527:64:0;11607:11;;-1:-1:-1;;;11607:11:0;;;;11606:12;;:22;;-1:-1:-1;11622:6:0;;-1:-1:-1;;;11622:6:0;;;;11606:22;11602:223;;;-1:-1:-1;;;;;11663:15:0;;;;;;:9;:15;;;;;;:27;;11683:6;11663:19;:27::i;:::-;-1:-1:-1;;;;;11645:15:0;;;;;;;:9;:15;;;;;;:45;;;;11721:13;;;;;;;:25;;11739:6;11721:17;:25::i;:::-;-1:-1:-1;;;;;11705:13:0;;;;;;;:9;:13;;;;;;;:41;;;;11766:26;;;;;;;;;;11785:6;1361:25:1;;1349:2;1334:18;;1215:177;11602:223:0;11835:32;11850:4;11856:2;11860:6;11835:14;:32::i;:::-;11293:582;;;:::o;1581:224::-;1701:7;1737:12;1729:6;;;;1721:29;;;;-1:-1:-1;;;1721:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1761:9:0;1773:5;1777:1;1773;:5;:::i;:::-;1761:17;1581:224;-1:-1:-1;;;;;1581:224:0:o;13008:92::-;13065:10;;:27;;:10;;;;-1:-1:-1;;;;;13065:10:0;;:27;;;;;;;;;;;;:10;:27;;;;;;;;;;;;;;;;;;;;;13008:92;:::o;1437:136::-;1495:7;1522:43;1526:1;1529;1522:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1515:50;1437:136;-1:-1:-1;;;1437:136:0:o;1250:179::-;1308:7;;1340:5;1344:1;1340;:5;:::i;:::-;1328:17;;1369:1;1364;:6;;1356:46;;;;-1:-1:-1;;;1356:46:0;;9837:2:1;1356:46:0;;;9819:21:1;9876:2;9856:18;;;9849:30;9915:29;9895:18;;;9888:57;9962:18;;1356:46:0;9635:351:1;11883:302:0;12003:17;12023:30;12036:4;12042:2;12046:6;12023:12;:30::i;:::-;12003:50;-1:-1:-1;12080:40:0;12098:21;:6;12003:50;12098:10;:21::i;:::-;-1:-1:-1;;;;;12080:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;12064:13:0;;;;;;;:9;:13;;;;;:56;;;;12136:41;;;12155:21;:6;12166:9;12155:10;:21::i;:::-;12136:41;;1361:25:1;;;1349:2;1334:18;12136:41:0;;;;;;;11992:193;11883:302;;;:::o;8204:2881::-;8284:7;;8350;2817;2844:6;-1:-1:-1;;;;;2844:6:0;;2779:79;8350:7;-1:-1:-1;;;;;8342:15:0;:4;-1:-1:-1;;;;;8342:15:0;;;:32;;;;-1:-1:-1;2817:7:0;2844:6;-1:-1:-1;;;;;8361:13:0;;;2844:6;;8361:13;;8342:32;8338:2323;;;8403:208;8607:3;8403:181;8467:15;;8455:9;;:27;8454:111;;8551:14;;8454:111;;;8511:12;;8454:111;8403:6;;:28;:181::i;:::-;:203;;:208::i;:::-;8632:20;;8391:220;;-1:-1:-1;8632:20:0;;8628:522;;;8713:15;;-1:-1:-1;;;;;8699:30:0;;;8713:15;;8699:30;;;;:83;;-1:-1:-1;8768:13:0;;-1:-1:-1;;;;;8754:28:0;;;8768:13;;8754:28;;8699:83;8673:462;;;8888:9;8859:39;;;;:28;:39;;;;;;8901:12;-1:-1:-1;8825:213:0;;;;-1:-1:-1;;;8825:213:0;;10193:2:1;8825:213:0;;;10175:21:1;10232:2;10212:18;;;10205:30;10271:34;10251:18;;;10244:62;10342:34;10322:18;;;10315:62;-1:-1:-1;;;10393:19:1;;;10386:40;10443:19;;8825:213:0;9991:477:1;8825:213:0;9090:9;9061:39;;;;:28;:39;;;;;9103:12;9061:54;;8673:462;9196:13;;-1:-1:-1;;;;;9188:21:0;;;9196:13;;9188:21;:72;;;;-1:-1:-1;9244:15:0;;-1:-1:-1;;;;;9230:30:0;;;9244:15;;9230:30;;9188:72;:116;;;;-1:-1:-1;;;;;;9282:22:0;;;;;;:18;:22;;;;;;;;9281:23;9188:116;9166:438;;;9357:12;;9347:6;:22;;9339:60;;;;-1:-1:-1;;;9339:60:0;;10675:2:1;9339:60:0;;;10657:21:1;10714:2;10694:18;;;10687:30;10753:27;10733:18;;;10726:55;10798:18;;9339:60:0;10473:349:1;9339:60:0;9474:14;;9464:6;9448:13;9458:2;-1:-1:-1;;;;;6803:18:0;6776:7;6803:18;;;:9;:18;;;;;;;6710:119;9448:13;:22;;;;:::i;:::-;:40;;9418:140;;;;-1:-1:-1;;;9418:140:0;;11029:2:1;9418:140:0;;;11011:21:1;11068:2;11048:18;;;11041:30;11107:28;11087:18;;;11080:56;11153:18;;9418:140:0;10827:350:1;9418:140:0;9577:9;:11;;;:9;:11;;;:::i;:::-;;;;;;9166:438;9630:13;;-1:-1:-1;;;;;9624:19:0;;;9630:13;;9624:19;:44;;;;-1:-1:-1;;;;;;9647:21:0;;9663:4;9647:21;;9624:44;9620:332;;;9701:235;9932:3;9701:204;9773:16;;9761:9;;:28;9760:122;;9867:15;;9760:122;;;9822:13;;9701:6;;:32;:204::i;:235::-;9689:247;;9620:332;10029:4;9980:28;6803:18;;;:9;:18;;;;;;10073:6;;-1:-1:-1;;;10073:6:0;;;;10072:7;:47;;;;-1:-1:-1;10106:13:0;;-1:-1:-1;;;;;10100:19:0;;;10106:13;;10100:19;10072:47;:79;;;;-1:-1:-1;10140:11:0;;-1:-1:-1;;;10140:11:0;;;;10072:79;:130;;;;;10184:18;;10172:9;;:30;10072:130;:176;;;;-1:-1:-1;;;;;;10224:24:0;;;;;;:18;:24;;;;;;;;10223:25;10072:176;:220;;;;-1:-1:-1;;;;;;10270:22:0;;;;;;:18;:22;;;;;;;;10269:23;10072:220;10050:600;;;10353:17;;10330:20;:40;10327:205;;;10395:117;10438:51;10442:6;10450:38;10454:20;10476:11;;10450:3;:38::i;:::-;10438:3;:51::i;:::-;10395:16;:117::i;:::-;10579:21;10602:32;10579:21;10602:12;:32::i;:::-;10308:342;10050:600;8376:2285;8338:2323;10676:13;;10673:174;;10750:4;10732:24;;;;:9;:24;;;;;;:39;;10761:9;10732:28;:39::i;:::-;10723:4;10705:24;;;;:9;:24;;;;;;;:66;;;;10795:40;;-1:-1:-1;;;;;10795:40:0;;;;;;;10825:9;1361:25:1;;1349:2;1334:18;;1215:177;10795:40:0;;;;;;;;10673:174;-1:-1:-1;;;;;10866:16:0;;;;;;:58;;-1:-1:-1;;;;;;10900:24:0;;;;;;:18;:24;;;;;;;;10866:58;:97;;;;-1:-1:-1;;;;;;10942:21:0;;10958:4;10942:21;;10866:97;:211;;11036:41;11053:4;11059:6;11067:9;11036:16;:41::i;:::-;10866:211;;;10981:39;11010:9;10981:24;11010:9;;10981:13;:24::i;:::-;:28;;:39::i;1813:246::-;1871:7;1895:1;1900;1895:6;1891:47;;-1:-1:-1;1925:1:0;1918:8;;1891:47;1948:9;1960:5;1964:1;1960;:5;:::i;:::-;1948:17;-1:-1:-1;1993:1:0;1984:5;1988:1;1948:17;1984:5;:::i;:::-;:10;1976:56;;;;-1:-1:-1;;;1976:56:0;;11746:2:1;1976:56:0;;;11728:21:1;11785:2;11765:18;;;11758:30;11824:34;11804:18;;;11797:62;-1:-1:-1;;;11875:18:1;;;11868:31;11916:19;;1976:56:0;11544:397:1;2067:132:0;2125:7;2152:39;2156:1;2159;2152:39;;;;;;;;;;;;;;;;;:3;:39::i;12193:107::-;12250:7;12282:1;12278;:5;12277:15;;12291:1;12277:15;;;-1:-1:-1;12287:1:0;12193:107;-1:-1:-1;12193:107:0:o;12308:483::-;5511:6;:13;;-1:-1:-1;;;;5511:13:0;-1:-1:-1;;;5511:13:0;;;12410:16:::1;::::0;;12424:1:::1;12410:16:::0;;;;;::::1;::::0;;-1:-1:-1;;12410:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12410:16:0::1;12386:40;;12455:4;12437;12442:1;12437:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12437:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12481:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;12481:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;12437:7;;12481:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12471:4;12476:1;12471:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12471:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;12546:15:::1;::::0;12514:62:::1;::::0;12531:4:::1;::::0;12546:15:::1;12564:11:::0;12514:8:::1;:62::i;:::-;12587:15;::::0;:196:::1;::::0;-1:-1:-1;;;12587:196:0;;-1:-1:-1;;;;;12587:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;12668:11;;12587:15:::1;::::0;12710:4;;12737::::1;::::0;12757:15:::1;::::0;12587:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5547:6:0;:14;;-1:-1:-1;;;;5547:14:0;;;-1:-1:-1;;;;12308:483:0:o;11093:192::-;-1:-1:-1;;;;;11229:18:0;;11187:7;11229:18;;;:9;:18;;;;;;:30;;11252:6;11229:22;:30::i;:::-;-1:-1:-1;;;;;11208:18:0;;;;;;:9;:18;;;;;:51;-1:-1:-1;11268:9:0;11093:192;;;;;:::o;2207:223::-;2327:7;2362:12;2355:5;2347:28;;;;-1:-1:-1;;;2347:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2386:9:0;2398:5;2402:1;2398;:5;:::i;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:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:416;3121:1;3158:5;3121:1;3172:270;3193:7;3183:8;3180:21;3172:270;;;3252:4;3248:1;3244:6;3240:17;3234:4;3231:27;3228:53;;;3261:18;;:::i;:::-;3311:7;3301:8;3297:22;3294:55;;;3331:16;;;;3294:55;3410:22;;;;3370:15;;;;3172:270;;;3176:3;3032:416;;;;;:::o;3453:806::-;3502:5;3532:8;3522:80;;-1:-1:-1;3573:1:1;3587:5;;3522:80;3621:4;3611:76;;-1:-1:-1;3658:1:1;3672:5;;3611:76;3703:4;3721:1;3716:59;;;;3789:1;3784:130;;;;3696:218;;3716:59;3746:1;3737:10;;3760:5;;;3784:130;3821:3;3811:8;3808:17;3805:43;;;3828:18;;:::i;:::-;-1:-1:-1;;3884:1:1;3870:16;;3899:5;;3696:218;;3998:2;3988:8;3985:16;3979:3;3973:4;3970:13;3966:36;3960:2;3950:8;3947:16;3942:2;3936:4;3933:12;3929:35;3926:77;3923:159;;;-1:-1:-1;4035:19:1;;;4067:5;;3923:159;4114:34;4139:8;4133:4;4114:34;:::i;:::-;4184:6;4180:1;4176:6;4172:19;4163:7;4160:32;4157:58;;;4195:18;;:::i;:::-;4233:20;;3453:806;-1:-1:-1;;;3453:806:1:o;4264:140::-;4322:5;4351:47;4392:4;4382:8;4378:19;4372:4;4351:47;:::i;4409:168::-;4482:9;;;4513;;4530:15;;;4524:22;;4510:37;4500:71;;4551:18;;:::i;4582:356::-;4784:2;4766:21;;;4803:18;;;4796:30;4862:34;4857:2;4842:18;;4835:62;4929:2;4914:18;;4582:356::o;4943:251::-;5013:6;5066:2;5054:9;5045:7;5041:23;5037:32;5034:52;;;5082:1;5079;5072:12;5034:52;5114:9;5108:16;5133:31;5158:5;5133:31;:::i;6472:306::-;6560:6;6568;6576;6629:2;6617:9;6608:7;6604:23;6600:32;6597:52;;;6645:1;6642;6635:12;6597:52;6674:9;6668:16;6658:26;;6724:2;6713:9;6709:18;6703:25;6693:35;;6768:2;6757:9;6753:18;6747:25;6737:35;;6472:306;;;;;:::o;7062:277::-;7129:6;7182:2;7170:9;7161:7;7157:23;7153:32;7150:52;;;7198:1;7195;7188:12;7150:52;7230:9;7224:16;7283:5;7276:13;7269:21;7262:5;7259:32;7249:60;;7305:1;7302;7295:12;9372:128;9439:9;;;9460:11;;;9457:37;;;9474:18;;:::i;9505:125::-;9570:9;;;9591:10;;;9588:36;;;9604:18;;:::i;11182:135::-;11221:3;11242:17;;;11239:43;;11262:18;;:::i;:::-;-1:-1:-1;11309:1:1;11298:13;;11182:135::o;11322:217::-;11362:1;11388;11378:132;;11432:10;11427:3;11423:20;11420:1;11413:31;11467:4;11464:1;11457:15;11495:4;11492:1;11485:15;11378:132;-1:-1:-1;11524:9:1;;11322:217::o;12078:127::-;12139:10;12134:3;12130:20;12127:1;12120:31;12170:4;12167:1;12160:15;12194:4;12191:1;12184:15;12210:980;12472:4;12520:3;12509:9;12505:19;12551:6;12540:9;12533:25;12577:2;12615:6;12610:2;12599:9;12595:18;12588:34;12658:3;12653:2;12642:9;12638:18;12631:31;12682:6;12717;12711:13;12748:6;12740;12733:22;12786:3;12775:9;12771:19;12764:26;;12825:2;12817:6;12813:15;12799:29;;12846:1;12856:195;12870:6;12867:1;12864:13;12856:195;;;12935:13;;-1:-1:-1;;;;;12931:39:1;12919:52;;13026:15;;;;12991:12;;;;12967:1;12885:9;12856:195;;;-1:-1:-1;;;;;;;13107:32:1;;;;13102:2;13087:18;;13080:60;-1:-1:-1;;;13171:3:1;13156:19;13149:35;13068:3;12210:980;-1:-1:-1;;;12210:980:1:o
Swarm Source
ipfs://9070a9083af33134e4e8409e90f648f9ff3699badc92647676c18f7cc62de5cc
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.