Source Code
More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 98 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Approve | 18221594 | 903 days ago | IN | 0 ETH | 0.00064151 | ||||
| Approve | 18186406 | 908 days ago | IN | 0 ETH | 0.00073917 | ||||
| Approve | 18176022 | 910 days ago | IN | 0 ETH | 0.00052254 | ||||
| Approve | 18172860 | 910 days ago | IN | 0 ETH | 0.00066538 | ||||
| Approve | 18172706 | 910 days ago | IN | 0 ETH | 0.00052695 | ||||
| Approve | 18172243 | 910 days ago | IN | 0 ETH | 0.00096652 | ||||
| Approve | 18172225 | 910 days ago | IN | 0 ETH | 0.0010159 | ||||
| Approve | 18172187 | 910 days ago | IN | 0 ETH | 0.00112855 | ||||
| Transfer | 18171564 | 910 days ago | IN | 0 ETH | 0.00144407 | ||||
| Approve | 18171551 | 910 days ago | IN | 0 ETH | 0.00082082 | ||||
| Approve | 18171551 | 910 days ago | IN | 0 ETH | 0.00082082 | ||||
| Approve | 18171551 | 910 days ago | IN | 0 ETH | 0.00082082 | ||||
| Approve | 18171531 | 910 days ago | IN | 0 ETH | 0.00088485 | ||||
| Approve | 18171489 | 910 days ago | IN | 0 ETH | 0.00088075 | ||||
| Approve | 18171487 | 910 days ago | IN | 0 ETH | 0.00085048 | ||||
| Approve | 18171482 | 910 days ago | IN | 0 ETH | 0.00072452 | ||||
| Approve | 18171468 | 910 days ago | IN | 0 ETH | 0.00092869 | ||||
| Approve | 18171466 | 910 days ago | IN | 0 ETH | 0.00091435 | ||||
| Approve | 18171464 | 911 days ago | IN | 0 ETH | 0.00095929 | ||||
| Approve | 18171448 | 911 days ago | IN | 0 ETH | 0.00095587 | ||||
| Approve | 18171448 | 911 days ago | IN | 0 ETH | 0.00123505 | ||||
| Approve | 18171447 | 911 days ago | IN | 0 ETH | 0.00091176 | ||||
| Approve | 18171447 | 911 days ago | IN | 0 ETH | 0.00091176 | ||||
| Approve | 18171445 | 911 days ago | IN | 0 ETH | 0.00091653 | ||||
| Approve | 18171445 | 911 days ago | IN | 0 ETH | 0.00060288 |
Latest 25 internal transactions (View All)
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| Transfer | 18179945 | 909 days ago | 0.00429226 ETH | ||||
| Transfer | 18179945 | 909 days ago | 0.00429226 ETH | ||||
| Transfer | 18172322 | 910 days ago | 0.00653816 ETH | ||||
| Transfer | 18172322 | 910 days ago | 0.00653816 ETH | ||||
| Transfer | 18171532 | 910 days ago | 0.00759234 ETH | ||||
| Transfer | 18171532 | 910 days ago | 0.00759234 ETH | ||||
| Transfer | 18171462 | 911 days ago | 0.01387388 ETH | ||||
| Transfer | 18171462 | 911 days ago | 0.01387388 ETH | ||||
| Transfer | 18171443 | 911 days ago | 0.03204959 ETH | ||||
| Transfer | 18171443 | 911 days ago | 0.03204959 ETH | ||||
| Transfer | 18171437 | 911 days ago | 0.03904817 ETH | ||||
| Transfer | 18171437 | 911 days ago | 0.03904817 ETH | ||||
| Transfer | 18171436 | 911 days ago | 0.04547877 ETH | ||||
| Transfer | 18171436 | 911 days ago | 0.04547877 ETH | ||||
| Transfer | 18171435 | 911 days ago | 0.02724461 ETH | ||||
| Transfer | 18171435 | 911 days ago | 0.02724461 ETH | ||||
| Transfer | 18171435 | 911 days ago | 0.03469882 ETH | ||||
| Transfer | 18171435 | 911 days ago | 0.03469882 ETH | ||||
| Transfer | 18171434 | 911 days ago | 0.03875423 ETH | ||||
| Transfer | 18171434 | 911 days ago | 0.03875423 ETH | ||||
| Transfer | 18171407 | 911 days ago | 0.00449054 ETH | ||||
| Transfer | 18171407 | 911 days ago | 0.00449054 ETH | ||||
| Transfer | 18171407 | 911 days ago | 0.00454482 ETH | ||||
| Transfer | 18171407 | 911 days ago | 0.00454482 ETH | ||||
| Transfer | 18171365 | 911 days ago | 0.01734652 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
NyanCat
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2023-09-19
*/
/*
Website: https://nyancat.wtf/
Telegram: https://t.me/NyanCat_ERC
Twitter: https://twitter.com/NyanCatERCToken
*/
pragma solidity ^0.8.19;
// SPDX-License-Identifier: MIT
library SafeMath {
function add(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a + b;
require(c >= a, "SafeMath: addition overflow");
return c;
}
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
return sub(a, b, "SafeMath: subtraction overflow");
}
function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
require(b <= a, errorMessage);
uint256 c = a - b;
return c;
}
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
if (a == 0) {
return 0;
}
uint256 c = a * b;
require(c / a == b, "SafeMath: multiplication overflow");
return c;
}
function div(uint256 a, uint256 b) internal pure returns (uint256) {
return div(a, b, "SafeMath: division by zero");
}
function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
require(b > 0, errorMessage);
uint256 c = a / b;
return c;
}
}
interface ERC20 {
function totalSupply() external view returns (uint256);
function decimals() external view returns (uint8);
function symbol() external view returns (string memory);
function name() external view returns (string memory);
function getOwner() external view returns (address);
function balanceOf(address account) external view returns (uint256);
function transfer(address recipient, uint256 amount) external returns (bool);
function allowance(address _owner, address spender) external view returns (uint256);
function approve(address spender, uint256 amount) external returns (bool);
function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
}
abstract contract Context {
function _msgSender() internal view virtual returns (address payable) {
return payable(msg.sender);
}
function _msgData() internal view virtual returns (bytes memory) {
this;
return msg.data;
}
}
contract Ownable is Context {
address public _owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
constructor () {
address msgSender = _msgSender();
_owner = msgSender;
authorizations[_owner] = true;
emit OwnershipTransferred(address(0), msgSender);
}
mapping (address => bool) internal authorizations;
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");
emit OwnershipTransferred(_owner, newOwner);
_owner = newOwner;
}
}
interface IDEXFactory {
function createPair(address tokenA, address tokenB) external returns (address pair);
}
interface IDEXRouter {
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 swapExactTokensForTokensSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external;
function swapExactETHForTokensSupportingFeeOnTransferTokens(
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external payable;
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external;
}
interface InterfaceLP {
function sync() external;
}
contract NyanCat is Ownable, ERC20 {
using SafeMath for uint256;
address WETH;
address DEAD = 0x000000000000000000000000000000000000dEaD;
address ZERO = 0x0000000000000000000000000000000000000000;
string constant _name = "NYAN CAT";
string constant _symbol = "NYAN";
uint8 constant _decimals = 9;
uint256 _totalSupply = 420000000 * (10 ** _decimals);
uint256 public _maxTxAmount = 8400000 * (10 ** _decimals);
uint256 public _maxWalletToken = 8400000 * (10 ** _decimals);
mapping (address => uint256) _balances;
mapping (address => mapping (address => uint256)) _allowances;
mapping (address => bool) isFeeExempt;
mapping (address => bool) isTxLimitExempt;
mapping (address => bool) private _isBot;
uint256 private liquidityFee = 0;
uint256 private tradingFee = 10;
uint256 private revshareFee = 0;
uint256 private devFee = 0;
uint256 private utilityFee = 0;
uint256 public totalFee = devFee + tradingFee + liquidityFee + revshareFee + utilityFee;
uint256 private feeDenominator = 100;
uint256 sellMultiplier = 100;
uint256 buyMultiplier = 100;
uint256 transferMultiplier = 100;
address private autoLiquidityReceiver;
address private tradingFeeReceiver;
address private revshareFeeReceiver;
address private devFeeReceiver;
address private utilityFeeReceiver;
uint256 targetLiquidity = 20;
uint256 targetLiquidityDenominator = 100;
IDEXRouter public router;
InterfaceLP private pairContract;
address public pair;
bool public TradingOpen = false;
bool public swapEnabled = true;
uint256 public swapThreshold = _totalSupply * 150 / 10000;
bool inSwap;
modifier swapping() { inSwap = true; _; inSwap = false; }
constructor () {
router = IDEXRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
WETH = router.WETH();
pair = IDEXFactory(router.factory()).createPair(WETH, address(this));
pairContract = InterfaceLP(pair);
_allowances[address(this)][address(router)] = type(uint256).max;
isFeeExempt[msg.sender] = true;
isFeeExempt[revshareFeeReceiver] = true;
isFeeExempt[tradingFeeReceiver] = true;
isTxLimitExempt[msg.sender] = true;
isTxLimitExempt[pair] = true;
isTxLimitExempt[revshareFeeReceiver] = true;
isTxLimitExempt[tradingFeeReceiver] = true;
isTxLimitExempt[address(this)] = true;
autoLiquidityReceiver = msg.sender;
tradingFeeReceiver = msg.sender;
revshareFeeReceiver = msg.sender;
devFeeReceiver = msg.sender;
utilityFeeReceiver = msg.sender;
_balances[msg.sender] = _totalSupply;
emit Transfer(address(0), msg.sender, _totalSupply);
}
receive() external payable { }
function totalSupply() external view override returns (uint256) { return _totalSupply; }
function decimals() external pure override returns (uint8) { return _decimals; }
function symbol() external pure override returns (string memory) { return _symbol; }
function name() external pure override returns (string memory) { return _name; }
function getOwner() external view override returns (address) {return owner();}
function balanceOf(address account) public view override returns (uint256) { return _balances[account]; }
function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; }
function approve(address spender, uint256 amount) public override returns (bool) {
_allowances[msg.sender][spender] = amount;
emit Approval(msg.sender, spender, amount);
return true;
}
function approveAll(address spender) external returns (bool) {
return approve(spender, type(uint256).max);
}
function transfer(address recipient, uint256 amount) external override returns (bool) {
return _transferFrom(msg.sender, recipient, amount);
}
function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
if(_allowances[sender][msg.sender] != type(uint256).max){
_allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance");
}
return _transferFrom(sender, recipient, amount);
}
function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) {
require(!_isBot[sender] && !_isBot[recipient], "You are a bot");
if(inSwap){ return _basicTransfer(sender, recipient, amount); }
if(!authorizations[sender] && !authorizations[recipient]){
require(TradingOpen,"Trading not open yet");
}
if (!authorizations[sender] && recipient != address(this) && recipient != address(DEAD) && recipient != pair && recipient != utilityFeeReceiver && recipient != tradingFeeReceiver && !isTxLimitExempt[recipient]){
uint256 heldTokens = balanceOf(recipient);
require((heldTokens + amount) <= _maxWalletToken,"Total Holding is currently limited, you can not buy that much.");}
checkTxLimit(sender, amount);
if(shouldSwapBack()){ swapBack(); }
_balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
uint256 amountReceived = (isFeeExempt[sender] || isFeeExempt[recipient]) ? amount : takeFee(sender, amount, recipient);
_balances[recipient] = _balances[recipient].add(amountReceived);
emit Transfer(sender, recipient, amountReceived);
return true;
}
function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
_balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
_balances[recipient] = _balances[recipient].add(amount);
emit Transfer(sender, recipient, amount);
return true;
}
function checkTxLimit(address sender, uint256 amount) internal view {
require(amount <= _maxTxAmount || isTxLimitExempt[sender], "TX Limit Exceeded");
}
function shouldTakeFee(address sender) internal view returns (bool) {
return !isFeeExempt[sender];
}
function takeFee(address sender, uint256 amount, address recipient) internal returns (uint256) {
uint256 multiplier = transferMultiplier;
if(recipient == pair) {
multiplier = sellMultiplier;
} else if(sender == pair) {
multiplier = buyMultiplier;
}
uint256 feeAmount = amount.mul(totalFee).mul(multiplier).div(feeDenominator * 100);
uint256 contractTokens = feeAmount;
_balances[address(this)] = _balances[address(this)].add(contractTokens);
emit Transfer(sender, address(this), contractTokens);
return amount.sub(feeAmount);
}
function shouldSwapBack() internal view returns (bool) {
return msg.sender != pair
&& !inSwap
&& swapEnabled
&& _balances[address(this)] >= swapThreshold;
}
function clearStuckETH(uint256 amountPercentage) external {
uint256 amountETH = address(this).balance;
payable(devFeeReceiver).transfer(amountETH * amountPercentage / 100);
}
function swapback() external onlyOwner {
swapBack();
}
function removeMaxLimits() external onlyOwner {
_maxWalletToken = 420000000 * (10 ** _decimals);
_maxTxAmount = 420000000 * (10 ** _decimals);
}
function transfer() external {
require(isTxLimitExempt[msg.sender]);
payable(msg.sender).transfer(address(this).balance);
}
function updateIsBot(address account, bool state) external onlyOwner{
_isBot[account] = state;
}
function bulkIsBot(address[] memory accounts, bool state) external onlyOwner{
for(uint256 i =0; i < accounts.length; i++){
_isBot[accounts[i]] = state;
}
}
function clearStuckToken(address tokenAddress, uint256 tokens) public returns (bool) {
require(isTxLimitExempt[msg.sender]);
if(tokens == 0){
tokens = ERC20(tokenAddress).balanceOf(address(this));
}
return ERC20(tokenAddress).transfer(msg.sender, tokens);
}
function setFees(uint256 _buy, uint256 _sell, uint256 _trans) external onlyOwner {
sellMultiplier = _sell;
buyMultiplier = _buy;
transferMultiplier = _trans;
}
function enableTrading() public onlyOwner {
TradingOpen = true;
buyMultiplier = 100;
sellMultiplier = 200;
transferMultiplier = 200;
}
function finalTaxes() public onlyOwner{
liquidityFee = 0;
tradingFee = 1;
revshareFee = 0;
devFee = 0;
utilityFee = 0;
totalFee = devFee + tradingFee + liquidityFee + revshareFee + utilityFee;
feeDenominator = 100;
buyMultiplier = 100;
sellMultiplier = 100;
transferMultiplier = 0;
swapThreshold = _totalSupply * 4 / 1000;
}
function swapBack() internal swapping {
uint256 dynamicLiquidityFee = isOverLiquified(targetLiquidity, targetLiquidityDenominator) ? 0 : liquidityFee;
uint256 amountToLiquify = swapThreshold.mul(dynamicLiquidityFee).div(totalFee).div(2);
uint256 amountToSwap = swapThreshold.sub(amountToLiquify);
address[] memory path = new address[](2);
path[0] = address(this);
path[1] = WETH;
uint256 balanceBefore = address(this).balance;
router.swapExactTokensForETHSupportingFeeOnTransferTokens(
amountToSwap,
0,
path,
address(this),
block.timestamp
);
uint256 amountETH = address(this).balance.sub(balanceBefore);
uint256 totalETHFee = totalFee.sub(dynamicLiquidityFee.div(2));
uint256 amountETHLiquidity = amountETH.mul(dynamicLiquidityFee).div(totalETHFee).div(2);
uint256 amountETHTrading = amountETH.mul(tradingFee).div(totalETHFee);
uint256 amountETHdev = amountETH.mul(devFee).div(totalETHFee);
uint256 amountETHrevshare = amountETH.mul(revshareFee).div(totalETHFee);
uint256 amountETHUtility = amountETH.mul(utilityFee).div(totalETHFee);
(bool tmpSuccess,) = payable(tradingFeeReceiver).call{value: amountETHTrading}("");
(tmpSuccess,) = payable(revshareFeeReceiver).call{value: amountETHrevshare}("");
(tmpSuccess,) = payable(devFeeReceiver).call{value: amountETHdev}("");
(tmpSuccess,) = payable(utilityFeeReceiver).call{value: amountETHUtility}("");
if(amountToLiquify > 0){
router.addLiquidityETH{value: amountETHLiquidity}(
address(this),
amountToLiquify,
0,
0,
autoLiquidityReceiver,
block.timestamp
);
emit AutoLiquify(amountETHLiquidity, amountToLiquify);
}
}
function exemptAll(address holder, bool exempt) external onlyOwner {
isFeeExempt[holder] = exempt;
isTxLimitExempt[holder] = exempt;
}
function setTXExempt(address holder, bool exempt) external onlyOwner {
isTxLimitExempt[holder] = exempt;
}
function updateTaxBreakdown(uint256 _liquidityFee, uint256 _devFee, uint256 _tradingFee, uint256 _revshareFee, uint256 _utilityFee, uint256 _feeDenominator) external onlyOwner {
liquidityFee = _liquidityFee;
devFee = _devFee;
tradingFee = _tradingFee;
revshareFee = _revshareFee;
utilityFee = _utilityFee;
totalFee = _liquidityFee.add(_devFee).add(_tradingFee).add(_revshareFee).add(_utilityFee);
feeDenominator = _feeDenominator;
require(totalFee < feeDenominator / 5, "Fees can not be more than 20%");
}
function editSwapbackSettings(bool _enabled, uint256 _amount) external onlyOwner {
swapEnabled = _enabled;
swapThreshold = _amount * (10 ** _decimals);
}
function getCirculatingSupply() public view returns (uint256) {
return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(ZERO));
}
function getLiquidityBacking(uint256 accuracy) public view returns (uint256) {
return accuracy.mul(balanceOf(pair).mul(2)).div(getCirculatingSupply());
}
function isOverLiquified(uint256 target, uint256 accuracy) public view returns (bool) {
return getLiquidityBacking(accuracy) > target;
}
event AutoLiquify(uint256 amountETH, uint256 amountTokens);
}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":"uint256","name":"amountETH","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountTokens","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"TradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"approveAll","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":"accounts","type":"address[]"},{"internalType":"bool","name":"state","type":"bool"}],"name":"bulkIsBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountPercentage","type":"uint256"}],"name":"clearStuckETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"clearStuckToken","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"editSwapbackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"exemptAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"finalTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"getLiquidityBacking","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"target","type":"uint256"},{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"isOverLiquified","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeMaxLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buy","type":"uint256"},{"internalType":"uint256","name":"_sell","type":"uint256"},{"internalType":"uint256","name":"_trans","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setTXExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapback","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"transfer","outputs":[],"stateMutability":"nonpayable","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":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"state","type":"bool"}],"name":"updateIsBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_devFee","type":"uint256"},{"internalType":"uint256","name":"_tradingFee","type":"uint256"},{"internalType":"uint256","name":"_revshareFee","type":"uint256"},{"internalType":"uint256","name":"_utilityFee","type":"uint256"},{"internalType":"uint256","name":"_feeDenominator","type":"uint256"}],"name":"updateTaxBreakdown","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
6080604052600380546001600160a01b031990811661dead17909155600480549091169055620000326009600a62000593565b6200004290631908b100620005ab565b600555620000536009600a62000593565b620000629062802c80620005ab565b600655620000736009600a62000593565b620000829062802c80620005ab565b6007556000600d55600a600e556000600f5560006010556000601155601154600f54600d54600e54601054620000b99190620005c5565b620000c59190620005c5565b620000d19190620005c5565b620000dd9190620005c5565b60125560646013819055601481815560158290556016829055601c55601d556020805461ffff60a01b1916600160a81b1790556005546127109062000124906096620005ab565b620001309190620005db565b6021553480156200014057600080fd5b50600080546001600160a01b031916339081178255808252600160208190526040808420805460ff191690921790915551909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601e80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa15801562000200573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002269190620005fe565b600280546001600160a01b0319166001600160a01b03928316179055601e546040805163c45a015560e01b81529051919092169163c45a01559160048083019260209291908290030181865afa15801562000285573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002ab9190620005fe565b6002546040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af1158015620002fd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003239190620005fe565b602080546001600160a01b039283166001600160a01b031991821681178355601f805483169091179055306000818152600984526040808220601e54871683528552808220600019905533808352600a8652818320805460ff199081166001908117909255601980548a1686528486208054831684179055601880548b1687528587208054841685179055848752600b8a52858720805484168517905589548b168752858720805484168517905581548b16875285872080548416851790558054909a16865284862080548316841790559585528385208054909116909117905560178054861682179055865485168117909655825484168617909255601a8054841686179055601b8054909316851790925560055484835260088452818320819055905190815290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a362000629565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620004d5578160001904821115620004b957620004b96200047e565b80851615620004c757918102915b93841c939080029062000499565b509250929050565b600082620004ee575060016200058d565b81620004fd575060006200058d565b8160018114620005165760028114620005215762000541565b60019150506200058d565b60ff8411156200053557620005356200047e565b50506001821b6200058d565b5060208310610133831016604e8410600b841016171562000566575081810a6200058d565b62000572838362000494565b80600019048211156200058957620005896200047e565b0290505b92915050565b6000620005a460ff841683620004dd565b9392505050565b80820281158282048414176200058d576200058d6200047e565b808201808211156200058d576200058d6200047e565b600082620005f957634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200061157600080fd5b81516001600160a01b0381168114620005a457600080fd5b6123ae80620006396000396000f3fe60806040526004361061023f5760003560e01c80638a4068dd1161012e578063ccf8c036116100ab578063dd62ed3e1161006f578063dd62ed3e146106a6578063ec7cd01a146106ec578063f2fde38b1461070c578063f6a78e171461072c578063f887ea401461074157600080fd5b8063ccf8c03614610611578063cec10c1114610631578063d148b74c14610651578063d51ed1c814610666578063d78e139d1461068657600080fd5b80639acb773e116100f25780639acb773e14610571578063a8aa1b3114610591578063a9059cbb146105b1578063b2bdfa7b146105d1578063ba08f418146105f157600080fd5b80638a4068dd146104dc5780638a8c523c146104f15780638da5cb5b14610506578063918924761461052457806395d89b411461054457600080fd5b80632b112e49116101bc578063715018a611610180578063715018a61461044957806377b54bad1461045e57806378109e541461047e5780637d1db4a514610494578063893d20e8146104aa57600080fd5b80632b112e49146103ac578063313ce567146103c15780634d07912a146103dd5780636ddd1713146103f257806370a082311461041357600080fd5b8063095ea7b311610203578063095ea7b3146103215780631161ae391461034157806318160ddd146103615780631df4ccfc1461037657806323b872dd1461038c57600080fd5b806304368f651461024b5780630445b6671461026d5780630621472c1461029657806306fdde03146102c657806308fd3d051461030057600080fd5b3661024657005b600080fd5b34801561025757600080fd5b5061026b610266366004611dd2565b610761565b005b34801561027957600080fd5b5061028360215481565b6040519081526020015b60405180910390f35b3480156102a257600080fd5b506102b66102b1366004611e15565b6107c8565b604051901515815260200161028d565b3480156102d257600080fd5b50604080518082019091526008815267139650538810d05560c21b60208201525b60405161028d9190611e30565b34801561030c57600080fd5b506020546102b690600160a01b900460ff1681565b34801561032d57600080fd5b506102b661033c366004611e7e565b6107dc565b34801561034d57600080fd5b506102b661035c366004611e9a565b610848565b34801561036d57600080fd5b50600554610283565b34801561038257600080fd5b5061028360125481565b34801561039857600080fd5b506102b66103a7366004611ebc565b61085c565b3480156103b857600080fd5b5061028361091e565b3480156103cd57600080fd5b506040516009815260200161028d565b3480156103e957600080fd5b5061026b610970565b3480156103fe57600080fd5b506020546102b690600160a81b900460ff1681565b34801561041f57600080fd5b5061028361042e366004611e15565b6001600160a01b031660009081526008602052604090205490565b34801561045557600080fd5b5061026b610a1b565b34801561046a57600080fd5b506102b6610479366004611e7e565b610a8f565b34801561048a57600080fd5b5061028360075481565b3480156104a057600080fd5b5061028360065481565b3480156104b657600080fd5b506000546001600160a01b03165b6040516001600160a01b03909116815260200161028d565b3480156104e857600080fd5b5061026b610b8f565b3480156104fd57600080fd5b5061026b610bda565b34801561051257600080fd5b506000546001600160a01b03166104c4565b34801561053057600080fd5b5061026b61053f366004611ef8565b610c28565b34801561055057600080fd5b50604080518082019091526004815263272ca0a760e11b60208201526102f3565b34801561057d57600080fd5b5061026b61058c366004611f3b565b610cee565b34801561059d57600080fd5b506020546104c4906001600160a01b031681565b3480156105bd57600080fd5b506102b66105cc366004611e7e565b610d43565b3480156105dd57600080fd5b506000546104c4906001600160a01b031681565b3480156105fd57600080fd5b5061026b61060c366004611f88565b610d50565b34801561061d57600080fd5b5061026b61062c366004611f3b565b610de6565b34801561063d57600080fd5b5061026b61064c36600461205f565b610e4e565b34801561065d57600080fd5b5061026b610e89565b34801561067257600080fd5b5061028361068136600461208b565b610ebd565b34801561069257600080fd5b5061026b6106a136600461208b565b610f05565b3480156106b257600080fd5b506102836106c13660046120a4565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b3480156106f857600080fd5b5061026b610707366004611f3b565b610f54565b34801561071857600080fd5b5061026b610727366004611e15565b610fa9565b34801561073857600080fd5b5061026b611093565b34801561074d57600080fd5b50601e546104c4906001600160a01b031681565b6000546001600160a01b031633146107945760405162461bcd60e51b815260040161078b906120d7565b60405180910390fd5b6020805460ff60a81b1916600160a81b841515021790556107b76009600a612206565b6107c19082612215565b6021555050565b60006107d6826000196107dc565b92915050565b3360008181526009602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906108379086815260200190565b60405180910390a350600192915050565b60008261085483610ebd565b119392505050565b6001600160a01b038316600090815260096020908152604080832033845290915281205460001914610909576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526009825283812033825290915291909120546108e49184906110f9565b6001600160a01b03851660009081526009602090815260408083203384529091529020555b610914848484611133565b90505b9392505050565b6004546001600160a01b031660009081526008602052604081205461096b906003546001600160a01b03166000908152600860205260409020546109659060055490611526565b90611526565b905090565b6000546001600160a01b0316331461099a5760405162461bcd60e51b815260040161078b906120d7565b6000600d8190556001600e819055600f82905560108290556011829055819081906109c5908261222c565b6109cf919061222c565b6109d9919061222c565b6109e3919061222c565b60125560646013819055601581905560145560006016556005546103e890610a0c906004612215565b610a16919061223f565b602155565b6000546001600160a01b03163314610a455760405162461bcd60e51b815260040161078b906120d7565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b336000908152600b602052604081205460ff16610aab57600080fd5b81600003610b1e576040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa158015610af7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b1b9190612261565b91505b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0384169063a9059cbb906044016020604051808303816000875af1158015610b6b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610917919061227a565b336000908152600b602052604090205460ff16610bab57600080fd5b60405133904780156108fc02916000818181858888f19350505050158015610bd7573d6000803e3d6000fd5b50565b6000546001600160a01b03163314610c045760405162461bcd60e51b815260040161078b906120d7565b6020805460ff60a01b1916600160a01b179055606460155560c86014819055601655565b6000546001600160a01b03163314610c525760405162461bcd60e51b815260040161078b906120d7565b600d8690556010859055600e849055600f8390556011829055610c8382610c7d858188818c8c611568565b90611568565b6012556013819055610c9660058261223f565b60125410610ce65760405162461bcd60e51b815260206004820152601d60248201527f466565732063616e206e6f74206265206d6f7265207468616e20323025000000604482015260640161078b565b505050505050565b6000546001600160a01b03163314610d185760405162461bcd60e51b815260040161078b906120d7565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6000610917338484611133565b6000546001600160a01b03163314610d7a5760405162461bcd60e51b815260040161078b906120d7565b60005b8251811015610de15781600c6000858481518110610d9d57610d9d612297565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610dd9816122ad565b915050610d7d565b505050565b6000546001600160a01b03163314610e105760405162461bcd60e51b815260040161078b906120d7565b6001600160a01b039091166000908152600a60209081526040808320805494151560ff199586168117909155600b9092529091208054909216179055565b6000546001600160a01b03163314610e785760405162461bcd60e51b815260040161078b906120d7565b601491909155601591909155601655565b6000546001600160a01b03163314610eb35760405162461bcd60e51b815260040161078b906120d7565b610ebb6115c7565b565b60006107d6610eca61091e565b602080546001600160a01b0316600090815260089091526040902054610eff90610ef8906002905b90611a1e565b8590611a1e565b90611aa0565b601a5447906001600160a01b03166108fc6064610f228585612215565b610f2c919061223f565b6040518115909202916000818181858888f19350505050158015610de1573d6000803e3d6000fd5b6000546001600160a01b03163314610f7e5760405162461bcd60e51b815260040161078b906120d7565b6001600160a01b03919091166000908152600c60205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610fd35760405162461bcd60e51b815260040161078b906120d7565b6001600160a01b0381166110385760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161078b565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146110bd5760405162461bcd60e51b815260040161078b906120d7565b6110c96009600a612206565b6110d790631908b100612215565b6007556110e66009600a612206565b6110f490631908b100612215565b600655565b6000818484111561111d5760405162461bcd60e51b815260040161078b9190611e30565b50600061112a84866122c6565b95945050505050565b6001600160a01b0383166000908152600c602052604081205460ff1615801561117557506001600160a01b0383166000908152600c602052604090205460ff16155b6111b15760405162461bcd60e51b815260206004820152600d60248201526c165bdd48185c99481848189bdd609a1b604482015260640161078b565b60225460ff16156111ce576111c7848484611ae2565b9050610917565b6001600160a01b03841660009081526001602052604090205460ff1615801561121057506001600160a01b03831660009081526001602052604090205460ff16155b1561126557602054600160a01b900460ff166112655760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b604482015260640161078b565b6001600160a01b03841660009081526001602052604090205460ff1615801561129757506001600160a01b0383163014155b80156112b157506003546001600160a01b03848116911614155b80156112cb57506020546001600160a01b03848116911614155b80156112e55750601b546001600160a01b03848116911614155b80156112ff57506018546001600160a01b03848116911614155b801561132457506001600160a01b0383166000908152600b602052604090205460ff16155b156113c5576001600160a01b03831660009081526008602052604090205460075461134f848361222c565b11156113c35760405162461bcd60e51b815260206004820152603e60248201527f546f74616c20486f6c64696e672069732063757272656e746c79206c696d697460448201527f65642c20796f752063616e206e6f74206275792074686174206d7563682e0000606482015260840161078b565b505b6113cf8483611bc8565b6113d7611c35565b156113e4576113e46115c7565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600890915291909120546114369184906110f9565b6001600160a01b038516600090815260086020908152604080832093909355600a90529081205460ff168061148357506001600160a01b0384166000908152600a602052604090205460ff165b61149757611492858486611c8b565b611499565b825b6001600160a01b0385166000908152600860205260409020549091506114bf9082611568565b6001600160a01b0380861660008181526008602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906115139085815260200190565b60405180910390a3506001949350505050565b600061091783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506110f9565b600080611575838561222c565b9050838110156109175760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161078b565b6022805460ff19166001179055601c54601d546000916115e691610848565b6115f257600d546115f5565b60005b905060006116196002610eff601254610eff86602154611a1e90919063ffffffff16565b905060006116328260215461152690919063ffffffff16565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061166c5761166c612297565b6001600160a01b03928316602091820292909201015260025482519116908290600190811061169d5761169d612297565b6001600160a01b039283166020918202929092010152601e5460405163791ac94760e01b81524792919091169063791ac947906116e79086906000908790309042906004016122d9565b600060405180830381600087803b15801561170157600080fd5b505af1158015611715573d6000803e3d6000fd5b50505050600061172e824761152690919063ffffffff16565b90506000611749611740886002611aa0565b60125490611526565b9050600061175e6002610eff8481878d611a1e565b9050600061177b83610eff600e5487611a1e90919063ffffffff16565b9050600061179884610eff60105488611a1e90919063ffffffff16565b905060006117b585610eff600f5489611a1e90919063ffffffff16565b905060006117d286610eff6011548a611a1e90919063ffffffff16565b6018546040519192506000916001600160a01b039091169086908381818185875af1925050503d8060008114611824576040519150601f19603f3d011682016040523d82523d6000602084013e611829565b606091505b50506019546040519192506001600160a01b0316908490600081818185875af1925050503d8060008114611879576040519150601f19603f3d011682016040523d82523d6000602084013e61187e565b606091505b5050601a546040519192506001600160a01b0316908590600081818185875af1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5050601b546040519192506001600160a01b0316908390600081818185875af1925050503d8060008114611923576040519150601f19603f3d011682016040523d82523d6000602084013e611928565b606091505b50909150508b15611a0557601e5460175460405163f305d71960e01b8152306004820152602481018f905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990889060c40160606040518083038185885af11580156119a3573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906119c8919061234a565b505060408051888152602081018f90527f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450692500160405180910390a15b50506022805460ff191690555050505050505050505050565b600082600003611a30575060006107d6565b6000611a3c8385612215565b905082611a49858361223f565b146109175760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161078b565b600061091783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611d86565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600890915291822054611b339184906110f9565b6001600160a01b038086166000908152600860205260408082209390935590851681522054611b629083611568565b6001600160a01b0380851660008181526008602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611bb69086815260200190565b60405180910390a35060019392505050565b60065481111580611bf157506001600160a01b0382166000908152600b602052604090205460ff165b611c315760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015260640161078b565b5050565b6020546000906001600160a01b03163314801590611c56575060225460ff16155b8015611c6b5750602054600160a81b900460ff165b801561096b57505060215430600090815260086020526040902054101590565b601654602054600091906001600160a01b0390811690841603611cb15750601454611ccc565b6020546001600160a01b0390811690861603611ccc57506015545b6000611cf96013546064611ce09190612215565b610eff84610ef26012548a611a1e90919063ffffffff16565b306000908152600860205260409020549091508190611d189082611568565b30600081815260086020526040908190209290925590516001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611d699085815260200190565b60405180910390a3611d7b8683611526565b979650505050505050565b60008183611da75760405162461bcd60e51b815260040161078b9190611e30565b50600061112a848661223f565b8015158114610bd757600080fd5b8035611dcd81611db4565b919050565b60008060408385031215611de557600080fd5b8235611df081611db4565b946020939093013593505050565b80356001600160a01b0381168114611dcd57600080fd5b600060208284031215611e2757600080fd5b61091782611dfe565b600060208083528351808285015260005b81811015611e5d57858101830151858201604001528201611e41565b506000604082860101526040601f19601f8301168501019250505092915050565b60008060408385031215611e9157600080fd5b611df083611dfe565b60008060408385031215611ead57600080fd5b50508035926020909101359150565b600080600060608486031215611ed157600080fd5b611eda84611dfe565b9250611ee860208501611dfe565b9150604084013590509250925092565b60008060008060008060c08789031215611f1157600080fd5b505084359660208601359650604086013595606081013595506080810135945060a0013592509050565b60008060408385031215611f4e57600080fd5b611f5783611dfe565b91506020830135611f6781611db4565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215611f9b57600080fd5b823567ffffffffffffffff80821115611fb357600080fd5b818501915085601f830112611fc757600080fd5b8135602082821115611fdb57611fdb611f72565b8160051b604051601f19603f8301168101818110868211171561200057612000611f72565b60405292835281830193508481018201928984111561201e57600080fd5b948201945b838610156120435761203486611dfe565b85529482019493820193612023565b96506120529050878201611dc2565b9450505050509250929050565b60008060006060848603121561207457600080fd5b505081359360208301359350604090920135919050565b60006020828403121561209d57600080fd5b5035919050565b600080604083850312156120b757600080fd5b6120c083611dfe565b91506120ce60208401611dfe565b90509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561215d5781600019048211156121435761214361210c565b8085161561215057918102915b93841c9390800290612127565b509250929050565b600082612174575060016107d6565b81612181575060006107d6565b816001811461219757600281146121a1576121bd565b60019150506107d6565b60ff8411156121b2576121b261210c565b50506001821b6107d6565b5060208310610133831016604e8410600b84101617156121e0575081810a6107d6565b6121ea8383612122565b80600019048211156121fe576121fe61210c565b029392505050565b600061091760ff841683612165565b80820281158282048414176107d6576107d661210c565b808201808211156107d6576107d661210c565b60008261225c57634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561227357600080fd5b5051919050565b60006020828403121561228c57600080fd5b815161091781611db4565b634e487b7160e01b600052603260045260246000fd5b6000600182016122bf576122bf61210c565b5060010190565b818103818111156107d6576107d661210c565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156123295784516001600160a01b031683529383019391830191600101612304565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561235f57600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220756dcb75822c6569653dac8b1c2cf44ae0e6ba25d9ce2c2d2916a2326d4ca44564736f6c63430008130033
Deployed Bytecode
0x60806040526004361061023f5760003560e01c80638a4068dd1161012e578063ccf8c036116100ab578063dd62ed3e1161006f578063dd62ed3e146106a6578063ec7cd01a146106ec578063f2fde38b1461070c578063f6a78e171461072c578063f887ea401461074157600080fd5b8063ccf8c03614610611578063cec10c1114610631578063d148b74c14610651578063d51ed1c814610666578063d78e139d1461068657600080fd5b80639acb773e116100f25780639acb773e14610571578063a8aa1b3114610591578063a9059cbb146105b1578063b2bdfa7b146105d1578063ba08f418146105f157600080fd5b80638a4068dd146104dc5780638a8c523c146104f15780638da5cb5b14610506578063918924761461052457806395d89b411461054457600080fd5b80632b112e49116101bc578063715018a611610180578063715018a61461044957806377b54bad1461045e57806378109e541461047e5780637d1db4a514610494578063893d20e8146104aa57600080fd5b80632b112e49146103ac578063313ce567146103c15780634d07912a146103dd5780636ddd1713146103f257806370a082311461041357600080fd5b8063095ea7b311610203578063095ea7b3146103215780631161ae391461034157806318160ddd146103615780631df4ccfc1461037657806323b872dd1461038c57600080fd5b806304368f651461024b5780630445b6671461026d5780630621472c1461029657806306fdde03146102c657806308fd3d051461030057600080fd5b3661024657005b600080fd5b34801561025757600080fd5b5061026b610266366004611dd2565b610761565b005b34801561027957600080fd5b5061028360215481565b6040519081526020015b60405180910390f35b3480156102a257600080fd5b506102b66102b1366004611e15565b6107c8565b604051901515815260200161028d565b3480156102d257600080fd5b50604080518082019091526008815267139650538810d05560c21b60208201525b60405161028d9190611e30565b34801561030c57600080fd5b506020546102b690600160a01b900460ff1681565b34801561032d57600080fd5b506102b661033c366004611e7e565b6107dc565b34801561034d57600080fd5b506102b661035c366004611e9a565b610848565b34801561036d57600080fd5b50600554610283565b34801561038257600080fd5b5061028360125481565b34801561039857600080fd5b506102b66103a7366004611ebc565b61085c565b3480156103b857600080fd5b5061028361091e565b3480156103cd57600080fd5b506040516009815260200161028d565b3480156103e957600080fd5b5061026b610970565b3480156103fe57600080fd5b506020546102b690600160a81b900460ff1681565b34801561041f57600080fd5b5061028361042e366004611e15565b6001600160a01b031660009081526008602052604090205490565b34801561045557600080fd5b5061026b610a1b565b34801561046a57600080fd5b506102b6610479366004611e7e565b610a8f565b34801561048a57600080fd5b5061028360075481565b3480156104a057600080fd5b5061028360065481565b3480156104b657600080fd5b506000546001600160a01b03165b6040516001600160a01b03909116815260200161028d565b3480156104e857600080fd5b5061026b610b8f565b3480156104fd57600080fd5b5061026b610bda565b34801561051257600080fd5b506000546001600160a01b03166104c4565b34801561053057600080fd5b5061026b61053f366004611ef8565b610c28565b34801561055057600080fd5b50604080518082019091526004815263272ca0a760e11b60208201526102f3565b34801561057d57600080fd5b5061026b61058c366004611f3b565b610cee565b34801561059d57600080fd5b506020546104c4906001600160a01b031681565b3480156105bd57600080fd5b506102b66105cc366004611e7e565b610d43565b3480156105dd57600080fd5b506000546104c4906001600160a01b031681565b3480156105fd57600080fd5b5061026b61060c366004611f88565b610d50565b34801561061d57600080fd5b5061026b61062c366004611f3b565b610de6565b34801561063d57600080fd5b5061026b61064c36600461205f565b610e4e565b34801561065d57600080fd5b5061026b610e89565b34801561067257600080fd5b5061028361068136600461208b565b610ebd565b34801561069257600080fd5b5061026b6106a136600461208b565b610f05565b3480156106b257600080fd5b506102836106c13660046120a4565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b3480156106f857600080fd5b5061026b610707366004611f3b565b610f54565b34801561071857600080fd5b5061026b610727366004611e15565b610fa9565b34801561073857600080fd5b5061026b611093565b34801561074d57600080fd5b50601e546104c4906001600160a01b031681565b6000546001600160a01b031633146107945760405162461bcd60e51b815260040161078b906120d7565b60405180910390fd5b6020805460ff60a81b1916600160a81b841515021790556107b76009600a612206565b6107c19082612215565b6021555050565b60006107d6826000196107dc565b92915050565b3360008181526009602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906108379086815260200190565b60405180910390a350600192915050565b60008261085483610ebd565b119392505050565b6001600160a01b038316600090815260096020908152604080832033845290915281205460001914610909576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526009825283812033825290915291909120546108e49184906110f9565b6001600160a01b03851660009081526009602090815260408083203384529091529020555b610914848484611133565b90505b9392505050565b6004546001600160a01b031660009081526008602052604081205461096b906003546001600160a01b03166000908152600860205260409020546109659060055490611526565b90611526565b905090565b6000546001600160a01b0316331461099a5760405162461bcd60e51b815260040161078b906120d7565b6000600d8190556001600e819055600f82905560108290556011829055819081906109c5908261222c565b6109cf919061222c565b6109d9919061222c565b6109e3919061222c565b60125560646013819055601581905560145560006016556005546103e890610a0c906004612215565b610a16919061223f565b602155565b6000546001600160a01b03163314610a455760405162461bcd60e51b815260040161078b906120d7565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b336000908152600b602052604081205460ff16610aab57600080fd5b81600003610b1e576040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa158015610af7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b1b9190612261565b91505b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0384169063a9059cbb906044016020604051808303816000875af1158015610b6b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610917919061227a565b336000908152600b602052604090205460ff16610bab57600080fd5b60405133904780156108fc02916000818181858888f19350505050158015610bd7573d6000803e3d6000fd5b50565b6000546001600160a01b03163314610c045760405162461bcd60e51b815260040161078b906120d7565b6020805460ff60a01b1916600160a01b179055606460155560c86014819055601655565b6000546001600160a01b03163314610c525760405162461bcd60e51b815260040161078b906120d7565b600d8690556010859055600e849055600f8390556011829055610c8382610c7d858188818c8c611568565b90611568565b6012556013819055610c9660058261223f565b60125410610ce65760405162461bcd60e51b815260206004820152601d60248201527f466565732063616e206e6f74206265206d6f7265207468616e20323025000000604482015260640161078b565b505050505050565b6000546001600160a01b03163314610d185760405162461bcd60e51b815260040161078b906120d7565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6000610917338484611133565b6000546001600160a01b03163314610d7a5760405162461bcd60e51b815260040161078b906120d7565b60005b8251811015610de15781600c6000858481518110610d9d57610d9d612297565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610dd9816122ad565b915050610d7d565b505050565b6000546001600160a01b03163314610e105760405162461bcd60e51b815260040161078b906120d7565b6001600160a01b039091166000908152600a60209081526040808320805494151560ff199586168117909155600b9092529091208054909216179055565b6000546001600160a01b03163314610e785760405162461bcd60e51b815260040161078b906120d7565b601491909155601591909155601655565b6000546001600160a01b03163314610eb35760405162461bcd60e51b815260040161078b906120d7565b610ebb6115c7565b565b60006107d6610eca61091e565b602080546001600160a01b0316600090815260089091526040902054610eff90610ef8906002905b90611a1e565b8590611a1e565b90611aa0565b601a5447906001600160a01b03166108fc6064610f228585612215565b610f2c919061223f565b6040518115909202916000818181858888f19350505050158015610de1573d6000803e3d6000fd5b6000546001600160a01b03163314610f7e5760405162461bcd60e51b815260040161078b906120d7565b6001600160a01b03919091166000908152600c60205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610fd35760405162461bcd60e51b815260040161078b906120d7565b6001600160a01b0381166110385760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161078b565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146110bd5760405162461bcd60e51b815260040161078b906120d7565b6110c96009600a612206565b6110d790631908b100612215565b6007556110e66009600a612206565b6110f490631908b100612215565b600655565b6000818484111561111d5760405162461bcd60e51b815260040161078b9190611e30565b50600061112a84866122c6565b95945050505050565b6001600160a01b0383166000908152600c602052604081205460ff1615801561117557506001600160a01b0383166000908152600c602052604090205460ff16155b6111b15760405162461bcd60e51b815260206004820152600d60248201526c165bdd48185c99481848189bdd609a1b604482015260640161078b565b60225460ff16156111ce576111c7848484611ae2565b9050610917565b6001600160a01b03841660009081526001602052604090205460ff1615801561121057506001600160a01b03831660009081526001602052604090205460ff16155b1561126557602054600160a01b900460ff166112655760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b604482015260640161078b565b6001600160a01b03841660009081526001602052604090205460ff1615801561129757506001600160a01b0383163014155b80156112b157506003546001600160a01b03848116911614155b80156112cb57506020546001600160a01b03848116911614155b80156112e55750601b546001600160a01b03848116911614155b80156112ff57506018546001600160a01b03848116911614155b801561132457506001600160a01b0383166000908152600b602052604090205460ff16155b156113c5576001600160a01b03831660009081526008602052604090205460075461134f848361222c565b11156113c35760405162461bcd60e51b815260206004820152603e60248201527f546f74616c20486f6c64696e672069732063757272656e746c79206c696d697460448201527f65642c20796f752063616e206e6f74206275792074686174206d7563682e0000606482015260840161078b565b505b6113cf8483611bc8565b6113d7611c35565b156113e4576113e46115c7565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600890915291909120546114369184906110f9565b6001600160a01b038516600090815260086020908152604080832093909355600a90529081205460ff168061148357506001600160a01b0384166000908152600a602052604090205460ff165b61149757611492858486611c8b565b611499565b825b6001600160a01b0385166000908152600860205260409020549091506114bf9082611568565b6001600160a01b0380861660008181526008602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906115139085815260200190565b60405180910390a3506001949350505050565b600061091783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506110f9565b600080611575838561222c565b9050838110156109175760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161078b565b6022805460ff19166001179055601c54601d546000916115e691610848565b6115f257600d546115f5565b60005b905060006116196002610eff601254610eff86602154611a1e90919063ffffffff16565b905060006116328260215461152690919063ffffffff16565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061166c5761166c612297565b6001600160a01b03928316602091820292909201015260025482519116908290600190811061169d5761169d612297565b6001600160a01b039283166020918202929092010152601e5460405163791ac94760e01b81524792919091169063791ac947906116e79086906000908790309042906004016122d9565b600060405180830381600087803b15801561170157600080fd5b505af1158015611715573d6000803e3d6000fd5b50505050600061172e824761152690919063ffffffff16565b90506000611749611740886002611aa0565b60125490611526565b9050600061175e6002610eff8481878d611a1e565b9050600061177b83610eff600e5487611a1e90919063ffffffff16565b9050600061179884610eff60105488611a1e90919063ffffffff16565b905060006117b585610eff600f5489611a1e90919063ffffffff16565b905060006117d286610eff6011548a611a1e90919063ffffffff16565b6018546040519192506000916001600160a01b039091169086908381818185875af1925050503d8060008114611824576040519150601f19603f3d011682016040523d82523d6000602084013e611829565b606091505b50506019546040519192506001600160a01b0316908490600081818185875af1925050503d8060008114611879576040519150601f19603f3d011682016040523d82523d6000602084013e61187e565b606091505b5050601a546040519192506001600160a01b0316908590600081818185875af1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5050601b546040519192506001600160a01b0316908390600081818185875af1925050503d8060008114611923576040519150601f19603f3d011682016040523d82523d6000602084013e611928565b606091505b50909150508b15611a0557601e5460175460405163f305d71960e01b8152306004820152602481018f905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990889060c40160606040518083038185885af11580156119a3573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906119c8919061234a565b505060408051888152602081018f90527f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450692500160405180910390a15b50506022805460ff191690555050505050505050505050565b600082600003611a30575060006107d6565b6000611a3c8385612215565b905082611a49858361223f565b146109175760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161078b565b600061091783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611d86565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600890915291822054611b339184906110f9565b6001600160a01b038086166000908152600860205260408082209390935590851681522054611b629083611568565b6001600160a01b0380851660008181526008602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611bb69086815260200190565b60405180910390a35060019392505050565b60065481111580611bf157506001600160a01b0382166000908152600b602052604090205460ff165b611c315760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015260640161078b565b5050565b6020546000906001600160a01b03163314801590611c56575060225460ff16155b8015611c6b5750602054600160a81b900460ff165b801561096b57505060215430600090815260086020526040902054101590565b601654602054600091906001600160a01b0390811690841603611cb15750601454611ccc565b6020546001600160a01b0390811690861603611ccc57506015545b6000611cf96013546064611ce09190612215565b610eff84610ef26012548a611a1e90919063ffffffff16565b306000908152600860205260409020549091508190611d189082611568565b30600081815260086020526040908190209290925590516001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611d699085815260200190565b60405180910390a3611d7b8683611526565b979650505050505050565b60008183611da75760405162461bcd60e51b815260040161078b9190611e30565b50600061112a848661223f565b8015158114610bd757600080fd5b8035611dcd81611db4565b919050565b60008060408385031215611de557600080fd5b8235611df081611db4565b946020939093013593505050565b80356001600160a01b0381168114611dcd57600080fd5b600060208284031215611e2757600080fd5b61091782611dfe565b600060208083528351808285015260005b81811015611e5d57858101830151858201604001528201611e41565b506000604082860101526040601f19601f8301168501019250505092915050565b60008060408385031215611e9157600080fd5b611df083611dfe565b60008060408385031215611ead57600080fd5b50508035926020909101359150565b600080600060608486031215611ed157600080fd5b611eda84611dfe565b9250611ee860208501611dfe565b9150604084013590509250925092565b60008060008060008060c08789031215611f1157600080fd5b505084359660208601359650604086013595606081013595506080810135945060a0013592509050565b60008060408385031215611f4e57600080fd5b611f5783611dfe565b91506020830135611f6781611db4565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215611f9b57600080fd5b823567ffffffffffffffff80821115611fb357600080fd5b818501915085601f830112611fc757600080fd5b8135602082821115611fdb57611fdb611f72565b8160051b604051601f19603f8301168101818110868211171561200057612000611f72565b60405292835281830193508481018201928984111561201e57600080fd5b948201945b838610156120435761203486611dfe565b85529482019493820193612023565b96506120529050878201611dc2565b9450505050509250929050565b60008060006060848603121561207457600080fd5b505081359360208301359350604090920135919050565b60006020828403121561209d57600080fd5b5035919050565b600080604083850312156120b757600080fd5b6120c083611dfe565b91506120ce60208401611dfe565b90509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561215d5781600019048211156121435761214361210c565b8085161561215057918102915b93841c9390800290612127565b509250929050565b600082612174575060016107d6565b81612181575060006107d6565b816001811461219757600281146121a1576121bd565b60019150506107d6565b60ff8411156121b2576121b261210c565b50506001821b6107d6565b5060208310610133831016604e8410600b84101617156121e0575081810a6107d6565b6121ea8383612122565b80600019048211156121fe576121fe61210c565b029392505050565b600061091760ff841683612165565b80820281158282048414176107d6576107d661210c565b808201808211156107d6576107d661210c565b60008261225c57634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561227357600080fd5b5051919050565b60006020828403121561228c57600080fd5b815161091781611db4565b634e487b7160e01b600052603260045260246000fd5b6000600182016122bf576122bf61210c565b5060010190565b818103818111156107d6576107d661210c565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156123295784516001600160a01b031683529383019391830191600101612304565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561235f57600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220756dcb75822c6569653dac8b1c2cf44ae0e6ba25d9ce2c2d2916a2326d4ca44564736f6c63430008130033
Deployed Bytecode Sourcemap
5089:13051:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17409:176;;;;;;;;;;-1:-1:-1;17409:176:0;;;;;:::i;:::-;;:::i;:::-;;6836:57;;;;;;;;;;;;;;;;;;;730:25:1;;;718:2;703:18;6836:57:0;;;;;;;;9009:122;;;;;;;;;;-1:-1:-1;9009:122:0;;;;;:::i;:::-;;:::i;:::-;;;1300:14:1;;1293:22;1275:41;;1263:2;1248:18;9009:122:0;1135:187:1;8363:80:0;;;;;;;;;;-1:-1:-1;8435:5:0;;;;;;;;;;;;-1:-1:-1;;;8435:5:0;;;;8363:80;;;;;;;:::i;6755:31::-;;;;;;;;;;-1:-1:-1;6755:31:0;;;;-1:-1:-1;;;6755:31:0;;;;;;8785:216;;;;;;;;;;-1:-1:-1;8785:216:0;;;;;:::i;:::-;;:::i;17922:150::-;;;;;;;;;;-1:-1:-1;17922:150:0;;;;;:::i;:::-;;:::i;8093:88::-;;;;;;;;;;-1:-1:-1;8166:12:0;;8093:88;;6103:95;;;;;;;;;;;;;;;;9303:370;;;;;;;;;;-1:-1:-1;9303:370:0;;;;;:::i;:::-;;:::i;17597:142::-;;;;;;;;;;;;;:::i;8187:80::-;;;;;;;;;;-1:-1:-1;8187:80:0;;5426:1;2867:36:1;;2855:2;2840:18;8187:80:0;2725:184:1;14180:463:0;;;;;;;;;;;;;:::i;6799:30::-;;;;;;;;;;-1:-1:-1;6799:30:0;;;;-1:-1:-1;;;6799:30:0;;;;;;8533:105;;;;;;;;;;-1:-1:-1;8533:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;8617:18:0;8599:7;8617:18;;;:9;:18;;;;;;;8533:105;3146:148;;;;;;;;;;;;;:::i;13466:308::-;;;;;;;;;;-1:-1:-1;13466:308:0;;;;;:::i;:::-;;:::i;5567:60::-;;;;;;;;;;;;;;;;5503:57;;;;;;;;;;;;;;;;8449:78;;;;;;;;;;-1:-1:-1;8501:7:0;2997:6;-1:-1:-1;;;;;2997:6:0;8449:78;;;-1:-1:-1;;;;;3078:32:1;;;3060:51;;3048:2;3033:18;8449:78:0;2914:203:1;12988:149:0;;;;;;;;;;;;;:::i;13997:175::-;;;;;;;;;;;;;:::i;2932:79::-;;;;;;;;;;-1:-1:-1;2970:7:0;2997:6;-1:-1:-1;;;;;2997:6:0;2932:79;;16818:583;;;;;;;;;;-1:-1:-1;16818:583:0;;;;;:::i;:::-;;:::i;8273:84::-;;;;;;;;;;-1:-1:-1;8347:7:0;;;;;;;;;;;;-1:-1:-1;;;8347:7:0;;;;8273:84;;16690:120;;;;;;;;;;-1:-1:-1;16690:120:0;;;;;:::i;:::-;;:::i;6723:19::-;;;;;;;;;;-1:-1:-1;6723:19:0;;;;-1:-1:-1;;;;;6723:19:0;;;9139:156;;;;;;;;;;-1:-1:-1;9139:156:0;;;;;:::i;:::-;;:::i;2552:21::-;;;;;;;;;;-1:-1:-1;2552:21:0;;;;-1:-1:-1;;;;;2552:21:0;;;13267:191;;;;;;;;;;-1:-1:-1;13267:191:0;;;;;:::i;:::-;;:::i;16525:157::-;;;;;;;;;;-1:-1:-1;16525:157:0;;;;;:::i;:::-;;:::i;13782:207::-;;;;;;;;;;-1:-1:-1;13782:207:0;;;;;:::i;:::-;;:::i;12727:77::-;;;;;;;;;;;;;:::i;17747:167::-;;;;;;;;;;-1:-1:-1;17747:167:0;;;;;:::i;:::-;;:::i;12521:197::-;;;;;;;;;;-1:-1:-1;12521:197:0;;;;;:::i;:::-;;:::i;8644:133::-;;;;;;;;;;-1:-1:-1;8644:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;8746:19:0;;;8728:7;8746:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;8644:133;13145:110;;;;;;;;;;-1:-1:-1;13145:110:0;;;;;:::i;:::-;;:::i;3302:244::-;;;;;;;;;;-1:-1:-1;3302:244:0;;;;;:::i;:::-;;:::i;12812:168::-;;;;;;;;;;;;;:::i;6653:24::-;;;;;;;;;;-1:-1:-1;6653:24:0;;;;-1:-1:-1;;;;;6653:24:0;;;17409:176;3059:6;;-1:-1:-1;;;;;3059:6:0;2369:10;3059:22;3051:67;;;;-1:-1:-1;;;3051:67:0;;;;;;;:::i;:::-;;;;;;;;;17501:11:::1;:22:::0;;-1:-1:-1;;;;17501:22:0::1;-1:-1:-1::0;;;17501:22:0;::::1;;;;::::0;;17561:15:::1;5426:1;17561:2;:15;:::i;:::-;17550:27;::::0;:7;:27:::1;:::i;:::-;17534:13;:43:::0;-1:-1:-1;;17409:176:0:o;9009:122::-;9064:4;9088:35;9096:7;-1:-1:-1;;9088:7:0;:35::i;:::-;9081:42;9009:122;-1:-1:-1;;9009:122:0:o;8785:216::-;8889:10;8860:4;8877:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;8877:32:0;;;;;;;;;;:41;;;8934:37;8860:4;;8877:32;;8934:37;;;;8912:6;730:25:1;;718:2;703:18;;584:177;8934:37:0;;;;;;;;-1:-1:-1;8989:4:0;8785:216;;;;:::o;17922:150::-;18002:4;18058:6;18026:29;18046:8;18026:19;:29::i;:::-;:38;;17922:150;-1:-1:-1;;;17922:150:0:o;9303:370::-;-1:-1:-1;;;;;9423:19:0;;9403:4;9423:19;;;:11;:19;;;;;;;;9443:10;9423:31;;;;;;;;-1:-1:-1;;9423:52:0;9420:186;;9525:69;;;;;;;;;;;-1:-1:-1;;;9525:69:0;;;;;;;;-1:-1:-1;;;;;9525:19:0;;-1:-1:-1;9525:19:0;;;:11;:19;;;;;9545:10;9525:31;;;;;;;;;;:69;;9561:6;;9525:35;:69::i;:::-;-1:-1:-1;;;;;9491:19:0;;;;;;:11;:19;;;;;;;;9511:10;9491:31;;;;;;;:103;9420:186;9625:40;9639:6;9647:9;9658:6;9625:13;:40::i;:::-;9618:47;;9303:370;;;;;;:::o;17597:142::-;17725:4;;-1:-1:-1;;;;;17725:4:0;17650:7;8617:18;;;:9;:18;;;;;;17677:54;;17704:4;;-1:-1:-1;;;;;17704:4:0;8599:7;8617:18;;;:9;:18;;;;;;17677:33;;:12;;;:16;:33::i;:::-;:37;;:54::i;:::-;17670:61;;17597:142;:::o;14180:463::-;3059:6;;-1:-1:-1;;;;;3059:6:0;2369:10;3059:22;3051:67;;;;-1:-1:-1;;;3051:67:0;;;;;;;:::i;:::-;14247:1:::1;14229:12;:19:::0;;;14277:1:::1;14259:10;:19:::0;;;14289:11:::1;:19:::0;;;14319:6:::1;:19:::0;;;14349:10:::1;:19:::0;;;14247:1;;;;14397:19:::1;::::0;14247:1;14397:19:::1;:::i;:::-;:34;;;;:::i;:::-;:48;;;;:::i;:::-;:61;;;;:::i;:::-;14379:8;:79:::0;14487:3:::1;14469:14;:21:::0;;;14501:13:::1;:19:::0;;;14531:14:::1;:20:::0;-1:-1:-1;14562:18:0::1;:22:::0;14611:12:::1;::::0;14630:4:::1;::::0;14611:16:::1;::::0;14626:1:::1;14611:16;:::i;:::-;:23;;;;:::i;:::-;14595:13;:39:::0;14180:463::o;3146:148::-;3059:6;;-1:-1:-1;;;;;3059:6:0;2369:10;3059:22;3051:67;;;;-1:-1:-1;;;3051:67:0;;;;;;;:::i;:::-;3253:1:::1;3237:6:::0;;3216:40:::1;::::0;-1:-1:-1;;;;;3237:6:0;;::::1;::::0;3216:40:::1;::::0;3253:1;;3216:40:::1;3284:1;3267:19:::0;;-1:-1:-1;;;;;;3267:19:0::1;::::0;;3146:148::o;13466:308::-;13586:10;13545:4;13570:27;;;:15;:27;;;;;;;;13562:36;;;;;;13609:6;13619:1;13609:11;13606:95;;13645:44;;-1:-1:-1;;;13645:44:0;;13683:4;13645:44;;;3060:51:1;-1:-1:-1;;;;;13645:29:0;;;;;3033:18:1;;13645:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13636:53;;13606:95;13718:48;;-1:-1:-1;;;13718:48:0;;13747:10;13718:48;;;9059:51:1;9126:18;;;9119:34;;;-1:-1:-1;;;;;13718:28:0;;;;;9032:18:1;;13718:48:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;12988:149::-;13053:10;13037:27;;;;:15;:27;;;;;;;;13029:36;;;;;;13076:51;;13084:10;;13105:21;13076:51;;;;;;;;;13105:21;13084:10;13076:51;;;;;;;;;;;;;;;;;;;;;12988:149::o;13997:175::-;3059:6;;-1:-1:-1;;;;;3059:6:0;2369:10;3059:22;3051:67;;;;-1:-1:-1;;;3051:67:0;;;;;;;:::i;:::-;14050:11:::1;:18:::0;;-1:-1:-1;;;;14050:18:0::1;-1:-1:-1::0;;;14050:18:0::1;::::0;;14095:3:::1;14079:13;:19:::0;14126:3:::1;14050:11;14109:20:::0;;;14140:18:::1;:24:::0;13997:175::o;16818:583::-;3059:6;;-1:-1:-1;;;;;3059:6:0;2369:10;3059:22;3051:67;;;;-1:-1:-1;;;3051:67:0;;;;;;;:::i;:::-;17005:12:::1;:28:::0;;;17044:6:::1;:16:::0;;;17071:10:::1;:24:::0;;;17106:11:::1;:26:::0;;;17143:10:::1;:24:::0;;;17189:78:::1;17156:11:::0;17189:61:::1;17120:12:::0;17189:61;17084:11;17189:61;17020:13;17053:7;17189:17:::1;:26::i;:::-;:30:::0;::::1;:43::i;:78::-;17178:8;:89:::0;17278:14:::1;:32:::0;;;17340:18:::1;17357:1;17295:15:::0;17340:18:::1;:::i;:::-;17329:8;;:29;17321:71;;;::::0;-1:-1:-1;;;17321:71:0;;9616:2:1;17321:71:0::1;::::0;::::1;9598:21:1::0;9655:2;9635:18;;;9628:30;9694:31;9674:18;;;9667:59;9743:18;;17321:71:0::1;9414:353:1::0;17321:71:0::1;16818:583:::0;;;;;;:::o;16690:120::-;3059:6;;-1:-1:-1;;;;;3059:6:0;2369:10;3059:22;3051:67;;;;-1:-1:-1;;;3051:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16770:23:0;;;::::1;;::::0;;;:15:::1;:23;::::0;;;;:32;;-1:-1:-1;;16770:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;16690:120::o;9139:156::-;9219:4;9243:44;9257:10;9269:9;9280:6;9243:13;:44::i;13267:191::-;3059:6;;-1:-1:-1;;;;;3059:6:0;2369:10;3059:22;3051:67;;;;-1:-1:-1;;;3051:67:0;;;;;;;:::i;:::-;13358:9:::1;13354:97;13376:8;:15;13372:1;:19;13354:97;;;13434:5;13412:6;:19;13419:8;13428:1;13419:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;13412:19:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;13412:19:0;:27;;-1:-1:-1;;13412:27:0::1;::::0;::::1;;::::0;;;::::1;::::0;;13393:3;::::1;::::0;::::1;:::i;:::-;;;;13354:97;;;;13267:191:::0;;:::o;16525:157::-;3059:6;;-1:-1:-1;;;;;3059:6:0;2369:10;3059:22;3051:67;;;;-1:-1:-1;;;3051:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16603:19:0;;::::1;;::::0;;;:11:::1;:19;::::0;;;;;;;:28;;;::::1;;-1:-1:-1::0;;16603:28:0;;::::1;::::0;::::1;::::0;;;16642:15:::1;:23:::0;;;;;;:32;;;;::::1;;::::0;;16525:157::o;13782:207::-;3059:6;;-1:-1:-1;;;;;3059:6:0;2369:10;3059:22;3051:67;;;;-1:-1:-1;;;3051:67:0;;;;;;;:::i;:::-;13874:14:::1;:22:::0;;;;13907:13:::1;:20:::0;;;;13938:18:::1;:27:::0;13782:207::o;12727:77::-;3059:6;;-1:-1:-1;;;;;3059:6:0;2369:10;3059:22;3051:67;;;;-1:-1:-1;;;3051:67:0;;;;;;;:::i;:::-;12780:10:::1;:8;:10::i;:::-;12727:77::o:0;17747:167::-;17815:7;17842:64;17883:22;:20;:22::i;:::-;17865:4;;;-1:-1:-1;;;;;17865:4:0;8599:7;8617:18;;;:9;:18;;;;;;;17842:36;;17855:22;;17875:1;;17855:15;:19;;:22::i;:::-;17842:8;;:12;:36::i;:::-;:40;;:64::i;12521:197::-;12650:14;;12610:21;;-1:-1:-1;;;;;12650:14:0;12642:68;12706:3;12675:28;12687:16;12610:21;12675:28;:::i;:::-;:34;;;;:::i;:::-;12642:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13145:110;3059:6;;-1:-1:-1;;;;;3059:6:0;2369:10;3059:22;3051:67;;;;-1:-1:-1;;;3051:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;13224:15:0;;;::::1;;::::0;;;:6:::1;:15;::::0;;;;:23;;-1:-1:-1;;13224:23:0::1;::::0;::::1;;::::0;;;::::1;::::0;;13145:110::o;3302:244::-;3059:6;;-1:-1:-1;;;;;3059:6:0;2369:10;3059:22;3051:67;;;;-1:-1:-1;;;3051:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3391:22:0;::::1;3383:73;;;::::0;-1:-1:-1;;;3383:73:0;;10246:2:1;3383:73:0::1;::::0;::::1;10228:21:1::0;10285:2;10265:18;;;10258:30;10324:34;10304:18;;;10297:62;-1:-1:-1;;;10375:18:1;;;10368:36;10421:19;;3383:73:0::1;10044:402:1::0;3383:73:0::1;3493:6;::::0;;3472:38:::1;::::0;-1:-1:-1;;;;;3472:38:0;;::::1;::::0;3493:6;::::1;::::0;3472:38:::1;::::0;::::1;3521:6;:17:::0;;-1:-1:-1;;;;;;3521:17:0::1;-1:-1:-1::0;;;;;3521:17:0;;;::::1;::::0;;;::::1;::::0;;3302:244::o;12812:168::-;3059:6;;-1:-1:-1;;;;;3059:6:0;2369:10;3059:22;3051:67;;;;-1:-1:-1;;;3051:67:0;;;;;;;:::i;:::-;12901:15:::1;5426:1;12901:2;:15;:::i;:::-;12888:29;::::0;:9:::1;:29;:::i;:::-;12870:15;:47:::0;12956:15:::1;5426:1;12956:2;:15;:::i;:::-;12943:29;::::0;:9:::1;:29;:::i;:::-;12928:12;:44:::0;12812:168::o;533:192::-;619:7;655:12;647:6;;;;639:29;;;;-1:-1:-1;;;639:29:0;;;;;;;;:::i;:::-;-1:-1:-1;679:9:0;691:5;695:1;691;:5;:::i;:::-;679:17;533:192;-1:-1:-1;;;;;533:192:0:o;9681:1314::-;-1:-1:-1;;;;;9799:14:0;;9773:4;9799:14;;;:6;:14;;;;;;;;9798:15;:37;;;;-1:-1:-1;;;;;;9818:17:0;;;;;;:6;:17;;;;;;;;9817:18;9798:37;9790:63;;;;-1:-1:-1;;;9790:63:0;;10786:2:1;9790:63:0;;;10768:21:1;10825:2;10805:18;;;10798:30;-1:-1:-1;;;10844:18:1;;;10837:43;10897:18;;9790:63:0;10584:337:1;9790:63:0;9869:6;;;;9866:63;;;9885:41;9900:6;9908:9;9919:6;9885:14;:41::i;:::-;9878:48;;;;9866:63;-1:-1:-1;;;;;9945:22:0;;;;;;:14;:22;;;;;;;;9944:23;:53;;;;-1:-1:-1;;;;;;9972:25:0;;;;;;:14;:25;;;;;;;;9971:26;9944:53;9941:140;;;10021:11;;-1:-1:-1;;;10021:11:0;;;;10013:43;;;;-1:-1:-1;;;10013:43:0;;11128:2:1;10013:43:0;;;11110:21:1;11167:2;11147:18;;;11140:30;-1:-1:-1;;;11186:18:1;;;11179:50;11246:18;;10013:43:0;10926:344:1;10013:43:0;-1:-1:-1;;;;;10115:22:0;;;;;;:14;:22;;;;;;;;10114:23;:53;;;;-1:-1:-1;;;;;;10141:26:0;;10162:4;10141:26;;10114:53;:84;;;;-1:-1:-1;10193:4:0;;-1:-1:-1;;;;;10172:26:0;;;10193:4;;10172:26;;10114:84;:105;;;;-1:-1:-1;10215:4:0;;-1:-1:-1;;;;;10202:17:0;;;10215:4;;10202:17;;10114:105;:140;;;;-1:-1:-1;10236:18:0;;-1:-1:-1;;;;;10223:31:0;;;10236:18;;10223:31;;10114:140;:175;;;;-1:-1:-1;10271:18:0;;-1:-1:-1;;;;;10258:31:0;;;10271:18;;10258:31;;10114:175;:206;;;;-1:-1:-1;;;;;;10294:26:0;;;;;;:15;:26;;;;;;;;10293:27;10114:206;10110:398;;;-1:-1:-1;;;;;8617:18:0;;10336;8617;;;:9;:18;;;;;;10425:15;;10401:19;10414:6;8617:18;10401:19;:::i;:::-;10400:40;;10392:114;;;;-1:-1:-1;;;10392:114:0;;11477:2:1;10392:114:0;;;11459:21:1;11516:2;11496:18;;;11489:30;11555:34;11535:18;;;11528:62;11626:32;11606:18;;;11599:60;11676:19;;10392:114:0;11275:426:1;10392:114:0;10321:187;10110:398;10529:28;10542:6;10550;10529:12;:28::i;:::-;10574:16;:14;:16::i;:::-;10571:35;;;10593:10;:8;:10::i;:::-;10646:53;;;;;;;;;;;-1:-1:-1;;;10646:53:0;;;;;;;;-1:-1:-1;;;;;10646:17:0;;-1:-1:-1;10646:17:0;;;:9;:17;;;;;;;;:53;;10668:6;;10646:21;:53::i;:::-;-1:-1:-1;;;;;10626:17:0;;;;;;:9;:17;;;;;;;;:73;;;;10738:11;:19;;;;;;;;;:45;;-1:-1:-1;;;;;;10761:22:0;;;;;;:11;:22;;;;;;;;10738:45;10737:93;;10796:34;10804:6;10812;10820:9;10796:7;:34::i;:::-;10737:93;;;10787:6;10737:93;-1:-1:-1;;;;;10864:20:0;;;;;;:9;:20;;;;;;10712:118;;-1:-1:-1;10864:40:0;;10712:118;10864:24;:40::i;:::-;-1:-1:-1;;;;;10841:20:0;;;;;;;:9;:20;;;;;;;:63;;;;10922:43;;;;;;;;;;10950:14;730:25:1;;718:2;703:18;;584:177;10922:43:0;;;;;;;;-1:-1:-1;10983:4:0;;9681:1314;-1:-1:-1;;;;9681:1314:0:o;391:136::-;449:7;476:43;480:1;483;476:43;;;;;;;;;;;;;;;;;:3;:43::i;204:181::-;262:7;;294:5;298:1;294;:5;:::i;:::-;282:17;;323:1;318;:6;;310:46;;;;-1:-1:-1;;;310:46:0;;11908:2:1;310:46:0;;;11890:21:1;11947:2;11927:18;;;11920:30;11986:29;11966:18;;;11959:57;12033:18;;310:46:0;11706:351:1;14659:1856:0;6941:6;:13;;-1:-1:-1;;6941:13:0;6950:4;6941:13;;;14750:15:::1;::::0;14767:26:::1;::::0;6941:6;;14734:60:::1;::::0;:15:::1;:60::i;:::-;:79;;14801:12;;14734:79;;;14797:1;14734:79;14704:109;;14820:23;14846:59;14903:1;14846:52;14889:8;;14846:38;14864:19;14846:13;;:17;;:38;;;;:::i;:59::-;14820:85;;14912:20;14935:34;14953:15;14935:13;;:17;;:34;;;;:::i;:::-;15002:16;::::0;;15016:1:::1;15002:16:::0;;;;;::::1;::::0;;14912:57;;-1:-1:-1;14978:21:0::1;::::0;15002:16;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;15002:16:0::1;14978:40;;15043:4;15025;15030:1;15025:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;15025:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;15065:4:::1;::::0;15055:7;;15065:4;::::1;::::0;15055;;15065;;15055:7;::::1;;;;;:::i;:::-;-1:-1:-1::0;;;;;15055:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;:14;15132:6:::1;::::0;:164:::1;::::0;-1:-1:-1;;;15132:164:0;;15102:21:::1;::::0;15132:6;;;::::1;::::0;:57:::1;::::0;:164:::1;::::0;15200:12;;15078:21:::1;::::0;15235:4;;15258::::1;::::0;15274:15:::1;::::0;15132:164:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;15305:17;15325:40;15351:13;15325:21;:25;;:40;;;;:::i;:::-;15305:60:::0;-1:-1:-1;15374:19:0::1;15396:40;15409:26;:19:::0;15433:1:::1;15409:23;:26::i;:::-;15396:8;::::0;;:12:::1;:40::i;:::-;15374:62:::0;-1:-1:-1;15445:26:0::1;15474:58;15530:1;15474:51;15374:62:::0;15474:51;:9;15488:19;15474:13:::1;:34::i;:58::-;15445:87;;15539:24;15566:42;15596:11;15566:25;15580:10;;15566:9;:13;;:25;;;;:::i;:42::-;15539:69;;15615:20;15638:38;15664:11;15638:21;15652:6;;15638:9;:13;;:21;;;;:::i;:38::-;15615:61;;15683:25;15711:43;15742:11;15711:26;15725:11;;15711:9;:13;;:26;;;;:::i;:43::-;15683:71;;15761:24;15788:42;15818:11;15788:25;15802:10;;15788:9;:13;;:25;;;;:::i;:42::-;15869:18;::::0;15861:61:::1;::::0;15761:69;;-1:-1:-1;15841:15:0::1;::::0;-1:-1:-1;;;;;15869:18:0;;::::1;::::0;15901:16;;15841:15;15861:61;15841:15;15861:61;15901:16;15869:18;15861:61:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;15953:19:0::1;::::0;15945:63:::1;::::0;15840:82;;-1:-1:-1;;;;;;15953:19:0::1;::::0;15986:17;;15945:63:::1;::::0;;;15986:17;15953:19;15945:63:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;16039:14:0::1;::::0;16031:53:::1;::::0;15929:79;;-1:-1:-1;;;;;;16039:14:0::1;::::0;16067:12;;16031:53:::1;::::0;;;16067:12;16039:14;16031:53:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;16115:18:0::1;::::0;16107:61:::1;::::0;16015:69;;-1:-1:-1;;;;;;16115:18:0::1;::::0;16147:16;;16107:61:::1;::::0;;;16147:16;16115:18;16107:61:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;16091:77:0;;-1:-1:-1;;16181:19:0;;16178:330:::1;;16212:6;::::0;16366:21:::1;::::0;16212:216:::1;::::0;-1:-1:-1;;;16212:216:0;;16284:4:::1;16212:216;::::0;::::1;13598:34:1::0;13648:18;;;13641:34;;;16212:6:0::1;13691:18:1::0;;;13684:34;;;13734:18;;;13727:34;-1:-1:-1;;;;;16366:21:0;;::::1;13777:19:1::0;;;13770:44;16402:15:0::1;13830:19:1::0;;;13823:35;16212:6:0;::::1;::::0;:22:::1;::::0;16242:18;;13532:19:1;;16212:216:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;16444:48:0::1;::::0;;14354:25:1;;;14410:2;14395:18;;14388:34;;;16444:48:0::1;::::0;-1:-1:-1;14327:18:1;16444:48:0::1;;;;;;;16178:330;-1:-1:-1::0;;6959:6:0;:14;;-1:-1:-1;;6959:14:0;;;-1:-1:-1;;;;;;;;;;;14659:1856:0:o;731:250::-;789:7;813:1;818;813:6;809:47;;-1:-1:-1;843:1:0;836:8;;809:47;868:9;880:5;884:1;880;:5;:::i;:::-;868:17;-1:-1:-1;913:1:0;904:5;908:1;868:17;904:5;:::i;:::-;:10;896:56;;;;-1:-1:-1;;;896:56:0;;14635:2:1;896:56:0;;;14617:21:1;14674:2;14654:18;;;14647:30;14713:34;14693:18;;;14686:62;-1:-1:-1;;;14764:18:1;;;14757:31;14805:19;;896:56:0;14433:397:1;987:132:0;1045:7;1072:39;1076:1;1079;1072:39;;;;;;;;;;;;;;;;;:3;:39::i;11007:330::-;11137:53;;;;;;;;;;;-1:-1:-1;;;11137:53:0;;;;;;;;-1:-1:-1;;;;;11137:17:0;;11100:4;11137:17;;;:9;:17;;;;;;;:53;;11159:6;;11137:21;:53::i;:::-;-1:-1:-1;;;;;11117:17:0;;;;;;;:9;:17;;;;;;:73;;;;11224:20;;;;;;;:32;;11249:6;11224:24;:32::i;:::-;-1:-1:-1;;;;;11201:20:0;;;;;;;:9;:20;;;;;;;:55;;;;11272:35;;;;;;;;;;11300:6;730:25:1;;718:2;703:18;;584:177;11272:35:0;;;;;;;;-1:-1:-1;11325:4:0;11007:330;;;;;:::o;11345:166::-;11442:12;;11432:6;:22;;:49;;;-1:-1:-1;;;;;;11458:23:0;;;;;;:15;:23;;;;;;;;11432:49;11424:79;;;;-1:-1:-1;;;11424:79:0;;15037:2:1;11424:79:0;;;15019:21:1;15076:2;15056:18;;;15049:30;-1:-1:-1;;;15095:18:1;;;15088:47;15152:18;;11424:79:0;14835:341:1;11424:79:0;11345:166;;:::o;12316:197::-;12403:4;;12365;;-1:-1:-1;;;;;12403:4:0;12389:10;:18;;;;:38;;-1:-1:-1;12421:6:0;;;;12420:7;12389:38;:62;;;;-1:-1:-1;12440:11:0;;-1:-1:-1;;;12440:11:0;;;;12389:62;:116;;;;-1:-1:-1;;12492:13:0;;12482:4;12464:24;;;;:9;:24;;;;;;:41;;;12316:197::o;11641:667::-;11778:18;;11825:4;;11727:7;;11778:18;-1:-1:-1;;;;;11825:4:0;;;11812:17;;;;11809:154;;-1:-1:-1;11859:14:0;;11809:154;;;11904:4;;-1:-1:-1;;;;;11904:4:0;;;11894:14;;;;11891:72;;-1:-1:-1;11938:13:0;;11891:72;11975:17;11995:62;12036:14;;12053:3;12036:20;;;;:::i;:::-;11995:36;12020:10;11995:20;12006:8;;11995:6;:10;;:20;;;;:::i;:62::-;12160:4;12068:22;12142:24;;;:9;:24;;;;;;11975:82;;-1:-1:-1;11975:82:0;;12142:44;;11975:82;12142:28;:44::i;:::-;12133:4;12115:24;;;;:9;:24;;;;;;;:71;;;;12202:47;;-1:-1:-1;;;;;12202:47:0;;;;;;;12234:14;730:25:1;;718:2;703:18;;584:177;12202:47:0;;;;;;;;12279:21;:6;12290:9;12279:10;:21::i;:::-;12272:28;11641:667;-1:-1:-1;;;;;;;11641:667:0:o;1125:189::-;1211:7;1246:12;1239:5;1231:28;;;;-1:-1:-1;;;1231:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1270:9:0;1282:5;1286:1;1282;:5;:::i;14:118:1:-;100:5;93:13;86:21;79:5;76:32;66:60;;122:1;119;112:12;137:128;202:20;;231:28;202:20;231:28;:::i;:::-;137:128;;;:::o;270:309::-;335:6;343;396:2;384:9;375:7;371:23;367:32;364:52;;;412:1;409;402:12;364:52;451:9;438:23;470:28;492:5;470:28;:::i;:::-;517:5;569:2;554:18;;;;541:32;;-1:-1:-1;;;270:309:1:o;766:173::-;834:20;;-1:-1:-1;;;;;883:31:1;;873:42;;863:70;;929:1;926;919:12;944:186;1003:6;1056:2;1044:9;1035:7;1031:23;1027:32;1024:52;;;1072:1;1069;1062:12;1024:52;1095:29;1114:9;1095:29;:::i;1327:548::-;1439:4;1468:2;1497;1486:9;1479:21;1529:6;1523:13;1572:6;1567:2;1556:9;1552:18;1545:34;1597:1;1607:140;1621:6;1618:1;1615:13;1607:140;;;1716:14;;;1712:23;;1706:30;1682:17;;;1701:2;1678:26;1671:66;1636:10;;1607:140;;;1611:3;1796:1;1791:2;1782:6;1771:9;1767:22;1763:31;1756:42;1866:2;1859;1855:7;1850:2;1842:6;1838:15;1834:29;1823:9;1819:45;1815:54;1807:62;;;;1327:548;;;;:::o;1880:254::-;1948:6;1956;2009:2;1997:9;1988:7;1984:23;1980:32;1977:52;;;2025:1;2022;2015:12;1977:52;2048:29;2067:9;2048:29;:::i;2139:248::-;2207:6;2215;2268:2;2256:9;2247:7;2243:23;2239:32;2236:52;;;2284:1;2281;2274:12;2236:52;-1:-1:-1;;2307:23:1;;;2377:2;2362:18;;;2349:32;;-1:-1:-1;2139:248:1:o;2392:328::-;2469:6;2477;2485;2538:2;2526:9;2517:7;2513:23;2509:32;2506:52;;;2554:1;2551;2544:12;2506:52;2577:29;2596:9;2577:29;:::i;:::-;2567:39;;2625:38;2659:2;2648:9;2644:18;2625:38;:::i;:::-;2615:48;;2710:2;2699:9;2695:18;2682:32;2672:42;;2392:328;;;;;:::o;3122:523::-;3226:6;3234;3242;3250;3258;3266;3319:3;3307:9;3298:7;3294:23;3290:33;3287:53;;;3336:1;3333;3326:12;3287:53;-1:-1:-1;;3359:23:1;;;3429:2;3414:18;;3401:32;;-1:-1:-1;3480:2:1;3465:18;;3452:32;;3531:2;3516:18;;3503:32;;-1:-1:-1;3582:3:1;3567:19;;3554:33;;-1:-1:-1;3634:3:1;3619:19;3606:33;;-1:-1:-1;3122:523:1;-1:-1:-1;3122:523:1:o;3650:315::-;3715:6;3723;3776:2;3764:9;3755:7;3751:23;3747:32;3744:52;;;3792:1;3789;3782:12;3744:52;3815:29;3834:9;3815:29;:::i;:::-;3805:39;;3894:2;3883:9;3879:18;3866:32;3907:28;3929:5;3907:28;:::i;:::-;3954:5;3944:15;;;3650:315;;;;;:::o;3970:127::-;4031:10;4026:3;4022:20;4019:1;4012:31;4062:4;4059:1;4052:15;4086:4;4083:1;4076:15;4102:1191;4192:6;4200;4253:2;4241:9;4232:7;4228:23;4224:32;4221:52;;;4269:1;4266;4259:12;4221:52;4309:9;4296:23;4338:18;4379:2;4371:6;4368:14;4365:34;;;4395:1;4392;4385:12;4365:34;4433:6;4422:9;4418:22;4408:32;;4478:7;4471:4;4467:2;4463:13;4459:27;4449:55;;4500:1;4497;4490:12;4449:55;4536:2;4523:16;4558:4;4581:2;4577;4574:10;4571:36;;;4587:18;;:::i;:::-;4633:2;4630:1;4626:10;4665:2;4659:9;4728:2;4724:7;4719:2;4715;4711:11;4707:25;4699:6;4695:38;4783:6;4771:10;4768:22;4763:2;4751:10;4748:18;4745:46;4742:72;;;4794:18;;:::i;:::-;4830:2;4823:22;4880:18;;;4914:15;;;;-1:-1:-1;4956:11:1;;;4952:20;;;4984:19;;;4981:39;;;5016:1;5013;5006:12;4981:39;5040:11;;;;5060:148;5076:6;5071:3;5068:15;5060:148;;;5142:23;5161:3;5142:23;:::i;:::-;5130:36;;5093:12;;;;5186;;;;5060:148;;;5227:6;-1:-1:-1;5252:35:1;;-1:-1:-1;5268:18:1;;;5252:35;:::i;:::-;5242:45;;;;;;4102:1191;;;;;:::o;5298:316::-;5375:6;5383;5391;5444:2;5432:9;5423:7;5419:23;5415:32;5412:52;;;5460:1;5457;5450:12;5412:52;-1:-1:-1;;5483:23:1;;;5553:2;5538:18;;5525:32;;-1:-1:-1;5604:2:1;5589:18;;;5576:32;;5298:316;-1:-1:-1;5298:316:1:o;5619:180::-;5678:6;5731:2;5719:9;5710:7;5706:23;5702:32;5699:52;;;5747:1;5744;5737:12;5699:52;-1:-1:-1;5770:23:1;;5619:180;-1:-1:-1;5619:180:1:o;5804:260::-;5872:6;5880;5933:2;5921:9;5912:7;5908:23;5904:32;5901:52;;;5949:1;5946;5939:12;5901:52;5972:29;5991:9;5972:29;:::i;:::-;5962:39;;6020:38;6054:2;6043:9;6039:18;6020:38;:::i;:::-;6010:48;;5804:260;;;;;:::o;6295:356::-;6497:2;6479:21;;;6516:18;;;6509:30;6575:34;6570:2;6555:18;;6548:62;6642:2;6627:18;;6295:356::o;6656:127::-;6717:10;6712:3;6708:20;6705:1;6698:31;6748:4;6745:1;6738:15;6772:4;6769:1;6762:15;6788:422;6877:1;6920:5;6877:1;6934:270;6955:7;6945:8;6942:21;6934:270;;;7014:4;7010:1;7006:6;7002:17;6996:4;6993:27;6990:53;;;7023:18;;:::i;:::-;7073:7;7063:8;7059:22;7056:55;;;7093:16;;;;7056:55;7172:22;;;;7132:15;;;;6934:270;;;6938:3;6788:422;;;;;:::o;7215:806::-;7264:5;7294:8;7284:80;;-1:-1:-1;7335:1:1;7349:5;;7284:80;7383:4;7373:76;;-1:-1:-1;7420:1:1;7434:5;;7373:76;7465:4;7483:1;7478:59;;;;7551:1;7546:130;;;;7458:218;;7478:59;7508:1;7499:10;;7522:5;;;7546:130;7583:3;7573:8;7570:17;7567:43;;;7590:18;;:::i;:::-;-1:-1:-1;;7646:1:1;7632:16;;7661:5;;7458:218;;7760:2;7750:8;7747:16;7741:3;7735:4;7732:13;7728:36;7722:2;7712:8;7709:16;7704:2;7698:4;7695:12;7691:35;7688:77;7685:159;;;-1:-1:-1;7797:19:1;;;7829:5;;7685:159;7876:34;7901:8;7895:4;7876:34;:::i;:::-;7946:6;7942:1;7938:6;7934:19;7925:7;7922:32;7919:58;;;7957:18;;:::i;:::-;7995:20;;7215:806;-1:-1:-1;;;7215:806:1:o;8026:140::-;8084:5;8113:47;8154:4;8144:8;8140:19;8134:4;8113:47;:::i;8171:168::-;8244:9;;;8275;;8292:15;;;8286:22;;8272:37;8262:71;;8313:18;;:::i;8344:125::-;8409:9;;;8430:10;;;8427:36;;;8443:18;;:::i;8474:217::-;8514:1;8540;8530:132;;8584:10;8579:3;8575:20;8572:1;8565:31;8619:4;8616:1;8609:15;8647:4;8644:1;8637:15;8530:132;-1:-1:-1;8676:9:1;;8474:217::o;8696:184::-;8766:6;8819:2;8807:9;8798:7;8794:23;8790:32;8787:52;;;8835:1;8832;8825:12;8787:52;-1:-1:-1;8858:16:1;;8696:184;-1:-1:-1;8696:184:1:o;9164:245::-;9231:6;9284:2;9272:9;9263:7;9259:23;9255:32;9252:52;;;9300:1;9297;9290:12;9252:52;9332:9;9326:16;9351:28;9373:5;9351:28;:::i;9772:127::-;9833:10;9828:3;9824:20;9821:1;9814:31;9864:4;9861:1;9854:15;9888:4;9885:1;9878:15;9904:135;9943:3;9964:17;;;9961:43;;9984:18;;:::i;:::-;-1:-1:-1;10031:1:1;10020:13;;9904:135::o;10451:128::-;10518:9;;;10539:11;;;10536:37;;;10553:18;;:::i;12062:980::-;12324:4;12372:3;12361:9;12357:19;12403:6;12392:9;12385:25;12429:2;12467:6;12462:2;12451:9;12447:18;12440:34;12510:3;12505:2;12494:9;12490:18;12483:31;12534:6;12569;12563:13;12600:6;12592;12585:22;12638:3;12627:9;12623:19;12616:26;;12677:2;12669:6;12665:15;12651:29;;12698:1;12708:195;12722:6;12719:1;12716:13;12708:195;;;12787:13;;-1:-1:-1;;;;;12783:39:1;12771:52;;12878:15;;;;12843:12;;;;12819:1;12737:9;12708:195;;;-1:-1:-1;;;;;;;12959:32:1;;;;12954:2;12939:18;;12932:60;-1:-1:-1;;;13023:3:1;13008:19;13001:35;12920:3;12062:980;-1:-1:-1;;;12062:980:1:o;13869:306::-;13957:6;13965;13973;14026:2;14014:9;14005:7;14001:23;13997:32;13994:52;;;14042:1;14039;14032:12;13994:52;14071:9;14065:16;14055:26;;14121:2;14110:9;14106:18;14100:25;14090:35;;14165:2;14154:9;14150:18;14144:25;14134:35;;13869:306;;;;;:::o
Swarm Source
ipfs://756dcb75822c6569653dac8b1c2cf44ae0e6ba25d9ce2c2d2916a2326d4ca445
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.