ERC-20
Overview
Max Total Supply
10,000,000,000 HANZO
Holders
24
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
70,914,134.01578834 HANZOValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
Hattori
Compiler Version
v0.8.14+commit.80d49f37
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
/** * –Hattori Hanzō */ /** Revenge is never a straight line. It's a forest. And like a forest, it's easy to lose your way. To get lost. To forget where you came in. */ /** * */ /** */ /** */ // // //SPDX-License-Identifier: MIT pragma solidity ^0.8.11; 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) { // Solidity only automatically asserts when dividing by 0 require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } } /** * BEP20 standard interface. */ interface IBEP20 { function totalSupply() external view returns (uint256); function decimals() external view returns (uint8); function symbol() external view returns (string memory); function name() external view returns (string memory); function getOwner() external view returns (address); 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); } /** * Allows for contract ownership along with multi-address authorization */ abstract contract Auth { address internal owner; mapping (address => bool) internal _intAddr; constructor(address _owner) { owner = _owner; _intAddr[_owner] = true; } /** * Function modifier to require caller to be contract owner */ modifier onlyOwner() { require(isOwner(msg.sender), "!OWNER"); _; } /** * Function modifier to require caller to be authorized */ modifier authorized() { require(isAuthorized(msg.sender), "!AUTHORIZED"); _; } /** * Authorize address. Owner only */ function authorize(address adr) public onlyOwner { _intAddr[adr] = true; } /** * Remove address' authorization. Owner only */ function unauthorize(address adr) public onlyOwner { _intAddr[adr] = false; } /** * Check if address is owner */ function isOwner(address account) public view returns (bool) { return account == owner; } /** * Return address' authorization status */ function isAuthorized(address adr) internal view returns (bool) { return _intAddr[adr]; } /** * Transfer ownership to new address. Caller must be owner. Leaves old owner authorized */ function transferOwnership(address payable adr) public onlyOwner { owner = adr; _intAddr[adr] = true; emit OwnershipTransferred(adr); } event OwnershipTransferred(address owner); } interface IDEXFactory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IDEXRouter { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidity( address tokenA, address tokenB, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB, uint liquidity); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function swapExactETHForTokensSupportingFeeOnTransferTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } contract Hattori is IBEP20, Auth { using SafeMath for uint256; address WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2; address DEAD = 0x000000000000000000000000000000000000dEaD; address ZERO = 0x0000000000000000000000000000000000000000; address routerAddress = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; // MAINNET string constant _name = "Hattori"; string constant _symbol = "HANZO"; uint8 constant _decimals = 9; uint256 _totalSupply = 10000000000 * (10 ** _decimals); uint256 public _maxTxAmount = (_totalSupply * 1) / 100; uint256 public _maxWalletSize = (_totalSupply * 1) / 100; mapping (address => uint256) _balances; mapping (address => mapping (address => uint256)) _allowances; mapping (address => bool) isFeeExempt; mapping (address => bool) isTxLimitExempt; mapping (address => bool) isTimelockExempt; mapping (address => bool) public isBlacklisted; uint256 liquidityFee = 1; uint256 devFee = 1; uint256 marketingFee = 5; uint256 totalFee = 7; uint256 feeDenominator = 100; uint256 public _sellMultiplier = 1; address public marketingFeeReceiver = 0x0a77EE5E7F88eDB9377434fb9caec1130977eDc2; address public devFeeReceiver = 0x0a77EE5E7F88eDB9377434fb9caec1130977eDc2; IDEXRouter public router; address public pair; uint256 public launchedAt; bool public tradingOpen = true; bool public swapEnabled = true; uint256 public swapThreshold = _totalSupply / 1000 * 1; // 0.3% bool inSwap; modifier swapping() { inSwap = true; _; inSwap = false; } // Cooldown & timer functionality bool public opCooldownEnabled = true; uint8 public cooldownTimerInterval = 15; mapping (address => uint) private cooldownTimer; constructor () Auth(msg.sender) { router = IDEXRouter(routerAddress); pair = IDEXFactory(router.factory()).createPair(WETH, address(this)); _allowances[address(this)][address(router)] = type(uint256).max; address _owner = owner; isFeeExempt[msg.sender] = true; isTxLimitExempt[msg.sender] = true; isTxLimitExempt[address(this)] = true; isTxLimitExempt[routerAddress] = true; // No timelock for these people isTimelockExempt[msg.sender] = true; isTimelockExempt[DEAD] = true; isTimelockExempt[address(this)] = true; _balances[_owner] = _totalSupply; emit Transfer(address(0), _owner, _totalSupply); } receive() external payable { } function totalSupply() external view override returns (uint256) { return _totalSupply; } function decimals() external pure override returns (uint8) { return _decimals; } function symbol() external pure override returns (string memory) { return _symbol; } function name() external pure override returns (string memory) { return _name; } function getOwner() external view override returns (address) { return owner; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _allowances[msg.sender][spender] = amount; emit Approval(msg.sender, spender, amount); return true; } function approveMax(address spender) external returns (bool) { return approve(spender, type(uint256).max); } function transfer(address recipient, uint256 amount) external override returns (bool) { return _transferFrom(msg.sender, recipient, amount); } function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) { if(_allowances[sender][msg.sender] != type(uint256).max){ _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance"); } return _transferFrom(sender, recipient, amount); } function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) { if(inSwap){ return _basicTransfer(sender, recipient, amount); } if(!_intAddr[sender] && !_intAddr[recipient]){ require(tradingOpen,"Trading not open yet"); } checkTxLimit(sender, amount); // Check if address is blacklisted require(!isBlacklisted[recipient] && !isBlacklisted[sender], 'Address is blacklisted'); if (recipient != pair && recipient != DEAD) { require(isTxLimitExempt[recipient] || _balances[recipient] + amount <= _maxWalletSize, "Transfer amount exceeds the bag size."); } if (sender == pair && opCooldownEnabled && !isTimelockExempt[recipient]) { require(cooldownTimer[recipient] < block.timestamp,"Please wait for 1min between two operations"); cooldownTimer[recipient] = block.timestamp + cooldownTimerInterval; } if(shouldSwapBack()){ swapBack(); } if(!launched() && recipient == pair){ require(_balances[sender] > 0); launch(); } _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); uint256 amountReceived = shouldTakeFee(sender) ? takeFee(sender, recipient, amount) : amount; _balances[recipient] = _balances[recipient].add(amountReceived); emit Transfer(sender, recipient, amountReceived); return true; } function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) { _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); return true; } function checkTxLimit(address sender, uint256 amount) internal view { require(amount <= _maxTxAmount || isTxLimitExempt[sender], "TX Limit Exceeded"); } function shouldTakeFee(address sender) internal view returns (bool) { return !isFeeExempt[sender]; } function getTotalFee(bool selling) public view returns (uint256) { if(launchedAt + 5 >= block.number){ return feeDenominator.sub(1); } if(selling) { return totalFee.mul(_sellMultiplier); } return totalFee; } function takeFee(address sender, address receiver, uint256 amount) internal returns (uint256) { uint256 feeAmount = amount.mul(getTotalFee(receiver == pair)).div(feeDenominator); _balances[address(this)] = _balances[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); return amount.sub(feeAmount); } // switch Trading function tradingStatus(bool _status) public authorized { tradingOpen = _status; if(tradingOpen){ launchedAt = block.number; } } function shouldSwapBack() internal view returns (bool) { return msg.sender != pair && !inSwap && swapEnabled && _balances[address(this)] >= swapThreshold; } function swapBack() internal swapping { uint256 contractTokenBalance = balanceOf(address(this)); uint256 amountToLiquify = contractTokenBalance.mul(liquidityFee).div(totalFee).div(2); uint256 amountToSwap = contractTokenBalance.sub(amountToLiquify); address[] memory path = new address[](2); path[0] = address(this); path[1] = WETH; uint256 balanceBefore = address(this).balance; router.swapExactTokensForETHSupportingFeeOnTransferTokens( amountToSwap, 0, path, address(this), block.timestamp ); uint256 amountBNB = address(this).balance.sub(balanceBefore); uint256 totalBNBFee = totalFee.sub(liquidityFee.div(2)); uint256 amountBNBLiquidity = amountBNB.mul(liquidityFee).div(totalBNBFee).div(2); uint256 amountBNBdev = amountBNB.mul(devFee).div(totalBNBFee); uint256 amountBNBMarketing = amountBNB.mul(marketingFee).div(totalBNBFee); (bool MarketingSuccess, /* bytes memory data */) = payable(marketingFeeReceiver).call{value: amountBNBMarketing, gas: 30000}(""); require(MarketingSuccess, "receiver rejected ETH transfer"); (bool devSuccess, /* bytes memory data */) = payable(devFeeReceiver).call{value: amountBNBdev, gas: 30000}(""); require(devSuccess, "receiver rejected ETH transfer"); if(amountToLiquify > 0){ router.addLiquidityETH{value: amountBNBLiquidity}( address(this), amountToLiquify, 0, 0, marketingFeeReceiver, block.timestamp ); emit AutoLiquify(amountBNBLiquidity, amountToLiquify); } } function buyTokens(uint256 amount, address to) internal swapping { address[] memory path = new address[](2); path[0] = WETH; path[1] = address(this); router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}( 0, path, to, block.timestamp ); } function launched() internal view returns (bool) { return launchedAt != 0; } function launch() internal { launchedAt = block.number; } function setMaxWallet(uint256 amount) external onlyOwner() { require(amount >= _totalSupply / 1000 ); _maxWalletSize = amount; } function setFees(uint256 _liquidityFee, uint256 _marketingFee, uint256 _devFee, uint256 _feeDenominator) external authorized { liquidityFee = _liquidityFee; marketingFee = _marketingFee; devFee = _devFee; totalFee = _liquidityFee.add(_marketingFee).add(_devFee); feeDenominator = _feeDenominator; require(totalFee < feeDenominator/3); } // enable cooldown between trades function cooldownEnabled(bool _status, uint8 _interval) public authorized { opCooldownEnabled = _status; cooldownTimerInterval = _interval; } function setIsFeeExempt(address holder, bool exempt) external authorized { isFeeExempt[holder] = exempt; } function setIsTxLimitExempt(address holder, bool exempt) external authorized { isTxLimitExempt[holder] = exempt; } function setSellMultiplier(uint256 multiplier) external authorized{ _sellMultiplier = multiplier; } function setFeeReceiver(address _marketingFeeReceiver, address _devFeeReceiver) external authorized { marketingFeeReceiver = _marketingFeeReceiver; devFeeReceiver = _devFeeReceiver; } // Set the maximum transaction limit function setTxLimit(uint256 amountBuy) external authorized { _maxTxAmount = amountBuy; } function setSwapBackSettings(bool _enabled, uint256 _amount) external authorized { swapEnabled = _enabled; swapThreshold = _amount; } // Blacklist/unblacklist an address function blacklistAddress(address _address, bool _value) public authorized{ isBlacklisted[_address] = _value; } function manualSend() external authorized { uint256 contractETHBalance = address(this).balance; payable(marketingFeeReceiver).transfer(contractETHBalance); } function transferForeignToken(address _token) public authorized { require(_token != address(this), "Can't let you take all native token"); uint256 _contractBalance = IBEP20(_token).balanceOf(address(this)); payable(marketingFeeReceiver).transfer(_contractBalance); } function getCirculatingSupply() public view returns (uint256) { return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(ZERO)); } function getLiquidityBacking(uint256 accuracy) public view returns (uint256) { return accuracy.mul(balanceOf(pair).mul(2)).div(getCirculatingSupply()); } function isOverLiquified(uint256 target, uint256 accuracy) public view returns (bool) { return getLiquidityBacking(accuracy) > target; } event AutoLiquify(uint256 amountBNB, uint256 amountBOG); }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } } }
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":"amountBNB","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountBOG","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","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":"_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":"_sellMultiplier","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"spender","type":"address"}],"name":"approveMax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"authorize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_value","type":"bool"}],"name":"blacklistAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_status","type":"bool"},{"internalType":"uint8","name":"_interval","type":"uint8"}],"name":"cooldownEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cooldownTimerInterval","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"devFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"getLiquidityBacking","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"selling","type":"bool"}],"name":"getTotalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isBlacklisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"target","type":"uint256"},{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"isOverLiquified","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"opCooldownEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingFeeReceiver","type":"address"},{"internalType":"address","name":"_devFeeReceiver","type":"address"}],"name":"setFeeReceiver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_marketingFee","type":"uint256"},{"internalType":"uint256","name":"_devFee","type":"uint256"},{"internalType":"uint256","name":"_feeDenominator","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsTxLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"multiplier","type":"uint256"}],"name":"setSellMultiplier","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountBuy","type":"uint256"}],"name":"setTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_status","type":"bool"}],"name":"tradingStatus","outputs":[],"stateMutability":"nonpayable","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":"_token","type":"address"}],"name":"transferForeignToken","outputs":[],"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"},{"inputs":[{"internalType":"address payable","name":"adr","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"unauthorize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052600280546001600160a01b031990811673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc21790915560038054821661dead179055600480548216905560058054909116737a250d5630b4cf539739df2c5dacb4c659f2488d1790556200006e6009600a620004ac565b6200007f906402540be400620004c4565b60065560646006546001620000959190620004c4565b620000a19190620004e6565b60075560646006546001620000b79190620004c4565b620000c39190620004e6565b6008556001600f819055601081905560056011556007601255606460135560145560158054730a77ee5e7f88edb9377434fb9caec1130977edc26001600160a01b03199182168117909255601680549091169091179055601a805461ffff19166101011790556006546200013b906103e890620004e6565b62000148906001620004c4565b601b55601c805462ffff001916620f01001790553480156200016957600080fd5b5060008054336001600160a01b031991821681178355825260016020818152604093849020805460ff1916909217909155600554601780546001600160a01b03909216919093168117909255825163c45a015560e01b81529251919263c45a015592600480830193928290030181865afa158015620001ec573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000212919062000509565b6002546040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af115801562000264573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028a919062000509565b601880546001600160a01b0319166001600160a01b03928316179055306000818152600a602090815260408083206017548616845282528083206000199055825433808552600b8452828520805460ff199081166001908117909255600c865284872080548216831790558787528487208054821683179055600554891687528487208054821683179055918652600d8552838620805483168217905560035488168652838620805483168217905595855282852080549091169095179094556006549390941680835260098252848320849055935192835283927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35062000534565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003ee578160001904821115620003d257620003d262000397565b80851615620003e057918102915b93841c9390800290620003b2565b509250929050565b6000826200040757506001620004a6565b816200041657506000620004a6565b81600181146200042f57600281146200043a576200045a565b6001915050620004a6565b60ff8411156200044e576200044e62000397565b50506001821b620004a6565b5060208310610133831016604e8410600b84101617156200047f575081810a620004a6565b6200048b8383620003ad565b8060001904821115620004a257620004a262000397565b0290505b92915050565b6000620004bd60ff841683620003f6565b9392505050565b6000816000190483118215151615620004e157620004e162000397565b500290565b6000826200050457634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200051c57600080fd5b81516001600160a01b0381168114620004bd57600080fd5b6121e480620005446000396000f3fe6080604052600436106102815760003560e01c80638f9a55c01161014f578063dd62ed3e116100c1578063f2fde38b1161007a578063f2fde38b146107ee578063f42938901461080e578063f84ba65d14610823578063f887ea4014610843578063fe575a8714610863578063ffb54a991461089357600080fd5b8063dd62ed3e14610708578063df20fd491461074e578063e66db25e1461076e578063e96fada21461078e578063f0b37c04146107ae578063f1f3bca3146107ce57600080fd5b8063b6a5d7de11610113578063b6a5d7de14610653578063ba344dc414610673578063bf56b37114610692578063d51ed1c8146106a8578063dab84ee7146106c8578063dc93cf70146106e857600080fd5b80638f9a55c0146105af57806395d89b41146105c5578063a7bc1de0146105f3578063a8aa1b3114610613578063a9059cbb1461063357600080fd5b8063313ce567116101f35780636ddd1713116101ac5780636ddd1713146104d25780636fcba377146104f157806370a0823114610511578063722b62ad146105475780637d1db4a514610567578063893d20e81461057d57600080fd5b8063313ce56714610410578063455a439614610432578063571ac8b0146104525780635c85974f146104725780635d0044ca14610492578063658d4b7f146104b257600080fd5b806318160ddd1161024557806318160ddd1461036157806323b872dd1461037657806324e9bafb146103965780632b112e49146103ac5780632d594567146103c15780632f54bf6e146103e157600080fd5b80630445b6671461028d57806306fdde03146102b6578063095ea7b3146102ef5780630d2959801461031f5780631161ae391461034157600080fd5b3661028857005b600080fd5b34801561029957600080fd5b506102a3601b5481565b6040519081526020015b60405180910390f35b3480156102c257600080fd5b50604080518082019091526007815266486174746f726960c81b60208201525b6040516102ad9190611dc8565b3480156102fb57600080fd5b5061030f61030a366004611e32565b6108ad565b60405190151581526020016102ad565b34801561032b57600080fd5b5061033f61033a366004611e73565b61091a565b005b34801561034d57600080fd5b5061030f61035c366004611e8e565b610969565b34801561036d57600080fd5b506006546102a3565b34801561038257600080fd5b5061030f610391366004611eb0565b61097d565b3480156103a257600080fd5b506102a360145481565b3480156103b857600080fd5b506102a3610a3f565b3480156103cd57600080fd5b5061033f6103dc366004611ef1565b610a91565b3480156103ed57600080fd5b5061030f6103fc366004611f2e565b6000546001600160a01b0391821691161490565b34801561041c57600080fd5b5060095b60405160ff90911681526020016102ad565b34801561043e57600080fd5b5061033f61044d366004611f4b565b610ae7565b34801561045e57600080fd5b5061030f61046d366004611f2e565b610b37565b34801561047e57600080fd5b5061033f61048d366004611f80565b610b45565b34801561049e57600080fd5b5061033f6104ad366004611f80565b610b6f565b3480156104be57600080fd5b5061033f6104cd366004611f4b565b610bba565b3480156104de57600080fd5b50601a5461030f90610100900460ff1681565b3480156104fd57600080fd5b5061033f61050c366004611f99565b610c0a565b34801561051d57600080fd5b506102a361052c366004611f2e565b6001600160a01b031660009081526009602052604090205490565b34801561055357600080fd5b50601c546104209062010000900460ff1681565b34801561057357600080fd5b506102a360075481565b34801561058957600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016102ad565b3480156105bb57600080fd5b506102a360085481565b3480156105d157600080fd5b5060408051808201909152600581526448414e5a4f60d81b60208201526102e2565b3480156105ff57600080fd5b5061033f61060e366004611f80565b610c78565b34801561061f57600080fd5b50601854610597906001600160a01b031681565b34801561063f57600080fd5b5061030f61064e366004611e32565b610ca2565b34801561065f57600080fd5b5061033f61066e366004611f2e565b610caf565b34801561067f57600080fd5b50601c5461030f90610100900460ff1681565b34801561069e57600080fd5b506102a360195481565b3480156106b457600080fd5b506102a36106c3366004611f80565b610d00565b3480156106d457600080fd5b50601654610597906001600160a01b031681565b3480156106f457600080fd5b5061033f610703366004611f2e565b610d44565b34801561071457600080fd5b506102a3610723366004611fcb565b6001600160a01b039182166000908152600a6020908152604080832093909416825291909152205490565b34801561075a57600080fd5b5061033f610769366004611ff9565b610e78565b34801561077a57600080fd5b5061033f610789366004611fcb565b610ebb565b34801561079a57600080fd5b50601554610597906001600160a01b031681565b3480156107ba57600080fd5b5061033f6107c9366004611f2e565b610f0e565b3480156107da57600080fd5b506102a36107e9366004611e73565b610f59565b3480156107fa57600080fd5b5061033f610809366004611f2e565b610f9b565b34801561081a57600080fd5b5061033f611031565b34801561082f57600080fd5b5061033f61083e366004611f4b565b611094565b34801561084f57600080fd5b50601754610597906001600160a01b031681565b34801561086f57600080fd5b5061030f61087e366004611f2e565b600e6020526000908152604090205460ff1681565b34801561089f57600080fd5b50601a5461030f9060ff1681565b336000818152600a602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906109089086815260200190565b60405180910390a35060015b92915050565b610923336110e4565b6109485760405162461bcd60e51b815260040161093f90612015565b60405180910390fd5b601a805460ff191682151590811790915560ff161561096657436019555b50565b60008261097583610d00565b119392505050565b6001600160a01b0383166000908152600a6020908152604080832033845290915281205460001914610a2a576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600a82528381203382529091529190912054610a05918490611102565b6001600160a01b0385166000908152600a602090815260408083203384529091529020555b610a3584848461113c565b90505b9392505050565b6004546001600160a01b0316600090815260096020526040812054610a8c906003546001600160a01b0316600090815260096020526040902054610a8690600654906115ce565b906115ce565b905090565b610a9a336110e4565b610ab65760405162461bcd60e51b815260040161093f90612015565b601c805462ffff0019166101009315159390930262ff00001916929092176201000060ff9290921691909102179055565b610af0336110e4565b610b0c5760405162461bcd60e51b815260040161093f90612015565b6001600160a01b03919091166000908152600e60205260409020805460ff1916911515919091179055565b6000610914826000196108ad565b610b4e336110e4565b610b6a5760405162461bcd60e51b815260040161093f90612015565b600755565b6000546001600160a01b03163314610b995760405162461bcd60e51b815260040161093f9061203a565b6103e8600654610ba99190612070565b811015610bb557600080fd5b600855565b610bc3336110e4565b610bdf5760405162461bcd60e51b815260040161093f90612015565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b610c13336110e4565b610c2f5760405162461bcd60e51b815260040161093f90612015565b600f84905560118390556010829055610c5282610c4c8686611610565b90611610565b6012556013819055610c65600382612070565b60125410610c7257600080fd5b50505050565b610c81336110e4565b610c9d5760405162461bcd60e51b815260040161093f90612015565b601455565b6000610a3833848461113c565b6000546001600160a01b03163314610cd95760405162461bcd60e51b815260040161093f9061203a565b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b6000610914610d0d610a3f565b6018546001600160a01b0316600090815260096020526040902054610d3e90610d3790600261166f565b859061166f565b906116f1565b610d4d336110e4565b610d695760405162461bcd60e51b815260040161093f90612015565b306001600160a01b03821603610dcd5760405162461bcd60e51b815260206004820152602360248201527f43616e2774206c657420796f752074616b6520616c6c206e617469766520746f60448201526235b2b760e91b606482015260840161093f565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610e14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e389190612092565b6015546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610e73573d6000803e3d6000fd5b505050565b610e81336110e4565b610e9d5760405162461bcd60e51b815260040161093f90612015565b601a80549215156101000261ff001990931692909217909155601b55565b610ec4336110e4565b610ee05760405162461bcd60e51b815260040161093f90612015565b601580546001600160a01b039384166001600160a01b03199182161790915560168054929093169116179055565b6000546001600160a01b03163314610f385760405162461bcd60e51b815260040161093f9061203a565b6001600160a01b03166000908152600160205260409020805460ff19169055565b6000436019546005610f6b91906120ab565b10610f7e576013546109149060016115ce565b8115610f93576014546012546109149161166f565b505060125490565b6000546001600160a01b03163314610fc55760405162461bcd60e51b815260040161093f9061203a565b600080546001600160a01b0319166001600160a01b038316908117825580825260016020818152604093849020805460ff191690921790915591519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163910160405180910390a150565b61103a336110e4565b6110565760405162461bcd60e51b815260040161093f90612015565b60155460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015611090573d6000803e3d6000fd5b5050565b61109d336110e4565b6110b95760405162461bcd60e51b815260040161093f90612015565b6001600160a01b03919091166000908152600c60205260409020805460ff1916911515919091179055565b6001600160a01b031660009081526001602052604090205460ff1690565b600081848411156111265760405162461bcd60e51b815260040161093f9190611dc8565b50600061113384866120c3565b95945050505050565b601c5460009060ff161561115c57611155848484611733565b9050610a38565b6001600160a01b03841660009081526001602052604090205460ff1615801561119e57506001600160a01b03831660009081526001602052604090205460ff16155b156111ec57601a5460ff166111ec5760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b604482015260640161093f565b6111f68483611819565b6001600160a01b0383166000908152600e602052604090205460ff1615801561123857506001600160a01b0384166000908152600e602052604090205460ff16155b61127d5760405162461bcd60e51b81526020600482015260166024820152751059191c995cdcc81a5cc8189b1858dadb1a5cdd195960521b604482015260640161093f565b6018546001600160a01b038481169116148015906112a957506003546001600160a01b03848116911614155b15611354576001600160a01b0383166000908152600c602052604090205460ff16806112fa57506008546001600160a01b0384166000908152600960205260409020546112f79084906120ab565b11155b6113545760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b606482015260840161093f565b6018546001600160a01b0385811691161480156113785750601c54610100900460ff165b801561139d57506001600160a01b0383166000908152600d602052604090205460ff16155b1561144d576001600160a01b0383166000908152601d6020526040902054421161141d5760405162461bcd60e51b815260206004820152602b60248201527f506c65617365207761697420666f7220316d696e206265747765656e2074776f60448201526a206f7065726174696f6e7360a81b606482015260840161093f565b601c546114339062010000900460ff16426120ab565b6001600160a01b0384166000908152601d60205260409020555b611455611882565b15611462576114626118d6565b60195415801561147f57506018546001600160a01b038481169116145b156114af576001600160a01b0384166000908152600960205260409020546114a657600080fd5b6114af43601955565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260099091529190912054611501918490611102565b6001600160a01b038516600090815260096020908152604080832093909355600b90529081205460ff16156115365782611541565b611541858585611ce8565b6001600160a01b0385166000908152600960205260409020549091506115679082611610565b6001600160a01b0380861660008181526009602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906115bb9085815260200190565b60405180910390a3506001949350505050565b6000610a3883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611102565b60008061161d83856120ab565b905083811015610a385760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161093f565b60008260000361168157506000610914565b600061168d83856120da565b90508261169a8583612070565b14610a385760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161093f565b6000610a3883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611d9a565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600990915291822054611784918490611102565b6001600160a01b0380861660009081526009602052604080822093909355908516815220546117b39083611610565b6001600160a01b0380851660008181526009602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906118079086815260200190565b60405180910390a35060019392505050565b6007548111158061184257506001600160a01b0382166000908152600c602052604090205460ff165b6110905760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015260640161093f565b6018546000906001600160a01b031633148015906118a35750601c5460ff16155b80156118b65750601a54610100900460ff165b8015610a8c575050601b5430600090815260096020526040902054101590565b601c805460ff1916600117905530600090815260096020526040812054905060006119176002610d3e601254610d3e600f548761166f90919063ffffffff16565b9050600061192583836115ce565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061195f5761195f6120f9565b6001600160a01b039283166020918202929092010152600254825191169082906001908110611990576119906120f9565b6001600160a01b03928316602091820292909201015260175460405163791ac94760e01b81524792919091169063791ac947906119da90869060009087903090429060040161210f565b600060405180830381600087803b1580156119f457600080fd5b505af1158015611a08573d6000803e3d6000fd5b505050506000611a2182476115ce90919063ffffffff16565b90506000611a47611a3e6002600f546116f190919063ffffffff16565b601254906115ce565b90506000611a696002610d3e84610d3e600f548861166f90919063ffffffff16565b90506000611a8683610d3e6010548761166f90919063ffffffff16565b90506000611aa384610d3e6011548861166f90919063ffffffff16565b6015546040519192506000916001600160a01b039091169061753090849084818181858888f193505050503d8060008114611afa576040519150601f19603f3d011682016040523d82523d6000602084013e611aff565b606091505b5050905080611b505760405162461bcd60e51b815260206004820152601e60248201527f72656365697665722072656a656374656420455448207472616e736665720000604482015260640161093f565b6016546040516000916001600160a01b03169061753090869084818181858888f193505050503d8060008114611ba2576040519150601f19603f3d011682016040523d82523d6000602084013e611ba7565b606091505b5050905080611bf85760405162461bcd60e51b815260206004820152601e60248201527f72656365697665722072656a656374656420455448207472616e736665720000604482015260640161093f565b8a15611cd05760175460155460405163f305d71960e01b8152306004820152602481018e905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990879060c40160606040518083038185885af1158015611c6e573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611c939190612180565b505060408051878152602081018e90527f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450692500160405180910390a15b5050601c805460ff1916905550505050505050505050565b6013546018546000918291611d1a9190610d3e90611d13906001600160a01b03898116911614610f59565b869061166f565b30600090815260096020526040902054909150611d379082611610565b30600081815260096020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611d889085815260200190565b60405180910390a361113383826115ce565b60008183611dbb5760405162461bcd60e51b815260040161093f9190611dc8565b5060006111338486612070565b600060208083528351808285015260005b81811015611df557858101830151858201604001528201611dd9565b81811115611e07576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461096657600080fd5b60008060408385031215611e4557600080fd5b8235611e5081611e1d565b946020939093013593505050565b80358015158114611e6e57600080fd5b919050565b600060208284031215611e8557600080fd5b610a3882611e5e565b60008060408385031215611ea157600080fd5b50508035926020909101359150565b600080600060608486031215611ec557600080fd5b8335611ed081611e1d565b92506020840135611ee081611e1d565b929592945050506040919091013590565b60008060408385031215611f0457600080fd5b611f0d83611e5e565b9150602083013560ff81168114611f2357600080fd5b809150509250929050565b600060208284031215611f4057600080fd5b8135610a3881611e1d565b60008060408385031215611f5e57600080fd5b8235611f6981611e1d565b9150611f7760208401611e5e565b90509250929050565b600060208284031215611f9257600080fd5b5035919050565b60008060008060808587031215611faf57600080fd5b5050823594602084013594506040840135936060013592509050565b60008060408385031215611fde57600080fd5b8235611fe981611e1d565b91506020830135611f2381611e1d565b6000806040838503121561200c57600080fd5b611e5083611e5e565b6020808252600b908201526a085055551213d49256915160aa1b604082015260600190565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008261208d57634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156120a457600080fd5b5051919050565b600082198211156120be576120be61205a565b500190565b6000828210156120d5576120d561205a565b500390565b60008160001904831182151516156120f4576120f461205a565b500290565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561215f5784516001600160a01b03168352938301939183019160010161213a565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561219557600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220f97b0ab4f4fb52da22ba9c8f89b427b05b74ffa63f5b0f2e196faab57ca246a564736f6c634300080e0033
Deployed Bytecode
0x6080604052600436106102815760003560e01c80638f9a55c01161014f578063dd62ed3e116100c1578063f2fde38b1161007a578063f2fde38b146107ee578063f42938901461080e578063f84ba65d14610823578063f887ea4014610843578063fe575a8714610863578063ffb54a991461089357600080fd5b8063dd62ed3e14610708578063df20fd491461074e578063e66db25e1461076e578063e96fada21461078e578063f0b37c04146107ae578063f1f3bca3146107ce57600080fd5b8063b6a5d7de11610113578063b6a5d7de14610653578063ba344dc414610673578063bf56b37114610692578063d51ed1c8146106a8578063dab84ee7146106c8578063dc93cf70146106e857600080fd5b80638f9a55c0146105af57806395d89b41146105c5578063a7bc1de0146105f3578063a8aa1b3114610613578063a9059cbb1461063357600080fd5b8063313ce567116101f35780636ddd1713116101ac5780636ddd1713146104d25780636fcba377146104f157806370a0823114610511578063722b62ad146105475780637d1db4a514610567578063893d20e81461057d57600080fd5b8063313ce56714610410578063455a439614610432578063571ac8b0146104525780635c85974f146104725780635d0044ca14610492578063658d4b7f146104b257600080fd5b806318160ddd1161024557806318160ddd1461036157806323b872dd1461037657806324e9bafb146103965780632b112e49146103ac5780632d594567146103c15780632f54bf6e146103e157600080fd5b80630445b6671461028d57806306fdde03146102b6578063095ea7b3146102ef5780630d2959801461031f5780631161ae391461034157600080fd5b3661028857005b600080fd5b34801561029957600080fd5b506102a3601b5481565b6040519081526020015b60405180910390f35b3480156102c257600080fd5b50604080518082019091526007815266486174746f726960c81b60208201525b6040516102ad9190611dc8565b3480156102fb57600080fd5b5061030f61030a366004611e32565b6108ad565b60405190151581526020016102ad565b34801561032b57600080fd5b5061033f61033a366004611e73565b61091a565b005b34801561034d57600080fd5b5061030f61035c366004611e8e565b610969565b34801561036d57600080fd5b506006546102a3565b34801561038257600080fd5b5061030f610391366004611eb0565b61097d565b3480156103a257600080fd5b506102a360145481565b3480156103b857600080fd5b506102a3610a3f565b3480156103cd57600080fd5b5061033f6103dc366004611ef1565b610a91565b3480156103ed57600080fd5b5061030f6103fc366004611f2e565b6000546001600160a01b0391821691161490565b34801561041c57600080fd5b5060095b60405160ff90911681526020016102ad565b34801561043e57600080fd5b5061033f61044d366004611f4b565b610ae7565b34801561045e57600080fd5b5061030f61046d366004611f2e565b610b37565b34801561047e57600080fd5b5061033f61048d366004611f80565b610b45565b34801561049e57600080fd5b5061033f6104ad366004611f80565b610b6f565b3480156104be57600080fd5b5061033f6104cd366004611f4b565b610bba565b3480156104de57600080fd5b50601a5461030f90610100900460ff1681565b3480156104fd57600080fd5b5061033f61050c366004611f99565b610c0a565b34801561051d57600080fd5b506102a361052c366004611f2e565b6001600160a01b031660009081526009602052604090205490565b34801561055357600080fd5b50601c546104209062010000900460ff1681565b34801561057357600080fd5b506102a360075481565b34801561058957600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016102ad565b3480156105bb57600080fd5b506102a360085481565b3480156105d157600080fd5b5060408051808201909152600581526448414e5a4f60d81b60208201526102e2565b3480156105ff57600080fd5b5061033f61060e366004611f80565b610c78565b34801561061f57600080fd5b50601854610597906001600160a01b031681565b34801561063f57600080fd5b5061030f61064e366004611e32565b610ca2565b34801561065f57600080fd5b5061033f61066e366004611f2e565b610caf565b34801561067f57600080fd5b50601c5461030f90610100900460ff1681565b34801561069e57600080fd5b506102a360195481565b3480156106b457600080fd5b506102a36106c3366004611f80565b610d00565b3480156106d457600080fd5b50601654610597906001600160a01b031681565b3480156106f457600080fd5b5061033f610703366004611f2e565b610d44565b34801561071457600080fd5b506102a3610723366004611fcb565b6001600160a01b039182166000908152600a6020908152604080832093909416825291909152205490565b34801561075a57600080fd5b5061033f610769366004611ff9565b610e78565b34801561077a57600080fd5b5061033f610789366004611fcb565b610ebb565b34801561079a57600080fd5b50601554610597906001600160a01b031681565b3480156107ba57600080fd5b5061033f6107c9366004611f2e565b610f0e565b3480156107da57600080fd5b506102a36107e9366004611e73565b610f59565b3480156107fa57600080fd5b5061033f610809366004611f2e565b610f9b565b34801561081a57600080fd5b5061033f611031565b34801561082f57600080fd5b5061033f61083e366004611f4b565b611094565b34801561084f57600080fd5b50601754610597906001600160a01b031681565b34801561086f57600080fd5b5061030f61087e366004611f2e565b600e6020526000908152604090205460ff1681565b34801561089f57600080fd5b50601a5461030f9060ff1681565b336000818152600a602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906109089086815260200190565b60405180910390a35060015b92915050565b610923336110e4565b6109485760405162461bcd60e51b815260040161093f90612015565b60405180910390fd5b601a805460ff191682151590811790915560ff161561096657436019555b50565b60008261097583610d00565b119392505050565b6001600160a01b0383166000908152600a6020908152604080832033845290915281205460001914610a2a576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600a82528381203382529091529190912054610a05918490611102565b6001600160a01b0385166000908152600a602090815260408083203384529091529020555b610a3584848461113c565b90505b9392505050565b6004546001600160a01b0316600090815260096020526040812054610a8c906003546001600160a01b0316600090815260096020526040902054610a8690600654906115ce565b906115ce565b905090565b610a9a336110e4565b610ab65760405162461bcd60e51b815260040161093f90612015565b601c805462ffff0019166101009315159390930262ff00001916929092176201000060ff9290921691909102179055565b610af0336110e4565b610b0c5760405162461bcd60e51b815260040161093f90612015565b6001600160a01b03919091166000908152600e60205260409020805460ff1916911515919091179055565b6000610914826000196108ad565b610b4e336110e4565b610b6a5760405162461bcd60e51b815260040161093f90612015565b600755565b6000546001600160a01b03163314610b995760405162461bcd60e51b815260040161093f9061203a565b6103e8600654610ba99190612070565b811015610bb557600080fd5b600855565b610bc3336110e4565b610bdf5760405162461bcd60e51b815260040161093f90612015565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b610c13336110e4565b610c2f5760405162461bcd60e51b815260040161093f90612015565b600f84905560118390556010829055610c5282610c4c8686611610565b90611610565b6012556013819055610c65600382612070565b60125410610c7257600080fd5b50505050565b610c81336110e4565b610c9d5760405162461bcd60e51b815260040161093f90612015565b601455565b6000610a3833848461113c565b6000546001600160a01b03163314610cd95760405162461bcd60e51b815260040161093f9061203a565b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b6000610914610d0d610a3f565b6018546001600160a01b0316600090815260096020526040902054610d3e90610d3790600261166f565b859061166f565b906116f1565b610d4d336110e4565b610d695760405162461bcd60e51b815260040161093f90612015565b306001600160a01b03821603610dcd5760405162461bcd60e51b815260206004820152602360248201527f43616e2774206c657420796f752074616b6520616c6c206e617469766520746f60448201526235b2b760e91b606482015260840161093f565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610e14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e389190612092565b6015546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610e73573d6000803e3d6000fd5b505050565b610e81336110e4565b610e9d5760405162461bcd60e51b815260040161093f90612015565b601a80549215156101000261ff001990931692909217909155601b55565b610ec4336110e4565b610ee05760405162461bcd60e51b815260040161093f90612015565b601580546001600160a01b039384166001600160a01b03199182161790915560168054929093169116179055565b6000546001600160a01b03163314610f385760405162461bcd60e51b815260040161093f9061203a565b6001600160a01b03166000908152600160205260409020805460ff19169055565b6000436019546005610f6b91906120ab565b10610f7e576013546109149060016115ce565b8115610f93576014546012546109149161166f565b505060125490565b6000546001600160a01b03163314610fc55760405162461bcd60e51b815260040161093f9061203a565b600080546001600160a01b0319166001600160a01b038316908117825580825260016020818152604093849020805460ff191690921790915591519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163910160405180910390a150565b61103a336110e4565b6110565760405162461bcd60e51b815260040161093f90612015565b60155460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015611090573d6000803e3d6000fd5b5050565b61109d336110e4565b6110b95760405162461bcd60e51b815260040161093f90612015565b6001600160a01b03919091166000908152600c60205260409020805460ff1916911515919091179055565b6001600160a01b031660009081526001602052604090205460ff1690565b600081848411156111265760405162461bcd60e51b815260040161093f9190611dc8565b50600061113384866120c3565b95945050505050565b601c5460009060ff161561115c57611155848484611733565b9050610a38565b6001600160a01b03841660009081526001602052604090205460ff1615801561119e57506001600160a01b03831660009081526001602052604090205460ff16155b156111ec57601a5460ff166111ec5760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b604482015260640161093f565b6111f68483611819565b6001600160a01b0383166000908152600e602052604090205460ff1615801561123857506001600160a01b0384166000908152600e602052604090205460ff16155b61127d5760405162461bcd60e51b81526020600482015260166024820152751059191c995cdcc81a5cc8189b1858dadb1a5cdd195960521b604482015260640161093f565b6018546001600160a01b038481169116148015906112a957506003546001600160a01b03848116911614155b15611354576001600160a01b0383166000908152600c602052604090205460ff16806112fa57506008546001600160a01b0384166000908152600960205260409020546112f79084906120ab565b11155b6113545760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b606482015260840161093f565b6018546001600160a01b0385811691161480156113785750601c54610100900460ff165b801561139d57506001600160a01b0383166000908152600d602052604090205460ff16155b1561144d576001600160a01b0383166000908152601d6020526040902054421161141d5760405162461bcd60e51b815260206004820152602b60248201527f506c65617365207761697420666f7220316d696e206265747765656e2074776f60448201526a206f7065726174696f6e7360a81b606482015260840161093f565b601c546114339062010000900460ff16426120ab565b6001600160a01b0384166000908152601d60205260409020555b611455611882565b15611462576114626118d6565b60195415801561147f57506018546001600160a01b038481169116145b156114af576001600160a01b0384166000908152600960205260409020546114a657600080fd5b6114af43601955565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260099091529190912054611501918490611102565b6001600160a01b038516600090815260096020908152604080832093909355600b90529081205460ff16156115365782611541565b611541858585611ce8565b6001600160a01b0385166000908152600960205260409020549091506115679082611610565b6001600160a01b0380861660008181526009602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906115bb9085815260200190565b60405180910390a3506001949350505050565b6000610a3883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611102565b60008061161d83856120ab565b905083811015610a385760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161093f565b60008260000361168157506000610914565b600061168d83856120da565b90508261169a8583612070565b14610a385760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161093f565b6000610a3883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611d9a565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600990915291822054611784918490611102565b6001600160a01b0380861660009081526009602052604080822093909355908516815220546117b39083611610565b6001600160a01b0380851660008181526009602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906118079086815260200190565b60405180910390a35060019392505050565b6007548111158061184257506001600160a01b0382166000908152600c602052604090205460ff165b6110905760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015260640161093f565b6018546000906001600160a01b031633148015906118a35750601c5460ff16155b80156118b65750601a54610100900460ff165b8015610a8c575050601b5430600090815260096020526040902054101590565b601c805460ff1916600117905530600090815260096020526040812054905060006119176002610d3e601254610d3e600f548761166f90919063ffffffff16565b9050600061192583836115ce565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061195f5761195f6120f9565b6001600160a01b039283166020918202929092010152600254825191169082906001908110611990576119906120f9565b6001600160a01b03928316602091820292909201015260175460405163791ac94760e01b81524792919091169063791ac947906119da90869060009087903090429060040161210f565b600060405180830381600087803b1580156119f457600080fd5b505af1158015611a08573d6000803e3d6000fd5b505050506000611a2182476115ce90919063ffffffff16565b90506000611a47611a3e6002600f546116f190919063ffffffff16565b601254906115ce565b90506000611a696002610d3e84610d3e600f548861166f90919063ffffffff16565b90506000611a8683610d3e6010548761166f90919063ffffffff16565b90506000611aa384610d3e6011548861166f90919063ffffffff16565b6015546040519192506000916001600160a01b039091169061753090849084818181858888f193505050503d8060008114611afa576040519150601f19603f3d011682016040523d82523d6000602084013e611aff565b606091505b5050905080611b505760405162461bcd60e51b815260206004820152601e60248201527f72656365697665722072656a656374656420455448207472616e736665720000604482015260640161093f565b6016546040516000916001600160a01b03169061753090869084818181858888f193505050503d8060008114611ba2576040519150601f19603f3d011682016040523d82523d6000602084013e611ba7565b606091505b5050905080611bf85760405162461bcd60e51b815260206004820152601e60248201527f72656365697665722072656a656374656420455448207472616e736665720000604482015260640161093f565b8a15611cd05760175460155460405163f305d71960e01b8152306004820152602481018e905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990879060c40160606040518083038185885af1158015611c6e573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611c939190612180565b505060408051878152602081018e90527f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450692500160405180910390a15b5050601c805460ff1916905550505050505050505050565b6013546018546000918291611d1a9190610d3e90611d13906001600160a01b03898116911614610f59565b869061166f565b30600090815260096020526040902054909150611d379082611610565b30600081815260096020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611d889085815260200190565b60405180910390a361113383826115ce565b60008183611dbb5760405162461bcd60e51b815260040161093f9190611dc8565b5060006111338486612070565b600060208083528351808285015260005b81811015611df557858101830151858201604001528201611dd9565b81811115611e07576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461096657600080fd5b60008060408385031215611e4557600080fd5b8235611e5081611e1d565b946020939093013593505050565b80358015158114611e6e57600080fd5b919050565b600060208284031215611e8557600080fd5b610a3882611e5e565b60008060408385031215611ea157600080fd5b50508035926020909101359150565b600080600060608486031215611ec557600080fd5b8335611ed081611e1d565b92506020840135611ee081611e1d565b929592945050506040919091013590565b60008060408385031215611f0457600080fd5b611f0d83611e5e565b9150602083013560ff81168114611f2357600080fd5b809150509250929050565b600060208284031215611f4057600080fd5b8135610a3881611e1d565b60008060408385031215611f5e57600080fd5b8235611f6981611e1d565b9150611f7760208401611e5e565b90509250929050565b600060208284031215611f9257600080fd5b5035919050565b60008060008060808587031215611faf57600080fd5b5050823594602084013594506040840135936060013592509050565b60008060408385031215611fde57600080fd5b8235611fe981611e1d565b91506020830135611f2381611e1d565b6000806040838503121561200c57600080fd5b611e5083611e5e565b6020808252600b908201526a085055551213d49256915160aa1b604082015260600190565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008261208d57634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156120a457600080fd5b5051919050565b600082198211156120be576120be61205a565b500190565b6000828210156120d5576120d561205a565b500390565b60008160001904831182151516156120f4576120f461205a565b500290565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561215f5784516001600160a01b03168352938301939183019160010161213a565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561219557600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220f97b0ab4f4fb52da22ba9c8f89b427b05b74ffa63f5b0f2e196faab57ca246a564736f6c634300080e0033
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.