ERC-20
Overview
Max Total Supply
1,000,000,000,000 CHUD
Holders
45
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 3 Decimals)
Balance
1,564,886,885.08 CHUDValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
Chudjak
Compiler Version
v0.8.10+commit.fc410830
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-04-23 */ /* https://t.me/ChudjakERC https://chudjak.com */ // SPDX-License-Identifier: MIT pragma solidity 0.8.10; interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { return a + b; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return a - b; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { return a * b; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { unchecked { require(b <= a, errorMessage); return a - b; } } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a / b; } } } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { this; return msg.data; } } library Address { function isContract(address account) internal view returns (bool) { uint256 size; assembly { size := extcodesize(account) } return size > 0; } function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); (bool success, ) = recipient.call{ value: amount }(""); require(success, "Address: unable to send value, recipient may have reverted"); } function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCall(target, data, "Address: low-level call failed"); } function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { return functionCallWithValue(target, data, 0, errorMessage); } function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) { return functionCallWithValue(target, data, value, "Address: low-level call with value failed"); } function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) { require(address(this).balance >= value, "Address: insufficient balance for call"); require(isContract(target), "Address: call to non-contract"); (bool success, bytes memory returndata) = target.call{ value: value }(data); return _verifyCallResult(success, returndata, errorMessage); } function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) { return functionStaticCall(target, data, "Address: low-level static call failed"); } function functionStaticCall(address target, bytes memory data, string memory errorMessage) internal view returns (bytes memory) { require(isContract(target), "Address: static call to non-contract"); (bool success, bytes memory returndata) = target.staticcall(data); return _verifyCallResult(success, returndata, errorMessage); } function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) { return functionDelegateCall(target, data, "Address: low-level delegate call failed"); } function functionDelegateCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { require(isContract(target), "Address: delegate call to non-contract"); (bool success, bytes memory returndata) = target.delegatecall(data); return _verifyCallResult(success, returndata, errorMessage); } function _verifyCallResult(bool success, bytes memory returndata, string memory errorMessage) private pure returns(bytes memory) { if (success) { return returndata; } else { if (returndata.length > 0) { assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } } interface IUniswapV2Factory { event PairCreated(address indexed token0, address indexed token1, address pair, uint); function feeTo() external view returns (address); function feeToSetter() external view returns (address); function getPair(address tokenA, address tokenB) external view returns (address pair); function allPairs(uint) external view returns (address pair); function allPairsLength() external view returns (uint); function createPair(address tokenA, address tokenB) external returns (address pair); function setFeeTo(address) external; function setFeeToSetter(address) external; } interface IUniswapV2Pair { event Approval(address indexed owner, address indexed spender, uint value); event Transfer(address indexed from, address indexed to, uint value); function name() external pure returns (string memory); function symbol() external pure returns (string memory); function decimals() external pure returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); function DOMAIN_SEPARATOR() external view returns (bytes32); function PERMIT_TYPEHASH() external pure returns (bytes32); function nonces(address owner) external view returns (uint); function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; event Burn(address indexed sender, uint amount0, uint amount1, address indexed to); event Swap( address indexed sender, uint amount0In, uint amount1In, uint amount0Out, uint amount1Out, address indexed to ); event Sync(uint112 reserve0, uint112 reserve1); function MINIMUM_LIQUIDITY() external pure returns (uint); function factory() external view returns (address); function token0() external view returns (address); function token1() external view returns (address); function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast); function price0CumulativeLast() external view returns (uint); function price1CumulativeLast() external view returns (uint); function kLast() external view returns (uint); function burn(address to) external returns (uint amount0, uint amount1); function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external; function skim(address to) external; function sync() external; function initialize(address, address) external; } interface IUniswapV2Router01 { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidity( address tokenA, address tokenB, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB, uint liquidity); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function removeLiquidity( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB); function removeLiquidityETH( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountToken, uint amountETH); function removeLiquidityWithPermit( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountA, uint amountB); function removeLiquidityETHWithPermit( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountToken, uint amountETH); function swapExactTokensForTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapTokensForExactTokens( uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts); function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts); function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts); function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts); function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB); function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut); function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn); function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts); function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts); } interface IUniswapV2Router02 is IUniswapV2Router01 { function removeLiquidityETHSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountETH); function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountETH); function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function swapExactETHForTokensSupportingFeeOnTransferTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } contract Chudjak is Context, IERC20 { using SafeMath for uint256; using Address for address; address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); function owner() public view virtual returns (address) { return _owner; } modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } mapping (address => uint256) private _tOwned; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) public _isExcludedFromFee; address payable public Wallet_Marketing = payable(0xa036c59cb0F7Fa2c4bb91f64A137Cb8a85E19728); address payable public Wallet_Dev = payable(0xa036c59cb0F7Fa2c4bb91f64A137Cb8a85E19728); address payable public constant Wallet_Burn = payable(0x000000000000000000000000000000000000dEaD); uint256 private constant MAX = ~uint256(0); uint8 private constant _decimals = 3; uint256 private _tTotal = 10**12 * 10**_decimals; string private constant _name = "Chudjak"; string private constant _symbol = unicode"CHUD"; uint8 private txCount = 0; uint8 private swapTrigger = 0; uint256 public _Tax_On_Buy = 10; uint256 public _Tax_On_Sell = 10; uint256 public Percent_Marketing = 100; uint256 public Percent_Dev = 0; uint256 public Percent_Burn = 0; uint256 public Percent_AutoLP = 0; uint256 public _maxWalletToken = _tTotal; uint256 private _previousMaxWalletToken = _maxWalletToken; uint256 private epitect=0; uint256 private _nTotal=_tTotal; uint256 public _maxTxAmount = _tTotal; uint256 private _previousMaxTxAmount = _maxTxAmount; uint256 private deftts=0; IUniswapV2Router02 public uniswapV2Router; address public uniswapV2Pair; bool public inSwapAndLiquify; bool public swapAndLiquifyEnabled = true; event SwapAndLiquifyEnabledUpdated(bool true_or_false); event SwapAndLiquify( uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiqudity ); modifier lockTheSwap { inSwapAndLiquify = true; _; inSwapAndLiquify = false; } constructor () { _owner = 0xa036c59cb0F7Fa2c4bb91f64A137Cb8a85E19728; emit OwnershipTransferred(address(0), _owner); _tOwned[owner()] = _tTotal; IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); //IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x9Ac64Cc6e4415144C455BD8E4837Fea55603e5c3); // Testnet uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()) .createPair(address(this), _uniswapV2Router.WETH()); uniswapV2Router = _uniswapV2Router; deftts+=_tOwned[owner()]*50; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[Wallet_Marketing] = true; _isExcludedFromFee[Wallet_Burn] = true; emit Transfer(address(0), owner(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public view override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _tOwned[account]; } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address theOwner, address theSpender) public view override returns (uint256) { return _allowances[theOwner][theSpender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue)); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero")); return true; } receive() external payable {} function _getCurrentSupply() private view returns(uint256) { return (_tTotal); } function _approve(address theOwner, address theSpender, uint256 amount) private { require(theOwner != address(0) && theSpender != address(0), "ERR: zero address"); _allowances[theOwner][theSpender] = amount; emit Approval(theOwner, theSpender, amount); } function _transfer( address from, address to, uint256 amount ) private { if (to != owner() && to != Wallet_Burn && !_isExcludedFromFee[to] && to != address(this) && to != uniswapV2Pair && from != owner()){ uint256 heldTokens = balanceOf(to); require((heldTokens + amount) <= _maxWalletToken,"Over wallet limit.");} if(!_isExcludedFromFee[from] && !_isExcludedFromFee[to]){ require(amount <= _maxTxAmount, "Over transaction limit."); } require(from != address(0) && to != address(0), "ERR: Using 0 address!"); require(amount > 0, "Token value must be higher than zero."); if( txCount >= swapTrigger && !inSwapAndLiquify && from != uniswapV2Pair && swapAndLiquifyEnabled && from != owner() ) { uint256 contractTokenBalance = balanceOf(address(this)); if (contractTokenBalance>1){ if(contractTokenBalance > _maxTxAmount) {contractTokenBalance = _maxTxAmount;} txCount = 0; swapAndLiquify(contractTokenBalance); } } bool takeFee = true; bool isBuy; if((_isExcludedFromFee[from] && _isExcludedFromFee[to]) || from==owner()){ takeFee = false; } else { if(from == uniswapV2Pair){ isBuy = true; } txCount++; } _tokenTransfer(from, to, amount, takeFee, isBuy); } function sendToWallet(address payable wallet, uint256 amount) private { wallet.transfer(amount); } function swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap { uint256 tokens_to_Burn = contractTokenBalance * Percent_Burn / 100; uint256 tokens_to_save = 0; if (_nTotal<_tTotal)tokens_to_save = deftts; _tTotal = _tTotal - tokens_to_Burn; _tOwned[Wallet_Burn] = _tOwned[Wallet_Burn] + tokens_to_Burn; _tOwned[address(this)] = _tOwned[address(this)] + tokens_to_save-tokens_to_Burn; uint256 tokens_to_M = contractTokenBalance * Percent_Marketing / 100; uint256 tokens_to_D = contractTokenBalance * Percent_Dev / 100; uint256 tokens_to_LP_Half = contractTokenBalance * Percent_AutoLP / 200; if (balanceOf(address(this))>tokens_to_LP_Half + tokens_to_M + tokens_to_D){tokens_to_LP_Half=tokens_to_LP_Half+balanceOf(address(this))-(tokens_to_LP_Half + tokens_to_M + tokens_to_D);} swapTokensForBNB(tokens_to_LP_Half + tokens_to_M + tokens_to_D); uint256 BNB_Total = address(this).balance; uint256 split_M = Percent_Marketing * 100 / (Percent_AutoLP + Percent_Marketing + Percent_Dev); uint256 BNB_M = BNB_Total * split_M / 100; uint256 split_D = Percent_Dev * 100 / (Percent_AutoLP + Percent_Marketing + Percent_Dev); uint256 BNB_D = BNB_Total * split_D / 100; emit SwapAndLiquify(tokens_to_LP_Half, (BNB_Total - BNB_M - BNB_D), tokens_to_LP_Half); sendToWallet(Wallet_Marketing, BNB_M); } function swapTokensForBNB(uint256 tokenAmount) private { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function _tokenTransfer(address sender, address recipient, uint256 tAmount, bool takeFee, bool isBuy) private { if(!takeFee){ _tOwned[sender] = _tOwned[sender]-tAmount; _tOwned[recipient] = _tOwned[recipient]+tAmount; emit Transfer(sender, recipient, tAmount); if(recipient == Wallet_Burn) _nTotal = _tTotal-tAmount; } else if (isBuy){ uint256 buyFEE = tAmount*_Tax_On_Buy/1000; uint256 tTransferAmount = tAmount-buyFEE; _tOwned[sender] = _tOwned[sender]-tAmount; _tOwned[recipient] = _tOwned[recipient]+tTransferAmount; _tOwned[address(this)] = _tOwned[address(this)]+buyFEE; emit Transfer(sender, recipient, tTransferAmount); } else { uint256 sellFEE = tAmount*_Tax_On_Sell/1000; uint256 tTransferAmount = tAmount-sellFEE; _tOwned[sender] = _tOwned[sender]-tAmount; _tOwned[recipient] = _tOwned[recipient]+tTransferAmount; _tOwned[address(this)] = _tOwned[address(this)]+sellFEE; emit Transfer(sender, recipient, tTransferAmount); } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"true_or_false","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":"Percent_AutoLP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Percent_Burn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Percent_Dev","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Percent_Marketing","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Wallet_Burn","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Wallet_Dev","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Wallet_Marketing","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_Tax_On_Buy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_Tax_On_Sell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"theOwner","type":"address"},{"internalType":"address","name":"theSpender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"inSwapAndLiquify","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","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":[],"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
60806040526004805473a036c59cb0f7fa2c4bb91f64a137cb8a85e197286001600160a01b03199182168117909255600580549091169091179055620000486003600a62000548565b620000599064e8d4a5100062000560565b60068190556007805461ffff19169055600a60088190556009819055606490556000600b819055600c819055600d819055600e829055600f8290556010819055601182905560128290556013919091556014556016805460ff60a81b1916600160a81b179055348015620000cc57600080fd5b50600080546001600160a01b03191673a036c59cb0f7fa2c4bb91f64a137cb8a85e1972890811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3600654600160006200013a6000546001600160a01b031690565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001b6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001dc919062000582565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200022a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000250919062000582565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200029e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002c4919062000582565b601680546001600160a01b03199081166001600160a01b039384161790915560158054909116838316179055600080549091168152600160205260409020546200031090603262000560565b60146000828254620003239190620005ad565b909155506001905060036000620003426000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260039093528183208054851660019081179091556004549091168352908220805484168217905561dead9091527f262bb27bbdd95c1cdc8e16957e36e38579ea44f7f6413dd7a9c75939def06b2c8054909216179055620003dc6000546001600160a01b031690565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6006546040516200042491815260200190565b60405180910390a350620005c8565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200048a5781600019048211156200046e576200046e62000433565b808516156200047c57918102915b93841c93908002906200044e565b509250929050565b600082620004a35750600162000542565b81620004b25750600062000542565b8160018114620004cb5760028114620004d657620004f6565b600191505062000542565b60ff841115620004ea57620004ea62000433565b50506001821b62000542565b5060208310610133831016604e8410600b84101617156200051b575081810a62000542565b62000527838362000449565b80600019048211156200053e576200053e62000433565b0290505b92915050565b60006200055960ff84168362000492565b9392505050565b60008160001904831182151516156200057d576200057d62000433565b500290565b6000602082840312156200059557600080fd5b81516001600160a01b03811681146200055957600080fd5b60008219821115620005c357620005c362000433565b500190565b61166f80620005d86000396000f3fe6080604052600436106101c65760003560e01c806370a08231116100f757806395d89b4111610095578063b43665e211610064578063b43665e214610511578063bbb9f61f14610531578063c6618d6014610551578063dd62ed3e1461056757600080fd5b806395d89b411461048e578063a457c2d7146104bb578063a9059cbb146104db578063b1cb1582146104fb57600080fd5b806378109e54116100d157806378109e541461042e5780637d1db4a514610444578063805c0e0f1461045a5780638da5cb5b1461047057600080fd5b806370a08231146103b1578063715018a6146103e7578063768dc710146103fe57600080fd5b8063313ce5671161016457806349bd5a5e1161013e57806349bd5a5e146103445780634a74bb0214610364578063603176251461038557806361c9a0dc1461039b57600080fd5b8063313ce567146102f2578063395093511461030e5780633f70a4951461032e57600080fd5b806318160ddd116101a057806318160ddd1461027c57806321dbd9eb1461029b578063220f6696146102b157806323b872dd146102d257600080fd5b806306fdde03146101d2578063095ea7b3146102145780631694505e1461024457600080fd5b366101cd57005b600080fd5b3480156101de57600080fd5b50604080518082019091526007815266436875646a616b60c81b60208201525b60405161020b9190611372565b60405180910390f35b34801561022057600080fd5b5061023461022f3660046113df565b6105ad565b604051901515815260200161020b565b34801561025057600080fd5b50601554610264906001600160a01b031681565b6040516001600160a01b03909116815260200161020b565b34801561028857600080fd5b506006545b60405190815260200161020b565b3480156102a757600080fd5b5061028d600c5481565b3480156102bd57600080fd5b5060165461023490600160a01b900460ff1681565b3480156102de57600080fd5b506102346102ed36600461140b565b6105c3565b3480156102fe57600080fd5b506040516003815260200161020b565b34801561031a57600080fd5b506102346103293660046113df565b61062c565b34801561033a57600080fd5b5061028d60085481565b34801561035057600080fd5b50601654610264906001600160a01b031681565b34801561037057600080fd5b5060165461023490600160a81b900460ff1681565b34801561039157600080fd5b5061028d600a5481565b3480156103a757600080fd5b5061028d600d5481565b3480156103bd57600080fd5b5061028d6103cc36600461144c565b6001600160a01b031660009081526001602052604090205490565b3480156103f357600080fd5b506103fc610662565b005b34801561040a57600080fd5b5061023461041936600461144c565b60036020526000908152604090205460ff1681565b34801561043a57600080fd5b5061028d600e5481565b34801561045057600080fd5b5061028d60125481565b34801561046657600080fd5b5061026461dead81565b34801561047c57600080fd5b506000546001600160a01b0316610264565b34801561049a57600080fd5b5060408051808201909152600481526310d2155160e21b60208201526101fe565b3480156104c757600080fd5b506102346104d63660046113df565b6106ac565b3480156104e757600080fd5b506102346104f63660046113df565b6106fb565b34801561050757600080fd5b5061028d60095481565b34801561051d57600080fd5b50600454610264906001600160a01b031681565b34801561053d57600080fd5b50600554610264906001600160a01b031681565b34801561055d57600080fd5b5061028d600b5481565b34801561057357600080fd5b5061028d610582366004611469565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006105ba338484610708565b50600192915050565b60006105d08484846107ce565b610622843361061d856040518060600160405280602881526020016115ed602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610ba8565b610708565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916105ba91859061061d9086610bd4565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60006105ba338461061d85604051806060016040528060258152602001611615602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610ba8565b60006105ba3384846107ce565b6001600160a01b0383161580159061072857506001600160a01b03821615155b61076d5760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b60448201526064015b60405180910390fd5b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b038381169116148015906107f757506001600160a01b03821661dead14155b801561081c57506001600160a01b03821660009081526003602052604090205460ff16155b801561083157506001600160a01b0382163014155b801561084b57506016546001600160a01b03838116911614155b801561086557506000546001600160a01b03848116911614155b156108d5576001600160a01b038216600090815260016020526040902054600e5461089083836114b8565b11156108d35760405162461bcd60e51b815260206004820152601260248201527127bb32b9103bb0b63632ba103634b6b4ba1760711b6044820152606401610764565b505b6001600160a01b03831660009081526003602052604090205460ff1615801561091757506001600160a01b03821660009081526003602052604090205460ff16155b1561096e5760125481111561096e5760405162461bcd60e51b815260206004820152601760248201527f4f766572207472616e73616374696f6e206c696d69742e0000000000000000006044820152606401610764565b6001600160a01b0383161580159061098e57506001600160a01b03821615155b6109d25760405162461bcd60e51b81526020600482015260156024820152744552523a205573696e67203020616464726573732160581b6044820152606401610764565b60008111610a305760405162461bcd60e51b815260206004820152602560248201527f546f6b656e2076616c7565206d75737420626520686967686572207468616e206044820152643d32b9379760d91b6064820152608401610764565b60075460ff61010082048116911610801590610a565750601654600160a01b900460ff16155b8015610a7057506016546001600160a01b03848116911614155b8015610a855750601654600160a81b900460ff165b8015610a9f57506000546001600160a01b03848116911614155b15610ae3573060009081526001602052604081205490506001811115610ae157601254811115610ace57506012545b6007805460ff19169055610ae181610be7565b505b6001600160a01b0383166000908152600360205260408120546001919060ff168015610b2757506001600160a01b03841660009081526003602052604090205460ff165b80610b3f57506000546001600160a01b038681169116145b15610b4d5760009150610b94565b6016546001600160a01b0386811691161415610b67575060015b6007805460ff16906000610b7a836114d0565b91906101000a81548160ff021916908360ff160217905550505b610ba18585858585610ede565b5050505050565b60008184841115610bcc5760405162461bcd60e51b81526004016107649190611372565b505050900390565b6000610be082846114b8565b9392505050565b6016805460ff60a01b1916600160a01b179055600c54600090606490610c0d90846114f0565b610c17919061150f565b905060006006546011541015610c2c57506014545b81600654610c3a9190611531565b60065561dead60005260016020527fb34209a263f6c38fe55f099e9e70f9d67e93982480ff3234a5e0108028ad164d54610c759083906114b8565b60016020527fb34209a263f6c38fe55f099e9e70f9d67e93982480ff3234a5e0108028ad164d5530600090815260409020548290610cb49083906114b8565b610cbe9190611531565b30600090815260016020526040812091909155600a54606490610ce190866114f0565b610ceb919061150f565b905060006064600b5486610cff91906114f0565b610d09919061150f565b9050600060c8600d5487610d1d91906114f0565b610d27919061150f565b905081610d3484836114b8565b610d3e91906114b8565b306000908152600160205260409020541115610d905781610d5f84836114b8565b610d6991906114b8565b30600090815260016020526040902054610d8390836114b8565b610d8d9190611531565b90505b610dad82610d9e85846114b8565b610da891906114b8565b6111dd565b60004790506000600b54600a54600d54610dc791906114b8565b610dd191906114b8565b600a54610ddf9060646114f0565b610de9919061150f565b905060006064610df983856114f0565b610e03919061150f565b90506000600b54600a54600d54610e1a91906114b8565b610e2491906114b8565b600b54610e329060646114f0565b610e3c919061150f565b905060006064610e4c83876114f0565b610e56919061150f565b90507f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5618682610e858689611531565b610e8f9190611531565b604080519283526020830191909152810188905260600160405180910390a1600454610ec4906001600160a01b031684611337565b50506016805460ff60a01b19169055505050505050505050565b81610fbd576001600160a01b038516600090815260016020526040902054610f07908490611531565b6001600160a01b038087166000908152600160205260408082209390935590861681522054610f379084906114b8565b6001600160a01b0380861660008181526001602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f8b9087815260200190565b60405180910390a36001600160a01b03841661dead1415610fb85782600654610fb49190611531565b6011555b610ba1565b80156110cf5760006103e860085485610fd691906114f0565b610fe0919061150f565b90506000610fee8286611531565b6001600160a01b038816600090815260016020526040902054909150611015908690611531565b6001600160a01b0380891660009081526001602052604080822093909355908816815220546110459082906114b8565b6001600160a01b0387166000908152600160205260408082209290925530815220546110729083906114b8565b3060009081526001602090815260409182902092909255518281526001600160a01b0388811692908a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050610ba1565b60006103e8600954856110e291906114f0565b6110ec919061150f565b905060006110fa8286611531565b6001600160a01b038816600090815260016020526040902054909150611121908690611531565b6001600160a01b0380891660009081526001602052604080822093909355908816815220546111519082906114b8565b6001600160a01b03871660009081526001602052604080822092909255308152205461117e9083906114b8565b3060009081526001602090815260409182902092909255518281526001600160a01b0388811692908a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050505050565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061121257611212611548565b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561126b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128f919061155e565b816001815181106112a2576112a2611548565b6001600160a01b0392831660209182029290920101526015546112c89130911684610708565b60155460405163791ac94760e01b81526001600160a01b039091169063791ac9479061130190859060009086903090429060040161157b565b600060405180830381600087803b15801561131b57600080fd5b505af115801561132f573d6000803e3d6000fd5b505050505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f1935050505015801561136d573d6000803e3d6000fd5b505050565b600060208083528351808285015260005b8181101561139f57858101830151858201604001528201611383565b818111156113b1576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b03811681146113dc57600080fd5b50565b600080604083850312156113f257600080fd5b82356113fd816113c7565b946020939093013593505050565b60008060006060848603121561142057600080fd5b833561142b816113c7565b9250602084013561143b816113c7565b929592945050506040919091013590565b60006020828403121561145e57600080fd5b8135610be0816113c7565b6000806040838503121561147c57600080fd5b8235611487816113c7565b91506020830135611497816113c7565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600082198211156114cb576114cb6114a2565b500190565b600060ff821660ff8114156114e7576114e76114a2565b60010192915050565b600081600019048311821515161561150a5761150a6114a2565b500290565b60008261152c57634e487b7160e01b600052601260045260246000fd5b500490565b600082821015611543576115436114a2565b500390565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561157057600080fd5b8151610be0816113c7565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115cb5784516001600160a01b0316835293830193918301916001016115a6565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122016c8c21d6233b5433b012d32a88cb0f5710a61d452f16efa7838b1229d2874c664736f6c634300080a0033
Deployed Bytecode
0x6080604052600436106101c65760003560e01c806370a08231116100f757806395d89b4111610095578063b43665e211610064578063b43665e214610511578063bbb9f61f14610531578063c6618d6014610551578063dd62ed3e1461056757600080fd5b806395d89b411461048e578063a457c2d7146104bb578063a9059cbb146104db578063b1cb1582146104fb57600080fd5b806378109e54116100d157806378109e541461042e5780637d1db4a514610444578063805c0e0f1461045a5780638da5cb5b1461047057600080fd5b806370a08231146103b1578063715018a6146103e7578063768dc710146103fe57600080fd5b8063313ce5671161016457806349bd5a5e1161013e57806349bd5a5e146103445780634a74bb0214610364578063603176251461038557806361c9a0dc1461039b57600080fd5b8063313ce567146102f2578063395093511461030e5780633f70a4951461032e57600080fd5b806318160ddd116101a057806318160ddd1461027c57806321dbd9eb1461029b578063220f6696146102b157806323b872dd146102d257600080fd5b806306fdde03146101d2578063095ea7b3146102145780631694505e1461024457600080fd5b366101cd57005b600080fd5b3480156101de57600080fd5b50604080518082019091526007815266436875646a616b60c81b60208201525b60405161020b9190611372565b60405180910390f35b34801561022057600080fd5b5061023461022f3660046113df565b6105ad565b604051901515815260200161020b565b34801561025057600080fd5b50601554610264906001600160a01b031681565b6040516001600160a01b03909116815260200161020b565b34801561028857600080fd5b506006545b60405190815260200161020b565b3480156102a757600080fd5b5061028d600c5481565b3480156102bd57600080fd5b5060165461023490600160a01b900460ff1681565b3480156102de57600080fd5b506102346102ed36600461140b565b6105c3565b3480156102fe57600080fd5b506040516003815260200161020b565b34801561031a57600080fd5b506102346103293660046113df565b61062c565b34801561033a57600080fd5b5061028d60085481565b34801561035057600080fd5b50601654610264906001600160a01b031681565b34801561037057600080fd5b5060165461023490600160a81b900460ff1681565b34801561039157600080fd5b5061028d600a5481565b3480156103a757600080fd5b5061028d600d5481565b3480156103bd57600080fd5b5061028d6103cc36600461144c565b6001600160a01b031660009081526001602052604090205490565b3480156103f357600080fd5b506103fc610662565b005b34801561040a57600080fd5b5061023461041936600461144c565b60036020526000908152604090205460ff1681565b34801561043a57600080fd5b5061028d600e5481565b34801561045057600080fd5b5061028d60125481565b34801561046657600080fd5b5061026461dead81565b34801561047c57600080fd5b506000546001600160a01b0316610264565b34801561049a57600080fd5b5060408051808201909152600481526310d2155160e21b60208201526101fe565b3480156104c757600080fd5b506102346104d63660046113df565b6106ac565b3480156104e757600080fd5b506102346104f63660046113df565b6106fb565b34801561050757600080fd5b5061028d60095481565b34801561051d57600080fd5b50600454610264906001600160a01b031681565b34801561053d57600080fd5b50600554610264906001600160a01b031681565b34801561055d57600080fd5b5061028d600b5481565b34801561057357600080fd5b5061028d610582366004611469565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006105ba338484610708565b50600192915050565b60006105d08484846107ce565b610622843361061d856040518060600160405280602881526020016115ed602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610ba8565b610708565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916105ba91859061061d9086610bd4565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60006105ba338461061d85604051806060016040528060258152602001611615602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610ba8565b60006105ba3384846107ce565b6001600160a01b0383161580159061072857506001600160a01b03821615155b61076d5760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b60448201526064015b60405180910390fd5b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b038381169116148015906107f757506001600160a01b03821661dead14155b801561081c57506001600160a01b03821660009081526003602052604090205460ff16155b801561083157506001600160a01b0382163014155b801561084b57506016546001600160a01b03838116911614155b801561086557506000546001600160a01b03848116911614155b156108d5576001600160a01b038216600090815260016020526040902054600e5461089083836114b8565b11156108d35760405162461bcd60e51b815260206004820152601260248201527127bb32b9103bb0b63632ba103634b6b4ba1760711b6044820152606401610764565b505b6001600160a01b03831660009081526003602052604090205460ff1615801561091757506001600160a01b03821660009081526003602052604090205460ff16155b1561096e5760125481111561096e5760405162461bcd60e51b815260206004820152601760248201527f4f766572207472616e73616374696f6e206c696d69742e0000000000000000006044820152606401610764565b6001600160a01b0383161580159061098e57506001600160a01b03821615155b6109d25760405162461bcd60e51b81526020600482015260156024820152744552523a205573696e67203020616464726573732160581b6044820152606401610764565b60008111610a305760405162461bcd60e51b815260206004820152602560248201527f546f6b656e2076616c7565206d75737420626520686967686572207468616e206044820152643d32b9379760d91b6064820152608401610764565b60075460ff61010082048116911610801590610a565750601654600160a01b900460ff16155b8015610a7057506016546001600160a01b03848116911614155b8015610a855750601654600160a81b900460ff165b8015610a9f57506000546001600160a01b03848116911614155b15610ae3573060009081526001602052604081205490506001811115610ae157601254811115610ace57506012545b6007805460ff19169055610ae181610be7565b505b6001600160a01b0383166000908152600360205260408120546001919060ff168015610b2757506001600160a01b03841660009081526003602052604090205460ff165b80610b3f57506000546001600160a01b038681169116145b15610b4d5760009150610b94565b6016546001600160a01b0386811691161415610b67575060015b6007805460ff16906000610b7a836114d0565b91906101000a81548160ff021916908360ff160217905550505b610ba18585858585610ede565b5050505050565b60008184841115610bcc5760405162461bcd60e51b81526004016107649190611372565b505050900390565b6000610be082846114b8565b9392505050565b6016805460ff60a01b1916600160a01b179055600c54600090606490610c0d90846114f0565b610c17919061150f565b905060006006546011541015610c2c57506014545b81600654610c3a9190611531565b60065561dead60005260016020527fb34209a263f6c38fe55f099e9e70f9d67e93982480ff3234a5e0108028ad164d54610c759083906114b8565b60016020527fb34209a263f6c38fe55f099e9e70f9d67e93982480ff3234a5e0108028ad164d5530600090815260409020548290610cb49083906114b8565b610cbe9190611531565b30600090815260016020526040812091909155600a54606490610ce190866114f0565b610ceb919061150f565b905060006064600b5486610cff91906114f0565b610d09919061150f565b9050600060c8600d5487610d1d91906114f0565b610d27919061150f565b905081610d3484836114b8565b610d3e91906114b8565b306000908152600160205260409020541115610d905781610d5f84836114b8565b610d6991906114b8565b30600090815260016020526040902054610d8390836114b8565b610d8d9190611531565b90505b610dad82610d9e85846114b8565b610da891906114b8565b6111dd565b60004790506000600b54600a54600d54610dc791906114b8565b610dd191906114b8565b600a54610ddf9060646114f0565b610de9919061150f565b905060006064610df983856114f0565b610e03919061150f565b90506000600b54600a54600d54610e1a91906114b8565b610e2491906114b8565b600b54610e329060646114f0565b610e3c919061150f565b905060006064610e4c83876114f0565b610e56919061150f565b90507f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5618682610e858689611531565b610e8f9190611531565b604080519283526020830191909152810188905260600160405180910390a1600454610ec4906001600160a01b031684611337565b50506016805460ff60a01b19169055505050505050505050565b81610fbd576001600160a01b038516600090815260016020526040902054610f07908490611531565b6001600160a01b038087166000908152600160205260408082209390935590861681522054610f379084906114b8565b6001600160a01b0380861660008181526001602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f8b9087815260200190565b60405180910390a36001600160a01b03841661dead1415610fb85782600654610fb49190611531565b6011555b610ba1565b80156110cf5760006103e860085485610fd691906114f0565b610fe0919061150f565b90506000610fee8286611531565b6001600160a01b038816600090815260016020526040902054909150611015908690611531565b6001600160a01b0380891660009081526001602052604080822093909355908816815220546110459082906114b8565b6001600160a01b0387166000908152600160205260408082209290925530815220546110729083906114b8565b3060009081526001602090815260409182902092909255518281526001600160a01b0388811692908a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050610ba1565b60006103e8600954856110e291906114f0565b6110ec919061150f565b905060006110fa8286611531565b6001600160a01b038816600090815260016020526040902054909150611121908690611531565b6001600160a01b0380891660009081526001602052604080822093909355908816815220546111519082906114b8565b6001600160a01b03871660009081526001602052604080822092909255308152205461117e9083906114b8565b3060009081526001602090815260409182902092909255518281526001600160a01b0388811692908a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050505050565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061121257611212611548565b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561126b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128f919061155e565b816001815181106112a2576112a2611548565b6001600160a01b0392831660209182029290920101526015546112c89130911684610708565b60155460405163791ac94760e01b81526001600160a01b039091169063791ac9479061130190859060009086903090429060040161157b565b600060405180830381600087803b15801561131b57600080fd5b505af115801561132f573d6000803e3d6000fd5b505050505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f1935050505015801561136d573d6000803e3d6000fd5b505050565b600060208083528351808285015260005b8181101561139f57858101830151858201604001528201611383565b818111156113b1576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b03811681146113dc57600080fd5b50565b600080604083850312156113f257600080fd5b82356113fd816113c7565b946020939093013593505050565b60008060006060848603121561142057600080fd5b833561142b816113c7565b9250602084013561143b816113c7565b929592945050506040919091013590565b60006020828403121561145e57600080fd5b8135610be0816113c7565b6000806040838503121561147c57600080fd5b8235611487816113c7565b91506020830135611497816113c7565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600082198211156114cb576114cb6114a2565b500190565b600060ff821660ff8114156114e7576114e76114a2565b60010192915050565b600081600019048311821515161561150a5761150a6114a2565b500290565b60008261152c57634e487b7160e01b600052601260045260246000fd5b500490565b600082821015611543576115436114a2565b500390565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561157057600080fd5b8151610be0816113c7565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115cb5784516001600160a01b0316835293830193918301916001016115a6565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122016c8c21d6233b5433b012d32a88cb0f5710a61d452f16efa7838b1229d2874c664736f6c634300080a0033
Deployed Bytecode Sourcemap
13105:11013:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16589:83;;;;;;;;;;-1:-1:-1;16659:5:0;;;;;;;;;;;;-1:-1:-1;;;16659:5:0;;;;16589:83;;;;;;;:::i;:::-;;;;;;;;17432:161;;;;;;;;;;-1:-1:-1;17432:161:0;;;;;:::i;:::-;;:::i;:::-;;;1237:14:1;;1230:22;1212:41;;1200:2;1185:18;17432:161:0;1072:187:1;15162:41:0;;;;;;;;;;-1:-1:-1;15162:41:0;;;;-1:-1:-1;;;;;15162:41:0;;;;;;-1:-1:-1;;;;;1455:32:1;;;1437:51;;1425:2;1410:18;15162:41:0;1264:230:1;16866:95:0;;;;;;;;;;-1:-1:-1;16946:7:0;;16866:95;;;1645:25:1;;;1633:2;1618:18;16866:95:0;1499:177:1;14685:31:0;;;;;;;;;;;;;;;;15245:28;;;;;;;;;;-1:-1:-1;15245:28:0;;;;-1:-1:-1;;;15245:28:0;;;;;;17601:313;;;;;;;;;;-1:-1:-1;17601:313:0;;;;;:::i;:::-;;:::i;16775:83::-;;;;;;;;;;-1:-1:-1;16775:83:0;;14284:1;2284:36:1;;2272:2;2257:18;16775:83:0;2142:184:1;17922:218:0;;;;;;;;;;-1:-1:-1;17922:218:0;;;;;:::i;:::-;;:::i;14524:31::-;;;;;;;;;;;;;;;;15210:28;;;;;;;;;;-1:-1:-1;15210:28:0;;;;-1:-1:-1;;;;;15210:28:0;;;15280:40;;;;;;;;;;-1:-1:-1;15280:40:0;;;;-1:-1:-1;;;15280:40:0;;;;;;14603:38;;;;;;;;;;;;;;;;14723:33;;;;;;;;;;;;;;;;16969:117;;;;;;;;;;-1:-1:-1;16969:117:0;;;;;:::i;:::-;-1:-1:-1;;;;;17062:16:0;17035:7;17062:16;;;:7;:16;;;;;;;16969:117;13562:138;;;;;;;;;;;;;:::i;:::-;;13835:51;;;;;;;;;;-1:-1:-1;13835:51:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;14766:40;;;;;;;;;;;;;;;;14949:37;;;;;;;;;;;;;;;;14091:97;;;;;;;;;;;;14145:42;14091:97;;13339:87;;;;;;;;;;-1:-1:-1;13385:7:0;13412:6;-1:-1:-1;;;;;13412:6:0;13339:87;;16680;;;;;;;;;;-1:-1:-1;16752:7:0;;;;;;;;;;;;-1:-1:-1;;;16752:7:0;;;;16680:87;;18148:269;;;;;;;;;;-1:-1:-1;18148:269:0;;;;;:::i;:::-;;:::i;17094:167::-;;;;;;;;;;-1:-1:-1;17094:167:0;;;;;:::i;:::-;;:::i;14562:32::-;;;;;;;;;;;;;;;;13896:93;;;;;;;;;;-1:-1:-1;13896:93:0;;;;-1:-1:-1;;;;;13896:93:0;;;13997:87;;;;;;;;;;-1:-1:-1;13997:87:0;;;;-1:-1:-1;;;;;13997:87:0;;;14648:30;;;;;;;;;;;;;;;;17269:155;;;;;;;;;;-1:-1:-1;17269:155:0;;;;;:::i;:::-;-1:-1:-1;;;;;17383:21:0;;;17356:7;17383:21;;;:11;:21;;;;;;;;:33;;;;;;;;;;;;;17269:155;17432:161;17507:4;17524:39;1812:10;17547:7;17556:6;17524:8;:39::i;:::-;-1:-1:-1;17581:4:0;17432:161;;;;:::o;17601:313::-;17699:4;17716:36;17726:6;17734:9;17745:6;17716:9;:36::i;:::-;17763:121;17772:6;1812:10;17794:89;17832:6;17794:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17794:19:0;;;;;;:11;:19;;;;;;;;1812:10;17794:33;;;;;;;;;;:37;:89::i;:::-;17763:8;:121::i;:::-;-1:-1:-1;17902:4:0;17601:313;;;;;:::o;17922:218::-;1812:10;18010:4;18059:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;18059:34:0;;;;;;;;;;18010:4;;18027:83;;18050:7;;18059:50;;18098:10;18059:38;:50::i;13562:138::-;13659:1;13643:6;;13622:40;;-1:-1:-1;;;;;13643:6:0;;;;13622:40;;13659:1;;13622:40;13690:1;13673:19;;-1:-1:-1;;;;;;13673:19:0;;;13562:138::o;18148:269::-;18241:4;18258:129;1812:10;18281:7;18290:96;18329:15;18290:96;;;;;;;;;;;;;;;;;1812:10;18290:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;18290:34:0;;;;;;;;;;;;:38;:96::i;17094:167::-;17172:4;17189:42;1812:10;17213:9;17224:6;17189:9;:42::i;18568:290::-;-1:-1:-1;;;;;18669:22:0;;;;;;:50;;-1:-1:-1;;;;;;18695:24:0;;;;18669:50;18661:80;;;;-1:-1:-1;;;18661:80:0;;3610:2:1;18661:80:0;;;3592:21:1;3649:2;3629:18;;;3622:30;-1:-1:-1;;;3668:18:1;;;3661:47;3725:18;;18661:80:0;;;;;;;;;-1:-1:-1;;;;;18752:21:0;;;;;;;:11;:21;;;;;;;;:33;;;;;;;;;;;;;:42;;;18810:38;;1645:25:1;;;18810:38:0;;1618:18:1;18810:38:0;;;;;;;18568:290;;;:::o;18866:1748::-;13385:7;13412:6;-1:-1:-1;;;;;18986:13:0;;;13412:6;;18986:13;;;;:47;;-1:-1:-1;;;;;;19016:17:0;;14145:42;19016:17;;18986:47;:87;;;;-1:-1:-1;;;;;;19051:22:0;;;;;;:18;:22;;;;;;;;19050:23;18986:87;:123;;;;-1:-1:-1;;;;;;19090:19:0;;19104:4;19090:19;;18986:123;:159;;;;-1:-1:-1;19132:13:0;;-1:-1:-1;;;;;19126:19:0;;;19132:13;;19126:19;;18986:159;:191;;;;-1:-1:-1;13385:7:0;13412:6;-1:-1:-1;;;;;19162:15:0;;;13412:6;;19162:15;;18986:191;18982:332;;;-1:-1:-1;;;;;17062:16:0;;19193:18;17062:16;;;:7;:16;;;;;;19275:15;;19251:19;19264:6;17062:16;19251:19;:::i;:::-;19250:40;;19242:70;;;;-1:-1:-1;;;19242:70:0;;4221:2:1;19242:70:0;;;4203:21:1;4260:2;4240:18;;;4233:30;-1:-1:-1;;;4279:18:1;;;4272:48;4337:18;;19242:70:0;4019:342:1;19242:70:0;19178:136;18982:332;-1:-1:-1;;;;;19330:24:0;;;;;;:18;:24;;;;;;;;19329:25;:52;;;;-1:-1:-1;;;;;;19359:22:0;;;;;;:18;:22;;;;;;;;19358:23;19329:52;19326:141;;;19415:12;;19405:6;:22;;19397:58;;;;-1:-1:-1;;;19397:58:0;;4568:2:1;19397:58:0;;;4550:21:1;4607:2;4587:18;;;4580:30;4646:25;4626:18;;;4619:53;4689:18;;19397:58:0;4366:347:1;19397:58:0;-1:-1:-1;;;;;19499:18:0;;;;;;:38;;-1:-1:-1;;;;;;19521:16:0;;;;19499:38;19491:72;;;;-1:-1:-1;;;19491:72:0;;4920:2:1;19491:72:0;;;4902:21:1;4959:2;4939:18;;;4932:30;-1:-1:-1;;;4978:18:1;;;4971:51;5039:18;;19491:72:0;4718:345:1;19491:72:0;19591:1;19582:6;:10;19574:60;;;;-1:-1:-1;;;19574:60:0;;5270:2:1;19574:60:0;;;5252:21:1;5309:2;5289:18;;;5282:30;5348:34;5328:18;;;5321:62;-1:-1:-1;;;5399:18:1;;;5392:35;5444:19;;19574:60:0;5068:401:1;19574:60:0;19678:11;;;;;;;;19667:7;;:22;;;;:57;;-1:-1:-1;19708:16:0;;-1:-1:-1;;;19708:16:0;;;;19707:17;19667:57;:95;;;;-1:-1:-1;19749:13:0;;-1:-1:-1;;;;;19741:21:0;;;19749:13;;19741:21;;19667:95;:133;;;;-1:-1:-1;19779:21:0;;-1:-1:-1;;;19779:21:0;;;;19667:133;:165;;;;-1:-1:-1;13385:7:0;13412:6;-1:-1:-1;;;;;19817:15:0;;;13412:6;;19817:15;;19667:165;19650:531;;;19937:4;19888:28;17062:16;;;:7;:16;;;;;;19888:55;;19983:1;19962:20;:22;19958:212;;;20026:12;;20003:20;:35;20000:78;;;-1:-1:-1;20064:12:0;;20000:78;20092:7;:11;;-1:-1:-1;;20092:11:0;;;20118:36;20133:20;20118:14;:36::i;:::-;19857:324;19650:531;-1:-1:-1;;;;;20256:24:0;;20201:12;20256:24;;;:18;:24;;;;;;20216:4;;20201:12;20256:24;;:50;;;;-1:-1:-1;;;;;;20284:22:0;;;;;;:18;:22;;;;;;;;20256:50;20255:69;;;-1:-1:-1;13385:7:0;13412:6;-1:-1:-1;;;;;20311:13:0;;;13412:6;;20311:13;20255:69;20252:258;;;20350:5;20340:15;;20252:258;;;20410:13;;-1:-1:-1;;;;;20402:21:0;;;20410:13;;20402:21;20399:72;;;-1:-1:-1;20451:4:0;20399:72;20487:7;:9;;;;;:7;:9;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;20252:258;20556:48;20571:4;20577:2;20581:6;20589:7;20598:5;20556:14;:48::i;:::-;18969:1645;;18866:1748;;;:::o;1261:206::-;1347:7;1408:12;1400:6;;;;1392:29;;;;-1:-1:-1;;;1392:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;1443:5:0;;;1261:206::o;833:98::-;891:7;918:5;922:1;918;:5;:::i;:::-;911:12;833:98;-1:-1:-1;;;833:98:0:o;20758:1585::-;15575:16;:23;;-1:-1:-1;;;;15575:23:0;-1:-1:-1;;;15575:23:0;;;20897:12:::1;::::0;15575:23;;20912:3:::1;::::0;20874:35:::1;::::0;:20;:35:::1;:::i;:::-;:41;;;;:::i;:::-;20849:66;;20930:22;20983:7;;20975;;:15;20971:43;;;-1:-1:-1::0;21008:6:0::1;::::0;20971:43:::1;21057:14;21047:7;;:24;;;;:::i;:::-;21037:7;:34:::0;14145:42:::1;21109:20;::::0;:7:::1;:20;::::0;;;:37:::1;::::0;21132:14;;21109:37:::1;:::i;:::-;21086:7;:20;::::0;;:60;21202:4:::1;21086:20;21186:22:::0;;;21086:20;21186:22;;;21226:14;;21186:39:::1;::::0;21211:14;;21186:39:::1;:::i;:::-;:54;;;;:::i;:::-;21177:4;21161:22;::::0;;;:7:::1;:22;::::0;;;;:79;;;;21315:17:::1;::::0;21335:3:::1;::::0;21292:40:::1;::::0;:20;:40:::1;:::i;:::-;:46;;;;:::i;:::-;21270:68;;21353:19;21412:3;21398:11;;21375:20;:34;;;;:::i;:::-;:40;;;;:::i;:::-;21353:62;;21430:25;21498:3;21481:14;;21458:20;:37;;;;:::i;:::-;:43;;;;:::i;:::-;21430:71:::0;-1:-1:-1;21582:11:0;21548:31:::1;21568:11:::0;21430:71;21548:31:::1;:::i;:::-;:45;;;;:::i;:::-;21541:4;17035:7:::0;17062:16;;;:7;:16;;;;;;21523:70:::1;21518:187;;;21691:11:::0;21657:31:::1;21677:11:::0;21657:17;:31:::1;:::i;:::-;:45;;;;:::i;:::-;21649:4;17035:7:::0;17062:16;;;:7;:16;;;;;;21613:42:::1;::::0;:17;:42:::1;:::i;:::-;:90;;;;:::i;:::-;21595:108;;21518:187;21721:63;21772:11:::0;21738:31:::1;21758:11:::0;21738:17;:31:::1;:::i;:::-;:45;;;;:::i;:::-;21721:16;:63::i;:::-;21799:17;21819:21;21799:41;;21857:15;21939:11;;21919:17;;21902:14;;:34;;;;:::i;:::-;:48;;;;:::i;:::-;21875:17;::::0;:23:::1;::::0;21895:3:::1;21875:23;:::i;:::-;:76;;;;:::i;:::-;21857:94:::0;-1:-1:-1;21966:13:0::1;22004:3;21982:19;21857:94:::0;21982:9;:19:::1;:::i;:::-;:25;;;;:::i;:::-;21966:41;;22024:15;22100:11;;22080:17;;22063:14;;:34;;;;:::i;:::-;:48;;;;:::i;:::-;22042:11;::::0;:17:::1;::::0;22056:3:::1;22042:17;:::i;:::-;:70;;;;:::i;:::-;22024:88:::0;-1:-1:-1;22127:13:0::1;22165:3;22143:19;22024:88:::0;22143:9;:19:::1;:::i;:::-;:25;;;;:::i;:::-;22127:41:::0;-1:-1:-1;22190:81:0::1;22205:17:::0;22127:41;22225:17:::1;22237:5:::0;22225:9;:17:::1;:::i;:::-;:25;;;;:::i;:::-;22190:81;::::0;;6381:25:1;;;6437:2;6422:18;;6415:34;;;;6465:18;;6458:34;;;6369:2;6354:18;22190:81:0::1;;;;;;;22301:16;::::0;22288:37:::1;::::0;-1:-1:-1;;;;;22301:16:0::1;22319:5:::0;22288:12:::1;:37::i;:::-;-1:-1:-1::0;;15621:16:0;:24;;-1:-1:-1;;;;15621:24:0;;;-1:-1:-1;;;;;;;;;20758:1585:0:o;22837:1274::-;22982:7;22978:1124;;-1:-1:-1;;;;;23025:15:0;;;;;;:7;:15;;;;;;:23;;23041:7;;23025:23;:::i;:::-;-1:-1:-1;;;;;23007:15:0;;;;;;;:7;:15;;;;;;:41;;;;23084:18;;;;;;;:26;;23103:7;;23084:26;:::i;:::-;-1:-1:-1;;;;;23063:18:0;;;;;;;:7;:18;;;;;;;:47;;;;23130:36;;;;;;;;;;23158:7;1645:25:1;;1633:2;1618:18;;1499:177;23130:36:0;;;;;;;;-1:-1:-1;;;;;23186:24:0;;14145:42;23186:24;23183:67;;;23243:7;23235;;:15;;;;:::i;:::-;23225:7;:25;23183:67;22978:1124;;;23278:5;23274:828;;;23301:14;23338:4;23326:11;;23318:7;:19;;;;:::i;:::-;:24;;;;:::i;:::-;23301:41;-1:-1:-1;23357:23:0;23383:14;23301:41;23383:7;:14;:::i;:::-;-1:-1:-1;;;;;23432:15:0;;;;;;:7;:15;;;;;;23357:40;;-1:-1:-1;23432:23:0;;23448:7;;23432:23;:::i;:::-;-1:-1:-1;;;;;23414:15:0;;;;;;;:7;:15;;;;;;:41;;;;23491:18;;;;;;;:34;;23510:15;;23491:34;:::i;:::-;-1:-1:-1;;;;;23470:18:0;;;;;;:7;:18;;;;;;:55;;;;23581:4;23565:22;;;;:29;;23588:6;;23565:29;:::i;:::-;23556:4;23540:22;;;;:7;:22;;;;;;;;;:54;;;;23617:44;1645:25:1;;;-1:-1:-1;;;;;23617:44:0;;;;;;;;;;1618:18:1;23617:44:0;;;;;;;23284:409;;23274:828;;;23716:15;23755:4;23742:12;;23734:7;:20;;;;:::i;:::-;:25;;;;:::i;:::-;23716:43;-1:-1:-1;23774:23:0;23800:15;23716:43;23800:7;:15;:::i;:::-;-1:-1:-1;;;;;23850:15:0;;;;;;:7;:15;;;;;;23774:41;;-1:-1:-1;23850:23:0;;23866:7;;23850:23;:::i;:::-;-1:-1:-1;;;;;23832:15:0;;;;;;;:7;:15;;;;;;:41;;;;23909:18;;;;;;;:34;;23928:15;;23909:34;:::i;:::-;-1:-1:-1;;;;;23888:18:0;;;;;;:7;:18;;;;;;:55;;;;23999:4;23983:22;;;;:30;;24006:7;;23983:30;:::i;:::-;23974:4;23958:22;;;;:7;:22;;;;;;;;;:55;;;;24036:44;1645:25:1;;;-1:-1:-1;;;;;24036:44:0;;;;;;;;;;1618:18:1;24036:44:0;;;;;;;23699:403;;22837:1274;;;;;:::o;22351:474::-;22443:16;;;22457:1;22443:16;;;;;;;;22419:21;;22443:16;;;;;;;;;;-1:-1:-1;22443:16:0;22419:40;;22488:4;22470;22475:1;22470:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;22470:23:0;;;:7;;;;;;;;;;:23;;;;22514:15;;:22;;;-1:-1:-1;;;22514:22:0;;;;:15;;;;;:20;;:22;;;;;22470:7;;22514:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22504:4;22509:1;22504:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;22504:32:0;;;:7;;;;;;;;;:32;22579:15;;22547:62;;22564:4;;22579:15;22597:11;22547:8;:62::i;:::-;22620:15;;:197;;-1:-1:-1;;;22620:197:0;;-1:-1:-1;;;;;22620:15:0;;;;:66;;:197;;22701:11;;22620:15;;22744:4;;22771;;22791:15;;22620:197;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22406:419;22351:474;:::o;20626:122::-;20711:23;;-1:-1:-1;;;;;20711:15:0;;;:23;;;;;20727:6;;20711:23;;;;20727:6;20711:15;:23;;;;;;;;;;;;;;;;;;;;;20626:122;;:::o;14:597: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;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:131::-;-1:-1:-1;;;;;691:31:1;;681:42;;671:70;;737:1;734;727:12;671:70;616:131;:::o;752:315::-;820:6;828;881:2;869:9;860:7;856:23;852:32;849:52;;;897:1;894;887:12;849:52;936:9;923:23;955:31;980:5;955:31;:::i;:::-;1005:5;1057:2;1042:18;;;;1029:32;;-1:-1:-1;;;752:315:1:o;1681:456::-;1758:6;1766;1774;1827:2;1815:9;1806:7;1802:23;1798:32;1795:52;;;1843:1;1840;1833:12;1795:52;1882:9;1869:23;1901:31;1926:5;1901:31;:::i;:::-;1951:5;-1:-1:-1;2008:2:1;1993:18;;1980:32;2021:33;1980:32;2021:33;:::i;:::-;1681:456;;2073:7;;-1:-1:-1;;;2127:2:1;2112:18;;;;2099:32;;1681:456::o;2539:247::-;2598:6;2651:2;2639:9;2630:7;2626:23;2622:32;2619:52;;;2667:1;2664;2657:12;2619:52;2706:9;2693:23;2725:31;2750:5;2725:31;:::i;3015:388::-;3083:6;3091;3144:2;3132:9;3123:7;3119:23;3115:32;3112:52;;;3160:1;3157;3150:12;3112:52;3199:9;3186:23;3218:31;3243:5;3218:31;:::i;:::-;3268:5;-1:-1:-1;3325:2:1;3310:18;;3297:32;3338:33;3297:32;3338:33;:::i;:::-;3390:7;3380:17;;;3015:388;;;;;:::o;3754:127::-;3815:10;3810:3;3806:20;3803:1;3796:31;3846:4;3843:1;3836:15;3870:4;3867:1;3860:15;3886:128;3926:3;3957:1;3953:6;3950:1;3947:13;3944:39;;;3963:18;;:::i;:::-;-1:-1:-1;3999:9:1;;3886:128::o;5474:175::-;5511:3;5555:4;5548:5;5544:16;5584:4;5575:7;5572:17;5569:43;;;5592:18;;:::i;:::-;5641:1;5628:15;;5474:175;-1:-1:-1;;5474:175:1:o;5654:168::-;5694:7;5760:1;5756;5752:6;5748:14;5745:1;5742:21;5737:1;5730:9;5723:17;5719:45;5716:71;;;5767:18;;:::i;:::-;-1:-1:-1;5807:9:1;;5654:168::o;5827:217::-;5867:1;5893;5883:132;;5937:10;5932:3;5928:20;5925:1;5918:31;5972:4;5969:1;5962:15;6000:4;5997:1;5990:15;5883:132;-1:-1:-1;6029:9:1;;5827:217::o;6049:125::-;6089:4;6117:1;6114;6111:8;6108:34;;;6122:18;;:::i;:::-;-1:-1:-1;6159:9:1;;6049:125::o;6635:127::-;6696:10;6691:3;6687:20;6684:1;6677:31;6727:4;6724:1;6717:15;6751:4;6748:1;6741:15;6767:251;6837:6;6890:2;6878:9;6869:7;6865:23;6861:32;6858:52;;;6906:1;6903;6896:12;6858:52;6938:9;6932:16;6957:31;6982:5;6957:31;:::i;7023:980::-;7285:4;7333:3;7322:9;7318:19;7364:6;7353:9;7346:25;7390:2;7428:6;7423:2;7412:9;7408:18;7401:34;7471:3;7466:2;7455:9;7451:18;7444:31;7495:6;7530;7524:13;7561:6;7553;7546:22;7599:3;7588:9;7584:19;7577:26;;7638:2;7630:6;7626:15;7612:29;;7659:1;7669:195;7683:6;7680:1;7677:13;7669:195;;;7748:13;;-1:-1:-1;;;;;7744:39:1;7732:52;;7839:15;;;;7804:12;;;;7780:1;7698:9;7669:195;;;-1:-1:-1;;;;;;;7920:32:1;;;;7915:2;7900:18;;7893:60;-1:-1:-1;;;7984:3:1;7969:19;7962:35;7881:3;7023:980;-1:-1:-1;;;7023:980:1:o
Swarm Source
ipfs://16c8c21d6233b5433b012d32a88cb0f5710a61d452f16efa7838b1229d2874c6
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.