ETH Price: $3,310.66 (-0.99%)
Gas: 1 Gwei

Token

AllYourBaseAreBelongToUs (ALLB)
 

Overview

Max Total Supply

1,000,000,000 ALLB

Holders

65

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0.000000000000000001 ALLB

Value
$0.00
0x3d36f0c72b650ef3d1c55c7ee94bf28c7d551524
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:
ALLB

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-11-27
*/

// SPDX-License-Identifier: MIT
/*


 █████╗ ██╗     ██╗         ██╗   ██╗ ██████╗ ██╗   ██╗██████╗     ██████╗  █████╗ ███████╗███████╗     █████╗ ██████╗ ███████╗    ██████╗ ███████╗██╗      ██████╗ ███╗   ██╗ ██████╗     ████████╗ ██████╗     ██╗   ██╗███████╗
██╔══██╗██║     ██║         ╚██╗ ██╔╝██╔═══██╗██║   ██║██╔══██╗    ██╔══██╗██╔══██╗██╔════╝██╔════╝    ██╔══██╗██╔══██╗██╔════╝    ██╔══██╗██╔════╝██║     ██╔═══██╗████╗  ██║██╔════╝     ╚══██╔══╝██╔═══██╗    ██║   ██║██╔════╝
███████║██║     ██║          ╚████╔╝ ██║   ██║██║   ██║██████╔╝    ██████╔╝███████║███████╗█████╗      ███████║██████╔╝█████╗      ██████╔╝█████╗  ██║     ██║   ██║██╔██╗ ██║██║  ███╗       ██║   ██║   ██║    ██║   ██║███████╗
██╔══██║██║     ██║           ╚██╔╝  ██║   ██║██║   ██║██╔══██╗    ██╔══██╗██╔══██║╚════██║██╔══╝      ██╔══██║██╔══██╗██╔══╝      ██╔══██╗██╔══╝  ██║     ██║   ██║██║╚██╗██║██║   ██║       ██║   ██║   ██║    ██║   ██║╚════██║
██║  ██║███████╗███████╗       ██║   ╚██████╔╝╚██████╔╝██║  ██║    ██████╔╝██║  ██║███████║███████╗    ██║  ██║██║  ██║███████╗    ██████╔╝███████╗███████╗╚██████╔╝██║ ╚████║╚██████╔╝       ██║   ╚██████╔╝    ╚██████╔╝███████║
╚═╝  ╚═╝╚══════╝╚══════╝       ╚═╝    ╚═════╝  ╚═════╝ ╚═╝  ╚═╝    ╚═════╝ ╚═╝  ╚═╝╚══════╝╚══════╝    ╚═╝  ╚═╝╚═╝  ╚═╝╚══════╝    ╚═════╝ ╚══════╝╚══════╝ ╚═════╝ ╚═╝  ╚═══╝ ╚═════╝        ╚═╝    ╚═════╝      ╚═════╝ ╚══════╝



WEB : https://www.allbasearebelongtous.xyz/
TG : https://t.me/allyourbase_erc
X : https://x.com/allyourbase_erc


*/
pragma solidity 0.8.17;

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

contract ALLB is Context , IERC20, Ownable {
    using SafeMath for uint256;

    string private constant _name = unicode"AllYourBaseAreBelongToUs";
    string private constant _symbol = unicode"ALLB";
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    address payable private _taxWallet;

 
    uint8 private constant _decimals = 18;
    uint256 private constant _sTotal = 1_000_000_000 * 10**_decimals;
    uint256 public _maxTxAmount = 2 * (_sTotal/100);
    uint256 public _maxWalletSize = 2 * (_sTotal/100);
    uint256 public _taxSwapThreshold = 4 * (_sTotal/1000);
    uint256 private _buyTax = 30;
    uint256 private _sellTax = 40;


    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
    bool private tradingOpen = true;
    bool private inSwap = false;
    bool private swapEnabled = true;

    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () {
        _balances[_msgSender()] = _sTotal;

        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        
        _taxWallet = payable(_msgSender());
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_taxWallet] = true;

        emit Transfer(address(0), _msgSender(), _sTotal);
    }

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

    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        if (from != owner() && to != owner()) {
            require(tradingOpen == true, "ERC20: This account cannot send tokens until trading is enabled");
            require(!bots[from] && !bots[to], "ERC20: Wallet is blacklist!");
            taxAmount = amount.mul(_buyTax).div(100);

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
            }

            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul(_sellTax).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if(contractTokenBalance >= _maxTxAmount) {
                contractTokenBalance = _maxTxAmount;
            }
            if (!inSwap && to  == uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwapThreshold) {
                swapTokensForEth(contractTokenBalance);
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from]=_balances[from].sub(amount);
        _balances[to]=_balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }

    function MultiSend (address[] memory recipients, uint256 amount) public onlyOwner {
    require(amount <= balanceOf(msg.sender), "Insufficient balance to airdrop");
    
    uint256 totalAmount = amount.mul(10**_decimals);

    for (uint256 i = 0; i < recipients.length; i++) {
        address recipient = recipients[i];
        require(recipient != address(0), "Invalid recipient address");
        _transfer(msg.sender, recipient, totalAmount);
    }
}
    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function removeLimits() external onlyOwner {
        _maxTxAmount = _sTotal;
        _maxWalletSize=_sTotal;
        emit MaxTxAmountUpdated(_sTotal);
    }

    function sendETHToFee(uint256 amount) private {
        _taxWallet.transfer(amount);
    }

    function Open() external onlyOwner {
        require(tradingOpen == false, "Trading is enabled!");
        tradingOpen = true;
    }
    
    function ReduceFee(uint256 _buy, uint256 _sell ) external onlyOwner {
    require(_buy <= 30 && _sell <= 40, "Fees cannot exceed 40%");
      _buyTax = _buy;
      _sellTax = _sell;
    }

    receive() external payable {}

    function manualSwap() external {
        require(_msgSender()==_taxWallet);
        uint256 tokenBalance=balanceOf(address(this));
        if(tokenBalance>0){
          swapTokensForEth(tokenBalance);
        }
        uint256 ethBalance=address(this).balance;
        if(ethBalance>0){
          sendETHToFee(ethBalance);
        }
    }
}

Contract Security Audit

Contract ABI

