ERC-20
Overview
Max Total Supply
100,000,000 0xGrok
Holders
32
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
0.00000000000365464 0xGrokValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
OxGrok
Compiler Version
v0.8.21+commit.d9974bed
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-11-14 */ /** https://t.me/OxGrokERC20 **/ // SPDX-License-Identifier: MIT pragma solidity 0.8.21; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer( address recipient, uint256 amount ) external returns (bool); function allowance( address owner, address spender ) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); } contract Ownable is Context { address private _owner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); constructor() { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IUniswapV2Factory { function createPair( address tokenA, address tokenB ) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } contract OxGrok is Context, IERC20, Ownable { mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFee; mapping(address => uint256) private _holderLastTransferTimestamp; bool public transferDelayEnabled = false; address payable private _taxWallet; uint256 private _initialBuyTax = 10; uint256 private _initialSellTax = 15; uint256 private _finalBuyTax = 1; uint256 private _finalSellTax = 1; uint256 public _reduceBuyTaxAt = 30; uint256 public _reduceSellTaxAt = 35; uint256 private _preventSwapBefore = 1; uint256 private _buyCount = 0; uint8 private constant _decimals = 18; uint256 private constant _tTotal = 100_000_000 * 10 ** _decimals; string private constant _name = unicode"0xGrok"; string private constant _symbol = unicode"0xGrok"; uint256 public _maxTxAmount = _tTotal / 50; uint256 public _maxWalletSize = _tTotal / 50; uint256 public _taxSwapThreshold = _tTotal / 1000; uint256 public _maxTaxSwap = _tTotal / 1000; 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() { uniswapV2Router = IUniswapV2Router02( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair( address(this), uniswapV2Router.WETH() ); _taxWallet = payable(_msgSender()); _balances[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_taxWallet] = true; _isExcludedFromFee[address(uniswapV2Router)] = 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()] - amount ); return true; } function _approve(address owner, address spender, uint256 amount) private { _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address from, address to, uint256 amount) private { require(amount > 0, "Transfer amount must be greater than zero"); uint256 taxAmount = 0; if (!_isExcludedFromFee[to] && !_isExcludedFromFee[from]) { require(tradingOpen, "Not started yet."); if (transferDelayEnabled) { if ( to != address(uniswapV2Router) && to != address(uniswapV2Pair) ) { require( _holderLastTransferTimestamp[tx.origin] < block.number, "Only one transfer per block allowed." ); _holderLastTransferTimestamp[tx.origin] = block.number; } } if ( from == uniswapV2Pair && to != address(uniswapV2Router) ) { require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require( balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize." ); _buyCount++; } taxAmount = (amount * ( (_buyCount > _reduceBuyTaxAt) ? _finalBuyTax : _initialBuyTax )) / 100; if (to == uniswapV2Pair && from != address(this)) { taxAmount = (amount * ( (_buyCount > _reduceSellTaxAt) ? _finalSellTax : _initialSellTax )) / 100; } uint256 contractTokenBalance = balanceOf(address(this)); if ( !inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance > _taxSwapThreshold && _buyCount > _preventSwapBefore ) { swapTokensForEth( min(amount, min(contractTokenBalance, _maxTaxSwap)) ); uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) { sendETHToFee(address(this).balance); } } } if (taxAmount > 0) { _balances[address(this)] = _balances[address(this)] + taxAmount; emit Transfer(from, address(this), taxAmount); } _balances[from] = _balances[from] - amount; _balances[to] = _balances[to] + (amount - taxAmount); emit Transfer(from, to, amount - taxAmount); } function min(uint256 a, uint256 b) private pure returns (uint256) { return (a > b) ? b : a; } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { if (tokenAmount == 0) { return; } address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function removeLimits() external onlyOwner { _maxTxAmount = _tTotal; _maxWalletSize = _tTotal; transferDelayEnabled = false; _reduceSellTaxAt = 20; _reduceBuyTaxAt = 20; emit MaxTxAmountUpdated(_tTotal); } function sendETHToFee(uint256 amount) private { _taxWallet.transfer(amount); } function changeSwapAmount(uint256 amount) external onlyOwner { _maxTaxSwap = amount * 1e18; _taxSwapThreshold = _maxTaxSwap; } function launch() external onlyOwner { require(!tradingOpen, "trading is already open"); swapEnabled = true; tradingOpen = true; } receive() external payable {} function manualSwap() external { require(_msgSender() == _taxWallet); uint256 tokenBalance = balanceOf(address(this)); if (tokenBalance > 0) { swapTokensForEth(tokenBalance); } uint256 ethBalance = address(this).balance; if (ethBalance > 0) { sendETHToFee(ethBalance); } } }
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":"_reduceBuyTaxAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_reduceSellTaxAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"changeSwapAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"launch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","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":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526005805460ff19169055600a6006819055600f600755600160088190556009819055601e82556023600b55600c555f600d5560329062000047906012906200054a565b62000057906305f5e10062000561565b6200006391906200057b565b600e556032620000766012600a6200054a565b62000086906305f5e10062000561565b6200009291906200057b565b600f556103e8620000a66012600a6200054a565b620000b6906305f5e10062000561565b620000c291906200057b565b6010556103e8620000d66012600a6200054a565b620000e6906305f5e10062000561565b620000f291906200057b565b6011556013805461ffff60a81b191690553480156200010f575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa158015620001b3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001d991906200059b565b6001600160a01b031663c9c653963060125f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000239573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200025f91906200059b565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015620002aa573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002d091906200059b565b601380546001600160a01b0319166001600160a01b0392909216919091179055620002f83390565b600580546001600160a01b039290921661010002610100600160a81b03199092169190911790556200032d6012600a6200054a565b6200033d906305f5e10062000561565b335f908152600160208190526040822092909255600390620003665f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff1996871617905530815260039093528183208054851660019081179091556005546101009004821684528284208054861682179055601254909116835291208054909216179055620003db3390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620004146012600a6200054a565b62000424906305f5e10062000561565b60405190815260200160405180910390a3620005c3565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200048f57815f19048211156200047357620004736200043b565b808516156200048157918102915b93841c939080029062000454565b509250929050565b5f82620004a75750600162000544565b81620004b557505f62000544565b8160018114620004ce5760028114620004d957620004f9565b600191505062000544565b60ff841115620004ed57620004ed6200043b565b50506001821b62000544565b5060208310610133831016604e8410600b84101617156200051e575081810a62000544565b6200052a83836200044f565b805f19048211156200054057620005406200043b565b0290505b92915050565b5f6200055a60ff84168362000497565b9392505050565b80820281158282048414176200054457620005446200043b565b5f826200059657634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215620005ac575f80fd5b81516001600160a01b03811681146200055a575f80fd5b6111d580620005d15f395ff3fe608060405260043610610134575f3560e01c8063715018a6116100a857806395d89b411161006d57806395d89b4114610155578063a9059cbb14610326578063bf474bed14610345578063c36956a01461035a578063c876d0b91461036f578063dd62ed3e14610388575f80fd5b8063715018a6146102ae578063751039fc146102c25780637d1db4a5146102d65780638da5cb5b146102eb5780638f9a55c014610311575f80fd5b80630faee56f116100f95780630faee56f1461020357806318160ddd1461021857806323b872dd1461022c578063313ce5671461024b57806351bc3c851461026657806370a082311461027a575f80fd5b806301339c211461013f57806306fdde0314610155578063095ea7b3146101925780630c193045146101c15780630ce5fd36146101e4575f80fd5b3661013b57005b5f80fd5b34801561014a575f80fd5b506101536103cc565b005b348015610160575f80fd5b506040805180820182526006815265307847726f6b60d01b602082015290516101899190610e23565b60405180910390f35b34801561019d575f80fd5b506101b16101ac366004610e85565b610471565b6040519015158152602001610189565b3480156101cc575f80fd5b506101d6600a5481565b604051908152602001610189565b3480156101ef575f80fd5b506101536101fe366004610eaf565b610487565b34801561020e575f80fd5b506101d660115481565b348015610223575f80fd5b506101d66104cd565b348015610237575f80fd5b506101b1610246366004610ec6565b6104ed565b348015610256575f80fd5b5060405160128152602001610189565b348015610271575f80fd5b5061015361053d565b348015610285575f80fd5b506101d6610294366004610f04565b6001600160a01b03165f9081526001602052604090205490565b3480156102b9575f80fd5b50610153610593565b3480156102cd575f80fd5b50610153610604565b3480156102e1575f80fd5b506101d6600e5481565b3480156102f6575f80fd5b505f546040516001600160a01b039091168152602001610189565b34801561031c575f80fd5b506101d6600f5481565b348015610331575f80fd5b506101b1610340366004610e85565b6106cc565b348015610350575f80fd5b506101d660105481565b348015610365575f80fd5b506101d6600b5481565b34801561037a575f80fd5b506005546101b19060ff1681565b348015610393575f80fd5b506101d66103a2366004610f1f565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f546001600160a01b031633146103fe5760405162461bcd60e51b81526004016103f590610f56565b60405180910390fd5b601354600160a01b900460ff16156104585760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103f5565b6013805462ff00ff60a01b19166201000160a01b179055565b5f61047d3384846106d8565b5060015b92915050565b5f546001600160a01b031633146104b05760405162461bcd60e51b81526004016103f590610f56565b6104c281670de0b6b3a7640000610f9f565b601181905560105550565b5f6104da6012600a611096565b6104e8906305f5e100610f9f565b905090565b5f6104f9848484610738565b6001600160a01b0384165f9081526002602090815260408083203380855292529091205461053391869161052e9086906110a4565b6106d8565b5060019392505050565b60055461010090046001600160a01b0316336001600160a01b031614610561575f80fd5b305f90815260016020526040902054801561057f5761057f81610c5a565b47801561058f5761058f81610dd1565b5050565b5f546001600160a01b031633146105bc5760405162461bcd60e51b81526004016103f590610f56565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b0316331461062d5760405162461bcd60e51b81526004016103f590610f56565b6106396012600a611096565b610647906305f5e100610f9f565b600e556106566012600a611096565b610664906305f5e100610f9f565b600f556005805460ff191690556014600b819055600a9081557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf906106ab90601290611096565b6106b9906305f5e100610f9f565b60405190815260200160405180910390a1565b5f61047d338484610738565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f81116107995760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103f5565b6001600160a01b0382165f9081526003602052604081205460ff161580156107d957506001600160a01b0384165f9081526003602052604090205460ff16155b15610b1a57601354600160a01b900460ff1661082a5760405162461bcd60e51b815260206004820152601060248201526f2737ba1039ba30b93a32b2103cb2ba1760811b60448201526064016103f5565b60055460ff16156108e1576012546001600160a01b0384811691161480159061086157506013546001600160a01b03848116911614155b156108e157325f9081526004602052604090205443116108cf5760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b60648201526084016103f5565b325f9081526004602052604090204390555b6013546001600160a01b03858116911614801561090c57506012546001600160a01b03848116911614155b156109f257600e548211156109635760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016103f5565b600f5482610985856001600160a01b03165f9081526001602052604090205490565b61098f91906110b7565b11156109dd5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103f5565b600d8054905f6109ec836110ca565b91905055505b6064600a54600d5411610a0757600654610a0b565b6008545b610a159084610f9f565b610a1f91906110e2565b6013549091506001600160a01b038481169116148015610a4857506001600160a01b0384163014155b15610a7d576064600b54600d5411610a6257600754610a66565b6009545b610a709084610f9f565b610a7a91906110e2565b90505b305f90815260016020526040902054601354600160a81b900460ff16158015610ab357506013546001600160a01b038581169116145b8015610ac85750601354600160b01b900460ff165b8015610ad5575060105481115b8015610ae45750600c54600d54115b15610b1857610b06610b0184610afc84601154610e0c565b610e0c565b610c5a565b478015610b1657610b1647610dd1565b505b505b8015610b9357305f90815260016020526040902054610b3a9082906110b7565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610b8a9085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610bb69083906110a4565b6001600160a01b0385165f90815260016020526040902055610bd881836110a4565b6001600160a01b0384165f90815260016020526040902054610bfa91906110b7565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610c4384866110a4565b60405190815260200160405180910390a350505050565b6013805460ff60a81b1916600160a81b1790558015610dc1576040805160028082526060820183525f9260208301908036833701905050905030815f81518110610ca657610ca6611101565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610cfd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d219190611115565b81600181518110610d3457610d34611101565b6001600160a01b039283166020918202929092010152601254610d5a91309116846106d8565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac94790610d929085905f90869030904290600401611130565b5f604051808303815f87803b158015610da9575f80fd5b505af1158015610dbb573d5f803e3d5ffd5b50505050505b506013805460ff60a81b19169055565b6005546040516101009091046001600160a01b0316906108fc8315029083905f818181858888f1935050505015801561058f573d5f803e3d5ffd5b5f818311610e1a5782610e1c565b815b9392505050565b5f6020808352835180828501525f5b81811015610e4e57858101830151858201604001528201610e32565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610e82575f80fd5b50565b5f8060408385031215610e96575f80fd5b8235610ea181610e6e565b946020939093013593505050565b5f60208284031215610ebf575f80fd5b5035919050565b5f805f60608486031215610ed8575f80fd5b8335610ee381610e6e565b92506020840135610ef381610e6e565b929592945050506040919091013590565b5f60208284031215610f14575f80fd5b8135610e1c81610e6e565b5f8060408385031215610f30575f80fd5b8235610f3b81610e6e565b91506020830135610f4b81610e6e565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761048157610481610f8b565b600181815b80851115610ff057815f1904821115610fd657610fd6610f8b565b80851615610fe357918102915b93841c9390800290610fbb565b509250929050565b5f8261100657506001610481565b8161101257505f610481565b816001811461102857600281146110325761104e565b6001915050610481565b60ff84111561104357611043610f8b565b50506001821b610481565b5060208310610133831016604e8410600b8410161715611071575081810a610481565b61107b8383610fb6565b805f190482111561108e5761108e610f8b565b029392505050565b5f610e1c60ff841683610ff8565b8181038181111561048157610481610f8b565b8082018082111561048157610481610f8b565b5f600182016110db576110db610f8b565b5060010190565b5f826110fc57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611125575f80fd5b8151610e1c81610e6e565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b8181101561117e5784516001600160a01b031683529383019391830191600101611159565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220b02db9fcf76c005610a650a1201777182e754d0899c9e424644ce5f34cd9734864736f6c63430008150033
Deployed Bytecode
0x608060405260043610610134575f3560e01c8063715018a6116100a857806395d89b411161006d57806395d89b4114610155578063a9059cbb14610326578063bf474bed14610345578063c36956a01461035a578063c876d0b91461036f578063dd62ed3e14610388575f80fd5b8063715018a6146102ae578063751039fc146102c25780637d1db4a5146102d65780638da5cb5b146102eb5780638f9a55c014610311575f80fd5b80630faee56f116100f95780630faee56f1461020357806318160ddd1461021857806323b872dd1461022c578063313ce5671461024b57806351bc3c851461026657806370a082311461027a575f80fd5b806301339c211461013f57806306fdde0314610155578063095ea7b3146101925780630c193045146101c15780630ce5fd36146101e4575f80fd5b3661013b57005b5f80fd5b34801561014a575f80fd5b506101536103cc565b005b348015610160575f80fd5b506040805180820182526006815265307847726f6b60d01b602082015290516101899190610e23565b60405180910390f35b34801561019d575f80fd5b506101b16101ac366004610e85565b610471565b6040519015158152602001610189565b3480156101cc575f80fd5b506101d6600a5481565b604051908152602001610189565b3480156101ef575f80fd5b506101536101fe366004610eaf565b610487565b34801561020e575f80fd5b506101d660115481565b348015610223575f80fd5b506101d66104cd565b348015610237575f80fd5b506101b1610246366004610ec6565b6104ed565b348015610256575f80fd5b5060405160128152602001610189565b348015610271575f80fd5b5061015361053d565b348015610285575f80fd5b506101d6610294366004610f04565b6001600160a01b03165f9081526001602052604090205490565b3480156102b9575f80fd5b50610153610593565b3480156102cd575f80fd5b50610153610604565b3480156102e1575f80fd5b506101d6600e5481565b3480156102f6575f80fd5b505f546040516001600160a01b039091168152602001610189565b34801561031c575f80fd5b506101d6600f5481565b348015610331575f80fd5b506101b1610340366004610e85565b6106cc565b348015610350575f80fd5b506101d660105481565b348015610365575f80fd5b506101d6600b5481565b34801561037a575f80fd5b506005546101b19060ff1681565b348015610393575f80fd5b506101d66103a2366004610f1f565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f546001600160a01b031633146103fe5760405162461bcd60e51b81526004016103f590610f56565b60405180910390fd5b601354600160a01b900460ff16156104585760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103f5565b6013805462ff00ff60a01b19166201000160a01b179055565b5f61047d3384846106d8565b5060015b92915050565b5f546001600160a01b031633146104b05760405162461bcd60e51b81526004016103f590610f56565b6104c281670de0b6b3a7640000610f9f565b601181905560105550565b5f6104da6012600a611096565b6104e8906305f5e100610f9f565b905090565b5f6104f9848484610738565b6001600160a01b0384165f9081526002602090815260408083203380855292529091205461053391869161052e9086906110a4565b6106d8565b5060019392505050565b60055461010090046001600160a01b0316336001600160a01b031614610561575f80fd5b305f90815260016020526040902054801561057f5761057f81610c5a565b47801561058f5761058f81610dd1565b5050565b5f546001600160a01b031633146105bc5760405162461bcd60e51b81526004016103f590610f56565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b0316331461062d5760405162461bcd60e51b81526004016103f590610f56565b6106396012600a611096565b610647906305f5e100610f9f565b600e556106566012600a611096565b610664906305f5e100610f9f565b600f556005805460ff191690556014600b819055600a9081557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf906106ab90601290611096565b6106b9906305f5e100610f9f565b60405190815260200160405180910390a1565b5f61047d338484610738565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f81116107995760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103f5565b6001600160a01b0382165f9081526003602052604081205460ff161580156107d957506001600160a01b0384165f9081526003602052604090205460ff16155b15610b1a57601354600160a01b900460ff1661082a5760405162461bcd60e51b815260206004820152601060248201526f2737ba1039ba30b93a32b2103cb2ba1760811b60448201526064016103f5565b60055460ff16156108e1576012546001600160a01b0384811691161480159061086157506013546001600160a01b03848116911614155b156108e157325f9081526004602052604090205443116108cf5760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b60648201526084016103f5565b325f9081526004602052604090204390555b6013546001600160a01b03858116911614801561090c57506012546001600160a01b03848116911614155b156109f257600e548211156109635760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016103f5565b600f5482610985856001600160a01b03165f9081526001602052604090205490565b61098f91906110b7565b11156109dd5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103f5565b600d8054905f6109ec836110ca565b91905055505b6064600a54600d5411610a0757600654610a0b565b6008545b610a159084610f9f565b610a1f91906110e2565b6013549091506001600160a01b038481169116148015610a4857506001600160a01b0384163014155b15610a7d576064600b54600d5411610a6257600754610a66565b6009545b610a709084610f9f565b610a7a91906110e2565b90505b305f90815260016020526040902054601354600160a81b900460ff16158015610ab357506013546001600160a01b038581169116145b8015610ac85750601354600160b01b900460ff165b8015610ad5575060105481115b8015610ae45750600c54600d54115b15610b1857610b06610b0184610afc84601154610e0c565b610e0c565b610c5a565b478015610b1657610b1647610dd1565b505b505b8015610b9357305f90815260016020526040902054610b3a9082906110b7565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610b8a9085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610bb69083906110a4565b6001600160a01b0385165f90815260016020526040902055610bd881836110a4565b6001600160a01b0384165f90815260016020526040902054610bfa91906110b7565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610c4384866110a4565b60405190815260200160405180910390a350505050565b6013805460ff60a81b1916600160a81b1790558015610dc1576040805160028082526060820183525f9260208301908036833701905050905030815f81518110610ca657610ca6611101565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610cfd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d219190611115565b81600181518110610d3457610d34611101565b6001600160a01b039283166020918202929092010152601254610d5a91309116846106d8565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac94790610d929085905f90869030904290600401611130565b5f604051808303815f87803b158015610da9575f80fd5b505af1158015610dbb573d5f803e3d5ffd5b50505050505b506013805460ff60a81b19169055565b6005546040516101009091046001600160a01b0316906108fc8315029083905f818181858888f1935050505015801561058f573d5f803e3d5ffd5b5f818311610e1a5782610e1c565b815b9392505050565b5f6020808352835180828501525f5b81811015610e4e57858101830151858201604001528201610e32565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610e82575f80fd5b50565b5f8060408385031215610e96575f80fd5b8235610ea181610e6e565b946020939093013593505050565b5f60208284031215610ebf575f80fd5b5035919050565b5f805f60608486031215610ed8575f80fd5b8335610ee381610e6e565b92506020840135610ef381610e6e565b929592945050506040919091013590565b5f60208284031215610f14575f80fd5b8135610e1c81610e6e565b5f8060408385031215610f30575f80fd5b8235610f3b81610e6e565b91506020830135610f4b81610e6e565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761048157610481610f8b565b600181815b80851115610ff057815f1904821115610fd657610fd6610f8b565b80851615610fe357918102915b93841c9390800290610fbb565b509250929050565b5f8261100657506001610481565b8161101257505f610481565b816001811461102857600281146110325761104e565b6001915050610481565b60ff84111561104357611043610f8b565b50506001821b610481565b5060208310610133831016604e8410600b8410161715611071575081810a610481565b61107b8383610fb6565b805f190482111561108e5761108e610f8b565b029392505050565b5f610e1c60ff841683610ff8565b8181038181111561048157610481610f8b565b8082018082111561048157610481610f8b565b5f600182016110db576110db610f8b565b5060010190565b5f826110fc57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611125575f80fd5b8151610e1c81610e6e565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b8181101561117e5784516001600160a01b031683529383019391830191600101611159565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220b02db9fcf76c005610a650a1201777182e754d0899c9e424644ce5f34cd9734864736f6c63430008150033
Deployed Bytecode Sourcemap
2580:8447:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10451:162;;;;;;;;;;;;;:::i;:::-;;4739:83;;;;;;;;;;-1:-1:-1;4809:5:0;;;;;;;;;;;-1:-1:-1;;;4809:5:0;;;;4739:83;;;;4809:5;4739:83;:::i;:::-;;;;;;;;5622:186;;;;;;;;;;-1:-1:-1;5622:186:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;5622:186:0;1023:187:1;3140:35:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;3140:35:0;1215:177:1;10294:149:0;;;;;;;;;;-1:-1:-1;10294:149:0;;;;;:::i;:::-;;:::i;3689:43::-;;;;;;;;;;;;;;;;5016:95;;;;;;;;;;;;;:::i;5816:350::-;;;;;;;;;;-1:-1:-1;5816:350:0;;;;;:::i;:::-;;:::i;4925:83::-;;;;;;;;;;-1:-1:-1;4925:83:0;;3343:2;2185:36:1;;2173:2;2158:18;4925:83:0;2043:184:1;10658:366:0;;;;;;;;;;;;;:::i;5119:119::-;;;;;;;;;;-1:-1:-1;5119:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5212:18:0;5185:7;5212:18;;;:9;:18;;;;;;;5119:119;1605:148;;;;;;;;;;;;;:::i;9922:264::-;;;;;;;;;;;;;:::i;3533:42::-;;;;;;;;;;;;;;;;1391:79;;;;;;;;;;-1:-1:-1;1429:7:0;1456:6;1391:79;;-1:-1:-1;;;;;1456:6:0;;;2630:51:1;;2618:2;2603:18;1391:79:0;2484:203:1;3582:44:0;;;;;;;;;;;;;;;;5246:192;;;;;;;;;;-1:-1:-1;5246:192:0;;;;;:::i;:::-;;:::i;3633:49::-;;;;;;;;;;;;;;;;3182:36;;;;;;;;;;;;;;;;2886:40;;;;;;;;;;-1:-1:-1;2886:40:0;;;;;;;;5446:168;;;;;;;;;;-1:-1:-1;5446:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;5579:18:0;;;5552:7;5579:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5446:168;10451:162;1518:6;;-1:-1:-1;;;;;1518:6:0;217:10;1518:22;1510:67;;;;-1:-1:-1;;;1510:67:0;;;;;;;:::i;:::-;;;;;;;;;10508:11:::1;::::0;-1:-1:-1;;;10508:11:0;::::1;;;10507:12;10499:48;;;::::0;-1:-1:-1;;;10499:48:0;;3648:2:1;10499:48:0::1;::::0;::::1;3630:21:1::0;3687:2;3667:18;;;3660:30;3726:25;3706:18;;;3699:53;3769:18;;10499:48:0::1;3446:347:1::0;10499:48:0::1;10558:11;:18:::0;;-1:-1:-1;;;;10587:18:0;-1:-1:-1;;;10587:18:0;;;10451:162::o;5622:186::-;5722:4;5739:39;217:10;5762:7;5771:6;5739:8;:39::i;:::-;-1:-1:-1;5796:4:0;5622:186;;;;;:::o;10294:149::-;1518:6;;-1:-1:-1;;;;;1518:6:0;217:10;1518:22;1510:67;;;;-1:-1:-1;;;1510:67:0;;;;;;;:::i;:::-;10380:13:::1;:6:::0;10389:4:::1;10380:13;:::i;:::-;10366:11;:27:::0;;;10404:17:::1;:31:::0;-1:-1:-1;10294:149:0:o;5016:95::-;5069:7;3401:15;3343:2;3401;:15;:::i;:::-;3387:29;;:11;:29;:::i;:::-;5089:14;;5016:95;:::o;5816:350::-;5948:4;5965:36;5975:6;5983:9;5994:6;5965:9;:36::i;:::-;-1:-1:-1;;;;;6083:19:0;;;;;;:11;:19;;;;;;;;217:10;6083:33;;;;;;;;;6012:124;;6035:6;;6083:42;;6119:6;;6083:42;:::i;:::-;6012:8;:124::i;:::-;-1:-1:-1;6154:4:0;5816:350;;;;;:::o;10658:366::-;10724:10;;;;;-1:-1:-1;;;;;10724:10:0;217;-1:-1:-1;;;;;10708:26:0;;10700:35;;;;;;10787:4;10746:20;5212:18;;;:9;:18;;;;;;10808:16;;10804:79;;10841:30;10858:12;10841:16;:30::i;:::-;10914:21;10950:14;;10946:71;;10981:24;10994:10;10981:12;:24::i;:::-;10689:335;;10658:366::o;1605:148::-;1518:6;;-1:-1:-1;;;;;1518:6:0;217:10;1518:22;1510:67;;;;-1:-1:-1;;;1510:67:0;;;;;;;:::i;:::-;1712:1:::1;1696:6:::0;;1675:40:::1;::::0;-1:-1:-1;;;;;1696:6:0;;::::1;::::0;1675:40:::1;::::0;1712:1;;1675:40:::1;1743:1;1726:19:::0;;-1:-1:-1;;;;;;1726:19:0::1;::::0;;1605:148::o;9922:264::-;1518:6;;-1:-1:-1;;;;;1518:6:0;217:10;1518:22;1510:67;;;;-1:-1:-1;;;1510:67:0;;;;;;;:::i;:::-;3401:15:::1;3343:2;3401;:15;:::i;:::-;3387:29;::::0;:11:::1;:29;:::i;:::-;9976:12;:22:::0;3401:15:::1;3343:2;3401;:15;:::i;:::-;3387:29;::::0;:11:::1;:29;:::i;:::-;10009:14;:24:::0;10044:20:::1;:28:::0;;-1:-1:-1;;10044:28:0::1;::::0;;10102:2:::1;10083:16;:21:::0;;;-1:-1:-1;10115:20:0;;;10151:27:::1;::::0;3401:15:::1;::::0;3343:2:::1;::::0;3401:15:::1;:::i;:::-;3387:29;::::0;:11:::1;:29;:::i;:::-;10151:27;::::0;1361:25:1;;;1349:2;1334:18;10151:27:0::1;;;;;;;9922:264::o:0;5246:192::-;5349:4;5366:42;217:10;5390:9;5401:6;5366:9;:42::i;6174:177::-;-1:-1:-1;;;;;6259:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6311:32;;1361:25:1;;;6311:32:0;;1334:18:1;6311:32:0;;;;;;;6174:177;;;:::o;6359:2884::-;6456:1;6447:6;:10;6439:64;;;;-1:-1:-1;;;6439:64:0;;5821:2:1;6439:64:0;;;5803:21:1;5860:2;5840:18;;;5833:30;5899:34;5879:18;;;5872:62;-1:-1:-1;;;5950:18:1;;;5943:39;5999:19;;6439:64:0;5619:405:1;6439:64:0;-1:-1:-1;;;;;6551:22:0;;6514:17;6551:22;;;:18;:22;;;;;;;;6550:23;:52;;;;-1:-1:-1;;;;;;6578:24:0;;;;;;:18;:24;;;;;;;;6577:25;6550:52;6546:2339;;;6627:11;;-1:-1:-1;;;6627:11:0;;;;6619:40;;;;-1:-1:-1;;;6619:40:0;;6231:2:1;6619:40:0;;;6213:21:1;6270:2;6250:18;;;6243:30;-1:-1:-1;;;6289:18:1;;;6282:46;6345:18;;6619:40:0;6029:340:1;6619:40:0;6678:20;;;;6674:485;;;6759:15;;-1:-1:-1;;;;;6745:30:0;;;6759:15;;6745:30;;;;:83;;-1:-1:-1;6814:13:0;;-1:-1:-1;;;;;6800:28:0;;;6814:13;;6800:28;;6745:83;6719:425;;;6934:9;6905:39;;;;:28;:39;;;;;;6947:12;-1:-1:-1;6871:176:0;;;;-1:-1:-1;;;6871:176:0;;6576:2:1;6871:176:0;;;6558:21:1;6615:2;6595:18;;;6588:30;6654:34;6634:18;;;6627:62;-1:-1:-1;;;6705:18:1;;;6698:34;6749:19;;6871:176:0;6374:400:1;6871:176:0;7099:9;7070:39;;;;:28;:39;;;;;7112:12;7070:54;;6719:425;7205:13;;-1:-1:-1;;;;;7197:21:0;;;7205:13;;7197:21;:72;;;;-1:-1:-1;7253:15:0;;-1:-1:-1;;;;;7239:30:0;;;7253:15;;7239:30;;7197:72;7175:394;;;7322:12;;7312:6;:22;;7304:60;;;;-1:-1:-1;;;7304:60:0;;6981:2:1;7304:60:0;;;6963:21:1;7020:2;7000:18;;;6993:30;7059:27;7039:18;;;7032:55;7104:18;;7304:60:0;6779:349:1;7304:60:0;7439:14;;7429:6;7413:13;7423:2;-1:-1:-1;;;;;5212:18:0;5185:7;5212:18;;;:9;:18;;;;;;;5119:119;7413:13;:22;;;;:::i;:::-;:40;;7383:140;;;;-1:-1:-1;;;7383:140:0;;7465:2:1;7383:140:0;;;7447:21:1;7504:2;7484:18;;;7477:30;7543:28;7523:18;;;7516:56;7589:18;;7383:140:0;7263:350:1;7383:140:0;7542:9;:11;;;:9;:11;;;:::i;:::-;;;;;;7175:394;7835:3;7685:15;;7673:9;;:27;7672:119;;7777:14;;7672:119;;;7733:12;;7672:119;7615:199;;:6;:199;:::i;:::-;7614:224;;;;:::i;:::-;7863:13;;7585:253;;-1:-1:-1;;;;;;7857:19:0;;;7863:13;;7857:19;:44;;;;-1:-1:-1;;;;;;7880:21:0;;7896:4;7880:21;;7857:44;7853:369;;;8203:3;8034:16;;8022:9;;:28;8021:130;;8136:15;;8021:130;;;8087:13;;8021:130;7956:222;;:6;:222;:::i;:::-;7955:251;;;;:::i;:::-;7922:284;;7853:369;8287:4;8238:28;5212:18;;;:9;:18;;;;;;8331:6;;-1:-1:-1;;;8331:6:0;;;;8330:7;:47;;;;-1:-1:-1;8364:13:0;;-1:-1:-1;;;;;8358:19:0;;;8364:13;;8358:19;8330:47;:79;;;;-1:-1:-1;8398:11:0;;-1:-1:-1;;;8398:11:0;;;;8330:79;:140;;;;;8453:17;;8430:20;:40;8330:140;:191;;;;;8503:18;;8491:9;;:30;8330:191;8308:566;;;8556:109;8595:51;8599:6;8607:38;8611:20;8633:11;;8607:3;:38::i;:::-;8595:3;:51::i;:::-;8556:16;:109::i;:::-;8713:21;8757:22;;8753:106;;8804:35;8817:21;8804:12;:35::i;:::-;8537:337;8308:566;6604:2281;6546:2339;8901:13;;8897:169;;8976:4;8958:24;;;;:9;:24;;;;;;:36;;8985:9;;8958:36;:::i;:::-;8949:4;8931:24;;;;:9;:24;;;;;;;:63;;;;9014:40;;-1:-1:-1;;;;;9014:40:0;;;;;;;9044:9;1361:25:1;;1349:2;1334:18;;1215:177;9014:40:0;;;;;;;;8897:169;-1:-1:-1;;;;;9094:15:0;;;;;;:9;:15;;;;;;:24;;9112:6;;9094:24;:::i;:::-;-1:-1:-1;;;;;9076:15:0;;;;;;:9;:15;;;;;:42;9162:18;9171:9;9162:6;:18;:::i;:::-;-1:-1:-1;;;;;9145:13:0;;;;;;:9;:13;;;;;;:36;;;;:::i;:::-;-1:-1:-1;;;;;9129:13:0;;;;;;;:9;:13;;;;;:52;;;;9197:38;;;9216:18;9225:9;9216:6;:18;:::i;:::-;9197:38;;1361:25:1;;;1349:2;1334:18;9197:38:0;;;;;;;6428:2815;6359:2884;;;:::o;9366:548::-;4016:6;:13;;-1:-1:-1;;;;4016:13:0;-1:-1:-1;;;4016:13:0;;;9444:55;;9481:7:::1;9444:55;9533:16;::::0;;9547:1:::1;9533:16:::0;;;;;::::1;::::0;;9509:21:::1;::::0;9533:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9533:16:0::1;9509:40;;9578:4;9560;9565:1;9560:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9560:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9604:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9604:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9560:7;;9604:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9594:4;9599:1;9594:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9594:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9669:15:::1;::::0;9637:62:::1;::::0;9654:4:::1;::::0;9669:15:::1;9687:11:::0;9637:8:::1;:62::i;:::-;9710:15;::::0;:196:::1;::::0;-1:-1:-1;;;9710:196:0;;-1:-1:-1;;;;;9710:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;9791:11;;9710:15:::1;::::0;9833:4;;9860::::1;::::0;9880:15:::1;::::0;9710:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;9433:481;4040:1;-1:-1:-1::0;4052:6:0;:14;;-1:-1:-1;;;;4052:14:0;;;9366:548::o;10194:92::-;10251:10;;:27;;:10;;;;-1:-1:-1;;;;;10251:10:0;;:27;;;;;;;;;;;;:10;:27;;;;;;;;;;;;;;;;;;;9251:107;9308:7;9340:1;9336;:5;9335:15;;9349:1;9335:15;;;9345:1;9335:15;9328:22;9251:107;-1:-1:-1;;;9251:107:0:o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:180::-;1456:6;1509:2;1497:9;1488:7;1484:23;1480:32;1477:52;;;1525:1;1522;1515:12;1477:52;-1:-1:-1;1548:23:1;;1397:180;-1:-1:-1;1397:180:1:o;1582:456::-;1659:6;1667;1675;1728:2;1716:9;1707:7;1703:23;1699:32;1696:52;;;1744:1;1741;1734:12;1696:52;1783:9;1770:23;1802:31;1827:5;1802:31;:::i;:::-;1852:5;-1:-1:-1;1909:2:1;1894:18;;1881:32;1922:33;1881:32;1922:33;:::i;:::-;1582:456;;1974:7;;-1:-1:-1;;;2028:2:1;2013:18;;;;2000:32;;1582:456::o;2232:247::-;2291:6;2344:2;2332:9;2323:7;2319:23;2315:32;2312:52;;;2360:1;2357;2350:12;2312:52;2399:9;2386:23;2418:31;2443:5;2418:31;:::i;2692:388::-;2760:6;2768;2821:2;2809:9;2800:7;2796:23;2792:32;2789:52;;;2837:1;2834;2827:12;2789:52;2876:9;2863:23;2895:31;2920:5;2895:31;:::i;:::-;2945:5;-1:-1:-1;3002:2:1;2987:18;;2974:32;3015:33;2974:32;3015:33;:::i;:::-;3067:7;3057:17;;;2692:388;;;;;:::o;3085:356::-;3287:2;3269:21;;;3306:18;;;3299:30;3365:34;3360:2;3345:18;;3338:62;3432:2;3417:18;;3085:356::o;3798:127::-;3859:10;3854:3;3850:20;3847:1;3840:31;3890:4;3887:1;3880:15;3914:4;3911:1;3904:15;3930:168;4003:9;;;4034;;4051:15;;;4045:22;;4031:37;4021:71;;4072:18;;:::i;4103:422::-;4192:1;4235:5;4192:1;4249:270;4270:7;4260:8;4257:21;4249:270;;;4329:4;4325:1;4321:6;4317:17;4311:4;4308:27;4305:53;;;4338:18;;:::i;:::-;4388:7;4378:8;4374:22;4371:55;;;4408:16;;;;4371:55;4487:22;;;;4447:15;;;;4249:270;;;4253:3;4103:422;;;;;:::o;4530:806::-;4579:5;4609:8;4599:80;;-1:-1:-1;4650:1:1;4664:5;;4599:80;4698:4;4688:76;;-1:-1:-1;4735:1:1;4749:5;;4688:76;4780:4;4798:1;4793:59;;;;4866:1;4861:130;;;;4773:218;;4793:59;4823:1;4814:10;;4837:5;;;4861:130;4898:3;4888:8;4885:17;4882:43;;;4905:18;;:::i;:::-;-1:-1:-1;;4961:1:1;4947:16;;4976:5;;4773:218;;5075:2;5065:8;5062:16;5056:3;5050:4;5047:13;5043:36;5037:2;5027:8;5024:16;5019:2;5013:4;5010:12;5006:35;5003:77;5000:159;;;-1:-1:-1;5112:19:1;;;5144:5;;5000:159;5191:34;5216:8;5210:4;5191:34;:::i;:::-;5261:6;5257:1;5253:6;5249:19;5240:7;5237:32;5234:58;;;5272:18;;:::i;:::-;5310:20;;4530:806;-1:-1:-1;;;4530:806:1:o;5341:140::-;5399:5;5428:47;5469:4;5459:8;5455:19;5449:4;5428:47;:::i;5486:128::-;5553:9;;;5574:11;;;5571:37;;;5588:18;;:::i;7133:125::-;7198:9;;;7219:10;;;7216:36;;;7232:18;;:::i;7618:135::-;7657:3;7678:17;;;7675:43;;7698:18;;:::i;:::-;-1:-1:-1;7745:1:1;7734:13;;7618:135::o;7758:217::-;7798:1;7824;7814:132;;7868:10;7863:3;7859:20;7856:1;7849:31;7903:4;7900:1;7893:15;7931:4;7928:1;7921:15;7814:132;-1:-1:-1;7960:9:1;;7758:217::o;8112:127::-;8173:10;8168:3;8164:20;8161:1;8154:31;8204:4;8201:1;8194:15;8228:4;8225:1;8218:15;8244:251;8314:6;8367:2;8355:9;8346:7;8342:23;8338:32;8335:52;;;8383:1;8380;8373:12;8335:52;8415:9;8409:16;8434:31;8459:5;8434:31;:::i;8500:980::-;8762:4;8810:3;8799:9;8795:19;8841:6;8830:9;8823:25;8867:2;8905:6;8900:2;8889:9;8885:18;8878:34;8948:3;8943:2;8932:9;8928:18;8921:31;8972:6;9007;9001:13;9038:6;9030;9023:22;9076:3;9065:9;9061:19;9054:26;;9115:2;9107:6;9103:15;9089:29;;9136:1;9146:195;9160:6;9157:1;9154:13;9146:195;;;9225:13;;-1:-1:-1;;;;;9221:39:1;9209:52;;9316:15;;;;9281:12;;;;9257:1;9175:9;9146:195;;;-1:-1:-1;;;;;;;9397:32:1;;;;9392:2;9377:18;;9370:60;-1:-1:-1;;;9461:3:1;9446:19;9439:35;9358:3;8500:980;-1:-1:-1;;;8500:980:1:o
Swarm Source
ipfs://b02db9fcf76c005610a650a1201777182e754d0899c9e424644ce5f34cd97348
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.