ERC-20
Overview
Max Total Supply
988,167.818763 bLINQ
Holders
15
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 6 Decimals)
Balance
18,528.794763 bLINQValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
BurnLINQ
Compiler Version
v0.8.20+commit.a1b79de6
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-08-28 */ /* 🔥 Introducing Burn LINQ - Ignite Your Investments! 🔥 🚀 Join the revolution of decentralized finance with Burn LINQ ($bLINQ)! 🔥 Tokenomics: - 1% Burn of $bLINQ on every transaction - 1% Automatic Liquidity Pool (LP) generation - 3% Burn of $LINQ on every transaction 📢 Telegram: https://t.me/BurnLINQ */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.4; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } 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) { 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; } } library Address { function isContract(address account) internal view returns (bool) { bytes32 codehash; bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470; // solhint-disable-next-line no-inline-assembly assembly { codehash := extcodehash(account) } return (codehash != accountHash && codehash != 0x0); } function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); // solhint-disable-next-line avoid-low-level-calls, avoid-call-value (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"); return _functionCallWithValue(target, data, value, errorMessage); } function _functionCallWithValue(address target, bytes memory data, uint256 weiValue, string memory errorMessage) private returns (bytes memory) { require(isContract(target), "Address: call to non-contract"); // solhint-disable-next-line avoid-low-level-calls (bool success, bytes memory returndata) = target.call{ value: weiValue }(data); if (success) { return returndata; } else { // Look for revert reason and bubble it up if present if (returndata.length > 0) { assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } } contract Ownable is Context { address private _owner; address private _previousOwner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } 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 swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function swapExactETHForTokensSupportingFeeOnTransferTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable; function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns (uint256 amountToken, uint256 amountETH, uint256 liquidity); 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); } contract BurnLINQ is Context, IERC20, Ownable { using SafeMath for uint256; using Address for address; string private constant _name = "Burn LINQ"; string private constant _symbol = "bLINQ"; uint8 private constant _decimals = 6; mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFee; uint256 public _tTotal = 1000 * 1e3 * 1e6; //1,000,000 uint256 public _maxWalletAmount = 50 * 1e3 * 1e6; //2% uint256 public j_maxtxn = 20 * 1e3 * 1e6; //2% uint256 public swapAmount = 7 * 1e2 * 1e6; //.07% uint256 private buyLINQUpperLimit = 200 * 1e14; // 0.01 // fees uint256 public j_liqBuy = 1; uint256 public j_burnBuy = 1; uint256 public j_linqBuy = 3; uint256 public j_jeetBuy = 0; uint256 public j_liqSell = 1; uint256 public j_burnSell = 1; uint256 public j_linqSell = 3; uint256 public j_jeetSell = 10; uint256 private j_previousLiqFee = j_liqFee; uint256 private j_previousBurnFee = j_burnFee; uint256 private j_previouslinqFee = j_linqFee; uint256 private j_previousJeetTax = j_jeetTax; uint256 private j_liqFee; uint256 private j_burnFee; uint256 private j_linqFee; uint256 private j_jeetTax; uint256 public _totalBurned; struct FeeBreakdown { uint256 tLiq; uint256 tBurn; uint256 tLINQ; uint256 tJeet; uint256 tAmount; } mapping(address => bool) private bots; address payable private linqburnWallet = payable(0xDF57EFa804513B76f9d259C27101629027073C2b); address payable public dead = payable(0x000000000000000000000000000000000000dEaD); address LINQ = 0x3e34eabF5858a126cb583107E643080cEE20cA64; IUniswapV2Router02 public uniswapV2Router; address public uniswapV2Pair; bool private swapping = false; bool public burnMode = false; modifier lockSwap { swapping = true; _; swapping = false; } constructor() { IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Router = _uniswapV2Router; uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH()); _balances[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[linqburnWallet] = true; _isExcludedFromFee[dead] = true; _isExcludedFromFee[address(this)] = true; emit Transfer(address(0), _msgSender(), _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 _balances[account]; } function transfer(address recipient, uint256 amount) external override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) external view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) external override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) { _transfer(sender, recipient, amount); _approve(sender,_msgSender(),_allowances[sender][_msgSender()].sub(amount,"ERC20: transfer amount exceeds allowance")); return true; } function totalBurned() public view returns (uint256) { return _totalBurned; } function burning(address _account, uint _amount) private { require( _amount <= balanceOf(_account)); _balances[_account] = _balances[_account].sub(_amount); _tTotal = _tTotal.sub(_amount); _totalBurned = _totalBurned.add(_amount); emit Transfer(_account, address(0), _amount); } function removeAllFee() private { if (j_burnFee == 0 && j_liqFee == 0 && j_linqFee == 0 && j_jeetTax == 0) return; j_previousBurnFee = j_burnFee; j_previousLiqFee = j_liqFee; j_previouslinqFee = j_linqFee; j_previousJeetTax = j_jeetTax; j_burnFee = 0; j_liqFee = 0; j_linqFee = 0; j_jeetTax = 0; } function restoreAllFee() private { j_liqFee = j_previousLiqFee; j_burnFee = j_previousBurnFee; j_linqFee = j_previouslinqFee; j_jeetTax = j_previousJeetTax; } function removeJeetTax() external { require(_msgSender() == linqburnWallet); j_jeetSell = 0; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); require(!bots[from] && !bots[to]); bool takeFee = true; if (from != owner() && to != owner() && from != address(this) && to != address(this)) { if (from == uniswapV2Pair && to != address(uniswapV2Router) && ((!_isExcludedFromFee[from] || !_isExcludedFromFee[to]))) { require(balanceOf(to).add(amount) <= _maxWalletAmount, "You are being greedy. Exceeding Max Wallet."); require(amount <= j_maxtxn, "Slow down buddy...there is a max transaction"); } if (from == uniswapV2Pair && to != address(uniswapV2Router) && !bots[to] && !bots[from]) { j_liqFee = j_liqBuy; j_burnFee = j_burnBuy; j_linqFee = j_linqBuy; j_jeetTax = j_jeetBuy; } if (to == uniswapV2Pair && from != address(uniswapV2Router) && !bots[to] && !bots[from]) { j_liqFee = j_liqSell; j_burnFee = j_burnSell; j_linqFee = j_linqSell; j_jeetTax = j_jeetSell; } if (!swapping && from != uniswapV2Pair) { uint256 contractTokenBalance = balanceOf(address(this)); if (contractTokenBalance > swapAmount) { swapAndLiquify(contractTokenBalance); } uint256 contractETHBalance = address(this).balance; if (!burnMode && (contractETHBalance > 0)) { sendETHToFee(address(this).balance); } else if (burnMode && (contractETHBalance > buyLINQUpperLimit)) { uint256 buyAmount = (contractETHBalance.div(2)); buyLINQ(buyAmount); } } } if (_isExcludedFromFee[from] || _isExcludedFromFee[to]) { takeFee = false; } _transferAgain(from, to, amount, takeFee); restoreAllFee(); } function setMaxTxn(uint256 maxTransaction) external { require(maxTransaction >= 10 * 1e3 * 1e6,"not today Zurg"); require(_msgSender() == linqburnWallet); j_maxtxn = maxTransaction; } function swapTokensForEth(uint256 tokenAmount) private lockSwap { 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 swapETHForTokens(uint256 amount) private { // generate the uniswap pair path of token -> weth address[] memory path = new address[](2); path[0] = uniswapV2Router.WETH(); path[1] = address(LINQ); // make the swap uniswapV2Router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}( 0, // accept any amount of Tokens path, dead, // Burn address block.timestamp ); } function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private { _approve(address(this), address(uniswapV2Router), tokenAmount); // add the liquidity uniswapV2Router.addLiquidityETH{value: ethAmount}( address(this), tokenAmount, 0, // slippage is unavoidable 0, // slippage is unavoidable linqburnWallet, block.timestamp ); } function swapAndLiquify(uint256 contractTokenBalance) private lockSwap { uint256 autoLPamount = j_liqFee.mul(contractTokenBalance).div(j_burnFee.add(j_linqFee).add(j_jeetTax).add(j_liqFee)); uint256 half = autoLPamount.div(2); uint256 otherHalf = contractTokenBalance.sub(half); uint256 initialBalance = address(this).balance; swapTokensForEth(otherHalf); uint256 newBalance = ((address(this).balance.sub(initialBalance)).mul(half)).div(otherHalf); addLiquidity(half, newBalance); } function sendETHToFee(uint256 amount) private { linqburnWallet.transfer(amount); } function manualSwap() external { require(_msgSender() == linqburnWallet); uint256 contractBalance = balanceOf(address(this)); if (contractBalance > 0) { swapTokensForEth(contractBalance); } } function manualSend() external { require(_msgSender() == linqburnWallet); uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) { sendETHToFee(contractETHBalance); } } function _transferAgain(address sender, address recipient, uint256 amount, bool takeFee) private { if (!takeFee) { removeAllFee(); } FeeBreakdown memory fees; fees.tBurn = amount.mul(j_burnFee).div(100); fees.tLiq = amount.mul(j_liqFee).div(100); fees.tLINQ = amount.mul(j_linqFee).div(100); fees.tJeet = amount.mul(j_jeetTax).div(100); fees.tAmount = amount.sub(fees.tLINQ).sub(fees.tJeet).sub(fees.tBurn).sub(fees.tLiq); uint256 amountPreBurn = amount.sub(fees.tBurn); burning(sender, fees.tBurn); _balances[sender] = _balances[sender].sub(amountPreBurn); _balances[recipient] = _balances[recipient].add(fees.tAmount); _balances[address(this)] = _balances[address(this)].add(fees.tLINQ).add(fees.tJeet).add(fees.tBurn.add(fees.tLiq)); if(burnMode && sender != uniswapV2Pair && sender != address(this) && sender != address(uniswapV2Router) && (recipient == address(uniswapV2Router) || recipient == uniswapV2Pair)) { burning(uniswapV2Pair, fees.tBurn); } emit Transfer(sender, recipient, fees.tAmount); restoreAllFee(); } receive() external payable {} function setMaxWalletAmount(uint256 maxWalletAmount) external { require(_msgSender() == linqburnWallet); require(maxWalletAmount > _tTotal.div(200), "Amount must be greater than 0.5% of supply"); _maxWalletAmount = maxWalletAmount; } function setSwapAmount(uint256 _swapAmount) external { require(_msgSender() == linqburnWallet); swapAmount = _swapAmount; } function turnOnTheBurn() public onlyOwner { burnMode = true; } function buyLINQ(uint256 amount) private { if (amount > 0) { swapETHForTokens(amount); } } function setBuyLINQRate(uint256 buyLINQToken) external { require(_msgSender() == linqburnWallet); buyLINQUpperLimit = buyLINQToken; } }
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":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":"_maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_tTotal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalBurned","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"burnMode","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dead","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"j_burnBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_burnSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_jeetBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_jeetSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_linqBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_linqSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_liqBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_liqSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_maxtxn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwap","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":"removeJeetTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"buyLINQToken","type":"uint256"}],"name":"setBuyLINQRate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTransaction","type":"uint256"}],"name":"setMaxTxn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletAmount","type":"uint256"}],"name":"setMaxWalletAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_swapAmount","type":"uint256"}],"name":"setSwapAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAmount","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":"totalBurned","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"turnOnTheBurn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405264e8d4a51000600555640ba43b74006006556404a817c8006007556329b9270060085566470de4df8200006009556001600a818155600b8290556003600c8190555f600d55600e839055600f92909255601091909155601155601654601255601754601355601854601455601954601555601c80546001600160a01b031990811673df57efa804513b76f9d259c27101629027073c2b17909155601d8054821661dead179055601e8054909116733e34eabf5858a126cb583107e643080cee20ca641790556020805461ffff60a01b19169055348015620000e3575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601f80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b81529051829163c45a01559160048083019260209291908290030181865afa15801562000188573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001ae9190620003cb565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001fa573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002209190620003cb565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156200026b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002919190620003cb565b602080546001600160a01b0319166001600160a01b039290921691909117905560055460025f620002bf3390565b6001600160a01b03166001600160a01b031681526020019081526020015f2081905550600160045f620002f7620003bd60201b60201c565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff19968716179055601c54821681526004909352818320805485166001908117909155601d549091168352818320805485168217905530835291208054909216179055620003673390565b6001600160a01b03165f6001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600554604051620003ae91815260200190565b60405180910390a350620003fa565b5f546001600160a01b031690565b5f60208284031215620003dc575f80fd5b81516001600160a01b0381168114620003f3575f80fd5b9392505050565b611e8d80620004085f395ff3fe608060405260043610610220575f3560e01c80636c0a24eb1161011e578063d3e6cee0116100a8578063e632313c1161006d578063e632313c1461060e578063f2fde38b1461062d578063f42938901461064c578063fc588c0414610660578063fd01bd4c1461067f575f80fd5b8063d3e6cee014610577578063d89135cd1461058c578063d9f7e4df146105a0578063dc903ba1146105b5578063dd62ed3e146105ca575f80fd5b80638da5cb5b116100ee5780638da5cb5b146104da5780638ea78153146104f657806395d89b4114610516578063a9059cbb14610543578063af465a2714610562575f80fd5b80636c0a24eb1461046857806370a082311461047d578063715018a6146104b15780638a03dd73146104c5575f80fd5b806327a14fc2116101aa57806351bc3c851161016f57806351bc3c85146103f85780635c035ef61461040c5780635dbc2fe11461042b57806363a640ff1461043f578063653092fd14610454575f80fd5b806327a14fc2146103695780632e8fa8211461038a578063313ce5671461039f57806336cf7c87146103ba57806349bd5a5e146103d9575f80fd5b806318160ddd116101f057806318160ddd146102f75780631cc390201461030b578063233296f01461032057806323b872dd1461033557806323bbf9e714610354575f80fd5b806306fdde031461022b578063095ea7b31461026e5780630cdf21871461029d5780631694505e146102c0575f80fd5b3661022757005b5f80fd5b348015610236575f80fd5b506040805180820190915260098152684275726e204c494e5160b81b60208201525b6040516102659190611b4f565b60405180910390f35b348015610279575f80fd5b5061028d610288366004611bae565b610694565b6040519015158152602001610265565b3480156102a8575f80fd5b506102b2600e5481565b604051908152602001610265565b3480156102cb575f80fd5b50601f546102df906001600160a01b031681565b6040516001600160a01b039091168152602001610265565b348015610302575f80fd5b506005546102b2565b348015610316575f80fd5b506102b260105481565b34801561032b575f80fd5b506102b260075481565b348015610340575f80fd5b5061028d61034f366004611bd8565b6106aa565b34801561035f575f80fd5b506102b2600a5481565b348015610374575f80fd5b50610388610383366004611c16565b610711565b005b348015610395575f80fd5b506102b260085481565b3480156103aa575f80fd5b5060405160068152602001610265565b3480156103c5575f80fd5b50601d546102df906001600160a01b031681565b3480156103e4575f80fd5b506020546102df906001600160a01b031681565b348015610403575f80fd5b506103886107a9565b348015610417575f80fd5b50610388610426366004611c16565b6107e9565b348015610436575f80fd5b5061038861080d565b34801561044a575f80fd5b506102b2600d5481565b34801561045f575f80fd5b5061038861084b565b348015610473575f80fd5b506102b260065481565b348015610488575f80fd5b506102b2610497366004611c2d565b6001600160a01b03165f9081526002602052604090205490565b3480156104bc575f80fd5b50610388610870565b3480156104d0575f80fd5b506102b2600c5481565b3480156104e5575f80fd5b505f546001600160a01b03166102df565b348015610501575f80fd5b5060205461028d90600160a81b900460ff1681565b348015610521575f80fd5b50604080518082019091526005815264624c494e5160d81b6020820152610258565b34801561054e575f80fd5b5061028d61055d366004611bae565b6108e1565b34801561056d575f80fd5b506102b260055481565b348015610582575f80fd5b506102b260115481565b348015610597575f80fd5b50601a546102b2565b3480156105ab575f80fd5b506102b2600f5481565b3480156105c0575f80fd5b506102b2600b5481565b3480156105d5575f80fd5b506102b26105e4366004611c48565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b348015610619575f80fd5b50610388610628366004611c16565b6108ed565b348015610638575f80fd5b50610388610647366004611c2d565b610911565b348015610657575f80fd5b506103886109a8565b34801561066b575f80fd5b5061038861067a366004611c16565b6109d7565b34801561068a575f80fd5b506102b2601a5481565b5f6106a0338484610a41565b5060015b92915050565b5f6106b6848484610b64565b610707843361070285604051806060016040528060288152602001611e30602891396001600160a01b038a165f90815260036020908152604080832033845290915290205491906110fb565b610a41565b5060019392505050565b601c546001600160a01b0316336001600160a01b031614610730575f80fd5b60055461073e9060c8611133565b81116107a45760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d7573742062652067726561746572207468616e20302e3525604482015269206f6620737570706c7960b01b60648201526084015b60405180910390fd5b600655565b601c546001600160a01b0316336001600160a01b0316146107c8575f80fd5b305f9081526002602052604090205480156107e6576107e68161117b565b50565b601c546001600160a01b0316336001600160a01b031614610808575f80fd5b600955565b5f546001600160a01b031633146108365760405162461bcd60e51b815260040161079b90611c7f565b6020805460ff60a81b1916600160a81b179055565b601c546001600160a01b0316336001600160a01b03161461086a575f80fd5b5f601155565b5f546001600160a01b031633146108995760405162461bcd60e51b815260040161079b90611c7f565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f6106a0338484610b64565b601c546001600160a01b0316336001600160a01b03161461090c575f80fd5b600855565b5f546001600160a01b0316331461093a5760405162461bcd60e51b815260040161079b90611c7f565b6001600160a01b03811661099f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161079b565b6107e6816112ed565b601c546001600160a01b0316336001600160a01b0316146109c7575f80fd5b4780156107e6576107e68161133c565b6402540be400811015610a1d5760405162461bcd60e51b815260206004820152600e60248201526d6e6f7420746f646179205a75726760901b604482015260640161079b565b601c546001600160a01b0316336001600160a01b031614610a3c575f80fd5b600755565b6001600160a01b038316610aa35760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161079b565b6001600160a01b038216610b045760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161079b565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610bc85760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161079b565b6001600160a01b038216610c2a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161079b565b5f8111610c8b5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161079b565b6001600160a01b0383165f908152601b602052604090205460ff16158015610ccb57506001600160a01b0382165f908152601b602052604090205460ff16155b610cd3575f80fd5b6001610ce65f546001600160a01b031690565b6001600160a01b0316846001600160a01b031614158015610d1457505f546001600160a01b03848116911614155b8015610d2957506001600160a01b0384163014155b8015610d3e57506001600160a01b0383163014155b15611087576020546001600160a01b038581169116148015610d6e5750601f546001600160a01b03848116911614155b8015610db457506001600160a01b0384165f9081526004602052604090205460ff161580610db457506001600160a01b0383165f9081526004602052604090205460ff16155b15610ead57600654610de483610dde866001600160a01b03165f9081526002602052604090205490565b90611377565b1115610e465760405162461bcd60e51b815260206004820152602b60248201527f596f7520617265206265696e67206772656564792e20457863656564696e672060448201526a26b0bc102bb0b63632ba1760a91b606482015260840161079b565b600754821115610ead5760405162461bcd60e51b815260206004820152602c60248201527f536c6f7720646f776e2062756464792e2e2e74686572652069732061206d617860448201526b103a3930b739b0b1ba34b7b760a11b606482015260840161079b565b6020546001600160a01b038581169116148015610ed85750601f546001600160a01b03848116911614155b8015610efc57506001600160a01b0383165f908152601b602052604090205460ff16155b8015610f2057506001600160a01b0384165f908152601b602052604090205460ff16155b15610f3e57600a54601655600b54601755600c54601855600d546019555b6020546001600160a01b038481169116148015610f695750601f546001600160a01b03858116911614155b8015610f8d57506001600160a01b0383165f908152601b602052604090205460ff16155b8015610fb157506001600160a01b0384165f908152601b602052604090205460ff16155b15610fcf57600e54601655600f546017556010546018556011546019555b602054600160a01b900460ff16158015610ff757506020546001600160a01b03858116911614155b1561108757305f9081526002602052604090205460085481111561101e5761101e816113d5565b6020544790600160a81b900460ff1615801561103957505f81115b1561104c576110474761133c565b611084565b602054600160a81b900460ff168015611066575060095481115b15611084575f611077826002611133565b90506110828161146b565b505b50505b6001600160a01b0384165f9081526004602052604090205460ff16806110c457506001600160a01b0383165f9081526004602052604090205460ff165b156110cc57505f5b6110d88484848461147a565b6110f5601254601655601354601755601454601855601554601955565b50505050565b5f818484111561111e5760405162461bcd60e51b815260040161079b9190611b4f565b505f61112a8486611cc8565b95945050505050565b5f61117483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061174d565b9392505050565b6020805460ff60a01b1916600160a01b1781556040805160028082526060820183525f93919290918301908036833701905050905030815f815181106111c3576111c3611cdb565b6001600160a01b03928316602091820292909201810191909152601f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561121a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061123e9190611cef565b8160018151811061125157611251611cdb565b6001600160a01b039283166020918202929092010152601f546112779130911684610a41565b601f5460405163791ac94760e01b81526001600160a01b039091169063791ac947906112af9085905f90869030904290600401611d4c565b5f604051808303815f87803b1580156112c6575f80fd5b505af11580156112d8573d5f803e3d5ffd5b50506020805460ff60a01b1916905550505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b601c546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611373573d5f803e3d5ffd5b5050565b5f806113838385611d87565b9050838110156111745760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161079b565b6020805460ff60a01b1916600160a01b1790556016546019546018546017545f9361141f9361140c939192610dde92839190611377565b6016546114199085611779565b90611133565b90505f61142d826002611133565b90505f61143a84836117f7565b9050476114468261117b565b5f61145f836114198661145947876117f7565b90611779565b90506112d88482611838565b80156107e6576107e6816118e9565b8061148757611487611a34565b6114b46040518060a001604052805f81526020015f81526020015f81526020015f81526020015f81525090565b6114ce60646114196017548661177990919063ffffffff16565b60208201526016546114e890606490611419908690611779565b81526018546114ff90606490611419908690611779565b604082015260195461151990606490611419908690611779565b6060820181905281516020830151604084015161154793611541929183919082908a906117f7565b906117f7565b608082015260208101515f9061155e9085906117f7565b905061156e868360200151611a8e565b6001600160a01b0386165f9081526002602052604090205461159090826117f7565b6001600160a01b038088165f90815260026020526040808220939093556080850151918816815291909120546115c591611377565b6001600160a01b0386165f9081526002602090815260409091209190915582519083015161161e916115f79190611377565b6060840151604080860151305f90815260026020529190912054610dde9291839190611377565b305f9081526002602090815260409091209190915554600160a81b900460ff16801561165857506020546001600160a01b03878116911614155b801561166d57506001600160a01b0386163014155b80156116875750601f546001600160a01b03878116911614155b80156116b75750601f546001600160a01b03868116911614806116b757506020546001600160a01b038681169116145b156116d75760208054908301516116d7916001600160a01b031690611a8e565b846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846080015160405161172091815260200190565b60405180910390a3611745601254601655601354601755601454601855601554601955565b505050505050565b5f818361176d5760405162461bcd60e51b815260040161079b9190611b4f565b505f61112a8486611d9a565b5f825f0361178857505f6106a4565b5f6117938385611db9565b9050826117a08583611d9a565b146111745760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161079b565b5f61117483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506110fb565b601f546118509030906001600160a01b031684610a41565b601f54601c5460405163f305d71960e01b8152306004820152602481018590525f6044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af11580156118bd573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906118e29190611dd0565b5050505050565b6040805160028082526060820183525f926020830190803683375050601f54604080516315ab88c960e31b815290519394506001600160a01b039091169263ad5c4648925060048083019260209291908290030181865afa158015611950573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119749190611cef565b815f8151811061198657611986611cdb565b6001600160a01b039283166020918202929092010152601e548251911690829060019081106119b7576119b7611cdb565b6001600160a01b039283166020918202929092010152601f54601d5460405163b6f9de9560e01b81529183169263b6f9de95928692611a02925f928892909116904290600401611dfb565b5f604051808303818588803b158015611a19575f80fd5b505af1158015611a2b573d5f803e3d5ffd5b50505050505050565b601754158015611a445750601654155b8015611a505750601854155b8015611a5c5750601954155b15611a6357565b601780546013556016805460125560188054601455601980546015555f938490559183905582905555565b6001600160a01b0382165f90815260026020526040902054811115611ab1575f80fd5b6001600160a01b0382165f90815260026020526040902054611ad390826117f7565b6001600160a01b0383165f90815260026020526040902055600554611af890826117f7565b600555601a54611b089082611377565b601a556040518181525f906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b5f6020808352835180828501525f5b81811015611b7a57858101830151858201604001528201611b5e565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107e6575f80fd5b5f8060408385031215611bbf575f80fd5b8235611bca81611b9a565b946020939093013593505050565b5f805f60608486031215611bea575f80fd5b8335611bf581611b9a565b92506020840135611c0581611b9a565b929592945050506040919091013590565b5f60208284031215611c26575f80fd5b5035919050565b5f60208284031215611c3d575f80fd5b813561117481611b9a565b5f8060408385031215611c59575f80fd5b8235611c6481611b9a565b91506020830135611c7481611b9a565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b818103818111156106a4576106a4611cb4565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611cff575f80fd5b815161117481611b9a565b5f8151808452602080850194508084015f5b83811015611d415781516001600160a01b031687529582019590820190600101611d1c565b509495945050505050565b85815284602082015260a060408201525f611d6a60a0830186611d0a565b6001600160a01b0394909416606083015250608001529392505050565b808201808211156106a4576106a4611cb4565b5f82611db457634e487b7160e01b5f52601260045260245ffd5b500490565b80820281158282048414176106a4576106a4611cb4565b5f805f60608486031215611de2575f80fd5b8351925060208401519150604084015190509250925092565b848152608060208201525f611e136080830186611d0a565b6001600160a01b0394909416604083015250606001529291505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220deaff2cb6978ea787b529cb3ca425459f425a5c7a4efc018b55a768ffa87d2ff64736f6c63430008140033
Deployed Bytecode
0x608060405260043610610220575f3560e01c80636c0a24eb1161011e578063d3e6cee0116100a8578063e632313c1161006d578063e632313c1461060e578063f2fde38b1461062d578063f42938901461064c578063fc588c0414610660578063fd01bd4c1461067f575f80fd5b8063d3e6cee014610577578063d89135cd1461058c578063d9f7e4df146105a0578063dc903ba1146105b5578063dd62ed3e146105ca575f80fd5b80638da5cb5b116100ee5780638da5cb5b146104da5780638ea78153146104f657806395d89b4114610516578063a9059cbb14610543578063af465a2714610562575f80fd5b80636c0a24eb1461046857806370a082311461047d578063715018a6146104b15780638a03dd73146104c5575f80fd5b806327a14fc2116101aa57806351bc3c851161016f57806351bc3c85146103f85780635c035ef61461040c5780635dbc2fe11461042b57806363a640ff1461043f578063653092fd14610454575f80fd5b806327a14fc2146103695780632e8fa8211461038a578063313ce5671461039f57806336cf7c87146103ba57806349bd5a5e146103d9575f80fd5b806318160ddd116101f057806318160ddd146102f75780631cc390201461030b578063233296f01461032057806323b872dd1461033557806323bbf9e714610354575f80fd5b806306fdde031461022b578063095ea7b31461026e5780630cdf21871461029d5780631694505e146102c0575f80fd5b3661022757005b5f80fd5b348015610236575f80fd5b506040805180820190915260098152684275726e204c494e5160b81b60208201525b6040516102659190611b4f565b60405180910390f35b348015610279575f80fd5b5061028d610288366004611bae565b610694565b6040519015158152602001610265565b3480156102a8575f80fd5b506102b2600e5481565b604051908152602001610265565b3480156102cb575f80fd5b50601f546102df906001600160a01b031681565b6040516001600160a01b039091168152602001610265565b348015610302575f80fd5b506005546102b2565b348015610316575f80fd5b506102b260105481565b34801561032b575f80fd5b506102b260075481565b348015610340575f80fd5b5061028d61034f366004611bd8565b6106aa565b34801561035f575f80fd5b506102b2600a5481565b348015610374575f80fd5b50610388610383366004611c16565b610711565b005b348015610395575f80fd5b506102b260085481565b3480156103aa575f80fd5b5060405160068152602001610265565b3480156103c5575f80fd5b50601d546102df906001600160a01b031681565b3480156103e4575f80fd5b506020546102df906001600160a01b031681565b348015610403575f80fd5b506103886107a9565b348015610417575f80fd5b50610388610426366004611c16565b6107e9565b348015610436575f80fd5b5061038861080d565b34801561044a575f80fd5b506102b2600d5481565b34801561045f575f80fd5b5061038861084b565b348015610473575f80fd5b506102b260065481565b348015610488575f80fd5b506102b2610497366004611c2d565b6001600160a01b03165f9081526002602052604090205490565b3480156104bc575f80fd5b50610388610870565b3480156104d0575f80fd5b506102b2600c5481565b3480156104e5575f80fd5b505f546001600160a01b03166102df565b348015610501575f80fd5b5060205461028d90600160a81b900460ff1681565b348015610521575f80fd5b50604080518082019091526005815264624c494e5160d81b6020820152610258565b34801561054e575f80fd5b5061028d61055d366004611bae565b6108e1565b34801561056d575f80fd5b506102b260055481565b348015610582575f80fd5b506102b260115481565b348015610597575f80fd5b50601a546102b2565b3480156105ab575f80fd5b506102b2600f5481565b3480156105c0575f80fd5b506102b2600b5481565b3480156105d5575f80fd5b506102b26105e4366004611c48565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b348015610619575f80fd5b50610388610628366004611c16565b6108ed565b348015610638575f80fd5b50610388610647366004611c2d565b610911565b348015610657575f80fd5b506103886109a8565b34801561066b575f80fd5b5061038861067a366004611c16565b6109d7565b34801561068a575f80fd5b506102b2601a5481565b5f6106a0338484610a41565b5060015b92915050565b5f6106b6848484610b64565b610707843361070285604051806060016040528060288152602001611e30602891396001600160a01b038a165f90815260036020908152604080832033845290915290205491906110fb565b610a41565b5060019392505050565b601c546001600160a01b0316336001600160a01b031614610730575f80fd5b60055461073e9060c8611133565b81116107a45760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d7573742062652067726561746572207468616e20302e3525604482015269206f6620737570706c7960b01b60648201526084015b60405180910390fd5b600655565b601c546001600160a01b0316336001600160a01b0316146107c8575f80fd5b305f9081526002602052604090205480156107e6576107e68161117b565b50565b601c546001600160a01b0316336001600160a01b031614610808575f80fd5b600955565b5f546001600160a01b031633146108365760405162461bcd60e51b815260040161079b90611c7f565b6020805460ff60a81b1916600160a81b179055565b601c546001600160a01b0316336001600160a01b03161461086a575f80fd5b5f601155565b5f546001600160a01b031633146108995760405162461bcd60e51b815260040161079b90611c7f565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f6106a0338484610b64565b601c546001600160a01b0316336001600160a01b03161461090c575f80fd5b600855565b5f546001600160a01b0316331461093a5760405162461bcd60e51b815260040161079b90611c7f565b6001600160a01b03811661099f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161079b565b6107e6816112ed565b601c546001600160a01b0316336001600160a01b0316146109c7575f80fd5b4780156107e6576107e68161133c565b6402540be400811015610a1d5760405162461bcd60e51b815260206004820152600e60248201526d6e6f7420746f646179205a75726760901b604482015260640161079b565b601c546001600160a01b0316336001600160a01b031614610a3c575f80fd5b600755565b6001600160a01b038316610aa35760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161079b565b6001600160a01b038216610b045760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161079b565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610bc85760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161079b565b6001600160a01b038216610c2a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161079b565b5f8111610c8b5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161079b565b6001600160a01b0383165f908152601b602052604090205460ff16158015610ccb57506001600160a01b0382165f908152601b602052604090205460ff16155b610cd3575f80fd5b6001610ce65f546001600160a01b031690565b6001600160a01b0316846001600160a01b031614158015610d1457505f546001600160a01b03848116911614155b8015610d2957506001600160a01b0384163014155b8015610d3e57506001600160a01b0383163014155b15611087576020546001600160a01b038581169116148015610d6e5750601f546001600160a01b03848116911614155b8015610db457506001600160a01b0384165f9081526004602052604090205460ff161580610db457506001600160a01b0383165f9081526004602052604090205460ff16155b15610ead57600654610de483610dde866001600160a01b03165f9081526002602052604090205490565b90611377565b1115610e465760405162461bcd60e51b815260206004820152602b60248201527f596f7520617265206265696e67206772656564792e20457863656564696e672060448201526a26b0bc102bb0b63632ba1760a91b606482015260840161079b565b600754821115610ead5760405162461bcd60e51b815260206004820152602c60248201527f536c6f7720646f776e2062756464792e2e2e74686572652069732061206d617860448201526b103a3930b739b0b1ba34b7b760a11b606482015260840161079b565b6020546001600160a01b038581169116148015610ed85750601f546001600160a01b03848116911614155b8015610efc57506001600160a01b0383165f908152601b602052604090205460ff16155b8015610f2057506001600160a01b0384165f908152601b602052604090205460ff16155b15610f3e57600a54601655600b54601755600c54601855600d546019555b6020546001600160a01b038481169116148015610f695750601f546001600160a01b03858116911614155b8015610f8d57506001600160a01b0383165f908152601b602052604090205460ff16155b8015610fb157506001600160a01b0384165f908152601b602052604090205460ff16155b15610fcf57600e54601655600f546017556010546018556011546019555b602054600160a01b900460ff16158015610ff757506020546001600160a01b03858116911614155b1561108757305f9081526002602052604090205460085481111561101e5761101e816113d5565b6020544790600160a81b900460ff1615801561103957505f81115b1561104c576110474761133c565b611084565b602054600160a81b900460ff168015611066575060095481115b15611084575f611077826002611133565b90506110828161146b565b505b50505b6001600160a01b0384165f9081526004602052604090205460ff16806110c457506001600160a01b0383165f9081526004602052604090205460ff165b156110cc57505f5b6110d88484848461147a565b6110f5601254601655601354601755601454601855601554601955565b50505050565b5f818484111561111e5760405162461bcd60e51b815260040161079b9190611b4f565b505f61112a8486611cc8565b95945050505050565b5f61117483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061174d565b9392505050565b6020805460ff60a01b1916600160a01b1781556040805160028082526060820183525f93919290918301908036833701905050905030815f815181106111c3576111c3611cdb565b6001600160a01b03928316602091820292909201810191909152601f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561121a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061123e9190611cef565b8160018151811061125157611251611cdb565b6001600160a01b039283166020918202929092010152601f546112779130911684610a41565b601f5460405163791ac94760e01b81526001600160a01b039091169063791ac947906112af9085905f90869030904290600401611d4c565b5f604051808303815f87803b1580156112c6575f80fd5b505af11580156112d8573d5f803e3d5ffd5b50506020805460ff60a01b1916905550505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b601c546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611373573d5f803e3d5ffd5b5050565b5f806113838385611d87565b9050838110156111745760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161079b565b6020805460ff60a01b1916600160a01b1790556016546019546018546017545f9361141f9361140c939192610dde92839190611377565b6016546114199085611779565b90611133565b90505f61142d826002611133565b90505f61143a84836117f7565b9050476114468261117b565b5f61145f836114198661145947876117f7565b90611779565b90506112d88482611838565b80156107e6576107e6816118e9565b8061148757611487611a34565b6114b46040518060a001604052805f81526020015f81526020015f81526020015f81526020015f81525090565b6114ce60646114196017548661177990919063ffffffff16565b60208201526016546114e890606490611419908690611779565b81526018546114ff90606490611419908690611779565b604082015260195461151990606490611419908690611779565b6060820181905281516020830151604084015161154793611541929183919082908a906117f7565b906117f7565b608082015260208101515f9061155e9085906117f7565b905061156e868360200151611a8e565b6001600160a01b0386165f9081526002602052604090205461159090826117f7565b6001600160a01b038088165f90815260026020526040808220939093556080850151918816815291909120546115c591611377565b6001600160a01b0386165f9081526002602090815260409091209190915582519083015161161e916115f79190611377565b6060840151604080860151305f90815260026020529190912054610dde9291839190611377565b305f9081526002602090815260409091209190915554600160a81b900460ff16801561165857506020546001600160a01b03878116911614155b801561166d57506001600160a01b0386163014155b80156116875750601f546001600160a01b03878116911614155b80156116b75750601f546001600160a01b03868116911614806116b757506020546001600160a01b038681169116145b156116d75760208054908301516116d7916001600160a01b031690611a8e565b846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846080015160405161172091815260200190565b60405180910390a3611745601254601655601354601755601454601855601554601955565b505050505050565b5f818361176d5760405162461bcd60e51b815260040161079b9190611b4f565b505f61112a8486611d9a565b5f825f0361178857505f6106a4565b5f6117938385611db9565b9050826117a08583611d9a565b146111745760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161079b565b5f61117483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506110fb565b601f546118509030906001600160a01b031684610a41565b601f54601c5460405163f305d71960e01b8152306004820152602481018590525f6044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af11580156118bd573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906118e29190611dd0565b5050505050565b6040805160028082526060820183525f926020830190803683375050601f54604080516315ab88c960e31b815290519394506001600160a01b039091169263ad5c4648925060048083019260209291908290030181865afa158015611950573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119749190611cef565b815f8151811061198657611986611cdb565b6001600160a01b039283166020918202929092010152601e548251911690829060019081106119b7576119b7611cdb565b6001600160a01b039283166020918202929092010152601f54601d5460405163b6f9de9560e01b81529183169263b6f9de95928692611a02925f928892909116904290600401611dfb565b5f604051808303818588803b158015611a19575f80fd5b505af1158015611a2b573d5f803e3d5ffd5b50505050505050565b601754158015611a445750601654155b8015611a505750601854155b8015611a5c5750601954155b15611a6357565b601780546013556016805460125560188054601455601980546015555f938490559183905582905555565b6001600160a01b0382165f90815260026020526040902054811115611ab1575f80fd5b6001600160a01b0382165f90815260026020526040902054611ad390826117f7565b6001600160a01b0383165f90815260026020526040902055600554611af890826117f7565b600555601a54611b089082611377565b601a556040518181525f906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b5f6020808352835180828501525f5b81811015611b7a57858101830151858201604001528201611b5e565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107e6575f80fd5b5f8060408385031215611bbf575f80fd5b8235611bca81611b9a565b946020939093013593505050565b5f805f60608486031215611bea575f80fd5b8335611bf581611b9a565b92506020840135611c0581611b9a565b929592945050506040919091013590565b5f60208284031215611c26575f80fd5b5035919050565b5f60208284031215611c3d575f80fd5b813561117481611b9a565b5f8060408385031215611c59575f80fd5b8235611c6481611b9a565b91506020830135611c7481611b9a565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b818103818111156106a4576106a4611cb4565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611cff575f80fd5b815161117481611b9a565b5f8151808452602080850194508084015f5b83811015611d415781516001600160a01b031687529582019590820190600101611d1c565b509495945050505050565b85815284602082015260a060408201525f611d6a60a0830186611d0a565b6001600160a01b0394909416606083015250608001529392505050565b808201808211156106a4576106a4611cb4565b5f82611db457634e487b7160e01b5f52601260045260245ffd5b500490565b80820281158282048414176106a4576106a4611cb4565b5f805f60608486031215611de2575f80fd5b8351925060208401519150604084015190509250925092565b848152608060208201525f611e136080830186611d0a565b6001600160a01b0394909416604083015250606001529291505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220deaff2cb6978ea787b529cb3ca425459f425a5c7a4efc018b55a768ffa87d2ff64736f6c63430008140033
Deployed Bytecode Sourcemap
11498:12855:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14240:83;;;;;;;;;;-1:-1:-1;14310:5:0;;;;;;;;;;;;-1:-1:-1;;;14310:5:0;;;;14240:83;;;;;;;:::i;:::-;;;;;;;;15081:163;;;;;;;;;;-1:-1:-1;15081:163:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;15081:163:0;1023:187:1;12392:28:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;12392:28:0;1215:177:1;13371:41:0;;;;;;;;;;-1:-1:-1;13371:41:0;;;;-1:-1:-1;;;;;13371:41:0;;;;;;-1:-1:-1;;;;;1587:32:1;;;1569:51;;1557:2;1542:18;13371:41:0;1397:229:1;14517:95:0;;;;;;;;;;-1:-1:-1;14597:7:0;;14517:95;;12464:29;;;;;;;;;;;;;;;;12067:40;;;;;;;;;;;;;;;;15252:312;;;;;;;;;;-1:-1:-1;15252:312:0;;;;;:::i;:::-;;:::i;12250:27::-;;;;;;;;;;;;;;;;23556:265;;;;;;;;;;-1:-1:-1;23556:265:0;;;;;:::i;:::-;;:::i;:::-;;12119:41;;;;;;;;;;;;;;;;14426:83;;;;;;;;;;-1:-1:-1;14426:83:0;;11751:1;2419:36:1;;2407:2;2392:18;14426:83:0;2277:184:1;13217:81:0;;;;;;;;;;-1:-1:-1;13217:81:0;;;;-1:-1:-1;;;;;13217:81:0;;;13419:28;;;;;;;;;;-1:-1:-1;13419:28:0;;;;-1:-1:-1;;;;;13419:28:0;;;21753:245;;;;;;;;;;;;;:::i;24192:156::-;;;;;;;;;;-1:-1:-1;24192:156:0;;;;;:::i;:::-;;:::i;23983:76::-;;;;;;;;;;;;;:::i;12355:28::-;;;;;;;;;;;;;;;;16613:117;;;;;;;;;;;;;:::i;12007:48::-;;;;;;;;;;;;;;;;14620:119;;;;;;;;;;-1:-1:-1;14620:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;14713:18:0;14686:7;14713:18;;;:9;:18;;;;;;;14620:119;5548:148;;;;;;;;;;;;;:::i;12320:28::-;;;;;;;;;;;;;;;;5334:79;;;;;;;;;;-1:-1:-1;5372:7:0;5399:6;-1:-1:-1;;;;;5399:6:0;5334:79;;13492:28;;;;;;;;;;-1:-1:-1;13492:28:0;;;;-1:-1:-1;;;13492:28:0;;;;;;14331:87;;;;;;;;;;-1:-1:-1;14403:7:0;;;;;;;;;;;;-1:-1:-1;;;14403:7:0;;;;14331:87;;14751:169;;;;;;;;;;-1:-1:-1;14751:169:0;;;;;:::i;:::-;;:::i;11945:41::-;;;;;;;;;;;;;;;;12500:30;;;;;;;;;;;;;;;;15572:91;;;;;;;;;;-1:-1:-1;15643:12:0;;15572:91;;12428:29;;;;;;;;;;;;;;;;12285:28;;;;;;;;;;;;;;;;14928:145;;;;;;;;;;-1:-1:-1;14928:145:0;;;;;:::i;:::-;-1:-1:-1;;;;;15038:18:0;;;15011:7;15038:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;14928:145;23829:146;;;;;;;;;;-1:-1:-1;23829:146:0;;;;;:::i;:::-;;:::i;5708:201::-;;;;;;;;;;-1:-1:-1;5708:201:0;;;;;:::i;:::-;;:::i;22006:247::-;;;;;;;;;;;;;:::i;19468:215::-;;;;;;;;;;-1:-1:-1;19468:215:0;;;;;:::i;:::-;;:::i;12881:27::-;;;;;;;;;;;;;;;;15081:163;15158:4;15175:39;516:10;15198:7;15207:6;15175:8;:39::i;:::-;-1:-1:-1;15232:4:0;15081:163;;;;;:::o;15252:312::-;15352:4;15369:36;15379:6;15387:9;15398:6;15369:9;:36::i;:::-;15416:118;15425:6;516:10;15445:88;15483:6;15445:88;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15445:19:0;;;;;;:11;:19;;;;;;;;516:10;15445:33;;;;;;;;;;:37;:88::i;:::-;15416:8;:118::i;:::-;-1:-1:-1;15552:4:0;15252:312;;;;;:::o;23556:265::-;23653:14;;-1:-1:-1;;;;;23653:14:0;516:10;-1:-1:-1;;;;;23637:30:0;;23629:39;;;;;;23705:7;;:16;;23717:3;23705:11;:16::i;:::-;23687:15;:34;23679:89;;;;-1:-1:-1;;;23679:89:0;;3745:2:1;23679:89:0;;;3727:21:1;3784:2;3764:18;;;3757:30;3823:34;3803:18;;;3796:62;-1:-1:-1;;;3874:18:1;;;3867:40;3924:19;;23679:89:0;;;;;;;;;23779:16;:34;23556:265::o;21753:245::-;21819:14;;-1:-1:-1;;;;;21819:14:0;516:10;-1:-1:-1;;;;;21803:30:0;;21795:39;;;;;;21889:4;21845:23;14713:18;;;:9;:18;;;;;;21910:19;;21906:85;;21946:33;21963:15;21946:16;:33::i;:::-;21784:214;21753:245::o;24192:156::-;24282:14;;-1:-1:-1;;;;;24282:14:0;516:10;-1:-1:-1;;;;;24266:30:0;;24258:39;;;;;;24308:17;:32;24192:156::o;23983:76::-;5461:6;;-1:-1:-1;;;;;5461:6:0;516:10;5461:22;5453:67;;;;-1:-1:-1;;;5453:67:0;;;;;;;:::i;:::-;24036:8:::1;:15:::0;;-1:-1:-1;;;;24036:15:0::1;-1:-1:-1::0;;;24036:15:0::1;::::0;;23983:76::o;16613:117::-;16682:14;;-1:-1:-1;;;;;16682:14:0;516:10;-1:-1:-1;;;;;16666:30:0;;16658:39;;;;;;16721:1;16708:10;:14;16613:117::o;5548:148::-;5461:6;;-1:-1:-1;;;;;5461:6:0;516:10;5461:22;5453:67;;;;-1:-1:-1;;;5453:67:0;;;;;;;:::i;:::-;5655:1:::1;5639:6:::0;;5618:40:::1;::::0;-1:-1:-1;;;;;5639:6:0;;::::1;::::0;5618:40:::1;::::0;5655:1;;5618:40:::1;5686:1;5669:19:::0;;-1:-1:-1;;;;;;5669:19:0::1;::::0;;5548:148::o;14751:169::-;14831:4;14848:42;516:10;14872:9;14883:6;14848:9;:42::i;23829:146::-;23917:14;;-1:-1:-1;;;;;23917:14:0;516:10;-1:-1:-1;;;;;23901:30:0;;23893:39;;;;;;23943:10;:24;23829:146::o;5708:201::-;5461:6;;-1:-1:-1;;;;;5461:6:0;516:10;5461:22;5453:67;;;;-1:-1:-1;;;5453:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;5797:22:0;::::1;5789:73;;;::::0;-1:-1:-1;;;5789:73:0;;4517:2:1;5789:73:0::1;::::0;::::1;4499:21:1::0;4556:2;4536:18;;;4529:30;4595:34;4575:18;;;4568:62;-1:-1:-1;;;4646:18:1;;;4639:36;4692:19;;5789:73:0::1;4315:402:1::0;5789:73:0::1;5873:28;5892:8;5873:18;:28::i;22006:247::-:0;22072:14;;-1:-1:-1;;;;;22072:14:0;516:10;-1:-1:-1;;;;;22056:30:0;;22048:39;;;;;;22127:21;22163:22;;22159:87;;22202:32;22215:18;22202:12;:32::i;19468:215::-;19557:14;19539;:32;;19531:58;;;;-1:-1:-1;;;19531:58:0;;4924:2:1;19531:58:0;;;4906:21:1;4963:2;4943:18;;;4936:30;-1:-1:-1;;;4982:18:1;;;4975:44;5036:18;;19531:58:0;4722:338:1;19531:58:0;19624:14;;-1:-1:-1;;;;;19624:14:0;516:10;-1:-1:-1;;;;;19608:30:0;;19600:39;;;;;;19650:8;:25;19468:215::o;16738:335::-;-1:-1:-1;;;;;16831:19:0;;16823:68;;;;-1:-1:-1;;;16823:68:0;;5267:2:1;16823:68:0;;;5249:21:1;5306:2;5286:18;;;5279:30;5345:34;5325:18;;;5318:62;-1:-1:-1;;;5396:18:1;;;5389:34;5440:19;;16823:68:0;5065:400:1;16823:68:0;-1:-1:-1;;;;;16910:21:0;;16902:68;;;;-1:-1:-1;;;16902:68:0;;5672:2:1;16902:68:0;;;5654:21:1;5711:2;5691:18;;;5684:30;5750:34;5730:18;;;5723:62;-1:-1:-1;;;5801:18:1;;;5794:32;5843:19;;16902:68:0;5470:398:1;16902:68:0;-1:-1:-1;;;;;16981:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;17033:32;;1361:25:1;;;17033:32:0;;1334:18:1;17033:32:0;;;;;;;16738:335;;;:::o;17085:2375::-;-1:-1:-1;;;;;17173:18:0;;17165:68;;;;-1:-1:-1;;;17165:68:0;;6075:2:1;17165:68:0;;;6057:21:1;6114:2;6094:18;;;6087:30;6153:34;6133:18;;;6126:62;-1:-1:-1;;;6204:18:1;;;6197:35;6249:19;;17165:68:0;5873:401:1;17165:68:0;-1:-1:-1;;;;;17252:16:0;;17244:64;;;;-1:-1:-1;;;17244:64:0;;6481:2:1;17244:64:0;;;6463:21:1;6520:2;6500:18;;;6493:30;6559:34;6539:18;;;6532:62;-1:-1:-1;;;6610:18:1;;;6603:33;6653:19;;17244:64:0;6279:399:1;17244:64:0;17336:1;17327:6;:10;17319:64;;;;-1:-1:-1;;;17319:64:0;;6885:2:1;17319:64:0;;;6867:21:1;6924:2;6904:18;;;6897:30;6963:34;6943:18;;;6936:62;-1:-1:-1;;;7014:18:1;;;7007:39;7063:19;;17319:64:0;6683:405:1;17319:64:0;-1:-1:-1;;;;;17403:10:0;;;;;;:4;:10;;;;;;;;17402:11;:24;;;;-1:-1:-1;;;;;;17418:8:0;;;;;;:4;:8;;;;;;;;17417:9;17402:24;17394:33;;;;;;17455:4;17484:7;5372;5399:6;-1:-1:-1;;;;;5399:6:0;;5334:79;17484:7;-1:-1:-1;;;;;17476:15:0;:4;-1:-1:-1;;;;;17476:15:0;;;:32;;;;-1:-1:-1;5372:7:0;5399:6;-1:-1:-1;;;;;17495:13:0;;;5399:6;;17495:13;;17476:32;:57;;;;-1:-1:-1;;;;;;17512:21:0;;17528:4;17512:21;;17476:57;:80;;;;-1:-1:-1;;;;;;17537:19:0;;17551:4;17537:19;;17476:80;17472:1783;;;17587:13;;-1:-1:-1;;;;;17579:21:0;;;17587:13;;17579:21;:55;;;;-1:-1:-1;17618:15:0;;-1:-1:-1;;;;;17604:30:0;;;17618:15;;17604:30;;17579:55;:115;;;;-1:-1:-1;;;;;;17641:24:0;;;;;;:18;:24;;;;;;;;17640:25;;:52;;-1:-1:-1;;;;;;17670:22:0;;;;;;:18;:22;;;;;;;;17669:23;17640:52;17575:351;;;17752:16;;17723:25;17741:6;17723:13;17733:2;-1:-1:-1;;;;;14713:18:0;14686:7;14713:18;;;:9;:18;;;;;;;14620:119;17723:13;:17;;:25::i;:::-;:45;;17715:101;;;;-1:-1:-1;;;17715:101:0;;7295:2:1;17715:101:0;;;7277:21:1;7334:2;7314:18;;;7307:30;7373:34;7353:18;;;7346:62;-1:-1:-1;;;7424:18:1;;;7417:41;7475:19;;17715:101:0;7093:407:1;17715:101:0;17853:8;;17843:6;:18;;17835:75;;;;-1:-1:-1;;;17835:75:0;;7707:2:1;17835:75:0;;;7689:21:1;7746:2;7726:18;;;7719:30;7785:34;7765:18;;;7758:62;-1:-1:-1;;;7836:18:1;;;7829:42;7888:19;;17835:75:0;7505:408:1;17835:75:0;17954:13;;-1:-1:-1;;;;;17946:21:0;;;17954:13;;17946:21;:55;;;;-1:-1:-1;17985:15:0;;-1:-1:-1;;;;;17971:30:0;;;17985:15;;17971:30;;17946:55;:68;;;;-1:-1:-1;;;;;;18006:8:0;;;;;;:4;:8;;;;;;;;18005:9;17946:68;:83;;;;-1:-1:-1;;;;;;18019:10:0;;;;;;:4;:10;;;;;;;;18018:11;17946:83;17942:263;;;18061:8;;18050;:19;18100:9;;18088;:21;18140:9;;18128;:21;18180:9;;18168;:21;17942:263;18247:13;;-1:-1:-1;;;;;18241:19:0;;;18247:13;;18241:19;:55;;;;-1:-1:-1;18280:15:0;;-1:-1:-1;;;;;18264:32:0;;;18280:15;;18264:32;;18241:55;:68;;;;-1:-1:-1;;;;;;18301:8:0;;;;;;:4;:8;;;;;;;;18300:9;18241:68;:83;;;;-1:-1:-1;;;;;;18314:10:0;;;;;;:4;:10;;;;;;;;18313:11;18241:83;18237:267;;;18356:9;;18345:8;:20;18396:10;;18384:9;:22;18437:10;;18425:9;:22;18478:10;;18466:9;:22;18237:267;18536:8;;-1:-1:-1;;;18536:8:0;;;;18535:9;:34;;;;-1:-1:-1;18556:13:0;;-1:-1:-1;;;;;18548:21:0;;;18556:13;;18548:21;;18535:34;18531:713;;;18641:4;18592:28;14713:18;;;:9;:18;;;;;;18695:10;;18672:33;;18668:118;;;18730:36;18745:20;18730:14;:36::i;:::-;18894:8;;18835:21;;-1:-1:-1;;;18894:8:0;;;;18893:9;:37;;;;;18928:1;18907:18;:22;18893:37;18889:320;;;18955:35;18968:21;18955:12;:35::i;:::-;18889:320;;;19020:8;;-1:-1:-1;;;19020:8:0;;;;:52;;;;;19054:17;;19033:18;:38;19020:52;19016:193;;;19101:17;19122:25;:18;19145:1;19122:22;:25::i;:::-;19101:47;;19171:18;19179:9;19171:7;:18::i;:::-;19074:135;19016:193;18571:673;;18531:713;-1:-1:-1;;;;;19271:24:0;;;;;;:18;:24;;;;;;;;;:50;;-1:-1:-1;;;;;;19299:22:0;;;;;;:18;:22;;;;;;;;19271:50;19267:98;;;-1:-1:-1;19348:5:0;19267:98;19385:41;19400:4;19406:2;19410:6;19418:7;19385:14;:41::i;:::-;19437:15;16461:16;;16450:8;:27;16500:17;;16488:9;:29;16540:17;;16528:9;:29;16580:17;;16568:9;:29;16406:199;19437:15;17154:2306;17085:2375;;;:::o;1573:190::-;1659:7;1695:12;1687:6;;;;1679:29;;;;-1:-1:-1;;;1679:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1719:9:0;1731:5;1735:1;1731;:5;:::i;:::-;1719:17;1573:190;-1:-1:-1;;;;;1573:190:0:o;2025:132::-;2083:7;2110:39;2114:1;2117;2110:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2103:46;2025:132;-1:-1:-1;;;2025:132:0:o;19691:404::-;13558:8;:15;;-1:-1:-1;;;;13558:15:0;-1:-1:-1;;;13558:15:0;;;19790:16:::1;::::0;;19804:1:::1;19790:16:::0;;;;;::::1;::::0;;-1:-1:-1;;19790:16:0;;19804:1;;19790:16;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;19790:16:0::1;19766:40;;19835:4;19817;19822:1;19817:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;19817:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;19861:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;19861:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;19817:7;;19861:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19851:4;19856:1;19851:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;19851:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;19926:15:::1;::::0;19894:62:::1;::::0;19911:4:::1;::::0;19926:15:::1;19944:11:::0;19894:8:::1;:62::i;:::-;19967:15;::::0;:120:::1;::::0;-1:-1:-1;;;19967:120:0;;-1:-1:-1;;;;;19967:15:0;;::::1;::::0;:66:::1;::::0;:120:::1;::::0;20034:11;;19967:15:::1;::::0;20050:4;;20064::::1;::::0;20071:15:::1;::::0;19967:120:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;13596:8:0;:16;;-1:-1:-1;;;;13596:16:0;;;-1:-1:-1;;;;19691:404:0:o;5917:191::-;5991:16;6010:6;;-1:-1:-1;;;;;6027:17:0;;;-1:-1:-1;;;;;;6027:17:0;;;;;;6060:40;;6010:6;;;;;;;6060:40;;5991:16;6060:40;5980:128;5917:191;:::o;21649:96::-;21706:14;;:31;;-1:-1:-1;;;;;21706:14:0;;;;:31;;;;;21730:6;;21706:14;:31;:14;:31;21730:6;21706:14;:31;;;;;;;;;;;;;;;;;;;;;21649:96;:::o;1242:179::-;1300:7;;1332:5;1336:1;1332;:5;:::i;:::-;1320:17;;1361:1;1356;:6;;1348:46;;;;-1:-1:-1;;;1348:46:0;;10088:2:1;1348:46:0;;;10070:21:1;10127:2;10107:18;;;10100:30;10166:29;10146:18;;;10139:57;10213:18;;1348:46:0;9886:351:1;21090:551:0;13558:8;:15;;-1:-1:-1;;;;13558:15:0;-1:-1:-1;;;13558:15:0;;;21278:8:::1;::::0;21263:9:::1;::::0;21248::::1;::::0;21234::::1;::::0;13558:15;;21195:93:::1;::::0;21234:53:::1;::::0;21278:8;;21234:39:::1;::::0;;;:9;:13:::1;:24::i;:53::-;21195:8;::::0;:34:::1;::::0;21208:20;21195:12:::1;:34::i;:::-;:38:::0;::::1;:93::i;:::-;21172:116:::0;-1:-1:-1;21299:12:0::1;21315:19;21172:116:::0;21332:1:::1;21315:16;:19::i;:::-;21299:35:::0;-1:-1:-1;21345:17:0::1;21365:30;:20:::0;21299:35;21365:24:::1;:30::i;:::-;21345:50:::0;-1:-1:-1;21431:21:0::1;21463:27;21345:50:::0;21463:16:::1;:27::i;:::-;21501:18;21522:70;21582:9:::0;21523:53:::1;21571:4:::0;21524:41:::1;:21;21550:14:::0;21524:25:::1;:41::i;:::-;21523:47:::0;::::1;:53::i;21522:70::-;21501:91;;21603:30;21616:4;21622:10;21603:12;:30::i;24067:117::-:0;24120:10;;24116:61;;24144:24;24161:6;24144:16;:24::i;22261:1246::-;22374:7;22369:60;;22403:14;:12;:14::i;:::-;22449:24;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22449:24:0;22497:30;22523:3;22497:21;22508:9;;22497:6;:10;;:21;;;;:::i;:30::-;22484:10;;;:43;22561:8;;22550:29;;22575:3;;22550:20;;:6;;:10;:20::i;:29::-;22538:41;;22614:9;;22603:30;;22629:3;;22603:21;;:6;;:10;:21::i;:30::-;22590:10;;;:43;22668:9;;22657:30;;22683:3;;22657:21;;:6;;:10;:21::i;:30::-;22644:10;;;:43;;;22782:9;;22766:10;;;;22734;;;;22723:69;;:54;;22766:10;22723:54;;22644:43;22723:54;;:6;;:10;:22::i;:::-;:26;;:38::i;:69::-;22708:12;;;:84;22840:10;;;;22805:21;;22829:22;;:6;;:10;:22::i;:::-;22805:46;;22862:27;22870:6;22878:4;:10;;;22862:7;:27::i;:::-;-1:-1:-1;;;;;22922:17:0;;;;;;:9;:17;;;;;;:36;;22944:13;22922:21;:36::i;:::-;-1:-1:-1;;;;;22902:17:0;;;;;;;:9;:17;;;;;;:56;;;;23017:12;;;;22992:20;;;;;;;;;;:38;;:24;:38::i;:::-;-1:-1:-1;;;;;22969:20:0;;;;;;:9;:20;;;;;;;;:61;;;;23144:9;;23129:10;;;;23068:87;;23129:25;;:10;:14;:25::i;:::-;23113:10;;;;23097;;;;;23086:4;23068:24;;;;:9;:24;;;;;;;:56;;23113:10;23068:56;;:24;:28;:40::i;:87::-;23059:4;23041:24;;;;:9;:24;;;;;;;;:114;;;;23179:8;-1:-1:-1;;;23179:8:0;;;;:35;;;;-1:-1:-1;23201:13:0;;-1:-1:-1;;;;;23191:23:0;;;23201:13;;23191:23;;23179:35;:62;;;;-1:-1:-1;;;;;;23218:23:0;;23236:4;23218:23;;23179:62;:100;;;;-1:-1:-1;23263:15:0;;-1:-1:-1;;;;;23245:34:0;;;23263:15;;23245:34;;23179:100;:173;;;;-1:-1:-1;23305:15:0;;-1:-1:-1;;;;;23284:37:0;;;23305:15;;23284:37;;:67;;-1:-1:-1;23338:13:0;;-1:-1:-1;;;;;23325:26:0;;;23338:13;;23325:26;23284:67;23176:239;;;23377:13;;;23392:10;;;;23369:34;;-1:-1:-1;;;;;23377:13:0;;23369:7;:34::i;:::-;23449:9;-1:-1:-1;;;;;23432:41:0;23441:6;-1:-1:-1;;;;;23432:41:0;;23460:4;:12;;;23432:41;;;;1361:25:1;;1349:2;1334:18;;1215:177;23432:41:0;;;;;;;;23484:15;16461:16;;16450:8;:27;16500:17;;16488:9;:29;16540:17;;16528:9;:29;16580:17;;16568:9;:29;16406:199;23484:15;22358:1149;;22261:1246;;;;:::o;2165:189::-;2251:7;2286:12;2279:5;2271:28;;;;-1:-1:-1;;;2271:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2310:9:0;2322:5;2326:1;2322;:5;:::i;1771:246::-;1829:7;1853:1;1858;1853:6;1849:47;;-1:-1:-1;1883:1:0;1876:8;;1849:47;1906:9;1918:5;1922:1;1918;:5;:::i;:::-;1906:17;-1:-1:-1;1951:1:0;1942:5;1946:1;1906:17;1942:5;:::i;:::-;:10;1934:56;;;;-1:-1:-1;;;1934:56:0;;10839:2:1;1934:56:0;;;10821:21:1;10878:2;10858:18;;;10851:30;10917:34;10897:18;;;10890:62;-1:-1:-1;;;10968:18:1;;;10961:31;11009:19;;1934:56:0;10637:397:1;1429:136:0;1487:7;1514:43;1518:1;1521;1514:43;;;;;;;;;;;;;;;;;:3;:43::i;20625:455::-;20738:15;;20706:62;;20723:4;;-1:-1:-1;;;;;20738:15:0;20756:11;20706:8;:62::i;:::-;20811:15;;21015:14;;20811:261;;-1:-1:-1;;;20811:261:0;;20883:4;20811:261;;;11388:34:1;11438:18;;;11431:34;;;20811:15:0;11481:18:1;;;11474:34;;;11524:18;;;11517:34;-1:-1:-1;;;;;21015:14:0;;;11567:19:1;;;11560:44;21044:15:0;11620:19:1;;;11613:35;20811:15:0;;;:31;;20850:9;;11322:19:1;;20811:261:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;20625:455;;:::o;20103:514::-;20248:16;;;20262:1;20248:16;;;;;;;;20224:21;;20248:16;;;;;;;;-1:-1:-1;;20285:15:0;;:22;;;-1:-1:-1;;;20285:22:0;;;;20224:40;;-1:-1:-1;;;;;;20285:15:0;;;;:20;;-1:-1:-1;20285:22:0;;;;;;;;;;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20275:4;20280:1;20275:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20275:32:0;;;:7;;;;;;;;;:32;20336:4;;20318:7;;20336:4;;;20318;;20336;;20318:7;;;;;;:::i;:::-;-1:-1:-1;;;;;20318:23:0;;;:7;;;;;;;;;:23;20378:15;;20540:4;;20378:223;;-1:-1:-1;;;20378:223:0;;:15;;;;:66;;20452:6;;20378:223;;:15;;20521:4;;20540;;;;20575:15;;20378:223;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20153:464;20103:514;:::o;16009:385::-;16056:9;;:14;:31;;;;-1:-1:-1;16074:8:0;;:13;16056:31;:49;;;;-1:-1:-1;16091:9:0;;:14;16056:49;:67;;;;-1:-1:-1;16109:9:0;;:14;16056:67;16052:80;;;16009:385::o;16052:80::-;16162:9;;;16142:17;:29;16201:8;;;16182:16;:27;16240:9;;;16220:17;:29;16280:9;;;16260:17;:29;-1:-1:-1;16302:13:0;;;;16326:12;;;;16349:13;;;16373;16009:385::o;15671:330::-;-1:-1:-1;;;;;14713:18:0;;14686:7;14713:18;;;:9;:18;;;;;;15750:7;:30;;15741:40;;;;;;-1:-1:-1;;;;;15814:19:0;;;;;;:9;:19;;;;;;:32;;15838:7;15814:23;:32::i;:::-;-1:-1:-1;;;;;15792:19:0;;;;;;:9;:19;;;;;:54;15867:7;;:20;;15879:7;15867:11;:20::i;:::-;15857:7;:30;15913:12;;:25;;15930:7;15913:16;:25::i;:::-;15898:12;:40;15954:39;;1361:25:1;;;15981:1:0;;-1:-1:-1;;;;;15954:39:0;;;;;1349:2:1;1334:18;15954:39:0;;;;;;;15671:330;;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1631:456::-;1708:6;1716;1724;1777:2;1765:9;1756:7;1752:23;1748:32;1745:52;;;1793:1;1790;1783:12;1745:52;1832:9;1819:23;1851:31;1876:5;1851:31;:::i;:::-;1901:5;-1:-1:-1;1958:2:1;1943:18;;1930:32;1971:33;1930:32;1971:33;:::i;:::-;1631:456;;2023:7;;-1:-1:-1;;;2077:2:1;2062:18;;;;2049:32;;1631:456::o;2092:180::-;2151:6;2204:2;2192:9;2183:7;2179:23;2175:32;2172:52;;;2220:1;2217;2210:12;2172:52;-1:-1:-1;2243:23:1;;2092:180;-1:-1:-1;2092:180:1:o;2898:247::-;2957:6;3010:2;2998:9;2989:7;2985:23;2981:32;2978:52;;;3026:1;3023;3016:12;2978:52;3065:9;3052:23;3084:31;3109:5;3084:31;:::i;3150:388::-;3218:6;3226;3279:2;3267:9;3258:7;3254:23;3250:32;3247:52;;;3295:1;3292;3285:12;3247:52;3334:9;3321:23;3353:31;3378:5;3353:31;:::i;:::-;3403:5;-1:-1:-1;3460:2:1;3445:18;;3432:32;3473:33;3432:32;3473:33;:::i;:::-;3525:7;3515:17;;;3150:388;;;;;:::o;3954:356::-;4156:2;4138:21;;;4175:18;;;4168:30;4234:34;4229:2;4214:18;;4207:62;4301:2;4286:18;;3954:356::o;7918:127::-;7979:10;7974:3;7970:20;7967:1;7960:31;8010:4;8007:1;8000:15;8034:4;8031:1;8024:15;8050:128;8117:9;;;8138:11;;;8135:37;;;8152:18;;:::i;8315:127::-;8376:10;8371:3;8367:20;8364:1;8357:31;8407:4;8404:1;8397:15;8431:4;8428:1;8421:15;8447:251;8517:6;8570:2;8558:9;8549:7;8545:23;8541:32;8538:52;;;8586:1;8583;8576:12;8538:52;8618:9;8612:16;8637:31;8662:5;8637:31;:::i;8703:461::-;8756:3;8794:5;8788:12;8821:6;8816:3;8809:19;8847:4;8876:2;8871:3;8867:12;8860:19;;8913:2;8906:5;8902:14;8934:1;8944:195;8958:6;8955:1;8952:13;8944:195;;;9023:13;;-1:-1:-1;;;;;9019:39:1;9007:52;;9079:12;;;;9114:15;;;;9055:1;8973:9;8944:195;;;-1:-1:-1;9155:3:1;;8703:461;-1:-1:-1;;;;;8703:461:1:o;9169:582::-;9468:6;9457:9;9450:25;9511:6;9506:2;9495:9;9491:18;9484:34;9554:3;9549:2;9538:9;9534:18;9527:31;9431:4;9575:57;9627:3;9616:9;9612:19;9604:6;9575:57;:::i;:::-;-1:-1:-1;;;;;9668:32:1;;;;9663:2;9648:18;;9641:60;-1:-1:-1;9732:3:1;9717:19;9710:35;9567:65;9169:582;-1:-1:-1;;;9169:582:1:o;9756:125::-;9821:9;;;9842:10;;;9839:36;;;9855:18;;:::i;10242:217::-;10282:1;10308;10298:132;;10352:10;10347:3;10343:20;10340:1;10333:31;10387:4;10384:1;10377:15;10415:4;10412:1;10405:15;10298:132;-1:-1:-1;10444:9:1;;10242:217::o;10464:168::-;10537:9;;;10568;;10585:15;;;10579:22;;10565:37;10555:71;;10606:18;;:::i;11659:306::-;11747:6;11755;11763;11816:2;11804:9;11795:7;11791:23;11787:32;11784:52;;;11832:1;11829;11822:12;11784:52;11861:9;11855:16;11845:26;;11911:2;11900:9;11896:18;11890:25;11880:35;;11955:2;11944:9;11940:18;11934:25;11924:35;;11659:306;;;;;:::o;11970:518::-;12249:6;12238:9;12231:25;12292:3;12287:2;12276:9;12272:18;12265:31;12212:4;12313:57;12365:3;12354:9;12350:19;12342:6;12313:57;:::i;:::-;-1:-1:-1;;;;;12406:32:1;;;;12401:2;12386:18;;12379:60;-1:-1:-1;12470:2:1;12455:18;12448:34;12305:65;11970:518;-1:-1:-1;;11970:518:1:o
Swarm Source
ipfs://deaff2cb6978ea787b529cb3ca425459f425a5c7a4efc018b55a768ffa87d2ff
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.