ERC-20
Overview
Max Total Supply
69,696,969 VISTAP
Holders
168
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
27,473.876259153 VISTAPValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
VISTAP
Compiler Version
v0.8.19+commit.7dd6d404
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: Unlicensed // // https://x.com/VistaPrinter // https://t.me/vistaprintererc // https://www.vistaprinter.xyz/ pragma solidity 0.8.19; 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; } } /** * ERC20 standard interface. */ interface IERC20 { 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; constructor(address _owner) { owner = _owner; } /** * Function modifier to require caller to be contract deployer */ modifier onlyOwner() { require(isOwner(msg.sender), "!Owner"); _; } /** * Check if address is owner */ function isOwner(address account) public view returns (bool) { return account == owner; } /** * Transfer ownership to new address. Caller must be deployer. Leaves old deployer authorized */ function transferOwnership(address payable adr) public onlyOwner { owner = adr; 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; } interface IDividendDistributor { function setShare(address shareholder, uint256 amount) external; function deposit(uint256 amount) external; function claimDividend(address shareholder) external; function getDividendsClaimedOf (address shareholder) external returns (uint256); } contract DividendDistributor is IDividendDistributor { using SafeMath for uint256; address public _token; address public _owner; address public immutable TOKEN = address(0xC9bCa88B04581699fAb5aa276CCafF7Df957cbbf); //UNI TO CHANGE ADD VISTA ADDR struct Share { uint256 amount; uint256 totalExcluded; uint256 totalClaimed; } address[] private shareholders; mapping (address => uint256) private shareholderIndexes; mapping (address => Share) public shares; uint256 public totalShares; uint256 public totalDividends; uint256 public totalClaimed; uint256 public dividendsPerShare; uint256 private dividendsPerShareAccuracyFactor = 10 ** 36; modifier onlyToken() { require(msg.sender == _token); _; } modifier onlyOwner() { require(msg.sender == _owner); _; } constructor (address owner) { _token = msg.sender; _owner = owner; } receive() external payable { } function setShare(address shareholder, uint256 amount) external override onlyToken { if(shares[shareholder].amount > 0){ distributeDividend(shareholder); } if(amount > 0 && shares[shareholder].amount == 0){ addShareholder(shareholder); }else if(amount == 0 && shares[shareholder].amount > 0){ removeShareholder(shareholder); } totalShares = totalShares.sub(shares[shareholder].amount).add(amount); shares[shareholder].amount = amount; shares[shareholder].totalExcluded = getCumulativeDividends(shares[shareholder].amount); } function deposit(uint256 amount) external override onlyToken { if (amount > 0) { totalDividends = totalDividends.add(amount); dividendsPerShare = dividendsPerShare.add(dividendsPerShareAccuracyFactor.mul(amount).div(totalShares)); } } function distributeDividend(address shareholder) internal { if(shares[shareholder].amount == 0){ return; } uint256 amount = getClaimableDividendOf(shareholder); if(amount > 0){ totalClaimed = totalClaimed.add(amount); shares[shareholder].totalClaimed = shares[shareholder].totalClaimed.add(amount); shares[shareholder].totalExcluded = getCumulativeDividends(shares[shareholder].amount); IERC20(TOKEN).transfer(shareholder, amount); } } function claimDividend(address shareholder) external override onlyToken { distributeDividend(shareholder); } function getClaimableDividendOf(address shareholder) public view returns (uint256) { if(shares[shareholder].amount == 0){ return 0; } uint256 shareholderTotalDividends = getCumulativeDividends(shares[shareholder].amount); uint256 shareholderTotalExcluded = shares[shareholder].totalExcluded; if(shareholderTotalDividends <= shareholderTotalExcluded){ return 0; } return shareholderTotalDividends.sub(shareholderTotalExcluded); } function getCumulativeDividends(uint256 share) internal view returns (uint256) { return share.mul(dividendsPerShare).div(dividendsPerShareAccuracyFactor); } function addShareholder(address shareholder) internal { shareholderIndexes[shareholder] = shareholders.length; shareholders.push(shareholder); } function removeShareholder(address shareholder) internal { shareholders[shareholderIndexes[shareholder]] = shareholders[shareholders.length-1]; shareholderIndexes[shareholders[shareholders.length-1]] = shareholderIndexes[shareholder]; shareholders.pop(); } function manualSend(uint256 amount, address holder) external onlyOwner { uint256 contractETHBalance = address(this).balance; payable(holder).transfer(amount > 0 ? amount : contractETHBalance); } function getDividendsClaimedOf (address shareholder) external view returns (uint256) { require (shares[shareholder].amount > 0, "You're not a PRINTER shareholder!"); return shares[shareholder].totalClaimed; } } contract VISTAP is IERC20, Auth { using SafeMath for uint256; address private WETH; address private DEAD = 0x000000000000000000000000000000000000dEaD; address private ZERO = 0x0000000000000000000000000000000000000000; address public immutable VISTA = address(0xC9bCa88B04581699fAb5aa276CCafF7Df957cbbf); //VISTA TO CHANGE string private constant _name = "Vista Printer"; string private constant _symbol = "VISTAP"; uint8 private constant _decimals = 9; uint256 private _totalSupply = 69696969 * (10 ** _decimals); uint256 private _maxTxAmountBuy = _totalSupply; uint256 private teamtokens = 3484848 * (10 ** _decimals); mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => uint256) private cooldown; mapping (address => bool) private isFeeExempt; mapping (address => bool) private isDividendExempt; mapping (address => bool) private isBot; uint256 private totalFee = 6; uint256 private feeDenominator = 100; address payable public marketingWallet = payable(0x159aF07fA5024790b8529ec40d2EA5E289908DE9); address payable public devWallet = payable(0x29fce56f14656c98DB22A8397Ad17cE7254568eB); IDEXRouter public router; address public pair; uint256 public launchedAt; bool private tradingOpen; bool private buyLimit = true; uint256 private maxBuy = 1393939 * (10 ** _decimals); uint256 public numTokensSellToAddToLiquidity = 278787 * 10**9; uint256 private liq = 6969696 * 10**9; DividendDistributor private distributor; bool public blacklistEnabled = false; bool private inSwap; bool public stable = false; modifier swapping() { inSwap = true; _; inSwap = false; } constructor ( address _owner ) Auth(_owner) { router = IDEXRouter(0xEAaa41cB2a64B11FE761D41E747c032CdD60CaCE); WETH = router.WETH(); pair = IDEXFactory(router.factory()).createPair(address(this), WETH); _allowances[address(this)][address(router)] = type(uint256).max; distributor = new DividendDistributor(_owner); isFeeExempt[_owner] = true; isFeeExempt[marketingWallet] = true; isDividendExempt[pair] = true; isDividendExempt[address(this)] = true; isDividendExempt[DEAD] = true; _balances[_owner] = _totalSupply; emit Transfer(address(0), _owner, _totalSupply.sub(teamtokens).sub(liq)); emit Transfer(address(0), devWallet, teamtokens); emit Transfer(address(0), address(this), liq); } 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 (sender!= owner && recipient!= owner) require(tradingOpen, "Trading not yet enabled."); //transfers disabled before openTrading if (blacklistEnabled) { require (!isBot[sender] && !isBot[recipient], "Bot!"); } if (buyLimit) { if (sender!=owner && recipient!= owner) require (amount<=maxBuy, "Too much sir"); } if (sender == pair && recipient != address(router) && !isFeeExempt[recipient]) { require (cooldown[recipient] < block.timestamp); cooldown[recipient] = block.timestamp + 60 seconds; } if(inSwap){ return _basicTransfer(sender, recipient, amount); } uint256 contractTokenBalance = balanceOf(address(this)); bool overMinTokenBalance = contractTokenBalance >= numTokensSellToAddToLiquidity; bool shouldSwapBack = (overMinTokenBalance && recipient==pair && balanceOf(address(this)) > 0); if(shouldSwapBack){ swapBack(); } _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); uint256 amountReceived = shouldTakeFee(sender, recipient) ? takeFee(sender, amount) : amount; _balances[recipient] = _balances[recipient].add(amountReceived); if(sender != pair && !isDividendExempt[sender]){ try distributor.setShare(sender, _balances[sender]) {} catch {} } if(recipient != pair && !isDividendExempt[recipient]){ try distributor.setShare(recipient, _balances[recipient]) {} catch {} } 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 shouldTakeFee(address sender, address recipient) internal view returns (bool) { return ( !(isFeeExempt[sender] || isFeeExempt[recipient]) && (sender == pair || recipient == pair) ); } function takeFee(address sender, uint256 amount) internal returns (uint256) { uint256 feeAmount = amount.mul(totalFee).div(feeDenominator); _balances[address(this)] = _balances[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); return amount.sub(feeAmount); } function swapBack() internal swapping { uint256 amountToSwap = 0; if(!stable){ amountToSwap = numTokensSellToAddToLiquidity; } else{ amountToSwap = balanceOf(address(this)); } swapTokensForEth(amountToSwap.div(2)); swapTokensForTOKEN(amountToSwap.div(2)); uint256 dividends = IERC20(VISTA).balanceOf(address(this)); bool success = IERC20(VISTA).transfer(address(distributor), dividends); if (success) { distributor.deposit(dividends); } payable(marketingWallet).transfer(address(this).balance); } function swapTokensForTOKEN(uint256 tokenAmount) private { address[] memory path = new address[](3); path[0] = address(this); path[1] = WETH; path[2] = VISTA; // make the swap router.swapExactTokensForTokensSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function swapTokensForEth(uint256 tokenAmount) private { // generate the uniswap pair path of token -> weth address[] memory path = new address[](2); path[0] = address(this); path[1] = WETH; // make the swap router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, // accept any amount of ETH path, address(this), block.timestamp ); } function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private { // add the liquidity router.addLiquidityETH{value: ethAmount}( address(this), tokenAmount, 0, // slippage is unavoidable 0, // slippage is unavoidable owner, block.timestamp ); } function openTrading() external onlyOwner { launchedAt = block.number; tradingOpen = true; } function setBot(address _address, bool toggle) external onlyOwner { isBot[_address] = toggle; _setIsDividendExempt(_address, toggle); } function _setIsDividendExempt(address holder, bool exempt) internal { require(holder != address(this) && holder != pair); isDividendExempt[holder] = exempt; if(exempt){ distributor.setShare(holder, 0); }else{ distributor.setShare(holder, _balances[holder]); } } function setIsDividendExempt(address holder, bool exempt) external onlyOwner { _setIsDividendExempt(holder, exempt); } function setIsFeeExempt(address holder, bool exempt) external onlyOwner { isFeeExempt[holder] = exempt; } function setFee (uint256 _fee) external onlyOwner { require (_fee <= 14, "Fee can't exceed 14%"); totalFee = _fee; } function manualSend() external onlyOwner { uint256 contractETHBalance = address(this).balance; payable(marketingWallet).transfer(contractETHBalance); } function setStable(bool _stable) external onlyOwner { stable = _stable; } function claimDividend() external { distributor.claimDividend(msg.sender); } function claimDividend(address holder) external onlyOwner { distributor.claimDividend(holder); } function getClaimableDividendOf(address shareholder) public view returns (uint256) { return distributor.getClaimableDividendOf(shareholder); } function manualBurn(uint256 amount) external onlyOwner returns (bool) { return _basicTransfer(address(this), DEAD, amount); } function getCirculatingSupply() public view returns (uint256) { return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(ZERO)); } function setMarketingWallet(address _marketingWallet) external onlyOwner { marketingWallet = payable(_marketingWallet); } function getTotalDividends() external view returns (uint256) { return distributor.totalDividends(); } function getTotalClaimed() external view returns (uint256) { return distributor.totalClaimed(); } function getDividendsClaimedOf (address shareholder) external view returns (uint256) { return distributor.getDividendsClaimedOf(shareholder); } function removeBuyLimit() external onlyOwner { buyLimit = false; } function checkBot(address account) public view returns (bool) { return isBot[account]; } function checkPair() public view returns (address) { return pair; } function setBlacklistEnabled() external onlyOwner { require (blacklistEnabled == false, "can only be called once"); blacklistEnabled = true; } function setSwapThresholdAmount (uint256 amount) external onlyOwner { require (amount <= _totalSupply.div(100), "can't exceed 1%"); numTokensSellToAddToLiquidity = amount * 10 ** 9; } function getPrice() public view returns (uint256) { uint256 memepBalance = this.balanceOf(pair); uint256 ethBalance = IERC20(WETH).balanceOf(pair); require(memepBalance > 0, "divison by zero error"); uint256 price = ethBalance.mul(1e9).div(memepBalance); return price; } }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"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":"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":"VISTA","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"blacklistEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"checkBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"checkPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"}],"name":"claimDividend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimDividend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"devWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"shareholder","type":"address"}],"name":"getClaimableDividendOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"shareholder","type":"address"}],"name":"getDividendsClaimedOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalClaimed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalDividends","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"manualBurn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"numTokensSellToAddToLiquidity","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeBuyLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"setBlacklistEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"toggle","type":"bool"}],"name":"setBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_fee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsDividendExempt","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":"_marketingWallet","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_stable","type":"bool"}],"name":"setStable","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setSwapThresholdAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"adr","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60a0604052600280546001600160a01b031990811661dead1790915560038054909116905573c9bca88b04581699fab5aa276ccaff7df957cbbf6080526200004a6009600a62000674565b6200005a906304277dc962000685565b6004819055600555620000706009600a62000674565b6200007f9062352cb062000685565b6006908155600d556064600e55600f80546001600160a01b031990811673159af07fa5024790b8529ec40d2ea5e289908de917909155601080549091167329fce56f14656c98db22a8397ad17ce7254568eb1790556014805461ff001916610100179055620000f16009600a62000674565b62000100906215451362000685565b60155565fd8e281a5e006016556618c2e6ce45c0006017556018805462ff00ff60a01b191690553480156200013457600080fd5b50604051620038633803806200386383398101604081905262000157916200069f565b600080546001600160a01b03199081166001600160a01b038416179091556011805473eaaa41cb2a64b11fe761d41e747c032cdd60cace921682179055604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa158015620001d0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001f691906200069f565b600180546001600160a01b0319166001600160a01b039283161790556011546040805163c45a015560e01b81529051919092169163c45a01559160048083019260209291908290030181865afa15801562000255573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200027b91906200069f565b6001546040516364e329cb60e11b81523060048201526001600160a01b03918216602482015291169063c9c65396906044016020604051808303816000875af1158015620002cd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002f391906200069f565b601280546001600160a01b0319166001600160a01b0392831617905530600090815260086020908152604080832060115490941683529290528190206000199055518190620003429062000553565b6001600160a01b039091168152602001604051809103906000f0801580156200036f573d6000803e3d6000fd5b50601880546001600160a01b0319166001600160a01b039283161790558181166000818152600a60209081526040808320805460ff199081166001908117909255600f5487168552828520805482168317905560125487168552600b845282852080548216831790553085528285208054821683179055600254909616845281842080549096161790945560045483835260079091529281208390556017546006549293919260008051602062003843833981519152926200043f9291620004389190620004b8565b90620004b8565b60405190815260200160405180910390a36010546006546040519081526001600160a01b0390911690600090600080516020620038438339815191529060200160405180910390a36017546040519081523090600090600080516020620038438339815191529060200160405180910390a35062000737565b60006200050283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506200050b60201b60201c565b90505b92915050565b600081848411156200053b5760405162461bcd60e51b8152600401620005329190620006d1565b60405180910390fd5b5060006200054a848662000721565b95945050505050565b610d888062002abb83390190565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620005b85781600019048211156200059c576200059c62000561565b80851615620005aa57918102915b93841c93908002906200057c565b509250929050565b600082620005d15750600162000505565b81620005e05750600062000505565b8160018114620005f95760028114620006045762000624565b600191505062000505565b60ff84111562000618576200061862000561565b50506001821b62000505565b5060208310610133831016604e8410600b841016171562000649575081810a62000505565b62000655838362000577565b80600019048211156200066c576200066c62000561565b029392505050565b60006200050260ff841683620005c0565b808202811582820484141762000505576200050562000561565b600060208284031215620006b257600080fd5b81516001600160a01b0381168114620006ca57600080fd5b9392505050565b600060208083528351808285015260005b818110156200070057858101830151858201604001528201620006e2565b506000604082860101526040601f19601f8301168501019250505092915050565b8181038181111562000505576200050562000561565b608051612353620007686000396000818161076001528181611b7f01528181611c210152611fb801526123536000f3fe60806040526004361061026b5760003560e01c8063764ca51211610144578063bffb691d116100b6578063dd62ed3e1161007a578063dd62ed3e14610782578063f0fc6bca146107c8578063f2fde38b146107dd578063f4293890146107fd578063f708a64f14610812578063f887ea401461083257600080fd5b8063bffb691d146106e4578063c9567bf914610705578063d0e3906a1461071a578063d12a768814610738578063da89f0f21461074e57600080fd5b806398d5fdca1161010857806398d5fdca14610620578063a60a10c914610635578063a8aa1b3114610655578063a9059cbb14610675578063b1a4e0dc14610695578063bf56b371146106ce57600080fd5b8063764ca5121461057e578063893d20e8146105935780638ea5220f146105b15780638ecc37fb146105d157806395d89b41146105f157600080fd5b8063342aa8b5116101dd578063658d4b7f116101a1578063658d4b7f146104a657806367ee5f09146104c657806369fe0e2d146104db57806370a08231146104fb578063736a83a11461053157806375f0a8741461054657600080fd5b8063342aa8b5146104115780633e07ce5b14610431578063571ac8b0146104465780635cc33f74146104665780635d098b381461048657600080fd5b806323b635851161022f57806323b635851461035157806323b872dd1461037157806329e04b4a146103915780632b112e49146103b15780632f54bf6e146103c6578063313ce567146103f557600080fd5b806306fdde0314610277578063095ea7b3146102bf57806315f7e05e146102ef57806318160ddd1461031157806322be3de11461033057600080fd5b3661027257005b600080fd5b34801561028357600080fd5b5060408051808201909152600d81526c2b34b9ba3090283934b73a32b960991b60208201525b6040516102b69190612030565b60405180910390f35b3480156102cb57600080fd5b506102df6102da366004612096565b610852565b60405190151581526020016102b6565b3480156102fb57600080fd5b5061030f61030a3660046120c2565b6108bf565b005b34801561031d57600080fd5b506004545b6040519081526020016102b6565b34801561033c57600080fd5b506018546102df90600160b01b900460ff1681565b34801561035d57600080fd5b506102df61036c3660046120df565b610954565b34801561037d57600080fd5b506102df61038c3660046120f8565b610997565b34801561039d57600080fd5b5061030f6103ac3660046120df565b610a59565b3480156103bd57600080fd5b50610322610ae6565b3480156103d257600080fd5b506102df6103e13660046120c2565b6000546001600160a01b0391821691161490565b34801561040157600080fd5b50604051600981526020016102b6565b34801561041d57600080fd5b5061030f61042c366004612147565b610b38565b34801561043d57600080fd5b5061030f610b94565b34801561045257600080fd5b506102df6104613660046120c2565b610bcb565b34801561047257600080fd5b506103226104813660046120c2565b610bd9565b34801561049257600080fd5b5061030f6104a13660046120c2565b610c49565b3480156104b257600080fd5b5061030f6104c1366004612147565b610c95565b3480156104d257600080fd5b50610322610cea565b3480156104e757600080fd5b5061030f6104f63660046120df565b610d58565b34801561050757600080fd5b506103226105163660046120c2565b6001600160a01b031660009081526007602052604090205490565b34801561053d57600080fd5b50610322610dcf565b34801561055257600080fd5b50600f54610566906001600160a01b031681565b6040516001600160a01b0390911681526020016102b6565b34801561058a57600080fd5b5061030f610e19565b34801561059f57600080fd5b506000546001600160a01b0316610566565b3480156105bd57600080fd5b50601054610566906001600160a01b031681565b3480156105dd57600080fd5b506103226105ec3660046120c2565b610eb2565b3480156105fd57600080fd5b5060408051808201909152600681526505649535441560d41b60208201526102a9565b34801561062c57600080fd5b50610322610ee5565b34801561064157600080fd5b5061030f610650366004612180565b611038565b34801561066157600080fd5b50601254610566906001600160a01b031681565b34801561068157600080fd5b506102df610690366004612096565b611080565b3480156106a157600080fd5b506102df6106b03660046120c2565b6001600160a01b03166000908152600c602052604090205460ff1690565b3480156106da57600080fd5b5061032260135481565b3480156106f057600080fd5b506018546102df90600160a01b900460ff1681565b34801561071157600080fd5b5061030f61108d565b34801561072657600080fd5b506012546001600160a01b0316610566565b34801561074457600080fd5b5061032260165481565b34801561075a57600080fd5b506105667f000000000000000000000000000000000000000000000000000000000000000081565b34801561078e57600080fd5b5061032261079d36600461219d565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b3480156107d457600080fd5b5061030f6110ca565b3480156107e957600080fd5b5061030f6107f83660046120c2565b611129565b34801561080957600080fd5b5061030f6111a7565b34801561081e57600080fd5b5061030f61082d366004612147565b61120b565b34801561083e57600080fd5b50601154610566906001600160a01b031681565b3360008181526008602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906108ad9086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b031633146108f25760405162461bcd60e51b81526004016108e9906121cb565b60405180910390fd5b601854604051630afbf02f60e11b81526001600160a01b038381166004830152909116906315f7e05e90602401600060405180830381600087803b15801561093957600080fd5b505af115801561094d573d6000803e3d6000fd5b5050505050565b600080546001600160a01b0316331461097f5760405162461bcd60e51b81526004016108e9906121cb565b6002546108b99030906001600160a01b03168461123f565b6001600160a01b038316600090815260086020908152604080832033845290915281205460001914610a44576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600882528381203382529091529190912054610a1f918490611325565b6001600160a01b03851660009081526008602090815260408083203384529091529020555b610a4f84848461135f565b90505b9392505050565b6000546001600160a01b03163314610a835760405162461bcd60e51b81526004016108e9906121cb565b600454610a9190606461188a565b811115610ad25760405162461bcd60e51b815260206004820152600f60248201526e63616e27742065786365656420312560881b60448201526064016108e9565b610ae081633b9aca00612201565b60165550565b6003546001600160a01b0316600090815260076020526040812054610b33906002546001600160a01b0316600090815260076020526040902054610b2d90600454906118cc565b906118cc565b905090565b6000546001600160a01b03163314610b625760405162461bcd60e51b81526004016108e9906121cb565b6001600160a01b0382166000908152600c60205260409020805460ff1916821515179055610b90828261190e565b5050565b6000546001600160a01b03163314610bbe5760405162461bcd60e51b81526004016108e9906121cb565b6014805461ff0019169055565b60006108b982600019610852565b601854604051631730cfdd60e21b81526001600160a01b0383811660048301526000921690635cc33f74906024015b602060405180830381865afa158015610c25573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b99190612218565b6000546001600160a01b03163314610c735760405162461bcd60e51b81526004016108e9906121cb565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610cbf5760405162461bcd60e51b81526004016108e9906121cb565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b6018546040805163997664d760e01b815290516000926001600160a01b03169163997664d79160048083019260209291908290030181865afa158015610d34573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b339190612218565b6000546001600160a01b03163314610d825760405162461bcd60e51b81526004016108e9906121cb565b600e811115610dca5760405162461bcd60e51b81526020600482015260146024820152734665652063616e2774206578636565642031342560601b60448201526064016108e9565b600d55565b6018546040805163d54ad2a160e01b815290516000926001600160a01b03169163d54ad2a19160048083019260209291908290030181865afa158015610d34573d6000803e3d6000fd5b6000546001600160a01b03163314610e435760405162461bcd60e51b81526004016108e9906121cb565b601854600160a01b900460ff1615610e9d5760405162461bcd60e51b815260206004820152601760248201527f63616e206f6e6c792062652063616c6c6564206f6e636500000000000000000060448201526064016108e9565b6018805460ff60a01b1916600160a01b179055565b601854604051638ecc37fb60e01b81526001600160a01b0383811660048301526000921690638ecc37fb90602401610c08565b6012546040516370a0823160e01b81526001600160a01b039091166004820152600090819030906370a0823190602401602060405180830381865afa158015610f32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f569190612218565b6001546012546040516370a0823160e01b81526001600160a01b0391821660048201529293506000929116906370a0823190602401602060405180830381865afa158015610fa8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fcc9190612218565b9050600082116110165760405162461bcd60e51b81526020600482015260156024820152743234bb34b9b7b710313c903d32b9379032b93937b960591b60448201526064016108e9565b60006110308361102a84633b9aca00611a1f565b9061188a565b949350505050565b6000546001600160a01b031633146110625760405162461bcd60e51b81526004016108e9906121cb565b60188054911515600160b01b0260ff60b01b19909216919091179055565b6000610a5233848461135f565b6000546001600160a01b031633146110b75760405162461bcd60e51b81526004016108e9906121cb565b436013556014805460ff19166001179055565b601854604051630afbf02f60e11b81523360048201526001600160a01b03909116906315f7e05e90602401600060405180830381600087803b15801561110f57600080fd5b505af1158015611123573d6000803e3d6000fd5b50505050565b6000546001600160a01b031633146111535760405162461bcd60e51b81526004016108e9906121cb565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b6000546001600160a01b031633146111d15760405162461bcd60e51b81526004016108e9906121cb565b600f5460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610b90573d6000803e3d6000fd5b6000546001600160a01b031633146112355760405162461bcd60e51b81526004016108e9906121cb565b610b90828261190e565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600790915291822054611290918490611325565b6001600160a01b0380861660009081526007602052604080822093909355908516815220546112bf9083611aa1565b6001600160a01b0380851660008181526007602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113139086815260200190565b60405180910390a35060019392505050565b600081848411156113495760405162461bcd60e51b81526004016108e99190612030565b5060006113568486612231565b95945050505050565b600080546001600160a01b0385811691161480159061138c57506000546001600160a01b03848116911614155b156113e35760145460ff166113e35760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c65642e000000000000000060448201526064016108e9565b601854600160a01b900460ff161561146c576001600160a01b0384166000908152600c602052604090205460ff1615801561143757506001600160a01b0383166000908152600c602052604090205460ff16155b61146c5760405162461bcd60e51b81526004016108e990602080825260049082015263426f742160e01b604082015260600190565b601454610100900460ff16156114ee576000546001600160a01b038581169116148015906114a857506000546001600160a01b03848116911614155b156114ee576015548211156114ee5760405162461bcd60e51b815260206004820152600c60248201526b2a37b79036bab1b41039b4b960a11b60448201526064016108e9565b6012546001600160a01b03858116911614801561151957506011546001600160a01b03848116911614155b801561153e57506001600160a01b0383166000908152600a602052604090205460ff16155b1561158c576001600160a01b038316600090815260096020526040902054421161156757600080fd5b61157242603c612244565b6001600160a01b0384166000908152600960205260409020555b601854600160a81b900460ff16156115b0576115a984848461123f565b9050610a52565b3060009081526007602052604081205460165490919082108015919082906115e557506012546001600160a01b038781169116145b80156115fe575030600090815260076020526040812054115b9050801561160e5761160e611b00565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038a16600090815260079091529190912054611660918790611325565b6001600160a01b0388166000908152600760205260408120919091556116868888611d43565b611690578561169a565b61169a8887611db8565b6001600160a01b0388166000908152600760205260409020549091506116c09082611aa1565b6001600160a01b0380891660009081526007602052604090209190915560125489821691161480159061170c57506001600160a01b0388166000908152600b602052604090205460ff16155b15611782576018546001600160a01b0389811660008181526007602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561176f57600080fd5b505af1925050508015611780575060015b505b6012546001600160a01b038881169116148015906117b957506001600160a01b0387166000908152600b602052604090205460ff16155b1561182f576018546001600160a01b0388811660008181526007602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561181c57600080fd5b505af192505050801561182d575060015b505b866001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161187491815260200190565b60405180910390a3506001979650505050505050565b6000610a5283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e56565b6000610a5283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611325565b6001600160a01b038216301480159061193557506012546001600160a01b03838116911614155b61193e57600080fd5b6001600160a01b0382166000908152600b60205260409020805460ff191682158015919091179091556119d657601854604051630a5b654b60e11b81526001600160a01b03848116600483015260006024830152909116906314b6ca96906044015b600060405180830381600087803b1580156119ba57600080fd5b505af11580156119ce573d6000803e3d6000fd5b505050505050565b6018546001600160a01b0383811660008181526007602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca96906044016119a0565b600082600003611a31575060006108b9565b6000611a3d8385612201565b905082611a4a8583612257565b14610a525760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016108e9565b600080611aae8385612244565b905083811015610a525760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016108e9565b6018805460ff60a81b1916600160a81b1790819055600090600160b01b900460ff16611b2f5750601654611b41565b50306000908152600760205260409020545b611b54611b4f82600261188a565b611e84565b611b67611b6282600261188a565b611f2f565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa158015611bce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bf29190612218565b60185460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529192506000917f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303816000875af1158015611c6c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c909190612279565b90508015611cf75760185460405163b6b55f2560e01b8152600481018490526001600160a01b039091169063b6b55f2590602401600060405180830381600087803b158015611cde57600080fd5b505af1158015611cf2573d6000803e3d6000fd5b505050505b600f546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015611d30573d6000803e3d6000fd5b50506018805460ff60a81b191690555050565b6001600160a01b0382166000908152600a602052604081205460ff1680611d8257506001600160a01b0382166000908152600a602052604090205460ff165b158015610a5257506012546001600160a01b0384811691161480610a525750506012546001600160a01b03908116911614919050565b600080611dd6600e5461102a600d5486611a1f90919063ffffffff16565b30600090815260076020526040902054909150611df39082611aa1565b30600081815260076020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611e449085815260200190565b60405180910390a361103083826118cc565b60008183611e775760405162461bcd60e51b81526004016108e99190612030565b5060006113568486612257565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611eb957611eb9612296565b6001600160a01b0392831660209182029290920101526001805483519216918391908110611ee957611ee9612296565b6001600160a01b03928316602091820292909201015260115460405163791ac94760e01b815291169063791ac947906119a09085906000908690309042906004016122ac565b60408051600380825260808201909252600091602082016060803683370190505090503081600081518110611f6657611f66612296565b6001600160a01b0392831660209182029290920101526001805483519216918391908110611f9657611f96612296565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600281518110611fea57611fea612296565b6001600160a01b039283166020918202929092010152601154604051635c11d79560e01b8152911690635c11d795906119a09085906000908690309042906004016122ac565b600060208083528351808285015260005b8181101561205d57858101830151858201604001528201612041565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461209357600080fd5b50565b600080604083850312156120a957600080fd5b82356120b48161207e565b946020939093013593505050565b6000602082840312156120d457600080fd5b8135610a528161207e565b6000602082840312156120f157600080fd5b5035919050565b60008060006060848603121561210d57600080fd5b83356121188161207e565b925060208401356121288161207e565b929592945050506040919091013590565b801515811461209357600080fd5b6000806040838503121561215a57600080fd5b82356121658161207e565b9150602083013561217581612139565b809150509250929050565b60006020828403121561219257600080fd5b8135610a5281612139565b600080604083850312156121b057600080fd5b82356121bb8161207e565b915060208301356121758161207e565b60208082526006908201526510a7bbb732b960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176108b9576108b96121eb565b60006020828403121561222a57600080fd5b5051919050565b818103818111156108b9576108b96121eb565b808201808211156108b9576108b96121eb565b60008261227457634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561228b57600080fd5b8151610a5281612139565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156122fc5784516001600160a01b0316835293830193918301916001016122d7565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122013ce55a99799141e7b4f9dfefbfd9b1b6a8c5c7365bf0ccbb9a887b82227a6c364736f6c6343000813003360a060405273c9bca88b04581699fab5aa276ccaff7df957cbbf6080526ec097ce7bc90715b34b9f100000000060095534801561003b57600080fd5b50604051610d88380380610d8883398101604081905261005a9161008d565b60008054336001600160a01b031991821617909155600180549091166001600160a01b03929092169190911790556100bd565b60006020828403121561009f57600080fd5b81516001600160a01b03811681146100b657600080fd5b9392505050565b608051610ca96100df600039600081816101aa01526107410152610ca96000f3fe6080604052600436106100e15760003560e01c8063997664d71161007f578063ce7c2ac211610059578063ce7c2ac21461025a578063d54ad2a1146102b1578063e2d2e219146102c7578063ecd0c0c3146102dd57600080fd5b8063997664d714610204578063b2bdfa7b1461021a578063b6b55f251461023a57600080fd5b80633a98ef39116100bb5780633a98ef391461014f5780635cc33f741461017857806382bfefc8146101985780638ecc37fb146101e457600080fd5b80631014edf5146100ed57806314b6ca961461010f57806315f7e05e1461012f57600080fd5b366100e857005b600080fd5b3480156100f957600080fd5b5061010d610108366004610ad8565b6102fd565b005b34801561011b57600080fd5b5061010d61012a366004610b04565b61035d565b34801561013b57600080fd5b5061010d61014a366004610b2e565b6104d5565b34801561015b57600080fd5b5061016560055481565b6040519081526020015b60405180910390f35b34801561018457600080fd5b50610165610193366004610b2e565b6104f8565b3480156101a457600080fd5b506101cc7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161016f565b3480156101f057600080fd5b506101656101ff366004610b2e565b61058b565b34801561021057600080fd5b5061016560065481565b34801561022657600080fd5b506001546101cc906001600160a01b031681565b34801561024657600080fd5b5061010d610255366004610b49565b610616565b34801561026657600080fd5b50610296610275366004610b2e565b60046020526000908152604090208054600182015460029092015490919083565b6040805193845260208401929092529082015260600161016f565b3480156102bd57600080fd5b5061016560075481565b3480156102d357600080fd5b5061016560085481565b3480156102e957600080fd5b506000546101cc906001600160a01b031681565b6001546001600160a01b0316331461031457600080fd5b476001600160a01b0382166108fc8461032d578261032f565b845b6040518115909202916000818181858888f19350505050158015610357573d6000803e3d6000fd5b50505050565b6000546001600160a01b0316331461037457600080fd5b6001600160a01b0382166000908152600460205260409020541561039b5761039b82610670565b6000811180156103c157506001600160a01b038216600090815260046020526040902054155b1561042757600280546001600160a01b0384166000818152600360205260408120839055600183018455929092527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0180546001600160a01b031916909117905561045a565b8015801561044c57506001600160a01b03821660009081526004602052604090205415155b1561045a5761045a826107b4565b6001600160a01b03821660009081526004602052604090205460055461048b918391610485916108c9565b90610914565b6005556001600160a01b03821660009081526004602052604090208190556104b281610973565b6001600160a01b0390921660009081526004602052604090206001019190915550565b6000546001600160a01b031633146104ec57600080fd5b6104f581610670565b50565b6001600160a01b03811660009081526004602052604081205461056c5760405162461bcd60e51b815260206004820152602160248201527f596f75277265206e6f742061205052494e544552207368617265686f6c6465726044820152602160f81b60648201526084015b60405180910390fd5b506001600160a01b031660009081526004602052604090206002015490565b6001600160a01b03811660009081526004602052604081205481036105b257506000919050565b6001600160a01b0382166000908152600460205260408120546105d490610973565b6001600160a01b038416600090815260046020526040902060010154909150808211610604575060009392505050565b61060e82826108c9565b949350505050565b6000546001600160a01b0316331461062d57600080fd5b80156104f5576006546106409082610914565b60065560055460095461066a916106619161065b9085610990565b90610a12565b60085490610914565b60085550565b6001600160a01b03811660009081526004602052604081205490036106925750565b600061069d8261058b565b905080156107b0576007546106b29082610914565b6007556001600160a01b0382166000908152600460205260409020600201546106db9082610914565b6001600160a01b038316600090815260046020526040902060028101919091555461070590610973565b6001600160a01b03838116600081815260046020819052604091829020600101949094555163a9059cbb60e01b815292830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af115801561078a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ae9190610b62565b505b5050565b600280546107c490600190610b9a565b815481106107d4576107d4610bad565b60009182526020808320909101546001600160a01b038481168452600390925260409092205460028054929093169291811061081257610812610bad565b600091825260208083209190910180546001600160a01b0319166001600160a01b0394851617905591831681526003918290526040812054600280549193929161085e90600190610b9a565b8154811061086e5761086e610bad565b60009182526020808320909101546001600160a01b0316835282019290925260400190205560028054806108a4576108a4610bc3565b600082815260209020810160001990810180546001600160a01b031916905501905550565b600061090b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610a54565b90505b92915050565b6000806109218385610bd9565b90508381101561090b5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610563565b600061090e60095461065b6008548561099090919063ffffffff16565b6000826000036109a25750600061090e565b60006109ae8385610bec565b9050826109bb8583610c03565b1461090b5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610563565b600061090b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610a8e565b60008184841115610a785760405162461bcd60e51b81526004016105639190610c25565b506000610a858486610b9a565b95945050505050565b60008183610aaf5760405162461bcd60e51b81526004016105639190610c25565b506000610a858486610c03565b80356001600160a01b0381168114610ad357600080fd5b919050565b60008060408385031215610aeb57600080fd5b82359150610afb60208401610abc565b90509250929050565b60008060408385031215610b1757600080fd5b610b2083610abc565b946020939093013593505050565b600060208284031215610b4057600080fd5b61090b82610abc565b600060208284031215610b5b57600080fd5b5035919050565b600060208284031215610b7457600080fd5b8151801515811461090b57600080fd5b634e487b7160e01b600052601160045260246000fd5b8181038181111561090e5761090e610b84565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b8082018082111561090e5761090e610b84565b808202811582820484141761090e5761090e610b84565b600082610c2057634e487b7160e01b600052601260045260246000fd5b500490565b600060208083528351808285015260005b81811015610c5257858101830151858201604001528201610c36565b506000604082860101526040601f19601f830116850101925050509291505056fea26469706673582212200dcebc9a9eba4c07a9984bde8174dd3fc69266ec299ea3976eee914483b76ff464736f6c63430008130033ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef00000000000000000000000029fce56f14656c98db22a8397ad17ce7254568eb
Deployed Bytecode
0x60806040526004361061026b5760003560e01c8063764ca51211610144578063bffb691d116100b6578063dd62ed3e1161007a578063dd62ed3e14610782578063f0fc6bca146107c8578063f2fde38b146107dd578063f4293890146107fd578063f708a64f14610812578063f887ea401461083257600080fd5b8063bffb691d146106e4578063c9567bf914610705578063d0e3906a1461071a578063d12a768814610738578063da89f0f21461074e57600080fd5b806398d5fdca1161010857806398d5fdca14610620578063a60a10c914610635578063a8aa1b3114610655578063a9059cbb14610675578063b1a4e0dc14610695578063bf56b371146106ce57600080fd5b8063764ca5121461057e578063893d20e8146105935780638ea5220f146105b15780638ecc37fb146105d157806395d89b41146105f157600080fd5b8063342aa8b5116101dd578063658d4b7f116101a1578063658d4b7f146104a657806367ee5f09146104c657806369fe0e2d146104db57806370a08231146104fb578063736a83a11461053157806375f0a8741461054657600080fd5b8063342aa8b5146104115780633e07ce5b14610431578063571ac8b0146104465780635cc33f74146104665780635d098b381461048657600080fd5b806323b635851161022f57806323b635851461035157806323b872dd1461037157806329e04b4a146103915780632b112e49146103b15780632f54bf6e146103c6578063313ce567146103f557600080fd5b806306fdde0314610277578063095ea7b3146102bf57806315f7e05e146102ef57806318160ddd1461031157806322be3de11461033057600080fd5b3661027257005b600080fd5b34801561028357600080fd5b5060408051808201909152600d81526c2b34b9ba3090283934b73a32b960991b60208201525b6040516102b69190612030565b60405180910390f35b3480156102cb57600080fd5b506102df6102da366004612096565b610852565b60405190151581526020016102b6565b3480156102fb57600080fd5b5061030f61030a3660046120c2565b6108bf565b005b34801561031d57600080fd5b506004545b6040519081526020016102b6565b34801561033c57600080fd5b506018546102df90600160b01b900460ff1681565b34801561035d57600080fd5b506102df61036c3660046120df565b610954565b34801561037d57600080fd5b506102df61038c3660046120f8565b610997565b34801561039d57600080fd5b5061030f6103ac3660046120df565b610a59565b3480156103bd57600080fd5b50610322610ae6565b3480156103d257600080fd5b506102df6103e13660046120c2565b6000546001600160a01b0391821691161490565b34801561040157600080fd5b50604051600981526020016102b6565b34801561041d57600080fd5b5061030f61042c366004612147565b610b38565b34801561043d57600080fd5b5061030f610b94565b34801561045257600080fd5b506102df6104613660046120c2565b610bcb565b34801561047257600080fd5b506103226104813660046120c2565b610bd9565b34801561049257600080fd5b5061030f6104a13660046120c2565b610c49565b3480156104b257600080fd5b5061030f6104c1366004612147565b610c95565b3480156104d257600080fd5b50610322610cea565b3480156104e757600080fd5b5061030f6104f63660046120df565b610d58565b34801561050757600080fd5b506103226105163660046120c2565b6001600160a01b031660009081526007602052604090205490565b34801561053d57600080fd5b50610322610dcf565b34801561055257600080fd5b50600f54610566906001600160a01b031681565b6040516001600160a01b0390911681526020016102b6565b34801561058a57600080fd5b5061030f610e19565b34801561059f57600080fd5b506000546001600160a01b0316610566565b3480156105bd57600080fd5b50601054610566906001600160a01b031681565b3480156105dd57600080fd5b506103226105ec3660046120c2565b610eb2565b3480156105fd57600080fd5b5060408051808201909152600681526505649535441560d41b60208201526102a9565b34801561062c57600080fd5b50610322610ee5565b34801561064157600080fd5b5061030f610650366004612180565b611038565b34801561066157600080fd5b50601254610566906001600160a01b031681565b34801561068157600080fd5b506102df610690366004612096565b611080565b3480156106a157600080fd5b506102df6106b03660046120c2565b6001600160a01b03166000908152600c602052604090205460ff1690565b3480156106da57600080fd5b5061032260135481565b3480156106f057600080fd5b506018546102df90600160a01b900460ff1681565b34801561071157600080fd5b5061030f61108d565b34801561072657600080fd5b506012546001600160a01b0316610566565b34801561074457600080fd5b5061032260165481565b34801561075a57600080fd5b506105667f000000000000000000000000c9bca88b04581699fab5aa276ccaff7df957cbbf81565b34801561078e57600080fd5b5061032261079d36600461219d565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b3480156107d457600080fd5b5061030f6110ca565b3480156107e957600080fd5b5061030f6107f83660046120c2565b611129565b34801561080957600080fd5b5061030f6111a7565b34801561081e57600080fd5b5061030f61082d366004612147565b61120b565b34801561083e57600080fd5b50601154610566906001600160a01b031681565b3360008181526008602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906108ad9086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b031633146108f25760405162461bcd60e51b81526004016108e9906121cb565b60405180910390fd5b601854604051630afbf02f60e11b81526001600160a01b038381166004830152909116906315f7e05e90602401600060405180830381600087803b15801561093957600080fd5b505af115801561094d573d6000803e3d6000fd5b5050505050565b600080546001600160a01b0316331461097f5760405162461bcd60e51b81526004016108e9906121cb565b6002546108b99030906001600160a01b03168461123f565b6001600160a01b038316600090815260086020908152604080832033845290915281205460001914610a44576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600882528381203382529091529190912054610a1f918490611325565b6001600160a01b03851660009081526008602090815260408083203384529091529020555b610a4f84848461135f565b90505b9392505050565b6000546001600160a01b03163314610a835760405162461bcd60e51b81526004016108e9906121cb565b600454610a9190606461188a565b811115610ad25760405162461bcd60e51b815260206004820152600f60248201526e63616e27742065786365656420312560881b60448201526064016108e9565b610ae081633b9aca00612201565b60165550565b6003546001600160a01b0316600090815260076020526040812054610b33906002546001600160a01b0316600090815260076020526040902054610b2d90600454906118cc565b906118cc565b905090565b6000546001600160a01b03163314610b625760405162461bcd60e51b81526004016108e9906121cb565b6001600160a01b0382166000908152600c60205260409020805460ff1916821515179055610b90828261190e565b5050565b6000546001600160a01b03163314610bbe5760405162461bcd60e51b81526004016108e9906121cb565b6014805461ff0019169055565b60006108b982600019610852565b601854604051631730cfdd60e21b81526001600160a01b0383811660048301526000921690635cc33f74906024015b602060405180830381865afa158015610c25573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b99190612218565b6000546001600160a01b03163314610c735760405162461bcd60e51b81526004016108e9906121cb565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610cbf5760405162461bcd60e51b81526004016108e9906121cb565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b6018546040805163997664d760e01b815290516000926001600160a01b03169163997664d79160048083019260209291908290030181865afa158015610d34573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b339190612218565b6000546001600160a01b03163314610d825760405162461bcd60e51b81526004016108e9906121cb565b600e811115610dca5760405162461bcd60e51b81526020600482015260146024820152734665652063616e2774206578636565642031342560601b60448201526064016108e9565b600d55565b6018546040805163d54ad2a160e01b815290516000926001600160a01b03169163d54ad2a19160048083019260209291908290030181865afa158015610d34573d6000803e3d6000fd5b6000546001600160a01b03163314610e435760405162461bcd60e51b81526004016108e9906121cb565b601854600160a01b900460ff1615610e9d5760405162461bcd60e51b815260206004820152601760248201527f63616e206f6e6c792062652063616c6c6564206f6e636500000000000000000060448201526064016108e9565b6018805460ff60a01b1916600160a01b179055565b601854604051638ecc37fb60e01b81526001600160a01b0383811660048301526000921690638ecc37fb90602401610c08565b6012546040516370a0823160e01b81526001600160a01b039091166004820152600090819030906370a0823190602401602060405180830381865afa158015610f32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f569190612218565b6001546012546040516370a0823160e01b81526001600160a01b0391821660048201529293506000929116906370a0823190602401602060405180830381865afa158015610fa8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fcc9190612218565b9050600082116110165760405162461bcd60e51b81526020600482015260156024820152743234bb34b9b7b710313c903d32b9379032b93937b960591b60448201526064016108e9565b60006110308361102a84633b9aca00611a1f565b9061188a565b949350505050565b6000546001600160a01b031633146110625760405162461bcd60e51b81526004016108e9906121cb565b60188054911515600160b01b0260ff60b01b19909216919091179055565b6000610a5233848461135f565b6000546001600160a01b031633146110b75760405162461bcd60e51b81526004016108e9906121cb565b436013556014805460ff19166001179055565b601854604051630afbf02f60e11b81523360048201526001600160a01b03909116906315f7e05e90602401600060405180830381600087803b15801561110f57600080fd5b505af1158015611123573d6000803e3d6000fd5b50505050565b6000546001600160a01b031633146111535760405162461bcd60e51b81526004016108e9906121cb565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b6000546001600160a01b031633146111d15760405162461bcd60e51b81526004016108e9906121cb565b600f5460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610b90573d6000803e3d6000fd5b6000546001600160a01b031633146112355760405162461bcd60e51b81526004016108e9906121cb565b610b90828261190e565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600790915291822054611290918490611325565b6001600160a01b0380861660009081526007602052604080822093909355908516815220546112bf9083611aa1565b6001600160a01b0380851660008181526007602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113139086815260200190565b60405180910390a35060019392505050565b600081848411156113495760405162461bcd60e51b81526004016108e99190612030565b5060006113568486612231565b95945050505050565b600080546001600160a01b0385811691161480159061138c57506000546001600160a01b03848116911614155b156113e35760145460ff166113e35760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c65642e000000000000000060448201526064016108e9565b601854600160a01b900460ff161561146c576001600160a01b0384166000908152600c602052604090205460ff1615801561143757506001600160a01b0383166000908152600c602052604090205460ff16155b61146c5760405162461bcd60e51b81526004016108e990602080825260049082015263426f742160e01b604082015260600190565b601454610100900460ff16156114ee576000546001600160a01b038581169116148015906114a857506000546001600160a01b03848116911614155b156114ee576015548211156114ee5760405162461bcd60e51b815260206004820152600c60248201526b2a37b79036bab1b41039b4b960a11b60448201526064016108e9565b6012546001600160a01b03858116911614801561151957506011546001600160a01b03848116911614155b801561153e57506001600160a01b0383166000908152600a602052604090205460ff16155b1561158c576001600160a01b038316600090815260096020526040902054421161156757600080fd5b61157242603c612244565b6001600160a01b0384166000908152600960205260409020555b601854600160a81b900460ff16156115b0576115a984848461123f565b9050610a52565b3060009081526007602052604081205460165490919082108015919082906115e557506012546001600160a01b038781169116145b80156115fe575030600090815260076020526040812054115b9050801561160e5761160e611b00565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038a16600090815260079091529190912054611660918790611325565b6001600160a01b0388166000908152600760205260408120919091556116868888611d43565b611690578561169a565b61169a8887611db8565b6001600160a01b0388166000908152600760205260409020549091506116c09082611aa1565b6001600160a01b0380891660009081526007602052604090209190915560125489821691161480159061170c57506001600160a01b0388166000908152600b602052604090205460ff16155b15611782576018546001600160a01b0389811660008181526007602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561176f57600080fd5b505af1925050508015611780575060015b505b6012546001600160a01b038881169116148015906117b957506001600160a01b0387166000908152600b602052604090205460ff16155b1561182f576018546001600160a01b0388811660008181526007602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561181c57600080fd5b505af192505050801561182d575060015b505b866001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161187491815260200190565b60405180910390a3506001979650505050505050565b6000610a5283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e56565b6000610a5283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611325565b6001600160a01b038216301480159061193557506012546001600160a01b03838116911614155b61193e57600080fd5b6001600160a01b0382166000908152600b60205260409020805460ff191682158015919091179091556119d657601854604051630a5b654b60e11b81526001600160a01b03848116600483015260006024830152909116906314b6ca96906044015b600060405180830381600087803b1580156119ba57600080fd5b505af11580156119ce573d6000803e3d6000fd5b505050505050565b6018546001600160a01b0383811660008181526007602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca96906044016119a0565b600082600003611a31575060006108b9565b6000611a3d8385612201565b905082611a4a8583612257565b14610a525760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016108e9565b600080611aae8385612244565b905083811015610a525760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016108e9565b6018805460ff60a81b1916600160a81b1790819055600090600160b01b900460ff16611b2f5750601654611b41565b50306000908152600760205260409020545b611b54611b4f82600261188a565b611e84565b611b67611b6282600261188a565b611f2f565b6040516370a0823160e01b81523060048201526000907f000000000000000000000000c9bca88b04581699fab5aa276ccaff7df957cbbf6001600160a01b0316906370a0823190602401602060405180830381865afa158015611bce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bf29190612218565b60185460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529192506000917f000000000000000000000000c9bca88b04581699fab5aa276ccaff7df957cbbf9091169063a9059cbb906044016020604051808303816000875af1158015611c6c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c909190612279565b90508015611cf75760185460405163b6b55f2560e01b8152600481018490526001600160a01b039091169063b6b55f2590602401600060405180830381600087803b158015611cde57600080fd5b505af1158015611cf2573d6000803e3d6000fd5b505050505b600f546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015611d30573d6000803e3d6000fd5b50506018805460ff60a81b191690555050565b6001600160a01b0382166000908152600a602052604081205460ff1680611d8257506001600160a01b0382166000908152600a602052604090205460ff165b158015610a5257506012546001600160a01b0384811691161480610a525750506012546001600160a01b03908116911614919050565b600080611dd6600e5461102a600d5486611a1f90919063ffffffff16565b30600090815260076020526040902054909150611df39082611aa1565b30600081815260076020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611e449085815260200190565b60405180910390a361103083826118cc565b60008183611e775760405162461bcd60e51b81526004016108e99190612030565b5060006113568486612257565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611eb957611eb9612296565b6001600160a01b0392831660209182029290920101526001805483519216918391908110611ee957611ee9612296565b6001600160a01b03928316602091820292909201015260115460405163791ac94760e01b815291169063791ac947906119a09085906000908690309042906004016122ac565b60408051600380825260808201909252600091602082016060803683370190505090503081600081518110611f6657611f66612296565b6001600160a01b0392831660209182029290920101526001805483519216918391908110611f9657611f96612296565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000c9bca88b04581699fab5aa276ccaff7df957cbbf81600281518110611fea57611fea612296565b6001600160a01b039283166020918202929092010152601154604051635c11d79560e01b8152911690635c11d795906119a09085906000908690309042906004016122ac565b600060208083528351808285015260005b8181101561205d57858101830151858201604001528201612041565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461209357600080fd5b50565b600080604083850312156120a957600080fd5b82356120b48161207e565b946020939093013593505050565b6000602082840312156120d457600080fd5b8135610a528161207e565b6000602082840312156120f157600080fd5b5035919050565b60008060006060848603121561210d57600080fd5b83356121188161207e565b925060208401356121288161207e565b929592945050506040919091013590565b801515811461209357600080fd5b6000806040838503121561215a57600080fd5b82356121658161207e565b9150602083013561217581612139565b809150509250929050565b60006020828403121561219257600080fd5b8135610a5281612139565b600080604083850312156121b057600080fd5b82356121bb8161207e565b915060208301356121758161207e565b60208082526006908201526510a7bbb732b960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176108b9576108b96121eb565b60006020828403121561222a57600080fd5b5051919050565b818103818111156108b9576108b96121eb565b808201808211156108b9576108b96121eb565b60008261227457634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561228b57600080fd5b8151610a5281612139565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156122fc5784516001600160a01b0316835293830193918301916001016122d7565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122013ce55a99799141e7b4f9dfefbfd9b1b6a8c5c7365bf0ccbb9a887b82227a6c364736f6c63430008130033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000029fce56f14656c98db22a8397ad17ce7254568eb
-----Decoded View---------------
Arg [0] : _owner (address): 0x29fce56f14656c98DB22A8397Ad17cE7254568eB
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000029fce56f14656c98db22a8397ad17ce7254568eb
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.