ERC-20
Overview
Max Total Supply
21,000,000 DALMATIAN
Holders
365
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
0.000000001 DALMATIANValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
Dalmatian
Compiler Version
v0.8.23+commit.f704f362
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-12-26 */ // SPDX-License-Identifier: UNLICENSE /* https://x.com/squidgame/status/1872190612973183366 */ pragma solidity ^0.8.23; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( 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 Dalmatian is Context, IERC20, Ownable { using SafeMath for uint256; mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFee; address payable private _taxWallet = payable(0x060692e1B94930B7b6b66772483A0D81584cA069); string private constant _name = unicode"DALMATIAN"; string private constant _symbol = unicode"DALMATIAN"; uint256 private _initialBuyTax = 20; uint256 private _initialSellTax = 20; uint256 private _finalBuyTax = 0; uint256 private _finalSellTax = 0; uint256 private _reduceBuyTaxAt = 4; uint256 private _reduceSellTaxAt = 4; uint256 private _preventSwapBefore = 4; uint256 private _buyCount = 0; uint32 private _launchBlock; uint32 private _launchBuys; uint8 private constant _decimals = 9; uint256 private constant _tTotal = 21000000 * 10 ** _decimals; uint256 public _maxTxAmount = 420000 * 10 ** _decimals; uint256 public _maxWalletSize = 420000 * 10 ** _decimals; uint256 public _taxSwapThreshold = 210000 * 10 ** _decimals; uint256 public _maxTaxSwap = 420000 * 10 ** _decimals; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; uint256 private sellCount = 0; uint256 private lastSellBlock = 0; event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap() { inSwap = true; _; inSwap = false; } constructor() { _balances[address(this)] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_taxWallet] = true; uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); emit Transfer(address(0), _msgSender(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve( sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance") ); return true; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _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"); uint256 taxAmount = 0; if (from != owner() && to != owner()) { taxAmount = amount.mul((_buyCount > _reduceBuyTaxAt) ? _finalBuyTax : _initialBuyTax).div(100); if (uint32(block.number) == _launchBlock) require(_launchBuys++ < 50, "Excess launch snipers"); if (from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to]) { require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize."); _buyCount++; } if (to == uniswapV2Pair && from != address(this)) { taxAmount = amount.mul((_buyCount > _reduceSellTaxAt) ? _finalSellTax : _initialSellTax).div(100); } uint256 contractTokenBalance = balanceOf(address(this)); if ( !inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance > _taxSwapThreshold && _buyCount > _preventSwapBefore ) { if (block.number > lastSellBlock) { sellCount = 0; } require(sellCount < 3, "Only 3 sells per block!"); swapTokensForEth(min(amount, min(contractTokenBalance, _maxTaxSwap))); uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) { sendETHToFee(address(this).balance); } sellCount++; lastSellBlock = block.number; } } 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 min(uint256 a, uint256 b) private pure returns (uint256) { return (a > b) ? b : a; } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function removeLimits_p() external onlyOwner { _maxTxAmount = _tTotal; _maxWalletSize = _tTotal; emit MaxTxAmountUpdated(_tTotal); } function sendETHToFee(uint256 amount) private { _taxWallet.transfer(amount); } function openTrading() external onlyOwner { require(!tradingOpen, "trading is already open"); uniswapV2Router.addLiquidityETH{ value: address(this).balance }( address(this), balanceOf(address(this)), 0, 0, owner(), block.timestamp ); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); swapEnabled = true; tradingOpen = true; _launchBlock = uint32(block.number); } function reduceFee_S(uint256 _newFee) external { require(_msgSender() == _taxWallet); require(_newFee <= _finalBuyTax && _newFee <= _finalSellTax); _finalBuyTax = _newFee; _finalSellTax = _newFee; } receive() external payable {} function manualSwap_S() external { require(_msgSender() == _taxWallet); uint256 tokenBalance = balanceOf(address(this)); if (tokenBalance > 0) { swapTokensForEth(tokenBalance); } uint256 ethBalance = address(this).balance; if (ethBalance > 0) { sendETHToFee(ethBalance); } } function manualsend_S() external { require(_msgSender() == _taxWallet); uint256 contractETHBalance = address(this).balance; sendETHToFee(contractETHBalance); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"manualSwap_S","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualsend_S","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":[{"internalType":"uint256","name":"_newFee","type":"uint256"}],"name":"reduceFee_S","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimits_p","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
6080604052600480546001600160a01b03191673060692e1b94930b7b6b66772483a0d81584ca069178155601460058190556006555f600781905560088190556009828155600a838155600b93909355600c9190915562000060916200065a565b6200006f90620668a062000671565b600e55620000806009600a6200065a565b6200008f90620668a062000671565b600f55620000a06009600a6200065a565b620000af906203345062000671565b601055620000c06009600a6200065a565b620000cf90620668a062000671565b6011556013805461ffff60a81b191690555f6014819055601555348015620000f5575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350620001446009600a6200065a565b62000154906301406f4062000671565b305f9081526001602081905260408220929092556003906200017d5f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff19968716179055308082526003909452828120805486166001908117909155600454909216815291909120805490931617909155601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556200022a9190620002146009600a6200065a565b62000224906301406f4062000671565b62000420565b60125f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200027b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002a191906200068b565b6001600160a01b031663c9c653963060125f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000301573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200032791906200068b565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801562000372573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200039891906200068b565b601380546001600160a01b0319166001600160a01b0392909216919091179055620003c03390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620003f96009600a6200065a565b62000409906301406f4062000671565b60405190815260200160405180910390a3620006b3565b6001600160a01b038316620004885760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b038216620004eb5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016200047f565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200059f57815f19048211156200058357620005836200054b565b808516156200059157918102915b93841c939080029062000564565b509250929050565b5f82620005b75750600162000654565b81620005c557505f62000654565b8160018114620005de5760028114620005e95762000609565b600191505062000654565b60ff841115620005fd57620005fd6200054b565b50506001821b62000654565b5060208310610133831016604e8410600b84101617156200062e575081810a62000654565b6200063a83836200055f565b805f19048211156200065057620006506200054b565b0290505b92915050565b5f6200066a60ff841683620005a7565b9392505050565b80820281158282048414176200065457620006546200054b565b5f602082840312156200069c575f80fd5b81516001600160a01b03811681146200066a575f80fd5b61170780620006c15f395ff3fe60806040526004361061011e575f3560e01c80637d1db4a51161009d578063a9059cbb11610062578063a9059cbb146102ea578063bf474bed14610309578063c745d7da1461031e578063c9567bf914610332578063dd62ed3e14610346575f80fd5b80637d1db4a51461028657806387b7c4591461029b5780638da5cb5b146102af5780638f9a55c0146102d557806395d89b4114610129575f80fd5b8063300b0b34116100e3578063300b0b34146101ee578063313ce5671461020f578063317f15fd1461022a57806370a082311461023e578063715018a614610272575f80fd5b806306fdde0314610129578063095ea7b3146101695780630faee56f1461019857806318160ddd146101bb57806323b872dd146101cf575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5060408051808201825260098152682220a626a0aa24a0a760b91b6020820152905161016091906112c1565b60405180910390f35b348015610174575f80fd5b50610188610183366004611321565b61038a565b6040519015158152602001610160565b3480156101a3575f80fd5b506101ad60115481565b604051908152602001610160565b3480156101c6575f80fd5b506101ad6103a0565b3480156101da575f80fd5b506101886101e936600461134b565b6103c0565b3480156101f9575f80fd5b5061020d610208366004611389565b610427565b005b34801561021a575f80fd5b5060405160098152602001610160565b348015610235575f80fd5b5061020d61046c565b348015610249575f80fd5b506101ad6102583660046113a0565b6001600160a01b03165f9081526001602052604090205490565b34801561027d575f80fd5b5061020d610526565b348015610291575f80fd5b506101ad600e5481565b3480156102a6575f80fd5b5061020d610597565b3480156102ba575f80fd5b505f546040516001600160a01b039091168152602001610160565b3480156102e0575f80fd5b506101ad600f5481565b3480156102f5575f80fd5b50610188610304366004611321565b6105c3565b348015610314575f80fd5b506101ad60105481565b348015610329575f80fd5b5061020d6105cf565b34801561033d575f80fd5b5061020d610620565b348015610351575f80fd5b506101ad6103603660046113bb565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f61039633848461081a565b5060015b92915050565b5f6103ad6009600a6114e6565b6103bb906301406f406114f4565b905090565b5f6103cc84848461093d565b61041d8433610418856040518060600160405280602881526020016116aa602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610f3d565b61081a565b5060019392505050565b6004546001600160a01b0316336001600160a01b031614610446575f80fd5b600754811115801561045a57506008548111155b610462575f80fd5b6007819055600855565b5f546001600160a01b0316331461049e5760405162461bcd60e51b81526004016104959061150b565b60405180910390fd5b6104aa6009600a6114e6565b6104b8906301406f406114f4565b600e556104c76009600a6114e6565b6104d5906301406f406114f4565b600f557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105056009600a6114e6565b610513906301406f406114f4565b60405190815260200160405180910390a1565b5f546001600160a01b0316331461054f5760405162461bcd60e51b81526004016104959061150b565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b6004546001600160a01b0316336001600160a01b0316146105b6575f80fd5b476105c081610f75565b50565b5f61039633848461093d565b6004546001600160a01b0316336001600160a01b0316146105ee575f80fd5b305f90815260016020526040902054801561060c5761060c81610fac565b47801561061c5761061c81610f75565b5050565b5f546001600160a01b031633146106495760405162461bcd60e51b81526004016104959061150b565b601354600160a01b900460ff16156106a35760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610495565b6012546001600160a01b031663f305d71947306106d4816001600160a01b03165f9081526001602052604090205490565b5f806106e75f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561074d573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906107729190611540565b505060135460125460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156107c7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107eb919061156b565b506013805462ff00ff60a01b19166201000160a01b179055600d805463ffffffff19164363ffffffff16179055565b6001600160a01b03831661087c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610495565b6001600160a01b0382166108dd5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610495565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109a15760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610495565b6001600160a01b038216610a035760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610495565b5f8111610a645760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610495565b5f80546001600160a01b03858116911614801590610a8f57505f546001600160a01b03848116911614155b15610e0057610ac06064610aba600954600c5411610aaf57600554610ab3565b6007545b859061111c565b906111a1565b600d5490915063ffffffff9081164390911603610b6257600d805460329164010000000090910463ffffffff16906004610af98361158a565b91906101000a81548163ffffffff021916908363ffffffff16021790555063ffffffff1610610b625760405162461bcd60e51b8152602060048201526015602482015274457863657373206c61756e636820736e697065727360581b6044820152606401610495565b6013546001600160a01b038581169116148015610b8d57506012546001600160a01b03848116911614155b8015610bb157506001600160a01b0383165f9081526003602052604090205460ff16155b15610c9757600e54821115610c085760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610495565b600f5482610c2a856001600160a01b03165f9081526001602052604090205490565b610c3491906115ac565b1115610c825760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610495565b600c8054905f610c91836115bf565b91905055505b6013546001600160a01b038481169116148015610cbd57506001600160a01b0384163014155b15610cea57610ce76064610aba600a54600c5411610cdd57600654610ab3565b600854859061111c565b90505b305f90815260016020526040902054601354600160a81b900460ff16158015610d2057506013546001600160a01b038581169116145b8015610d355750601354600160b01b900460ff165b8015610d42575060105481115b8015610d515750600b54600c54115b15610dfe57601554431115610d65575f6014555b600360145410610db75760405162461bcd60e51b815260206004820152601760248201527f4f6e6c7920332073656c6c732070657220626c6f636b210000000000000000006044820152606401610495565b610dd4610dcf84610dca846011546111e2565b6111e2565b610fac565b478015610de457610de447610f75565b60148054905f610df3836115bf565b909155505043601555505b505b8015610e7857305f90815260016020526040902054610e1f90826111f6565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e6f9085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610e9a9083611254565b6001600160a01b0385165f90815260016020526040902055610edd610ebf8383611254565b6001600160a01b0385165f90815260016020526040902054906111f6565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610f268585611254565b60405190815260200160405180910390a350505050565b5f8184841115610f605760405162461bcd60e51b815260040161049591906112c1565b505f610f6c84866115d7565b95945050505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561061c573d5f803e3d5ffd5b6013805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610ff257610ff26115ea565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611049573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061106d91906115fe565b81600181518110611080576110806115ea565b6001600160a01b0392831660209182029290920101526012546110a6913091168461081a565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906110de9085905f90869030904290600401611619565b5f604051808303815f87803b1580156110f5575f80fd5b505af1158015611107573d5f803e3d5ffd5b50506013805460ff60a81b1916905550505050565b5f825f0361112b57505f61039a565b5f61113683856114f4565b905082611143858361168a565b1461119a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610495565b9392505050565b5f61119a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611295565b5f8183116111f0578261119a565b50919050565b5f8061120283856115ac565b90508381101561119a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610495565b5f61119a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f3d565b5f81836112b55760405162461bcd60e51b815260040161049591906112c1565b505f610f6c848661168a565b5f602080835283518060208501525f5b818110156112ed578581018301518582016040015282016112d1565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146105c0575f80fd5b5f8060408385031215611332575f80fd5b823561133d8161130d565b946020939093013593505050565b5f805f6060848603121561135d575f80fd5b83356113688161130d565b925060208401356113788161130d565b929592945050506040919091013590565b5f60208284031215611399575f80fd5b5035919050565b5f602082840312156113b0575f80fd5b813561119a8161130d565b5f80604083850312156113cc575f80fd5b82356113d78161130d565b915060208301356113e78161130d565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561144057815f1904821115611426576114266113f2565b8085161561143357918102915b93841c939080029061140b565b509250929050565b5f826114565750600161039a565b8161146257505f61039a565b816001811461147857600281146114825761149e565b600191505061039a565b60ff841115611493576114936113f2565b50506001821b61039a565b5060208310610133831016604e8410600b84101617156114c1575081810a61039a565b6114cb8383611406565b805f19048211156114de576114de6113f2565b029392505050565b5f61119a60ff841683611448565b808202811582820484141761039a5761039a6113f2565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f805f60608486031215611552575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561157b575f80fd5b8151801515811461119a575f80fd5b5f63ffffffff8083168181036115a2576115a26113f2565b6001019392505050565b8082018082111561039a5761039a6113f2565b5f600182016115d0576115d06113f2565b5060010190565b8181038181111561039a5761039a6113f2565b634e487b7160e01b5f52603260045260245ffd5b5f6020828403121561160e575f80fd5b815161119a8161130d565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156116695784516001600160a01b031683529383019391830191600101611644565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826116a457634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220702ae344ae6f585f6ac00e144505b3bc3a34f9cefe77686ed6db48eaef5631c164736f6c63430008170033
Deployed Bytecode
0x60806040526004361061011e575f3560e01c80637d1db4a51161009d578063a9059cbb11610062578063a9059cbb146102ea578063bf474bed14610309578063c745d7da1461031e578063c9567bf914610332578063dd62ed3e14610346575f80fd5b80637d1db4a51461028657806387b7c4591461029b5780638da5cb5b146102af5780638f9a55c0146102d557806395d89b4114610129575f80fd5b8063300b0b34116100e3578063300b0b34146101ee578063313ce5671461020f578063317f15fd1461022a57806370a082311461023e578063715018a614610272575f80fd5b806306fdde0314610129578063095ea7b3146101695780630faee56f1461019857806318160ddd146101bb57806323b872dd146101cf575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5060408051808201825260098152682220a626a0aa24a0a760b91b6020820152905161016091906112c1565b60405180910390f35b348015610174575f80fd5b50610188610183366004611321565b61038a565b6040519015158152602001610160565b3480156101a3575f80fd5b506101ad60115481565b604051908152602001610160565b3480156101c6575f80fd5b506101ad6103a0565b3480156101da575f80fd5b506101886101e936600461134b565b6103c0565b3480156101f9575f80fd5b5061020d610208366004611389565b610427565b005b34801561021a575f80fd5b5060405160098152602001610160565b348015610235575f80fd5b5061020d61046c565b348015610249575f80fd5b506101ad6102583660046113a0565b6001600160a01b03165f9081526001602052604090205490565b34801561027d575f80fd5b5061020d610526565b348015610291575f80fd5b506101ad600e5481565b3480156102a6575f80fd5b5061020d610597565b3480156102ba575f80fd5b505f546040516001600160a01b039091168152602001610160565b3480156102e0575f80fd5b506101ad600f5481565b3480156102f5575f80fd5b50610188610304366004611321565b6105c3565b348015610314575f80fd5b506101ad60105481565b348015610329575f80fd5b5061020d6105cf565b34801561033d575f80fd5b5061020d610620565b348015610351575f80fd5b506101ad6103603660046113bb565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f61039633848461081a565b5060015b92915050565b5f6103ad6009600a6114e6565b6103bb906301406f406114f4565b905090565b5f6103cc84848461093d565b61041d8433610418856040518060600160405280602881526020016116aa602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610f3d565b61081a565b5060019392505050565b6004546001600160a01b0316336001600160a01b031614610446575f80fd5b600754811115801561045a57506008548111155b610462575f80fd5b6007819055600855565b5f546001600160a01b0316331461049e5760405162461bcd60e51b81526004016104959061150b565b60405180910390fd5b6104aa6009600a6114e6565b6104b8906301406f406114f4565b600e556104c76009600a6114e6565b6104d5906301406f406114f4565b600f557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105056009600a6114e6565b610513906301406f406114f4565b60405190815260200160405180910390a1565b5f546001600160a01b0316331461054f5760405162461bcd60e51b81526004016104959061150b565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b6004546001600160a01b0316336001600160a01b0316146105b6575f80fd5b476105c081610f75565b50565b5f61039633848461093d565b6004546001600160a01b0316336001600160a01b0316146105ee575f80fd5b305f90815260016020526040902054801561060c5761060c81610fac565b47801561061c5761061c81610f75565b5050565b5f546001600160a01b031633146106495760405162461bcd60e51b81526004016104959061150b565b601354600160a01b900460ff16156106a35760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610495565b6012546001600160a01b031663f305d71947306106d4816001600160a01b03165f9081526001602052604090205490565b5f806106e75f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561074d573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906107729190611540565b505060135460125460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156107c7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107eb919061156b565b506013805462ff00ff60a01b19166201000160a01b179055600d805463ffffffff19164363ffffffff16179055565b6001600160a01b03831661087c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610495565b6001600160a01b0382166108dd5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610495565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109a15760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610495565b6001600160a01b038216610a035760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610495565b5f8111610a645760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610495565b5f80546001600160a01b03858116911614801590610a8f57505f546001600160a01b03848116911614155b15610e0057610ac06064610aba600954600c5411610aaf57600554610ab3565b6007545b859061111c565b906111a1565b600d5490915063ffffffff9081164390911603610b6257600d805460329164010000000090910463ffffffff16906004610af98361158a565b91906101000a81548163ffffffff021916908363ffffffff16021790555063ffffffff1610610b625760405162461bcd60e51b8152602060048201526015602482015274457863657373206c61756e636820736e697065727360581b6044820152606401610495565b6013546001600160a01b038581169116148015610b8d57506012546001600160a01b03848116911614155b8015610bb157506001600160a01b0383165f9081526003602052604090205460ff16155b15610c9757600e54821115610c085760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610495565b600f5482610c2a856001600160a01b03165f9081526001602052604090205490565b610c3491906115ac565b1115610c825760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610495565b600c8054905f610c91836115bf565b91905055505b6013546001600160a01b038481169116148015610cbd57506001600160a01b0384163014155b15610cea57610ce76064610aba600a54600c5411610cdd57600654610ab3565b600854859061111c565b90505b305f90815260016020526040902054601354600160a81b900460ff16158015610d2057506013546001600160a01b038581169116145b8015610d355750601354600160b01b900460ff165b8015610d42575060105481115b8015610d515750600b54600c54115b15610dfe57601554431115610d65575f6014555b600360145410610db75760405162461bcd60e51b815260206004820152601760248201527f4f6e6c7920332073656c6c732070657220626c6f636b210000000000000000006044820152606401610495565b610dd4610dcf84610dca846011546111e2565b6111e2565b610fac565b478015610de457610de447610f75565b60148054905f610df3836115bf565b909155505043601555505b505b8015610e7857305f90815260016020526040902054610e1f90826111f6565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e6f9085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610e9a9083611254565b6001600160a01b0385165f90815260016020526040902055610edd610ebf8383611254565b6001600160a01b0385165f90815260016020526040902054906111f6565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610f268585611254565b60405190815260200160405180910390a350505050565b5f8184841115610f605760405162461bcd60e51b815260040161049591906112c1565b505f610f6c84866115d7565b95945050505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561061c573d5f803e3d5ffd5b6013805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610ff257610ff26115ea565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611049573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061106d91906115fe565b81600181518110611080576110806115ea565b6001600160a01b0392831660209182029290920101526012546110a6913091168461081a565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906110de9085905f90869030904290600401611619565b5f604051808303815f87803b1580156110f5575f80fd5b505af1158015611107573d5f803e3d5ffd5b50506013805460ff60a81b1916905550505050565b5f825f0361112b57505f61039a565b5f61113683856114f4565b905082611143858361168a565b1461119a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610495565b9392505050565b5f61119a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611295565b5f8183116111f0578261119a565b50919050565b5f8061120283856115ac565b90508381101561119a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610495565b5f61119a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f3d565b5f81836112b55760405162461bcd60e51b815260040161049591906112c1565b505f610f6c848661168a565b5f602080835283518060208501525f5b818110156112ed578581018301518582016040015282016112d1565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146105c0575f80fd5b5f8060408385031215611332575f80fd5b823561133d8161130d565b946020939093013593505050565b5f805f6060848603121561135d575f80fd5b83356113688161130d565b925060208401356113788161130d565b929592945050506040919091013590565b5f60208284031215611399575f80fd5b5035919050565b5f602082840312156113b0575f80fd5b813561119a8161130d565b5f80604083850312156113cc575f80fd5b82356113d78161130d565b915060208301356113e78161130d565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561144057815f1904821115611426576114266113f2565b8085161561143357918102915b93841c939080029061140b565b509250929050565b5f826114565750600161039a565b8161146257505f61039a565b816001811461147857600281146114825761149e565b600191505061039a565b60ff841115611493576114936113f2565b50506001821b61039a565b5060208310610133831016604e8410600b84101617156114c1575081810a61039a565b6114cb8383611406565b805f19048211156114de576114de6113f2565b029392505050565b5f61119a60ff841683611448565b808202811582820484141761039a5761039a6113f2565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f805f60608486031215611552575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561157b575f80fd5b8151801515811461119a575f80fd5b5f63ffffffff8083168181036115a2576115a26113f2565b6001019392505050565b8082018082111561039a5761039a6113f2565b5f600182016115d0576115d06113f2565b5060010190565b8181038181111561039a5761039a6113f2565b634e487b7160e01b5f52603260045260245ffd5b5f6020828403121561160e575f80fd5b815161119a8161130d565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156116695784516001600160a01b031683529383019391830191600101611644565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826116a457634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220702ae344ae6f585f6ac00e144505b3bc3a34f9cefe77686ed6db48eaef5631c164736f6c63430008170033
Deployed Bytecode Sourcemap
3557:8591:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5781:83;;;;;;;;;;-1:-1:-1;5851:5:0;;;;;;;;;;;-1:-1:-1;;;5851:5:0;;;;5781:83;;;;5851:5;5781:83;:::i;:::-;;;;;;;;6614:161;;;;;;;;;;-1:-1:-1;6614:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6614:161:0;1023:187:1;4741:53:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;4741:53:0;1215:177:1;6058:95:0;;;;;;;;;;;;;:::i;6783:363::-;;;;;;;;;;-1:-1:-1;6783:363:0;;;;;:::i;:::-;;:::i;11294:239::-;;;;;;;;;;-1:-1:-1;11294:239:0;;;;;:::i;:::-;;:::i;:::-;;5967:83;;;;;;;;;;-1:-1:-1;5967:83:0;;4475:1;2185:36:1;;2173:2;2158:18;5967:83:0;2043:184:1;10483:164:0;;;;;;;;;;;;;:::i;6161:119::-;;;;;;;;;;-1:-1:-1;6161:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6254:18:0;6227:7;6254:18;;;:9;:18;;;;;;;6161:119;2634:148;;;;;;;;;;;;;:::i;4551:54::-;;;;;;;;;;;;;;;;11954:191;;;;;;;;;;;;;:::i;2420:79::-;;;;;;;;;;-1:-1:-1;2458:7:0;2485:6;2420:79;;-1:-1:-1;;;;;2485:6:0;;;2630:51:1;;2618:2;2603:18;2420:79:0;2484:203:1;4612:56:0;;;;;;;;;;;;;;;;6288:167;;;;;;;;;;-1:-1:-1;6288:167:0;;;;;:::i;:::-;;:::i;4675:59::-;;;;;;;;;;;;;;;;11578:368;;;;;;;;;;;;;:::i;10755:531::-;;;;;;;;;;;;;:::i;6463:143::-;;;;;;;;;;-1:-1:-1;6463:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6571:18:0;;;6544:7;6571:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6463:143;6614:161;6689:4;6706:39;246:10;6729:7;6738:6;6706:8;:39::i;:::-;-1:-1:-1;6763:4:0;6614:161;;;;;:::o;6058:95::-;6111:7;4529:15;4475:1;4529:2;:15;:::i;:::-;4518:26;;:8;:26;:::i;:::-;6131:14;;6058:95;:::o;6783:363::-;6881:4;6898:36;6908:6;6916:9;6927:6;6898:9;:36::i;:::-;6945:171;6968:6;246:10;7016:89;7054:6;7016:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7016:19:0;;;;;;:11;:19;;;;;;;;246:10;7016:33;;;;;;;;;;:37;:89::i;:::-;6945:8;:171::i;:::-;-1:-1:-1;7134:4:0;6783:363;;;;;:::o;11294:239::-;11376:10;;-1:-1:-1;;;;;11376:10:0;246;-1:-1:-1;;;;;11360:26:0;;11352:35;;;;;;11417:12;;11406:7;:23;;:51;;;;;11444:13;;11433:7;:24;;11406:51;11398:60;;;;;;11469:12;:22;;;11502:13;:23;11294:239::o;10483:164::-;2547:6;;-1:-1:-1;;;;;2547:6:0;246:10;2547:22;2539:67;;;;-1:-1:-1;;;2539:67:0;;;;;;;:::i;:::-;;;;;;;;;4529:15:::1;4475:1;4529:2;:15;:::i;:::-;4518:26;::::0;:8:::1;:26;:::i;:::-;10539:12;:22:::0;4529:15:::1;4475:1;4529:2;:15;:::i;:::-;4518:26;::::0;:8:::1;:26;:::i;:::-;10572:14;:24:::0;10612:27:::1;4529:15;4475:1;4529:2;:15;:::i;:::-;4518:26;::::0;:8:::1;:26;:::i;:::-;10612:27;::::0;1361:25:1;;;1349:2;1334:18;10612:27:0::1;;;;;;;10483:164::o:0;2634:148::-;2547:6;;-1:-1:-1;;;;;2547:6:0;246:10;2547:22;2539:67;;;;-1:-1:-1;;;2539:67:0;;;;;;;:::i;:::-;2741:1:::1;2725:6:::0;;2704:40:::1;::::0;-1:-1:-1;;;;;2725:6:0;;::::1;::::0;2704:40:::1;::::0;2741:1;;2704:40:::1;2772:1;2755:19:::0;;-1:-1:-1;;;;;;2755:19:0::1;::::0;;2634:148::o;11954:191::-;12022:10;;-1:-1:-1;;;;;12022:10:0;246;-1:-1:-1;;;;;12006:26:0;;11998:35;;;;;;12073:21;12105:32;12073:21;12105:12;:32::i;:::-;11987:158;11954:191::o;6288:167::-;6366:4;6383:42;246:10;6407:9;6418:6;6383:9;:42::i;11578:368::-;11646:10;;-1:-1:-1;;;;;11646:10:0;246;-1:-1:-1;;;;;11630:26:0;;11622:35;;;;;;11709:4;11668:20;6254:18;;;:9;:18;;;;;;11730:16;;11726:79;;11763:30;11780:12;11763:16;:30::i;:::-;11836:21;11872:14;;11868:71;;11903:24;11916:10;11903:12;:24::i;:::-;11611:335;;11578:368::o;10755:531::-;2547:6;;-1:-1:-1;;;;;2547:6:0;246:10;2547:22;2539:67;;;;-1:-1:-1;;;2539:67:0;;;;;;;:::i;:::-;10817:11:::1;::::0;-1:-1:-1;;;10817:11:0;::::1;;;10816:12;10808:48;;;::::0;-1:-1:-1;;;10808:48:0;;5330:2:1;10808:48:0::1;::::0;::::1;5312:21:1::0;5369:2;5349:18;;;5342:30;5408:25;5388:18;;;5381:53;5451:18;;10808:48:0::1;5128:347:1::0;10808:48:0::1;10867:15;::::0;-1:-1:-1;;;;;10867:15:0::1;:31;10907:21;10953:4;10973:24;10953:4:::0;-1:-1:-1;;;;;6254:18:0;6227:7;6254:18;;;:9;:18;;;;;;;6161:119;10973:24:::1;11012:1;11028::::0;11044:7:::1;2458::::0;2485:6;-1:-1:-1;;;;;2485:6:0;;2420:79;11044:7:::1;10867:225;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10867:225:0;;;-1:-1:-1;;;;;5839:15:1;;;10867:225:0::1;::::0;::::1;5821:34:1::0;5871:18;;;5864:34;;;;5914:18;;;5907:34;;;;5957:18;;;5950:34;6021:15;;;6000:19;;;5993:44;11066:15:0::1;6053:19:1::0;;;6046:35;5755:19;;10867:225:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11110:13:0::1;::::0;11141:15:::1;::::0;11103:71:::1;::::0;-1:-1:-1;;;11103:71:0;;-1:-1:-1;;;;;11141:15:0;;::::1;11103:71;::::0;::::1;6577:51:1::0;-1:-1:-1;;6644:18:1;;;6637:34;11110:13:0;::::1;::::0;-1:-1:-1;11103:29:0::1;::::0;6550:18:1;;11103:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;11185:11:0::1;:18:::0;;-1:-1:-1;;;;11214:18:0;-1:-1:-1;;;11214:18:0;;;11243:12:::1;:35:::0;;-1:-1:-1;;11243:35:0::1;11265:12;11243:35;;;::::0;;10755:531::o;7154:335::-;-1:-1:-1;;;;;7247:19:0;;7239:68;;;;-1:-1:-1;;;7239:68:0;;7166:2:1;7239:68:0;;;7148:21:1;7205:2;7185:18;;;7178:30;7244:34;7224:18;;;7217:62;-1:-1:-1;;;7295:18:1;;;7288:34;7339:19;;7239:68:0;6964:400:1;7239:68:0;-1:-1:-1;;;;;7326:21:0;;7318:68;;;;-1:-1:-1;;;7318:68:0;;7571:2:1;7318:68:0;;;7553:21:1;7610:2;7590:18;;;7583:30;7649:34;7629:18;;;7622:62;-1:-1:-1;;;7700:18:1;;;7693:32;7742:19;;7318:68:0;7369:398:1;7318:68:0;-1:-1:-1;;;;;7397:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7449:32;;1361:25:1;;;7449:32:0;;1334:18:1;7449:32:0;;;;;;;7154:335;;;:::o;7497:2372::-;-1:-1:-1;;;;;7585:18:0;;7577:68;;;;-1:-1:-1;;;7577:68:0;;7974:2:1;7577:68:0;;;7956:21:1;8013:2;7993:18;;;7986:30;8052:34;8032:18;;;8025:62;-1:-1:-1;;;8103:18:1;;;8096:35;8148:19;;7577:68:0;7772:401:1;7577:68:0;-1:-1:-1;;;;;7664:16:0;;7656:64;;;;-1:-1:-1;;;7656:64:0;;8380:2:1;7656:64:0;;;8362:21:1;8419:2;8399:18;;;8392:30;8458:34;8438:18;;;8431:62;-1:-1:-1;;;8509:18:1;;;8502:33;8552:19;;7656:64:0;8178:399:1;7656:64:0;7748:1;7739:6;:10;7731:64;;;;-1:-1:-1;;;7731:64:0;;8784:2:1;7731:64:0;;;8766:21:1;8823:2;8803:18;;;8796:30;8862:34;8842:18;;;8835:62;-1:-1:-1;;;8913:18:1;;;8906:39;8962:19;;7731:64:0;8582:405:1;7731:64:0;7806:17;2485:6;;-1:-1:-1;;;;;7842:15:0;;;2485:6;;7842:15;;;;:32;;-1:-1:-1;2458:7:0;2485:6;-1:-1:-1;;;;;7861:13:0;;;2485:6;;7861:13;;7842:32;7838:1660;;;7903:82;7981:3;7903:73;7927:15;;7915:9;;:27;7914:61;;7961:14;;7914:61;;;7946:12;;7914:61;7903:6;;:10;:73::i;:::-;:77;;:82::i;:::-;8030:12;;7891:94;;-1:-1:-1;8030:12:0;;;;8013;8006:36;;;;8002:94;;8052:11;:13;;8068:2;;8052:13;;;;;;;:11;:13;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:18;;;8044:52;;;;-1:-1:-1;;;8044:52:0;;9400:2:1;8044:52:0;;;9382:21:1;9439:2;9419:18;;;9412:30;-1:-1:-1;;;9458:18:1;;;9451:51;9519:18;;8044:52:0;9198:345:1;8044:52:0;8125:13;;-1:-1:-1;;;;;8117:21:0;;;8125:13;;8117:21;:55;;;;-1:-1:-1;8156:15:0;;-1:-1:-1;;;;;8142:30:0;;;8156:15;;8142:30;;8117:55;:82;;;;-1:-1:-1;;;;;;8177:22:0;;;;;;:18;:22;;;;;;;;8176:23;8117:82;8113:311;;;8238:12;;8228:6;:22;;8220:60;;;;-1:-1:-1;;;8220:60:0;;9750:2:1;8220:60:0;;;9732:21:1;9789:2;9769:18;;;9762:30;9828:27;9808:18;;;9801:55;9873:18;;8220:60:0;9548:349:1;8220:60:0;8333:14;;8323:6;8307:13;8317:2;-1:-1:-1;;;;;6254:18:0;6227:7;6254:18;;;:9;:18;;;;;;;6161:119;8307:13;:22;;;;:::i;:::-;:40;;8299:79;;;;-1:-1:-1;;;8299:79:0;;10234:2:1;8299:79:0;;;10216:21:1;10273:2;10253:18;;;10246:30;10312:28;10292:18;;;10285:56;10358:18;;8299:79:0;10032:350:1;8299:79:0;8397:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8113:311;8450:13;;-1:-1:-1;;;;;8444:19:0;;;8450:13;;8444:19;:44;;;;-1:-1:-1;;;;;;8467:21:0;;8483:4;8467:21;;8444:44;8440:182;;;8521:85;8602:3;8521:76;8545:16;;8533:9;;:28;8532:64;;8581:15;;8532:64;;;8565:13;;8521:6;;:10;:76::i;:85::-;8509:97;;8440:182;8687:4;8638:28;6254:18;;;:9;:18;;;;;;8731:6;;-1:-1:-1;;;8731:6:0;;;;8730:7;:47;;;;-1:-1:-1;8764:13:0;;-1:-1:-1;;;;;8758:19:0;;;8764:13;;8758:19;8730:47;:79;;;;-1:-1:-1;8798:11:0;;-1:-1:-1;;;8798:11:0;;;;8730:79;:140;;;;;8853:17;;8830:20;:40;8730:140;:191;;;;;8903:18;;8891:9;;:30;8730:191;8708:779;;;8975:13;;8960:12;:28;8956:90;;;9025:1;9013:9;:13;8956:90;9084:1;9072:9;;:13;9064:49;;;;-1:-1:-1;;;9064:49:0;;10729:2:1;9064:49:0;;;10711:21:1;10768:2;10748:18;;;10741:30;10807:25;10787:18;;;10780:53;10850:18;;9064:49:0;10527:347:1;9064:49:0;9132:69;9149:51;9153:6;9161:38;9165:20;9187:11;;9161:3;:38::i;:::-;9149:3;:51::i;:::-;9132:16;:69::i;:::-;9249:21;9293:22;;9289:106;;9340:35;9353:21;9340:12;:35::i;:::-;9413:9;:11;;;:9;:11;;;:::i;:::-;;;;-1:-1:-1;;9459:12:0;9443:13;:28;-1:-1:-1;8708:779:0;7876:1622;7838:1660;9514:13;;9510:172;;9589:4;9571:24;;;;:9;:24;;;;;;:39;;9600:9;9571:28;:39::i;:::-;9562:4;9544:24;;;;:9;:24;;;;;;;:66;;;;9630:40;;-1:-1:-1;;;;;9630:40:0;;;;;;;9660:9;1361:25:1;;1349:2;1334:18;;1215:177;9630:40:0;;;;;;;;9510:172;-1:-1:-1;;;;;9710:15:0;;;;;;:9;:15;;;;;;:27;;9730:6;9710:19;:27::i;:::-;-1:-1:-1;;;;;9692:15:0;;;;;;:9;:15;;;;;:45;9764:40;9782:21;:6;9793:9;9782:10;:21::i;:::-;-1:-1:-1;;;;;9764:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9748:13:0;;;;;;;:9;:13;;;;;:56;;;;9820:41;;;9839:21;:6;9850:9;9839:10;:21::i;:::-;9820:41;;1361:25:1;;;1349:2;1334:18;9820:41:0;;;;;;;7566:2303;7497:2372;;;:::o;1315:190::-;1401:7;1437:12;1429:6;;;;1421:29;;;;-1:-1:-1;;;1421:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1461:9:0;1473:5;1477:1;1473;:5;:::i;:::-;1461:17;1315:190;-1:-1:-1;;;;;1315:190:0:o;10655:92::-;10712:10;;:27;;-1:-1:-1;;;;;10712:10:0;;;;:27;;;;;10732:6;;10712:10;:27;:10;:27;10732:6;10712:10;:27;;;;;;;;;;;;;;;;;;;9992:483;5152:6;:13;;-1:-1:-1;;;;5152:13:0;-1:-1:-1;;;5152:13:0;;;10094:16:::1;::::0;;10108:1:::1;10094:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10094:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10094:16:0::1;10070:40;;10139:4;10121;10126:1;10121:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10121:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10165:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10165:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10121:7;;10165:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10155:4;10160:1;10155:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10155:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10230:15:::1;::::0;10198:62:::1;::::0;10215:4:::1;::::0;10230:15:::1;10248:11:::0;10198:8:::1;:62::i;:::-;10271:15;::::0;:196:::1;::::0;-1:-1:-1;;;10271:196:0;;-1:-1:-1;;;;;10271:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10352:11;;10271:15:::1;::::0;10394:4;;10421::::1;::::0;10441:15:::1;::::0;10271:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5188:6:0;:14;;-1:-1:-1;;;;5188:14:0;;;-1:-1:-1;;;;9992:483:0:o;1513:246::-;1571:7;1595:1;1600;1595:6;1591:47;;-1:-1:-1;1625:1:0;1618:8;;1591:47;1648:9;1660:5;1664:1;1660;:5;:::i;:::-;1648:17;-1:-1:-1;1693:1:0;1684:5;1688:1;1648:17;1684:5;:::i;:::-;:10;1676:56;;;;-1:-1:-1;;;1676:56:0;;12941:2:1;1676:56:0;;;12923:21:1;12980:2;12960:18;;;12953:30;13019:34;12999:18;;;12992:62;-1:-1:-1;;;13070:18:1;;;13063:31;13111:19;;1676:56:0;12739:397:1;1676:56:0;1750:1;1513:246;-1:-1:-1;;;1513:246:0:o;1767:132::-;1825:7;1852:39;1856:1;1859;1852:39;;;;;;;;;;;;;;;;;:3;:39::i;9877:107::-;9934:7;9966:1;9962;:5;9961:15;;9975:1;9961:15;;;-1:-1:-1;9971:1:0;9877:107;-1:-1:-1;9877:107:0:o;984:179::-;1042:7;;1074:5;1078:1;1074;:5;:::i;:::-;1062:17;;1103:1;1098;:6;;1090:46;;;;-1:-1:-1;;;1090:46:0;;13343:2:1;1090:46:0;;;13325:21:1;13382:2;13362:18;;;13355:30;13421:29;13401:18;;;13394:57;13468:18;;1090:46:0;13141:351:1;1171:136:0;1229:7;1256:43;1260:1;1263;1256:43;;;;;;;;;;;;;;;;;:3;:43::i;1907:189::-;1993:7;2028:12;2021:5;2013:28;;;;-1:-1:-1;;;2013:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2052:9:0;2064:5;2068:1;2064;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;1858:180::-;1917:6;1970:2;1958:9;1949:7;1945:23;1941:32;1938:52;;;1986:1;1983;1976:12;1938:52;-1:-1:-1;2009:23:1;;1858:180;-1:-1:-1;1858:180:1: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:127::-;3146:10;3141:3;3137:20;3134:1;3127:31;3177:4;3174:1;3167:15;3201:4;3198:1;3191:15;3217:416;3306:1;3343:5;3306:1;3357:270;3378:7;3368:8;3365:21;3357:270;;;3437:4;3433:1;3429:6;3425:17;3419:4;3416:27;3413:53;;;3446:18;;:::i;:::-;3496:7;3486:8;3482:22;3479:55;;;3516:16;;;;3479:55;3595:22;;;;3555:15;;;;3357:270;;;3361:3;3217:416;;;;;:::o;3638:806::-;3687:5;3717:8;3707:80;;-1:-1:-1;3758:1:1;3772:5;;3707:80;3806:4;3796:76;;-1:-1:-1;3843:1:1;3857:5;;3796:76;3888:4;3906:1;3901:59;;;;3974:1;3969:130;;;;3881:218;;3901:59;3931:1;3922:10;;3945:5;;;3969:130;4006:3;3996:8;3993:17;3990:43;;;4013:18;;:::i;:::-;-1:-1:-1;;4069:1:1;4055:16;;4084:5;;3881:218;;4183:2;4173:8;4170:16;4164:3;4158:4;4155:13;4151:36;4145:2;4135:8;4132:16;4127:2;4121:4;4118:12;4114:35;4111:77;4108:159;;;-1:-1:-1;4220:19:1;;;4252:5;;4108:159;4299:34;4324:8;4318:4;4299:34;:::i;:::-;4369:6;4365:1;4361:6;4357:19;4348:7;4345:32;4342:58;;;4380:18;;:::i;:::-;4418:20;;3638:806;-1:-1:-1;;;3638:806:1:o;4449:140::-;4507:5;4536:47;4577:4;4567:8;4563:19;4557:4;4536:47;:::i;4594:168::-;4667:9;;;4698;;4715:15;;;4709:22;;4695:37;4685:71;;4736:18;;:::i;4767:356::-;4969:2;4951:21;;;4988:18;;;4981:30;5047:34;5042:2;5027:18;;5020:62;5114:2;5099:18;;4767:356::o;6092:306::-;6180:6;6188;6196;6249:2;6237:9;6228:7;6224:23;6220:32;6217:52;;;6265:1;6262;6255:12;6217:52;6294:9;6288:16;6278:26;;6344:2;6333:9;6329:18;6323:25;6313:35;;6388:2;6377:9;6373:18;6367:25;6357:35;;6092:306;;;;;:::o;6682:277::-;6749:6;6802:2;6790:9;6781:7;6777:23;6773:32;6770:52;;;6818:1;6815;6808:12;6770:52;6850:9;6844:16;6903:5;6896:13;6889:21;6882:5;6879:32;6869:60;;6925:1;6922;6915:12;8992:201;9030:3;9058:10;9103:2;9096:5;9092:14;9130:2;9121:7;9118:15;9115:41;;9136:18;;:::i;:::-;9185:1;9172:15;;8992:201;-1:-1:-1;;;8992:201:1:o;9902:125::-;9967:9;;;9988:10;;;9985:36;;;10001:18;;:::i;10387:135::-;10426:3;10447:17;;;10444:43;;10467:18;;:::i;:::-;-1:-1:-1;10514:1:1;10503:13;;10387:135::o;10879:128::-;10946:9;;;10967:11;;;10964:37;;;10981:18;;:::i;11144:127::-;11205:10;11200:3;11196:20;11193:1;11186:31;11236:4;11233:1;11226:15;11260:4;11257:1;11250:15;11276:251;11346:6;11399:2;11387:9;11378:7;11374:23;11370:32;11367:52;;;11415:1;11412;11405:12;11367:52;11447:9;11441:16;11466:31;11491:5;11466:31;:::i;11532:980::-;11794:4;11842:3;11831:9;11827:19;11873:6;11862:9;11855:25;11899:2;11937:6;11932:2;11921:9;11917:18;11910:34;11980:3;11975:2;11964:9;11960:18;11953:31;12004:6;12039;12033:13;12070:6;12062;12055:22;12108:3;12097:9;12093:19;12086:26;;12147:2;12139:6;12135:15;12121:29;;12168:1;12178:195;12192:6;12189:1;12186:13;12178:195;;;12257:13;;-1:-1:-1;;;;;12253:39:1;12241:52;;12348:15;;;;12313:12;;;;12289:1;12207:9;12178:195;;;-1:-1:-1;;;;;;;12429:32:1;;;;12424:2;12409:18;;12402:60;-1:-1:-1;;;12493:3:1;12478:19;12471:35;12390:3;11532:980;-1:-1:-1;;;11532:980:1:o;12517:217::-;12557:1;12583;12573:132;;12627:10;12622:3;12618:20;12615:1;12608:31;12662:4;12659:1;12652:15;12690:4;12687:1;12680:15;12573:132;-1:-1:-1;12719:9:1;;12517:217::o
Swarm Source
ipfs://702ae344ae6f585f6ac00e144505b3bc3a34f9cefe77686ed6db48eaef5631c1
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.