Overview
Max Total Supply
15,948,848.1164PETO
Holders
66,893 (0.00%)
Market
Price
$0.1384 @ 0.000199 BNB
Onchain Market Cap
$2,207,746.36
Circulating Supply Market Cap
$0.00
Other Info
Token Contract (WITH 5 Decimals)
Balance
1.83559 PETOValue
$0.25 ( ~0.000359485907145054 BNB) [0.0000%]Loading...
Loading
Loading...
Loading
Loading...
Loading
Contract Name:
Petoverse
Compiler Version
v0.7.4+commit.3f05b770
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
/** *Submitted for verification at BscScan.com on 2022-02-18 */ // SPDX-License-Identifier: Unlicensed // // PETOVERSE PROTOCOL COPYRIGHT (C) 2022 pragma solidity ^0.7.4; library SafeMathInt { int256 private constant MIN_INT256 = int256(1) << 255; int256 private constant MAX_INT256 = ~(int256(1) << 255); function mul(int256 a, int256 b) internal pure returns (int256) { int256 c = a * b; require(c != MIN_INT256 || (a & MIN_INT256) != (b & MIN_INT256)); require((b == 0) || (c / b == a)); return c; } function div(int256 a, int256 b) internal pure returns (int256) { require(b != -1 || a != MIN_INT256); return a / b; } function sub(int256 a, int256 b) internal pure returns (int256) { int256 c = a - b; require((b >= 0 && c <= a) || (b < 0 && c > a)); return c; } function add(int256 a, int256 b) internal pure returns (int256) { int256 c = a + b; require((b >= 0 && c >= a) || (b < 0 && c < a)); return c; } function abs(int256 a) internal pure returns (int256) { require(a != MIN_INT256); return a < 0 ? -a : a; } } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, 'SafeMath: addition overflow'); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, 'SafeMath: subtraction overflow'); } function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, 'SafeMath: multiplication overflow'); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, 'SafeMath: division by zero'); } function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { require(b != 0); return a % b; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address who) external view returns (uint256); function allowance(address owner, address spender) external view returns (uint256); function transfer(address to, uint256 value) external returns (bool); function approve(address spender, uint256 value) external returns (bool); function transferFrom( address from, address to, uint256 value ) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } interface IPancakeSwapPair { event Approval(address indexed owner, address indexed spender, uint256 value); event Transfer(address indexed from, address indexed to, uint256 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 (uint256); function balanceOf(address owner) external view returns (uint256); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 value) external returns (bool); function transfer(address to, uint256 value) external returns (bool); function transferFrom( address from, address to, uint256 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 (uint256); function permit( address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s ) external; event Mint(address indexed sender, uint256 amount0, uint256 amount1); event Burn(address indexed sender, uint256 amount0, uint256 amount1, address indexed to); event Swap( address indexed sender, uint256 amount0In, uint256 amount1In, uint256 amount0Out, uint256 amount1Out, address indexed to ); event Sync(uint112 reserve0, uint112 reserve1); function MINIMUM_LIQUIDITY() external pure returns (uint256); 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 (uint256); function price1CumulativeLast() external view returns (uint256); function kLast() external view returns (uint256); function mint(address to) external returns (uint256 liquidity); function burn(address to) external returns (uint256 amount0, uint256 amount1); function swap( uint256 amount0Out, uint256 amount1Out, address to, bytes calldata data ) external; function skim(address to) external; function sync() external; function initialize(address, address) external; } interface IPancakeSwapRouter { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidity( address tokenA, address tokenB, uint256 amountADesired, uint256 amountBDesired, uint256 amountAMin, uint256 amountBMin, address to, uint256 deadline ) external returns ( uint256 amountA, uint256 amountB, uint256 liquidity ); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns ( uint256 amountToken, uint256 amountETH, uint256 liquidity ); function removeLiquidity( address tokenA, address tokenB, uint256 liquidity, uint256 amountAMin, uint256 amountBMin, address to, uint256 deadline ) external returns (uint256 amountA, uint256 amountB); function removeLiquidityETH( address token, uint256 liquidity, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external returns (uint256 amountToken, uint256 amountETH); function removeLiquidityWithPermit( address tokenA, address tokenB, uint256 liquidity, uint256 amountAMin, uint256 amountBMin, address to, uint256 deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint256 amountA, uint256 amountB); function removeLiquidityETHWithPermit( address token, uint256 liquidity, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint256 amountToken, uint256 amountETH); function swapExactTokensForTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external returns (uint256[] memory amounts); function swapTokensForExactTokens( uint256 amountOut, uint256 amountInMax, address[] calldata path, address to, uint256 deadline ) external returns (uint256[] memory amounts); function swapExactETHForTokens( uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external payable returns (uint256[] memory amounts); function swapTokensForExactETH( uint256 amountOut, uint256 amountInMax, address[] calldata path, address to, uint256 deadline ) external returns (uint256[] memory amounts); function swapExactTokensForETH( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external returns (uint256[] memory amounts); function swapETHForExactTokens( uint256 amountOut, address[] calldata path, address to, uint256 deadline ) external payable returns (uint256[] memory amounts); function quote( uint256 amountA, uint256 reserveA, uint256 reserveB ) external pure returns (uint256 amountB); function getAmountOut( uint256 amountIn, uint256 reserveIn, uint256 reserveOut ) external pure returns (uint256 amountOut); function getAmountIn( uint256 amountOut, uint256 reserveIn, uint256 reserveOut ) external pure returns (uint256 amountIn); function getAmountsOut(uint256 amountIn, address[] calldata path) external view returns (uint256[] memory amounts); function getAmountsIn(uint256 amountOut, address[] calldata path) external view returns (uint256[] memory amounts); function removeLiquidityETHSupportingFeeOnTransferTokens( address token, uint256 liquidity, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external returns (uint256 amountETH); function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens( address token, uint256 liquidity, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint256 amountETH); function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function swapExactETHForTokensSupportingFeeOnTransferTokens( uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; } interface IPancakeSwapFactory { event PairCreated(address indexed token0, address indexed token1, address pair, uint256); function feeTo() external view returns (address); function feeToSetter() external view returns (address); function getPair(address tokenA, address tokenB) external view returns (address pair); function allPairs(uint256) external view returns (address pair); function allPairsLength() external view returns (uint256); function createPair(address tokenA, address tokenB) external returns (address pair); function setFeeTo(address) external; function setFeeToSetter(address) external; } contract Ownable { address private _owner; event OwnershipRenounced(address indexed previousOwner); event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { _owner = msg.sender; } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(isOwner()); _; } function isOwner() public view returns (bool) { return msg.sender == _owner; } function renounceOwnership() public onlyOwner { emit OwnershipRenounced(_owner); _owner = address(0); } function transferOwnership(address newOwner) public onlyOwner { _transferOwnership(newOwner); } function _transferOwnership(address newOwner) internal { require(newOwner != address(0)); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } abstract contract ERC20Detailed is IERC20 { string private _name; string private _symbol; uint8 private _decimals; constructor( string memory name_, string memory symbol_, uint8 decimals_ ) { _name = name_; _symbol = symbol_; _decimals = decimals_; } function name() public view returns (string memory) { return _name; } function symbol() public view returns (string memory) { return _symbol; } function decimals() public view returns (uint8) { return _decimals; } } contract Petoverse is ERC20Detailed, Ownable { using SafeMath for uint256; using SafeMathInt for int256; event LogRebase(uint256 indexed epoch, uint256 totalSupply); string public _name = 'Petoverse'; string public _symbol = 'PETO'; uint8 public _decimals = 5; IPancakeSwapPair public pairContract; mapping(address => bool) _isFeeExempt; modifier validRecipient(address to) { require(to != address(0x0)); _; } uint256 public constant DECIMALS = 5; uint256 public constant MAX_UINT256 = ~uint256(0); uint8 public constant RATE_DECIMALS = 7; uint256 public liquidityFee = 30; uint256 public gameTreasuryFee = 20; uint256 public petoInsuranceFundFee = 30; uint256 public infernoPitFee = 80; uint256 public totalFee = liquidityFee.add(gameTreasuryFee).add(petoInsuranceFundFee).add(infernoPitFee); uint256 public sellFee = 20; uint256 public feeDenominator = 1000; address DEAD = 0x000000000000000000000000000000000000dEaD; address ZERO = 0x0000000000000000000000000000000000000000; address public autoLiquidityReceiver; address public gameTreasuryReceiver; address public petoInsuranceFundReceiver; address public infernoPit; address public pairAddress; bool public swapEnabled = true; IPancakeSwapRouter public router; address public pair; bool inSwap = false; modifier swapping() { inSwap = true; _; inSwap = false; } uint256 private constant TOTAL_GONS = MAX_UINT256 - (MAX_UINT256 % INITIAL_FRAGMENTS_SUPPLY); uint256 private constant INITIAL_FRAGMENTS_SUPPLY = 800_000 * 10**DECIMALS; uint256 private constant MAX_SUPPLY = 800_000_000 * 10**DECIMALS; bool public _autoRebase; bool public _autoAddLiquidity; uint256 public _initRebaseStartTime; uint256 public _lastRebasedTime; uint256 public _lastAddLiquidityTime; uint256 public _totalSupply; uint256 private _gonsPerFragment; uint256 public rebaseInterval = 15 minutes; mapping(address => uint256) private _gonBalances; mapping(address => mapping(address => uint256)) private _allowedFragments; mapping(address => bool) public blacklist; constructor( address _router, address _owner, address _gameTreasuryReceiver, address _petoInsuranceFundReceiver ) ERC20Detailed(_name, _symbol, uint8(DECIMALS)) Ownable() { router = IPancakeSwapRouter(_router); pair = IPancakeSwapFactory(router.factory()).createPair(router.WETH(), address(this)); autoLiquidityReceiver = DEAD; gameTreasuryReceiver = _gameTreasuryReceiver; petoInsuranceFundReceiver = _petoInsuranceFundReceiver; infernoPit = ZERO; _allowedFragments[address(this)][address(router)] = uint256(-1); pairAddress = pair; pairContract = IPancakeSwapPair(pair); _totalSupply = INITIAL_FRAGMENTS_SUPPLY; _gonBalances[_owner] = TOTAL_GONS; _gonsPerFragment = TOTAL_GONS.div(_totalSupply); _initRebaseStartTime = block.timestamp; _lastRebasedTime = block.timestamp; _autoRebase = false; _autoAddLiquidity = true; _isFeeExempt[_owner] = true; _isFeeExempt[address(this)] = true; _transferOwnership(_owner); emit Transfer(address(0x0), _owner, _totalSupply); } function rebase() internal { if (inSwap) return; uint256 rebaseRate; uint256 deltaTimeFromInit = block.timestamp - _initRebaseStartTime; uint256 deltaTime = block.timestamp - _lastRebasedTime; uint256 times = deltaTime.div(rebaseInterval); uint256 epoch = times.mul(15); if (deltaTimeFromInit < (365 days)) { rebaseRate = 2838; } else if (deltaTimeFromInit >= (365 days)) { rebaseRate = 211; } else if (deltaTimeFromInit >= ((15 * 365 days) / 10)) { rebaseRate = 14; } else if (deltaTimeFromInit >= (7 * 365 days)) { rebaseRate = 2; } for (uint256 i = 0; i < times; i++) { _totalSupply = _totalSupply.mul((10**RATE_DECIMALS).add(rebaseRate)).div(10**RATE_DECIMALS); } _gonsPerFragment = TOTAL_GONS.div(_totalSupply); _lastRebasedTime = _lastRebasedTime.add(times.mul(rebaseInterval)); pairContract.sync(); emit LogRebase(epoch, _totalSupply); } function transfer(address to, uint256 value) external override validRecipient(to) returns (bool) { _transferFrom(msg.sender, to, value); return true; } function transferFrom( address from, address to, uint256 value ) external override validRecipient(to) returns (bool) { if (_allowedFragments[from][msg.sender] != uint256(-1)) { _allowedFragments[from][msg.sender] = _allowedFragments[from][msg.sender].sub( value, 'Insufficient Allowance' ); } _transferFrom(from, to, value); return true; } function _basicTransfer( address from, address to, uint256 amount ) internal returns (bool) { uint256 gonAmount = amount.mul(_gonsPerFragment); _gonBalances[from] = _gonBalances[from].sub(gonAmount); _gonBalances[to] = _gonBalances[to].add(gonAmount); return true; } function _transferFrom( address sender, address recipient, uint256 amount ) internal returns (bool) { require(!blacklist[sender] && !blacklist[recipient], 'in_blacklist'); if (inSwap) { return _basicTransfer(sender, recipient, amount); } if (shouldRebase()) { rebase(); } if (shouldAddLiquidity()) { addLiquidity(); } if (shouldSwapBack()) { swapBack(); } uint256 gonAmount = amount.mul(_gonsPerFragment); _gonBalances[sender] = _gonBalances[sender].sub(gonAmount); uint256 gonAmountReceived = shouldTakeFee(sender, recipient) ? takeFee(sender, recipient, gonAmount) : gonAmount; _gonBalances[recipient] = _gonBalances[recipient].add(gonAmountReceived); emit Transfer(sender, recipient, gonAmountReceived.div(_gonsPerFragment)); return true; } function takeFee( address sender, address recipient, uint256 gonAmount ) internal returns (uint256) { uint256 _totalFee = totalFee; uint256 _gameTreasuryFee = gameTreasuryFee; if (recipient == pair) { _totalFee = totalFee.add(sellFee); _gameTreasuryFee = gameTreasuryFee.add(sellFee); } uint256 feeAmount = gonAmount.div(feeDenominator).mul(_totalFee); _gonBalances[infernoPit] = _gonBalances[infernoPit].add(gonAmount.div(feeDenominator).mul(infernoPitFee)); _gonBalances[address(this)] = _gonBalances[address(this)].add( gonAmount.div(feeDenominator).mul(_gameTreasuryFee.add(petoInsuranceFundFee)) ); _gonBalances[autoLiquidityReceiver] = _gonBalances[autoLiquidityReceiver].add( gonAmount.div(feeDenominator).mul(liquidityFee) ); emit Transfer(sender, address(this), feeAmount.div(_gonsPerFragment)); emit Transfer(sender, infernoPit, infernoPitFee.div(_gonsPerFragment)); return gonAmount.sub(feeAmount); } function addLiquidity() internal swapping { uint256 autoLiquidityAmount = _gonBalances[autoLiquidityReceiver].div(_gonsPerFragment); _gonBalances[address(this)] = _gonBalances[address(this)].add(_gonBalances[autoLiquidityReceiver]); _gonBalances[autoLiquidityReceiver] = 0; uint256 amountToLiquify = autoLiquidityAmount.div(2); uint256 amountToSwap = autoLiquidityAmount.sub(amountToLiquify); if (amountToSwap == 0) { return; } address[] memory path = new address[](2); path[0] = address(this); path[1] = router.WETH(); uint256 balanceBefore = address(this).balance; router.swapExactTokensForETHSupportingFeeOnTransferTokens( amountToSwap, 0, path, address(this), block.timestamp ); uint256 amountETHLiquidity = address(this).balance.sub(balanceBefore); if (amountToLiquify > 0 && amountETHLiquidity > 0) { router.addLiquidityETH{value: amountETHLiquidity}( address(this), amountToLiquify, 0, 0, DEAD, block.timestamp ); } _lastAddLiquidityTime = block.timestamp; } function swapBack() internal swapping { uint256 amountToSwap = _gonBalances[address(this)].div(_gonsPerFragment); if (amountToSwap == 0) { return; } uint256 balanceBefore = address(this).balance; address[] memory path = new address[](2); path[0] = address(this); path[1] = router.WETH(); router.swapExactTokensForETHSupportingFeeOnTransferTokens( amountToSwap, 0, path, address(this), block.timestamp ); uint256 amountETHTogameTreasuryAndSIF = address(this).balance.sub(balanceBefore); (bool success, ) = payable(gameTreasuryReceiver).call{ value: amountETHTogameTreasuryAndSIF.mul(gameTreasuryFee).div(gameTreasuryFee.add(petoInsuranceFundFee)), gas: 30000 }(''); (success, ) = payable(petoInsuranceFundReceiver).call{ value: amountETHTogameTreasuryAndSIF.mul(petoInsuranceFundFee).div( gameTreasuryFee.add(petoInsuranceFundFee) ), gas: 30000 }(''); } function withdrawAllTogameTreasury() external swapping onlyOwner { uint256 amountToSwap = _gonBalances[address(this)].div(_gonsPerFragment); require(amountToSwap > 0, 'There is no token deposited in token contract'); address[] memory path = new address[](2); path[0] = address(this); path[1] = router.WETH(); router.swapExactTokensForETHSupportingFeeOnTransferTokens( amountToSwap, 0, path, gameTreasuryReceiver, block.timestamp ); } function shouldTakeFee(address from, address to) internal view returns (bool) { return (pair == from || pair == to) && !_isFeeExempt[from] && !_isFeeExempt[to]; } function shouldRebase() internal view returns (bool) { return _autoRebase && (_totalSupply < MAX_SUPPLY) && msg.sender != pair && !inSwap && block.timestamp >= (_lastRebasedTime + rebaseInterval); } function shouldAddLiquidity() internal view returns (bool) { return _autoAddLiquidity && !inSwap && msg.sender != pair && block.timestamp >= (_lastAddLiquidityTime + 48 hours); } function shouldSwapBack() internal view returns (bool) { return !inSwap && msg.sender != pair; } function setAutoRebase(bool _flag) external onlyOwner { if (_flag) { _autoRebase = _flag; _lastRebasedTime = block.timestamp; } else { _autoRebase = _flag; } } function setAutoAddLiquidity(bool _flag) external onlyOwner { if (_flag) { _autoAddLiquidity = _flag; _lastAddLiquidityTime = block.timestamp; } else { _autoAddLiquidity = _flag; } } function allowance(address owner_, address spender) external view override returns (uint256) { return _allowedFragments[owner_][spender]; } function decreaseAllowance(address spender, uint256 subtractedValue) external returns (bool) { uint256 oldValue = _allowedFragments[msg.sender][spender]; if (subtractedValue >= oldValue) { _allowedFragments[msg.sender][spender] = 0; } else { _allowedFragments[msg.sender][spender] = oldValue.sub(subtractedValue); } emit Approval(msg.sender, spender, _allowedFragments[msg.sender][spender]); return true; } function increaseAllowance(address spender, uint256 addedValue) external returns (bool) { _allowedFragments[msg.sender][spender] = _allowedFragments[msg.sender][spender].add(addedValue); emit Approval(msg.sender, spender, _allowedFragments[msg.sender][spender]); return true; } function approve(address spender, uint256 value) external override returns (bool) { _allowedFragments[msg.sender][spender] = value; emit Approval(msg.sender, spender, value); return true; } function checkFeeExempt(address _addr) external view returns (bool) { return _isFeeExempt[_addr]; } function getCirculatingSupply() public view returns (uint256) { return (TOTAL_GONS.sub(_gonBalances[DEAD]).sub(_gonBalances[ZERO])).div(_gonsPerFragment); } function isNotInSwap() external view returns (bool) { return !inSwap; } function manualSync() external { IPancakeSwapPair(pair).sync(); } function setFeeReceivers( address _gameTreasuryReceiver, address _petoInsuranceFundReceiver, address _infernoPit ) external onlyOwner { gameTreasuryReceiver = _gameTreasuryReceiver; petoInsuranceFundReceiver = _petoInsuranceFundReceiver; infernoPit = _infernoPit; } function setFee( uint256 _liquidityFee, uint256 _gameTreasuryFee, uint256 _petoInsuranceFundFee, uint256 _infernoPitFee, uint256 _sellFee ) external onlyOwner { liquidityFee = _liquidityFee; gameTreasuryFee = _gameTreasuryFee; petoInsuranceFundFee = _petoInsuranceFundFee; infernoPitFee = _infernoPitFee; totalFee = liquidityFee.add(gameTreasuryFee).add(petoInsuranceFundFee).add(infernoPitFee); sellFee = _sellFee; require(totalFee.add(sellFee) <= 250, 'Fee too high!'); } function getLiquidityBacking(uint256 accuracy) public view returns (uint256) { uint256 liquidityBalance = _gonBalances[pair].div(_gonsPerFragment); return accuracy.mul(liquidityBalance.mul(2)).div(getCirculatingSupply()); } function setWhitelist(address _addr) external onlyOwner { _isFeeExempt[_addr] = true; } function setBotBlacklist(address _botAddress, bool _flag) external onlyOwner { require(isContract(_botAddress), 'only contract address, not allowed exteranlly owned account'); blacklist[_botAddress] = _flag; } function totalSupply() external view override returns (uint256) { return _totalSupply; } function balanceOf(address who) external view override returns (uint256) { return _gonBalances[who].div(_gonsPerFragment); } function isContract(address addr) internal view returns (bool) { uint256 size; assembly { size := extcodesize(addr) } return size > 0; } receive() external payable {} }
{ "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":"_router","type":"address"},{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_gameTreasuryReceiver","type":"address"},{"internalType":"address","name":"_petoInsuranceFundReceiver","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":true,"internalType":"uint256","name":"epoch","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"totalSupply","type":"uint256"}],"name":"LogRebase","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"}],"name":"OwnershipRenounced","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"DECIMALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_UINT256","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"RATE_DECIMALS","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_autoAddLiquidity","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_autoRebase","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_initRebaseStartTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_lastAddLiquidityTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_lastRebasedTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","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":"owner_","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"autoLiquidityReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"who","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"blacklist","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_addr","type":"address"}],"name":"checkFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"feeDenominator","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"gameTreasuryFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"gameTreasuryReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"getLiquidityBacking","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"infernoPit","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"infernoPitFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isNotInSwap","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSync","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pairAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pairContract","outputs":[{"internalType":"contract IPancakeSwapPair","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"petoInsuranceFundFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"petoInsuranceFundReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rebaseInterval","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IPancakeSwapRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_flag","type":"bool"}],"name":"setAutoAddLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_flag","type":"bool"}],"name":"setAutoRebase","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_botAddress","type":"address"},{"internalType":"bool","name":"_flag","type":"bool"}],"name":"setBotBlacklist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_gameTreasuryFee","type":"uint256"},{"internalType":"uint256","name":"_petoInsuranceFundFee","type":"uint256"},{"internalType":"uint256","name":"_infernoPitFee","type":"uint256"},{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_gameTreasuryReceiver","type":"address"},{"internalType":"address","name":"_petoInsuranceFundReceiver","type":"address"},{"internalType":"address","name":"_infernoPit","type":"address"}],"name":"setFeeReceivers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_addr","type":"address"}],"name":"setWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawAllTogameTreasury","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60c060405260096080819052685065746f766572736560b81b60a09081526200002c9160039190620007b6565b50604080518082019091526004808252635045544f60e01b6020909201918252620000589181620007b6565b506005805460ff191681179055601e60078190556014600881905560098290556050600a819055620000b6929091620000a2919082908290620005e8602090811b620017ee17901c565b620005e860201b620017ee1790919060201c565b600b556014600c8190556103e8600d55600e80546001600160a01b031990811661dead17909155600f80549091169055805460ff60a01b19908116600160a01b17909155601680549091169055610384601c553480156200011657600080fd5b50604051620031d9380380620031d9833981810160405260808110156200013c57600080fd5b508051602080830151604080850151606090950151600380548351601f6002600019610100600186161502019093169290920491820187900487028101870190945280845295969395939491939091830182828015620001e05780601f10620001b457610100808354040283529160200191620001e0565b820191906000526020600020905b815481529060010190602001808311620001c257829003601f168201915b505060048054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815295509193509150830182828015620002725780601f10620002465761010080835404028352916020019162000272565b820191906000526020600020905b8154815290600101906020018083116200025457829003601f168201915b50508451600593506200028f9250600091506020860190620007b6565b508151620002a5906001906020850190620007b6565b506002805460ff191660ff9290921691909117610100600160a81b03191661010033021790555050601580546001600160a01b0319166001600160a01b0386811691909117918290556040805163c45a015560e01b81529051929091169163c45a015591600480820192602092909190829003018186803b1580156200032a57600080fd5b505afa1580156200033f573d6000803e3d6000fd5b505050506040513d60208110156200035657600080fd5b5051601554604080516315ab88c960e31b815290516001600160a01b039384169363c9c6539693169163ad5c4648916004808301926020929190829003018186803b158015620003a557600080fd5b505afa158015620003ba573d6000803e3d6000fd5b505050506040513d6020811015620003d157600080fd5b5051604080516001600160e01b031960e085901b1681526001600160a01b0390921660048301523060248301525160448083019260209291908290030181600087803b1580156200042157600080fd5b505af115801562000436573d6000803e3d6000fd5b505050506040513d60208110156200044d57600080fd5b5051601680546001600160a01b03199081166001600160a01b03938416178255600e5460108054918516918316919091179055601180548216868516179055601280548216858516179055600f5460138054918516918316919091179055306000908152601e60209081526040808320601554871684528252808320600019905593546014805491871691909416811790935560058054610100600160a81b031916610100909402939093179092556412a05f2000601a9081559387168152601d825291909120641106ddbfff199081905591546200053692916200064a811b6200184817901c565b601b554260178190556018556016805461ffff60a81b1916600160b01b1790556001600160a01b038316600090815260066020526040808220805460ff19908116600190811790925530845291909220805490911690911790556200059b8362000694565b601a5460408051918252516001600160a01b038516916000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050505062000862565b60008282018381101562000643576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b60006200064383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200070f60201b60201c565b6001600160a01b038116620006a857600080fd5b6002546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600280546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b600081836200079f5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156200076357818101518382015260200162000749565b50505050905090810190601f168015620007915780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581620007ac57fe5b0495945050505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282620007ee576000855562000839565b82601f106200080957805160ff191683800117855562000839565b8280016001018555821562000839579182015b82811115620008395782518255916020019190600101906200081c565b50620008479291506200084b565b5090565b5b808211156200084757600081556001016200084c565b61296780620008726000396000f3fe60806040526004361061037a5760003560e01c80638f32d59b116101d1578063d28d885211610102578063e15beb80116100a0578063f887ea401161006f578063f887ea4014610ad0578063f9f92be414610ae5578063fe63adc414610b18578063ff50cb5614610b2d57610381565b8063e15beb8014610a47578063f0c9a48014610a73578063f2fde38b14610a88578063f7ad0fa314610abb57610381565b8063d7c01032116100dc578063d7c010321461099d578063d88e00c2146109e2578063dd62ed3e146109f7578063e0a23cb714610a3257610381565b8063d28d88521461092b578063d439979014610940578063d51ed1c81461097357610381565b8063a8aa1b311161016f578063afb9cf6d11610149578063afb9cf6d146108c0578063b09f1266146108d5578063ca33e64c146108ea578063cfbac92f146108ff57610381565b8063a8aa1b311461085d578063a8b0898214610872578063a9059cbb1461088757610381565b80639b2912cc116101ab5780639b2912cc146107b85780639b87676c146107cd578063a2e00d63146107e2578063a457c2d71461082457610381565b80638f32d59b1461077957806395d89b411461078e57806398118cb4146107a357610381565b806337c9be87116102ab57806370a082311161024957806383b4ac681161022357806383b4ac6814610707578063854cff2f1461071c57806389edeb741461074f5780638da5cb5b1461076457610381565b806370a08231146106aa578063715018a6146106dd578063753d02a1146106f257610381565b80634d709adf116102855780634d709adf1461063a5780635a604c521461066b5780636912652c146106805780636ddd17131461069557610381565b806337c9be87146105b157806339509351146105ec5780633eaaf86b1461062557610381565b80632b112e4911610318578063313ce567116102f2578063313ce5671461054757806332424aa31461057257806332b756831461058757806333a581d21461059c57610381565b80632b112e49146105085780632b14ca561461051d5780632e0f26251461053257610381565b8063180b0d7e11610354578063180b0d7e1461047457806318160ddd1461049b5780631df4ccfc146104b057806323b872dd146104c557610381565b806306fdde031461038657806308af017a14610410578063095ea7b31461042757610381565b3661038157005b600080fd5b34801561039257600080fd5b5061039b610b42565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103d55781810151838201526020016103bd565b50505050905090810190601f1680156104025780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041c57600080fd5b50610425610bd8565b005b34801561043357600080fd5b506104606004803603604081101561044a57600080fd5b506001600160a01b038135169060200135610e05565b604080519115158252519081900360200190f35b34801561048057600080fd5b50610489610e6c565b60408051918252519081900360200190f35b3480156104a757600080fd5b50610489610e72565b3480156104bc57600080fd5b50610489610e78565b3480156104d157600080fd5b50610460600480360360608110156104e857600080fd5b506001600160a01b03813581169160208101359091169060400135610e7e565b34801561051457600080fd5b50610489610f58565b34801561052957600080fd5b50610489610fb3565b34801561053e57600080fd5b50610489610fb9565b34801561055357600080fd5b5061055c610fbe565b6040805160ff9092168252519081900360200190f35b34801561057e57600080fd5b5061055c610fc7565b34801561059357600080fd5b50610489610fd0565b3480156105a857600080fd5b50610489610fd6565b3480156105bd57600080fd5b50610425600480360360408110156105d457600080fd5b506001600160a01b0381351690602001351515610fdc565b3480156105f857600080fd5b506104606004803603604081101561060f57600080fd5b506001600160a01b03813516906020013561105c565b34801561063157600080fd5b506104896110ef565b34801561064657600080fd5b5061064f6110f5565b604080516001600160a01b039092168252519081900360200190f35b34801561067757600080fd5b5061055c611109565b34801561068c57600080fd5b5061046061110e565b3480156106a157600080fd5b5061046061111e565b3480156106b657600080fd5b50610489600480360360208110156106cd57600080fd5b50356001600160a01b031661112e565b3480156106e957600080fd5b50610425611156565b3480156106fe57600080fd5b506104256111b6565b34801561071357600080fd5b50610460611220565b34801561072857600080fd5b506104256004803603602081101561073f57600080fd5b50356001600160a01b0316611231565b34801561075b57600080fd5b50610489611266565b34801561077057600080fd5b5061064f61126c565b34801561078557600080fd5b50610460611280565b34801561079a57600080fd5b5061039b611296565b3480156107af57600080fd5b506104896112f6565b3480156107c457600080fd5b506104896112fc565b3480156107d957600080fd5b50610489611302565b3480156107ee57600080fd5b50610425600480360360a081101561080557600080fd5b5080359060208101359060408101359060608101359060800135611308565b34801561083057600080fd5b506104606004803603604081101561084757600080fd5b506001600160a01b0381351690602001356113a4565b34801561086957600080fd5b5061064f61148d565b34801561087e57600080fd5b5061064f61149c565b34801561089357600080fd5b50610460600480360360408110156108aa57600080fd5b506001600160a01b0381351690602001356114ab565b3480156108cc57600080fd5b506104606114d7565b3480156108e157600080fd5b5061039b6114e7565b3480156108f657600080fd5b5061064f611575565b34801561090b57600080fd5b506104256004803603602081101561092257600080fd5b50351515611584565b34801561093757600080fd5b5061039b6115d6565b34801561094c57600080fd5b506104606004803603602081101561096357600080fd5b50356001600160a01b0316611631565b34801561097f57600080fd5b506104896004803603602081101561099657600080fd5b503561164f565b3480156109a957600080fd5b50610425600480360360608110156109c057600080fd5b506001600160a01b0381358116916020810135821691604090910135166116a3565b3480156109ee57600080fd5b5061064f6116f3565b348015610a0357600080fd5b5061048960048036036040811015610a1a57600080fd5b506001600160a01b0381358116916020013516611702565b348015610a3e57600080fd5b5061048961172d565b348015610a5357600080fd5b5061042560048036036020811015610a6a57600080fd5b50351515611733565b348015610a7f57600080fd5b50610489611786565b348015610a9457600080fd5b5061042560048036036020811015610aab57600080fd5b50356001600160a01b031661178c565b348015610ac757600080fd5b5061064f6117a6565b348015610adc57600080fd5b5061064f6117b5565b348015610af157600080fd5b5061046060048036036020811015610b0857600080fd5b50356001600160a01b03166117c4565b348015610b2457600080fd5b506104896117d9565b348015610b3957600080fd5b5061064f6117df565b60008054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610bce5780601f10610ba357610100808354040283529160200191610bce565b820191906000526020600020905b815481529060010190602001808311610bb157829003601f168201915b5050505050905090565b6016805460ff60a01b1916600160a01b179055610bf3611280565b610bfc57600080fd5b601b54306000908152601d60205260408120549091610c1b9190611848565b905060008111610c5c5760405162461bcd60e51b815260040180806020018281038252602d815260200180612905602d913960400191505060405180910390fd5b60408051600280825260608083018452926020830190803683370190505090503081600081518110610c8a57fe5b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b158015610cde57600080fd5b505afa158015610cf2573d6000803e3d6000fd5b505050506040513d6020811015610d0857600080fd5b5051815182906001908110610d1957fe5b6001600160a01b0392831660209182029290920181019190915260155460115460405163791ac94760e01b81526004810187815260006024830181905292861660648301819052426084840181905260a060448501908152895160a48601528951969098169763791ac947978b978b969495939460c4019187810191028083838b5b83811015610db3578181015183820152602001610d9b565b505050509050019650505050505050600060405180830381600087803b158015610ddc57600080fd5b505af1158015610df0573d6000803e3d6000fd5b50506016805460ff60a01b1916905550505050565b336000818152601e602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b600d5481565b601a5490565b600b5481565b6000826001600160a01b038116610e9457600080fd5b6001600160a01b0385166000908152601e6020908152604080832033845290915290205460001914610f41576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0388166000908152601e82528381203382529091529190912054610f1c91859061188a565b6001600160a01b0386166000908152601e602090815260408083203384529091529020555b610f4c858585611921565b50600195945050505050565b601b54600f546001600160a01b039081166000908152601d602052604080822054600e5490931682528120549092610fae929091610fa89190610fa290641106ddbfff1990611b12565b90611b12565b90611848565b905090565b600c5481565b600581565b60025460ff1690565b60055460ff1681565b60185481565b60001981565b610fe4611280565b610fed57600080fd5b610ff682611b54565b6110315760405162461bcd60e51b815260040180806020018281038252603b8152602001806128ca603b913960400191505060405180910390fd5b6001600160a01b03919091166000908152601f60205260409020805460ff1916911515919091179055565b336000908152601e602090815260408083206001600160a01b038616845290915281205461108a90836117ee565b336000818152601e602090815260408083206001600160a01b0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b601a5481565b60055461010090046001600160a01b031681565b600781565b601654600160b01b900460ff1681565b601454600160a01b900460ff1681565b601b546001600160a01b0382166000908152601d60205260408120549091610e669190611848565b61115e611280565b61116757600080fd5b6002546040516101009091046001600160a01b0316907ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482090600090a260028054610100600160a81b0319169055565b601660009054906101000a90046001600160a01b03166001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561120657600080fd5b505af115801561121a573d6000803e3d6000fd5b50505050565b601654600160a01b900460ff161590565b611239611280565b61124257600080fd5b6001600160a01b03166000908152600660205260409020805460ff19166001179055565b601c5481565b60025461010090046001600160a01b031690565b60025461010090046001600160a01b0316331490565b60018054604080516020601f60026000196101008789161502019095169490940493840181900481028201810190925282815260609390929091830182828015610bce5780601f10610ba357610100808354040283529160200191610bce565b60075481565b60195481565b60175481565b611310611280565b61131957600080fd5b600785905560088490556009839055600a8290556113438261133d858189896117ee565b906117ee565b600b819055600c82905560fa9061135a90836117ee565b111561139d576040805162461bcd60e51b815260206004820152600d60248201526c46656520746f6f20686967682160981b604482015290519081900360640190fd5b5050505050565b336000908152601e602090815260408083206001600160a01b03861684529091528120548083106113f857336000908152601e602090815260408083206001600160a01b0388168452909152812055611427565b6114028184611b12565b336000908152601e602090815260408083206001600160a01b03891684529091529020555b336000818152601e602090815260408083206001600160a01b0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6016546001600160a01b031681565b6014546001600160a01b031681565b6000826001600160a01b0381166114c157600080fd5b6114cc338585611921565b506001949350505050565b601654600160a81b900460ff1681565b6004805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561156d5780601f106115425761010080835404028352916020019161156d565b820191906000526020600020905b81548152906001019060200180831161155057829003601f168201915b505050505081565b6010546001600160a01b031681565b61158c611280565b61159557600080fd5b80156115bb576016805460ff60b01b1916600160b01b83151502179055426019556115d3565b6016805460ff60b01b1916600160b01b831515021790555b50565b6003805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561156d5780601f106115425761010080835404028352916020019161156d565b6001600160a01b031660009081526006602052604090205460ff1690565b601b546016546001600160a01b03166000908152601d60205260408120549091829161167a91611848565b905061169c611687610f58565b610fa8611695846002611b5a565b8690611b5a565b9392505050565b6116ab611280565b6116b457600080fd5b601180546001600160a01b039485166001600160a01b031991821617909155601280549385169382169390931790925560138054919093169116179055565b6012546001600160a01b031681565b6001600160a01b039182166000908152601e6020908152604080832093909416825291909152205490565b600a5481565b61173b611280565b61174457600080fd5b801561176a576016805460ff60a81b1916600160a81b83151502179055426018556115d3565b60168054821515600160a81b0260ff60a81b1990911617905550565b60085481565b611794611280565b61179d57600080fd5b6115d381611bb3565b6013546001600160a01b031681565b6015546001600160a01b031681565b601f6020526000908152604090205460ff1681565b60095481565b6011546001600160a01b031681565b60008282018381101561169c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600061169c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c2d565b600081848411156119195760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156118de5781810151838201526020016118c6565b50505050905090810190601f16801561190b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b0383166000908152601f602052604081205460ff1615801561196357506001600160a01b0383166000908152601f602052604090205460ff16155b6119a3576040805162461bcd60e51b815260206004820152600c60248201526b1a5b97d89b1858dadb1a5cdd60a21b604482015290519081900360640190fd5b601654600160a01b900460ff16156119c7576119c0848484611c92565b905061169c565b6119cf611d24565b156119dc576119dc611d89565b6119e4611f34565b156119f1576119f1611f87565b6119f96122c4565b15611a0657611a066122ef565b6000611a1d601b5484611b5a90919063ffffffff16565b6001600160a01b0386166000908152601d6020526040902054909150611a439082611b12565b6001600160a01b0386166000908152601d6020526040812091909155611a698686612612565b611a735781611a7e565b611a7e86868461268c565b6001600160a01b0386166000908152601d6020526040902054909150611aa490826117ee565b6001600160a01b038087166000818152601d6020526040902092909255601b54908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611af5908590611848565b60408051918252519081900360200190a350600195945050505050565b600061169c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061188a565b3b151590565b600082611b6957506000610e66565b82820282848281611b7657fe5b041461169c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128a96021913960400191505060405180910390fd5b6001600160a01b038116611bc657600080fd5b6002546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600280546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b60008183611c7c5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156118de5781810151838201526020016118c6565b506000838581611c8857fe5b0495945050505050565b600080611caa601b5484611b5a90919063ffffffff16565b6001600160a01b0386166000908152601d6020526040902054909150611cd09082611b12565b6001600160a01b038087166000908152601d60205260408082209390935590861681522054611cff90826117ee565b6001600160a01b0385166000908152601d602052604090205550600190509392505050565b601654600090600160a81b900460ff168015611d475750601a546548c273950000115b8015611d5e57506016546001600160a01b03163314155b8015611d745750601654600160a01b900460ff16155b8015610fae575050601c546018540142101590565b601654600160a01b900460ff1615611da057611f32565b601754601854601c5460009242908103929003908390611dc1908390611848565b90506000611dd082600f611b5a565b90506301e13380841015611de857610b169450611e20565b6301e133808410611dfc5760d39450611e20565b6302d1cd408410611e1057600e9450611e20565b630d2868808410611e2057600294505b60005b82811015611e5357611e4862989680610fa8611e3f828a6117ee565b601a5490611b5a565b601a55600101611e23565b50601a54611e6890641106ddbfff1990611848565b601b55601c54611e8690611e7d908490611b5a565b601854906117ee565b601881905550600560019054906101000a90046001600160a01b03166001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b158015611edc57600080fd5b505af1158015611ef0573d6000803e3d6000fd5b5050601a5460408051918252518493507f72725a3b1e5bd622d6bcd1339bb31279c351abe8f541ac7fd320f24e1b1641f292509081900360200190a250505050505b565b601654600090600160b01b900460ff168015611f5a5750601654600160a01b900460ff16155b8015611f7157506016546001600160a01b03163314155b8015610fae5750506019546202a3000142101590565b6016805460ff60a01b1916600160a01b179055601b546010546001600160a01b03166000908152601d60205260408120549091611fc49190611848565b6010546001600160a01b03166000908152601d602052604080822054308352912054919250611ff391906117ee565b306000908152601d6020526040808220929092556010546001600160a01b03168152908120819055612026826002611848565b905060006120348383611b12565b905080612043575050506122b5565b6040805160028082526060808301845292602083019080368337019050509050308160008151811061207157fe5b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b1580156120c557600080fd5b505afa1580156120d9573d6000803e3d6000fd5b505050506040513d60208110156120ef57600080fd5b505181518290600190811061210057fe5b6001600160a01b0392831660209182029290920181019190915260155460405163791ac94760e01b8152600481018681526000602483018190523060648401819052426084850181905260a060448601908152895160a487015289514799979097169763791ac947978c9795968c9690939260c49091019187820191028083838b5b8381101561219a578181015183820152602001612182565b505050509050019650505050505050600060405180830381600087803b1580156121c357600080fd5b505af11580156121d7573d6000803e3d6000fd5b5050505060006121f08247611b1290919063ffffffff16565b90506000851180156122025750600081115b156122aa57601554600e546040805163f305d71960e01b81523060048201526024810189905260006044820181905260648201526001600160a01b0392831660848201524260a48201529051919092169163f305d71991849160c48082019260609290919082900301818588803b15801561227c57600080fd5b505af1158015612290573d6000803e3d6000fd5b50505050506040513d60608110156122a757600080fd5b50505b505042601955505050505b6016805460ff60a01b19169055565b601654600090600160a01b900460ff16158015610fae5750506016546001600160a01b031633141590565b6016805460ff60a01b1916600160a01b179055601b54306000908152601d602052604081205490916123219190611848565b90508061232e57506122b5565b60408051600280825260608083018452479390929190602083019080368337019050509050308160008151811061236157fe5b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b1580156123b557600080fd5b505afa1580156123c9573d6000803e3d6000fd5b505050506040513d60208110156123df57600080fd5b50518151829060019081106123f057fe5b60200260200101906001600160a01b031690816001600160a01b031681525050601560009054906101000a90046001600160a01b03166001600160a01b031663791ac9478460008430426040518663ffffffff1660e01b81526004018086815260200185815260200180602001846001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b838110156124aa578181015183820152602001612492565b505050509050019650505050505050600060405180830381600087803b1580156124d357600080fd5b505af11580156124e7573d6000803e3d6000fd5b5050505060006125008347611b1290919063ffffffff16565b6011546009546008549293506000926001600160a01b03909216916125379161252991906117ee565b600854610fa8908690611b5a565b60405161753091906000818181858888f193505050503d8060008114612579576040519150601f19603f3d011682016040523d82523d6000602084013e61257e565b606091505b50506012546009546008549293506001600160a01b03909116916125b4916125a691906117ee565b600954610fa8908690611b5a565b60405161753091906000818181858888f193505050503d80600081146125f6576040519150601f19603f3d011682016040523d82523d6000602084013e6125fb565b606091505b50505050505050506016805460ff60a01b19169055565b6016546000906001600160a01b038481169116148061263e57506016546001600160a01b038381169116145b801561266357506001600160a01b03831660009081526006602052604090205460ff16155b801561169c5750506001600160a01b031660009081526006602052604090205460ff1615919050565b600b5460085460165460009291906001600160a01b03868116911614156126d857600c54600b546126bc916117ee565b91506126d5600c546008546117ee90919063ffffffff16565b90505b60006126f9836126f3600d548861184890919063ffffffff16565b90611b5a565b905061273a612719600a546126f3600d548961184890919063ffffffff16565b6013546001600160a01b03166000908152601d6020526040902054906117ee565b6013546001600160a01b03166000908152601d602052604090205560095461278f906127799061276b9085906117ee565b600d546126f3908990611848565b306000908152601d6020526040902054906117ee565b306000908152601d6020526040902055600754600d546127d9916127b8916126f3908990611848565b6010546001600160a01b03166000908152601d6020526040902054906117ee565b6010546001600160a01b039081166000908152601d6020526040902091909155601b5430918916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061282e908590611848565b60408051918252519081900360200190a3601354601b54600a546001600160a01b03928316928a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9161288291611848565b60408051918252519081900360200190a361289d8582611b12565b97965050505050505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776f6e6c7920636f6e747261637420616464726573732c206e6f7420616c6c6f776564206578746572616e6c6c79206f776e6564206163636f756e745468657265206973206e6f20746f6b656e206465706f736974656420696e20746f6b656e20636f6e7472616374a26469706673582212205ad34551f62b905e660217c7990fcffd086419ed336e4b6975bba52f6bc5fbb564736f6c6343000704003300000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e000000000000000000000000176e72121395f7f9d05b6fc86d175eac8e2dafe1000000000000000000000000899c1ea464cb367a2ceddd354fd07559aad9200d0000000000000000000000008fcfa51b56d2d320b7e2e4de5f0ef9c18cd26432
Deployed Bytecode
0x60806040526004361061037a5760003560e01c80638f32d59b116101d1578063d28d885211610102578063e15beb80116100a0578063f887ea401161006f578063f887ea4014610ad0578063f9f92be414610ae5578063fe63adc414610b18578063ff50cb5614610b2d57610381565b8063e15beb8014610a47578063f0c9a48014610a73578063f2fde38b14610a88578063f7ad0fa314610abb57610381565b8063d7c01032116100dc578063d7c010321461099d578063d88e00c2146109e2578063dd62ed3e146109f7578063e0a23cb714610a3257610381565b8063d28d88521461092b578063d439979014610940578063d51ed1c81461097357610381565b8063a8aa1b311161016f578063afb9cf6d11610149578063afb9cf6d146108c0578063b09f1266146108d5578063ca33e64c146108ea578063cfbac92f146108ff57610381565b8063a8aa1b311461085d578063a8b0898214610872578063a9059cbb1461088757610381565b80639b2912cc116101ab5780639b2912cc146107b85780639b87676c146107cd578063a2e00d63146107e2578063a457c2d71461082457610381565b80638f32d59b1461077957806395d89b411461078e57806398118cb4146107a357610381565b806337c9be87116102ab57806370a082311161024957806383b4ac681161022357806383b4ac6814610707578063854cff2f1461071c57806389edeb741461074f5780638da5cb5b1461076457610381565b806370a08231146106aa578063715018a6146106dd578063753d02a1146106f257610381565b80634d709adf116102855780634d709adf1461063a5780635a604c521461066b5780636912652c146106805780636ddd17131461069557610381565b806337c9be87146105b157806339509351146105ec5780633eaaf86b1461062557610381565b80632b112e4911610318578063313ce567116102f2578063313ce5671461054757806332424aa31461057257806332b756831461058757806333a581d21461059c57610381565b80632b112e49146105085780632b14ca561461051d5780632e0f26251461053257610381565b8063180b0d7e11610354578063180b0d7e1461047457806318160ddd1461049b5780631df4ccfc146104b057806323b872dd146104c557610381565b806306fdde031461038657806308af017a14610410578063095ea7b31461042757610381565b3661038157005b600080fd5b34801561039257600080fd5b5061039b610b42565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103d55781810151838201526020016103bd565b50505050905090810190601f1680156104025780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041c57600080fd5b50610425610bd8565b005b34801561043357600080fd5b506104606004803603604081101561044a57600080fd5b506001600160a01b038135169060200135610e05565b604080519115158252519081900360200190f35b34801561048057600080fd5b50610489610e6c565b60408051918252519081900360200190f35b3480156104a757600080fd5b50610489610e72565b3480156104bc57600080fd5b50610489610e78565b3480156104d157600080fd5b50610460600480360360608110156104e857600080fd5b506001600160a01b03813581169160208101359091169060400135610e7e565b34801561051457600080fd5b50610489610f58565b34801561052957600080fd5b50610489610fb3565b34801561053e57600080fd5b50610489610fb9565b34801561055357600080fd5b5061055c610fbe565b6040805160ff9092168252519081900360200190f35b34801561057e57600080fd5b5061055c610fc7565b34801561059357600080fd5b50610489610fd0565b3480156105a857600080fd5b50610489610fd6565b3480156105bd57600080fd5b50610425600480360360408110156105d457600080fd5b506001600160a01b0381351690602001351515610fdc565b3480156105f857600080fd5b506104606004803603604081101561060f57600080fd5b506001600160a01b03813516906020013561105c565b34801561063157600080fd5b506104896110ef565b34801561064657600080fd5b5061064f6110f5565b604080516001600160a01b039092168252519081900360200190f35b34801561067757600080fd5b5061055c611109565b34801561068c57600080fd5b5061046061110e565b3480156106a157600080fd5b5061046061111e565b3480156106b657600080fd5b50610489600480360360208110156106cd57600080fd5b50356001600160a01b031661112e565b3480156106e957600080fd5b50610425611156565b3480156106fe57600080fd5b506104256111b6565b34801561071357600080fd5b50610460611220565b34801561072857600080fd5b506104256004803603602081101561073f57600080fd5b50356001600160a01b0316611231565b34801561075b57600080fd5b50610489611266565b34801561077057600080fd5b5061064f61126c565b34801561078557600080fd5b50610460611280565b34801561079a57600080fd5b5061039b611296565b3480156107af57600080fd5b506104896112f6565b3480156107c457600080fd5b506104896112fc565b3480156107d957600080fd5b50610489611302565b3480156107ee57600080fd5b50610425600480360360a081101561080557600080fd5b5080359060208101359060408101359060608101359060800135611308565b34801561083057600080fd5b506104606004803603604081101561084757600080fd5b506001600160a01b0381351690602001356113a4565b34801561086957600080fd5b5061064f61148d565b34801561087e57600080fd5b5061064f61149c565b34801561089357600080fd5b50610460600480360360408110156108aa57600080fd5b506001600160a01b0381351690602001356114ab565b3480156108cc57600080fd5b506104606114d7565b3480156108e157600080fd5b5061039b6114e7565b3480156108f657600080fd5b5061064f611575565b34801561090b57600080fd5b506104256004803603602081101561092257600080fd5b50351515611584565b34801561093757600080fd5b5061039b6115d6565b34801561094c57600080fd5b506104606004803603602081101561096357600080fd5b50356001600160a01b0316611631565b34801561097f57600080fd5b506104896004803603602081101561099657600080fd5b503561164f565b3480156109a957600080fd5b50610425600480360360608110156109c057600080fd5b506001600160a01b0381358116916020810135821691604090910135166116a3565b3480156109ee57600080fd5b5061064f6116f3565b348015610a0357600080fd5b5061048960048036036040811015610a1a57600080fd5b506001600160a01b0381358116916020013516611702565b348015610a3e57600080fd5b5061048961172d565b348015610a5357600080fd5b5061042560048036036020811015610a6a57600080fd5b50351515611733565b348015610a7f57600080fd5b50610489611786565b348015610a9457600080fd5b5061042560048036036020811015610aab57600080fd5b50356001600160a01b031661178c565b348015610ac757600080fd5b5061064f6117a6565b348015610adc57600080fd5b5061064f6117b5565b348015610af157600080fd5b5061046060048036036020811015610b0857600080fd5b50356001600160a01b03166117c4565b348015610b2457600080fd5b506104896117d9565b348015610b3957600080fd5b5061064f6117df565b60008054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610bce5780601f10610ba357610100808354040283529160200191610bce565b820191906000526020600020905b815481529060010190602001808311610bb157829003601f168201915b5050505050905090565b6016805460ff60a01b1916600160a01b179055610bf3611280565b610bfc57600080fd5b601b54306000908152601d60205260408120549091610c1b9190611848565b905060008111610c5c5760405162461bcd60e51b815260040180806020018281038252602d815260200180612905602d913960400191505060405180910390fd5b60408051600280825260608083018452926020830190803683370190505090503081600081518110610c8a57fe5b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b158015610cde57600080fd5b505afa158015610cf2573d6000803e3d6000fd5b505050506040513d6020811015610d0857600080fd5b5051815182906001908110610d1957fe5b6001600160a01b0392831660209182029290920181019190915260155460115460405163791ac94760e01b81526004810187815260006024830181905292861660648301819052426084840181905260a060448501908152895160a48601528951969098169763791ac947978b978b969495939460c4019187810191028083838b5b83811015610db3578181015183820152602001610d9b565b505050509050019650505050505050600060405180830381600087803b158015610ddc57600080fd5b505af1158015610df0573d6000803e3d6000fd5b50506016805460ff60a01b1916905550505050565b336000818152601e602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b600d5481565b601a5490565b600b5481565b6000826001600160a01b038116610e9457600080fd5b6001600160a01b0385166000908152601e6020908152604080832033845290915290205460001914610f41576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0388166000908152601e82528381203382529091529190912054610f1c91859061188a565b6001600160a01b0386166000908152601e602090815260408083203384529091529020555b610f4c858585611921565b50600195945050505050565b601b54600f546001600160a01b039081166000908152601d602052604080822054600e5490931682528120549092610fae929091610fa89190610fa290641106ddbfff1990611b12565b90611b12565b90611848565b905090565b600c5481565b600581565b60025460ff1690565b60055460ff1681565b60185481565b60001981565b610fe4611280565b610fed57600080fd5b610ff682611b54565b6110315760405162461bcd60e51b815260040180806020018281038252603b8152602001806128ca603b913960400191505060405180910390fd5b6001600160a01b03919091166000908152601f60205260409020805460ff1916911515919091179055565b336000908152601e602090815260408083206001600160a01b038616845290915281205461108a90836117ee565b336000818152601e602090815260408083206001600160a01b0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b601a5481565b60055461010090046001600160a01b031681565b600781565b601654600160b01b900460ff1681565b601454600160a01b900460ff1681565b601b546001600160a01b0382166000908152601d60205260408120549091610e669190611848565b61115e611280565b61116757600080fd5b6002546040516101009091046001600160a01b0316907ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482090600090a260028054610100600160a81b0319169055565b601660009054906101000a90046001600160a01b03166001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561120657600080fd5b505af115801561121a573d6000803e3d6000fd5b50505050565b601654600160a01b900460ff161590565b611239611280565b61124257600080fd5b6001600160a01b03166000908152600660205260409020805460ff19166001179055565b601c5481565b60025461010090046001600160a01b031690565b60025461010090046001600160a01b0316331490565b60018054604080516020601f60026000196101008789161502019095169490940493840181900481028201810190925282815260609390929091830182828015610bce5780601f10610ba357610100808354040283529160200191610bce565b60075481565b60195481565b60175481565b611310611280565b61131957600080fd5b600785905560088490556009839055600a8290556113438261133d858189896117ee565b906117ee565b600b819055600c82905560fa9061135a90836117ee565b111561139d576040805162461bcd60e51b815260206004820152600d60248201526c46656520746f6f20686967682160981b604482015290519081900360640190fd5b5050505050565b336000908152601e602090815260408083206001600160a01b03861684529091528120548083106113f857336000908152601e602090815260408083206001600160a01b0388168452909152812055611427565b6114028184611b12565b336000908152601e602090815260408083206001600160a01b03891684529091529020555b336000818152601e602090815260408083206001600160a01b0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6016546001600160a01b031681565b6014546001600160a01b031681565b6000826001600160a01b0381166114c157600080fd5b6114cc338585611921565b506001949350505050565b601654600160a81b900460ff1681565b6004805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561156d5780601f106115425761010080835404028352916020019161156d565b820191906000526020600020905b81548152906001019060200180831161155057829003601f168201915b505050505081565b6010546001600160a01b031681565b61158c611280565b61159557600080fd5b80156115bb576016805460ff60b01b1916600160b01b83151502179055426019556115d3565b6016805460ff60b01b1916600160b01b831515021790555b50565b6003805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561156d5780601f106115425761010080835404028352916020019161156d565b6001600160a01b031660009081526006602052604090205460ff1690565b601b546016546001600160a01b03166000908152601d60205260408120549091829161167a91611848565b905061169c611687610f58565b610fa8611695846002611b5a565b8690611b5a565b9392505050565b6116ab611280565b6116b457600080fd5b601180546001600160a01b039485166001600160a01b031991821617909155601280549385169382169390931790925560138054919093169116179055565b6012546001600160a01b031681565b6001600160a01b039182166000908152601e6020908152604080832093909416825291909152205490565b600a5481565b61173b611280565b61174457600080fd5b801561176a576016805460ff60a81b1916600160a81b83151502179055426018556115d3565b60168054821515600160a81b0260ff60a81b1990911617905550565b60085481565b611794611280565b61179d57600080fd5b6115d381611bb3565b6013546001600160a01b031681565b6015546001600160a01b031681565b601f6020526000908152604090205460ff1681565b60095481565b6011546001600160a01b031681565b60008282018381101561169c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600061169c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c2d565b600081848411156119195760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156118de5781810151838201526020016118c6565b50505050905090810190601f16801561190b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b0383166000908152601f602052604081205460ff1615801561196357506001600160a01b0383166000908152601f602052604090205460ff16155b6119a3576040805162461bcd60e51b815260206004820152600c60248201526b1a5b97d89b1858dadb1a5cdd60a21b604482015290519081900360640190fd5b601654600160a01b900460ff16156119c7576119c0848484611c92565b905061169c565b6119cf611d24565b156119dc576119dc611d89565b6119e4611f34565b156119f1576119f1611f87565b6119f96122c4565b15611a0657611a066122ef565b6000611a1d601b5484611b5a90919063ffffffff16565b6001600160a01b0386166000908152601d6020526040902054909150611a439082611b12565b6001600160a01b0386166000908152601d6020526040812091909155611a698686612612565b611a735781611a7e565b611a7e86868461268c565b6001600160a01b0386166000908152601d6020526040902054909150611aa490826117ee565b6001600160a01b038087166000818152601d6020526040902092909255601b54908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611af5908590611848565b60408051918252519081900360200190a350600195945050505050565b600061169c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061188a565b3b151590565b600082611b6957506000610e66565b82820282848281611b7657fe5b041461169c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128a96021913960400191505060405180910390fd5b6001600160a01b038116611bc657600080fd5b6002546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600280546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b60008183611c7c5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156118de5781810151838201526020016118c6565b506000838581611c8857fe5b0495945050505050565b600080611caa601b5484611b5a90919063ffffffff16565b6001600160a01b0386166000908152601d6020526040902054909150611cd09082611b12565b6001600160a01b038087166000908152601d60205260408082209390935590861681522054611cff90826117ee565b6001600160a01b0385166000908152601d602052604090205550600190509392505050565b601654600090600160a81b900460ff168015611d475750601a546548c273950000115b8015611d5e57506016546001600160a01b03163314155b8015611d745750601654600160a01b900460ff16155b8015610fae575050601c546018540142101590565b601654600160a01b900460ff1615611da057611f32565b601754601854601c5460009242908103929003908390611dc1908390611848565b90506000611dd082600f611b5a565b90506301e13380841015611de857610b169450611e20565b6301e133808410611dfc5760d39450611e20565b6302d1cd408410611e1057600e9450611e20565b630d2868808410611e2057600294505b60005b82811015611e5357611e4862989680610fa8611e3f828a6117ee565b601a5490611b5a565b601a55600101611e23565b50601a54611e6890641106ddbfff1990611848565b601b55601c54611e8690611e7d908490611b5a565b601854906117ee565b601881905550600560019054906101000a90046001600160a01b03166001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b158015611edc57600080fd5b505af1158015611ef0573d6000803e3d6000fd5b5050601a5460408051918252518493507f72725a3b1e5bd622d6bcd1339bb31279c351abe8f541ac7fd320f24e1b1641f292509081900360200190a250505050505b565b601654600090600160b01b900460ff168015611f5a5750601654600160a01b900460ff16155b8015611f7157506016546001600160a01b03163314155b8015610fae5750506019546202a3000142101590565b6016805460ff60a01b1916600160a01b179055601b546010546001600160a01b03166000908152601d60205260408120549091611fc49190611848565b6010546001600160a01b03166000908152601d602052604080822054308352912054919250611ff391906117ee565b306000908152601d6020526040808220929092556010546001600160a01b03168152908120819055612026826002611848565b905060006120348383611b12565b905080612043575050506122b5565b6040805160028082526060808301845292602083019080368337019050509050308160008151811061207157fe5b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b1580156120c557600080fd5b505afa1580156120d9573d6000803e3d6000fd5b505050506040513d60208110156120ef57600080fd5b505181518290600190811061210057fe5b6001600160a01b0392831660209182029290920181019190915260155460405163791ac94760e01b8152600481018681526000602483018190523060648401819052426084850181905260a060448601908152895160a487015289514799979097169763791ac947978c9795968c9690939260c49091019187820191028083838b5b8381101561219a578181015183820152602001612182565b505050509050019650505050505050600060405180830381600087803b1580156121c357600080fd5b505af11580156121d7573d6000803e3d6000fd5b5050505060006121f08247611b1290919063ffffffff16565b90506000851180156122025750600081115b156122aa57601554600e546040805163f305d71960e01b81523060048201526024810189905260006044820181905260648201526001600160a01b0392831660848201524260a48201529051919092169163f305d71991849160c48082019260609290919082900301818588803b15801561227c57600080fd5b505af1158015612290573d6000803e3d6000fd5b50505050506040513d60608110156122a757600080fd5b50505b505042601955505050505b6016805460ff60a01b19169055565b601654600090600160a01b900460ff16158015610fae5750506016546001600160a01b031633141590565b6016805460ff60a01b1916600160a01b179055601b54306000908152601d602052604081205490916123219190611848565b90508061232e57506122b5565b60408051600280825260608083018452479390929190602083019080368337019050509050308160008151811061236157fe5b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b1580156123b557600080fd5b505afa1580156123c9573d6000803e3d6000fd5b505050506040513d60208110156123df57600080fd5b50518151829060019081106123f057fe5b60200260200101906001600160a01b031690816001600160a01b031681525050601560009054906101000a90046001600160a01b03166001600160a01b031663791ac9478460008430426040518663ffffffff1660e01b81526004018086815260200185815260200180602001846001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b838110156124aa578181015183820152602001612492565b505050509050019650505050505050600060405180830381600087803b1580156124d357600080fd5b505af11580156124e7573d6000803e3d6000fd5b5050505060006125008347611b1290919063ffffffff16565b6011546009546008549293506000926001600160a01b03909216916125379161252991906117ee565b600854610fa8908690611b5a565b60405161753091906000818181858888f193505050503d8060008114612579576040519150601f19603f3d011682016040523d82523d6000602084013e61257e565b606091505b50506012546009546008549293506001600160a01b03909116916125b4916125a691906117ee565b600954610fa8908690611b5a565b60405161753091906000818181858888f193505050503d80600081146125f6576040519150601f19603f3d011682016040523d82523d6000602084013e6125fb565b606091505b50505050505050506016805460ff60a01b19169055565b6016546000906001600160a01b038481169116148061263e57506016546001600160a01b038381169116145b801561266357506001600160a01b03831660009081526006602052604090205460ff16155b801561169c5750506001600160a01b031660009081526006602052604090205460ff1615919050565b600b5460085460165460009291906001600160a01b03868116911614156126d857600c54600b546126bc916117ee565b91506126d5600c546008546117ee90919063ffffffff16565b90505b60006126f9836126f3600d548861184890919063ffffffff16565b90611b5a565b905061273a612719600a546126f3600d548961184890919063ffffffff16565b6013546001600160a01b03166000908152601d6020526040902054906117ee565b6013546001600160a01b03166000908152601d602052604090205560095461278f906127799061276b9085906117ee565b600d546126f3908990611848565b306000908152601d6020526040902054906117ee565b306000908152601d6020526040902055600754600d546127d9916127b8916126f3908990611848565b6010546001600160a01b03166000908152601d6020526040902054906117ee565b6010546001600160a01b039081166000908152601d6020526040902091909155601b5430918916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061282e908590611848565b60408051918252519081900360200190a3601354601b54600a546001600160a01b03928316928a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9161288291611848565b60408051918252519081900360200190a361289d8582611b12565b97965050505050505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776f6e6c7920636f6e747261637420616464726573732c206e6f7420616c6c6f776564206578746572616e6c6c79206f776e6564206163636f756e745468657265206973206e6f20746f6b656e206465706f736974656420696e20746f6b656e20636f6e7472616374a26469706673582212205ad34551f62b905e660217c7990fcffd086419ed336e4b6975bba52f6bc5fbb564736f6c63430007040033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e000000000000000000000000176e72121395f7f9d05b6fc86d175eac8e2dafe1000000000000000000000000899c1ea464cb367a2ceddd354fd07559aad9200d0000000000000000000000008fcfa51b56d2d320b7e2e4de5f0ef9c18cd26432
-----Decoded View---------------
Arg [0] : _router (address): 0x10ED43C718714eb63d5aA57B78B54704E256024E
Arg [1] : _owner (address): 0x176E72121395F7f9d05B6FC86d175eAc8e2dAFe1
Arg [2] : _gameTreasuryReceiver (address): 0x899C1Ea464cb367a2Ceddd354Fd07559Aad9200D
Arg [3] : _petoInsuranceFundReceiver (address): 0x8FCFA51b56D2d320B7E2E4dE5F0ef9C18cD26432
-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 00000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e
Arg [1] : 000000000000000000000000176e72121395f7f9d05b6fc86d175eac8e2dafe1
Arg [2] : 000000000000000000000000899c1ea464cb367a2ceddd354fd07559aad9200d
Arg [3] : 0000000000000000000000008fcfa51b56d2d320b7e2e4de5f0ef9c18cd26432
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.