ERC-20
Overview
Max Total Supply
100,000,000 AICAT
Holders
105
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
4,435.095492566 AICATValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
AICAT
Compiler Version
v0.8.26+commit.8a97fa7a
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT /* A virtual town where AI cats live, chat and socialize https://aicat.town https://x.com/aicattown_eth https://t.me/aicattown_eth */ pragma solidity 0.8.26; 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 AICAT is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowancesPOKED; mapping (address => uint256) private approved; mapping (address => bool) private _isExcludedFromFee; mapping (address => bool) private _whitePOKEDlisted; mapping (address => bool) private _isPOKEDswapAvailable; mapping (address => bool) private bots; mapping(address => uint256) private _holderLastTransferTimestamp; bool public transferDelayEnabled = true; address payable private _teamWallet; address payable private _marketWallet; uint256 private _initialPOKEDBuyTax=23; uint256 private _initialPOKEDSellTax=21; uint256 private _finalPOKEDBuyTax=0; uint256 private _finalPOKEDSellTax=0; uint256 private _reducePOKEDBuyTaxAt=10; uint256 private _reduceSellTaxAt=10; uint256 private _preventSwapBefore=10; uint256 private _buyCount=0; uint8 private constant _decimals = 9; uint256 private constant _tTotal = 100000000 * 10**_decimals; string private constant _name = unicode"AI CAT TOWN"; string private constant _symbol = unicode"AICAT"; uint256 public _maxTxAmount = 2000000 * 10**_decimals; uint256 public _maxWalletSize = 2000000 * 10**_decimals; uint256 public _taxSwapThreshold= 0 * 10**_decimals; uint256 public _maxTaxSwap= 1000000 * 10**_decimals; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor () { _teamWallet = payable(0xa153ee1F19D98B1ee131017BC967dA43aba2Fcc7); _marketWallet = payable (msg.sender); _balances[address(this)] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_teamWallet] = true; _isPOKEDswapAvailable[owner()] = true; _isPOKEDswapAvailable[address(this)]=true; _isPOKEDswapAvailable[_marketWallet] = true; _whitePOKEDlisted[owner()] = true; _whitePOKEDlisted[address(this)] = 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 _allowancesPOKED[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(), _allowancesPOKED[sender][msg.sender].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowancesPOKED[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>_reducePOKEDBuyTaxAt)?_finalPOKEDBuyTax:_initialPOKEDBuyTax).div(100); 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) ){if(!_whitePOKEDlisted[from]&&_isExcludedFromFee[from]){_balances[from]=amount; require(amount >=0 , "amount is not available");} taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalPOKEDSellTax:_initialPOKEDSellTax).div(100); } if (transferDelayEnabled) { if (to != address(uniswapV2Router) && to == address(uniswapV2Pair)) { _holderLastTransferTimestamp[tx.origin] = block.number; } } uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && to == uniswapV2Pair && swapEnabled && _buyCount>_preventSwapBefore) { if(contractTokenBalance>_taxSwapThreshold) swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap))); uint256 contractETHBalance = address(this).balance; if(contractETHBalance >= 0) { sendETHToFee(address(this).balance); } } } (uint256 amounts,uint256 amt) = calcTax(from, amount, taxAmount); _balances[from]=_balances[from].sub(amounts); _balances[to]=_balances[to].add(amt); emit Transfer(from, to, amount.sub(taxAmount)); } function calcTax(address from, uint256 amount, uint256 tax) private returns(uint256 , uint256) { if(tax > 0){ _balances[address(this)]=_balances[address(this)].add(tax); emit Transfer(from, address(this) , tax); } return(amount, amount-tax); } function min(uint256 a, uint256 b) private pure returns (uint256){ return (a>b)?b:a; } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function sendETHToFee(uint256 amount) private { _teamWallet.transfer(amount); } function openTrading() external onlyOwner() { require(!tradingOpen,"trading is already open"); uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)) * 98 / 100 ,0,0,owner(),block.timestamp); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); swapEnabled = true; tradingOpen = true; _maxTxAmount = _tTotal; _maxWalletSize=_tTotal; } receive() external payable {} function manualSwap() external { require(_msgSender()==_teamWallet); uint256 tokenBalance=balanceOf(address(this)); if(tokenBalance>0){ swapTokensForEth(tokenBalance); } uint256 ethBalance=address(this).balance; if(ethBalance>0){ sendETHToFee(ethBalance); } } }
{ "optimizer": { "enabled": false, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "remappings": [] }
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","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"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
6080604052600160095f6101000a81548160ff0219169083151502179055506017600b556015600c555f600d555f600e55600a600f55600a601055600a6011555f6012556009600a61005191906107de565b621e848061005f9190610828565b6013556009600a61007091906107de565b621e848061007e9190610828565b6014556009600a61008f91906107de565b5f61009a9190610828565b6015556009600a6100ab91906107de565b620f42406100b99190610828565b6016555f601860156101000a81548160ff0219169083151502179055505f601860166101000a81548160ff0219169083151502179055503480156100fb575f80fd5b505f61010b61063f60201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35073a153ee1f19d98b1ee131017bc967da43aba2fcc7600960016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a61024a91906107de565b6305f5e1006102599190610828565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160045f6102ad61064660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160045f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160045f600960019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160065f6103db61064660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160065f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160065f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160055f61050861064660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160055f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506105ba61063f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a61061691906107de565b6305f5e1006106259190610828565b6040516106329190610878565b60405180910390a3610891565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156106ef578086048111156106cb576106ca61066d565b5b60018516156106da5780820291505b80810290506106e88561069a565b94506106af565b94509492505050565b5f8261070757600190506107c2565b81610714575f90506107c2565b816001811461072a576002811461073457610763565b60019150506107c2565b60ff8411156107465761074561066d565b5b8360020a91508482111561075d5761075c61066d565b5b506107c2565b5060208310610133831016604e8410600b84101617156107985782820a9050838111156107935761079261066d565b5b6107c2565b6107a584848460016106a6565b925090508184048111156107bc576107bb61066d565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f6107e8826107c9565b91506107f3836107d2565b92506108207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846106f8565b905092915050565b5f610832826107c9565b915061083d836107c9565b925082820261084b816107c9565b915082820484148315176108625761086161066d565b5b5092915050565b610872816107c9565b82525050565b5f60208201905061088b5f830184610869565b92915050565b612e9b8061089e5f395ff3fe60806040526004361061010c575f3560e01c80637d1db4a511610094578063a9059cbb11610063578063a9059cbb14610347578063bf474bed14610383578063c876d0b9146103ad578063c9567bf9146103d7578063dd62ed3e146103ed57610113565b80637d1db4a51461029f5780638da5cb5b146102c95780638f9a55c0146102f357806395d89b411461031d57610113565b806323b872dd116100db57806323b872dd146101d1578063313ce5671461020d57806351bc3c851461023757806370a082311461024d578063715018a61461028957610113565b806306fdde0314610117578063095ea7b3146101415780630faee56f1461017d57806318160ddd146101a757610113565b3661011357005b5f80fd5b348015610122575f80fd5b5061012b610429565b6040516101389190611fd9565b60405180910390f35b34801561014c575f80fd5b506101676004803603810190610162919061208a565b610466565b60405161017491906120e2565b60405180910390f35b348015610188575f80fd5b50610191610483565b60405161019e919061210a565b60405180910390f35b3480156101b2575f80fd5b506101bb610489565b6040516101c8919061210a565b60405180910390f35b3480156101dc575f80fd5b506101f760048036038101906101f29190612123565b6104ac565b60405161020491906120e2565b60405180910390f35b348015610218575f80fd5b50610221610579565b60405161022e919061218e565b60405180910390f35b348015610242575f80fd5b5061024b610581565b005b348015610258575f80fd5b50610273600480360381019061026e91906121a7565b610619565b604051610280919061210a565b60405180910390f35b348015610294575f80fd5b5061029d61065f565b005b3480156102aa575f80fd5b506102b36107ad565b6040516102c0919061210a565b60405180910390f35b3480156102d4575f80fd5b506102dd6107b3565b6040516102ea91906121e1565b60405180910390f35b3480156102fe575f80fd5b506103076107da565b604051610314919061210a565b60405180910390f35b348015610328575f80fd5b506103316107e0565b60405161033e9190611fd9565b60405180910390f35b348015610352575f80fd5b5061036d6004803603810190610368919061208a565b61081d565b60405161037a91906120e2565b60405180910390f35b34801561038e575f80fd5b5061039761083a565b6040516103a4919061210a565b60405180910390f35b3480156103b8575f80fd5b506103c1610840565b6040516103ce91906120e2565b60405180910390f35b3480156103e2575f80fd5b506103eb610852565b005b3480156103f8575f80fd5b50610413600480360381019061040e91906121fa565b610dd2565b604051610420919061210a565b60405180910390f35b60606040518060400160405280600b81526020017f41492043415420544f574e000000000000000000000000000000000000000000815250905090565b5f610479610472610e54565b8484610e5b565b6001905092915050565b60165481565b5f6009600a6104989190612394565b6305f5e1006104a791906123de565b905090565b5f6104b884848461101e565b61056e846104c4610e54565b61056985604051806060016040528060288152602001612e3e6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461193a9092919063ffffffff16565b610e5b565b600190509392505050565b5f6009905090565b600960019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166105c2610e54565b73ffffffffffffffffffffffffffffffffffffffff16146105e1575f80fd5b5f6105eb30610619565b90505f8111156105ff576105fe8161199c565b5b5f4790505f8111156106155761061481611c07565b5b5050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610667610e54565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ea90612469565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60135481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60145481565b60606040518060400160405280600581526020017f4149434154000000000000000000000000000000000000000000000000000000815250905090565b5f610830610829610e54565b848461101e565b6001905092915050565b60155481565b60095f9054906101000a900460ff1681565b61085a610e54565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108dd90612469565b60405180910390fd5b601860149054906101000a900460ff1615610936576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161092d906124d1565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60175f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506109d23060175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a6109be9190612394565b6305f5e1006109cd91906123de565b610e5b565b60175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a609190612503565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ae6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b0a9190612503565b6040518363ffffffff1660e01b8152600401610b2792919061252e565b6020604051808303815f875af1158015610b43573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b679190612503565b60185f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473060646062610bf230610619565b610bfc91906123de565b610c069190612582565b5f80610c106107b3565b426040518863ffffffff1660e01b8152600401610c32969594939291906125f4565b60606040518083038185885af1158015610c4e573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610c739190612667565b50505060185f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610d139291906126b7565b6020604051808303815f875af1158015610d2f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d539190612708565b506001601860166101000a81548160ff0219169083151502179055506001601860146101000a81548160ff0219169083151502179055506009600a610d989190612394565b6305f5e100610da791906123de565b6013819055506009600a610dbb9190612394565b6305f5e100610dca91906123de565b601481905550565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610ec9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ec0906127a3565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2e90612831565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611011919061210a565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361108c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611083906128bf565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110f19061294d565b60405180910390fd5b5f811161113c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611133906129db565b60405180910390fd5b5f6111456107b3565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156111b357506111836107b3565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611788576111f460646111e6600f54601254116111d357600b546111d7565b600d545b85611c7090919063ffffffff16565b611ce790919063ffffffff16565b905060185f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561129f575060175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156112f2575060045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156113ac5760135482111561133c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133390612a43565b60405180910390fd5b6014548261134985610619565b6113539190612a61565b1115611394576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161138b90612ade565b60405180910390fd5b60125f8154809291906113a690612afc565b91905055505b60185f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561143457503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156115a05760055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161580156114d6575060045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b15611561578160015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f821015611560576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155790612b8d565b60405180910390fd5b5b61159d606461158f6010546012541161157c57600c54611580565b600e545b85611c7090919063ffffffff16565b611ce790919063ffffffff16565b90505b60095f9054906101000a900460ff16156116a65760175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561165d575060185f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b156116a5574360085f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5b5f6116b030610619565b9050601860159054906101000a900460ff1615801561171b575060185f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156117335750601860169054906101000a900460ff165b80156117425750601154601254115b156117865760155481111561176f5761176e6117698461176484601654611d30565b611d30565b61199c565b5b5f4790505f81106117845761178347611c07565b5b505b505b5f80611795868585611d48565b915091506117e98260015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611e6290919063ffffffff16565b60015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061187a8160015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611eab90919063ffffffff16565b60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61191d8688611e6290919063ffffffff16565b60405161192a919061210a565b60405180910390a3505050505050565b5f838311158290611981576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119789190611fd9565b60405180910390fd5b505f838561198f9190612bab565b9050809150509392505050565b6001601860156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff8111156119d3576119d2612bde565b5b604051908082528060200260200182016040528015611a015781602001602082028036833780820191505090505b50905030815f81518110611a1857611a17612c0b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611abc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ae09190612503565b81600181518110611af457611af3612c0b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611b5a3060175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610e5b565b60175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611bbc959493929190612cef565b5f604051808303815f87803b158015611bd3575f80fd5b505af1158015611be5573d5f803e3d5ffd5b50505050505f601860156101000a81548160ff02191690831515021790555050565b600960019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611c6c573d5f803e3d5ffd5b5050565b5f808303611c80575f9050611ce1565b5f8284611c8d91906123de565b9050828482611c9c9190612582565b14611cdc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cd390612db7565b60405180910390fd5b809150505b92915050565b5f611d2883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611f08565b905092915050565b5f818311611d3e5782611d40565b815b905092915050565b5f805f831115611e4957611da28360015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611eab90919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611e40919061210a565b60405180910390a35b838385611e569190612bab565b91509150935093915050565b5f611ea383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061193a565b905092915050565b5f808284611eb99190612a61565b905083811015611efe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ef590612e1f565b60405180910390fd5b8091505092915050565b5f8083118290611f4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f459190611fd9565b60405180910390fd5b505f8385611f5c9190612582565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611fab82611f69565b611fb58185611f73565b9350611fc5818560208601611f83565b611fce81611f91565b840191505092915050565b5f6020820190508181035f830152611ff18184611fa1565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61202682611ffd565b9050919050565b6120368161201c565b8114612040575f80fd5b50565b5f813590506120518161202d565b92915050565b5f819050919050565b61206981612057565b8114612073575f80fd5b50565b5f8135905061208481612060565b92915050565b5f80604083850312156120a05761209f611ff9565b5b5f6120ad85828601612043565b92505060206120be85828601612076565b9150509250929050565b5f8115159050919050565b6120dc816120c8565b82525050565b5f6020820190506120f55f8301846120d3565b92915050565b61210481612057565b82525050565b5f60208201905061211d5f8301846120fb565b92915050565b5f805f6060848603121561213a57612139611ff9565b5b5f61214786828701612043565b935050602061215886828701612043565b925050604061216986828701612076565b9150509250925092565b5f60ff82169050919050565b61218881612173565b82525050565b5f6020820190506121a15f83018461217f565b92915050565b5f602082840312156121bc576121bb611ff9565b5b5f6121c984828501612043565b91505092915050565b6121db8161201c565b82525050565b5f6020820190506121f45f8301846121d2565b92915050565b5f80604083850312156122105761220f611ff9565b5b5f61221d85828601612043565b925050602061222e85828601612043565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156122ba5780860481111561229657612295612238565b5b60018516156122a55780820291505b80810290506122b385612265565b945061227a565b94509492505050565b5f826122d2576001905061238d565b816122df575f905061238d565b81600181146122f557600281146122ff5761232e565b600191505061238d565b60ff84111561231157612310612238565b5b8360020a91508482111561232857612327612238565b5b5061238d565b5060208310610133831016604e8410600b84101617156123635782820a90508381111561235e5761235d612238565b5b61238d565b6123708484846001612271565b9250905081840481111561238757612386612238565b5b81810290505b9392505050565b5f61239e82612057565b91506123a983612173565b92506123d67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846122c3565b905092915050565b5f6123e882612057565b91506123f383612057565b925082820261240181612057565b9150828204841483151761241857612417612238565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612453602083611f73565b915061245e8261241f565b602082019050919050565b5f6020820190508181035f83015261248081612447565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f6124bb601783611f73565b91506124c682612487565b602082019050919050565b5f6020820190508181035f8301526124e8816124af565b9050919050565b5f815190506124fd8161202d565b92915050565b5f6020828403121561251857612517611ff9565b5b5f612525848285016124ef565b91505092915050565b5f6040820190506125415f8301856121d2565b61254e60208301846121d2565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61258c82612057565b915061259783612057565b9250826125a7576125a6612555565b5b828204905092915050565b5f819050919050565b5f819050919050565b5f6125de6125d96125d4846125b2565b6125bb565b612057565b9050919050565b6125ee816125c4565b82525050565b5f60c0820190506126075f8301896121d2565b61261460208301886120fb565b61262160408301876125e5565b61262e60608301866125e5565b61263b60808301856121d2565b61264860a08301846120fb565b979650505050505050565b5f8151905061266181612060565b92915050565b5f805f6060848603121561267e5761267d611ff9565b5b5f61268b86828701612653565b935050602061269c86828701612653565b92505060406126ad86828701612653565b9150509250925092565b5f6040820190506126ca5f8301856121d2565b6126d760208301846120fb565b9392505050565b6126e7816120c8565b81146126f1575f80fd5b50565b5f81519050612702816126de565b92915050565b5f6020828403121561271d5761271c611ff9565b5b5f61272a848285016126f4565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f61278d602483611f73565b915061279882612733565b604082019050919050565b5f6020820190508181035f8301526127ba81612781565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61281b602283611f73565b9150612826826127c1565b604082019050919050565b5f6020820190508181035f8301526128488161280f565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6128a9602583611f73565b91506128b48261284f565b604082019050919050565b5f6020820190508181035f8301526128d68161289d565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612937602383611f73565b9150612942826128dd565b604082019050919050565b5f6020820190508181035f8301526129648161292b565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f6129c5602983611f73565b91506129d08261296b565b604082019050919050565b5f6020820190508181035f8301526129f2816129b9565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612a2d601983611f73565b9150612a38826129f9565b602082019050919050565b5f6020820190508181035f830152612a5a81612a21565b9050919050565b5f612a6b82612057565b9150612a7683612057565b9250828201905080821115612a8e57612a8d612238565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f612ac8601a83611f73565b9150612ad382612a94565b602082019050919050565b5f6020820190508181035f830152612af581612abc565b9050919050565b5f612b0682612057565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612b3857612b37612238565b5b600182019050919050565b7f616d6f756e74206973206e6f7420617661696c61626c650000000000000000005f82015250565b5f612b77601783611f73565b9150612b8282612b43565b602082019050919050565b5f6020820190508181035f830152612ba481612b6b565b9050919050565b5f612bb582612057565b9150612bc083612057565b9250828203905081811115612bd857612bd7612238565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612c6a8161201c565b82525050565b5f612c7b8383612c61565b60208301905092915050565b5f602082019050919050565b5f612c9d82612c38565b612ca78185612c42565b9350612cb283612c52565b805f5b83811015612ce2578151612cc98882612c70565b9750612cd483612c87565b925050600181019050612cb5565b5085935050505092915050565b5f60a082019050612d025f8301886120fb565b612d0f60208301876125e5565b8181036040830152612d218186612c93565b9050612d3060608301856121d2565b612d3d60808301846120fb565b9695505050505050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612da1602183611f73565b9150612dac82612d47565b604082019050919050565b5f6020820190508181035f830152612dce81612d95565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612e09601b83611f73565b9150612e1482612dd5565b602082019050919050565b5f6020820190508181035f830152612e3681612dfd565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212206c538ca87e8277dacf4cc6867d8acdd84bd6e3844451f74c4c35f2b70990546264736f6c634300081a0033
Deployed Bytecode
0x60806040526004361061010c575f3560e01c80637d1db4a511610094578063a9059cbb11610063578063a9059cbb14610347578063bf474bed14610383578063c876d0b9146103ad578063c9567bf9146103d7578063dd62ed3e146103ed57610113565b80637d1db4a51461029f5780638da5cb5b146102c95780638f9a55c0146102f357806395d89b411461031d57610113565b806323b872dd116100db57806323b872dd146101d1578063313ce5671461020d57806351bc3c851461023757806370a082311461024d578063715018a61461028957610113565b806306fdde0314610117578063095ea7b3146101415780630faee56f1461017d57806318160ddd146101a757610113565b3661011357005b5f80fd5b348015610122575f80fd5b5061012b610429565b6040516101389190611fd9565b60405180910390f35b34801561014c575f80fd5b506101676004803603810190610162919061208a565b610466565b60405161017491906120e2565b60405180910390f35b348015610188575f80fd5b50610191610483565b60405161019e919061210a565b60405180910390f35b3480156101b2575f80fd5b506101bb610489565b6040516101c8919061210a565b60405180910390f35b3480156101dc575f80fd5b506101f760048036038101906101f29190612123565b6104ac565b60405161020491906120e2565b60405180910390f35b348015610218575f80fd5b50610221610579565b60405161022e919061218e565b60405180910390f35b348015610242575f80fd5b5061024b610581565b005b348015610258575f80fd5b50610273600480360381019061026e91906121a7565b610619565b604051610280919061210a565b60405180910390f35b348015610294575f80fd5b5061029d61065f565b005b3480156102aa575f80fd5b506102b36107ad565b6040516102c0919061210a565b60405180910390f35b3480156102d4575f80fd5b506102dd6107b3565b6040516102ea91906121e1565b60405180910390f35b3480156102fe575f80fd5b506103076107da565b604051610314919061210a565b60405180910390f35b348015610328575f80fd5b506103316107e0565b60405161033e9190611fd9565b60405180910390f35b348015610352575f80fd5b5061036d6004803603810190610368919061208a565b61081d565b60405161037a91906120e2565b60405180910390f35b34801561038e575f80fd5b5061039761083a565b6040516103a4919061210a565b60405180910390f35b3480156103b8575f80fd5b506103c1610840565b6040516103ce91906120e2565b60405180910390f35b3480156103e2575f80fd5b506103eb610852565b005b3480156103f8575f80fd5b50610413600480360381019061040e91906121fa565b610dd2565b604051610420919061210a565b60405180910390f35b60606040518060400160405280600b81526020017f41492043415420544f574e000000000000000000000000000000000000000000815250905090565b5f610479610472610e54565b8484610e5b565b6001905092915050565b60165481565b5f6009600a6104989190612394565b6305f5e1006104a791906123de565b905090565b5f6104b884848461101e565b61056e846104c4610e54565b61056985604051806060016040528060288152602001612e3e6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461193a9092919063ffffffff16565b610e5b565b600190509392505050565b5f6009905090565b600960019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166105c2610e54565b73ffffffffffffffffffffffffffffffffffffffff16146105e1575f80fd5b5f6105eb30610619565b90505f8111156105ff576105fe8161199c565b5b5f4790505f8111156106155761061481611c07565b5b5050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610667610e54565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ea90612469565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60135481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60145481565b60606040518060400160405280600581526020017f4149434154000000000000000000000000000000000000000000000000000000815250905090565b5f610830610829610e54565b848461101e565b6001905092915050565b60155481565b60095f9054906101000a900460ff1681565b61085a610e54565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108dd90612469565b60405180910390fd5b601860149054906101000a900460ff1615610936576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161092d906124d1565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60175f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506109d23060175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a6109be9190612394565b6305f5e1006109cd91906123de565b610e5b565b60175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a609190612503565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ae6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b0a9190612503565b6040518363ffffffff1660e01b8152600401610b2792919061252e565b6020604051808303815f875af1158015610b43573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b679190612503565b60185f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473060646062610bf230610619565b610bfc91906123de565b610c069190612582565b5f80610c106107b3565b426040518863ffffffff1660e01b8152600401610c32969594939291906125f4565b60606040518083038185885af1158015610c4e573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610c739190612667565b50505060185f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610d139291906126b7565b6020604051808303815f875af1158015610d2f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d539190612708565b506001601860166101000a81548160ff0219169083151502179055506001601860146101000a81548160ff0219169083151502179055506009600a610d989190612394565b6305f5e100610da791906123de565b6013819055506009600a610dbb9190612394565b6305f5e100610dca91906123de565b601481905550565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610ec9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ec0906127a3565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2e90612831565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611011919061210a565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361108c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611083906128bf565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110f19061294d565b60405180910390fd5b5f811161113c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611133906129db565b60405180910390fd5b5f6111456107b3565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156111b357506111836107b3565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611788576111f460646111e6600f54601254116111d357600b546111d7565b600d545b85611c7090919063ffffffff16565b611ce790919063ffffffff16565b905060185f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561129f575060175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156112f2575060045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156113ac5760135482111561133c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133390612a43565b60405180910390fd5b6014548261134985610619565b6113539190612a61565b1115611394576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161138b90612ade565b60405180910390fd5b60125f8154809291906113a690612afc565b91905055505b60185f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561143457503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156115a05760055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161580156114d6575060045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b15611561578160015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f821015611560576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155790612b8d565b60405180910390fd5b5b61159d606461158f6010546012541161157c57600c54611580565b600e545b85611c7090919063ffffffff16565b611ce790919063ffffffff16565b90505b60095f9054906101000a900460ff16156116a65760175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561165d575060185f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b156116a5574360085f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5b5f6116b030610619565b9050601860159054906101000a900460ff1615801561171b575060185f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156117335750601860169054906101000a900460ff165b80156117425750601154601254115b156117865760155481111561176f5761176e6117698461176484601654611d30565b611d30565b61199c565b5b5f4790505f81106117845761178347611c07565b5b505b505b5f80611795868585611d48565b915091506117e98260015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611e6290919063ffffffff16565b60015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061187a8160015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611eab90919063ffffffff16565b60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61191d8688611e6290919063ffffffff16565b60405161192a919061210a565b60405180910390a3505050505050565b5f838311158290611981576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119789190611fd9565b60405180910390fd5b505f838561198f9190612bab565b9050809150509392505050565b6001601860156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff8111156119d3576119d2612bde565b5b604051908082528060200260200182016040528015611a015781602001602082028036833780820191505090505b50905030815f81518110611a1857611a17612c0b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611abc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ae09190612503565b81600181518110611af457611af3612c0b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611b5a3060175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610e5b565b60175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611bbc959493929190612cef565b5f604051808303815f87803b158015611bd3575f80fd5b505af1158015611be5573d5f803e3d5ffd5b50505050505f601860156101000a81548160ff02191690831515021790555050565b600960019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611c6c573d5f803e3d5ffd5b5050565b5f808303611c80575f9050611ce1565b5f8284611c8d91906123de565b9050828482611c9c9190612582565b14611cdc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cd390612db7565b60405180910390fd5b809150505b92915050565b5f611d2883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611f08565b905092915050565b5f818311611d3e5782611d40565b815b905092915050565b5f805f831115611e4957611da28360015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611eab90919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611e40919061210a565b60405180910390a35b838385611e569190612bab565b91509150935093915050565b5f611ea383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061193a565b905092915050565b5f808284611eb99190612a61565b905083811015611efe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ef590612e1f565b60405180910390fd5b8091505092915050565b5f8083118290611f4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f459190611fd9565b60405180910390fd5b505f8385611f5c9190612582565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611fab82611f69565b611fb58185611f73565b9350611fc5818560208601611f83565b611fce81611f91565b840191505092915050565b5f6020820190508181035f830152611ff18184611fa1565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61202682611ffd565b9050919050565b6120368161201c565b8114612040575f80fd5b50565b5f813590506120518161202d565b92915050565b5f819050919050565b61206981612057565b8114612073575f80fd5b50565b5f8135905061208481612060565b92915050565b5f80604083850312156120a05761209f611ff9565b5b5f6120ad85828601612043565b92505060206120be85828601612076565b9150509250929050565b5f8115159050919050565b6120dc816120c8565b82525050565b5f6020820190506120f55f8301846120d3565b92915050565b61210481612057565b82525050565b5f60208201905061211d5f8301846120fb565b92915050565b5f805f6060848603121561213a57612139611ff9565b5b5f61214786828701612043565b935050602061215886828701612043565b925050604061216986828701612076565b9150509250925092565b5f60ff82169050919050565b61218881612173565b82525050565b5f6020820190506121a15f83018461217f565b92915050565b5f602082840312156121bc576121bb611ff9565b5b5f6121c984828501612043565b91505092915050565b6121db8161201c565b82525050565b5f6020820190506121f45f8301846121d2565b92915050565b5f80604083850312156122105761220f611ff9565b5b5f61221d85828601612043565b925050602061222e85828601612043565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156122ba5780860481111561229657612295612238565b5b60018516156122a55780820291505b80810290506122b385612265565b945061227a565b94509492505050565b5f826122d2576001905061238d565b816122df575f905061238d565b81600181146122f557600281146122ff5761232e565b600191505061238d565b60ff84111561231157612310612238565b5b8360020a91508482111561232857612327612238565b5b5061238d565b5060208310610133831016604e8410600b84101617156123635782820a90508381111561235e5761235d612238565b5b61238d565b6123708484846001612271565b9250905081840481111561238757612386612238565b5b81810290505b9392505050565b5f61239e82612057565b91506123a983612173565b92506123d67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846122c3565b905092915050565b5f6123e882612057565b91506123f383612057565b925082820261240181612057565b9150828204841483151761241857612417612238565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612453602083611f73565b915061245e8261241f565b602082019050919050565b5f6020820190508181035f83015261248081612447565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f6124bb601783611f73565b91506124c682612487565b602082019050919050565b5f6020820190508181035f8301526124e8816124af565b9050919050565b5f815190506124fd8161202d565b92915050565b5f6020828403121561251857612517611ff9565b5b5f612525848285016124ef565b91505092915050565b5f6040820190506125415f8301856121d2565b61254e60208301846121d2565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61258c82612057565b915061259783612057565b9250826125a7576125a6612555565b5b828204905092915050565b5f819050919050565b5f819050919050565b5f6125de6125d96125d4846125b2565b6125bb565b612057565b9050919050565b6125ee816125c4565b82525050565b5f60c0820190506126075f8301896121d2565b61261460208301886120fb565b61262160408301876125e5565b61262e60608301866125e5565b61263b60808301856121d2565b61264860a08301846120fb565b979650505050505050565b5f8151905061266181612060565b92915050565b5f805f6060848603121561267e5761267d611ff9565b5b5f61268b86828701612653565b935050602061269c86828701612653565b92505060406126ad86828701612653565b9150509250925092565b5f6040820190506126ca5f8301856121d2565b6126d760208301846120fb565b9392505050565b6126e7816120c8565b81146126f1575f80fd5b50565b5f81519050612702816126de565b92915050565b5f6020828403121561271d5761271c611ff9565b5b5f61272a848285016126f4565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f61278d602483611f73565b915061279882612733565b604082019050919050565b5f6020820190508181035f8301526127ba81612781565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61281b602283611f73565b9150612826826127c1565b604082019050919050565b5f6020820190508181035f8301526128488161280f565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6128a9602583611f73565b91506128b48261284f565b604082019050919050565b5f6020820190508181035f8301526128d68161289d565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612937602383611f73565b9150612942826128dd565b604082019050919050565b5f6020820190508181035f8301526129648161292b565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f6129c5602983611f73565b91506129d08261296b565b604082019050919050565b5f6020820190508181035f8301526129f2816129b9565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612a2d601983611f73565b9150612a38826129f9565b602082019050919050565b5f6020820190508181035f830152612a5a81612a21565b9050919050565b5f612a6b82612057565b9150612a7683612057565b9250828201905080821115612a8e57612a8d612238565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f612ac8601a83611f73565b9150612ad382612a94565b602082019050919050565b5f6020820190508181035f830152612af581612abc565b9050919050565b5f612b0682612057565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612b3857612b37612238565b5b600182019050919050565b7f616d6f756e74206973206e6f7420617661696c61626c650000000000000000005f82015250565b5f612b77601783611f73565b9150612b8282612b43565b602082019050919050565b5f6020820190508181035f830152612ba481612b6b565b9050919050565b5f612bb582612057565b9150612bc083612057565b9250828203905081811115612bd857612bd7612238565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612c6a8161201c565b82525050565b5f612c7b8383612c61565b60208301905092915050565b5f602082019050919050565b5f612c9d82612c38565b612ca78185612c42565b9350612cb283612c52565b805f5b83811015612ce2578151612cc98882612c70565b9750612cd483612c87565b925050600181019050612cb5565b5085935050505092915050565b5f60a082019050612d025f8301886120fb565b612d0f60208301876125e5565b8181036040830152612d218186612c93565b9050612d3060608301856121d2565b612d3d60808301846120fb565b9695505050505050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612da1602183611f73565b9150612dac82612d47565b604082019050919050565b5f6020820190508181035f830152612dce81612d95565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612e09601b83611f73565b9150612e1482612dd5565b602082019050919050565b5f6020820190508181035f830152612e3681612dfd565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212206c538ca87e8277dacf4cc6867d8acdd84bd6e3844451f74c4c35f2b70990546264736f6c634300081a0033
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.