Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Play-to-Earn
Overview
Max Total Supply
1,000,000 $VXON
Holders
294 (0.00%)
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 4 Decimals)
Balance
670.0958 $VXONValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
VoxNET
Compiler Version
v0.8.17+commit.8df45f5f
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion, Audited
Contract Source Code (Solidity Standard Json-Input format)Audit Report
/** * SPDX-License-Identifier: unlicensed * Web: voxnet.xyz * Community: discord.gg/voxnet */ pragma solidity 0.8.17; import "@uniswap/v2-core/contracts/interfaces/IERC20.sol"; import "@uniswap/v2-core/contracts/interfaces/IUniswapV2Pair.sol"; import "@uniswap/v2-periphery/contracts/interfaces/IUniswapV2Router02.sol"; library FixedPoint { uint8 public constant RESOLUTION = 112; function mulDecode(uint224 x, uint y) internal pure returns (uint) { return (x * y) >> RESOLUTION; } function fraction(uint numerator, uint denominator) internal pure returns (uint) { if (numerator == 0) return 0; require(denominator > 0, "FixedPoint: division by zero"); require(numerator <= type(uint144).max, "FixedPoint: numerator too big"); return (numerator << RESOLUTION) / denominator; } } abstract contract Auth { address internal _owner; mapping(address => bool) public isAuthorized; constructor(address owner) { _owner = owner; isAuthorized[owner] = true; } modifier onlyOwner() { require(isOwner(msg.sender), "Auth: owner only"); _; } modifier authorized() { require(isAuthorized[msg.sender], "Auth: authorized only"); _; } function setAuthorization(address address_, bool authorization) external onlyOwner { isAuthorized[address_] = authorization; } function isOwner(address account) public view returns (bool) { return account == _owner; } function transferOwnership(address payable newOwner) external onlyOwner { require(newOwner != address(0), "Auth: owner address cannot be zero"); isAuthorized[newOwner] = true; _transferOwnership(newOwner); } function renounceOwnership() external onlyOwner { _transferOwnership(address(0)); } function _transferOwnership(address newOwner) internal { _owner = newOwner; emit OwnershipTransferred(newOwner); } event OwnershipTransferred(address owner); } contract VoxNET is IERC20, Auth { string public constant name = "VoxNET"; string public constant symbol = "$VXON"; uint8 public constant decimals = 4; uint public constant totalSupply = 1 * 10**6 * 10**decimals; mapping(address => uint) public balanceOf; mapping(address => mapping(address => uint)) public allowance; uint private ecosystemFee = 2; uint private marketingFee = 4; uint private treasuryFee = 3; uint public fee; event FeesSet(uint ecosystem, uint marketing, uint treasury); function setFees( uint ecosystem, uint marketing, uint treasury ) external authorized { fee = ecosystem + marketing + treasury; require(fee <= 20, "VoxNET: fee cannot be more than 20%"); ecosystemFee = ecosystem; marketingFee = marketing; treasuryFee = treasury; emit FeesSet(ecosystem, marketing, treasury); } address private constant router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; address private weth; constructor() Auth(msg.sender) { weth = IUniswapV2Router02(router).WETH(); fee = ecosystemFee + marketingFee + treasuryFee; isFeeExempt[msg.sender] = true; balanceOf[msg.sender] = totalSupply; emit Transfer(address(0), msg.sender, totalSupply); } function approve(address spender, uint amount) external override returns (bool) { allowance[msg.sender][spender] = amount; emit Approval(msg.sender, spender, amount); return true; } function transfer(address recipient, uint amount) external override returns (bool) { return doTransfer(msg.sender, recipient, amount); } function transferFrom( address sender, address recipient, uint amount ) external override returns (bool) { if (allowance[sender][msg.sender] != type(uint).max) { require(allowance[sender][msg.sender] >= amount, "VoxNET: insufficient allowance"); allowance[sender][msg.sender] = allowance[sender][msg.sender] - amount; } return doTransfer(sender, recipient, amount); } function doTransfer( address sender, address recipient, uint amount ) internal returns (bool) { if (!isAuthorized[sender] && !isAuthorized[recipient]) { require(launched, "VoxNET: transfers not allowed yet"); } require(balanceOf[sender] >= amount, "VoxNET: insufficient balance"); balanceOf[sender] = balanceOf[sender] - amount; uint amountAfterFee = amount; if (!distributingFee) { if ((isPool[sender] && !isFeeExempt[recipient]) || (isPool[recipient] && !isFeeExempt[sender])) { amountAfterFee = takeFee(sender, amount); } else { distributeFeeIfApplicable(amount); } } balanceOf[recipient] = balanceOf[recipient] + amountAfterFee; emit Transfer(sender, recipient, amountAfterFee); return true; } bool private launched = false; function launch() external onlyOwner { require(!launched, "VoxNET: already launched"); require(pair != address(0), "VoxNET: DEx pair address must be set"); require( ecosystemFeeReceiver != address(0) && marketingFeeReceiver1 != address(0) && marketingFeeReceiver2 != address(0) && treasuryFeeReceiver != address(0), "VoxNET: fee recipient addresses must be set" ); launched = true; tokenPriceTimestamp = block.timestamp; } function takeFee(address sender, uint amount) internal returns (uint) { uint feeAmount = (amount * fee) / 100 / 2; balanceOf[address(this)] = balanceOf[address(this)] + feeAmount; emit Transfer(sender, address(this), feeAmount); return amount - feeAmount; } uint private feeDistributionTransactionThreshold = 1 * 10**18; uint private feeDistributionBalanceThreshold = 1 * 10**18; uint private priceUpdateTimeThreshold = 900; function distributeFeeIfApplicable(uint amount) internal { updateTokenPriceIfApplicable(); if ( FixedPoint.mulDecode(tokenPrice, amount) >= feeDistributionTransactionThreshold && FixedPoint.mulDecode(tokenPrice, balanceOf[address(this)]) >= feeDistributionBalanceThreshold ) { distributeFee(); } } bool private distributingFee; function distributeFee() public { require(distributingFee == false, "VoxNET: reentry prohibited"); distributingFee = true; uint tokensToSell = balanceOf[address(this)]; if (tokensToSell > 0) { address[] memory path = new address[](2); path[0] = address(this); path[1] = weth; allowance[address(this)][router] = tokensToSell; IUniswapV2Router02(router).swapExactTokensForETHSupportingFeeOnTransferTokens( tokensToSell, 0, path, address(this), block.timestamp ); } uint amount = address(this).balance; if (amount > 0) { bool success; if (ecosystemFee != 0) { uint amountEcosystem = (amount * ecosystemFee) / fee; (success, ) = payable(ecosystemFeeReceiver).call{ value: amountEcosystem, gas: 30000 }(""); } uint amountMarketing = (amount * marketingFee) / fee; (success, ) = payable(marketingFeeReceiver1).call{ value: amountMarketing / 2, gas: 30000 }(""); (success, ) = payable(marketingFeeReceiver2).call{ value: amountMarketing / 2, gas: 30000 }(""); uint amountTreasury = (amount * treasuryFee) / fee; (success, ) = payable(treasuryFeeReceiver).call{ value: amountTreasury, gas: 30000 }(""); } distributingFee = false; } uint224 private tokenPrice = 0; uint private tokenPriceTimestamp; uint private tokenPriceCumulativeLast; function updateTokenPriceIfApplicable() internal { if (tokenPriceTimestamp != 0) { uint timeElapsed = block.timestamp - tokenPriceTimestamp; if (timeElapsed > priceUpdateTimeThreshold) { uint tokenPriceCumulative = getCumulativeTokenPrice(); if (tokenPriceCumulativeLast != 0) { tokenPrice = uint224((tokenPriceCumulative - tokenPriceCumulativeLast) / timeElapsed); } tokenPriceCumulativeLast = tokenPriceCumulative; tokenPriceTimestamp = block.timestamp; } } } function getCumulativeTokenPrice() internal view returns (uint) { uint cumulativePrice; if (IUniswapV2Pair(pair).token0() == address(this)) { cumulativePrice = IUniswapV2Pair(pair).price0CumulativeLast(); } else { cumulativePrice = IUniswapV2Pair(pair).price1CumulativeLast(); } if (cumulativePrice != 0) { uint32 blockTimestamp = uint32(block.timestamp % 2**32); (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast) = IUniswapV2Pair(pair).getReserves(); if (blockTimestampLast != blockTimestamp) { uint32 timeElapsed = blockTimestamp - blockTimestampLast; if (IUniswapV2Pair(pair).token0() == address(this)) { cumulativePrice += FixedPoint.fraction(reserve1, reserve0) * timeElapsed; } else { cumulativePrice += FixedPoint.fraction(reserve0, reserve1) * timeElapsed; } } } return cumulativePrice; } mapping(address => bool) private isPool; event IsPool(address indexed addr, bool indexed isPool); function setIsPool(address contractAddress, bool contractIsPool) public onlyOwner { isPool[contractAddress] = contractIsPool; emit IsPool(contractAddress, contractIsPool); } address private pair; function setPair(address pairAddress) external onlyOwner { require(pairAddress != address(0), "VoxNET: DEx pair address cannot be zero"); pair = pairAddress; setIsPool(pairAddress, true); } event FeeDistributionThresholdsSet( uint transactionThreshold, uint balanceThreshold, uint tokenPriceUpdateTimeThreshold ); function setFeeDistributionThresholds( uint transactionThreshold, uint balanceThreshold, uint tokenPriceUpdateTimeThreshold ) external authorized { require(tokenPriceUpdateTimeThreshold > 0, "VoxNET: price update time threshold cannot be zero"); feeDistributionTransactionThreshold = transactionThreshold; feeDistributionBalanceThreshold = balanceThreshold; priceUpdateTimeThreshold = tokenPriceUpdateTimeThreshold; emit FeeDistributionThresholdsSet(transactionThreshold, balanceThreshold, tokenPriceUpdateTimeThreshold); } mapping(address => bool) private isFeeExempt; event IsFeeExempt(address indexed addr, bool indexed isFeeExempt); function setIsFeeExempt(address excemptAddress, bool isExempt) external authorized { isFeeExempt[excemptAddress] = isExempt; emit IsFeeExempt(excemptAddress, isExempt); } address private ecosystemFeeReceiver; address private marketingFeeReceiver1; address private marketingFeeReceiver2; address private treasuryFeeReceiver; event FeeReceiversSet( address ecosystemFeeReceiver, address marketingFeeReceiver1, address marketingFeeReceiver2, address treasuryFeeReceiver ); function setFeeReceivers( address ecosystem, address marketing1, address marketing2, address treasury ) external authorized { require( ecosystem != address(0) && marketing1 != address(0) && marketing2 != address(0) && treasury != address(0), "VoxNET: zero address provided" ); ecosystemFeeReceiver = ecosystem; marketingFeeReceiver1 = marketing1; marketingFeeReceiver2 = marketing2; treasuryFeeReceiver = treasury; emit FeeReceiversSet(ecosystem, marketing1, marketing2, treasury); } receive() external payable {} fallback() external payable {} }
pragma solidity >=0.6.2; import './IUniswapV2Router01.sol'; interface IUniswapV2Router02 is IUniswapV2Router01 { function removeLiquidityETHSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountETH); function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountETH); 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; }
pragma solidity >=0.6.2; interface IUniswapV2Router01 { 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 removeLiquidity( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB); function removeLiquidityETH( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountToken, uint amountETH); function removeLiquidityWithPermit( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountA, uint amountB); function removeLiquidityETHWithPermit( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountToken, uint amountETH); function swapExactTokensForTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapTokensForExactTokens( uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts); function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts); function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts); function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts); function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB); function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut); function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn); function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts); function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts); }
pragma solidity >=0.5.0; interface IUniswapV2Pair { event Approval(address indexed owner, address indexed spender, uint value); event Transfer(address indexed from, address indexed to, uint value); function name() external pure returns (string memory); function symbol() external pure returns (string memory); function decimals() external pure returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); function DOMAIN_SEPARATOR() external view returns (bytes32); function PERMIT_TYPEHASH() external pure returns (bytes32); function nonces(address owner) external view returns (uint); function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; event Mint(address indexed sender, uint amount0, uint amount1); event Burn(address indexed sender, uint amount0, uint amount1, address indexed to); event Swap( address indexed sender, uint amount0In, uint amount1In, uint amount0Out, uint amount1Out, address indexed to ); event Sync(uint112 reserve0, uint112 reserve1); function MINIMUM_LIQUIDITY() external pure returns (uint); function factory() external view returns (address); function token0() external view returns (address); function token1() external view returns (address); function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast); function price0CumulativeLast() external view returns (uint); function price1CumulativeLast() external view returns (uint); function kLast() external view returns (uint); function mint(address to) external returns (uint liquidity); function burn(address to) external returns (uint amount0, uint amount1); function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external; function skim(address to) external; function sync() external; function initialize(address, address) external; }
pragma solidity >=0.5.0; interface IERC20 { event Approval(address indexed owner, address indexed spender, uint value); event Transfer(address indexed from, address indexed to, uint value); function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); }
{ "remappings": [], "optimizer": { "enabled": true, "runs": 200 }, "evmVersion": "london", "libraries": {}, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } } }
Contract Security Audit
- SolidProof.io- Oct 13th, 2022 - Security Audit Report
[{"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":"transactionThreshold","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"balanceThreshold","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokenPriceUpdateTimeThreshold","type":"uint256"}],"name":"FeeDistributionThresholdsSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"ecosystemFeeReceiver","type":"address"},{"indexed":false,"internalType":"address","name":"marketingFeeReceiver1","type":"address"},{"indexed":false,"internalType":"address","name":"marketingFeeReceiver2","type":"address"},{"indexed":false,"internalType":"address","name":"treasuryFeeReceiver","type":"address"}],"name":"FeeReceiversSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"ecosystem","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"marketing","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"treasury","type":"uint256"}],"name":"FeesSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"addr","type":"address"},{"indexed":true,"internalType":"bool","name":"isFeeExempt","type":"bool"}],"name":"IsFeeExempt","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"addr","type":"address"},{"indexed":true,"internalType":"bool","name":"isPool","type":"bool"}],"name":"IsPool","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"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","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":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"distributeFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"fee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isAuthorized","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":"launch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"address_","type":"address"},{"internalType":"bool","name":"authorization","type":"bool"}],"name":"setAuthorization","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"transactionThreshold","type":"uint256"},{"internalType":"uint256","name":"balanceThreshold","type":"uint256"},{"internalType":"uint256","name":"tokenPriceUpdateTimeThreshold","type":"uint256"}],"name":"setFeeDistributionThresholds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"ecosystem","type":"address"},{"internalType":"address","name":"marketing1","type":"address"},{"internalType":"address","name":"marketing2","type":"address"},{"internalType":"address","name":"treasury","type":"address"}],"name":"setFeeReceivers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"ecosystem","type":"uint256"},{"internalType":"uint256","name":"marketing","type":"uint256"},{"internalType":"uint256","name":"treasury","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"excemptAddress","type":"address"},{"internalType":"bool","name":"isExempt","type":"bool"}],"name":"setIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"bool","name":"contractIsPool","type":"bool"}],"name":"setIsPool","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"pairAddress","type":"address"}],"name":"setPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","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":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526002600490815560055560036006556008805460ff60a01b19169055670de0b6b3a76400006009819055600a55610384600b55600c8054610100600160e81b03191690553480156200005557600080fd5b50600080546001600160a01b031916339081178255815260016020818152604092839020805460ff191690921790915581516315ab88c960e31b81529151737a250d5630b4cf539739df2c5dacb4c659f2488d9263ad5c46489260048083019391928290030181865afa158015620000d1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000f79190620001db565b600880546001600160a01b0319166001600160a01b03929092169190911790556006546005546004546200012c919062000223565b62000138919062000223565b600755336000908152601160205260409020805460ff19166001179055620001636004600a6200033c565b6200017290620f42406200034d565b33600081815260026020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001b56004600a6200033c565b620001c490620f42406200034d565b60405190815260200160405180910390a362000367565b600060208284031215620001ee57600080fd5b81516001600160a01b03811681146200020657600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b808201808211156200023957620002396200020d565b92915050565b600181815b80851115620002805781600019048211156200026457620002646200020d565b808516156200027257918102915b93841c939080029062000244565b509250929050565b600082620002995750600162000239565b81620002a85750600062000239565b8160018114620002c15760028114620002cc57620002ec565b600191505062000239565b60ff841115620002e057620002e06200020d565b50506001821b62000239565b5060208310610133831016604e8410600b841016171562000311575081810a62000239565b6200031d83836200023f565b80600019048211156200033457620003346200020d565b029392505050565b60006200020660ff84168362000288565b80820281158282048414176200023957620002396200020d565b611fa680620003776000396000f3fe6080604052600436106101385760003560e01c806370a08231116100b0578063cec10c111161006c578063cec10c11146103af578063dd62ed3e146103cf578063ddca3f4314610407578063eecea0001461041d578063f2fde38b1461043d578063fe9fbb801461045d57005b806370a08231146102dc578063715018a6146103095780638187f5161461031e5780638f2f2c061461033e57806395d89b411461035e578063a9059cbb1461038f57005b806323b872dd116100ff57806323b872dd1461021157806326c4e60d146102315780632f54bf6e14610246578063313ce567146102755780633c8e556d1461029c578063658d4b7f146102bc57005b806301339c211461014157806306fdde0314610156578063095ea7b31461019e57806318160ddd146101ce5780631cb5a549146101f157005b3661013f57005b005b34801561014d57600080fd5b5061013f61048d565b34801561016257600080fd5b5061018860405180604001604052806006815260200165159bde13915560d21b81525081565b6040516101959190611a6a565b60405180910390f35b3480156101aa57600080fd5b506101be6101b9366004611acd565b610647565b6040519015158152602001610195565b3480156101da57600080fd5b506101e36106b4565b604051908152602001610195565b3480156101fd57600080fd5b5061013f61020c366004611af9565b6106d0565b34801561021d57600080fd5b506101be61022c366004611b37565b61074e565b34801561023d57600080fd5b5061013f610854565b34801561025257600080fd5b506101be610261366004611b78565b6000546001600160a01b0391821691161490565b34801561028157600080fd5b5061028a600481565b60405160ff9091168152602001610195565b3480156102a857600080fd5b5061013f6102b7366004611b95565b610bce565b3480156102c857600080fd5b5061013f6102d7366004611af9565b610d2c565b3480156102e857600080fd5b506101e36102f7366004611b78565b60026020526000908152604090205481565b34801561031557600080fd5b5061013f610daf565b34801561032a57600080fd5b5061013f610339366004611b78565b610de5565b34801561034a57600080fd5b5061013f610359366004611bf1565b610e9e565b34801561036a57600080fd5b5061018860405180604001604052806005815260200164122b2c27a760d91b81525081565b34801561039b57600080fd5b506101be6103aa366004611acd565b610f8e565b3480156103bb57600080fd5b5061013f6103ca366004611bf1565b610fa2565b3480156103db57600080fd5b506101e36103ea366004611c1d565b600360209081526000928352604080842090915290825290205481565b34801561041357600080fd5b506101e360075481565b34801561042957600080fd5b5061013f610438366004611af9565b611094565b34801561044957600080fd5b5061013f610458366004611b78565b6110e9565b34801561046957600080fd5b506101be610478366004611b78565b60016020526000908152604090205460ff1681565b6000546001600160a01b031633146104c05760405162461bcd60e51b81526004016104b790611c4b565b60405180910390fd5b600854600160a01b900460ff161561051a5760405162461bcd60e51b815260206004820152601860248201527f566f784e45543a20616c7265616479206c61756e63686564000000000000000060448201526064016104b7565b6010546001600160a01b031661057e5760405162461bcd60e51b8152602060048201526024808201527f566f784e45543a2044457820706169722061646472657373206d757374206265604482015263081cd95d60e21b60648201526084016104b7565b6012546001600160a01b0316158015906105a257506013546001600160a01b031615155b80156105b857506014546001600160a01b031615155b80156105ce57506015546001600160a01b031615155b61062e5760405162461bcd60e51b815260206004820152602b60248201527f566f784e45543a2066656520726563697069656e74206164647265737365732060448201526a1b5d5cdd081899481cd95d60aa1b60648201526084016104b7565b6008805460ff60a01b1916600160a01b17905542600d55565b3360008181526003602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906106a29086815260200190565b60405180910390a35060015b92915050565b6106c06004600a611d6f565b6106cd90620f4240611d7e565b81565b6000546001600160a01b031633146106fa5760405162461bcd60e51b81526004016104b790611c4b565b6001600160a01b0382166000818152600f6020526040808220805460ff191685151590811790915590519092917f6e5ec360a499b56e83b8582fe48667423030ddf5a19f49a7bf52a99e40d9997f91a35050565b6001600160a01b038316600090815260036020908152604080832033845290915281205460001914610841576001600160a01b03841660009081526003602090815260408083203384529091529020548211156107ed5760405162461bcd60e51b815260206004820152601e60248201527f566f784e45543a20696e73756666696369656e7420616c6c6f77616e6365000060448201526064016104b7565b6001600160a01b038416600090815260036020908152604080832033845290915290205461081c908390611d95565b6001600160a01b03851660009081526003602090815260408083203384529091529020555b61084c8484846111a3565b949350505050565b600c5460ff16156108a75760405162461bcd60e51b815260206004820152601a60248201527f566f784e45543a207265656e7472792070726f6869626974656400000000000060448201526064016104b7565b600c805460ff191660011790553060009081526002602052604090205480156109cf5760408051600280825260608201835260009260208301908036833701905050905030816000815181106108ff576108ff611da8565b6001600160a01b03928316602091820292909201015260085482519116908290600190811061093057610930611da8565b6001600160a01b03909216602092830291909101820152306000818152600383526040808220737a250d5630b4cf539739df2c5dacb4c659f2488d80845294528082208690555163791ac94760e01b815263791ac9479261099b928792909187914290600401611dbe565b600060405180830381600087803b1580156109b557600080fd5b505af11580156109c9573d6000803e3d6000fd5b50505050505b478015610bc0576000600454600014610a5e576000600754600454846109f59190611d7e565b6109ff9190611e45565b6012546040519192506001600160a01b0316906175309083906000818181858888f193505050503d8060008114610a52576040519150601f19603f3d011682016040523d82523d6000602084013e610a57565b606091505b5090925050505b600060075460055484610a719190611d7e565b610a7b9190611e45565b6013549091506001600160a01b0316610a95600283611e45565b60405161753091906000818181858888f193505050503d8060008114610ad7576040519150601f19603f3d011682016040523d82523d6000602084013e610adc565b606091505b50506014549092506001600160a01b0316610af8600283611e45565b60405161753091906000818181858888f193505050503d8060008114610b3a576040519150601f19603f3d011682016040523d82523d6000602084013e610b3f565b606091505b5050600754600654919350600091610b579086611d7e565b610b619190611e45565b6015546040519192506001600160a01b0316906175309083906000818181858888f193505050503d8060008114610bb4576040519150601f19603f3d011682016040523d82523d6000602084013e610bb9565b606091505b5050505050505b5050600c805460ff19169055565b3360009081526001602052604090205460ff16610bfd5760405162461bcd60e51b81526004016104b790611e59565b6001600160a01b03841615801590610c1d57506001600160a01b03831615155b8015610c3157506001600160a01b03821615155b8015610c4557506001600160a01b03811615155b610c915760405162461bcd60e51b815260206004820152601d60248201527f566f784e45543a207a65726f20616464726573732070726f766964656400000060448201526064016104b7565b601280546001600160a01b038681166001600160a01b031992831681179093556013805487831690841681179091556014805487841690851681179091556015805493871693909416831790935560408051948552602085019190915283019190915260608201527ff834045a0eee13b8ef4a83b75f29328abd4cdc966e44c9db5f4ba9b825dfd75d9060800160405180910390a150505050565b3360009081526001602052604090205460ff16610d5b5760405162461bcd60e51b81526004016104b790611e59565b6001600160a01b038216600081815260116020526040808220805460ff191685151590811790915590519092917f9fa25b0cf421a33bf5df4c958f19075502a5e4611a54151b2d7ec9f2316777d791a35050565b6000546001600160a01b03163314610dd95760405162461bcd60e51b81526004016104b790611c4b565b610de36000611430565b565b6000546001600160a01b03163314610e0f5760405162461bcd60e51b81526004016104b790611c4b565b6001600160a01b038116610e755760405162461bcd60e51b815260206004820152602760248201527f566f784e45543a20444578207061697220616464726573732063616e6e6f74206044820152666265207a65726f60c81b60648201526084016104b7565b601080546001600160a01b0319166001600160a01b038316179055610e9b8160016106d0565b50565b3360009081526001602052604090205460ff16610ecd5760405162461bcd60e51b81526004016104b790611e59565b60008111610f385760405162461bcd60e51b815260206004820152603260248201527f566f784e45543a207072696365207570646174652074696d65207468726573686044820152716f6c642063616e6e6f74206265207a65726f60701b60648201526084016104b7565b6009839055600a829055600b81905560408051848152602081018490529081018290527f172ce333d6efb7382c37b9bea5cccafe33b07418def31c1f4cce7f8610fbbed6906060015b60405180910390a1505050565b6000610f9b3384846111a3565b9392505050565b3360009081526001602052604090205460ff16610fd15760405162461bcd60e51b81526004016104b790611e59565b80610fdc8385611e88565b610fe69190611e88565b6007819055601410156110475760405162461bcd60e51b815260206004820152602360248201527f566f784e45543a206665652063616e6e6f74206265206d6f7265207468616e2060448201526232302560e81b60648201526084016104b7565b60048390556005829055600681905560408051848152602081018490529081018290527f01bae858246c904512695a3f6d48ab88abb7a0192fdd7c53b043e60317795f4590606001610f81565b6000546001600160a01b031633146110be5760405162461bcd60e51b81526004016104b790611c4b565b6001600160a01b03919091166000908152600160205260409020805460ff1916911515919091179055565b6000546001600160a01b031633146111135760405162461bcd60e51b81526004016104b790611c4b565b6001600160a01b0381166111745760405162461bcd60e51b815260206004820152602260248201527f417574683a206f776e657220616464726573732063616e6e6f74206265207a65604482015261726f60f01b60648201526084016104b7565b6001600160a01b0381166000908152600160208190526040909120805460ff19169091179055610e9b81611430565b6001600160a01b03831660009081526001602052604081205460ff161580156111e557506001600160a01b03831660009081526001602052604090205460ff16155b1561124d57600854600160a01b900460ff1661124d5760405162461bcd60e51b815260206004820152602160248201527f566f784e45543a207472616e7366657273206e6f7420616c6c6f7765642079656044820152601d60fa1b60648201526084016104b7565b6001600160a01b0384166000908152600260205260409020548211156112b55760405162461bcd60e51b815260206004820152601c60248201527f566f784e45543a20696e73756666696369656e742062616c616e63650000000060448201526064016104b7565b6001600160a01b0384166000908152600260205260409020546112d9908390611d95565b6001600160a01b038516600090815260026020526040902055600c54829060ff166113a5576001600160a01b0385166000908152600f602052604090205460ff16801561133f57506001600160a01b03841660009081526011602052604090205460ff16155b8061138657506001600160a01b0384166000908152600f602052604090205460ff16801561138657506001600160a01b03851660009081526011602052604090205460ff16155b1561139c576113958584611484565b90506113a5565b6113a58361152e565b6001600160a01b0384166000908152600260205260409020546113c9908290611e88565b6001600160a01b0380861660008181526002602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061141d9085815260200190565b60405180910390a3506001949350505050565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b60008060026064600754856114999190611d7e565b6114a39190611e45565b6114ad9190611e45565b306000908152600260205260409020549091506114cb908290611e88565b30600081815260026020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061151c9085815260200190565b60405180910390a361084c8184611d95565b61153661159b565b600954600c546115549061010090046001600160e01b03168361161f565b1015801561158e5750600a54600c543060009081526002602052604090205461158b9161010090046001600160e01b03169061161f565b10155b15610e9b57610e9b610854565b600d5415610de3576000600d54426115b39190611d95565b9050600b54811115610e9b5760006115c961163f565b9050600e546000146116155781600e54826115e49190611d95565b6115ee9190611e45565b600c60016101000a8154816001600160e01b0302191690836001600160e01b031602179055505b600e5542600d5550565b60006070611636836001600160e01b038616611d7e565b901c9392505050565b600080306001600160a01b0316601060009054906101000a90046001600160a01b03166001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa15801561169f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116c39190611e9b565b6001600160a01b03160361174f57601060009054906101000a90046001600160a01b03166001600160a01b0316635909c0d56040518163ffffffff1660e01b8152600401602060405180830381865afa158015611724573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117489190611eb8565b90506117c9565b601060009054906101000a90046001600160a01b03166001600160a01b0316635a3d54936040518163ffffffff1660e01b8152600401602060405180830381865afa1580156117a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117c69190611eb8565b90505b80156119935760006117e064010000000042611ed1565b90506000806000601060009054906101000a90046001600160a01b03166001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa15801561183a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061185e9190611efc565b9250925092508363ffffffff168163ffffffff161461198e5760006118838286611f4c565b9050306001600160a01b0316601060009054906101000a90046001600160a01b03166001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118e2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119069190611e9b565b6001600160a01b031603611952578063ffffffff16611937846001600160701b0316866001600160701b0316611998565b6119419190611d7e565b61194b9087611e88565b955061198c565b8063ffffffff16611975856001600160701b0316856001600160701b0316611998565b61197f9190611d7e565b6119899087611e88565b95505b505b505050505b919050565b6000826000036119aa575060006106ae565b600082116119fa5760405162461bcd60e51b815260206004820152601c60248201527f4669786564506f696e743a206469766973696f6e206279207a65726f0000000060448201526064016104b7565b71ffffffffffffffffffffffffffffffffffff831115611a5c5760405162461bcd60e51b815260206004820152601d60248201527f4669786564506f696e743a206e756d657261746f7220746f6f2062696700000060448201526064016104b7565b610f9b82607085901b611e45565b600060208083528351808285015260005b81811015611a9757858101830151858201604001528201611a7b565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610e9b57600080fd5b60008060408385031215611ae057600080fd5b8235611aeb81611ab8565b946020939093013593505050565b60008060408385031215611b0c57600080fd5b8235611b1781611ab8565b915060208301358015158114611b2c57600080fd5b809150509250929050565b600080600060608486031215611b4c57600080fd5b8335611b5781611ab8565b92506020840135611b6781611ab8565b929592945050506040919091013590565b600060208284031215611b8a57600080fd5b8135610f9b81611ab8565b60008060008060808587031215611bab57600080fd5b8435611bb681611ab8565b93506020850135611bc681611ab8565b92506040850135611bd681611ab8565b91506060850135611be681611ab8565b939692955090935050565b600080600060608486031215611c0657600080fd5b505081359360208301359350604090920135919050565b60008060408385031215611c3057600080fd5b8235611c3b81611ab8565b91506020830135611b2c81611ab8565b60208082526010908201526f417574683a206f776e6572206f6e6c7960801b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611cc6578160001904821115611cac57611cac611c75565b80851615611cb957918102915b93841c9390800290611c90565b509250929050565b600082611cdd575060016106ae565b81611cea575060006106ae565b8160018114611d005760028114611d0a57611d26565b60019150506106ae565b60ff841115611d1b57611d1b611c75565b50506001821b6106ae565b5060208310610133831016604e8410600b8410161715611d49575081810a6106ae565b611d538383611c8b565b8060001904821115611d6757611d67611c75565b029392505050565b6000610f9b60ff841683611cce565b80820281158282048414176106ae576106ae611c75565b818103818111156106ae576106ae611c75565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611e0e5784516001600160a01b031683529383019391830191600101611de9565b50506001600160a01b03969096166060850152505050608001529392505050565b634e487b7160e01b600052601260045260246000fd5b600082611e5457611e54611e2f565b500490565b602080825260159082015274417574683a20617574686f72697a6564206f6e6c7960581b604082015260600190565b808201808211156106ae576106ae611c75565b600060208284031215611ead57600080fd5b8151610f9b81611ab8565b600060208284031215611eca57600080fd5b5051919050565b600082611ee057611ee0611e2f565b500690565b80516001600160701b038116811461199357600080fd5b600080600060608486031215611f1157600080fd5b611f1a84611ee5565b9250611f2860208501611ee5565b9150604084015163ffffffff81168114611f4157600080fd5b809150509250925092565b63ffffffff828116828216039080821115611f6957611f69611c75565b509291505056fea2646970667358221220a1965b7814c24bd1049c86dbdef07d6cd46b4e7b74c7ede8bba1376eb9b2c73e64736f6c63430008110033
Deployed Bytecode
0x6080604052600436106101385760003560e01c806370a08231116100b0578063cec10c111161006c578063cec10c11146103af578063dd62ed3e146103cf578063ddca3f4314610407578063eecea0001461041d578063f2fde38b1461043d578063fe9fbb801461045d57005b806370a08231146102dc578063715018a6146103095780638187f5161461031e5780638f2f2c061461033e57806395d89b411461035e578063a9059cbb1461038f57005b806323b872dd116100ff57806323b872dd1461021157806326c4e60d146102315780632f54bf6e14610246578063313ce567146102755780633c8e556d1461029c578063658d4b7f146102bc57005b806301339c211461014157806306fdde0314610156578063095ea7b31461019e57806318160ddd146101ce5780631cb5a549146101f157005b3661013f57005b005b34801561014d57600080fd5b5061013f61048d565b34801561016257600080fd5b5061018860405180604001604052806006815260200165159bde13915560d21b81525081565b6040516101959190611a6a565b60405180910390f35b3480156101aa57600080fd5b506101be6101b9366004611acd565b610647565b6040519015158152602001610195565b3480156101da57600080fd5b506101e36106b4565b604051908152602001610195565b3480156101fd57600080fd5b5061013f61020c366004611af9565b6106d0565b34801561021d57600080fd5b506101be61022c366004611b37565b61074e565b34801561023d57600080fd5b5061013f610854565b34801561025257600080fd5b506101be610261366004611b78565b6000546001600160a01b0391821691161490565b34801561028157600080fd5b5061028a600481565b60405160ff9091168152602001610195565b3480156102a857600080fd5b5061013f6102b7366004611b95565b610bce565b3480156102c857600080fd5b5061013f6102d7366004611af9565b610d2c565b3480156102e857600080fd5b506101e36102f7366004611b78565b60026020526000908152604090205481565b34801561031557600080fd5b5061013f610daf565b34801561032a57600080fd5b5061013f610339366004611b78565b610de5565b34801561034a57600080fd5b5061013f610359366004611bf1565b610e9e565b34801561036a57600080fd5b5061018860405180604001604052806005815260200164122b2c27a760d91b81525081565b34801561039b57600080fd5b506101be6103aa366004611acd565b610f8e565b3480156103bb57600080fd5b5061013f6103ca366004611bf1565b610fa2565b3480156103db57600080fd5b506101e36103ea366004611c1d565b600360209081526000928352604080842090915290825290205481565b34801561041357600080fd5b506101e360075481565b34801561042957600080fd5b5061013f610438366004611af9565b611094565b34801561044957600080fd5b5061013f610458366004611b78565b6110e9565b34801561046957600080fd5b506101be610478366004611b78565b60016020526000908152604090205460ff1681565b6000546001600160a01b031633146104c05760405162461bcd60e51b81526004016104b790611c4b565b60405180910390fd5b600854600160a01b900460ff161561051a5760405162461bcd60e51b815260206004820152601860248201527f566f784e45543a20616c7265616479206c61756e63686564000000000000000060448201526064016104b7565b6010546001600160a01b031661057e5760405162461bcd60e51b8152602060048201526024808201527f566f784e45543a2044457820706169722061646472657373206d757374206265604482015263081cd95d60e21b60648201526084016104b7565b6012546001600160a01b0316158015906105a257506013546001600160a01b031615155b80156105b857506014546001600160a01b031615155b80156105ce57506015546001600160a01b031615155b61062e5760405162461bcd60e51b815260206004820152602b60248201527f566f784e45543a2066656520726563697069656e74206164647265737365732060448201526a1b5d5cdd081899481cd95d60aa1b60648201526084016104b7565b6008805460ff60a01b1916600160a01b17905542600d55565b3360008181526003602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906106a29086815260200190565b60405180910390a35060015b92915050565b6106c06004600a611d6f565b6106cd90620f4240611d7e565b81565b6000546001600160a01b031633146106fa5760405162461bcd60e51b81526004016104b790611c4b565b6001600160a01b0382166000818152600f6020526040808220805460ff191685151590811790915590519092917f6e5ec360a499b56e83b8582fe48667423030ddf5a19f49a7bf52a99e40d9997f91a35050565b6001600160a01b038316600090815260036020908152604080832033845290915281205460001914610841576001600160a01b03841660009081526003602090815260408083203384529091529020548211156107ed5760405162461bcd60e51b815260206004820152601e60248201527f566f784e45543a20696e73756666696369656e7420616c6c6f77616e6365000060448201526064016104b7565b6001600160a01b038416600090815260036020908152604080832033845290915290205461081c908390611d95565b6001600160a01b03851660009081526003602090815260408083203384529091529020555b61084c8484846111a3565b949350505050565b600c5460ff16156108a75760405162461bcd60e51b815260206004820152601a60248201527f566f784e45543a207265656e7472792070726f6869626974656400000000000060448201526064016104b7565b600c805460ff191660011790553060009081526002602052604090205480156109cf5760408051600280825260608201835260009260208301908036833701905050905030816000815181106108ff576108ff611da8565b6001600160a01b03928316602091820292909201015260085482519116908290600190811061093057610930611da8565b6001600160a01b03909216602092830291909101820152306000818152600383526040808220737a250d5630b4cf539739df2c5dacb4c659f2488d80845294528082208690555163791ac94760e01b815263791ac9479261099b928792909187914290600401611dbe565b600060405180830381600087803b1580156109b557600080fd5b505af11580156109c9573d6000803e3d6000fd5b50505050505b478015610bc0576000600454600014610a5e576000600754600454846109f59190611d7e565b6109ff9190611e45565b6012546040519192506001600160a01b0316906175309083906000818181858888f193505050503d8060008114610a52576040519150601f19603f3d011682016040523d82523d6000602084013e610a57565b606091505b5090925050505b600060075460055484610a719190611d7e565b610a7b9190611e45565b6013549091506001600160a01b0316610a95600283611e45565b60405161753091906000818181858888f193505050503d8060008114610ad7576040519150601f19603f3d011682016040523d82523d6000602084013e610adc565b606091505b50506014549092506001600160a01b0316610af8600283611e45565b60405161753091906000818181858888f193505050503d8060008114610b3a576040519150601f19603f3d011682016040523d82523d6000602084013e610b3f565b606091505b5050600754600654919350600091610b579086611d7e565b610b619190611e45565b6015546040519192506001600160a01b0316906175309083906000818181858888f193505050503d8060008114610bb4576040519150601f19603f3d011682016040523d82523d6000602084013e610bb9565b606091505b5050505050505b5050600c805460ff19169055565b3360009081526001602052604090205460ff16610bfd5760405162461bcd60e51b81526004016104b790611e59565b6001600160a01b03841615801590610c1d57506001600160a01b03831615155b8015610c3157506001600160a01b03821615155b8015610c4557506001600160a01b03811615155b610c915760405162461bcd60e51b815260206004820152601d60248201527f566f784e45543a207a65726f20616464726573732070726f766964656400000060448201526064016104b7565b601280546001600160a01b038681166001600160a01b031992831681179093556013805487831690841681179091556014805487841690851681179091556015805493871693909416831790935560408051948552602085019190915283019190915260608201527ff834045a0eee13b8ef4a83b75f29328abd4cdc966e44c9db5f4ba9b825dfd75d9060800160405180910390a150505050565b3360009081526001602052604090205460ff16610d5b5760405162461bcd60e51b81526004016104b790611e59565b6001600160a01b038216600081815260116020526040808220805460ff191685151590811790915590519092917f9fa25b0cf421a33bf5df4c958f19075502a5e4611a54151b2d7ec9f2316777d791a35050565b6000546001600160a01b03163314610dd95760405162461bcd60e51b81526004016104b790611c4b565b610de36000611430565b565b6000546001600160a01b03163314610e0f5760405162461bcd60e51b81526004016104b790611c4b565b6001600160a01b038116610e755760405162461bcd60e51b815260206004820152602760248201527f566f784e45543a20444578207061697220616464726573732063616e6e6f74206044820152666265207a65726f60c81b60648201526084016104b7565b601080546001600160a01b0319166001600160a01b038316179055610e9b8160016106d0565b50565b3360009081526001602052604090205460ff16610ecd5760405162461bcd60e51b81526004016104b790611e59565b60008111610f385760405162461bcd60e51b815260206004820152603260248201527f566f784e45543a207072696365207570646174652074696d65207468726573686044820152716f6c642063616e6e6f74206265207a65726f60701b60648201526084016104b7565b6009839055600a829055600b81905560408051848152602081018490529081018290527f172ce333d6efb7382c37b9bea5cccafe33b07418def31c1f4cce7f8610fbbed6906060015b60405180910390a1505050565b6000610f9b3384846111a3565b9392505050565b3360009081526001602052604090205460ff16610fd15760405162461bcd60e51b81526004016104b790611e59565b80610fdc8385611e88565b610fe69190611e88565b6007819055601410156110475760405162461bcd60e51b815260206004820152602360248201527f566f784e45543a206665652063616e6e6f74206265206d6f7265207468616e2060448201526232302560e81b60648201526084016104b7565b60048390556005829055600681905560408051848152602081018490529081018290527f01bae858246c904512695a3f6d48ab88abb7a0192fdd7c53b043e60317795f4590606001610f81565b6000546001600160a01b031633146110be5760405162461bcd60e51b81526004016104b790611c4b565b6001600160a01b03919091166000908152600160205260409020805460ff1916911515919091179055565b6000546001600160a01b031633146111135760405162461bcd60e51b81526004016104b790611c4b565b6001600160a01b0381166111745760405162461bcd60e51b815260206004820152602260248201527f417574683a206f776e657220616464726573732063616e6e6f74206265207a65604482015261726f60f01b60648201526084016104b7565b6001600160a01b0381166000908152600160208190526040909120805460ff19169091179055610e9b81611430565b6001600160a01b03831660009081526001602052604081205460ff161580156111e557506001600160a01b03831660009081526001602052604090205460ff16155b1561124d57600854600160a01b900460ff1661124d5760405162461bcd60e51b815260206004820152602160248201527f566f784e45543a207472616e7366657273206e6f7420616c6c6f7765642079656044820152601d60fa1b60648201526084016104b7565b6001600160a01b0384166000908152600260205260409020548211156112b55760405162461bcd60e51b815260206004820152601c60248201527f566f784e45543a20696e73756666696369656e742062616c616e63650000000060448201526064016104b7565b6001600160a01b0384166000908152600260205260409020546112d9908390611d95565b6001600160a01b038516600090815260026020526040902055600c54829060ff166113a5576001600160a01b0385166000908152600f602052604090205460ff16801561133f57506001600160a01b03841660009081526011602052604090205460ff16155b8061138657506001600160a01b0384166000908152600f602052604090205460ff16801561138657506001600160a01b03851660009081526011602052604090205460ff16155b1561139c576113958584611484565b90506113a5565b6113a58361152e565b6001600160a01b0384166000908152600260205260409020546113c9908290611e88565b6001600160a01b0380861660008181526002602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061141d9085815260200190565b60405180910390a3506001949350505050565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b60008060026064600754856114999190611d7e565b6114a39190611e45565b6114ad9190611e45565b306000908152600260205260409020549091506114cb908290611e88565b30600081815260026020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061151c9085815260200190565b60405180910390a361084c8184611d95565b61153661159b565b600954600c546115549061010090046001600160e01b03168361161f565b1015801561158e5750600a54600c543060009081526002602052604090205461158b9161010090046001600160e01b03169061161f565b10155b15610e9b57610e9b610854565b600d5415610de3576000600d54426115b39190611d95565b9050600b54811115610e9b5760006115c961163f565b9050600e546000146116155781600e54826115e49190611d95565b6115ee9190611e45565b600c60016101000a8154816001600160e01b0302191690836001600160e01b031602179055505b600e5542600d5550565b60006070611636836001600160e01b038616611d7e565b901c9392505050565b600080306001600160a01b0316601060009054906101000a90046001600160a01b03166001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa15801561169f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116c39190611e9b565b6001600160a01b03160361174f57601060009054906101000a90046001600160a01b03166001600160a01b0316635909c0d56040518163ffffffff1660e01b8152600401602060405180830381865afa158015611724573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117489190611eb8565b90506117c9565b601060009054906101000a90046001600160a01b03166001600160a01b0316635a3d54936040518163ffffffff1660e01b8152600401602060405180830381865afa1580156117a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117c69190611eb8565b90505b80156119935760006117e064010000000042611ed1565b90506000806000601060009054906101000a90046001600160a01b03166001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa15801561183a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061185e9190611efc565b9250925092508363ffffffff168163ffffffff161461198e5760006118838286611f4c565b9050306001600160a01b0316601060009054906101000a90046001600160a01b03166001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118e2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119069190611e9b565b6001600160a01b031603611952578063ffffffff16611937846001600160701b0316866001600160701b0316611998565b6119419190611d7e565b61194b9087611e88565b955061198c565b8063ffffffff16611975856001600160701b0316856001600160701b0316611998565b61197f9190611d7e565b6119899087611e88565b95505b505b505050505b919050565b6000826000036119aa575060006106ae565b600082116119fa5760405162461bcd60e51b815260206004820152601c60248201527f4669786564506f696e743a206469766973696f6e206279207a65726f0000000060448201526064016104b7565b71ffffffffffffffffffffffffffffffffffff831115611a5c5760405162461bcd60e51b815260206004820152601d60248201527f4669786564506f696e743a206e756d657261746f7220746f6f2062696700000060448201526064016104b7565b610f9b82607085901b611e45565b600060208083528351808285015260005b81811015611a9757858101830151858201604001528201611a7b565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610e9b57600080fd5b60008060408385031215611ae057600080fd5b8235611aeb81611ab8565b946020939093013593505050565b60008060408385031215611b0c57600080fd5b8235611b1781611ab8565b915060208301358015158114611b2c57600080fd5b809150509250929050565b600080600060608486031215611b4c57600080fd5b8335611b5781611ab8565b92506020840135611b6781611ab8565b929592945050506040919091013590565b600060208284031215611b8a57600080fd5b8135610f9b81611ab8565b60008060008060808587031215611bab57600080fd5b8435611bb681611ab8565b93506020850135611bc681611ab8565b92506040850135611bd681611ab8565b91506060850135611be681611ab8565b939692955090935050565b600080600060608486031215611c0657600080fd5b505081359360208301359350604090920135919050565b60008060408385031215611c3057600080fd5b8235611c3b81611ab8565b91506020830135611b2c81611ab8565b60208082526010908201526f417574683a206f776e6572206f6e6c7960801b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611cc6578160001904821115611cac57611cac611c75565b80851615611cb957918102915b93841c9390800290611c90565b509250929050565b600082611cdd575060016106ae565b81611cea575060006106ae565b8160018114611d005760028114611d0a57611d26565b60019150506106ae565b60ff841115611d1b57611d1b611c75565b50506001821b6106ae565b5060208310610133831016604e8410600b8410161715611d49575081810a6106ae565b611d538383611c8b565b8060001904821115611d6757611d67611c75565b029392505050565b6000610f9b60ff841683611cce565b80820281158282048414176106ae576106ae611c75565b818103818111156106ae576106ae611c75565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611e0e5784516001600160a01b031683529383019391830191600101611de9565b50506001600160a01b03969096166060850152505050608001529392505050565b634e487b7160e01b600052601260045260246000fd5b600082611e5457611e54611e2f565b500490565b602080825260159082015274417574683a20617574686f72697a6564206f6e6c7960581b604082015260600190565b808201808211156106ae576106ae611c75565b600060208284031215611ead57600080fd5b8151610f9b81611ab8565b600060208284031215611eca57600080fd5b5051919050565b600082611ee057611ee0611e2f565b500690565b80516001600160701b038116811461199357600080fd5b600080600060608486031215611f1157600080fd5b611f1a84611ee5565b9250611f2860208501611ee5565b9150604084015163ffffffff81168114611f4157600080fd5b809150509250925092565b63ffffffff828116828216039080821115611f6957611f69611c75565b509291505056fea2646970667358221220a1965b7814c24bd1049c86dbdef07d6cd46b4e7b74c7ede8bba1376eb9b2c73e64736f6c63430008110033
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.