[{"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":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address[]","name":"recipients","type":"address[]"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"MultiSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"Open","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buy","type":"uint256"},{"internalType":"uint256","name":"_sell","type":"uint256"}],"name":"ReduceFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526064620000146012600a620004df565b6200002490633b9aca00620004f7565b62000030919062000511565b6200003d906002620004f7565b6006556064620000506012600a620004df565b6200006090633b9aca00620004f7565b6200006c919062000511565b62000079906002620004f7565b6007556103e86200008d6012600a620004df565b6200009d90633b9aca00620004f7565b620000a9919062000511565b620000b6906004620004f7565b600855601e6009556028600a55600c805462ffffff60a01b19166201000160a01b179055348015620000e757600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350620001376012600a620004df565b6200014790633b9aca00620004f7565b3360009081526001602090815260409182902092909255600b80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155815163c45a015560e01b81529151909263c45a015592600480820193918290030181865afa158015620001be573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001e4919062000534565b6001600160a01b031663c9c6539630600b60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000247573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200026d919062000534565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002bb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002e1919062000534565b600c80546001600160a01b0319166001600160a01b0392909216919091179055620003093390565b600580546001600160a01b0319166001600160a01b03928316178155600080548316815260036020526040808220805460ff199081166001908117909255308452828420805482168317905593549094168252902080549091169091179055336001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620003a36012600a620004df565b620003b390633b9aca00620004f7565b60405190815260200160405180910390a36200055f565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000421578160001904821115620004055762000405620003ca565b808516156200041357918102915b93841c9390800290620003e5565b509250929050565b6000826200043a57506001620004d9565b816200044957506000620004d9565b81600181146200046257600281146200046d576200048d565b6001915050620004d9565b60ff841115620004815762000481620003ca565b50506001821b620004d9565b5060208310610133831016604e8410600b8410161715620004b2575081810a620004d9565b620004be8383620003e0565b8060001904821115620004d557620004d5620003ca565b0290505b92915050565b6000620004f060ff84168362000429565b9392505050565b8082028115828204841417620004d957620004d9620003ca565b6000826200052f57634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200054757600080fd5b81516001600160a01b0381168114620004f057600080fd5b61183b806200056f6000396000f3fe60806040526004361061012e5760003560e01c8063715018a6116100ab57806395d89b411161006f57806395d89b411461034f578063a9059cbb1461037c578063bf474bed1461039c578063c5766876146103b2578063dd62ed3e146103d2578063e677c8831461041857600080fd5b8063715018a6146102db578063751039fc146102f05780637d1db4a5146103055780638da5cb5b1461031b5780638f9a55c01461033957600080fd5b8063313ce567116100f2578063313ce5671461023d57806349bd5a5e1461025957806351bc3c851461027957806359ebeb901461029057806370a08231146102a557600080fd5b806306fdde031461013a578063095ea7b3146101925780631694505e146101c257806318160ddd146101fa57806323b872dd1461021d57600080fd5b3661013557005b600080fd5b34801561014657600080fd5b5060408051808201909152601881527f416c6c596f75724261736541726542656c6f6e67546f5573000000000000000060208201525b6040516101899190611347565b60405180910390f35b34801561019e57600080fd5b506101b26101ad3660046113bd565b610438565b6040519015158152602001610189565b3480156101ce57600080fd5b50600b546101e2906001600160a01b031681565b6040516001600160a01b039091168152602001610189565b34801561020657600080fd5b5061020f61044f565b604051908152602001610189565b34801561022957600080fd5b506101b26102383660046113e9565b610470565b34801561024957600080fd5b5060405160128152602001610189565b34801561026557600080fd5b50600c546101e2906001600160a01b031681565b34801561028557600080fd5b5061028e6104d9565b005b34801561029c57600080fd5b5061028e61052c565b3480156102b157600080fd5b5061020f6102c036600461142a565b6001600160a01b031660009081526001602052604090205490565b3480156102e757600080fd5b5061028e6105c4565b3480156102fc57600080fd5b5061028e610638565b34801561031157600080fd5b5061020f60065481565b34801561032757600080fd5b506000546001600160a01b03166101e2565b34801561034557600080fd5b5061020f60075481565b34801561035b57600080fd5b5060408051808201909152600481526320a6262160e11b602082015261017c565b34801561038857600080fd5b506101b26103973660046113bd565b6106ea565b3480156103a857600080fd5b5061020f60085481565b3480156103be57600080fd5b5061028e6103cd36600461145d565b6106f7565b3480156103de57600080fd5b5061020f6103ed366004611528565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561042457600080fd5b5061028e610433366004611561565b61084a565b60006104453384846108d6565b5060015b92915050565b600061045d6012600a61167d565b61046b90633b9aca0061168c565b905090565b600061047d8484846109fa565b6104cf84336104ca856040518060600160405280602881526020016117de602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610fbf565b6108d6565b5060019392505050565b6005546001600160a01b0316336001600160a01b0316146104f957600080fd5b3060009081526001602052604090205480156105185761051881610ff9565b4780156105285761052881611173565b5050565b6000546001600160a01b0316331461055f5760405162461bcd60e51b8152600401610556906116a3565b60405180910390fd5b600c54600160a01b900460ff16156105af5760405162461bcd60e51b815260206004820152601360248201527254726164696e6720697320656e61626c65642160681b6044820152606401610556565b600c805460ff60a01b1916600160a01b179055565b6000546001600160a01b031633146105ee5760405162461bcd60e51b8152600401610556906116a3565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106625760405162461bcd60e51b8152600401610556906116a3565b61066e6012600a61167d565b61067c90633b9aca0061168c565b60065561068b6012600a61167d565b61069990633b9aca0061168c565b6007557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106c96012600a61167d565b6106d790633b9aca0061168c565b60405190815260200160405180910390a1565b60006104453384846109fa565b6000546001600160a01b031633146107215760405162461bcd60e51b8152600401610556906116a3565b336000908152600160205260409020548111156107805760405162461bcd60e51b815260206004820152601f60248201527f496e73756666696369656e742062616c616e636520746f2061697264726f70006044820152606401610556565b60006107986107916012600a61167d565b83906111ad565b905060005b83518110156108445760008482815181106107ba576107ba6116d8565b6020026020010151905060006001600160a01b0316816001600160a01b0316036108265760405162461bcd60e51b815260206004820152601960248201527f496e76616c696420726563697069656e742061646472657373000000000000006044820152606401610556565b6108313382856109fa565b508061083c816116ee565b91505061079d565b50505050565b6000546001600160a01b031633146108745760405162461bcd60e51b8152600401610556906116a3565b601e8211158015610886575060288111155b6108cb5760405162461bcd60e51b8152602060048201526016602482015275466565732063616e6e6f74206578636565642034302560501b6044820152606401610556565b600991909155600a55565b6001600160a01b0383166109385760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610556565b6001600160a01b0382166109995760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610556565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a5e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610556565b6001600160a01b038216610ac05760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610556565b60008111610b225760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610556565b600080546001600160a01b03858116911614801590610b4f57506000546001600160a01b03848116911614155b15610e7c57600c54600160a01b900460ff161515600114610bd85760405162461bcd60e51b815260206004820152603f60248201527f45524332303a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c6564006064820152608401610556565b6001600160a01b03841660009081526004602052604090205460ff16158015610c1a57506001600160a01b03831660009081526004602052604090205460ff16155b610c665760405162461bcd60e51b815260206004820152601b60248201527f45524332303a2057616c6c657420697320626c61636b6c6973742100000000006044820152606401610556565b610c866064610c80600954856111ad90919063ffffffff16565b90611236565b600c549091506001600160a01b038581169116148015610cb45750600b546001600160a01b03848116911614155b8015610cd957506001600160a01b03831660009081526003602052604090205460ff16155b15610dab57600654821115610d305760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610556565b60075482610d53856001600160a01b031660009081526001602052604090205490565b610d5d9190611707565b1115610dab5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610556565b600c546001600160a01b038481169116148015610dd157506001600160a01b0384163014155b15610df357610df06064610c80600a54856111ad90919063ffffffff16565b90505b306000908152600160205260409020546006548110610e1157506006545b600c54600160a81b900460ff16158015610e385750600c546001600160a01b038581169116145b8015610e4d5750600c54600160b01b900460ff165b8015610e5a575060085481115b15610e7a57610e6881610ff9565b478015610e7857610e7847611173565b505b505b8015610ef65730600090815260016020526040902054610e9c9082611278565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610eed9085815260200190565b60405180910390a35b6001600160a01b038416600090815260016020526040902054610f1990836112d7565b6001600160a01b038516600090815260016020526040902055610f5e610f3f83836112d7565b6001600160a01b03851660009081526001602052604090205490611278565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610fa885856112d7565b60405190815260200160405180910390a350505050565b60008184841115610fe35760405162461bcd60e51b81526004016105569190611347565b506000610ff0848661171a565b95945050505050565b600c805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611041576110416116d8565b6001600160a01b03928316602091820292909201810191909152600b54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561109a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110be919061172d565b816001815181106110d1576110d16116d8565b6001600160a01b039283166020918202929092010152600b546110f791309116846108d6565b600b5460405163791ac94760e01b81526001600160a01b039091169063791ac9479061113090859060009086903090429060040161174a565b600060405180830381600087803b15801561114a57600080fd5b505af115801561115e573d6000803e3d6000fd5b5050600c805460ff60a81b1916905550505050565b6005546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610528573d6000803e3d6000fd5b6000826000036111bf57506000610449565b60006111cb838561168c565b9050826111d885836117bb565b1461122f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610556565b9392505050565b600061122f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611319565b6000806112858385611707565b90508381101561122f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610556565b600061122f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610fbf565b6000818361133a5760405162461bcd60e51b81526004016105569190611347565b506000610ff084866117bb565b600060208083528351808285015260005b8181101561137457858101830151858201604001528201611358565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146113aa57600080fd5b50565b80356113b881611395565b919050565b600080604083850312156113d057600080fd5b82356113db81611395565b946020939093013593505050565b6000806000606084860312156113fe57600080fd5b833561140981611395565b9250602084013561141981611395565b929592945050506040919091013590565b60006020828403121561143c57600080fd5b813561122f81611395565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561147057600080fd5b823567ffffffffffffffff8082111561148857600080fd5b818501915085601f83011261149c57600080fd5b81356020828211156114b0576114b0611447565b8160051b604051601f19603f830116810181811086821117156114d5576114d5611447565b6040529283528183019350848101820192898411156114f357600080fd5b948201945b8386101561151857611509866113ad565b855294820194938201936114f8565b9997909101359750505050505050565b6000806040838503121561153b57600080fd5b823561154681611395565b9150602083013561155681611395565b809150509250929050565b6000806040838503121561157457600080fd5b50508035926020909101359150565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156115d45781600019048211156115ba576115ba611583565b808516156115c757918102915b93841c939080029061159e565b509250929050565b6000826115eb57506001610449565b816115f857506000610449565b816001811461160e576002811461161857611634565b6001915050610449565b60ff84111561162957611629611583565b50506001821b610449565b5060208310610133831016604e8410600b8410161715611657575081810a610449565b6116618383611599565b806000190482111561167557611675611583565b029392505050565b600061122f60ff8416836115dc565b808202811582820484141761044957610449611583565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b60006001820161170057611700611583565b5060010190565b8082018082111561044957610449611583565b8181038181111561044957610449611583565b60006020828403121561173f57600080fd5b815161122f81611395565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561179a5784516001600160a01b031683529383019391830191600101611775565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826117d857634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212202644deefd72886827902b09e7df9890322ba32d3a41631271c1891a1413a0d1b64736f6c63430008110033

