ERC-20
Overview
Max Total Supply
1,000,000 BULL
Holders
45
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
3,104.228745546401764209 BULLValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
BullCoin
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-06-20 */ // SPDX-License-Identifier: MIT /** The Bull has awoken! Get ready to buckle up and witness the awe-inspiring rise of the Crypto Bull! 🚀 https://t.me/bullcoinerc **/ 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 BullCoin 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 = 1 * 10**6 * 10**_decimals; string private _name = "BullCoin"; string private _symbol = "BULL"; address public immutable DeadWalletAddress = 0x000000000000000000000000000000000000dEaD; address payable public MarketingWalletAddress; uint256 public _BuyingMarketingFee = 20; uint256 public _SellingMarketingFee = 40; 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 removeAllLimitsAndTaxes() external onlyOwner { _maxWalletHoldingLimit = (_totalSupply * 100) / 10**2; _BuyingMarketingFee = 0; _SellingMarketingFee = 0; } 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) { transferToAddressETH(MarketingWalletAddress, MarketingBalance); } if (address(this).balance > 0) { MarketingWalletAddress.transfer(address(this).balance); } } function transferToAddressETH(address payable recipient, uint256 amount) private { recipient.transfer(amount); } 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":"removeAllLimitsAndTaxes","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
60a0604052601260078190556200001890600a62000505565b6200002790620f42406200051a565b60085560405180604001604052806008815260200167213ab63621b7b4b760c11b815250600990816200005b9190620005d9565b506040805180820190915260048152631095531360e21b6020820152600a90620000869082620005d9565b5061dead6080526014600c556028600d556064600e556010805460ff60a81b1916600160a81b17905560085461271090620000c39060966200051a565b620000cf9190620006a5565b60115560646008546002620000e591906200051a565b620000f19190620006a5565b6012553480156200010157600080fd5b50600080546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3600854600160006200015b6000546001600160a01b031690565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001fd9190620006c8565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200024b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002719190620006c8565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002bf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002e59190620006c8565b601080546001600160a01b039283166001600160a01b0319918216178255600f8054858516908316179055600b8054909116331790556000805483168152600360209081526040808320805460ff1990811660019081179092553080865283862080548316841790558554881686526004855283862080548316841790558654881686528386208054831684179055855282852080548216831790559454861684526005909252822080549093161790915554166001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600854604051620003e191815260200190565b60405180910390a350620006f3565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620004475781600019048211156200042b576200042b620003f0565b808516156200043957918102915b93841c93908002906200040b565b509250929050565b6000826200046057506001620004ff565b816200046f57506000620004ff565b81600181146200048857600281146200049357620004b3565b6001915050620004ff565b60ff841115620004a757620004a7620003f0565b50506001821b620004ff565b5060208310610133831016604e8410600b8410161715620004d8575081810a620004ff565b620004e4838362000406565b8060001904821115620004fb57620004fb620003f0565b0290505b92915050565b60006200051383836200044f565b9392505050565b8082028115828204841417620004ff57620004ff620003f0565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200055f57607f821691505b6020821081036200058057634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620005d457600081815260208120601f850160051c81016020861015620005af5750805b601f850160051c820191505b81811015620005d057828155600101620005bb565b5050505b505050565b81516001600160401b03811115620005f557620005f562000534565b6200060d816200060684546200054a565b8462000586565b602080601f8311600181146200064557600084156200062c5750858301515b600019600386901b1c1916600185901b178555620005d0565b600085815260208120601f198616915b82811015620006765788860151825594840194600190910190840162000655565b5085821015620006955787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600082620006c357634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215620006db57600080fd5b81516001600160a01b03811681146200051357600080fd5b608051611c686200070f60003960006102ad0152611c686000f3fe6080604052600436106102345760003560e01c80635c38fdfd1161012e578063a9059cbb116100ab578063c49b9a801161006f578063c49b9a80146106ce578063d12a7688146106ee578063d81e1cb014610704578063dd62ed3e14610724578063f2fde38b1461076a57600080fd5b8063a9059cbb1461062a578063abdadf621461064a578063aec8d22814610660578063b40f946914610675578063b7a9a0af146106ae57600080fd5b80639429b9fe116100f25780639429b9fe1461059f57806395d89b41146105bf578063a27f656d146105d4578063a2cefe6d146105f4578063a457c2d71461060a57600080fd5b80635c38fdfd146104dd57806370035ba51461051657806370a0823114610536578063715018a61461056c5780638da5cb5b1461058157600080fd5b806332424aa3116101bc5780634108fd4f116101805780634108fd4f1461043c57806349bd5a5e1461045c5780634a74bb021461047c5780634f6a6b6e1461049d57806358c3e050146104bd57600080fd5b806332424aa3146103ae57806338a1da5c146103c457806339509351146103e657806339e6cd66146104065780633eaaf86b1461042657600080fd5b80631694505e116102035780631694505e1461030b57806318160ddd1461032b57806323b872dd146103405780632672fb9414610360578063313ce5671461039957600080fd5b806306fdde0314610240578063095ea7b31461026b5780630a6a75481461029b578063124035a8146102e757600080fd5b3661023b57005b600080fd5b34801561024c57600080fd5b5061025561078a565b604051610262919061180c565b60405180910390f35b34801561027757600080fd5b5061028b610286366004611872565b61081c565b6040519015158152602001610262565b3480156102a757600080fd5b506102cf7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610262565b3480156102f357600080fd5b506102fd60125481565b604051908152602001610262565b34801561031757600080fd5b50600f546102cf906001600160a01b031681565b34801561033757600080fd5b506008546102fd565b34801561034c57600080fd5b5061028b61035b36600461189e565b610833565b34801561036c57600080fd5b5061028b61037b3660046118df565b6001600160a01b031660009081526003602052604090205460ff1690565b3480156103a557600080fd5b506007546102fd565b3480156103ba57600080fd5b506102fd60075481565b3480156103d057600080fd5b506103e46103df366004611918565b6108d6565b005b3480156103f257600080fd5b5061028b610401366004611872565b61092b565b34801561041257600080fd5b50600b546102cf906001600160a01b031681565b34801561043257600080fd5b506102fd60085481565b34801561044857600080fd5b506103e461045736600461194d565b610967565b34801561046857600080fd5b506010546102cf906001600160a01b031681565b34801561048857600080fd5b5060105461028b90600160a81b900460ff1681565b3480156104a957600080fd5b506103e46104b83660046118df565b6109cd565b3480156104c957600080fd5b506103e46104d83660046118df565b610a18565b3480156104e957600080fd5b5061028b6104f83660046118df565b6001600160a01b031660009081526006602052604090205460ff1690565b34801561052257600080fd5b506103e46105313660046118df565b610a66565b34801561054257600080fd5b506102fd6105513660046118df565b6001600160a01b031660009081526001602052604090205490565b34801561057857600080fd5b506103e4610ab4565b34801561058d57600080fd5b506000546001600160a01b03166102cf565b3480156105ab57600080fd5b506103e46105ba36600461194d565b610b28565b3480156105cb57600080fd5b50610255610b9f565b3480156105e057600080fd5b506103e46105ef3660046118df565b610bae565b34801561060057600080fd5b506102fd600c5481565b34801561061657600080fd5b5061028b610625366004611872565b610c50565b34801561063657600080fd5b5061028b610645366004611872565b610cec565b34801561065657600080fd5b506102fd600d5481565b34801561066c57600080fd5b506103e4610cf9565b34801561068157600080fd5b5061028b6106903660046118df565b6001600160a01b031660009081526004602052604090205460ff1690565b3480156106ba57600080fd5b506103e46106c93660046118df565b610d4d565b3480156106da57600080fd5b506103e46106e9366004611966565b610e09565b3480156106fa57600080fd5b506102fd60115481565b34801561071057600080fd5b506103e461071f36600461194d565b610e80565b34801561073057600080fd5b506102fd61073f366004611981565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561077657600080fd5b506103e46107853660046118df565b610edf565b606060098054610799906119ba565b80601f01602080910402602001604051908101604052809291908181526020018280546107c5906119ba565b80156108125780601f106107e757610100808354040283529160200191610812565b820191906000526020600020905b8154815290600101906020018083116107f557829003601f168201915b5050505050905090565b6000610829338484610fc9565b5060015b92915050565b60006108408484846110f0565b6001600160a01b0384166000908152600260209081526040808320338452909152902054828110156108cb5760405162461bcd60e51b815260206004820152602960248201527f4945524332303a207472616e7366657220616d6f756e74206578636565647320604482015268616c6c6f77616e636560b81b60648201526084015b60405180910390fd5b506001949350505050565b6000546001600160a01b031633146109005760405162461bcd60e51b81526004016108c2906119f4565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b3360008181526002602090815260408083206001600160a01b03871684529091528120549091610829918590610962908690611a3f565b610fc9565b6000546001600160a01b031633146109915760405162461bcd60e51b81526004016108c2906119f4565b600d8190556040518181527f4babbcf4831921e3525c5cad678d0379401b05da366a608803a6a79910969066906020015b60405180910390a150565b6000546001600160a01b031633146109f75760405162461bcd60e51b81526004016108c2906119f4565b6001600160a01b03166000908152600360205260409020805460ff19169055565b6000546001600160a01b03163314610a425760405162461bcd60e51b81526004016108c2906119f4565b6001600160a01b03166000908152600360205260409020805460ff19166001179055565b6000546001600160a01b03163314610a905760405162461bcd60e51b81526004016108c2906119f4565b6001600160a01b03166000908152600460205260409020805460ff19166001179055565b6000546001600160a01b03163314610ade5760405162461bcd60e51b81526004016108c2906119f4565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610b525760405162461bcd60e51b81526004016108c2906119f4565b600754610b6090600a611b36565b610b6a9082611b42565b60118190556040519081527f5948780118f41f7c4577ae4619d5cbd064057bd8562d9f7b7e60324053375c00906020016109c2565b6060600a8054610799906119ba565b6000546001600160a01b03163314610bd85760405162461bcd60e51b81526004016108c2906119f4565b6001600160a01b038116610c2e5760405162461bcd60e51b815260206004820152601a60248201527f596f752063616e277420736574207a65726f206164647265737300000000000060448201526064016108c2565b600b80546001600160a01b0319166001600160a01b0392909216919091179055565b3360009081526002602090815260408083206001600160a01b038616845290915281205482811015610cd35760405162461bcd60e51b815260206004820152602660248201527f4945524332303a2064656372656173656420616c6c6f77616e63652062656c6f60448201526577207a65726f60d01b60648201526084016108c2565b610ce233856109628685611b59565b5060019392505050565b60006108293384846110f0565b6000546001600160a01b03163314610d235760405162461bcd60e51b81526004016108c2906119f4565b60646008546064610d349190611b42565b610d3e9190611b6c565b6012556000600c819055600d55565b6000546001600160a01b03163314610d775760405162461bcd60e51b81526004016108c2906119f4565b6010546001600160a01b0390811690821603610de85760405162461bcd60e51b815260206004820152602a60248201527f596f752063616e277420706c61792077697468204c69717569646974792070616044820152696972206164647265737360b01b60648201526084016108c2565b6001600160a01b03166000908152600460205260409020805460ff19169055565b6000546001600160a01b03163314610e335760405162461bcd60e51b81526004016108c2906119f4565b60108054821515600160a81b0260ff60a81b199091161790556040517f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc159906109c290831515815260200190565b6000546001600160a01b03163314610eaa5760405162461bcd60e51b81526004016108c2906119f4565b600c8190556040518181527f0e67b9e2db5ac83e278ae529ba7f8d72a1f5e732cb9fa988e8289587a08c1ed4906020016109c2565b6000546001600160a01b03163314610f095760405162461bcd60e51b81526004016108c2906119f4565b6001600160a01b038116610f6e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108c2565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831661102d5760405162461bcd60e51b815260206004820152602560248201527f4945524332303a20617070726f76652066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108c2565b6001600160a01b03821661108f5760405162461bcd60e51b815260206004820152602360248201527f4945524332303a20617070726f766520746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108c2565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166111555760405162461bcd60e51b815260206004820152602660248201527f4945524332303a207472616e736665722066726f6d20746865207a65726f206160448201526564647265737360d01b60648201526084016108c2565b6001600160a01b0382166111b75760405162461bcd60e51b8152602060048201526024808201527f4945524332303a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016108c2565b6001600160a01b03831660009081526006602052604090205460ff161580156111f957506001600160a01b03821660009081526006602052604090205460ff16155b6112455760405162461bcd60e51b815260206004820152601e60248201527f536f72727920796f7572206163636f756e74206973206c696d6969746564000060448201526064016108c2565b6001600160a01b0383166000908152600160205260409020548111156112ad5760405162461bcd60e51b815260206004820152601d60248201527f596f7520646f6e2774206861766520656e6f7567682062616c616e636500000060448201526064016108c2565b6001600160a01b03821660009081526004602052604090205460ff161580156112e457506000546001600160a01b03848116911614155b15611364576012548161130c846001600160a01b031660009081526001602052604090205490565b6113169190611a3f565b11156113645760405162461bcd60e51b815260206004820152601d60248201527f57616c6c657420486f6c64696e67206c696d697420657863656564656400000060448201526064016108c2565b6001600160a01b03831660009081526003602052604081205460ff16806113a357506001600160a01b03831660009081526003602052604090205460ff165b156113b057506000611427565b6001600160a01b03831660009081526005602052604090205460ff16156113f257600e54600d546113e19084611b42565b6113eb9190611b6c565b9050611427565b6001600160a01b03841660009081526005602052604090205460ff161561142357600e54600c546113e19084611b42565b5060005b306000908152600160205260409020546011546010549082101590600160a01b900460ff1615801561146657506010546001600160a01b038681169116145b801561147b5750601054600160a81b900460ff165b80156114a257506011546010546001600160a01b0316600090815260016020526040902054115b156114bb5780156114bb5760115491506114bb826115ec565b60006114c78486611b59565b306000908152600160205260408120805492935086929091906114eb908490611a3f565b90915550506001600160a01b038716600090815260016020526040902054611514908690611b59565b6001600160a01b03808916600090815260016020526040808220939093559088168152908120805483929061154a908490611a3f565b909155505083156115965760405184815230906001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516115db91815260200190565b60405180910390a350505050505050565b6010805460ff60a01b1916600160a01b17905561160881611677565b47801561162557600b54611625906001600160a01b0316826117d1565b471561166657600b546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015611664573d6000803e3d6000fd5b505b50506010805460ff60a01b19169055565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106116ac576116ac611b8e565b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611705573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117299190611ba4565b8160018151811061173c5761173c611b8e565b6001600160a01b039283166020918202929092010152600f546117629130911684610fc9565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac9479061179b908590600090869030904290600401611bc1565b600060405180830381600087803b1580156117b557600080fd5b505af11580156117c9573d6000803e3d6000fd5b505050505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015611807573d6000803e3d6000fd5b505050565b600060208083528351808285015260005b818110156118395785810183015185820160400152820161181d565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461186f57600080fd5b50565b6000806040838503121561188557600080fd5b82356118908161185a565b946020939093013593505050565b6000806000606084860312156118b357600080fd5b83356118be8161185a565b925060208401356118ce8161185a565b929592945050506040919091013590565b6000602082840312156118f157600080fd5b81356118fc8161185a565b9392505050565b8035801515811461191357600080fd5b919050565b6000806040838503121561192b57600080fd5b82356119368161185a565b915061194460208401611903565b90509250929050565b60006020828403121561195f57600080fd5b5035919050565b60006020828403121561197857600080fd5b6118fc82611903565b6000806040838503121561199457600080fd5b823561199f8161185a565b915060208301356119af8161185a565b809150509250929050565b600181811c908216806119ce57607f821691505b6020821081036119ee57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561082d5761082d611a29565b600181815b80851115611a8d578160001904821115611a7357611a73611a29565b80851615611a8057918102915b93841c9390800290611a57565b509250929050565b600082611aa45750600161082d565b81611ab15750600061082d565b8160018114611ac75760028114611ad157611aed565b600191505061082d565b60ff841115611ae257611ae2611a29565b50506001821b61082d565b5060208310610133831016604e8410600b8410161715611b10575081810a61082d565b611b1a8383611a52565b8060001904821115611b2e57611b2e611a29565b029392505050565b60006118fc8383611a95565b808202811582820484141761082d5761082d611a29565b8181038181111561082d5761082d611a29565b600082611b8957634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611bb657600080fd5b81516118fc8161185a565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611c115784516001600160a01b031683529383019391830191600101611bec565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122052c597d3fef4537ae73a79a5236cc6fd754871242b2f4f63d4e9219153aef10264736f6c63430008130033
Deployed Bytecode
0x6080604052600436106102345760003560e01c80635c38fdfd1161012e578063a9059cbb116100ab578063c49b9a801161006f578063c49b9a80146106ce578063d12a7688146106ee578063d81e1cb014610704578063dd62ed3e14610724578063f2fde38b1461076a57600080fd5b8063a9059cbb1461062a578063abdadf621461064a578063aec8d22814610660578063b40f946914610675578063b7a9a0af146106ae57600080fd5b80639429b9fe116100f25780639429b9fe1461059f57806395d89b41146105bf578063a27f656d146105d4578063a2cefe6d146105f4578063a457c2d71461060a57600080fd5b80635c38fdfd146104dd57806370035ba51461051657806370a0823114610536578063715018a61461056c5780638da5cb5b1461058157600080fd5b806332424aa3116101bc5780634108fd4f116101805780634108fd4f1461043c57806349bd5a5e1461045c5780634a74bb021461047c5780634f6a6b6e1461049d57806358c3e050146104bd57600080fd5b806332424aa3146103ae57806338a1da5c146103c457806339509351146103e657806339e6cd66146104065780633eaaf86b1461042657600080fd5b80631694505e116102035780631694505e1461030b57806318160ddd1461032b57806323b872dd146103405780632672fb9414610360578063313ce5671461039957600080fd5b806306fdde0314610240578063095ea7b31461026b5780630a6a75481461029b578063124035a8146102e757600080fd5b3661023b57005b600080fd5b34801561024c57600080fd5b5061025561078a565b604051610262919061180c565b60405180910390f35b34801561027757600080fd5b5061028b610286366004611872565b61081c565b6040519015158152602001610262565b3480156102a757600080fd5b506102cf7f000000000000000000000000000000000000000000000000000000000000dead81565b6040516001600160a01b039091168152602001610262565b3480156102f357600080fd5b506102fd60125481565b604051908152602001610262565b34801561031757600080fd5b50600f546102cf906001600160a01b031681565b34801561033757600080fd5b506008546102fd565b34801561034c57600080fd5b5061028b61035b36600461189e565b610833565b34801561036c57600080fd5b5061028b61037b3660046118df565b6001600160a01b031660009081526003602052604090205460ff1690565b3480156103a557600080fd5b506007546102fd565b3480156103ba57600080fd5b506102fd60075481565b3480156103d057600080fd5b506103e46103df366004611918565b6108d6565b005b3480156103f257600080fd5b5061028b610401366004611872565b61092b565b34801561041257600080fd5b50600b546102cf906001600160a01b031681565b34801561043257600080fd5b506102fd60085481565b34801561044857600080fd5b506103e461045736600461194d565b610967565b34801561046857600080fd5b506010546102cf906001600160a01b031681565b34801561048857600080fd5b5060105461028b90600160a81b900460ff1681565b3480156104a957600080fd5b506103e46104b83660046118df565b6109cd565b3480156104c957600080fd5b506103e46104d83660046118df565b610a18565b3480156104e957600080fd5b5061028b6104f83660046118df565b6001600160a01b031660009081526006602052604090205460ff1690565b34801561052257600080fd5b506103e46105313660046118df565b610a66565b34801561054257600080fd5b506102fd6105513660046118df565b6001600160a01b031660009081526001602052604090205490565b34801561057857600080fd5b506103e4610ab4565b34801561058d57600080fd5b506000546001600160a01b03166102cf565b3480156105ab57600080fd5b506103e46105ba36600461194d565b610b28565b3480156105cb57600080fd5b50610255610b9f565b3480156105e057600080fd5b506103e46105ef3660046118df565b610bae565b34801561060057600080fd5b506102fd600c5481565b34801561061657600080fd5b5061028b610625366004611872565b610c50565b34801561063657600080fd5b5061028b610645366004611872565b610cec565b34801561065657600080fd5b506102fd600d5481565b34801561066c57600080fd5b506103e4610cf9565b34801561068157600080fd5b5061028b6106903660046118df565b6001600160a01b031660009081526004602052604090205460ff1690565b3480156106ba57600080fd5b506103e46106c93660046118df565b610d4d565b3480156106da57600080fd5b506103e46106e9366004611966565b610e09565b3480156106fa57600080fd5b506102fd60115481565b34801561071057600080fd5b506103e461071f36600461194d565b610e80565b34801561073057600080fd5b506102fd61073f366004611981565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561077657600080fd5b506103e46107853660046118df565b610edf565b606060098054610799906119ba565b80601f01602080910402602001604051908101604052809291908181526020018280546107c5906119ba565b80156108125780601f106107e757610100808354040283529160200191610812565b820191906000526020600020905b8154815290600101906020018083116107f557829003601f168201915b5050505050905090565b6000610829338484610fc9565b5060015b92915050565b60006108408484846110f0565b6001600160a01b0384166000908152600260209081526040808320338452909152902054828110156108cb5760405162461bcd60e51b815260206004820152602960248201527f4945524332303a207472616e7366657220616d6f756e74206578636565647320604482015268616c6c6f77616e636560b81b60648201526084015b60405180910390fd5b506001949350505050565b6000546001600160a01b031633146109005760405162461bcd60e51b81526004016108c2906119f4565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b3360008181526002602090815260408083206001600160a01b03871684529091528120549091610829918590610962908690611a3f565b610fc9565b6000546001600160a01b031633146109915760405162461bcd60e51b81526004016108c2906119f4565b600d8190556040518181527f4babbcf4831921e3525c5cad678d0379401b05da366a608803a6a79910969066906020015b60405180910390a150565b6000546001600160a01b031633146109f75760405162461bcd60e51b81526004016108c2906119f4565b6001600160a01b03166000908152600360205260409020805460ff19169055565b6000546001600160a01b03163314610a425760405162461bcd60e51b81526004016108c2906119f4565b6001600160a01b03166000908152600360205260409020805460ff19166001179055565b6000546001600160a01b03163314610a905760405162461bcd60e51b81526004016108c2906119f4565b6001600160a01b03166000908152600460205260409020805460ff19166001179055565b6000546001600160a01b03163314610ade5760405162461bcd60e51b81526004016108c2906119f4565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610b525760405162461bcd60e51b81526004016108c2906119f4565b600754610b6090600a611b36565b610b6a9082611b42565b60118190556040519081527f5948780118f41f7c4577ae4619d5cbd064057bd8562d9f7b7e60324053375c00906020016109c2565b6060600a8054610799906119ba565b6000546001600160a01b03163314610bd85760405162461bcd60e51b81526004016108c2906119f4565b6001600160a01b038116610c2e5760405162461bcd60e51b815260206004820152601a60248201527f596f752063616e277420736574207a65726f206164647265737300000000000060448201526064016108c2565b600b80546001600160a01b0319166001600160a01b0392909216919091179055565b3360009081526002602090815260408083206001600160a01b038616845290915281205482811015610cd35760405162461bcd60e51b815260206004820152602660248201527f4945524332303a2064656372656173656420616c6c6f77616e63652062656c6f60448201526577207a65726f60d01b60648201526084016108c2565b610ce233856109628685611b59565b5060019392505050565b60006108293384846110f0565b6000546001600160a01b03163314610d235760405162461bcd60e51b81526004016108c2906119f4565b60646008546064610d349190611b42565b610d3e9190611b6c565b6012556000600c819055600d55565b6000546001600160a01b03163314610d775760405162461bcd60e51b81526004016108c2906119f4565b6010546001600160a01b0390811690821603610de85760405162461bcd60e51b815260206004820152602a60248201527f596f752063616e277420706c61792077697468204c69717569646974792070616044820152696972206164647265737360b01b60648201526084016108c2565b6001600160a01b03166000908152600460205260409020805460ff19169055565b6000546001600160a01b03163314610e335760405162461bcd60e51b81526004016108c2906119f4565b60108054821515600160a81b0260ff60a81b199091161790556040517f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc159906109c290831515815260200190565b6000546001600160a01b03163314610eaa5760405162461bcd60e51b81526004016108c2906119f4565b600c8190556040518181527f0e67b9e2db5ac83e278ae529ba7f8d72a1f5e732cb9fa988e8289587a08c1ed4906020016109c2565b6000546001600160a01b03163314610f095760405162461bcd60e51b81526004016108c2906119f4565b6001600160a01b038116610f6e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108c2565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831661102d5760405162461bcd60e51b815260206004820152602560248201527f4945524332303a20617070726f76652066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108c2565b6001600160a01b03821661108f5760405162461bcd60e51b815260206004820152602360248201527f4945524332303a20617070726f766520746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108c2565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166111555760405162461bcd60e51b815260206004820152602660248201527f4945524332303a207472616e736665722066726f6d20746865207a65726f206160448201526564647265737360d01b60648201526084016108c2565b6001600160a01b0382166111b75760405162461bcd60e51b8152602060048201526024808201527f4945524332303a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016108c2565b6001600160a01b03831660009081526006602052604090205460ff161580156111f957506001600160a01b03821660009081526006602052604090205460ff16155b6112455760405162461bcd60e51b815260206004820152601e60248201527f536f72727920796f7572206163636f756e74206973206c696d6969746564000060448201526064016108c2565b6001600160a01b0383166000908152600160205260409020548111156112ad5760405162461bcd60e51b815260206004820152601d60248201527f596f7520646f6e2774206861766520656e6f7567682062616c616e636500000060448201526064016108c2565b6001600160a01b03821660009081526004602052604090205460ff161580156112e457506000546001600160a01b03848116911614155b15611364576012548161130c846001600160a01b031660009081526001602052604090205490565b6113169190611a3f565b11156113645760405162461bcd60e51b815260206004820152601d60248201527f57616c6c657420486f6c64696e67206c696d697420657863656564656400000060448201526064016108c2565b6001600160a01b03831660009081526003602052604081205460ff16806113a357506001600160a01b03831660009081526003602052604090205460ff165b156113b057506000611427565b6001600160a01b03831660009081526005602052604090205460ff16156113f257600e54600d546113e19084611b42565b6113eb9190611b6c565b9050611427565b6001600160a01b03841660009081526005602052604090205460ff161561142357600e54600c546113e19084611b42565b5060005b306000908152600160205260409020546011546010549082101590600160a01b900460ff1615801561146657506010546001600160a01b038681169116145b801561147b5750601054600160a81b900460ff165b80156114a257506011546010546001600160a01b0316600090815260016020526040902054115b156114bb5780156114bb5760115491506114bb826115ec565b60006114c78486611b59565b306000908152600160205260408120805492935086929091906114eb908490611a3f565b90915550506001600160a01b038716600090815260016020526040902054611514908690611b59565b6001600160a01b03808916600090815260016020526040808220939093559088168152908120805483929061154a908490611a3f565b909155505083156115965760405184815230906001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516115db91815260200190565b60405180910390a350505050505050565b6010805460ff60a01b1916600160a01b17905561160881611677565b47801561162557600b54611625906001600160a01b0316826117d1565b471561166657600b546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015611664573d6000803e3d6000fd5b505b50506010805460ff60a01b19169055565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106116ac576116ac611b8e565b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611705573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117299190611ba4565b8160018151811061173c5761173c611b8e565b6001600160a01b039283166020918202929092010152600f546117629130911684610fc9565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac9479061179b908590600090869030904290600401611bc1565b600060405180830381600087803b1580156117b557600080fd5b505af11580156117c9573d6000803e3d6000fd5b505050505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015611807573d6000803e3d6000fd5b505050565b600060208083528351808285015260005b818110156118395785810183015185820160400152820161181d565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461186f57600080fd5b50565b6000806040838503121561188557600080fd5b82356118908161185a565b946020939093013593505050565b6000806000606084860312156118b357600080fd5b83356118be8161185a565b925060208401356118ce8161185a565b929592945050506040919091013590565b6000602082840312156118f157600080fd5b81356118fc8161185a565b9392505050565b8035801515811461191357600080fd5b919050565b6000806040838503121561192b57600080fd5b82356119368161185a565b915061194460208401611903565b90509250929050565b60006020828403121561195f57600080fd5b5035919050565b60006020828403121561197857600080fd5b6118fc82611903565b6000806040838503121561199457600080fd5b823561199f8161185a565b915060208301356119af8161185a565b809150509250929050565b600181811c908216806119ce57607f821691505b6020821081036119ee57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561082d5761082d611a29565b600181815b80851115611a8d578160001904821115611a7357611a73611a29565b80851615611a8057918102915b93841c9390800290611a57565b509250929050565b600082611aa45750600161082d565b81611ab15750600061082d565b8160018114611ac75760028114611ad157611aed565b600191505061082d565b60ff841115611ae257611ae2611a29565b50506001821b61082d565b5060208310610133831016604e8410600b8410161715611b10575081810a61082d565b611b1a8383611a52565b8060001904821115611b2e57611b2e611a29565b029392505050565b60006118fc8383611a95565b808202811582820484141761082d5761082d611a29565b8181038181111561082d5761082d611a29565b600082611b8957634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611bb657600080fd5b81516118fc8161185a565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611c115784516001600160a01b031683529383019391830191600101611bec565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122052c597d3fef4537ae73a79a5236cc6fd754871242b2f4f63d4e9219153aef10264736f6c63430008130033
Deployed Bytecode Sourcemap
11455:11915:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14386:85;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14908:210;;;;;;;;;;-1:-1:-1;14908:210:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;14908:210:0;1023:187:1;12056:96:0;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1379:32:1;;;1361:51;;1349:2;1334:18;12056:96:0;1215:203:1;12609:66:0;;;;;;;;;;;;;;;;;;;1569:25:1;;;1557:2;1542:18;12609:66:0;1423:177:1;12356:41:0;;;;;;;;;;-1:-1:-1;12356:41:0;;;;-1:-1:-1;;;;;12356:41:0;;;14671:102;;;;;;;;;;-1:-1:-1;14753:12:0;;14671:102;;19354:422;;;;;;;;;;-1:-1:-1;19354:422:0;;;;;:::i;:::-;;:::i;16722:126::-;;;;;;;;;;-1:-1:-1;16722:126:0;;;;;:::i;:::-;-1:-1:-1;;;;;16813:27:0;16789:4;16813:27;;;:18;:27;;;;;;;;;16722:126;14576:87;;;;;;;;;;-1:-1:-1;14646:9:0;;14576:87;;11878:29;;;;;;;;;;;;;;;;17537:157;;;;;;;;;;-1:-1:-1;17537:157:0;;;;;:::i;:::-;;:::i;:::-;;15723:297;;;;;;;;;;-1:-1:-1;15723:297:0;;;;;:::i;:::-;;:::i;12159:45::-;;;;;;;;;;-1:-1:-1;12159:45:0;;;;-1:-1:-1;;;;;12159:45:0;;;11914:55;;;;;;;;;;;;;;;;18280:189;;;;;;;;;;-1:-1:-1;18280:189:0;;;;;:::i;:::-;;:::i;12404:28::-;;;;;;;;;;-1:-1:-1;12404:28:0;;;;-1:-1:-1;;;;;12404:28:0;;;12478:40;;;;;;;;;;-1:-1:-1;12478:40:0;;;;-1:-1:-1;;;12478:40:0;;;;;;16602:112;;;;;;;;;;-1:-1:-1;16602:112:0;;;;;:::i;:::-;;:::i;16481:113::-;;;;;;;;;;-1:-1:-1;16481:113:0;;;;;:::i;:::-;;:::i;17702:124::-;;;;;;;;;;-1:-1:-1;17702:124:0;;;;;:::i;:::-;-1:-1:-1;;;;;17792:26:0;17768:4;17792:26;;;:17;:26;;;;;;;;;17702:124;17057:169;;;;;;;;;;-1:-1:-1;17057:169:0;;;;;:::i;:::-;;:::i;14781:119::-;;;;;;;;;;-1:-1:-1;14781:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;14874:18:0;14847:7;14874:18;;;:9;:18;;;;;;;14781:119;1814:148;;;;;;;;;;;;;:::i;1591:87::-;;;;;;;;;;-1:-1:-1;1637:7:0;1664:6;-1:-1:-1;;;;;1664:6:0;1591:87;;18477:261;;;;;;;;;;-1:-1:-1;18477:261:0;;;;;:::i;:::-;;:::i;14479:89::-;;;;;;;;;;;;;:::i;17834:245::-;;;;;;;;;;-1:-1:-1;17834:245:0;;;;;:::i;:::-;;:::i;12213:39::-;;;;;;;;;;;;;;;;16028:445;;;;;;;;;;-1:-1:-1;16028:445:0;;;;;:::i;:::-;;:::i;19130:216::-;;;;;;;;;;-1:-1:-1;19130:216:0;;;;;:::i;:::-;;:::i;12261:40::-;;;;;;;;;;;;;;;;18746:195;;;;;;;;;;;;;:::i;16856:193::-;;;;;;;;;;-1:-1:-1;16856:193:0;;;;;:::i;:::-;-1:-1:-1;;;;;16993:48:0;16964:4;16993:48;;;:33;:48;;;;;;;;;16856:193;17234:295;;;;;;;;;;-1:-1:-1;17234:295:0;;;;;:::i;:::-;;:::i;18949:173::-;;;;;;;;;;-1:-1:-1;18949:173:0;;;;;:::i;:::-;;:::i;12527:75::-;;;;;;;;;;;;;;;;18087:185;;;;;;;;;;-1:-1:-1;18087:185:0;;;;;:::i;:::-;;:::i;15514:201::-;;;;;;;;;;-1:-1:-1;15514:201:0;;;;;:::i;:::-;-1:-1:-1;;;;;15680:18:0;;;15648:7;15680:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;15514:201;1970:281;;;;;;;;;;-1:-1:-1;1970:281:0;;;;;:::i;:::-;;:::i;14386:85::-;14425:13;14458:5;14451:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14386:85;:::o;14908:210::-;15027:4;15049:39;1125:10;15072:7;15081:6;15049:8;:39::i;:::-;-1:-1:-1;15106:4:0;14908:210;;;;;:::o;19354:422::-;19494:4;19511:36;19521:6;19529:9;19540:6;19511:9;:36::i;:::-;-1:-1:-1;;;;;19585:19:0;;19558:24;19585:19;;;:11;:19;;;;;;;;1125:10;19585:33;;;;;;;;19651:26;;;;19629:117;;;;-1:-1:-1;;;19629:117:0;;4871:2:1;19629: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;;19629:117:0;;;;;;;;;-1:-1:-1;19764:4:0;;19354:422;-1:-1:-1;;;;19354:422:0:o;17537:157::-;1637:7;1664:6;-1:-1:-1;;;;;1664:6:0;1125:10;1726:23;1718:68;;;;-1:-1:-1;;;1718:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17651:26:0;;;::::1;;::::0;;;:17:::1;:26;::::0;;;;:35;;-1:-1:-1;;17651:35:0::1;::::0;::::1;;::::0;;;::::1;::::0;;17537:157::o;15723:297::-;1125:10;15838:4;15932:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;15932:34:0;;;;;;;;;;15838:4;;15860:130;;15910:7;;15932:47;;15969:10;;15932:47;:::i;:::-;15860:8;:130::i;18280:189::-;1637:7;1664:6;-1:-1:-1;;;;;1664:6:0;1125:10;1726:23;1718:68;;;;-1:-1:-1;;;1718:68:0;;;;;;;:::i;:::-;18365:20:::1;:38:::0;;;18419:42:::1;::::0;1569:25:1;;;18419:42:0::1;::::0;1557:2:1;1542:18;18419:42:0::1;;;;;;;;18280:189:::0;:::o;16602:112::-;1637:7;1664:6;-1:-1:-1;;;;;1664:6:0;1125:10;1726:23;1718:68;;;;-1:-1:-1;;;1718:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16671:27:0::1;16701:5;16671:27:::0;;;:18:::1;:27;::::0;;;;:35;;-1:-1:-1;;16671:35:0::1;::::0;;16602:112::o;16481:113::-;1637:7;1664:6;-1:-1:-1;;;;;1664:6:0;1125:10;1726:23;1718:68;;;;-1:-1:-1;;;1718:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16552:27:0::1;;::::0;;;:18:::1;:27;::::0;;;;:34;;-1:-1:-1;;16552:34:0::1;16582:4;16552:34;::::0;;16481:113::o;17057:169::-;1637:7;1664:6;-1:-1:-1;;;;;1664:6:0;1125:10;1726:23;1718:68;;;;-1:-1:-1;;;1718:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17169:42:0::1;;::::0;;;:33:::1;:42;::::0;;;;:49;;-1:-1:-1;;17169:49:0::1;17214:4;17169:49;::::0;;17057:169::o;1814:148::-;1637:7;1664:6;-1:-1:-1;;;;;1664:6:0;1125:10;1726:23;1718:68;;;;-1:-1:-1;;;1718:68:0;;;;;;;:::i;:::-;1921:1:::1;1905:6:::0;;1884:40:::1;::::0;-1:-1:-1;;;;;1905:6:0;;::::1;::::0;1884:40:::1;::::0;1921:1;;1884:40:::1;1952:1;1935:19:::0;;-1:-1:-1;;;;;;1935:19:0::1;::::0;;1814:148::o;18477:261::-;1637:7;1664:6;-1:-1:-1;;;;;1664:6:0;1125:10;1726:23;1718:68;;;;-1:-1:-1;;;1718:68:0;;;;;;;:::i;:::-;18648:9:::1;::::0;18644:13:::1;::::0;:2:::1;:13;:::i;:::-;18627:30;::::0;:14;:30:::1;:::i;:::-;18595:29;:62:::0;;;18673:57:::1;::::0;1569:25:1;;;18673:57:0::1;::::0;1557:2:1;1542:18;18673:57:0::1;1423:177:1::0;14479:89:0;14520:13;14553:7;14546:14;;;;;:::i;17834:245::-;1637:7;1664:6;-1:-1:-1;;;;;1664:6:0;1125:10;1726:23;1718:68;;;;-1:-1:-1;;;1718:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17954:32:0;::::1;17946:71;;;::::0;-1:-1:-1;;;17946:71:0;;7451:2:1;17946:71:0::1;::::0;::::1;7433:21:1::0;7490:2;7470:18;;;7463:30;7529:28;7509:18;;;7502:56;7575:18;;17946:71:0::1;7249:350:1::0;17946:71:0::1;18028:22;:43:::0;;-1:-1:-1;;;;;;18028:43:0::1;-1:-1:-1::0;;;;;18028:43:0;;;::::1;::::0;;;::::1;::::0;;17834:245::o;16028:445::-;1125:10;16148:4;16197:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;16197:34:0;;;;;;;;;;16264:35;;;;16242:123;;;;-1:-1:-1;;;16242:123:0;;7806:2:1;16242: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;;16242:123:0;7604:402:1;16242:123:0;16376:67;1125:10;16399:7;16408:34;16427:15;16408:16;:34;:::i;16376:67::-;-1:-1:-1;16461:4:0;;16028:445;-1:-1:-1;;;16028:445:0:o;19130:216::-;19252:4;19274:42;1125:10;19298:9;19309:6;19274:9;:42::i;18746:195::-;1637:7;1664:6;-1:-1:-1;;;;;1664:6:0;1125:10;1726:23;1718:68;;;;-1:-1:-1;;;1718:68:0;;;;;;;:::i;:::-;18859:5:::1;18837:12;;18852:3;18837:18;;;;:::i;:::-;18836:28;;;;:::i;:::-;18811:22;:53:::0;18897:1:::1;18875:19;:23:::0;;;18909:20:::1;:24:::0;18746:195::o;17234:295::-;1637:7;1664:6;-1:-1:-1;;;;;1664:6:0;1125:10;1726:23;1718:68;;;;-1:-1:-1;;;1718:68:0;;;;;;;:::i;:::-;17377:13:::1;::::0;-1:-1:-1;;;;;17377:13:0;;::::1;17366:24:::0;;::::1;::::0;17344:116:::1;;;::::0;-1:-1:-1;;;17344:116:0;;8568:2:1;17344:116:0::1;::::0;::::1;8550:21:1::0;8607:2;8587:18;;;8580:30;8646:34;8626:18;;;8619:62;-1:-1:-1;;;8697:18:1;;;8690:40;8747:19;;17344:116:0::1;8366:406:1::0;17344:116:0::1;-1:-1:-1::0;;;;;17471:42:0::1;17516:5;17471:42:::0;;;:33:::1;:42;::::0;;;;:50;;-1:-1:-1;;17471:50:0::1;::::0;;17234:295::o;18949:173::-;1637:7;1664:6;-1:-1:-1;;;;;1664:6:0;1125:10;1726:23;1718:68;;;;-1:-1:-1;;;1718:68:0;;;;;;;:::i;:::-;19028:21:::1;:32:::0;;;::::1;;-1:-1:-1::0;;;19028:32:0::1;-1:-1:-1::0;;;;19028:32:0;;::::1;;::::0;;19076:38:::1;::::0;::::1;::::0;::::1;::::0;19052:8;1188:14:1;1181:22;1163:41;;1151:2;1136:18;;1023:187;18087:185:0;1637:7;1664:6;-1:-1:-1;;;;;1664:6:0;1125:10;1726:23;1718:68;;;;-1:-1:-1;;;1718:68:0;;;;;;;:::i;:::-;18171:19:::1;:37:::0;;;18224:40:::1;::::0;1569:25:1;;;18224:40:0::1;::::0;1557:2:1;1542:18;18224:40:0::1;1423:177:1::0;1970:281:0;1637:7;1664:6;-1:-1:-1;;;;;1664:6:0;1125:10;1726:23;1718:68;;;;-1:-1:-1;;;1718:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2073:22:0;::::1;2051:110;;;::::0;-1:-1:-1;;;2051:110:0;;8979:2:1;2051: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;;2051:110:0::1;8777:402:1::0;2051:110:0::1;2198:6;::::0;;2177:38:::1;::::0;-1:-1:-1;;;;;2177:38:0;;::::1;::::0;2198:6;::::1;::::0;2177:38:::1;::::0;::::1;2226:6;:17:::0;;-1:-1:-1;;;;;;2226:17:0::1;-1:-1:-1::0;;;;;2226:17:0;;;::::1;::::0;;;::::1;::::0;;1970:281::o;15126:380::-;-1:-1:-1;;;;;15262:19:0;;15254:69;;;;-1:-1:-1;;;15254:69:0;;9386:2:1;15254: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;;15254:69:0;9184:401:1;15254:69:0;-1:-1:-1;;;;;15342:21:0;;15334:69;;;;-1:-1:-1;;;15334:69:0;;9792:2:1;15334: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;;15334:69:0;9590:399:1;15334:69:0;-1:-1:-1;;;;;15414:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;15466:32;;1569:25:1;;;15466:32:0;;1542:18:1;15466:32:0;;;;;;;15126:380;;;:::o;19877:2300::-;-1:-1:-1;;;;;20017:20:0;;20009:71;;;;-1:-1:-1;;;20009:71:0;;10196:2:1;20009: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;;20009:71:0;9994:402:1;20009:71:0;-1:-1:-1;;;;;20113:23:0;;20091:109;;;;-1:-1:-1;;;20091:109:0;;10603:2:1;20091: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;;20091:109:0;10401:400:1;20091:109:0;-1:-1:-1;;;;;20234:25:0;;;;;;:17;:25;;;;;;;;20233:26;:59;;;;-1:-1:-1;;;;;;20264:28:0;;;;;;:17;:28;;;;;;;;20263:29;20233:59;20211:139;;;;-1:-1:-1;;;20211:139:0;;11008:2:1;20211:139:0;;;10990:21:1;11047:2;11027:18;;;11020:30;11086:32;11066:18;;;11059:60;11136:18;;20211:139:0;10806:354:1;20211:139:0;-1:-1:-1;;;;;20369:17:0;;;;;;:9;:17;;;;;;:27;-1:-1:-1;20369:27:0;20361:69;;;;-1:-1:-1;;;20361:69:0;;11367:2:1;20361:69:0;;;11349:21:1;11406:2;11386:18;;;11379:30;11445:31;11425:18;;;11418:59;11494:18;;20361:69:0;11165:353:1;20361:69:0;-1:-1:-1;;;;;20462:44:0;;;;;;:33;:44;;;;;;;;20461:45;:66;;;;-1:-1:-1;1637:7:0;1664:6;-1:-1:-1;;;;;20510:17:0;;;1664:6;;20510:17;;20461:66;20443:269;;;20613:22;;20603:6;20580:20;20590:9;-1:-1:-1;;;;;14874:18:0;14847:7;14874:18;;;:9;:18;;;;;;;14781:119;20580:20;:29;;;;:::i;:::-;:55;;20554:146;;;;-1:-1:-1;;;20554:146:0;;11725:2:1;20554:146:0;;;11707:21:1;11764:2;11744:18;;;11737:30;11803:31;11783:18;;;11776:59;11852:18;;20554:146:0;11523:353:1;20554:146:0;-1:-1:-1;;;;;20761:26:0;;20724:16;20761:26;;;:18;:26;;;;;;;;;:59;;-1:-1:-1;;;;;;20791:29:0;;;;;;:18;:29;;;;;;;;20761:59;20757:467;;;-1:-1:-1;20848:1:0;20757:467;;;-1:-1:-1;;;;;20886:34:0;;;;;;:23;:34;;;;;;;;20882:331;;;20989:14;;20963:20;;20953:31;;:6;:31;:::i;:::-;20952:52;;;;:::i;:::-;20941:63;;20882:331;;;-1:-1:-1;;;;;21030:31:0;;;;;;:23;:31;;;;;;;;21026:187;;;21129:14;;21104:19;;21094:30;;:6;:30;:::i;21026:187::-;-1:-1:-1;21196:1:0;21026:187;21285:4;21236:28;14874:18;;;:9;:18;;;;;;21368:29;;21427:16;;21331:66;;;;;-1:-1:-1;;;21427:16:0;;;;21426:17;:60;;;;-1:-1:-1;21473:13:0;;-1:-1:-1;;;;;21460:26:0;;;21473:13;;21460:26;21426:60;:98;;;;-1:-1:-1;21503:21:0;;-1:-1:-1;;;21503:21:0;;;;21426:98;:171;;;;-1:-1:-1;21568:29:0;;21551:13;;-1:-1:-1;;;;;21551:13:0;14847:7;14874:18;;;:9;:18;;;;;;21541:56;21426:171;21408:390;;;21628:19;21624:163;;;21691:29;;21668:52;;21739:32;21750:20;21739:10;:32::i;:::-;21810:22;21835:19;21845:8;21835:6;:19;:::i;:::-;21883:4;21865:24;;;;:9;:24;;;;;:36;;21810:44;;-1:-1:-1;21893:8:0;;21865:24;;;:36;;21893:8;;21865:36;:::i;:::-;;;;-1:-1:-1;;;;;;;21932:17:0;;;;;;:9;:17;;;;;;:26;;21952:6;;21932:26;:::i;:::-;-1:-1:-1;;;;;21912:17:0;;;;;;;:9;:17;;;;;;:46;;;;21969:20;;;;;;;;:38;;21993:14;;21912:17;21969:38;;21993:14;;21969:38;:::i;:::-;;;;-1:-1:-1;;22024:12:0;;22020:91;;22058:41;;1569:25:1;;;22083:4:0;;-1:-1:-1;;;;;22058:41:0;;;;;1557:2:1;1542:18;22058:41:0;;;;;;;22020:91;22143:9;-1:-1:-1;;;;;22126:43:0;22135:6;-1:-1:-1;;;;;22126:43:0;;22154:14;22126:43;;;;1569:25:1;;1557:2;1542:18;;1423:177;22126:43:0;;;;;;;;19998:2179;;;;19877:2300;;;:::o;22185:437::-;13230:16;:23;;-1:-1:-1;;;;13230:23:0;-1:-1:-1;;;13230:23:0;;;22267:39:::1;22284:21:::0;22267:16:::1;:39::i;:::-;22344:21;22380:20:::0;;22376:115:::1;;22438:22;::::0;22417:62:::1;::::0;-1:-1:-1;;;;;22438:22:0::1;22462:16:::0;22417:20:::1;:62::i;:::-;22507:21;:25:::0;22503:112:::1;;22549:22;::::0;:54:::1;::::0;-1:-1:-1;;;;;22549:22:0;;::::1;::::0;22581:21:::1;22549:54:::0;::::1;;;::::0;:22:::1;:54:::0;:22;:54;22581:21;22549:22;:54;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;22503:112;-1:-1:-1::0;;13276:16:0;:24;;-1:-1:-1;;;;13276:24:0;;;22185:437::o;22778:589::-;22928:16;;;22942:1;22928:16;;;;;;;;22904:21;;22928:16;;;;;;;;;;-1:-1:-1;22928:16:0;22904:40;;22973:4;22955;22960:1;22955:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;22955:23:0;;;:7;;;;;;;;;;:23;;;;22999:15;;:22;;;-1:-1:-1;;;22999:22:0;;;;:15;;;;;:20;;:22;;;;;22955:7;;22999:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22989:4;22994:1;22989:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;22989:32:0;;;:7;;;;;;;;;:32;23066:15;;23034:62;;23051:4;;23066:15;23084:11;23034:8;:62::i;:::-;23135:15;;:224;;-1:-1:-1;;;23135:224:0;;-1:-1:-1;;;;;23135:15:0;;;;:66;;:224;;23216:11;;23135:15;;23286:4;;23313;;23333:15;;23135:224;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22833:534;22778:589;:::o;22630:140::-;22736:26;;-1:-1:-1;;;;;22736:18:0;;;:26;;;;;22755:6;;22736:26;;;;22755:6;22736:18;:26;;;;;;;;;;;;;;;;;;;;;22630:140;;:::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;8144:217::-;8184:1;8210;8200:132;;8254:10;8249:3;8245:20;8242:1;8235:31;8289:4;8286:1;8279:15;8317:4;8314:1;8307:15;8200:132;-1:-1:-1;8346:9:1;;8144: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://52c597d3fef4537ae73a79a5236cc6fd754871242b2f4f63d4e9219153aef102
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.