ERC-20
Overview
Max Total Supply
690,000,000 BOB2.0
Holders
346
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
2,946,682.535567349305213368 BOB2.0Value
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
BOB2
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-07-04 */ // SPDX-License-Identifier: MIT /** Telegram: https://t.me/BOB2_Portal **/ 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 ); } 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; } } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); constructor() { _owner = address(_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, 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; } interface IUniswapV2Pair { 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 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 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 IUniswapV2Router01 { 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); } interface IUniswapV2Router02 is IUniswapV2Router01 { 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; } contract BOB2 is Ownable, IERC20 { mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFee; mapping(address => bool) private _isExcludedFromWalletHoldingLimit; mapping(address => bool) private _isAutomaticMarketMaker; mapping(address => bool) private _isAccountLimited; uint256 public _decimals = 18; uint256 public _totalSupply = 690 * 10**6 * 10**_decimals; string private _name = "BOB 2.0"; string private _symbol = "BOB2.0"; address public immutable DeadWalletAddress = 0x000000000000000000000000000000000000dEaD; address payable public MarketingWalletAddress; uint256 public _BuyingMarketingFee = 20; uint256 public _SellingMarketingFee = 99; uint256 internal feeDenominator = 100; IUniswapV2Router02 public uniswapV2Router; address public uniswapV2Pair; bool internal inSwapAndLiquify; bool public swapAndLiquifyEnabled = true; uint256 public numTokensSellToAddToLiquidity = (_totalSupply * 150) / 10**4; uint256 public _maxWalletHoldingLimit = (_totalSupply * 2) / 10**2; event MaxWalletHoldingAmountUpdated(uint256 updatedMaxWalletHoldingAmount); event AutomaticMarketMakerPairUpdated(address account, bool status); event BuyingTaxFeeUpdated(uint256 TaxFees); event SellingTaxFeeUpdated(uint256 TaxFees); event MinTokensBeforeSwapUpdated(uint256 minTokensBeforeSwap); event SwapAndLiquifyEnabledUpdated(bool enabled); event SwapAndLiquify( uint256 tokensSwapped, uint256 ETHReceived, uint256 tokensIntoLiqudity ); modifier lockTheSwap() { inSwapAndLiquify = true; _; inSwapAndLiquify = false; } constructor() { _balances[owner()] = _totalSupply; IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); // Create a uniswap pair for this new token uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()) .createPair(address(this), _uniswapV2Router.WETH()); // set the rest of the contract variables uniswapV2Router = _uniswapV2Router; //DeployerWallet MarketingWalletAddress = payable(address(msg.sender)); //exclude owner and this contract from fee and Wallet holding Limits _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromWalletHoldingLimit[owner()] = true; _isExcludedFromWalletHoldingLimit[uniswapV2Pair] = true; _isExcludedFromWalletHoldingLimit[address(this)] = true; _isAutomaticMarketMaker[uniswapV2Pair] = true; emit Transfer(address(0), owner(), _totalSupply); } function name() external view returns (string memory) { return _name; } function symbol() external view returns (string memory) { return _symbol; } function decimals() external view returns (uint256) { return _decimals; } function totalSupply() external view override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function _approve( address owner, address spender, uint256 amount ) internal virtual { require(owner != address(0), "IERC20: approve from the zero address"); require(spender != address(0), "IERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve( _msgSender(), spender, _allowances[_msgSender()][spender] + addedValue ); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { uint256 currentAllowance = _allowances[_msgSender()][spender]; require( currentAllowance >= subtractedValue, "IERC20: decreased allowance below zero" ); _approve(_msgSender(), spender, currentAllowance - subtractedValue); return true; } function ExcludeFromFee(address account) external onlyOwner { _isExcludedFromFee[account] = true; } function IncludeInFee(address account) external onlyOwner { _isExcludedFromFee[account] = false; } function IsExcludedFromTax(address account) external view returns (bool) { return _isExcludedFromFee[account]; } function isExcludedFromWalletLimit(address WalletAddress) external view returns (bool) { return _isExcludedFromWalletHoldingLimit[WalletAddress]; } function excludeFromMaxWalletHoldingLimit(address account) external onlyOwner { _isExcludedFromWalletHoldingLimit[account] = true; } function includeInMaxWalletHoldingLimit(address account) external onlyOwner { require( account != uniswapV2Pair, "You can't play with Liquidity pair address" ); _isExcludedFromWalletHoldingLimit[account] = false; } function UpdateAccountLimition(address account, bool status) external onlyOwner { _isAccountLimited[account] = status; } function isAccountLimited(address account) external view returns (bool) { return _isAccountLimited[account]; } function UpdateWallets(address payable newMarketingWallet) external onlyOwner { require(newMarketingWallet != address(0), "You can't set zero address"); MarketingWalletAddress = newMarketingWallet; } function UpdateBuyingTaxFees(uint256 newMarketingFee) external onlyOwner { _BuyingMarketingFee = newMarketingFee; emit BuyingTaxFeeUpdated(_BuyingMarketingFee); } function UpdateSellingTaxFees(uint256 newMarketingFee) external onlyOwner { _SellingMarketingFee = newMarketingFee; emit SellingTaxFeeUpdated(_SellingMarketingFee); } function UpdateNoOfTokensSellToGetReward(uint256 thresholdValue) external onlyOwner { numTokensSellToAddToLiquidity = thresholdValue * 10**_decimals; emit MinTokensBeforeSwapUpdated(numTokensSellToAddToLiquidity); } function removeWalletHoldingLimit() external onlyOwner { _maxWalletHoldingLimit = (_totalSupply * 100) / 10**2; } function setSwapAndLiquifyEnabled(bool _enabled) external onlyOwner { swapAndLiquifyEnabled = _enabled; emit SwapAndLiquifyEnabledUpdated(_enabled); } function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public virtual override returns (bool) { _transfer(sender, recipient, amount); uint256 currentAllowance = _allowances[sender][_msgSender()]; require( currentAllowance >= amount, "IERC20: transfer amount exceeds allowance" ); return true; } // To receive BNB from PancakeswapV2 when swapping receive() external payable {} function _transfer( address sender, address recipient, uint256 amount ) internal virtual { require(sender != address(0), "IERC20: transfer from the zero address"); require( recipient != address(0), "IERC20: transfer to the zero address" ); require( !_isAccountLimited[sender] && !_isAccountLimited[recipient], "Sorry your account is limiited" ); require(_balances[sender] >= amount, "You don't have enough balance"); if ( !_isExcludedFromWalletHoldingLimit[recipient] && sender != owner() ) { require( balanceOf(recipient) + amount <= _maxWalletHoldingLimit, "Wallet Holding limit exceeded" ); } uint256 totalTax = 0; if (_isExcludedFromFee[sender] || _isExcludedFromFee[recipient]) { totalTax = 0; } else { if (_isAutomaticMarketMaker[recipient]) { totalTax = (amount * (_SellingMarketingFee)) / (feeDenominator); } else if (_isAutomaticMarketMaker[sender]) { totalTax = (amount * (_BuyingMarketingFee)) / (feeDenominator); } else { totalTax = 0; } } uint256 contractTokenBalance = balanceOf(address(this)); bool overMinTokenBalance = contractTokenBalance >= numTokensSellToAddToLiquidity; if ( !inSwapAndLiquify && recipient == uniswapV2Pair && swapAndLiquifyEnabled && balanceOf(uniswapV2Pair) > numTokensSellToAddToLiquidity ) { if (overMinTokenBalance) { contractTokenBalance = numTokensSellToAddToLiquidity; swapTokens(contractTokenBalance); } } uint256 amountReceived = amount - (totalTax); _balances[address(this)] += totalTax; _balances[sender] = _balances[sender] - amount; _balances[recipient] += amountReceived; if (totalTax > 0) { emit Transfer(sender, address(this), totalTax); } emit Transfer(sender, recipient, amountReceived); } function swapTokens(uint256 _contractTokenBalance) private lockTheSwap { swapTokensForETH(_contractTokenBalance); uint256 MarketingBalance = address(this).balance; if (MarketingBalance > 0) { MarketingWalletAddress.transfer(address(this).balance); } } function swapTokensForETH(uint256 tokenAmount) private { // generate the uniswap pair path of token -> wETH address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); // make the swap uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, // accept any amount of ETH path, address(this), block.timestamp ); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"status","type":"bool"}],"name":"AutomaticMarketMakerPairUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"TaxFees","type":"uint256"}],"name":"BuyingTaxFeeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"updatedMaxWalletHoldingAmount","type":"uint256"}],"name":"MaxWalletHoldingAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"minTokensBeforeSwap","type":"uint256"}],"name":"MinTokensBeforeSwapUpdated","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":"TaxFees","type":"uint256"}],"name":"SellingTaxFeeUpdated","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":[],"name":"DeadWalletAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"ExcludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"IncludeInFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"IsExcludedFromTax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MarketingWalletAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"status","type":"bool"}],"name":"UpdateAccountLimition","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newMarketingFee","type":"uint256"}],"name":"UpdateBuyingTaxFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"thresholdValue","type":"uint256"}],"name":"UpdateNoOfTokensSellToGetReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newMarketingFee","type":"uint256"}],"name":"UpdateSellingTaxFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"newMarketingWallet","type":"address"}],"name":"UpdateWallets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_BuyingMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_SellingMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletHoldingLimit","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":"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":"uint256","name":"","type":"uint256"}],"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":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromMaxWalletHoldingLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInMaxWalletHoldingLimit","outputs":[],"stateMutability":"nonpayable","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":[{"internalType":"address","name":"account","type":"address"}],"name":"isAccountLimited","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"WalletAddress","type":"address"}],"name":"isExcludedFromWalletLimit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"numTokensSellToAddToLiquidity","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeWalletHoldingLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setSwapAndLiquifyEnabled","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
60a0604052601260078190556200001890600a62000504565b6200002890632920908062000519565b6008556040805180820190915260078152660424f4220322e360cc1b6020820152600990620000589082620005d8565b506040805180820190915260068152650424f42322e360d41b6020820152600a90620000859082620005d8565b5061dead6080526014600c556063600d556064600e556010805460ff60a81b1916600160a81b17905560085461271090620000c290609662000519565b620000ce9190620006a4565b60115560646008546002620000e4919062000519565b620000f09190620006a4565b6012553480156200010057600080fd5b50600080546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3600854600160006200015a6000546001600160a01b031690565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001d6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001fc9190620006c7565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200024a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002709190620006c7565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002be573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002e49190620006c7565b601080546001600160a01b039283166001600160a01b0319918216178255600f8054858516908316179055600b8054909116331790556000805483168152600360209081526040808320805460ff1990811660019081179092553080865283862080548316841790558554881686526004855283862080548316841790558654881686528386208054831684179055855282852080548216831790559454861684526005909252822080549093161790915554166001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600854604051620003e091815260200190565b60405180910390a350620006f2565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620004465781600019048211156200042a576200042a620003ef565b808516156200043857918102915b93841c93908002906200040a565b509250929050565b6000826200045f57506001620004fe565b816200046e57506000620004fe565b81600181146200048757600281146200049257620004b2565b6001915050620004fe565b60ff841115620004a657620004a6620003ef565b50506001821b620004fe565b5060208310610133831016604e8410600b8410161715620004d7575081810a620004fe565b620004e3838362000405565b8060001904821115620004fa57620004fa620003ef565b0290505b92915050565b60006200051283836200044e565b9392505050565b8082028115828204841417620004fe57620004fe620003ef565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200055e57607f821691505b6020821081036200057f57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620005d357600081815260208120601f850160051c81016020861015620005ae5750805b601f850160051c820191505b81811015620005cf57828155600101620005ba565b5050505b505050565b81516001600160401b03811115620005f457620005f462000533565b6200060c8162000605845462000549565b8462000585565b602080601f8311600181146200064457600084156200062b5750858301515b600019600386901b1c1916600185901b178555620005cf565b600085815260208120601f198616915b82811015620006755788860151825594840194600190910190840162000654565b5085821015620006945787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600082620006c257634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215620006da57600080fd5b81516001600160a01b03811681146200051257600080fd5b608051611c076200070e60003960006102ad0152611c076000f3fe6080604052600436106102345760003560e01c80635c38fdfd1161012e578063a9059cbb116100ab578063c49b9a801161006f578063c49b9a80146106ce578063d12a7688146106ee578063d81e1cb014610704578063dd62ed3e14610724578063f2fde38b1461076a57600080fd5b8063a9059cbb1461062a578063abdadf621461064a578063b40f946914610660578063b7a9a0af14610699578063c1b60b17146106b957600080fd5b80639429b9fe116100f25780639429b9fe1461059f57806395d89b41146105bf578063a27f656d146105d4578063a2cefe6d146105f4578063a457c2d71461060a57600080fd5b80635c38fdfd146104dd57806370035ba51461051657806370a0823114610536578063715018a61461056c5780638da5cb5b1461058157600080fd5b806332424aa3116101bc5780634108fd4f116101805780634108fd4f1461043c57806349bd5a5e1461045c5780634a74bb021461047c5780634f6a6b6e1461049d57806358c3e050146104bd57600080fd5b806332424aa3146103ae57806338a1da5c146103c457806339509351146103e657806339e6cd66146104065780633eaaf86b1461042657600080fd5b80631694505e116102035780631694505e1461030b57806318160ddd1461032b57806323b872dd146103405780632672fb9414610360578063313ce5671461039957600080fd5b806306fdde0314610240578063095ea7b31461026b5780630a6a75481461029b578063124035a8146102e757600080fd5b3661023b57005b600080fd5b34801561024c57600080fd5b5061025561078a565b60405161026291906117ab565b60405180910390f35b34801561027757600080fd5b5061028b610286366004611811565b61081c565b6040519015158152602001610262565b3480156102a757600080fd5b506102cf7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610262565b3480156102f357600080fd5b506102fd60125481565b604051908152602001610262565b34801561031757600080fd5b50600f546102cf906001600160a01b031681565b34801561033757600080fd5b506008546102fd565b34801561034c57600080fd5b5061028b61035b36600461183d565b610833565b34801561036c57600080fd5b5061028b61037b36600461187e565b6001600160a01b031660009081526003602052604090205460ff1690565b3480156103a557600080fd5b506007546102fd565b3480156103ba57600080fd5b506102fd60075481565b3480156103d057600080fd5b506103e46103df3660046118b7565b6108d6565b005b3480156103f257600080fd5b5061028b610401366004611811565b61092b565b34801561041257600080fd5b50600b546102cf906001600160a01b031681565b34801561043257600080fd5b506102fd60085481565b34801561044857600080fd5b506103e46104573660046118ec565b610967565b34801561046857600080fd5b506010546102cf906001600160a01b031681565b34801561048857600080fd5b5060105461028b90600160a81b900460ff1681565b3480156104a957600080fd5b506103e46104b836600461187e565b6109cd565b3480156104c957600080fd5b506103e46104d836600461187e565b610a18565b3480156104e957600080fd5b5061028b6104f836600461187e565b6001600160a01b031660009081526006602052604090205460ff1690565b34801561052257600080fd5b506103e461053136600461187e565b610a66565b34801561054257600080fd5b506102fd61055136600461187e565b6001600160a01b031660009081526001602052604090205490565b34801561057857600080fd5b506103e4610ab4565b34801561058d57600080fd5b506000546001600160a01b03166102cf565b3480156105ab57600080fd5b506103e46105ba3660046118ec565b610b28565b3480156105cb57600080fd5b50610255610b9f565b3480156105e057600080fd5b506103e46105ef36600461187e565b610bae565b34801561060057600080fd5b506102fd600c5481565b34801561061657600080fd5b5061028b610625366004611811565b610c50565b34801561063657600080fd5b5061028b610645366004611811565b610cec565b34801561065657600080fd5b506102fd600d5481565b34801561066c57600080fd5b5061028b61067b36600461187e565b6001600160a01b031660009081526004602052604090205460ff1690565b3480156106a557600080fd5b506103e46106b436600461187e565b610cf9565b3480156106c557600080fd5b506103e4610db5565b3480156106da57600080fd5b506103e46106e9366004611905565b610dff565b3480156106fa57600080fd5b506102fd60115481565b34801561071057600080fd5b506103e461071f3660046118ec565b610e76565b34801561073057600080fd5b506102fd61073f366004611920565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561077657600080fd5b506103e461078536600461187e565b610ed5565b60606009805461079990611959565b80601f01602080910402602001604051908101604052809291908181526020018280546107c590611959565b80156108125780601f106107e757610100808354040283529160200191610812565b820191906000526020600020905b8154815290600101906020018083116107f557829003601f168201915b5050505050905090565b6000610829338484610fbf565b5060015b92915050565b60006108408484846110e6565b6001600160a01b0384166000908152600260209081526040808320338452909152902054828110156108cb5760405162461bcd60e51b815260206004820152602960248201527f4945524332303a207472616e7366657220616d6f756e74206578636565647320604482015268616c6c6f77616e636560b81b60648201526084015b60405180910390fd5b506001949350505050565b6000546001600160a01b031633146109005760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916108299185906109629086906119de565b610fbf565b6000546001600160a01b031633146109915760405162461bcd60e51b81526004016108c290611993565b600d8190556040518181527f4babbcf4831921e3525c5cad678d0379401b05da366a608803a6a79910969066906020015b60405180910390a150565b6000546001600160a01b031633146109f75760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03166000908152600360205260409020805460ff19169055565b6000546001600160a01b03163314610a425760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03166000908152600360205260409020805460ff19166001179055565b6000546001600160a01b03163314610a905760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03166000908152600460205260409020805460ff19166001179055565b6000546001600160a01b03163314610ade5760405162461bcd60e51b81526004016108c290611993565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610b525760405162461bcd60e51b81526004016108c290611993565b600754610b6090600a611ad5565b610b6a9082611ae1565b60118190556040519081527f5948780118f41f7c4577ae4619d5cbd064057bd8562d9f7b7e60324053375c00906020016109c2565b6060600a805461079990611959565b6000546001600160a01b03163314610bd85760405162461bcd60e51b81526004016108c290611993565b6001600160a01b038116610c2e5760405162461bcd60e51b815260206004820152601a60248201527f596f752063616e277420736574207a65726f206164647265737300000000000060448201526064016108c2565b600b80546001600160a01b0319166001600160a01b0392909216919091179055565b3360009081526002602090815260408083206001600160a01b038616845290915281205482811015610cd35760405162461bcd60e51b815260206004820152602660248201527f4945524332303a2064656372656173656420616c6c6f77616e63652062656c6f60448201526577207a65726f60d01b60648201526084016108c2565b610ce233856109628685611af8565b5060019392505050565b60006108293384846110e6565b6000546001600160a01b03163314610d235760405162461bcd60e51b81526004016108c290611993565b6010546001600160a01b0390811690821603610d945760405162461bcd60e51b815260206004820152602a60248201527f596f752063616e277420706c61792077697468204c69717569646974792070616044820152696972206164647265737360b01b60648201526084016108c2565b6001600160a01b03166000908152600460205260409020805460ff19169055565b6000546001600160a01b03163314610ddf5760405162461bcd60e51b81526004016108c290611993565b60646008546064610df09190611ae1565b610dfa9190611b0b565b601255565b6000546001600160a01b03163314610e295760405162461bcd60e51b81526004016108c290611993565b60108054821515600160a81b0260ff60a81b199091161790556040517f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc159906109c290831515815260200190565b6000546001600160a01b03163314610ea05760405162461bcd60e51b81526004016108c290611993565b600c8190556040518181527f0e67b9e2db5ac83e278ae529ba7f8d72a1f5e732cb9fa988e8289587a08c1ed4906020016109c2565b6000546001600160a01b03163314610eff5760405162461bcd60e51b81526004016108c290611993565b6001600160a01b038116610f645760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108c2565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166110235760405162461bcd60e51b815260206004820152602560248201527f4945524332303a20617070726f76652066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108c2565b6001600160a01b0382166110855760405162461bcd60e51b815260206004820152602360248201527f4945524332303a20617070726f766520746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108c2565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661114b5760405162461bcd60e51b815260206004820152602660248201527f4945524332303a207472616e736665722066726f6d20746865207a65726f206160448201526564647265737360d01b60648201526084016108c2565b6001600160a01b0382166111ad5760405162461bcd60e51b8152602060048201526024808201527f4945524332303a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016108c2565b6001600160a01b03831660009081526006602052604090205460ff161580156111ef57506001600160a01b03821660009081526006602052604090205460ff16155b61123b5760405162461bcd60e51b815260206004820152601e60248201527f536f72727920796f7572206163636f756e74206973206c696d6969746564000060448201526064016108c2565b6001600160a01b0383166000908152600160205260409020548111156112a35760405162461bcd60e51b815260206004820152601d60248201527f596f7520646f6e2774206861766520656e6f7567682062616c616e636500000060448201526064016108c2565b6001600160a01b03821660009081526004602052604090205460ff161580156112da57506000546001600160a01b03848116911614155b1561135a5760125481611302846001600160a01b031660009081526001602052604090205490565b61130c91906119de565b111561135a5760405162461bcd60e51b815260206004820152601d60248201527f57616c6c657420486f6c64696e67206c696d697420657863656564656400000060448201526064016108c2565b6001600160a01b03831660009081526003602052604081205460ff168061139957506001600160a01b03831660009081526003602052604090205460ff165b156113a65750600061141d565b6001600160a01b03831660009081526005602052604090205460ff16156113e857600e54600d546113d79084611ae1565b6113e19190611b0b565b905061141d565b6001600160a01b03841660009081526005602052604090205460ff161561141957600e54600c546113d79084611ae1565b5060005b306000908152600160205260409020546011546010549082101590600160a01b900460ff1615801561145c57506010546001600160a01b038681169116145b80156114715750601054600160a81b900460ff165b801561149857506011546010546001600160a01b0316600090815260016020526040902054115b156114b15780156114b15760115491506114b1826115e2565b60006114bd8486611af8565b306000908152600160205260408120805492935086929091906114e19084906119de565b90915550506001600160a01b03871660009081526001602052604090205461150a908690611af8565b6001600160a01b0380891660009081526001602052604080822093909355908816815290812080548392906115409084906119de565b9091555050831561158c5760405184815230906001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516115d191815260200190565b60405180910390a350505050505050565b6010805460ff60a01b1916600160a01b1790556115fe81611651565b47801561164057600b546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561163e573d6000803e3d6000fd5b505b50506010805460ff60a01b19169055565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061168657611686611b2d565b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156116df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117039190611b43565b8160018151811061171657611716611b2d565b6001600160a01b039283166020918202929092010152600f5461173c9130911684610fbf565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611775908590600090869030904290600401611b60565b600060405180830381600087803b15801561178f57600080fd5b505af11580156117a3573d6000803e3d6000fd5b505050505050565b600060208083528351808285015260005b818110156117d8578581018301518582016040015282016117bc565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461180e57600080fd5b50565b6000806040838503121561182457600080fd5b823561182f816117f9565b946020939093013593505050565b60008060006060848603121561185257600080fd5b833561185d816117f9565b9250602084013561186d816117f9565b929592945050506040919091013590565b60006020828403121561189057600080fd5b813561189b816117f9565b9392505050565b803580151581146118b257600080fd5b919050565b600080604083850312156118ca57600080fd5b82356118d5816117f9565b91506118e3602084016118a2565b90509250929050565b6000602082840312156118fe57600080fd5b5035919050565b60006020828403121561191757600080fd5b61189b826118a2565b6000806040838503121561193357600080fd5b823561193e816117f9565b9150602083013561194e816117f9565b809150509250929050565b600181811c9082168061196d57607f821691505b60208210810361198d57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561082d5761082d6119c8565b600181815b80851115611a2c578160001904821115611a1257611a126119c8565b80851615611a1f57918102915b93841c93908002906119f6565b509250929050565b600082611a435750600161082d565b81611a505750600061082d565b8160018114611a665760028114611a7057611a8c565b600191505061082d565b60ff841115611a8157611a816119c8565b50506001821b61082d565b5060208310610133831016604e8410600b8410161715611aaf575081810a61082d565b611ab983836119f1565b8060001904821115611acd57611acd6119c8565b029392505050565b600061189b8383611a34565b808202811582820484141761082d5761082d6119c8565b8181038181111561082d5761082d6119c8565b600082611b2857634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611b5557600080fd5b815161189b816117f9565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611bb05784516001600160a01b031683529383019391830191600101611b8b565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212201429707fd5d7e8dd54983ebd6cfc2e0c47356b0501079d84239bbdcfc877eaee64736f6c63430008130033
Deployed Bytecode
0x6080604052600436106102345760003560e01c80635c38fdfd1161012e578063a9059cbb116100ab578063c49b9a801161006f578063c49b9a80146106ce578063d12a7688146106ee578063d81e1cb014610704578063dd62ed3e14610724578063f2fde38b1461076a57600080fd5b8063a9059cbb1461062a578063abdadf621461064a578063b40f946914610660578063b7a9a0af14610699578063c1b60b17146106b957600080fd5b80639429b9fe116100f25780639429b9fe1461059f57806395d89b41146105bf578063a27f656d146105d4578063a2cefe6d146105f4578063a457c2d71461060a57600080fd5b80635c38fdfd146104dd57806370035ba51461051657806370a0823114610536578063715018a61461056c5780638da5cb5b1461058157600080fd5b806332424aa3116101bc5780634108fd4f116101805780634108fd4f1461043c57806349bd5a5e1461045c5780634a74bb021461047c5780634f6a6b6e1461049d57806358c3e050146104bd57600080fd5b806332424aa3146103ae57806338a1da5c146103c457806339509351146103e657806339e6cd66146104065780633eaaf86b1461042657600080fd5b80631694505e116102035780631694505e1461030b57806318160ddd1461032b57806323b872dd146103405780632672fb9414610360578063313ce5671461039957600080fd5b806306fdde0314610240578063095ea7b31461026b5780630a6a75481461029b578063124035a8146102e757600080fd5b3661023b57005b600080fd5b34801561024c57600080fd5b5061025561078a565b60405161026291906117ab565b60405180910390f35b34801561027757600080fd5b5061028b610286366004611811565b61081c565b6040519015158152602001610262565b3480156102a757600080fd5b506102cf7f000000000000000000000000000000000000000000000000000000000000dead81565b6040516001600160a01b039091168152602001610262565b3480156102f357600080fd5b506102fd60125481565b604051908152602001610262565b34801561031757600080fd5b50600f546102cf906001600160a01b031681565b34801561033757600080fd5b506008546102fd565b34801561034c57600080fd5b5061028b61035b36600461183d565b610833565b34801561036c57600080fd5b5061028b61037b36600461187e565b6001600160a01b031660009081526003602052604090205460ff1690565b3480156103a557600080fd5b506007546102fd565b3480156103ba57600080fd5b506102fd60075481565b3480156103d057600080fd5b506103e46103df3660046118b7565b6108d6565b005b3480156103f257600080fd5b5061028b610401366004611811565b61092b565b34801561041257600080fd5b50600b546102cf906001600160a01b031681565b34801561043257600080fd5b506102fd60085481565b34801561044857600080fd5b506103e46104573660046118ec565b610967565b34801561046857600080fd5b506010546102cf906001600160a01b031681565b34801561048857600080fd5b5060105461028b90600160a81b900460ff1681565b3480156104a957600080fd5b506103e46104b836600461187e565b6109cd565b3480156104c957600080fd5b506103e46104d836600461187e565b610a18565b3480156104e957600080fd5b5061028b6104f836600461187e565b6001600160a01b031660009081526006602052604090205460ff1690565b34801561052257600080fd5b506103e461053136600461187e565b610a66565b34801561054257600080fd5b506102fd61055136600461187e565b6001600160a01b031660009081526001602052604090205490565b34801561057857600080fd5b506103e4610ab4565b34801561058d57600080fd5b506000546001600160a01b03166102cf565b3480156105ab57600080fd5b506103e46105ba3660046118ec565b610b28565b3480156105cb57600080fd5b50610255610b9f565b3480156105e057600080fd5b506103e46105ef36600461187e565b610bae565b34801561060057600080fd5b506102fd600c5481565b34801561061657600080fd5b5061028b610625366004611811565b610c50565b34801561063657600080fd5b5061028b610645366004611811565b610cec565b34801561065657600080fd5b506102fd600d5481565b34801561066c57600080fd5b5061028b61067b36600461187e565b6001600160a01b031660009081526004602052604090205460ff1690565b3480156106a557600080fd5b506103e46106b436600461187e565b610cf9565b3480156106c557600080fd5b506103e4610db5565b3480156106da57600080fd5b506103e46106e9366004611905565b610dff565b3480156106fa57600080fd5b506102fd60115481565b34801561071057600080fd5b506103e461071f3660046118ec565b610e76565b34801561073057600080fd5b506102fd61073f366004611920565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561077657600080fd5b506103e461078536600461187e565b610ed5565b60606009805461079990611959565b80601f01602080910402602001604051908101604052809291908181526020018280546107c590611959565b80156108125780601f106107e757610100808354040283529160200191610812565b820191906000526020600020905b8154815290600101906020018083116107f557829003601f168201915b5050505050905090565b6000610829338484610fbf565b5060015b92915050565b60006108408484846110e6565b6001600160a01b0384166000908152600260209081526040808320338452909152902054828110156108cb5760405162461bcd60e51b815260206004820152602960248201527f4945524332303a207472616e7366657220616d6f756e74206578636565647320604482015268616c6c6f77616e636560b81b60648201526084015b60405180910390fd5b506001949350505050565b6000546001600160a01b031633146109005760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916108299185906109629086906119de565b610fbf565b6000546001600160a01b031633146109915760405162461bcd60e51b81526004016108c290611993565b600d8190556040518181527f4babbcf4831921e3525c5cad678d0379401b05da366a608803a6a79910969066906020015b60405180910390a150565b6000546001600160a01b031633146109f75760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03166000908152600360205260409020805460ff19169055565b6000546001600160a01b03163314610a425760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03166000908152600360205260409020805460ff19166001179055565b6000546001600160a01b03163314610a905760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03166000908152600460205260409020805460ff19166001179055565b6000546001600160a01b03163314610ade5760405162461bcd60e51b81526004016108c290611993565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610b525760405162461bcd60e51b81526004016108c290611993565b600754610b6090600a611ad5565b610b6a9082611ae1565b60118190556040519081527f5948780118f41f7c4577ae4619d5cbd064057bd8562d9f7b7e60324053375c00906020016109c2565b6060600a805461079990611959565b6000546001600160a01b03163314610bd85760405162461bcd60e51b81526004016108c290611993565b6001600160a01b038116610c2e5760405162461bcd60e51b815260206004820152601a60248201527f596f752063616e277420736574207a65726f206164647265737300000000000060448201526064016108c2565b600b80546001600160a01b0319166001600160a01b0392909216919091179055565b3360009081526002602090815260408083206001600160a01b038616845290915281205482811015610cd35760405162461bcd60e51b815260206004820152602660248201527f4945524332303a2064656372656173656420616c6c6f77616e63652062656c6f60448201526577207a65726f60d01b60648201526084016108c2565b610ce233856109628685611af8565b5060019392505050565b60006108293384846110e6565b6000546001600160a01b03163314610d235760405162461bcd60e51b81526004016108c290611993565b6010546001600160a01b0390811690821603610d945760405162461bcd60e51b815260206004820152602a60248201527f596f752063616e277420706c61792077697468204c69717569646974792070616044820152696972206164647265737360b01b60648201526084016108c2565b6001600160a01b03166000908152600460205260409020805460ff19169055565b6000546001600160a01b03163314610ddf5760405162461bcd60e51b81526004016108c290611993565b60646008546064610df09190611ae1565b610dfa9190611b0b565b601255565b6000546001600160a01b03163314610e295760405162461bcd60e51b81526004016108c290611993565b60108054821515600160a81b0260ff60a81b199091161790556040517f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc159906109c290831515815260200190565b6000546001600160a01b03163314610ea05760405162461bcd60e51b81526004016108c290611993565b600c8190556040518181527f0e67b9e2db5ac83e278ae529ba7f8d72a1f5e732cb9fa988e8289587a08c1ed4906020016109c2565b6000546001600160a01b03163314610eff5760405162461bcd60e51b81526004016108c290611993565b6001600160a01b038116610f645760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108c2565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166110235760405162461bcd60e51b815260206004820152602560248201527f4945524332303a20617070726f76652066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108c2565b6001600160a01b0382166110855760405162461bcd60e51b815260206004820152602360248201527f4945524332303a20617070726f766520746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108c2565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661114b5760405162461bcd60e51b815260206004820152602660248201527f4945524332303a207472616e736665722066726f6d20746865207a65726f206160448201526564647265737360d01b60648201526084016108c2565b6001600160a01b0382166111ad5760405162461bcd60e51b8152602060048201526024808201527f4945524332303a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016108c2565b6001600160a01b03831660009081526006602052604090205460ff161580156111ef57506001600160a01b03821660009081526006602052604090205460ff16155b61123b5760405162461bcd60e51b815260206004820152601e60248201527f536f72727920796f7572206163636f756e74206973206c696d6969746564000060448201526064016108c2565b6001600160a01b0383166000908152600160205260409020548111156112a35760405162461bcd60e51b815260206004820152601d60248201527f596f7520646f6e2774206861766520656e6f7567682062616c616e636500000060448201526064016108c2565b6001600160a01b03821660009081526004602052604090205460ff161580156112da57506000546001600160a01b03848116911614155b1561135a5760125481611302846001600160a01b031660009081526001602052604090205490565b61130c91906119de565b111561135a5760405162461bcd60e51b815260206004820152601d60248201527f57616c6c657420486f6c64696e67206c696d697420657863656564656400000060448201526064016108c2565b6001600160a01b03831660009081526003602052604081205460ff168061139957506001600160a01b03831660009081526003602052604090205460ff165b156113a65750600061141d565b6001600160a01b03831660009081526005602052604090205460ff16156113e857600e54600d546113d79084611ae1565b6113e19190611b0b565b905061141d565b6001600160a01b03841660009081526005602052604090205460ff161561141957600e54600c546113d79084611ae1565b5060005b306000908152600160205260409020546011546010549082101590600160a01b900460ff1615801561145c57506010546001600160a01b038681169116145b80156114715750601054600160a81b900460ff165b801561149857506011546010546001600160a01b0316600090815260016020526040902054115b156114b15780156114b15760115491506114b1826115e2565b60006114bd8486611af8565b306000908152600160205260408120805492935086929091906114e19084906119de565b90915550506001600160a01b03871660009081526001602052604090205461150a908690611af8565b6001600160a01b0380891660009081526001602052604080822093909355908816815290812080548392906115409084906119de565b9091555050831561158c5760405184815230906001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516115d191815260200190565b60405180910390a350505050505050565b6010805460ff60a01b1916600160a01b1790556115fe81611651565b47801561164057600b546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561163e573d6000803e3d6000fd5b505b50506010805460ff60a01b19169055565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061168657611686611b2d565b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156116df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117039190611b43565b8160018151811061171657611716611b2d565b6001600160a01b039283166020918202929092010152600f5461173c9130911684610fbf565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611775908590600090869030904290600401611b60565b600060405180830381600087803b15801561178f57600080fd5b505af11580156117a3573d6000803e3d6000fd5b505050505050565b600060208083528351808285015260005b818110156117d8578581018301518582016040015282016117bc565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461180e57600080fd5b50565b6000806040838503121561182457600080fd5b823561182f816117f9565b946020939093013593505050565b60008060006060848603121561185257600080fd5b833561185d816117f9565b9250602084013561186d816117f9565b929592945050506040919091013590565b60006020828403121561189057600080fd5b813561189b816117f9565b9392505050565b803580151581146118b257600080fd5b919050565b600080604083850312156118ca57600080fd5b82356118d5816117f9565b91506118e3602084016118a2565b90509250929050565b6000602082840312156118fe57600080fd5b5035919050565b60006020828403121561191757600080fd5b61189b826118a2565b6000806040838503121561193357600080fd5b823561193e816117f9565b9150602083013561194e816117f9565b809150509250929050565b600181811c9082168061196d57607f821691505b60208210810361198d57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561082d5761082d6119c8565b600181815b80851115611a2c578160001904821115611a1257611a126119c8565b80851615611a1f57918102915b93841c93908002906119f6565b509250929050565b600082611a435750600161082d565b81611a505750600061082d565b8160018114611a665760028114611a7057611a8c565b600191505061082d565b60ff841115611a8157611a816119c8565b50506001821b61082d565b5060208310610133831016604e8410600b8410161715611aaf575081810a61082d565b611ab983836119f1565b8060001904821115611acd57611acd6119c8565b029392505050565b600061189b8383611a34565b808202811582820484141761082d5761082d6119c8565b8181038181111561082d5761082d6119c8565b600082611b2857634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611b5557600080fd5b815161189b816117f9565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611bb05784516001600160a01b031683529383019391830191600101611b8b565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212201429707fd5d7e8dd54983ebd6cfc2e0c47356b0501079d84239bbdcfc877eaee64736f6c63430008130033
Deployed Bytecode Sourcemap
11363:11566:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14293:85;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14815:210;;;;;;;;;;-1:-1:-1;14815:210:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;14815:210:0;1023:187:1;11963:96:0;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1379:32:1;;;1361:51;;1349:2;1334:18;11963:96:0;1215:203:1;12516:66:0;;;;;;;;;;;;;;;;;;;1569:25:1;;;1557:2;1542:18;12516:66:0;1423:177:1;12263:41:0;;;;;;;;;;-1:-1:-1;12263:41:0;;;;-1:-1:-1;;;;;12263:41:0;;;14578:102;;;;;;;;;;-1:-1:-1;14660:12:0;;14578:102;;19193:422;;;;;;;;;;-1:-1:-1;19193:422:0;;;;;:::i;:::-;;:::i;16629:126::-;;;;;;;;;;-1:-1:-1;16629:126:0;;;;;:::i;:::-;-1:-1:-1;;;;;16720:27:0;16696:4;16720:27;;;:18;:27;;;;;;;;;16629:126;14483:87;;;;;;;;;;-1:-1:-1;14553:9:0;;14483:87;;11782:29;;;;;;;;;;;;;;;;17444:157;;;;;;;;;;-1:-1:-1;17444:157:0;;;;;:::i;:::-;;:::i;:::-;;15630:297;;;;;;;;;;-1:-1:-1;15630:297:0;;;;;:::i;:::-;;:::i;12066:45::-;;;;;;;;;;-1:-1:-1;12066:45:0;;;;-1:-1:-1;;;;;12066:45:0;;;11818:57;;;;;;;;;;;;;;;;18187:189;;;;;;;;;;-1:-1:-1;18187:189:0;;;;;:::i;:::-;;:::i;12311:28::-;;;;;;;;;;-1:-1:-1;12311:28:0;;;;-1:-1:-1;;;;;12311:28:0;;;12385:40;;;;;;;;;;-1:-1:-1;12385:40:0;;;;-1:-1:-1;;;12385:40:0;;;;;;16509:112;;;;;;;;;;-1:-1:-1;16509:112:0;;;;;:::i;:::-;;:::i;16388:113::-;;;;;;;;;;-1:-1:-1;16388:113:0;;;;;:::i;:::-;;:::i;17609:124::-;;;;;;;;;;-1:-1:-1;17609:124:0;;;;;:::i;:::-;-1:-1:-1;;;;;17699:26:0;17675:4;17699:26;;;:17;:26;;;;;;;;;17609:124;16964:169;;;;;;;;;;-1:-1:-1;16964:169:0;;;;;:::i;:::-;;:::i;14688:119::-;;;;;;;;;;-1:-1:-1;14688:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;14781:18:0;14754:7;14781:18;;;:9;:18;;;;;;;14688:119;1722:148;;;;;;;;;;;;;:::i;1499:87::-;;;;;;;;;;-1:-1:-1;1545:7:0;1572:6;-1:-1:-1;;;;;1572:6:0;1499:87;;18384:261;;;;;;;;;;-1:-1:-1;18384:261:0;;;;;:::i;:::-;;:::i;14386:89::-;;;;;;;;;;;;;:::i;17741:245::-;;;;;;;;;;-1:-1:-1;17741:245:0;;;;;:::i;:::-;;:::i;12120:39::-;;;;;;;;;;;;;;;;15935:445;;;;;;;;;;-1:-1:-1;15935:445:0;;;;;:::i;:::-;;:::i;18969:216::-;;;;;;;;;;-1:-1:-1;18969:216:0;;;;;:::i;:::-;;:::i;12168:40::-;;;;;;;;;;;;;;;;16763:193;;;;;;;;;;-1:-1:-1;16763:193:0;;;;;:::i;:::-;-1:-1:-1;;;;;16900:48:0;16871:4;16900:48;;;:33;:48;;;;;;;;;16763:193;17141:295;;;;;;;;;;-1:-1:-1;17141:295:0;;;;;:::i;:::-;;:::i;18653:127::-;;;;;;;;;;;;;:::i;18788:173::-;;;;;;;;;;-1:-1:-1;18788:173:0;;;;;:::i;:::-;;:::i;12434:75::-;;;;;;;;;;;;;;;;17994:185;;;;;;;;;;-1:-1:-1;17994:185:0;;;;;:::i;:::-;;:::i;15421:201::-;;;;;;;;;;-1:-1:-1;15421:201:0;;;;;:::i;:::-;-1:-1:-1;;;;;15587:18:0;;;15555:7;15587:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;15421:201;1878:281;;;;;;;;;;-1:-1:-1;1878:281:0;;;;;:::i;:::-;;:::i;14293:85::-;14332:13;14365:5;14358:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14293:85;:::o;14815:210::-;14934:4;14956:39;1033:10;14979:7;14988:6;14956:8;:39::i;:::-;-1:-1:-1;15013:4:0;14815:210;;;;;:::o;19193:422::-;19333:4;19350:36;19360:6;19368:9;19379:6;19350:9;:36::i;:::-;-1:-1:-1;;;;;19424:19:0;;19397:24;19424:19;;;:11;:19;;;;;;;;1033:10;19424:33;;;;;;;;19490:26;;;;19468:117;;;;-1:-1:-1;;;19468:117:0;;4871:2:1;19468:117:0;;;4853:21:1;4910:2;4890:18;;;4883:30;4949:34;4929:18;;;4922:62;-1:-1:-1;;;5000:18:1;;;4993:39;5049:19;;19468:117:0;;;;;;;;;-1:-1:-1;19603:4:0;;19193:422;-1:-1:-1;;;;19193:422:0:o;17444:157::-;1545:7;1572:6;-1:-1:-1;;;;;1572:6:0;1033:10;1634:23;1626:68;;;;-1:-1:-1;;;1626:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17558:26:0;;;::::1;;::::0;;;:17:::1;:26;::::0;;;;:35;;-1:-1:-1;;17558:35:0::1;::::0;::::1;;::::0;;;::::1;::::0;;17444:157::o;15630:297::-;1033:10;15745:4;15839:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;15839:34:0;;;;;;;;;;15745:4;;15767:130;;15817:7;;15839:47;;15876:10;;15839:47;:::i;:::-;15767:8;:130::i;18187:189::-;1545:7;1572:6;-1:-1:-1;;;;;1572:6:0;1033:10;1634:23;1626:68;;;;-1:-1:-1;;;1626:68:0;;;;;;;:::i;:::-;18272:20:::1;:38:::0;;;18326:42:::1;::::0;1569:25:1;;;18326:42:0::1;::::0;1557:2:1;1542:18;18326:42:0::1;;;;;;;;18187:189:::0;:::o;16509:112::-;1545:7;1572:6;-1:-1:-1;;;;;1572:6:0;1033:10;1634:23;1626:68;;;;-1:-1:-1;;;1626:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16578:27:0::1;16608:5;16578:27:::0;;;:18:::1;:27;::::0;;;;:35;;-1:-1:-1;;16578:35:0::1;::::0;;16509:112::o;16388:113::-;1545:7;1572:6;-1:-1:-1;;;;;1572:6:0;1033:10;1634:23;1626:68;;;;-1:-1:-1;;;1626:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16459:27:0::1;;::::0;;;:18:::1;:27;::::0;;;;:34;;-1:-1:-1;;16459:34:0::1;16489:4;16459:34;::::0;;16388:113::o;16964:169::-;1545:7;1572:6;-1:-1:-1;;;;;1572:6:0;1033:10;1634:23;1626:68;;;;-1:-1:-1;;;1626:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17076:42:0::1;;::::0;;;:33:::1;:42;::::0;;;;:49;;-1:-1:-1;;17076:49:0::1;17121:4;17076:49;::::0;;16964:169::o;1722:148::-;1545:7;1572:6;-1:-1:-1;;;;;1572:6:0;1033:10;1634:23;1626:68;;;;-1:-1:-1;;;1626:68:0;;;;;;;:::i;:::-;1829:1:::1;1813:6:::0;;1792:40:::1;::::0;-1:-1:-1;;;;;1813:6:0;;::::1;::::0;1792:40:::1;::::0;1829:1;;1792:40:::1;1860:1;1843:19:::0;;-1:-1:-1;;;;;;1843:19:0::1;::::0;;1722:148::o;18384:261::-;1545:7;1572:6;-1:-1:-1;;;;;1572:6:0;1033:10;1634:23;1626:68;;;;-1:-1:-1;;;1626:68:0;;;;;;;:::i;:::-;18555:9:::1;::::0;18551:13:::1;::::0;:2:::1;:13;:::i;:::-;18534:30;::::0;:14;:30:::1;:::i;:::-;18502:29;:62:::0;;;18580:57:::1;::::0;1569:25:1;;;18580:57:0::1;::::0;1557:2:1;1542:18;18580:57:0::1;1423:177:1::0;14386:89:0;14427:13;14460:7;14453:14;;;;;:::i;17741:245::-;1545:7;1572:6;-1:-1:-1;;;;;1572:6:0;1033:10;1634:23;1626:68;;;;-1:-1:-1;;;1626:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17861:32:0;::::1;17853:71;;;::::0;-1:-1:-1;;;17853:71:0;;7451:2:1;17853:71:0::1;::::0;::::1;7433:21:1::0;7490:2;7470:18;;;7463:30;7529:28;7509:18;;;7502:56;7575:18;;17853:71:0::1;7249:350:1::0;17853:71:0::1;17935:22;:43:::0;;-1:-1:-1;;;;;;17935:43:0::1;-1:-1:-1::0;;;;;17935:43:0;;;::::1;::::0;;;::::1;::::0;;17741:245::o;15935:445::-;1033:10;16055:4;16104:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;16104:34:0;;;;;;;;;;16171:35;;;;16149:123;;;;-1:-1:-1;;;16149:123:0;;7806:2:1;16149:123:0;;;7788:21:1;7845:2;7825:18;;;7818:30;7884:34;7864:18;;;7857:62;-1:-1:-1;;;7935:18:1;;;7928:36;7981:19;;16149:123:0;7604:402:1;16149:123:0;16283:67;1033:10;16306:7;16315:34;16334:15;16315:16;:34;:::i;16283:67::-;-1:-1:-1;16368:4:0;;15935:445;-1:-1:-1;;;15935:445:0:o;18969:216::-;19091:4;19113:42;1033:10;19137:9;19148:6;19113:9;:42::i;17141:295::-;1545:7;1572:6;-1:-1:-1;;;;;1572:6:0;1033:10;1634:23;1626:68;;;;-1:-1:-1;;;1626:68:0;;;;;;;:::i;:::-;17284:13:::1;::::0;-1:-1:-1;;;;;17284:13:0;;::::1;17273:24:::0;;::::1;::::0;17251:116:::1;;;::::0;-1:-1:-1;;;17251:116:0;;8346:2:1;17251:116:0::1;::::0;::::1;8328:21:1::0;8385:2;8365:18;;;8358:30;8424:34;8404:18;;;8397:62;-1:-1:-1;;;8475:18:1;;;8468:40;8525:19;;17251:116:0::1;8144:406:1::0;17251:116:0::1;-1:-1:-1::0;;;;;17378:42:0::1;17423:5;17378:42:::0;;;:33:::1;:42;::::0;;;;:50;;-1:-1:-1;;17378:50:0::1;::::0;;17141:295::o;18653:127::-;1545:7;1572:6;-1:-1:-1;;;;;1572:6:0;1033:10;1634:23;1626:68;;;;-1:-1:-1;;;1626:68:0;;;;;;;:::i;:::-;18767:5:::1;18745:12;;18760:3;18745:18;;;;:::i;:::-;18744:28;;;;:::i;:::-;18719:22;:53:::0;18653:127::o;18788:173::-;1545:7;1572:6;-1:-1:-1;;;;;1572:6:0;1033:10;1634:23;1626:68;;;;-1:-1:-1;;;1626:68:0;;;;;;;:::i;:::-;18867:21:::1;:32:::0;;;::::1;;-1:-1:-1::0;;;18867:32:0::1;-1:-1:-1::0;;;;18867:32:0;;::::1;;::::0;;18915:38:::1;::::0;::::1;::::0;::::1;::::0;18891:8;1188:14:1;1181:22;1163:41;;1151:2;1136:18;;1023:187;17994:185:0;1545:7;1572:6;-1:-1:-1;;;;;1572:6:0;1033:10;1634:23;1626:68;;;;-1:-1:-1;;;1626:68:0;;;;;;;:::i;:::-;18078:19:::1;:37:::0;;;18131:40:::1;::::0;1569:25:1;;;18131:40:0::1;::::0;1557:2:1;1542:18;18131:40:0::1;1423:177:1::0;1878:281:0;1545:7;1572:6;-1:-1:-1;;;;;1572:6:0;1033:10;1634:23;1626:68;;;;-1:-1:-1;;;1626:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1981:22:0;::::1;1959:110;;;::::0;-1:-1:-1;;;1959:110:0;;8979:2:1;1959:110:0::1;::::0;::::1;8961:21:1::0;9018:2;8998:18;;;8991:30;9057:34;9037:18;;;9030:62;-1:-1:-1;;;9108:18:1;;;9101:36;9154:19;;1959:110:0::1;8777:402:1::0;1959:110:0::1;2106:6;::::0;;2085:38:::1;::::0;-1:-1:-1;;;;;2085:38:0;;::::1;::::0;2106:6;::::1;::::0;2085:38:::1;::::0;::::1;2134:6;:17:::0;;-1:-1:-1;;;;;;2134:17:0::1;-1:-1:-1::0;;;;;2134:17:0;;;::::1;::::0;;;::::1;::::0;;1878:281::o;15033:380::-;-1:-1:-1;;;;;15169:19:0;;15161:69;;;;-1:-1:-1;;;15161:69:0;;9386:2:1;15161:69:0;;;9368:21:1;9425:2;9405:18;;;9398:30;9464:34;9444:18;;;9437:62;-1:-1:-1;;;9515:18:1;;;9508:35;9560:19;;15161:69:0;9184:401:1;15161:69:0;-1:-1:-1;;;;;15249:21:0;;15241:69;;;;-1:-1:-1;;;15241:69:0;;9792:2:1;15241:69:0;;;9774:21:1;9831:2;9811:18;;;9804:30;9870:34;9850:18;;;9843:62;-1:-1:-1;;;9921:18:1;;;9914:33;9964:19;;15241:69:0;9590:399:1;15241:69:0;-1:-1:-1;;;;;15321:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;15373:32;;1569:25:1;;;15373:32:0;;1542:18:1;15373:32:0;;;;;;;15033:380;;;:::o;19716:2300::-;-1:-1:-1;;;;;19856:20:0;;19848:71;;;;-1:-1:-1;;;19848:71:0;;10196:2:1;19848:71:0;;;10178:21:1;10235:2;10215:18;;;10208:30;10274:34;10254:18;;;10247:62;-1:-1:-1;;;10325:18:1;;;10318:36;10371:19;;19848:71:0;9994:402:1;19848:71:0;-1:-1:-1;;;;;19952:23:0;;19930:109;;;;-1:-1:-1;;;19930:109:0;;10603:2:1;19930:109:0;;;10585:21:1;10642:2;10622:18;;;10615:30;10681:34;10661:18;;;10654:62;-1:-1:-1;;;10732:18:1;;;10725:34;10776:19;;19930:109:0;10401:400:1;19930:109:0;-1:-1:-1;;;;;20073:25:0;;;;;;:17;:25;;;;;;;;20072:26;:59;;;;-1:-1:-1;;;;;;20103:28:0;;;;;;:17;:28;;;;;;;;20102:29;20072:59;20050:139;;;;-1:-1:-1;;;20050:139:0;;11008:2:1;20050:139:0;;;10990:21:1;11047:2;11027:18;;;11020:30;11086:32;11066:18;;;11059:60;11136:18;;20050:139:0;10806:354:1;20050:139:0;-1:-1:-1;;;;;20208:17:0;;;;;;:9;:17;;;;;;:27;-1:-1:-1;20208:27:0;20200:69;;;;-1:-1:-1;;;20200:69:0;;11367:2:1;20200:69:0;;;11349:21:1;11406:2;11386:18;;;11379:30;11445:31;11425:18;;;11418:59;11494:18;;20200:69:0;11165:353:1;20200:69:0;-1:-1:-1;;;;;20301:44:0;;;;;;:33;:44;;;;;;;;20300:45;:66;;;;-1:-1:-1;1545:7:0;1572:6;-1:-1:-1;;;;;20349:17:0;;;1572:6;;20349:17;;20300:66;20282:269;;;20452:22;;20442:6;20419:20;20429:9;-1:-1:-1;;;;;14781:18:0;14754:7;14781:18;;;:9;:18;;;;;;;14688:119;20419:20;:29;;;;:::i;:::-;:55;;20393:146;;;;-1:-1:-1;;;20393:146:0;;11725:2:1;20393:146:0;;;11707:21:1;11764:2;11744:18;;;11737:30;11803:31;11783:18;;;11776:59;11852:18;;20393:146:0;11523:353:1;20393:146:0;-1:-1:-1;;;;;20600:26:0;;20563:16;20600:26;;;:18;:26;;;;;;;;;:59;;-1:-1:-1;;;;;;20630:29:0;;;;;;:18;:29;;;;;;;;20600:59;20596:467;;;-1:-1:-1;20687:1:0;20596:467;;;-1:-1:-1;;;;;20725:34:0;;;;;;:23;:34;;;;;;;;20721:331;;;20828:14;;20802:20;;20792:31;;:6;:31;:::i;:::-;20791:52;;;;:::i;:::-;20780:63;;20721:331;;;-1:-1:-1;;;;;20869:31:0;;;;;;:23;:31;;;;;;;;20865:187;;;20968:14;;20943:19;;20933:30;;:6;:30;:::i;20865:187::-;-1:-1:-1;21035:1:0;20865:187;21124:4;21075:28;14781:18;;;:9;:18;;;;;;21207:29;;21266:16;;21170:66;;;;;-1:-1:-1;;;21266:16:0;;;;21265:17;:60;;;;-1:-1:-1;21312:13:0;;-1:-1:-1;;;;;21299:26:0;;;21312:13;;21299:26;21265:60;:98;;;;-1:-1:-1;21342:21:0;;-1:-1:-1;;;21342:21:0;;;;21265:98;:171;;;;-1:-1:-1;21407:29:0;;21390:13;;-1:-1:-1;;;;;21390:13:0;14754:7;14781:18;;;:9;:18;;;;;;21380:56;21265:171;21247:390;;;21467:19;21463:163;;;21530:29;;21507:52;;21578:32;21589:20;21578:10;:32::i;:::-;21649:22;21674:19;21684:8;21674:6;:19;:::i;:::-;21722:4;21704:24;;;;:9;:24;;;;;:36;;21649:44;;-1:-1:-1;21732:8:0;;21704:24;;;:36;;21732:8;;21704:36;:::i;:::-;;;;-1:-1:-1;;;;;;;21771:17:0;;;;;;:9;:17;;;;;;:26;;21791:6;;21771:26;:::i;:::-;-1:-1:-1;;;;;21751:17:0;;;;;;;:9;:17;;;;;;:46;;;;21808:20;;;;;;;;:38;;21832:14;;21751:17;21808:38;;21832:14;;21808:38;:::i;:::-;;;;-1:-1:-1;;21863:12:0;;21859:91;;21897:41;;1569:25:1;;;21922:4:0;;-1:-1:-1;;;;;21897:41:0;;;;;1557:2:1;1542:18;21897:41:0;;;;;;;21859:91;21982:9;-1:-1:-1;;;;;21965:43:0;21974:6;-1:-1:-1;;;;;21965:43:0;;21993:14;21965:43;;;;1569:25:1;;1557:2;1542:18;;1423:177;21965:43:0;;;;;;;;19837:2179;;;;19716:2300;;;:::o;22024:305::-;13137:16;:23;;-1:-1:-1;;;;13137:23:0;-1:-1:-1;;;13137:23:0;;;22106:39:::1;22123:21:::0;22106:16:::1;:39::i;:::-;22183:21;22219:20:::0;;22215:107:::1;;22256:22;::::0;:54:::1;::::0;-1:-1:-1;;;;;22256:22:0;;::::1;::::0;22288:21:::1;22256:54:::0;::::1;;;::::0;:22:::1;:54:::0;:22;:54;22288:21;22256:22;:54;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;22215:107;-1:-1:-1::0;;13183:16:0;:24;;-1:-1:-1;;;;13183:24:0;;;22024:305::o;22337:589::-;22487:16;;;22501:1;22487:16;;;;;;;;22463:21;;22487:16;;;;;;;;;;-1:-1:-1;22487:16:0;22463:40;;22532:4;22514;22519:1;22514:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;22514:23:0;;;:7;;;;;;;;;;:23;;;;22558:15;;:22;;;-1:-1:-1;;;22558:22:0;;;;:15;;;;;:20;;:22;;;;;22514:7;;22558:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22548:4;22553:1;22548:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;22548:32:0;;;:7;;;;;;;;;:32;22625:15;;22593:62;;22610:4;;22625:15;22643:11;22593:8;:62::i;:::-;22694:15;;:224;;-1:-1:-1;;;22694:224:0;;-1:-1:-1;;;;;22694:15:0;;;;:66;;:224;;22775:11;;22694:15;;22845:4;;22872;;22892:15;;22694:224;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22392:534;22337:589;:::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;1839:456::-;1916:6;1924;1932;1985:2;1973:9;1964:7;1960:23;1956:32;1953:52;;;2001:1;1998;1991:12;1953:52;2040:9;2027:23;2059:31;2084:5;2059:31;:::i;:::-;2109:5;-1:-1:-1;2166:2:1;2151:18;;2138:32;2179:33;2138:32;2179:33;:::i;:::-;1839:456;;2231:7;;-1:-1:-1;;;2285:2:1;2270:18;;;;2257:32;;1839:456::o;2300:247::-;2359:6;2412:2;2400:9;2391:7;2387:23;2383:32;2380:52;;;2428:1;2425;2418:12;2380:52;2467:9;2454:23;2486:31;2511:5;2486:31;:::i;:::-;2536:5;2300:247;-1:-1:-1;;;2300:247:1:o;2552:160::-;2617:20;;2673:13;;2666:21;2656:32;;2646:60;;2702:1;2699;2692:12;2646:60;2552:160;;;:::o;2717:315::-;2782:6;2790;2843:2;2831:9;2822:7;2818:23;2814:32;2811:52;;;2859:1;2856;2849:12;2811:52;2898:9;2885:23;2917:31;2942:5;2917:31;:::i;:::-;2967:5;-1:-1:-1;2991:35:1;3022:2;3007:18;;2991:35;:::i;:::-;2981:45;;2717:315;;;;;:::o;3261:180::-;3320:6;3373:2;3361:9;3352:7;3348:23;3344:32;3341:52;;;3389:1;3386;3379:12;3341:52;-1:-1:-1;3412:23:1;;3261:180;-1:-1:-1;3261:180:1:o;3706:::-;3762:6;3815:2;3803:9;3794:7;3790:23;3786:32;3783:52;;;3831:1;3828;3821:12;3783:52;3854:26;3870:9;3854:26;:::i;3891:388::-;3959:6;3967;4020:2;4008:9;3999:7;3995:23;3991:32;3988:52;;;4036:1;4033;4026:12;3988:52;4075:9;4062:23;4094:31;4119:5;4094:31;:::i;:::-;4144:5;-1:-1:-1;4201:2:1;4186:18;;4173:32;4214:33;4173:32;4214:33;:::i;:::-;4266:7;4256:17;;;3891:388;;;;;:::o;4284:380::-;4363:1;4359:12;;;;4406;;;4427:61;;4481:4;4473:6;4469:17;4459:27;;4427:61;4534:2;4526:6;4523:14;4503:18;4500:38;4497:161;;4580:10;4575:3;4571:20;4568:1;4561:31;4615:4;4612:1;4605:15;4643:4;4640:1;4633:15;4497:161;;4284:380;;;:::o;5079:356::-;5281:2;5263:21;;;5300:18;;;5293:30;5359:34;5354:2;5339:18;;5332:62;5426:2;5411:18;;5079:356::o;5440:127::-;5501:10;5496:3;5492:20;5489:1;5482:31;5532:4;5529:1;5522:15;5556:4;5553:1;5546:15;5572:125;5637:9;;;5658:10;;;5655:36;;;5671:18;;:::i;5702:422::-;5791:1;5834:5;5791:1;5848:270;5869:7;5859:8;5856:21;5848:270;;;5928:4;5924:1;5920:6;5916:17;5910:4;5907:27;5904:53;;;5937:18;;:::i;:::-;5987:7;5977:8;5973:22;5970:55;;;6007:16;;;;5970:55;6086:22;;;;6046:15;;;;5848:270;;;5852:3;5702:422;;;;;:::o;6129:806::-;6178:5;6208:8;6198:80;;-1:-1:-1;6249:1:1;6263:5;;6198:80;6297:4;6287:76;;-1:-1:-1;6334:1:1;6348:5;;6287:76;6379:4;6397:1;6392:59;;;;6465:1;6460:130;;;;6372:218;;6392:59;6422:1;6413:10;;6436:5;;;6460:130;6497:3;6487:8;6484:17;6481:43;;;6504:18;;:::i;:::-;-1:-1:-1;;6560:1:1;6546:16;;6575:5;;6372:218;;6674:2;6664:8;6661:16;6655:3;6649:4;6646:13;6642:36;6636:2;6626:8;6623:16;6618:2;6612:4;6609:12;6605:35;6602:77;6599:159;;;-1:-1:-1;6711:19:1;;;6743:5;;6599:159;6790:34;6815:8;6809:4;6790:34;:::i;:::-;6860:6;6856:1;6852:6;6848:19;6839:7;6836:32;6833:58;;;6871:18;;:::i;:::-;6909:20;;6129:806;-1:-1:-1;;;6129:806:1:o;6940:131::-;7000:5;7029:36;7056:8;7050:4;7029:36;:::i;7076:168::-;7149:9;;;7180;;7197:15;;;7191:22;;7177:37;7167:71;;7218:18;;:::i;8011:128::-;8078:9;;;8099:11;;;8096:37;;;8113:18;;:::i;8555:217::-;8595:1;8621;8611:132;;8665:10;8660:3;8656:20;8653:1;8646:31;8700:4;8697:1;8690:15;8728:4;8725:1;8718:15;8611:132;-1:-1:-1;8757:9:1;;8555:217::o;12013:127::-;12074:10;12069:3;12065:20;12062:1;12055:31;12105:4;12102:1;12095:15;12129:4;12126:1;12119:15;12145:251;12215:6;12268:2;12256:9;12247:7;12243:23;12239:32;12236:52;;;12284:1;12281;12274:12;12236:52;12316:9;12310:16;12335:31;12360:5;12335:31;:::i;12401:980::-;12663:4;12711:3;12700:9;12696:19;12742:6;12731:9;12724:25;12768:2;12806:6;12801:2;12790:9;12786:18;12779:34;12849:3;12844:2;12833:9;12829:18;12822:31;12873:6;12908;12902:13;12939:6;12931;12924:22;12977:3;12966:9;12962:19;12955:26;;13016:2;13008:6;13004:15;12990:29;;13037:1;13047:195;13061:6;13058:1;13055:13;13047:195;;;13126:13;;-1:-1:-1;;;;;13122:39:1;13110:52;;13217:15;;;;13182:12;;;;13158:1;13076:9;13047:195;;;-1:-1:-1;;;;;;;13298:32:1;;;;13293:2;13278:18;;13271:60;-1:-1:-1;;;13362:3:1;13347:19;13340:35;13259:3;12401:980;-1:-1:-1;;;12401:980:1:o
Swarm Source
ipfs://1429707fd5d7e8dd54983ebd6cfc2e0c47356b0501079d84239bbdcfc877eaee
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.