Deployed Bytecode

0x60806040526004361061012e5760003560e01c8063715018a6116100ab57806395d89b411161006f57806395d89b411461034f578063a9059cbb1461037c578063bf474bed1461039c578063c5766876146103b2578063dd62ed3e146103d2578063e677c8831461041857600080fd5b8063715018a6146102db578063751039fc146102f05780637d1db4a5146103055780638da5cb5b1461031b5780638f9a55c01461033957600080fd5b8063313ce567116100f2578063313ce5671461023d57806349bd5a5e1461025957806351bc3c851461027957806359ebeb901461029057806370a08231146102a557600080fd5b806306fdde031461013a578063095ea7b3146101925780631694505e146101c257806318160ddd146101fa57806323b872dd1461021d57600080fd5b3661013557005b600080fd5b34801561014657600080fd5b5060408051808201909152601881527f416c6c596f75724261736541726542656c6f6e67546f5573000000000000000060208201525b6040516101899190611347565b60405180910390f35b34801561019e57600080fd5b506101b26101ad3660046113bd565b610438565b6040519015158152602001610189565b3480156101ce57600080fd5b50600b546101e2906001600160a01b031681565b6040516001600160a01b039091168152602001610189565b34801561020657600080fd5b5061020f61044f565b604051908152602001610189565b34801561022957600080fd5b506101b26102383660046113e9565b610470565b34801561024957600080fd5b5060405160128152602001610189565b34801561026557600080fd5b50600c546101e2906001600160a01b031681565b34801561028557600080fd5b5061028e6104d9565b005b34801561029c57600080fd5b5061028e61052c565b3480156102b157600080fd5b5061020f6102c036600461142a565b6001600160a01b031660009081526001602052604090205490565b3480156102e757600080fd5b5061028e6105c4565b3480156102fc57600080fd5b5061028e610638565b34801561031157600080fd5b5061020f60065481565b34801561032757600080fd5b506000546001600160a01b03166101e2565b34801561034557600080fd5b5061020f60075481565b34801561035b57600080fd5b5060408051808201909152600481526320a6262160e11b602082015261017c565b34801561038857600080fd5b506101b26103973660046113bd565b6106ea565b3480156103a857600080fd5b5061020f60085481565b3480156103be57600080fd5b5061028e6103cd36600461145d565b6106f7565b3480156103de57600080fd5b5061020f6103ed366004611528565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561042457600080fd5b5061028e610433366004611561565b61084a565b60006104453384846108d6565b5060015b92915050565b600061045d6012600a61167d565b61046b90633b9aca0061168c565b905090565b600061047d8484846109fa565b6104cf84336104ca856040518060600160405280602881526020016117de602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610fbf565b6108d6565b5060019392505050565b6005546001600160a01b0316336001600160a01b0316146104f957600080fd5b3060009081526001602052604090205480156105185761051881610ff9565b4780156105285761052881611173565b5050565b6000546001600160a01b0316331461055f5760405162461bcd60e51b8152600401610556906116a3565b60405180910390fd5b600c54600160a01b900460ff16156105af5760405162461bcd60e51b815260206004820152601360248201527254726164696e6720697320656e61626c65642160681b6044820152606401610556565b600c805460ff60a01b1916600160a01b179055565b6000546001600160a01b031633146105ee5760405162461bcd60e51b8152600401610556906116a3565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106625760405162461bcd60e51b8152600401610556906116a3565b61066e6012600a61167d565b61067c90633b9aca0061168c565b60065561068b6012600a61167d565b61069990633b9aca0061168c565b6007557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106c96012600a61167d565b6106d790633b9aca0061168c565b60405190815260200160405180910390a1565b60006104453384846109fa565b6000546001600160a01b031633146107215760405162461bcd60e51b8152600401610556906116a3565b336000908152600160205260409020548111156107805760405162461bcd60e51b815260206004820152601f60248201527f496e73756666696369656e742062616c616e636520746f2061697264726f70006044820152606401610556565b60006107986107916012600a61167d565b83906111ad565b905060005b83518110156108445760008482815181106107ba576107ba6116d8565b6020026020010151905060006001600160a01b0316816001600160a01b0316036108265760405162461bcd60e51b815260206004820152601960248201527f496e76616c696420726563697069656e742061646472657373000000000000006044820152606401610556565b6108313382856109fa565b508061083c816116ee565b91505061079d565b50505050565b6000546001600160a01b031633146108745760405162461bcd60e51b8152600401610556906116a3565b601e8211158015610886575060288111155b6108cb5760405162461bcd60e51b8152602060048201526016602482015275466565732063616e6e6f74206578636565642034302560501b6044820152606401610556565b600991909155600a55565b6001600160a01b0383166109385760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610556565b6001600160a01b0382166109995760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610556565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a5e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610556565b6001600160a01b038216610ac05760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610556565b60008111610b225760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610556565b600080546001600160a01b03858116911614801590610b4f57506000546001600160a01b03848116911614155b15610e7c57600c54600160a01b900460ff161515600114610bd85760405162461bcd60e51b815260206004820152603f60248201527f45524332303a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c6564006064820152608401610556565b6001600160a01b03841660009081526004602052604090205460ff16158015610c1a57506001600160a01b03831660009081526004602052604090205460ff16155b610c665760405162461bcd60e51b815260206004820152601b60248201527f45524332303a2057616c6c657420697320626c61636b6c6973742100000000006044820152606401610556565b610c866064610c80600954856111ad90919063ffffffff16565b90611236565b600c549091506001600160a01b038581169116148015610cb45750600b546001600160a01b03848116911614155b8015610cd957506001600160a01b03831660009081526003602052604090205460ff16155b15610dab57600654821115610d305760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610556565b60075482610d53856001600160a01b031660009081526001602052604090205490565b610d5d9190611707565b1115610dab5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610556565b600c546001600160a01b038481169116148015610dd157506001600160a01b0384163014155b15610df357610df06064610c80600a54856111ad90919063ffffffff16565b90505b306000908152600160205260409020546006548110610e1157506006545b600c54600160a81b900460ff16158015610e385750600c546001600160a01b038581169116145b8015610e4d5750600c54600160b01b900460ff165b8015610e5a575060085481115b15610e7a57610e6881610ff9565b478015610e7857610e7847611173565b505b505b8015610ef65730600090815260016020526040902054610e9c9082611278565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610eed9085815260200190565b60405180910390a35b6001600160a01b038416600090815260016020526040902054610f1990836112d7565b6001600160a01b038516600090815260016020526040902055610f5e610f3f83836112d7565b6001600160a01b03851660009081526001602052604090205490611278565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610fa885856112d7565b60405190815260200160405180910390a350505050565b60008184841115610fe35760405162461bcd60e51b81526004016105569190611347565b506000610ff0848661171a565b95945050505050565b600c805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611041576110416116d8565b6001600160a01b03928316602091820292909201810191909152600b54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561109a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110be919061172d565b816001815181106110d1576110d16116d8565b6001600160a01b039283166020918202929092010152600b546110f791309116846108d6565b600b5460405163791ac94760e01b81526001600160a01b039091169063791ac9479061113090859060009086903090429060040161174a565b600060405180830381600087803b15801561114a57600080fd5b505af115801561115e573d6000803e3d6000fd5b5050600c805460ff60a81b1916905550505050565b6005546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610528573d6000803e3d6000fd5b6000826000036111bf57506000610449565b60006111cb838561168c565b9050826111d885836117bb565b1461122f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610556565b9392505050565b600061122f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611319565b6000806112858385611707565b90508381101561122f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610556565b600061122f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610fbf565b6000818361133a5760405162461bcd60e51b81526004016105569190611347565b506000610ff084866117bb565b600060208083528351808285015260005b8181101561137457858101830151858201604001528201611358565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146113aa57600080fd5b50565b80356113b881611395565b919050565b600080604083850312156113d057600080fd5b82356113db81611395565b946020939093013593505050565b6000806000606084860312156113fe57600080fd5b833561140981611395565b9250602084013561141981611395565b929592945050506040919091013590565b60006020828403121561143c57600080fd5b813561122f81611395565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561147057600080fd5b823567ffffffffffffffff8082111561148857600080fd5b818501915085601f83011261149c57600080fd5b81356020828211156114b0576114b0611447565b8160051b604051601f19603f830116810181811086821117156114d5576114d5611447565b6040529283528183019350848101820192898411156114f357600080fd5b948201945b8386101561151857611509866113ad565b855294820194938201936114f8565b9997909101359750505050505050565b6000806040838503121561153b57600080fd5b823561154681611395565b9150602083013561155681611395565b809150509250929050565b6000806040838503121561157457600080fd5b50508035926020909101359150565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156115d45781600019048211156115ba576115ba611583565b808516156115c757918102915b93841c939080029061159e565b509250929050565b6000826115eb57506001610449565b816115f857506000610449565b816001811461160e576002811461161857611634565b6001915050610449565b60ff84111561162957611629611583565b50506001821b610449565b5060208310610133831016604e8410600b8410161715611657575081810a610449565b6116618383611599565b806000190482111561167557611675611583565b029392505050565b600061122f60ff8416836115dc565b808202811582820484141761044957610449611583565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b60006001820161170057611700611583565b5060010190565b8082018082111561044957610449611583565b8181038181111561044957610449611583565b60006020828403121561173f57600080fd5b815161122f81611395565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561179a5784516001600160a01b031683529383019391830191600101611775565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826117d857634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212202644deefd72886827902b09e7df9890322ba32d3a41631271c1891a1413a0d1b64736f6c63430008110033

