Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
1,000,000 LSVRB
Holders
77
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
lasrevernrub
Compiler Version
v0.8.10+commit.fc410830
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-08-01 */ /** .nrub ti teL .lasrever eht fo snoitadnuof eht ni eveileb eW */ //SPDX-License-Identifier: MIT pragma solidity ^0.8.5; library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } interface ERC20 { function totalSupply() external view returns (uint256); function decimals() external view returns (uint8); function symbol() external view returns (string memory); function name() external view returns (string memory); function getOwner() external view returns (address); 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) { return msg.data; } } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { _transferOwnership(_msgSender()); } modifier onlyOwner() { _checkOwner(); _; } function owner() public view virtual returns (address) { return _owner; } function _checkOwner() internal view virtual { require(owner() == _msgSender(), "Ownable: caller is not the owner"); } function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, 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 lasrevernrub is ERC20, Ownable { using SafeMath for uint256; address WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2; address DEAD = 0x000000000000000000000000000000000000dEaD; address ZERO = 0x0000000000000000000000000000000000000000; string constant _name = "LASREVER NRUB"; string constant _symbol = "LSVRB"; uint8 constant _decimals = 9; uint256 _totalSupply = 1000000 * (10 ** _decimals); uint256 public _maxTxAmount = (_totalSupply * 2) / 100; // 2% max tx uint256 public _maxWalletSize = (_totalSupply * 2) / 100; // 2% max wallet mapping (address => uint256) _balances; mapping (address => mapping (address => uint256)) _allowances; mapping (address => bool) public isFeeExempt; mapping (address => bool) public isTxLimitExempt; uint256 liquidityFee = 0; uint256 teamFee = 0; uint256 marketingFee = 6; uint256 devFee = 0; uint256 totalFee = 6; uint256 feeDenominator = 100; address private marketingFeeReceiver = 0x6ba27F23DDE73a841a4e11F2367032C4D7Db2218; address private devFeeReceiver = 0x6ba27F23DDE73a841a4e11F2367032C4D7Db2218; address private teamFeeReceiver = 0x6ba27F23DDE73a841a4e11F2367032C4D7Db2218; IUniswapV2Router02 public router; address public pair; uint256 public launchedAt; bool public swapEnabled = true; bool public tradingActive = false; uint256 public swapThreshold = _totalSupply / 1000 * 1; // .1% bool inSwap; modifier swapping() { inSwap = true; _; inSwap = false; } constructor () { router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); pair = IUniswapV2Factory(router.factory()).createPair(WETH, address(this)); _allowances[address(this)][address(router)] = type(uint256).max; address _owner = owner(); isFeeExempt[_owner] = true; isTxLimitExempt[_owner] = true; isTxLimitExempt[address(router)] = true; isTxLimitExempt[address(pair)] = true; _balances[_owner] = _totalSupply; emit Transfer(address(0), _owner, _totalSupply); } receive() external payable { } function totalSupply() external view override returns (uint256) { return _totalSupply; } function decimals() external pure override returns (uint8) { return _decimals; } function symbol() external pure override returns (string memory) { return _symbol; } function name() external pure override returns (string memory) { return _name; } function getOwner() external view returns (address) { return owner(); } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _allowances[msg.sender][spender] = amount; emit Approval(msg.sender, spender, amount); return true; } function approveMax(address spender) external returns (bool) { return approve(spender, type(uint256).max); } function transfer(address recipient, uint256 amount) external override returns (bool) { return _transferFrom(msg.sender, recipient, amount); } function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) { if(_allowances[sender][msg.sender] != type(uint256).max){ _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance"); } return _transferFrom(sender, recipient, amount); } function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) { if(inSwap){ return _basicTransfer(sender, recipient, amount); } if(!tradingActive){ require(isFeeExempt[sender] || isFeeExempt[recipient], "Trading is not active yet."); } checkTxLimit(sender, amount); if (recipient != pair && recipient != DEAD) { require(isTxLimitExempt[recipient] || _balances[recipient] + amount <= _maxWalletSize, "Transfer amount exceeds the bag size."); } if(shouldSwapBack()){ swapBack(); } if(!launched() && recipient == pair){ require(_balances[sender] > 0); launch(); } _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); uint256 amountReceived = shouldTakeFee(sender, recipient) ? takeFee(sender, recipient, amount) : amount; _balances[recipient] = _balances[recipient].add(amountReceived); emit Transfer(sender, recipient, amountReceived); return true; } function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) { _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); return true; } function checkTxLimit(address sender, uint256 amount) internal view { require(amount <= _maxTxAmount || isTxLimitExempt[sender], "TX Limit Exceeded"); } function shouldTakeFee(address sender, address recipient) internal view returns (bool) { return !(isFeeExempt[sender] || isFeeExempt[recipient]); } function getTotalFee(bool selling) public view returns (uint256) { if(launchedAt + 1 >= block.number){ return feeDenominator.sub(1); } if(selling) { return totalFee.add(1); } return totalFee; } function enableTrading() external onlyOwner() { tradingActive = true; } function takeFee(address sender, address receiver, uint256 amount) internal returns (uint256) { uint256 feeAmount = amount.mul(getTotalFee(receiver == pair)).div(feeDenominator); _balances[address(this)] = _balances[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); return amount.sub(feeAmount); } function shouldSwapBack() internal view returns (bool) { return msg.sender != pair && !inSwap && swapEnabled && _balances[address(this)] >= swapThreshold; } function swapBack() internal swapping { uint256 contractTokenBalance = balanceOf(address(this)); uint256 amountToLiquify = contractTokenBalance.mul(liquidityFee).div(totalFee).div(2); uint256 amountToSwap = contractTokenBalance.sub(amountToLiquify); address[] memory path = new address[](2); path[0] = address(this); path[1] = WETH; uint256 balanceBefore = address(this).balance; router.swapExactTokensForETHSupportingFeeOnTransferTokens( amountToSwap, 0, path, address(this), block.timestamp ); uint256 amountBNB = address(this).balance.sub(balanceBefore); uint256 totalBNBFee = totalFee.sub(liquidityFee.div(2)); //uint256 amountBNBLiquidity = amountBNB.mul(liquidityFee).div(totalBNBFee).div(2); uint256 amountBNBdevelopment = amountBNB.mul(teamFee).div(totalBNBFee); uint256 amountBNBmarketing = amountBNB.mul(marketingFee).div(totalBNBFee); uint256 amountBNBDev = amountBNB.mul(devFee).div(totalBNBFee); (bool marketingSuccess, /* bytes memory data */) = payable(marketingFeeReceiver).call{value: amountBNBmarketing, gas: 30000}(""); require(marketingSuccess, "receiver rejected ETH transfer"); (bool DevSuccess, /* bytes memory data */) = payable(devFeeReceiver).call{value: amountBNBDev, gas: 30000}(""); require(DevSuccess, "receiver rejected ETH transfer"); (bool developmentSuccess, /* bytes memory data */) = payable(teamFeeReceiver).call{value: amountBNBdevelopment, gas: 30000}(""); require(developmentSuccess, "receiver rejected ETH transfer"); } function buyTokens(uint256 amount, address to) internal swapping { address[] memory path = new address[](2); path[0] = WETH; path[1] = address(this); router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}( 0, path, to, block.timestamp ); } function launched() internal view returns (bool) { return launchedAt != 0; } function launch() internal { launchedAt = block.number; } function setTxLimit(uint256 amount) external onlyOwner() { require(amount >= _totalSupply / 1000); _maxTxAmount = amount; } function setMaxWallet(uint256 amount) external onlyOwner() { require(amount >= _totalSupply / 1000 ); _maxWalletSize = amount; } function setIsFeeExempt(address holder, bool exempt) external onlyOwner() { isFeeExempt[holder] = exempt; } function setIsTxLimitExempt(address holder, bool exempt) external onlyOwner() { isTxLimitExempt[holder] = exempt; } function setFees( uint256 _teamFee, uint256 _marketingFee, uint256 _devFee , uint256 _feeDenominator) external onlyOwner() { teamFee = _teamFee; marketingFee = _marketingFee; devFee = _devFee ; totalFee = _devFee.add(_teamFee).add(_marketingFee); feeDenominator = _feeDenominator; } function setFeeReceiver(address _marketingFeeReceiver, address _teamFeeReceiver) external onlyOwner() { marketingFeeReceiver = _marketingFeeReceiver; teamFeeReceiver = _teamFeeReceiver; } function setSwapBackSettings(bool _enabled, uint256 _amount) external onlyOwner() { swapEnabled = _enabled; swapThreshold = _amount; } function manualSend() external onlyOwner() { uint256 contractETHBalance = address(this).balance; payable(marketingFeeReceiver).transfer(contractETHBalance); } function transferForeignToken(address _token) public onlyOwner() { require(_token != address(this), "Can't let you take all native token"); uint256 _contractBalance = ERC20(_token).balanceOf(address(this)); payable(marketingFeeReceiver).transfer(_contractBalance); } function getCirculatingSupply() public view returns (uint256) { return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(ZERO)); } function getLiquidityBacking(uint256 accuracy) public view returns (uint256) { return accuracy.mul(balanceOf(pair).mul(2)).div(getCirculatingSupply()); } function isOverLiquified(uint256 target, uint256 accuracy) public view returns (bool) { return getLiquidityBacking(accuracy) > target; } event AutoLiquify(uint256 amountBNB, uint256 amountBOG); }
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":"uint256","name":"amountBNB","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountBOG","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"spender","type":"address"}],"name":"approveMax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"getLiquidityBacking","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"selling","type":"bool"}],"name":"getTotalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"target","type":"uint256"},{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"isOverLiquified","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isTxLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingFeeReceiver","type":"address"},{"internalType":"address","name":"_teamFeeReceiver","type":"address"}],"name":"setFeeReceiver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_teamFee","type":"uint256"},{"internalType":"uint256","name":"_marketingFee","type":"uint256"},{"internalType":"uint256","name":"_devFee","type":"uint256"},{"internalType":"uint256","name":"_feeDenominator","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsTxLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"_token","type":"address"}],"name":"transferForeignToken","outputs":[],"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"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052600180546001600160a01b031990811673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc21790915560028054821661dead179055600380549091169055620000506009600a620004b7565b6200005f90620f4240620004cf565b60045560646004546002620000759190620004cf565b620000819190620004f1565b60055560646004546002620000979190620004cf565b620000a39190620004f1565b60069081556000600b819055600c819055600d829055600e55600f55606460105560118054736ba27f23dde73a841a4e11f2367032c4d7db22186001600160a01b03199182168117909255601280548216831790556013805490911690911790556017805461ffff1916600117905560045462000124906103e890620004f1565b62000131906001620004cf565b6018553480156200014157600080fd5b506200014d3362000352565b601480546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa158015620001b2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001d8919062000514565b6001546040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af11580156200022a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000250919062000514565b601580546001600160a01b0319166001600160a01b0392831617905530600090815260086020908152604080832060145490941683529290529081206000199055620002a46000546001600160a01b031690565b6001600160a01b0381811660008181526009602090815260408083208054600160ff199182168117909255600a845282852080548216831790556014548716855282852080548216831790556015549096168452818420805490961617909455600454838352600782528483208190559351938452939450909290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3506200053f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003f9578160001904821115620003dd57620003dd620003a2565b80851615620003eb57918102915b93841c9390800290620003bd565b509250929050565b6000826200041257506001620004b1565b816200042157506000620004b1565b81600181146200043a5760028114620004455762000465565b6001915050620004b1565b60ff841115620004595762000459620003a2565b50506001821b620004b1565b5060208310610133831016604e8410600b84101617156200048a575081810a620004b1565b620004968383620003b8565b8060001904821115620004ad57620004ad620003a2565b0290505b92915050565b6000620004c860ff84168362000401565b9392505050565b6000816000190483118215151615620004ec57620004ec620003a2565b500290565b6000826200050f57634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200052757600080fd5b81516001600160a01b0381168114620004c857600080fd5b611bcf806200054f6000396000f3fe6080604052600436106102295760003560e01c80638a8c523c11610123578063d51ed1c8116100ab578063f1f3bca31161006f578063f1f3bca3146106b4578063f2fde38b146106d4578063f4293890146106f4578063f84ba65d14610709578063f887ea401461072957600080fd5b8063d51ed1c8146105ee578063dc93cf701461060e578063dd62ed3e1461062e578063df20fd4914610674578063e66db25e1461069457600080fd5b806395d89b41116100f257806395d89b411461054b578063a8aa1b3114610579578063a9059cbb14610599578063bbc0c742146105b9578063bf56b371146105d857600080fd5b80638a8c523c146104d25780638b42507f146104e75780638da5cb5b146105175780638f9a55c01461053557600080fd5b8063571ac8b0116101b15780636fcba377116101755780636fcba3771461041f57806370a082311461043f578063715018a6146104755780637d1db4a51461048a578063893d20e8146104a057600080fd5b8063571ac8b0146103835780635c85974f146103a35780635d0044ca146103c5578063658d4b7f146103e55780636ddd17131461040557600080fd5b806318160ddd116101f857806318160ddd146102ed57806323b872dd146103025780632b112e4914610322578063313ce567146103375780633f4218e01461035357600080fd5b80630445b6671461023557806306fdde031461025e578063095ea7b31461029d5780631161ae39146102cd57600080fd5b3661023057005b600080fd5b34801561024157600080fd5b5061024b60185481565b6040519081526020015b60405180910390f35b34801561026a57600080fd5b5060408051808201909152600d81526c2620a9a922ab22a91027292aa160991b60208201525b6040516102559190611839565b3480156102a957600080fd5b506102bd6102b83660046118aa565b610749565b6040519015158152602001610255565b3480156102d957600080fd5b506102bd6102e83660046118d4565b6107b6565b3480156102f957600080fd5b5060045461024b565b34801561030e57600080fd5b506102bd61031d3660046118f6565b6107ca565b34801561032e57600080fd5b5061024b61088c565b34801561034357600080fd5b5060405160098152602001610255565b34801561035f57600080fd5b506102bd61036e366004611932565b60096020526000908152604090205460ff1681565b34801561038f57600080fd5b506102bd61039e366004611932565b6108de565b3480156103af57600080fd5b506103c36103be36600461194d565b6108ec565b005b3480156103d157600080fd5b506103c36103e036600461194d565b610915565b3480156103f157600080fd5b506103c3610400366004611976565b61093e565b34801561041157600080fd5b506017546102bd9060ff1681565b34801561042b57600080fd5b506103c361043a3660046119a9565b610971565b34801561044b57600080fd5b5061024b61045a366004611932565b6001600160a01b031660009081526007602052604090205490565b34801561048157600080fd5b506103c36109a7565b34801561049657600080fd5b5061024b60055481565b3480156104ac57600080fd5b506000546001600160a01b03165b6040516001600160a01b039091168152602001610255565b3480156104de57600080fd5b506103c36109bb565b3480156104f357600080fd5b506102bd610502366004611932565b600a6020526000908152604090205460ff1681565b34801561052357600080fd5b506000546001600160a01b03166104ba565b34801561054157600080fd5b5061024b60065481565b34801561055757600080fd5b506040805180820190915260058152642629ab292160d91b6020820152610290565b34801561058557600080fd5b506015546104ba906001600160a01b031681565b3480156105a557600080fd5b506102bd6105b43660046118aa565b6109d4565b3480156105c557600080fd5b506017546102bd90610100900460ff1681565b3480156105e457600080fd5b5061024b60165481565b3480156105fa57600080fd5b5061024b61060936600461194d565b6109e1565b34801561061a57600080fd5b506103c3610629366004611932565b610a25565b34801561063a57600080fd5b5061024b6106493660046119db565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b34801561068057600080fd5b506103c361068f366004611a05565b610b42565b3480156106a057600080fd5b506103c36106af3660046119db565b610b61565b3480156106c057600080fd5b5061024b6106cf366004611a21565b610b97565b3480156106e057600080fd5b506103c36106ef366004611932565b610bd8565b34801561070057600080fd5b506103c3610c51565b34801561071557600080fd5b506103c3610724366004611976565b610c97565b34801561073557600080fd5b506014546104ba906001600160a01b031681565b3360008181526008602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906107a49086815260200190565b60405180910390a35060015b92915050565b6000826107c2836109e1565b119392505050565b6001600160a01b038316600090815260086020908152604080832033845290915281205460001914610877576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600882528381203382529091529190912054610852918490610cca565b6001600160a01b03851660009081526008602090815260408083203384529091529020555b610882848484610d04565b90505b9392505050565b6003546001600160a01b03166000908152600760205260408120546108d9906002546001600160a01b03166000908152600760205260409020546108d3906004549061101b565b9061101b565b905090565b60006107b082600019610749565b6108f461105d565b6103e86004546109049190611a52565b81101561091057600080fd5b600555565b61091d61105d565b6103e860045461092d9190611a52565b81101561093957600080fd5b600655565b61094661105d565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b61097961105d565b600c849055600d839055600e82905561099c8361099684876110b7565b906110b7565b600f55601055505050565b6109af61105d565b6109b96000611116565b565b6109c361105d565b6017805461ff001916610100179055565b6000610885338484610d04565b60006107b06109ee61088c565b6015546001600160a01b0316600090815260076020526040902054610a1f90610a18906002611166565b8590611166565b906111e5565b610a2d61105d565b6001600160a01b038116301415610a975760405162461bcd60e51b815260206004820152602360248201527f43616e2774206c657420796f752074616b6520616c6c206e617469766520746f60448201526235b2b760e91b60648201526084015b60405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610ade573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b029190611a74565b6011546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610b3d573d6000803e3d6000fd5b505050565b610b4a61105d565b6017805460ff191692151592909217909155601855565b610b6961105d565b601180546001600160a01b039384166001600160a01b03199182161790915560138054929093169116179055565b6000436016546001610ba99190611a8d565b10610bbc576010546107b090600161101b565b8115610bd057600f546107b09060016110b7565b5050600f5490565b610be061105d565b6001600160a01b038116610c455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a8e565b610c4e81611116565b50565b610c5961105d565b60115460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610c93573d6000803e3d6000fd5b5050565b610c9f61105d565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b60008184841115610cee5760405162461bcd60e51b8152600401610a8e9190611839565b506000610cfb8486611aa5565b95945050505050565b60195460009060ff1615610d2457610d1d848484611227565b9050610885565b601754610100900460ff16610dbe576001600160a01b03841660009081526009602052604090205460ff1680610d7257506001600160a01b03831660009081526009602052604090205460ff165b610dbe5760405162461bcd60e51b815260206004820152601a60248201527f54726164696e67206973206e6f7420616374697665207965742e0000000000006044820152606401610a8e565b610dc8848361130d565b6015546001600160a01b03848116911614801590610df457506002546001600160a01b03848116911614155b15610e9f576001600160a01b0383166000908152600a602052604090205460ff1680610e4557506006546001600160a01b038416600090815260076020526040902054610e42908490611a8d565b11155b610e9f5760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b6064820152608401610a8e565b610ea7611376565b15610eb457610eb46113c5565b601654158015610ed157506015546001600160a01b038481169116145b15610f01576001600160a01b038416600090815260076020526040902054610ef857600080fd5b610f0143601655565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260079091529190912054610f53918490610cca565b6001600160a01b038516600090815260076020526040812091909155610f798585611712565b610f835782610f8e565b610f8e858585611759565b6001600160a01b038516600090815260076020526040902054909150610fb490826110b7565b6001600160a01b0380861660008181526007602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110089085815260200190565b60405180910390a3506001949350505050565b600061088583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610cca565b6000546001600160a01b031633146109b95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a8e565b6000806110c48385611a8d565b9050838110156108855760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610a8e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600082611175575060006107b0565b60006111818385611abc565b90508261118e8583611a52565b146108855760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610a8e565b600061088583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061180b565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600790915291822054611278918490610cca565b6001600160a01b0380861660009081526007602052604080822093909355908516815220546112a790836110b7565b6001600160a01b0380851660008181526007602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112fb9086815260200190565b60405180910390a35060019392505050565b6005548111158061133657506001600160a01b0382166000908152600a602052604090205460ff165b610c935760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b6044820152606401610a8e565b6015546000906001600160a01b03163314801590611397575060195460ff16155b80156113a5575060175460ff165b80156108d957505060185430600090815260076020526040902054101590565b6019805460ff1916600117905530600090815260076020526040812054905060006114066002610a1f600f54610a1f600b548761116690919063ffffffff16565b90506000611414838361101b565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061144e5761144e611adb565b6001600160a01b039283166020918202929092010152600180548351921691839190811061147e5761147e611adb565b6001600160a01b03928316602091820292909201015260145460405163791ac94760e01b81524792919091169063791ac947906114c8908690600090879030904290600401611af1565b600060405180830381600087803b1580156114e257600080fd5b505af11580156114f6573d6000803e3d6000fd5b50505050600061150f824761101b90919063ffffffff16565b9050600061153561152c6002600b546111e590919063ffffffff16565b600f549061101b565b9050600061155282610a1f600c548661116690919063ffffffff16565b9050600061156f83610a1f600d548761116690919063ffffffff16565b9050600061158c84610a1f600e548861116690919063ffffffff16565b6011546040519192506000916001600160a01b039091169061753090859084818181858888f193505050503d80600081146115e3576040519150601f19603f3d011682016040523d82523d6000602084013e6115e8565b606091505b50509050806116095760405162461bcd60e51b8152600401610a8e90611b62565b6012546040516000916001600160a01b03169061753090859084818181858888f193505050503d806000811461165b576040519150601f19603f3d011682016040523d82523d6000602084013e611660565b606091505b50509050806116815760405162461bcd60e51b8152600401610a8e90611b62565b6013546040516000916001600160a01b03169061753090889084818181858888f193505050503d80600081146116d3576040519150601f19603f3d011682016040523d82523d6000602084013e6116d8565b606091505b50509050806116f95760405162461bcd60e51b8152600401610a8e90611b62565b50506019805460ff191690555050505050505050505050565b6001600160a01b03821660009081526009602052604081205460ff168061175157506001600160a01b03821660009081526009602052604090205460ff165b159392505050565b601054601554600091829161178b9190610a1f90611784906001600160a01b03898116911614610b97565b8690611166565b306000908152600760205260409020549091506117a890826110b7565b30600081815260076020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117f99085815260200190565b60405180910390a3610cfb838261101b565b6000818361182c5760405162461bcd60e51b8152600401610a8e9190611839565b506000610cfb8486611a52565b600060208083528351808285015260005b818110156118665785810183015185820160400152820161184a565b81811115611878576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146118a557600080fd5b919050565b600080604083850312156118bd57600080fd5b6118c68361188e565b946020939093013593505050565b600080604083850312156118e757600080fd5b50508035926020909101359150565b60008060006060848603121561190b57600080fd5b6119148461188e565b92506119226020850161188e565b9150604084013590509250925092565b60006020828403121561194457600080fd5b6108858261188e565b60006020828403121561195f57600080fd5b5035919050565b803580151581146118a557600080fd5b6000806040838503121561198957600080fd5b6119928361188e565b91506119a060208401611966565b90509250929050565b600080600080608085870312156119bf57600080fd5b5050823594602084013594506040840135936060013592509050565b600080604083850312156119ee57600080fd5b6119f78361188e565b91506119a06020840161188e565b60008060408385031215611a1857600080fd5b6118c683611966565b600060208284031215611a3357600080fd5b61088582611966565b634e487b7160e01b600052601160045260246000fd5b600082611a6f57634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215611a8657600080fd5b5051919050565b60008219821115611aa057611aa0611a3c565b500190565b600082821015611ab757611ab7611a3c565b500390565b6000816000190483118215151615611ad657611ad6611a3c565b500290565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611b415784516001600160a01b031683529383019391830191600101611b1c565b50506001600160a01b03969096166060850152505050608001529392505050565b6020808252601e908201527f72656365697665722072656a656374656420455448207472616e73666572000060408201526060019056fea264697066735822122059e6e04c980baf17d03735e520884fdbf569b55d666cb8f3fc4357cdca26f41264736f6c634300080a0033
Deployed Bytecode
0x6080604052600436106102295760003560e01c80638a8c523c11610123578063d51ed1c8116100ab578063f1f3bca31161006f578063f1f3bca3146106b4578063f2fde38b146106d4578063f4293890146106f4578063f84ba65d14610709578063f887ea401461072957600080fd5b8063d51ed1c8146105ee578063dc93cf701461060e578063dd62ed3e1461062e578063df20fd4914610674578063e66db25e1461069457600080fd5b806395d89b41116100f257806395d89b411461054b578063a8aa1b3114610579578063a9059cbb14610599578063bbc0c742146105b9578063bf56b371146105d857600080fd5b80638a8c523c146104d25780638b42507f146104e75780638da5cb5b146105175780638f9a55c01461053557600080fd5b8063571ac8b0116101b15780636fcba377116101755780636fcba3771461041f57806370a082311461043f578063715018a6146104755780637d1db4a51461048a578063893d20e8146104a057600080fd5b8063571ac8b0146103835780635c85974f146103a35780635d0044ca146103c5578063658d4b7f146103e55780636ddd17131461040557600080fd5b806318160ddd116101f857806318160ddd146102ed57806323b872dd146103025780632b112e4914610322578063313ce567146103375780633f4218e01461035357600080fd5b80630445b6671461023557806306fdde031461025e578063095ea7b31461029d5780631161ae39146102cd57600080fd5b3661023057005b600080fd5b34801561024157600080fd5b5061024b60185481565b6040519081526020015b60405180910390f35b34801561026a57600080fd5b5060408051808201909152600d81526c2620a9a922ab22a91027292aa160991b60208201525b6040516102559190611839565b3480156102a957600080fd5b506102bd6102b83660046118aa565b610749565b6040519015158152602001610255565b3480156102d957600080fd5b506102bd6102e83660046118d4565b6107b6565b3480156102f957600080fd5b5060045461024b565b34801561030e57600080fd5b506102bd61031d3660046118f6565b6107ca565b34801561032e57600080fd5b5061024b61088c565b34801561034357600080fd5b5060405160098152602001610255565b34801561035f57600080fd5b506102bd61036e366004611932565b60096020526000908152604090205460ff1681565b34801561038f57600080fd5b506102bd61039e366004611932565b6108de565b3480156103af57600080fd5b506103c36103be36600461194d565b6108ec565b005b3480156103d157600080fd5b506103c36103e036600461194d565b610915565b3480156103f157600080fd5b506103c3610400366004611976565b61093e565b34801561041157600080fd5b506017546102bd9060ff1681565b34801561042b57600080fd5b506103c361043a3660046119a9565b610971565b34801561044b57600080fd5b5061024b61045a366004611932565b6001600160a01b031660009081526007602052604090205490565b34801561048157600080fd5b506103c36109a7565b34801561049657600080fd5b5061024b60055481565b3480156104ac57600080fd5b506000546001600160a01b03165b6040516001600160a01b039091168152602001610255565b3480156104de57600080fd5b506103c36109bb565b3480156104f357600080fd5b506102bd610502366004611932565b600a6020526000908152604090205460ff1681565b34801561052357600080fd5b506000546001600160a01b03166104ba565b34801561054157600080fd5b5061024b60065481565b34801561055757600080fd5b506040805180820190915260058152642629ab292160d91b6020820152610290565b34801561058557600080fd5b506015546104ba906001600160a01b031681565b3480156105a557600080fd5b506102bd6105b43660046118aa565b6109d4565b3480156105c557600080fd5b506017546102bd90610100900460ff1681565b3480156105e457600080fd5b5061024b60165481565b3480156105fa57600080fd5b5061024b61060936600461194d565b6109e1565b34801561061a57600080fd5b506103c3610629366004611932565b610a25565b34801561063a57600080fd5b5061024b6106493660046119db565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b34801561068057600080fd5b506103c361068f366004611a05565b610b42565b3480156106a057600080fd5b506103c36106af3660046119db565b610b61565b3480156106c057600080fd5b5061024b6106cf366004611a21565b610b97565b3480156106e057600080fd5b506103c36106ef366004611932565b610bd8565b34801561070057600080fd5b506103c3610c51565b34801561071557600080fd5b506103c3610724366004611976565b610c97565b34801561073557600080fd5b506014546104ba906001600160a01b031681565b3360008181526008602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906107a49086815260200190565b60405180910390a35060015b92915050565b6000826107c2836109e1565b119392505050565b6001600160a01b038316600090815260086020908152604080832033845290915281205460001914610877576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600882528381203382529091529190912054610852918490610cca565b6001600160a01b03851660009081526008602090815260408083203384529091529020555b610882848484610d04565b90505b9392505050565b6003546001600160a01b03166000908152600760205260408120546108d9906002546001600160a01b03166000908152600760205260409020546108d3906004549061101b565b9061101b565b905090565b60006107b082600019610749565b6108f461105d565b6103e86004546109049190611a52565b81101561091057600080fd5b600555565b61091d61105d565b6103e860045461092d9190611a52565b81101561093957600080fd5b600655565b61094661105d565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b61097961105d565b600c849055600d839055600e82905561099c8361099684876110b7565b906110b7565b600f55601055505050565b6109af61105d565b6109b96000611116565b565b6109c361105d565b6017805461ff001916610100179055565b6000610885338484610d04565b60006107b06109ee61088c565b6015546001600160a01b0316600090815260076020526040902054610a1f90610a18906002611166565b8590611166565b906111e5565b610a2d61105d565b6001600160a01b038116301415610a975760405162461bcd60e51b815260206004820152602360248201527f43616e2774206c657420796f752074616b6520616c6c206e617469766520746f60448201526235b2b760e91b60648201526084015b60405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610ade573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b029190611a74565b6011546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610b3d573d6000803e3d6000fd5b505050565b610b4a61105d565b6017805460ff191692151592909217909155601855565b610b6961105d565b601180546001600160a01b039384166001600160a01b03199182161790915560138054929093169116179055565b6000436016546001610ba99190611a8d565b10610bbc576010546107b090600161101b565b8115610bd057600f546107b09060016110b7565b5050600f5490565b610be061105d565b6001600160a01b038116610c455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a8e565b610c4e81611116565b50565b610c5961105d565b60115460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610c93573d6000803e3d6000fd5b5050565b610c9f61105d565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b60008184841115610cee5760405162461bcd60e51b8152600401610a8e9190611839565b506000610cfb8486611aa5565b95945050505050565b60195460009060ff1615610d2457610d1d848484611227565b9050610885565b601754610100900460ff16610dbe576001600160a01b03841660009081526009602052604090205460ff1680610d7257506001600160a01b03831660009081526009602052604090205460ff165b610dbe5760405162461bcd60e51b815260206004820152601a60248201527f54726164696e67206973206e6f7420616374697665207965742e0000000000006044820152606401610a8e565b610dc8848361130d565b6015546001600160a01b03848116911614801590610df457506002546001600160a01b03848116911614155b15610e9f576001600160a01b0383166000908152600a602052604090205460ff1680610e4557506006546001600160a01b038416600090815260076020526040902054610e42908490611a8d565b11155b610e9f5760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b6064820152608401610a8e565b610ea7611376565b15610eb457610eb46113c5565b601654158015610ed157506015546001600160a01b038481169116145b15610f01576001600160a01b038416600090815260076020526040902054610ef857600080fd5b610f0143601655565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260079091529190912054610f53918490610cca565b6001600160a01b038516600090815260076020526040812091909155610f798585611712565b610f835782610f8e565b610f8e858585611759565b6001600160a01b038516600090815260076020526040902054909150610fb490826110b7565b6001600160a01b0380861660008181526007602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110089085815260200190565b60405180910390a3506001949350505050565b600061088583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610cca565b6000546001600160a01b031633146109b95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a8e565b6000806110c48385611a8d565b9050838110156108855760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610a8e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600082611175575060006107b0565b60006111818385611abc565b90508261118e8583611a52565b146108855760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610a8e565b600061088583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061180b565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600790915291822054611278918490610cca565b6001600160a01b0380861660009081526007602052604080822093909355908516815220546112a790836110b7565b6001600160a01b0380851660008181526007602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112fb9086815260200190565b60405180910390a35060019392505050565b6005548111158061133657506001600160a01b0382166000908152600a602052604090205460ff165b610c935760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b6044820152606401610a8e565b6015546000906001600160a01b03163314801590611397575060195460ff16155b80156113a5575060175460ff165b80156108d957505060185430600090815260076020526040902054101590565b6019805460ff1916600117905530600090815260076020526040812054905060006114066002610a1f600f54610a1f600b548761116690919063ffffffff16565b90506000611414838361101b565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061144e5761144e611adb565b6001600160a01b039283166020918202929092010152600180548351921691839190811061147e5761147e611adb565b6001600160a01b03928316602091820292909201015260145460405163791ac94760e01b81524792919091169063791ac947906114c8908690600090879030904290600401611af1565b600060405180830381600087803b1580156114e257600080fd5b505af11580156114f6573d6000803e3d6000fd5b50505050600061150f824761101b90919063ffffffff16565b9050600061153561152c6002600b546111e590919063ffffffff16565b600f549061101b565b9050600061155282610a1f600c548661116690919063ffffffff16565b9050600061156f83610a1f600d548761116690919063ffffffff16565b9050600061158c84610a1f600e548861116690919063ffffffff16565b6011546040519192506000916001600160a01b039091169061753090859084818181858888f193505050503d80600081146115e3576040519150601f19603f3d011682016040523d82523d6000602084013e6115e8565b606091505b50509050806116095760405162461bcd60e51b8152600401610a8e90611b62565b6012546040516000916001600160a01b03169061753090859084818181858888f193505050503d806000811461165b576040519150601f19603f3d011682016040523d82523d6000602084013e611660565b606091505b50509050806116815760405162461bcd60e51b8152600401610a8e90611b62565b6013546040516000916001600160a01b03169061753090889084818181858888f193505050503d80600081146116d3576040519150601f19603f3d011682016040523d82523d6000602084013e6116d8565b606091505b50509050806116f95760405162461bcd60e51b8152600401610a8e90611b62565b50506019805460ff191690555050505050505050505050565b6001600160a01b03821660009081526009602052604081205460ff168061175157506001600160a01b03821660009081526009602052604090205460ff165b159392505050565b601054601554600091829161178b9190610a1f90611784906001600160a01b03898116911614610b97565b8690611166565b306000908152600760205260409020549091506117a890826110b7565b30600081815260076020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117f99085815260200190565b60405180910390a3610cfb838261101b565b6000818361182c5760405162461bcd60e51b8152600401610a8e9190611839565b506000610cfb8486611a52565b600060208083528351808285015260005b818110156118665785810183015185820160400152820161184a565b81811115611878576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146118a557600080fd5b919050565b600080604083850312156118bd57600080fd5b6118c68361188e565b946020939093013593505050565b600080604083850312156118e757600080fd5b50508035926020909101359150565b60008060006060848603121561190b57600080fd5b6119148461188e565b92506119226020850161188e565b9150604084013590509250925092565b60006020828403121561194457600080fd5b6108858261188e565b60006020828403121561195f57600080fd5b5035919050565b803580151581146118a557600080fd5b6000806040838503121561198957600080fd5b6119928361188e565b91506119a060208401611966565b90509250929050565b600080600080608085870312156119bf57600080fd5b5050823594602084013594506040840135936060013592509050565b600080604083850312156119ee57600080fd5b6119f78361188e565b91506119a06020840161188e565b60008060408385031215611a1857600080fd5b6118c683611966565b600060208284031215611a3357600080fd5b61088582611966565b634e487b7160e01b600052601160045260246000fd5b600082611a6f57634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215611a8657600080fd5b5051919050565b60008219821115611aa057611aa0611a3c565b500190565b600082821015611ab757611ab7611a3c565b500390565b6000816000190483118215151615611ad657611ad6611a3c565b500290565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611b415784516001600160a01b031683529383019391830191600101611b1c565b50506001600160a01b03969096166060850152505050608001529392505050565b6020808252601e908201527f72656365697665722072656a656374656420455448207472616e73666572000060408201526060019056fea264697066735822122059e6e04c980baf17d03735e520884fdbf569b55d666cb8f3fc4357cdca26f41264736f6c634300080a0033
Deployed Bytecode Sourcemap
12735:11171:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14190:54;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;14190:54:0;;;;;;;;15238:80;;;;;;;;;;-1:-1:-1;15310:5:0;;;;;;;;;;;;-1:-1:-1;;;15310:5:0;;;;15238:80;;;;;;;:::i;15661:216::-;;;;;;;;;;-1:-1:-1;15661:216:0;;;;;:::i;:::-;;:::i;:::-;;;1400:14:1;;1393:22;1375:41;;1363:2;1348:18;15661:216:0;1235:187:1;23685:150:0;;;;;;;;;;-1:-1:-1;23685:150:0;;;;;:::i;:::-;;:::i;14968:88::-;;;;;;;;;;-1:-1:-1;15041:12:0;;14968:88;;16179:370;;;;;;;;;;-1:-1:-1;16179:370:0;;;;;:::i;:::-;;:::i;23360:142::-;;;;;;;;;;;;;:::i;15062:80::-;;;;;;;;;;-1:-1:-1;15062:80:0;;13124:1;2155:36:1;;2143:2;2128:18;15062:80:0;2013:184:1;13466:44:0;;;;;;;;;;-1:-1:-1;13466:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;15885:122;;;;;;;;;;-1:-1:-1;15885:122:0;;;;;:::i;:::-;;:::i;21552:146::-;;;;;;;;;;-1:-1:-1;21552:146:0;;;;;:::i;:::-;;:::i;:::-;;21705:151;;;;;;;;;;-1:-1:-1;21705:151:0;;;;;:::i;:::-;;:::i;21868:121::-;;;;;;;;;;-1:-1:-1;21868:121:0;;;;;:::i;:::-;;:::i;14111:30::-;;;;;;;;;;-1:-1:-1;14111:30:0;;;;;;;;22134:332;;;;;;;;;;-1:-1:-1;22134:332:0;;;;;:::i;:::-;;:::i;15409:105::-;;;;;;;;;;-1:-1:-1;15409:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;15493:18:0;15475:7;15493:18;;;:9;:18;;;;;;;15409:105;3010:103;;;;;;;;;;;;;:::i;13191:54::-;;;;;;;;;;;;;;;;15332:71;;;;;;;;;;-1:-1:-1;15375:7:0;2842:6;-1:-1:-1;;;;;2842:6:0;15332:71;;;-1:-1:-1;;;;;3556:32:1;;;3538:51;;3526:2;3511:18;15332:71:0;3392:203:1;18581:85:0;;;;;;;;;;;;;:::i;13517:48::-;;;;;;;;;;-1:-1:-1;13517:48:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;2769:87;;;;;;;;;;-1:-1:-1;2815:7:0;2842:6;-1:-1:-1;;;;;2842:6:0;2769:87;;13266:56;;;;;;;;;;;;;;;;15148:84;;;;;;;;;;-1:-1:-1;15222:7:0;;;;;;;;;;;;-1:-1:-1;;;15222:7:0;;;;15148:84;;14049:19;;;;;;;;;;-1:-1:-1;14049:19:0;;;;-1:-1:-1;;;;;14049:19:0;;;16015:156;;;;;;;;;;-1:-1:-1;16015:156:0;;;;;:::i;:::-;;:::i;14148:33::-;;;;;;;;;;-1:-1:-1;14148:33:0;;;;;;;;;;;14077:25;;;;;;;;;;;;;;;;23510:167;;;;;;;;;;-1:-1:-1;23510:167:0;;;;;:::i;:::-;;:::i;23046:298::-;;;;;;;;;;-1:-1:-1;23046:298:0;;;;;:::i;:::-;;:::i;15520:133::-;;;;;;;;;;-1:-1:-1;15520:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;15622:19:0;;;15604:7;15622:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;15520:133;22692:157;;;;;;;;;;-1:-1:-1;22692:157:0;;;;;:::i;:::-;;:::i;22474:210::-;;;;;;;;;;-1:-1:-1;22474:210:0;;;;;:::i;:::-;;:::i;18348:225::-;;;;;;;;;;-1:-1:-1;18348:225:0;;;;;:::i;:::-;;:::i;3125:201::-;;;;;;;;;;-1:-1:-1;3125:201:0;;;;;:::i;:::-;;:::i;22857:181::-;;;;;;;;;;;;;:::i;21997:129::-;;;;;;;;;;-1:-1:-1;21997:129:0;;;;;:::i;:::-;;:::i;14010:32::-;;;;;;;;;;-1:-1:-1;14010:32:0;;;;-1:-1:-1;;;;;14010:32:0;;;15661:216;15765:10;15736:4;15753:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;15753:32:0;;;;;;;;;;:41;;;15810:37;15736:4;;15753:32;;15810:37;;;;15788:6;160:25:1;;148:2;133:18;;14:177;15810:37:0;;;;;;;;-1:-1:-1;15865:4:0;15661:216;;;;;:::o;23685:150::-;23765:4;23821:6;23789:29;23809:8;23789:19;:29::i;:::-;:38;;23685:150;-1:-1:-1;;;23685:150:0:o;16179:370::-;-1:-1:-1;;;;;16299:19:0;;16279:4;16299:19;;;:11;:19;;;;;;;;16319:10;16299:31;;;;;;;;-1:-1:-1;;16299:52:0;16296:186;;16401:69;;;;;;;;;;;-1:-1:-1;;;16401:69:0;;;;;;;;-1:-1:-1;;;;;16401:19:0;;-1:-1:-1;16401:19:0;;;:11;:19;;;;;16421:10;16401:31;;;;;;;;;;:69;;16437:6;;16401:35;:69::i;:::-;-1:-1:-1;;;;;16367:19:0;;;;;;:11;:19;;;;;;;;16387:10;16367:31;;;;;;;:103;16296:186;16501:40;16515:6;16523:9;16534:6;16501:13;:40::i;:::-;16494:47;;16179:370;;;;;;:::o;23360:142::-;23488:4;;-1:-1:-1;;;;;23488:4:0;23413:7;15493:18;;;:9;:18;;;;;;23440:54;;23467:4;;-1:-1:-1;;;;;23467:4:0;15475:7;15493:18;;;:9;:18;;;;;;23440:33;;:12;;;:16;:33::i;:::-;:37;;:54::i;:::-;23433:61;;23360:142;:::o;15885:122::-;15940:4;15964:35;15972:7;-1:-1:-1;;15964:7:0;:35::i;21552:146::-;2726:13;:11;:13::i;:::-;21653:4:::1;21638:12;;:19;;;;:::i;:::-;21628:6;:29;;21620:38;;;::::0;::::1;;21669:12;:21:::0;21552:146::o;21705:151::-;2726:13;:11;:13::i;:::-;21808:4:::1;21793:12;;:19;;;;:::i;:::-;21783:6;:29;;21775:39;;;::::0;::::1;;21825:14;:23:::0;21705:151::o;21868:121::-;2726:13;:11;:13::i;:::-;-1:-1:-1;;;;;21953:19:0;;;::::1;;::::0;;;:11:::1;:19;::::0;;;;:28;;-1:-1:-1;;21953:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;21868:121::o;22134:332::-;2726:13;:11;:13::i;:::-;22268:7:::1;:18:::0;;;22297:12:::1;:28:::0;;;22336:6:::1;:16:::0;;;22375:40:::1;22312:13:::0;22375:21:::1;22345:7:::0;22278:8;22375:11:::1;:21::i;:::-;:25:::0;::::1;:40::i;:::-;22364:8;:51:::0;22426:14:::1;:32:::0;-1:-1:-1;;;22134:332:0:o;3010:103::-;2726:13;:11;:13::i;:::-;3075:30:::1;3102:1;3075:18;:30::i;:::-;3010:103::o:0;18581:85::-;2726:13;:11;:13::i;:::-;18638::::1;:20:::0;;-1:-1:-1;;18638:20:0::1;;;::::0;;18581:85::o;16015:156::-;16095:4;16119:44;16133:10;16145:9;16156:6;16119:13;:44::i;23510:167::-;23578:7;23605:64;23646:22;:20;:22::i;:::-;23628:4;;-1:-1:-1;;;;;23628:4:0;15475:7;15493:18;;;:9;:18;;;;;;23605:36;;23618:22;;23638:1;23618:19;:22::i;:::-;23605:8;;:12;:36::i;:::-;:40;;:64::i;23046:298::-;2726:13;:11;:13::i;:::-;-1:-1:-1;;;;;23130:23:0;::::1;23148:4;23130:23;;23122:71;;;::::0;-1:-1:-1;;;23122:71:0;;5094:2:1;23122:71:0::1;::::0;::::1;5076:21:1::0;5133:2;5113:18;;;5106:30;5172:34;5152:18;;;5145:62;-1:-1:-1;;;5223:18:1;;;5216:33;5266:19;;23122:71:0::1;;;;;;;;;23231:38;::::0;-1:-1:-1;;;23231:38:0;;23263:4:::1;23231:38;::::0;::::1;3538:51:1::0;23204:24:0::1;::::0;-1:-1:-1;;;;;23231:23:0;::::1;::::0;::::1;::::0;3511:18:1;;23231:38:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23288:20;::::0;23280:56:::1;::::0;23204:65;;-1:-1:-1;;;;;;23288:20:0::1;::::0;23280:56;::::1;;;::::0;23204:65;;23288:20:::1;23280:56:::0;23288:20;23280:56;23204:65;23288:20;23280:56;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;23111:233;23046:298:::0;:::o;22692:157::-;2726:13;:11;:13::i;:::-;22785:11:::1;:22:::0;;-1:-1:-1;;22785:22:0::1;::::0;::::1;;::::0;;;::::1;::::0;;;22818:13:::1;:23:::0;22692:157::o;22474:210::-;2726:13;:11;:13::i;:::-;22587:20:::1;:44:::0;;-1:-1:-1;;;;;22587:44:0;;::::1;-1:-1:-1::0;;;;;;22587:44:0;;::::1;;::::0;;;22642:15:::1;:34:::0;;;;;::::1;::::0;::::1;;::::0;;22474:210::o;18348:225::-;18404:7;18445:12;18427:10;;18440:1;18427:14;;;;:::i;:::-;:30;18424:67;;18467:14;;:21;;18486:1;18467:18;:21::i;18424:67::-;18504:7;18501:39;;;18522:8;;:15;;18535:1;18522:12;:15::i;18501:39::-;-1:-1:-1;;18557:8:0;;;18348:225::o;3125:201::-;2726:13;:11;:13::i;:::-;-1:-1:-1;;;;;3214:22:0;::::1;3206:73;;;::::0;-1:-1:-1;;;3206:73:0;;5820:2:1;3206:73:0::1;::::0;::::1;5802:21:1::0;5859:2;5839:18;;;5832:30;5898:34;5878:18;;;5871:62;-1:-1:-1;;;5949:18:1;;;5942:36;5995:19;;3206:73:0::1;5618:402:1::0;3206:73:0::1;3290:28;3309:8;3290:18;:28::i;:::-;3125:201:::0;:::o;22857:181::-;2726:13;:11;:13::i;:::-;22980:20:::1;::::0;22972:58:::1;::::0;22940:21:::1;::::0;-1:-1:-1;;;;;22980:20:0::1;::::0;22972:58;::::1;;;::::0;22940:21;;22911:26:::1;22972:58:::0;22911:26;22972:58;22940:21;22980:20;22972:58;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;22900:138;22857:181::o:0;21997:129::-;2726:13;:11;:13::i;:::-;-1:-1:-1;;;;;22086:23:0;;;::::1;;::::0;;;:15:::1;:23;::::0;;;;:32;;-1:-1:-1;;22086:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;21997:129::o;492:192::-;578:7;614:12;606:6;;;;598:29;;;;-1:-1:-1;;;598:29:0;;;;;;;;:::i;:::-;-1:-1:-1;638:9:0;650:5;654:1;650;:5;:::i;:::-;638:17;492:192;-1:-1:-1;;;;;492:192:0:o;16557:1094::-;16669:6;;16649:4;;16669:6;;16666:63;;;16685:41;16700:6;16708:9;16719:6;16685:14;:41::i;:::-;16678:48;;;;16666:63;16745:13;;;;;;;16741:129;;-1:-1:-1;;;;;16782:19:0;;;;;;:11;:19;;;;;;;;;:45;;-1:-1:-1;;;;;;16805:22:0;;;;;;:11;:22;;;;;;;;16782:45;16774:84;;;;-1:-1:-1;;;16774:84:0;;6357:2:1;16774:84:0;;;6339:21:1;6396:2;6376:18;;;6369:30;6435:28;6415:18;;;6408:56;6481:18;;16774:84:0;6155:350:1;16774:84:0;16890:28;16903:6;16911;16890:12;:28::i;:::-;16956:4;;-1:-1:-1;;;;;16943:17:0;;;16956:4;;16943:17;;;;:38;;-1:-1:-1;16977:4:0;;-1:-1:-1;;;;;16964:17:0;;;16977:4;;16964:17;;16943:38;16939:198;;;-1:-1:-1;;;;;17006:26:0;;;;;;:15;:26;;;;;;;;;:77;;-1:-1:-1;17069:14:0;;-1:-1:-1;;;;;17036:20:0;;;;;;:9;:20;;;;;;:29;;17059:6;;17036:29;:::i;:::-;:47;;17006:77;16998:127;;;;-1:-1:-1;;;16998:127:0;;6712:2:1;16998:127:0;;;6694:21:1;6751:2;6731:18;;;6724:30;6790:34;6770:18;;;6763:62;-1:-1:-1;;;6841:18:1;;;6834:35;6886:19;;16998:127:0;6510:401:1;16998:127:0;17160:16;:14;:16::i;:::-;17157:35;;;17179:10;:8;:10::i;:::-;21442;;:15;;;17207:32;;-1:-1:-1;17235:4:0;;-1:-1:-1;;;;;17222:17:0;;;17235:4;;17222:17;17207:32;17204:81;;;-1:-1:-1;;;;;17250:17:0;;17270:1;17250:17;;;:9;:17;;;;;;17242:30;;;;;;17274:8;21524:12;21511:10;:25;21473:71;17274:8;17317:53;;;;;;;;;;;-1:-1:-1;;;17317:53:0;;;;;;;;-1:-1:-1;;;;;17317:17:0;;-1:-1:-1;17317:17:0;;;:9;:17;;;;;;;;:53;;17339:6;;17317:21;:53::i;:::-;-1:-1:-1;;;;;17297:17:0;;;;;;:9;:17;;;;;:73;;;;17408:32;17307:6;17430:9;17408:13;:32::i;:::-;:78;;17480:6;17408:78;;;17443:34;17451:6;17459:9;17470:6;17443:7;:34::i;:::-;-1:-1:-1;;;;;17520:20:0;;;;;;:9;:20;;;;;;17383:103;;-1:-1:-1;17520:40:0;;17383:103;17520:24;:40::i;:::-;-1:-1:-1;;;;;17497:20:0;;;;;;;:9;:20;;;;;;;:63;;;;17578:43;;;;;;;;;;17606:14;160:25:1;;148:2;133:18;;14:177;17578:43:0;;;;;;;;-1:-1:-1;17639:4:0;;16557:1094;-1:-1:-1;;;;16557:1094:0:o;350:136::-;408:7;435:43;439:1;442;435:43;;;;;;;;;;;;;;;;;:3;:43::i;2868:132::-;2815:7;2842:6;-1:-1:-1;;;;;2842:6:0;2310:10;2932:23;2924:68;;;;-1:-1:-1;;;2924:68:0;;7118:2:1;2924:68:0;;;7100:21:1;;;7137:18;;;7130:30;7196:34;7176:18;;;7169:62;7248:18;;2924:68:0;6916:356:1;163:181:0;221:7;;253:5;257:1;253;:5;:::i;:::-;241:17;;282:1;277;:6;;269:46;;;;-1:-1:-1;;;269:46:0;;7479:2:1;269:46:0;;;7461:21:1;7518:2;7498:18;;;7491:30;7557:29;7537:18;;;7530:57;7604:18;;269:46:0;7277:351:1;3336:191:0;3410:16;3429:6;;-1:-1:-1;;;;;3446:17:0;;;-1:-1:-1;;;;;;3446:17:0;;;;;;3479:40;;3429:6;;;;;;;3479:40;;3410:16;3479:40;3399:128;3336:191;:::o;690:250::-;748:7;772:6;768:47;;-1:-1:-1;802:1:0;795:8;;768:47;827:9;839:5;843:1;839;:5;:::i;:::-;827:17;-1:-1:-1;872:1:0;863:5;867:1;827:17;863:5;:::i;:::-;:10;855:56;;;;-1:-1:-1;;;855:56:0;;8008:2:1;855:56:0;;;7990:21:1;8047:2;8027:18;;;8020:30;8086:34;8066:18;;;8059:62;-1:-1:-1;;;8137:18:1;;;8130:31;8178:19;;855:56:0;7806:397:1;946:132:0;1004:7;1031:39;1035:1;1038;1031:39;;;;;;;;;;;;;;;;;:3;:39::i;17663:330::-;17793:53;;;;;;;;;;;-1:-1:-1;;;17793:53:0;;;;;;;;-1:-1:-1;;;;;17793:17:0;;17756:4;17793:17;;;:9;:17;;;;;;;:53;;17815:6;;17793:21;:53::i;:::-;-1:-1:-1;;;;;17773:17:0;;;;;;;:9;:17;;;;;;:73;;;;17880:20;;;;;;;:32;;17905:6;17880:24;:32::i;:::-;-1:-1:-1;;;;;17857:20:0;;;;;;;:9;:20;;;;;;;:55;;;;17928:35;;;;;;;;;;17956:6;160:25:1;;148:2;133:18;;14:177;17928:35:0;;;;;;;;-1:-1:-1;17981:4:0;17663:330;;;;;:::o;18001:166::-;18098:12;;18088:6;:22;;:49;;;-1:-1:-1;;;;;;18114:23:0;;;;;;:15;:23;;;;;;;;18088:49;18080:79;;;;-1:-1:-1;;;18080:79:0;;8410:2:1;18080:79:0;;;8392:21:1;8449:2;8429:18;;;8422:30;-1:-1:-1;;;8468:18:1;;;8461:47;8525:18;;18080:79:0;8208:341:1;19054:197:0;19141:4;;19103;;-1:-1:-1;;;;;19141:4:0;19127:10;:18;;;;:38;;-1:-1:-1;19159:6:0;;;;19158:7;19127:38;:62;;;;-1:-1:-1;19178:11:0;;;;19127:62;:116;;;;-1:-1:-1;;19230:13:0;;19220:4;19202:24;;;;:9;:24;;;;;;:41;;;19054:197::o;19259:1739::-;14298:6;:13;;-1:-1:-1;;14298:13:0;14307:4;14298:13;;;19357:4:::1;-1:-1:-1::0;15493:18:0;;;:9;:18;;;;;;19308:55:::1;;19374:23;19400:59;19457:1;19400:52;19443:8;;19400:38;19425:12;;19400:20;:24;;:38;;;;:::i;:59::-;19374:85:::0;-1:-1:-1;19470:20:0::1;19493:41;:20:::0;19374:85;19493:24:::1;:41::i;:::-;19571:16;::::0;;19585:1:::1;19571:16:::0;;;;;::::1;::::0;;19470:64;;-1:-1:-1;19547:21:0::1;::::0;19571:16;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;19571:16:0::1;19547:40;;19616:4;19598;19603:1;19598:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;19598:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;19642:4:::1;::::0;;19632:7;;19642:4;::::1;::::0;19632;;19642;19632:7;::::1;;;;;:::i;:::-;-1:-1:-1::0;;;;;19632:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;:14;19717:6:::1;::::0;:188:::1;::::0;-1:-1:-1;;;19717:188:0;;19683:21:::1;::::0;19717:6;;;::::1;::::0;:57:::1;::::0;:188:::1;::::0;19789:12;;19659:21:::1;::::0;19832:4;;19859::::1;::::0;19879:15:::1;::::0;19717:188:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;19916:17;19936:40;19962:13;19936:21;:25;;:40;;;;:::i;:::-;19916:60;;19987:19;20009:33;20022:19;20039:1;20022:12;;:16;;:19;;;;:::i;:::-;20009:8;::::0;;:12:::1;:33::i;:::-;19987:55;;20146:28;20177:39;20204:11;20177:22;20191:7;;20177:9;:13;;:22;;;;:::i;:39::-;20146:70;;20227:26;20256:44;20288:11;20256:27;20270:12;;20256:9;:13;;:27;;;;:::i;:44::-;20227:73;;20311:20;20334:38;20360:11;20334:21;20348:6;;20334:9;:13;;:21;;;;:::i;:38::-;20448:20;::::0;20440:77:::1;::::0;20311:61;;-1:-1:-1;20390:21:0::1;::::0;-1:-1:-1;;;;;20448:20:0;;::::1;::::0;20507:5:::1;::::0;20482:18;;20390:21;20440:77;20390:21;20440:77;20482:18;20448:20;20507:5;20440:77:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20389:128;;;20536:16;20528:59;;;;-1:-1:-1::0;;;20528:59:0::1;;;;;;;:::i;:::-;20653:14;::::0;20645:65:::1;::::0;20601:15:::1;::::0;-1:-1:-1;;;;;20653:14:0::1;::::0;20700:5:::1;::::0;20681:12;;20601:15;20645:65;20601:15;20645:65;20681:12;20653:14;20700:5;20645:65:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20600:110;;;20729:10;20721:53;;;;-1:-1:-1::0;;;20721:53:0::1;;;;;;;:::i;:::-;20848:15;::::0;20840:74:::1;::::0;20788:23:::1;::::0;-1:-1:-1;;;;;20848:15:0::1;::::0;20904:5:::1;::::0;20877:20;;20788:23;20840:74;20788:23;20840:74;20877:20;20848:15;20904:5;20840:74:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20787:127;;;20933:18;20925:61;;;;-1:-1:-1::0;;;20925:61:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;;14316:6:0;:14;;-1:-1:-1;;14316:14:0;;;-1:-1:-1;;;;;;;;;;;19259:1739:0:o;18179:161::-;-1:-1:-1;;;;;18286:19:0;;18260:4;18286:19;;;:11;:19;;;;;;;;;:45;;-1:-1:-1;;;;;;18309:22:0;;;;;;:11;:22;;;;;;;;18286:45;18284:48;;18179:161;-1:-1:-1;;;18179:161:0:o;18674:372::-;18845:14;;18834:4;;18759:7;;;;18799:61;;18845:14;18799:41;;18810:29;;-1:-1:-1;;;;;18822:16:0;;;18834:4;;18822:16;18810:11;:29::i;:::-;18799:6;;:10;:41::i;:61::-;18918:4;18900:24;;;;:9;:24;;;;;;18779:81;;-1:-1:-1;18900:39:0;;18779:81;18900:28;:39::i;:::-;18891:4;18873:24;;;;:9;:24;;;;;;;:66;;;;18955:42;;-1:-1:-1;;;;;18955:42:0;;;;;;;18987:9;160:25:1;;148:2;133:18;;14:177;18955:42:0;;;;;;;;19017:21;:6;19028:9;19017:10;:21::i;1084:191::-;1170:7;1205:12;1198:5;1190:28;;;;-1:-1:-1;;;1190:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1229:9:0;1241:5;1245:1;1241;:5;:::i;196:597:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;634:6;631:1;628:13;625:91;;;704:1;699:2;690:6;679:9;675:22;671:31;664:42;625:91;-1:-1:-1;777:2:1;756:15;-1:-1:-1;;752:29:1;737:45;;;;784:2;733:54;;196:597;-1:-1:-1;;;196:597:1:o;798:173::-;866:20;;-1:-1:-1;;;;;915:31:1;;905:42;;895:70;;961:1;958;951:12;895:70;798:173;;;:::o;976:254::-;1044:6;1052;1105:2;1093:9;1084:7;1080:23;1076:32;1073:52;;;1121:1;1118;1111:12;1073:52;1144:29;1163:9;1144:29;:::i;:::-;1134:39;1220:2;1205:18;;;;1192:32;;-1:-1:-1;;;976:254:1:o;1427:248::-;1495:6;1503;1556:2;1544:9;1535:7;1531:23;1527:32;1524:52;;;1572:1;1569;1562:12;1524:52;-1:-1:-1;;1595:23:1;;;1665:2;1650:18;;;1637:32;;-1:-1:-1;1427:248:1:o;1680:328::-;1757:6;1765;1773;1826:2;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1865:29;1884:9;1865:29;:::i;:::-;1855:39;;1913:38;1947:2;1936:9;1932:18;1913:38;:::i;:::-;1903:48;;1998:2;1987:9;1983:18;1970:32;1960:42;;1680:328;;;;;:::o;2202:186::-;2261:6;2314:2;2302:9;2293:7;2289:23;2285:32;2282:52;;;2330:1;2327;2320:12;2282:52;2353:29;2372:9;2353:29;:::i;2393:180::-;2452:6;2505:2;2493:9;2484:7;2480:23;2476:32;2473:52;;;2521:1;2518;2511:12;2473:52;-1:-1:-1;2544:23:1;;2393:180;-1:-1:-1;2393:180:1:o;2578:160::-;2643:20;;2699:13;;2692:21;2682:32;;2672:60;;2728:1;2725;2718:12;2743:254;2808:6;2816;2869:2;2857:9;2848:7;2844:23;2840:32;2837:52;;;2885:1;2882;2875:12;2837:52;2908:29;2927:9;2908:29;:::i;:::-;2898:39;;2956:35;2987:2;2976:9;2972:18;2956:35;:::i;:::-;2946:45;;2743:254;;;;;:::o;3002:385::-;3088:6;3096;3104;3112;3165:3;3153:9;3144:7;3140:23;3136:33;3133:53;;;3182:1;3179;3172:12;3133:53;-1:-1:-1;;3205:23:1;;;3275:2;3260:18;;3247:32;;-1:-1:-1;3326:2:1;3311:18;;3298:32;;3377:2;3362:18;3349:32;;-1:-1:-1;3002:385:1;-1:-1:-1;3002:385:1:o;3600:260::-;3668:6;3676;3729:2;3717:9;3708:7;3704:23;3700:32;3697:52;;;3745:1;3742;3735:12;3697:52;3768:29;3787:9;3768:29;:::i;:::-;3758:39;;3816:38;3850:2;3839:9;3835:18;3816:38;:::i;3865:248::-;3930:6;3938;3991:2;3979:9;3970:7;3966:23;3962:32;3959:52;;;4007:1;4004;3997:12;3959:52;4030:26;4046:9;4030:26;:::i;4118:180::-;4174:6;4227:2;4215:9;4206:7;4202:23;4198:32;4195:52;;;4243:1;4240;4233:12;4195:52;4266:26;4282:9;4266:26;:::i;4538:127::-;4599:10;4594:3;4590:20;4587:1;4580:31;4630:4;4627:1;4620:15;4654:4;4651:1;4644:15;4670:217;4710:1;4736;4726:132;;4780:10;4775:3;4771:20;4768:1;4761:31;4815:4;4812:1;4805:15;4843:4;4840:1;4833:15;4726:132;-1:-1:-1;4872:9:1;;4670:217::o;5296:184::-;5366:6;5419:2;5407:9;5398:7;5394:23;5390:32;5387:52;;;5435:1;5432;5425:12;5387:52;-1:-1:-1;5458:16:1;;5296:184;-1:-1:-1;5296:184:1:o;5485:128::-;5525:3;5556:1;5552:6;5549:1;5546:13;5543:39;;;5562:18;;:::i;:::-;-1:-1:-1;5598:9:1;;5485:128::o;6025:125::-;6065:4;6093:1;6090;6087:8;6084:34;;;6098:18;;:::i;:::-;-1:-1:-1;6135:9:1;;6025:125::o;7633:168::-;7673:7;7739:1;7735;7731:6;7727:14;7724:1;7721:21;7716:1;7709:9;7702:17;7698:45;7695:71;;;7746:18;;:::i;:::-;-1:-1:-1;7786:9:1;;7633:168::o;8686:127::-;8747:10;8742:3;8738:20;8735:1;8728:31;8778:4;8775:1;8768:15;8802:4;8799:1;8792:15;8818:980;9080:4;9128:3;9117:9;9113:19;9159:6;9148:9;9141:25;9185:2;9223:6;9218:2;9207:9;9203:18;9196:34;9266:3;9261:2;9250:9;9246:18;9239:31;9290:6;9325;9319:13;9356:6;9348;9341:22;9394:3;9383:9;9379:19;9372:26;;9433:2;9425:6;9421:15;9407:29;;9454:1;9464:195;9478:6;9475:1;9472:13;9464:195;;;9543:13;;-1:-1:-1;;;;;9539:39:1;9527:52;;9634:15;;;;9599:12;;;;9575:1;9493:9;9464:195;;;-1:-1:-1;;;;;;;9715:32:1;;;;9710:2;9695:18;;9688:60;-1:-1:-1;;;9779:3:1;9764:19;9757:35;9676:3;8818:980;-1:-1:-1;;;8818:980:1:o;10013:354::-;10215:2;10197:21;;;10254:2;10234:18;;;10227:30;10293:32;10288:2;10273:18;;10266:60;10358:2;10343:18;;10013:354::o
Swarm Source
ipfs://59e6e04c980baf17d03735e520884fdbf569b55d666cb8f3fc4357cdca26f412
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.