Deployed Bytecode Sourcemap

6671:7377:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8413:83;;;;;;;;;;-1:-1:-1;8483:5:0;;;;;;;;;;;;;;;;;8413:83;;;;;;;:::i;:::-;;;;;;;;9246:161;;;;;;;;;;-1:-1:-1;9246:161:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;9246:161:0;1162:187:1;7521:41:0;;;;;;;;;;-1:-1:-1;7521:41:0;;;;-1:-1:-1;;;;;7521:41:0;;;;;;-1:-1:-1;;;;;1544:32:1;;;1526:51;;1514:2;1499:18;7521:41:0;1354:229:1;8690:95:0;;;;;;;;;;;;;:::i;:::-;;;1734:25:1;;;1722:2;1707:18;8690:95:0;1588:177:1;9415:313:0;;;;;;;;;;-1:-1:-1;9415:313:0;;;;;:::i;:::-;;:::i;8599:83::-;;;;;;;;;;-1:-1:-1;8599:83:0;;7196:2;2373:36:1;;2361:2;2346:18;8599:83:0;2231:184:1;7569:28:0;;;;;;;;;;-1:-1:-1;7569:28:0;;;;-1:-1:-1;;;;;7569:28:0;;;13697:348;;;;;;;;;;;;;:::i;:::-;;13314:135;;;;;;;;;;;;;:::i;8793:119::-;;;;;;;;;;-1:-1:-1;8793:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;8886:18:0;8859:7;8886:18;;;:9;:18;;;;;;;8793:119;6027:148;;;;;;;;;;;;;:::i;13046:160::-;;;;;;;;;;;;;:::i;7276:47::-;;;;;;;;;;;;;;;;5813:79;;;;;;;;;;-1:-1:-1;5851:7:0;5878:6;-1:-1:-1;;;;;5878:6:0;5813:79;;7330:49;;;;;;;;;;;;;;;;8504:87;;;;;;;;;;-1:-1:-1;8576:7:0;;;;;;;;;;;;-1:-1:-1;;;8576:7:0;;;;8504:87;;8920:167;;;;;;;;;;-1:-1:-1;8920:167:0;;;;;:::i;:::-;;:::i;7386:53::-;;;;;;;;;;;;;;;;12085:464;;;;;;;;;;-1:-1:-1;12085:464:0;;;;;:::i;:::-;;:::i;9095:143::-;;;;;;;;;;-1:-1:-1;9095:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;9203:18:0;;;9176:7;9203:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;9095:143;13461:191;;;;;;;;;;-1:-1:-1;13461:191:0;;;;;:::i;:::-;;:::i;9246:161::-;9321:4;9338:39;3648:10;9361:7;9370:6;9338:8;:39::i;:::-;-1:-1:-1;9395:4:0;9246:161;;;;;:::o;8690:95::-;8743:7;7256:13;7196:2;7256;:13;:::i;:::-;7240:29;;:13;:29;:::i;:::-;8763:14;;8690:95;:::o;9415:313::-;9513:4;9530:36;9540:6;9548:9;9559:6;9530:9;:36::i;:::-;9577:121;9586:6;3648:10;9608:89;9646:6;9608:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9608:19:0;;;;;;:11;:19;;;;;;;;3648:10;9608:33;;;;;;;;;;:37;:89::i;:::-;9577:8;:121::i;:::-;-1:-1:-1;9716:4:0;9415:313;;;;;:::o;13697:348::-;13761:10;;-1:-1:-1;;;;;13761:10:0;3648;-1:-1:-1;;;;;13747:24:0;;13739:33;;;;;;13822:4;13783:20;8886:18;;;:9;:18;;;;;;13842:14;;13839:73;;13870:30;13887:12;13870:16;:30::i;:::-;13941:21;13976:12;;13973:65;;14002:24;14015:10;14002:12;:24::i;:::-;13728:317;;13697:348::o;13314:135::-;5940:6;;-1:-1:-1;;;;;5940:6:0;3648:10;5940:22;5932:67;;;;-1:-1:-1;;;5932:67:0;;;;;;;:::i;:::-;;;;;;;;;13368:11:::1;::::0;-1:-1:-1;;;13368:11:0;::::1;;;:20;13360:52;;;::::0;-1:-1:-1;;;13360:52:0;;7105:2:1;13360:52:0::1;::::0;::::1;7087:21:1::0;7144:2;7124:18;;;7117:30;-1:-1:-1;;;7163:18:1;;;7156:49;7222:18;;13360:52:0::1;6903:343:1::0;13360:52:0::1;13423:11;:18:::0;;-1:-1:-1;;;;13423:18:0::1;-1:-1:-1::0;;;13423:18:0::1;::::0;;13314:135::o;6027:148::-;5940:6;;-1:-1:-1;;;;;5940:6:0;3648:10;5940:22;5932:67;;;;-1:-1:-1;;;5932:67:0;;;;;;;:::i;:::-;6134:1:::1;6118:6:::0;;6097:40:::1;::::0;-1:-1:-1;;;;;6118:6:0;;::::1;::::0;6097:40:::1;::::0;6134:1;;6097:40:::1;6165:1;6148:19:::0;;-1:-1:-1;;;;;;6148:19:0::1;::::0;;6027:148::o;13046:160::-;5940:6;;-1:-1:-1;;;;;5940:6:0;3648:10;5940:22;5932:67;;;;-1:-1:-1;;;5932:67:0;;;;;;;:::i;:::-;7256:13:::1;7196:2;7256;:13;:::i;:::-;7240:29;::::0;:13:::1;:29;:::i;:::-;13100:12;:22:::0;7256:13:::1;7196:2;7256;:13;:::i;:::-;7240:29;::::0;:13:::1;:29;:::i;:::-;13133:14;:22:::0;13171:27:::1;7256:13;7196:2;7256;:13;:::i;:::-;7240:29;::::0;:13:::1;:29;:::i;:::-;13171:27;::::0;1734:25:1;;;1722:2;1707:18;13171:27:0::1;;;;;;;13046:160::o:0;8920:167::-;8998:4;9015:42;3648:10;9039:9;9050:6;9015:9;:42::i;12085:464::-;5940:6;;-1:-1:-1;;;;;5940:6:0;3648:10;5940:22;5932:67;;;;-1:-1:-1;;;5932:67:0;;;;;;;:::i;:::-;12202:10:::1;8859:7:::0;8886:18;;;:9;:18;;;;;;12182:6:::1;:31;;12174:75;;;::::0;-1:-1:-1;;;12174:75:0;;7453:2:1;12174:75:0::1;::::0;::::1;7435:21:1::0;7492:2;7472:18;;;7465:30;7531:33;7511:18;;;7504:61;7582:18;;12174:75:0::1;7251:355:1::0;12174:75:0::1;12262:19;12284:25;12295:13;7196:2;12295;:13;:::i;:::-;12284:6:::0;;:10:::1;:25::i;:::-;12262:47;;12323:9;12318:228;12342:10;:17;12338:1;:21;12318:228;;;12377:17;12397:10;12408:1;12397:13;;;;;;;;:::i;:::-;;;;;;;12377:33;;12450:1;-1:-1:-1::0;;;;;12429:23:0::1;:9;-1:-1:-1::0;;;;;12429:23:0::1;::::0;12421:61:::1;;;::::0;-1:-1:-1;;;12421:61:0;;7945:2:1;12421:61:0::1;::::0;::::1;7927:21:1::0;7984:2;7964:18;;;7957:30;8023:27;8003:18;;;7996:55;8068:18;;12421:61:0::1;7743:349:1::0;12421:61:0::1;12493:45;12503:10;12515:9;12526:11;12493:9;:45::i;:::-;-1:-1:-1::0;12361:3:0;::::1;::::0;::::1;:::i;:::-;;;;12318:228;;;;12167:382;12085:464:::0;;:::o;13461:191::-;5940:6;;-1:-1:-1;;;;;5940:6:0;3648:10;5940:22;5932:67;;;;-1:-1:-1;;;5932:67:0;;;;;;;:::i;:::-;13552:2:::1;13544:4;:10;;:25;;;;;13567:2;13558:5;:11;;13544:25;13536:60;;;::::0;-1:-1:-1;;;13536:60:0;;8439:2:1;13536:60:0::1;::::0;::::1;8421:21:1::0;8478:2;8458:18;;;8451:30;-1:-1:-1;;;8497:18:1;;;8490:52;8559:18;;13536:60:0::1;8237:346:1::0;13536:60:0::1;13605:7;:14:::0;;;;13628:8:::1;:16:::0;13461:191::o;9736:335::-;-1:-1:-1;;;;;9829:19:0;;9821:68;;;;-1:-1:-1;;;9821:68:0;;8790:2:1;9821:68:0;;;8772:21:1;8829:2;8809:18;;;8802:30;8868:34;8848:18;;;8841:62;-1:-1:-1;;;8919:18:1;;;8912:34;8963:19;;9821:68:0;8588:400:1;9821:68:0;-1:-1:-1;;;;;9908:21:0;;9900:68;;;;-1:-1:-1;;;9900:68:0;;9195:2:1;9900:68:0;;;9177:21:1;9234:2;9214:18;;;9207:30;9273:34;9253:18;;;9246:62;-1:-1:-1;;;9324:18:1;;;9317:32;9366:19;;9900:68:0;8993:398:1;9900:68:0;-1:-1:-1;;;;;9979:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;10031:32;;1734:25:1;;;10031:32:0;;1707:18:1;10031:32:0;;;;;;;9736:335;;;:::o;10079:1998::-;-1:-1:-1;;;;;10167:18:0;;10159:68;;;;-1:-1:-1;;;10159:68:0;;9598:2:1;10159:68:0;;;9580:21:1;9637:2;9617:18;;;9610:30;9676:34;9656:18;;;9649:62;-1:-1:-1;;;9727:18:1;;;9720:35;9772:19;;10159:68:0;9396:401:1;10159:68:0;-1:-1:-1;;;;;10246:16:0;;10238:64;;;;-1:-1:-1;;;10238:64:0;;10004:2:1;10238:64:0;;;9986:21:1;10043:2;10023:18;;;10016:30;10082:34;10062:18;;;10055:62;-1:-1:-1;;;10133:18:1;;;10126:33;10176:19;;10238:64:0;9802:399:1;10238:64:0;10330:1;10321:6;:10;10313:64;;;;-1:-1:-1;;;10313:64:0;;10408:2:1;10313:64:0;;;10390:21:1;10447:2;10427:18;;;10420:30;10486:34;10466:18;;;10459:62;-1:-1:-1;;;10537:18:1;;;10530:39;10586:19;;10313:64:0;10206:405:1;10313:64:0;10388:17;5878:6;;-1:-1:-1;;;;;10422:15:0;;;5878:6;;10422:15;;;;:32;;-1:-1:-1;5851:7:0;5878:6;-1:-1:-1;;;;;10441:13:0;;;5878:6;;10441:13;;10422:32;10418:1303;;;10479:11;;-1:-1:-1;;;10479:11:0;;;;:19;;10494:4;10479:19;10471:95;;;;-1:-1:-1;;;10471:95:0;;10818:2:1;10471:95:0;;;10800:21:1;10857:2;10837:18;;;10830:30;10896:34;10876:18;;;10869:62;10967:33;10947:18;;;10940:61;11018:19;;10471:95:0;10616:427:1;10471:95:0;-1:-1:-1;;;;;10590:10:0;;;;;;:4;:10;;;;;;;;10589:11;:24;;;;-1:-1:-1;;;;;;10605:8:0;;;;;;:4;:8;;;;;;;;10604:9;10589:24;10581:64;;;;-1:-1:-1;;;10581:64:0;;11250:2:1;10581:64:0;;;11232:21:1;11289:2;11269:18;;;11262:30;11328:29;11308:18;;;11301:57;11375:18;;10581:64:0;11048:351:1;10581:64:0;10672:28;10696:3;10672:19;10683:7;;10672:6;:10;;:19;;;;:::i;:::-;:23;;:28::i;:::-;10729:13;;10660:40;;-1:-1:-1;;;;;;10721:21:0;;;10729:13;;10721:21;:55;;;;-1:-1:-1;10760:15:0;;-1:-1:-1;;;;;10746:30:0;;;10760:15;;10746:30;;10721:55;:83;;;;-1:-1:-1;;;;;;10782:22:0;;;;;;:18;:22;;;;;;;;10780:24;10721:83;10717:283;;;10844:12;;10834:6;:22;;10826:60;;;;-1:-1:-1;;;10826:60:0;;11606:2:1;10826:60:0;;;11588:21:1;11645:2;11625:18;;;11618:30;11684:27;11664:18;;;11657:55;11729:18;;10826:60:0;11404:349:1;10826:60:0;10939:14;;10929:6;10913:13;10923:2;-1:-1:-1;;;;;8886:18:0;8859:7;8886:18;;;:9;:18;;;;;;;8793:119;10913:13;:22;;;;:::i;:::-;:40;;10905:79;;;;-1:-1:-1;;;10905:79:0;;12090:2:1;10905:79:0;;;12072:21:1;12129:2;12109:18;;;12102:30;12168:28;12148:18;;;12141:56;12214:18;;10905:79:0;11888:350:1;10905:79:0;11025:13;;-1:-1:-1;;;;;11019:19:0;;;11025:13;;11019:19;:43;;;;-1:-1:-1;;;;;;11042:20:0;;11057:4;11042:20;;11019:43;11016:124;;;11095:29;11120:3;11095:20;11106:8;;11095:6;:10;;:20;;;;:::i;:29::-;11083:41;;11016:124;11205:4;11156:28;8886:18;;;:9;:18;;;;;;11253:12;;11229:36;;11226:111;;-1:-1:-1;11309:12:0;;11226:111;11356:6;;-1:-1:-1;;;11356:6:0;;;;11355:7;:31;;;;-1:-1:-1;11373:13:0;;-1:-1:-1;;;;;11366:20:0;;;11373:13;;11366:20;11355:31;:46;;;;-1:-1:-1;11390:11:0;;-1:-1:-1;;;11390:11:0;;;;11355:46;:88;;;;;11426:17;;11405:20;:38;11355:88;11351:359;;;11464:38;11481:20;11464:16;:38::i;:::-;11550:21;11593:22;;11590:105;;11640:35;11653:21;11640:12;:35::i;:::-;11445:265;11351:359;10456:1265;10418:1303;11736:11;;11733:161;;11804:4;11786:24;;;;:9;:24;;;;;;:39;;11815:9;11786:28;:39::i;:::-;11779:4;11761:24;;;;:9;:24;;;;;;;:64;;;;11843:39;;-1:-1:-1;;;;;11843:39:0;;;;;;;11872:9;1734:25:1;;1722:2;1707:18;;1588:177;11843:39:0;;;;;;;;11733:161;-1:-1:-1;;;;;11920:15:0;;;;;;:9;:15;;;;;;:27;;11940:6;11920:19;:27::i;:::-;-1:-1:-1;;;;;11904:15:0;;;;;;:9;:15;;;;;:43;11972:40;11990:21;:6;12001:9;11990:10;:21::i;:::-;-1:-1:-1;;;;;11972:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;11958:13:0;;;;;;;:9;:13;;;;;:54;;;;12028:41;;;12047:21;:6;12058:9;12047:10;:21::i;:::-;12028:41;;1734:25:1;;;1722:2;1707:18;12028:41:0;;;;;;;10148:1929;10079:1998;;;:::o;4705:190::-;4791:7;4827:12;4819:6;;;;4811:29;;;;-1:-1:-1;;;4811:29:0;;;;;;;;:::i;:::-;-1:-1:-1;4851:9:0;4863:5;4867:1;4863;:5;:::i;:::-;4851:17;4705:190;-1:-1:-1;;;;;4705:190:0:o;12555:483::-;7798:6;:13;;-1:-1:-1;;;;7798:13:0;-1:-1:-1;;;7798:13:0;;;12657:16:::1;::::0;;12671:1:::1;12657:16:::0;;;;;::::1;::::0;;-1:-1:-1;;12657:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12657:16:0::1;12633:40;;12702:4;12684;12689:1;12684:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12684:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12728:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;12728:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;12684:7;;12728:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12718:4;12723:1;12718:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12718:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;12793:15:::1;::::0;12761:62:::1;::::0;12778:4:::1;::::0;12793:15:::1;12811:11:::0;12761:8:::1;:62::i;:::-;12834:15;::::0;:196:::1;::::0;-1:-1:-1;;;12834:196:0;;-1:-1:-1;;;;;12834:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;12915:11;;12834:15:::1;::::0;12957:4;;12984::::1;::::0;13004:15:::1;::::0;12834:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;7834:6:0;:14;;-1:-1:-1;;;;7834:14:0;;;-1:-1:-1;;;;12555:483:0:o;13214:92::-;13271:10;;:27;;-1:-1:-1;;;;;13271:10:0;;;;:27;;;;;13291:6;;13271:10;:27;:10;:27;13291:6;13271:10;:27;;;;;;;;;;;;;;;;;;;4903:246;4961:7;4985:1;4990;4985:6;4981:47;;-1:-1:-1;5015:1:0;5008:8;;4981:47;5038:9;5050:5;5054:1;5050;:5;:::i;:::-;5038:17;-1:-1:-1;5083:1:0;5074:5;5078:1;5038:17;5074:5;:::i;:::-;:10;5066:56;;;;-1:-1:-1;;;5066:56:0;;14041:2:1;5066:56:0;;;14023:21:1;14080:2;14060:18;;;14053:30;14119:34;14099:18;;;14092:62;-1:-1:-1;;;14170:18:1;;;14163:31;14211:19;;5066:56:0;13839:397:1;5066:56:0;5140:1;4903:246;-1:-1:-1;;;4903:246:0:o;5157:132::-;5215:7;5242:39;5246:1;5249;5242:39;;;;;;;;;;;;;;;;;:3;:39::i;4374:179::-;4432:7;;4464:5;4468:1;4464;:5;:::i;:::-;4452:17;;4493:1;4488;:6;;4480:46;;;;-1:-1:-1;;;4480:46:0;;14443:2:1;4480:46:0;;;14425:21:1;14482:2;14462:18;;;14455:30;14521:29;14501:18;;;14494:57;14568:18;;4480:46:0;14241:351:1;4561:136:0;4619:7;4646:43;4650:1;4653;4646:43;;;;;;;;;;;;;;;;;:3;:43::i;5297:189::-;5383:7;5418:12;5411:5;5403:28;;;;-1:-1:-1;;;5403:28:0;;;;;;;;:::i;:::-;-1:-1:-1;5442:9:0;5454:5;5458:1;5454;: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:134::-;771:20;;800:31;771:20;800:31;:::i;:::-;703:134;;;:::o;842:315::-;910:6;918;971:2;959:9;950:7;946:23;942:32;939:52;;;987:1;984;977:12;939:52;1026:9;1013:23;1045:31;1070:5;1045:31;:::i;:::-;1095:5;1147:2;1132:18;;;;1119:32;;-1:-1:-1;;;842:315:1:o;1770:456::-;1847:6;1855;1863;1916:2;1904:9;1895:7;1891:23;1887:32;1884:52;;;1932:1;1929;1922:12;1884:52;1971:9;1958:23;1990:31;2015:5;1990:31;:::i;:::-;2040:5;-1:-1:-1;2097:2:1;2082:18;;2069:32;2110:33;2069:32;2110:33;:::i;:::-;1770:456;;2162:7;;-1:-1:-1;;;2216:2:1;2201:18;;;;2188:32;;1770:456::o;2628:247::-;2687:6;2740:2;2728:9;2719:7;2715:23;2711:32;2708:52;;;2756:1;2753;2746:12;2708:52;2795:9;2782:23;2814:31;2839:5;2814:31;:::i;2880:127::-;2941:10;2936:3;2932:20;2929:1;2922:31;2972:4;2969:1;2962:15;2996:4;2993:1;2986:15;3012:1191;3105:6;3113;3166:2;3154:9;3145:7;3141:23;3137:32;3134:52;;;3182:1;3179;3172:12;3134:52;3222:9;3209:23;3251:18;3292:2;3284:6;3281:14;3278:34;;;3308:1;3305;3298:12;3278:34;3346:6;3335:9;3331:22;3321:32;;3391:7;3384:4;3380:2;3376:13;3372:27;3362:55;;3413:1;3410;3403:12;3362:55;3449:2;3436:16;3471:4;3494:2;3490;3487:10;3484:36;;;3500:18;;:::i;:::-;3546:2;3543:1;3539:10;3578:2;3572:9;3641:2;3637:7;3632:2;3628;3624:11;3620:25;3612:6;3608:38;3696:6;3684:10;3681:22;3676:2;3664:10;3661:18;3658:46;3655:72;;;3707:18;;:::i;:::-;3743:2;3736:22;3793:18;;;3827:15;;;;-1:-1:-1;3869:11:1;;;3865:20;;;3897:19;;;3894:39;;;3929:1;3926;3919:12;3894:39;3953:11;;;;3973:148;3989:6;3984:3;3981:15;3973:148;;;4055:23;4074:3;4055:23;:::i;:::-;4043:36;;4006:12;;;;4099;;;;3973:148;;;4140:6;4178:18;;;;4165:32;;-1:-1:-1;;;;;;;3012:1191:1:o;4208:388::-;4276:6;4284;4337:2;4325:9;4316:7;4312:23;4308:32;4305:52;;;4353:1;4350;4343:12;4305:52;4392:9;4379:23;4411:31;4436:5;4411:31;:::i;:::-;4461:5;-1:-1:-1;4518:2:1;4503:18;;4490:32;4531:33;4490:32;4531:33;:::i;:::-;4583:7;4573:17;;;4208:388;;;;;:::o;4601:248::-;4669:6;4677;4730:2;4718:9;4709:7;4705:23;4701:32;4698:52;;;4746:1;4743;4736:12;4698:52;-1:-1:-1;;4769:23:1;;;4839:2;4824:18;;;4811:32;;-1:-1:-1;4601:248:1:o;4854:127::-;4915:10;4910:3;4906:20;4903:1;4896:31;4946:4;4943:1;4936:15;4970:4;4967:1;4960:15;4986:422;5075:1;5118:5;5075:1;5132:270;5153:7;5143:8;5140:21;5132:270;;;5212:4;5208:1;5204:6;5200:17;5194:4;5191:27;5188:53;;;5221:18;;:::i;:::-;5271:7;5261:8;5257:22;5254:55;;;5291:16;;;;5254:55;5370:22;;;;5330:15;;;;5132:270;;;5136:3;4986:422;;;;;:::o;5413:806::-;5462:5;5492:8;5482:80;;-1:-1:-1;5533:1:1;5547:5;;5482:80;5581:4;5571:76;;-1:-1:-1;5618:1:1;5632:5;;5571:76;5663:4;5681:1;5676:59;;;;5749:1;5744:130;;;;5656:218;;5676:59;5706:1;5697:10;;5720:5;;;5744:130;5781:3;5771:8;5768:17;5765:43;;;5788:18;;:::i;:::-;-1:-1:-1;;5844:1:1;5830:16;;5859:5;;5656:218;;5958:2;5948:8;5945:16;5939:3;5933:4;5930:13;5926:36;5920:2;5910:8;5907:16;5902:2;5896:4;5893:12;5889:35;5886:77;5883:159;;;-1:-1:-1;5995:19:1;;;6027:5;;5883:159;6074:34;6099:8;6093:4;6074:34;:::i;:::-;6144:6;6140:1;6136:6;6132:19;6123:7;6120:32;6117:58;;;6155:18;;:::i;:::-;6193:20;;5413:806;-1:-1:-1;;;5413:806:1:o;6224:140::-;6282:5;6311:47;6352:4;6342:8;6338:19;6332:4;6311:47;:::i;6369:168::-;6442:9;;;6473;;6490:15;;;6484:22;;6470:37;6460:71;;6511:18;;:::i;6542:356::-;6744:2;6726:21;;;6763:18;;;6756:30;6822:34;6817:2;6802:18;;6795:62;6889:2;6874:18;;6542:356::o;7611:127::-;7672:10;7667:3;7663:20;7660:1;7653:31;7703:4;7700:1;7693:15;7727:4;7724:1;7717:15;8097:135;8136:3;8157:17;;;8154:43;;8177:18;;:::i;:::-;-1:-1:-1;8224:1:1;8213:13;;8097:135::o;11758:125::-;11823:9;;;11844:10;;;11841:36;;;11857:18;;:::i;12243:128::-;12310:9;;;12331:11;;;12328:37;;;12345:18;;:::i;12376:251::-;12446:6;12499:2;12487:9;12478:7;12474:23;12470:32;12467:52;;;12515:1;12512;12505:12;12467:52;12547:9;12541:16;12566:31;12591:5;12566:31;:::i;12632:980::-;12894:4;12942:3;12931:9;12927:19;12973:6;12962:9;12955:25;12999:2;13037:6;13032:2;13021:9;13017:18;13010:34;13080:3;13075:2;13064:9;13060:18;13053:31;13104:6;13139;13133:13;13170:6;13162;13155:22;13208:3;13197:9;13193:19;13186:26;;13247:2;13239:6;13235:15;13221:29;;13268:1;13278:195;13292:6;13289:1;13286:13;13278:195;;;13357:13;;-1:-1:-1;;;;;13353:39:1;13341:52;;13448:15;;;;13413:12;;;;13389:1;13307:9;13278:195;;;-1:-1:-1;;;;;;;13529:32:1;;;;13524:2;13509:18;;13502:60;-1:-1:-1;;;13593:3:1;13578:19;13571:35;13490:3;12632:980;-1:-1:-1;;;12632:980:1:o;13617:217::-;13657:1;13683;13673:132;;13727:10;13722:3;13718:20;13715:1;13708:31;13762:4;13759:1;13752:15;13790:4;13787:1;13780:15;13673:132;-1:-1:-1;13819:9:1;;13617:217::o

Swarm Source

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