ETH Price: $2,722.67 (+6.53%)
Gas: 3 Gwei

Token

Vaultboy (Vaultboy)
 

Overview

Max Total Supply

100,000,000 Vaultboy

Holders

97 (0.00%)

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
687,175.584488451 Vaultboy

Value
$0.00
0x8000aca442bcb304ac6a3da834afde883dfe58b3
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

This token provides access to a private lounge where token holders can get from multiple AI bots all the info they need in order to DYOR on all new launched projects on ETH.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Vaultboy

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 2023-12-10
*/

// SPDX-License-Identifier: MIT
/**  
VAULTBOY - The best source for early calls !!!.
TG: https://t.me/vaultboyportal
Twitter: https://x.com/vaultboytoken
Web: https://vaultboy.io

TEAM:
DEV:  https://t.me/blackhatshiller 
CMO:  https://t.me/ViCious25
CEO:  https://t.me/basmacurata
**/

pragma solidity ^0.8.19;

library Address{
    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        (bool success, ) = recipient.call{value: amount}("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }
}

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

    function _msgData() internal view virtual returns (bytes memory) {
        this;
        return msg.data;
    }
}

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor() {
        _setOwner(_msgSender());
    }

    function owner() public view virtual returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        _setOwner(address(0));
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _setOwner(newOwner);
    }

    function _setOwner(address newOwner) private {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

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

interface IFactory{
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IRouter {
    function factory() external pure returns (address);
    function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts);
    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);
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline) external;
}

contract Vaultboy is Context, IERC20, Ownable {

    using Address for address payable;

    IRouter public router;
    address public pair;
    
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) public _isExcludedFromFee;
    mapping (address => bool) public _isExcludedFromMaxBalance;

    uint8 private constant _decimals = 9; 
    uint256 private _tTotal = 100_000_000 * (10**_decimals);
    uint256 public swapThreshold = 500_000 * (10**_decimals);
    uint256 public maxWallet =  2_000_000 * (10**_decimals);
    
    uint8 public buyTax = 5;
    uint8 public sellTax = 5;

    string private constant _name = unicode"Vaultboy"; 
    string private constant _symbol = unicode"Vaultboy";

    address private constant DEAD = 0x000000000000000000000000000000000000dEaD;
    address public marketingWallet = 0x70501DBFFef359168448Cc52ee4dad605b12d71b;
    address public VaultWallet = 0x1ebf6F6409917981D97A70E19254c03381a377A1;
    address public autoLPWallet = 0xfc994E9C7061543363Ac517AAA33521dFd036671;

    bool private swapping;
    bool private _triggerMax = false;
    modifier lockTheSwap {
        swapping = true;
        _;
        swapping = false;
    }

    uint256 private _genesisBlock;
    
    constructor () {
        _tOwned[_msgSender()] = _tTotal;
        IRouter _router = IRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        address _pair = IFactory(_router.factory()).createPair(address(this), _router.WETH());
        router = _router;
        pair = _pair;
        _approve(owner(), address(router), ~uint256(0));

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[marketingWallet] = true;
        _isExcludedFromFee[VaultWallet] = true;
        _isExcludedFromFee[DEAD] = true;

        _isExcludedFromMaxBalance[owner()] = true;
        _isExcludedFromMaxBalance[address(this)] = true;
        _isExcludedFromMaxBalance[pair] = true;
        _isExcludedFromMaxBalance[marketingWallet] = true;
        _isExcludedFromMaxBalance[VaultWallet] = true;
        _isExcludedFromMaxBalance[DEAD] = true;
        
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

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

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

    function totalSupply() public view override returns (uint256) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _tOwned[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()] - amount);
        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 _preTransferCheck(address from,address to,uint256 amount) internal {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        require(balanceOf(to) + amount <= maxWallet || _isExcludedFromMaxBalance[to], "Transfer amount exceeds the maxWallet.");
        if(from == owner() && to == pair && balanceOf(pair) == 0)
            _genesisBlock = block.number;
        if (balanceOf(address(this)) >= swapThreshold && !swapping && from != pair && from != owner() && to != owner())
            swapAndLiquify();
        if(_genesisBlock + 6 <= block.number && !_triggerMax){
            _triggerMax = true;
            maxWallet = 2_000_000 * (10**_decimals);
        }
    }

    function _getValues(address from,address to, uint256 amount) private returns(uint256){
        uint256 taxedTokens = amount * buyTax / 100;
        if(to == pair)
            taxedTokens = amount * sellTax / 100;
        if (taxedTokens > 0){
            _tOwned[address(this)] += taxedTokens;
            emit Transfer (from, address(this), taxedTokens);
        }
        return (amount - taxedTokens);
    }
    
    function _transfer(address from,address to,uint256 amount) private {
        _preTransferCheck(from, to, amount);
        _tOwned[from] -= amount;
        uint256 transferAmount = amount;
        if(!_isExcludedFromFee[from] && !_isExcludedFromFee[to])
            transferAmount = _getValues(from, to, amount);
        _tOwned[to] += transferAmount;
        emit Transfer(from, to, transferAmount);
    }

    function swapAndLiquify() private lockTheSwap{

        uint256 tokensForMarketing = swapThreshold * 40 / 100;
        uint256 tokensForTreasury = swapThreshold * 40 / 100;
        uint256 tokensForLiquidity = swapThreshold * 20 / 100;
        
        if(tokensForMarketing > 0){
            uint256 ethSwapped = swapTokensForETH(tokensForMarketing);
            if(ethSwapped > 0)
                payable(marketingWallet).transfer(ethSwapped);
        }

        if(tokensForTreasury > 0){
            uint256 ethSwapped = swapTokensForETH(tokensForTreasury);
            if(ethSwapped > 0)
                payable(VaultWallet).transfer(ethSwapped);
        }

        if(tokensForLiquidity > 0){
            uint half = tokensForLiquidity / 2;
            uint otherHalf = tokensForLiquidity - half;
            uint balAutoLP = swapTokensForETH(half);
            if (balAutoLP > 0)
                addLiquidity(otherHalf, balAutoLP);
        }

        if (address(this).balance > 0)
            payable(marketingWallet).sendValue(address(this).balance);

    }

    function swapTokensForETH(uint256 tokenAmount) private returns (uint256) {
        uint256 initialBalance = address(this).balance;
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = router.WETH();

        _approve(address(this), address(router), tokenAmount);

        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
        return (address(this).balance - initialBalance);
    }

    function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private {
        _approve(address(this), address(router), tokenAmount);

        (,uint256 ethFromLiquidity,) = router.addLiquidityETH {value: ethAmount} (
            address(this),
            tokenAmount,
            0,
            0,
            autoLPWallet,
            block.timestamp
        );
        
        if (ethAmount - ethFromLiquidity > 0)
            payable(marketingWallet).sendValue (ethAmount - ethFromLiquidity);
    }

    receive() external payable {}
    
    function getBalances(address[] memory holders) public view returns(uint[] memory){
        uint length = holders.length;
        uint[] memory accountBalances = new uint[](length);
        for (uint i = 0; i < length; i++) {
            accountBalances[i] = balanceOf(holders[i]);
        }
        return accountBalances;
    }

    function setContractLimits(uint256 maxWalletEXACT_) external onlyOwner{
        uint256 minimumAmount = 50_000 * (10**_decimals);
        require(maxWalletEXACT_ * (10**_decimals) >= minimumAmount, "Invalid Settings!");
        maxWallet = maxWalletEXACT_ * (10**_decimals);
    }

    function setContractSettings(uint8 buyTax_ , uint8 sellTax_) external onlyOwner{
        require(buyTax_ <= 25 && sellTax_ <= 50, "Invalid Settings!");
        buyTax = buyTax_; 
        sellTax = sellTax_;
    }

    function setSwapThreshold(uint256 swapThresholdEXACT_) external onlyOwner{
        swapThreshold = swapThresholdEXACT_ * (10**_decimals);
    }

    function manualSwap() external lockTheSwap{
        require(msg.sender == marketingWallet);
        uint256 tokenBalance = balanceOf(address(this));
        if(tokenBalance > 0){
            uint256 ethSwapped = swapTokensForETH(tokenBalance);
            if(ethSwapped > 0)
                payable(marketingWallet).transfer(ethSwapped);
        }
        if (address(this).balance > 0)
            payable(marketingWallet).sendValue(address(this).balance);
    }


}

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":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"VaultWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludedFromMaxBalance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[],"name":"autoLPWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTax","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"holders","type":"address[]"}],"name":"getBalances","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletEXACT_","type":"uint256"}],"name":"setContractLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"buyTax_","type":"uint8"},{"internalType":"uint8","name":"sellTax_","type":"uint8"}],"name":"setContractSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"swapThresholdEXACT_","type":"uint256"}],"name":"setSwapThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126009600a62000728565b62000022906305f5e10062000740565b600755620000336009600a62000728565b62000042906207a12062000740565b600855620000536009600a62000728565b6200006290621e848062000740565b600955600a80547570501dbffef359168448cc52ee4dad605b12d71b05056001600160b01b0319909116179055600b80546001600160a01b031916731ebf6f6409917981d97a70e19254c03381a377a1179055600c8054600161ff0160a01b03191673fc994e9c7061543363ac517aaa33521dfd036671179055348015620000e957600080fd5b50620000f53362000497565b60075433600090815260036020908152604080832093909355825163c45a015560e01b81529251737a250d5630b4cf539739df2c5dacb4c659f2488d93849263c45a0155926004808401938290030181865afa1580156200015a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200018091906200075a565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001ce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001f491906200075a565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000242573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200026891906200075a565b600180546001600160a01b038581166001600160a01b031992831617909255600280548484169216919091179055600054919250620002b791166001546001600160a01b0316600019620004e7565b600160056000620002d06000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526005909352818320805485166001908117909155600a54620100009004821684528284208054861682179055600b549091168352908220805484168217905561dead82527f7d509c07f0d4edcc2dd1b53aae68677132eb562dcba78e36381b63ccaf66e6ba80549093168117909255600690620003866000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526006909352818320805485166001908117909155600254821684528284208054861682179055600a54620100009004821684528284208054861682179055600b549091168352908220805484168217905561dead9091527f1aecba4ebe7a4e0673e4891b2b092b2228e4322380b579fb494fad3da8586e2280549092161790556200043f3390565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6007546040516200048791815260200190565b60405180910390a3505062000785565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0383166200054f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b038216620005b25760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840162000546565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200066a5781600019048211156200064e576200064e62000613565b808516156200065c57918102915b93841c93908002906200062e565b509250929050565b600082620006835750600162000722565b81620006925750600062000722565b8160018114620006ab5760028114620006b657620006d6565b600191505062000722565b60ff841115620006ca57620006ca62000613565b50506001821b62000722565b5060208310610133831016604e8410600b8410161715620006fb575081810a62000722565b62000707838362000629565b80600019048211156200071e576200071e62000613565b0290505b92915050565b60006200073960ff84168362000672565b9392505050565b808202811582820484141762000722576200072262000613565b6000602082840312156200076d57600080fd5b81516001600160a01b03811681146200073957600080fd5b611b4280620007956000396000f3fe6080604052600436106101bb5760003560e01c806375f0a874116100ec578063a9059cbb1161008a578063f2fde38b11610064578063f2fde38b14610538578063f887ea4014610558578063f8b45b0514610578578063fb1a74f91461058e57600080fd5b8063a9059cbb146104b3578063cc1776d3146104d3578063dd62ed3e146104f257600080fd5b80638da5cb5b116100c65780638da5cb5b1461045557806395d89b41146101f05780639d0014b114610473578063a8aa1b311461049357600080fd5b806375f0a874146103df578063768dc710146104055780637fe74a131461043557600080fd5b8063313ce5671161015957806351bc3c851161013357806351bc3c851461034757806356d3b98f1461035c57806370a0823114610394578063715018a6146103ca57600080fd5b8063313ce567146102e95780634f7041a51461030b5780635025587b1461032557600080fd5b806318160ddd1161019557806318160ddd1461025757806323b872dd1461026c57806328c61f411461028c5780632d2ae1c1146102bc57600080fd5b80630445b667146101c757806306fdde03146101f0578063095ea7b31461022757600080fd5b366101c257005b600080fd5b3480156101d357600080fd5b506101dd60085481565b6040519081526020015b60405180910390f35b3480156101fc57600080fd5b5060408051808201825260088152675661756c74626f7960c01b602082015290516101e791906115cb565b34801561023357600080fd5b5061024761024236600461163e565b6105ae565b60405190151581526020016101e7565b34801561026357600080fd5b506007546101dd565b34801561027857600080fd5b5061024761028736600461166a565b6105c5565b34801561029857600080fd5b506102476102a73660046116ab565b60066020526000908152604090205460ff1681565b3480156102c857600080fd5b506102dc6102d73660046116e5565b610617565b6040516101e791906117aa565b3480156102f557600080fd5b5060095b60405160ff90911681526020016101e7565b34801561031757600080fd5b50600a546102f99060ff1681565b34801561033157600080fd5b506103456103403660046117ee565b6106dd565b005b34801561035357600080fd5b506103456107a2565b34801561036857600080fd5b50600c5461037c906001600160a01b031681565b6040516001600160a01b0390911681526020016101e7565b3480156103a057600080fd5b506101dd6103af3660046116ab565b6001600160a01b031660009081526003602052604090205490565b3480156103d657600080fd5b50610345610872565b3480156103eb57600080fd5b50600a5461037c906201000090046001600160a01b031681565b34801561041157600080fd5b506102476104203660046116ab565b60056020526000908152604090205460ff1681565b34801561044157600080fd5b50610345610450366004611818565b6108a8565b34801561046157600080fd5b506000546001600160a01b031661037c565b34801561047f57600080fd5b5061034561048e3660046117ee565b61094e565b34801561049f57600080fd5b5060025461037c906001600160a01b031681565b3480156104bf57600080fd5b506102476104ce36600461163e565b610994565b3480156104df57600080fd5b50600a546102f990610100900460ff1681565b3480156104fe57600080fd5b506101dd61050d36600461184b565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561054457600080fd5b506103456105533660046116ab565b6109a1565b34801561056457600080fd5b5060015461037c906001600160a01b031681565b34801561058457600080fd5b506101dd60095481565b34801561059a57600080fd5b50600b5461037c906001600160a01b031681565b60006105bb338484610a3c565b5060015b92915050565b60006105d2848484610b60565b6001600160a01b03841660009081526004602090815260408083203380855292529091205461060d91869161060890869061189a565b610a3c565b5060019392505050565b805160609060008167ffffffffffffffff811115610637576106376116cf565b604051908082528060200260200182016040528015610660578160200160208202803683370190505b50905060005b828110156106d5576106a6858281518110610683576106836118ad565b60200260200101516001600160a01b031660009081526003602052604090205490565b8282815181106106b8576106b86118ad565b6020908102919091010152806106cd816118c3565b915050610666565b509392505050565b6000546001600160a01b031633146107105760405162461bcd60e51b8152600401610707906118dc565b60405180910390fd5b600061071e6009600a6119f5565b61072a9061c350611a04565b9050806107396009600a6119f5565b6107439084611a04565b10156107855760405162461bcd60e51b8152602060048201526011602482015270496e76616c69642053657474696e67732160781b6044820152606401610707565b6107916009600a6119f5565b61079b9083611a04565b6009555050565b600c8054600160a01b60ff60a01b19909116179055600a546201000090046001600160a01b031633146107d457600080fd5b3060009081526003602052604090205480156108405760006107f582610c71565b9050801561083e57600a54604051620100009091046001600160a01b0316906108fc8315029083906000818181858888f1935050505015801561083c573d6000803e3d6000fd5b505b505b471561086257600a54610862906201000090046001600160a01b031647610de1565b50600c805460ff60a01b19169055565b6000546001600160a01b0316331461089c5760405162461bcd60e51b8152600401610707906118dc565b6108a66000610eff565b565b6000546001600160a01b031633146108d25760405162461bcd60e51b8152600401610707906118dc565b60198260ff16111580156108ea575060328160ff1611155b61092a5760405162461bcd60e51b8152602060048201526011602482015270496e76616c69642053657474696e67732160781b6044820152606401610707565b600a805460ff9283166101000261ffff199091169290931691909117919091179055565b6000546001600160a01b031633146109785760405162461bcd60e51b8152600401610707906118dc565b6109846009600a6119f5565b61098e9082611a04565b60085550565b60006105bb338484610b60565b6000546001600160a01b031633146109cb5760405162461bcd60e51b8152600401610707906118dc565b6001600160a01b038116610a305760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610707565b610a3981610eff565b50565b6001600160a01b038316610a9e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610707565b6001600160a01b038216610aff5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610707565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b610b6b838383610f4f565b6001600160a01b03831660009081526003602052604081208054839290610b9390849061189a565b90915550506001600160a01b038316600090815260056020526040902054819060ff16158015610bdc57506001600160a01b03831660009081526005602052604090205460ff16155b15610bef57610bec848484611263565b90505b6001600160a01b03831660009081526003602052604081208054839290610c17908490611a1b565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610c6391815260200190565b60405180910390a350505050565b6040805160028082526060820183526000924792849290916020830190803683370190505090503081600081518110610cac57610cac6118ad565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610d05573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d299190611a2e565b81600181518110610d3c57610d3c6118ad565b6001600160a01b039283166020918202929092010152600154610d629130911686610a3c565b60015460405163791ac94760e01b81526001600160a01b039091169063791ac94790610d9b908790600090869030904290600401611a4b565b600060405180830381600087803b158015610db557600080fd5b505af1158015610dc9573d6000803e3d6000fd5b505050508147610dd9919061189a565b949350505050565b80471015610e315760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610707565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114610e7e576040519150601f19603f3d011682016040523d82523d6000602084013e610e83565b606091505b5050905080610efa5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610707565b505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038316610fb35760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610707565b6001600160a01b0382166110155760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610707565b600081116110775760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610707565b6009548161109a846001600160a01b031660009081526003602052604090205490565b6110a49190611a1b565b1115806110c957506001600160a01b03821660009081526006602052604090205460ff165b6111245760405162461bcd60e51b815260206004820152602660248201527f5472616e7366657220616d6f756e74206578636565647320746865206d61785760448201526530b63632ba1760d11b6064820152608401610707565b6000546001600160a01b03848116911614801561114e57506002546001600160a01b038381169116145b801561117257506002546001600160a01b0316600090815260036020526040902054155b1561117c5743600d555b60085430600090815260036020526040902054101580156111a75750600c54600160a01b900460ff16155b80156111c157506002546001600160a01b03848116911614155b80156111db57506000546001600160a01b03848116911614155b80156111f557506000546001600160a01b03838116911614155b1561120257611202611341565b43600d5460066112129190611a1b565b1115801561122a5750600c54600160a81b900460ff16155b15610efa57600c805460ff60a81b1916600160a81b17905561124e6009600a6119f5565b61125b90621e8480611a04565b600955505050565b600a54600090819060649061127b9060ff1685611a04565b6112859190611abc565b6002549091506001600160a01b03908116908516036112c357600a546064906112b690610100900460ff1685611a04565b6112c09190611abc565b90505b801561132e5730600090815260036020526040812080548392906112e8908490611a1b565b909155505060405181815230906001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b611338818461189a565b95945050505050565b600c805460ff60a01b1916600160a01b179055600854600090606490611368906028611a04565b6113729190611abc565b90506000606460085460286113879190611a04565b6113919190611abc565b90506000606460085460146113a69190611a04565b6113b09190611abc565b9050821561140e5760006113c384610c71565b9050801561140c57600a54604051620100009091046001600160a01b0316906108fc8315029083906000818181858888f1935050505015801561140a573d6000803e3d6000fd5b505b505b811561146557600061141f83610c71565b9050801561146357600b546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611461573d6000803e3d6000fd5b505b505b80156114a9576000611478600283611abc565b90506000611486828461189a565b9050600061149383610c71565b905080156114a5576114a582826114dd565b5050505b47156114cb57600a546114cb906201000090046001600160a01b031647610de1565b5050600c805460ff60a01b1916905550565b6001546114f59030906001600160a01b031684610a3c565b600154600c5460405163f305d71960e01b815230600482015260248101859052600060448201819052606482018190526001600160a01b0392831660848301524260a483015292919091169063f305d71990849060c40160606040518083038185885af115801561156a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061158f9190611ade565b509150600090506115a0828461189a565b1115610efa57610efa6115b3828461189a565b600a546201000090046001600160a01b031690610de1565b600060208083528351808285015260005b818110156115f8578581018301518582016040015282016115dc565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610a3957600080fd5b803561163981611619565b919050565b6000806040838503121561165157600080fd5b823561165c81611619565b946020939093013593505050565b60008060006060848603121561167f57600080fd5b833561168a81611619565b9250602084013561169a81611619565b929592945050506040919091013590565b6000602082840312156116bd57600080fd5b81356116c881611619565b9392505050565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156116f857600080fd5b823567ffffffffffffffff8082111561171057600080fd5b818501915085601f83011261172457600080fd5b813581811115611736576117366116cf565b8060051b604051601f19603f8301168101818110858211171561175b5761175b6116cf565b60405291825284820192508381018501918883111561177957600080fd5b938501935b8285101561179e5761178f8561162e565b8452938501939285019261177e565b98975050505050505050565b6020808252825182820181905260009190848201906040850190845b818110156117e2578351835292840192918401916001016117c6565b50909695505050505050565b60006020828403121561180057600080fd5b5035919050565b803560ff8116811461163957600080fd5b6000806040838503121561182b57600080fd5b61183483611807565b915061184260208401611807565b90509250929050565b6000806040838503121561185e57600080fd5b823561186981611619565b9150602083013561187981611619565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b818103818111156105bf576105bf611884565b634e487b7160e01b600052603260045260246000fd5b6000600182016118d5576118d5611884565b5060010190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181815b8085111561194c57816000190482111561193257611932611884565b8085161561193f57918102915b93841c9390800290611916565b509250929050565b600082611963575060016105bf565b81611970575060006105bf565b81600181146119865760028114611990576119ac565b60019150506105bf565b60ff8411156119a1576119a1611884565b50506001821b6105bf565b5060208310610133831016604e8410600b84101617156119cf575081810a6105bf565b6119d98383611911565b80600019048211156119ed576119ed611884565b029392505050565b60006116c860ff841683611954565b80820281158282048414176105bf576105bf611884565b808201808211156105bf576105bf611884565b600060208284031215611a4057600080fd5b81516116c881611619565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611a9b5784516001600160a01b031683529383019391830191600101611a76565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611ad957634e487b7160e01b600052601260045260246000fd5b500490565b600080600060608486031215611af357600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220fee65d62f726e70973fb25ff589b8f69c0c922b4f372550cde83bfb65db959f164736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101bb5760003560e01c806375f0a874116100ec578063a9059cbb1161008a578063f2fde38b11610064578063f2fde38b14610538578063f887ea4014610558578063f8b45b0514610578578063fb1a74f91461058e57600080fd5b8063a9059cbb146104b3578063cc1776d3146104d3578063dd62ed3e146104f257600080fd5b80638da5cb5b116100c65780638da5cb5b1461045557806395d89b41146101f05780639d0014b114610473578063a8aa1b311461049357600080fd5b806375f0a874146103df578063768dc710146104055780637fe74a131461043557600080fd5b8063313ce5671161015957806351bc3c851161013357806351bc3c851461034757806356d3b98f1461035c57806370a0823114610394578063715018a6146103ca57600080fd5b8063313ce567146102e95780634f7041a51461030b5780635025587b1461032557600080fd5b806318160ddd1161019557806318160ddd1461025757806323b872dd1461026c57806328c61f411461028c5780632d2ae1c1146102bc57600080fd5b80630445b667146101c757806306fdde03146101f0578063095ea7b31461022757600080fd5b366101c257005b600080fd5b3480156101d357600080fd5b506101dd60085481565b6040519081526020015b60405180910390f35b3480156101fc57600080fd5b5060408051808201825260088152675661756c74626f7960c01b602082015290516101e791906115cb565b34801561023357600080fd5b5061024761024236600461163e565b6105ae565b60405190151581526020016101e7565b34801561026357600080fd5b506007546101dd565b34801561027857600080fd5b5061024761028736600461166a565b6105c5565b34801561029857600080fd5b506102476102a73660046116ab565b60066020526000908152604090205460ff1681565b3480156102c857600080fd5b506102dc6102d73660046116e5565b610617565b6040516101e791906117aa565b3480156102f557600080fd5b5060095b60405160ff90911681526020016101e7565b34801561031757600080fd5b50600a546102f99060ff1681565b34801561033157600080fd5b506103456103403660046117ee565b6106dd565b005b34801561035357600080fd5b506103456107a2565b34801561036857600080fd5b50600c5461037c906001600160a01b031681565b6040516001600160a01b0390911681526020016101e7565b3480156103a057600080fd5b506101dd6103af3660046116ab565b6001600160a01b031660009081526003602052604090205490565b3480156103d657600080fd5b50610345610872565b3480156103eb57600080fd5b50600a5461037c906201000090046001600160a01b031681565b34801561041157600080fd5b506102476104203660046116ab565b60056020526000908152604090205460ff1681565b34801561044157600080fd5b50610345610450366004611818565b6108a8565b34801561046157600080fd5b506000546001600160a01b031661037c565b34801561047f57600080fd5b5061034561048e3660046117ee565b61094e565b34801561049f57600080fd5b5060025461037c906001600160a01b031681565b3480156104bf57600080fd5b506102476104ce36600461163e565b610994565b3480156104df57600080fd5b50600a546102f990610100900460ff1681565b3480156104fe57600080fd5b506101dd61050d36600461184b565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561054457600080fd5b506103456105533660046116ab565b6109a1565b34801561056457600080fd5b5060015461037c906001600160a01b031681565b34801561058457600080fd5b506101dd60095481565b34801561059a57600080fd5b50600b5461037c906001600160a01b031681565b60006105bb338484610a3c565b5060015b92915050565b60006105d2848484610b60565b6001600160a01b03841660009081526004602090815260408083203380855292529091205461060d91869161060890869061189a565b610a3c565b5060019392505050565b805160609060008167ffffffffffffffff811115610637576106376116cf565b604051908082528060200260200182016040528015610660578160200160208202803683370190505b50905060005b828110156106d5576106a6858281518110610683576106836118ad565b60200260200101516001600160a01b031660009081526003602052604090205490565b8282815181106106b8576106b86118ad565b6020908102919091010152806106cd816118c3565b915050610666565b509392505050565b6000546001600160a01b031633146107105760405162461bcd60e51b8152600401610707906118dc565b60405180910390fd5b600061071e6009600a6119f5565b61072a9061c350611a04565b9050806107396009600a6119f5565b6107439084611a04565b10156107855760405162461bcd60e51b8152602060048201526011602482015270496e76616c69642053657474696e67732160781b6044820152606401610707565b6107916009600a6119f5565b61079b9083611a04565b6009555050565b600c8054600160a01b60ff60a01b19909116179055600a546201000090046001600160a01b031633146107d457600080fd5b3060009081526003602052604090205480156108405760006107f582610c71565b9050801561083e57600a54604051620100009091046001600160a01b0316906108fc8315029083906000818181858888f1935050505015801561083c573d6000803e3d6000fd5b505b505b471561086257600a54610862906201000090046001600160a01b031647610de1565b50600c805460ff60a01b19169055565b6000546001600160a01b0316331461089c5760405162461bcd60e51b8152600401610707906118dc565b6108a66000610eff565b565b6000546001600160a01b031633146108d25760405162461bcd60e51b8152600401610707906118dc565b60198260ff16111580156108ea575060328160ff1611155b61092a5760405162461bcd60e51b8152602060048201526011602482015270496e76616c69642053657474696e67732160781b6044820152606401610707565b600a805460ff9283166101000261ffff199091169290931691909117919091179055565b6000546001600160a01b031633146109785760405162461bcd60e51b8152600401610707906118dc565b6109846009600a6119f5565b61098e9082611a04565b60085550565b60006105bb338484610b60565b6000546001600160a01b031633146109cb5760405162461bcd60e51b8152600401610707906118dc565b6001600160a01b038116610a305760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610707565b610a3981610eff565b50565b6001600160a01b038316610a9e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610707565b6001600160a01b038216610aff5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610707565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b610b6b838383610f4f565b6001600160a01b03831660009081526003602052604081208054839290610b9390849061189a565b90915550506001600160a01b038316600090815260056020526040902054819060ff16158015610bdc57506001600160a01b03831660009081526005602052604090205460ff16155b15610bef57610bec848484611263565b90505b6001600160a01b03831660009081526003602052604081208054839290610c17908490611a1b565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610c6391815260200190565b60405180910390a350505050565b6040805160028082526060820183526000924792849290916020830190803683370190505090503081600081518110610cac57610cac6118ad565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610d05573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d299190611a2e565b81600181518110610d3c57610d3c6118ad565b6001600160a01b039283166020918202929092010152600154610d629130911686610a3c565b60015460405163791ac94760e01b81526001600160a01b039091169063791ac94790610d9b908790600090869030904290600401611a4b565b600060405180830381600087803b158015610db557600080fd5b505af1158015610dc9573d6000803e3d6000fd5b505050508147610dd9919061189a565b949350505050565b80471015610e315760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610707565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114610e7e576040519150601f19603f3d011682016040523d82523d6000602084013e610e83565b606091505b5050905080610efa5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610707565b505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038316610fb35760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610707565b6001600160a01b0382166110155760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610707565b600081116110775760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610707565b6009548161109a846001600160a01b031660009081526003602052604090205490565b6110a49190611a1b565b1115806110c957506001600160a01b03821660009081526006602052604090205460ff165b6111245760405162461bcd60e51b815260206004820152602660248201527f5472616e7366657220616d6f756e74206578636565647320746865206d61785760448201526530b63632ba1760d11b6064820152608401610707565b6000546001600160a01b03848116911614801561114e57506002546001600160a01b038381169116145b801561117257506002546001600160a01b0316600090815260036020526040902054155b1561117c5743600d555b60085430600090815260036020526040902054101580156111a75750600c54600160a01b900460ff16155b80156111c157506002546001600160a01b03848116911614155b80156111db57506000546001600160a01b03848116911614155b80156111f557506000546001600160a01b03838116911614155b1561120257611202611341565b43600d5460066112129190611a1b565b1115801561122a5750600c54600160a81b900460ff16155b15610efa57600c805460ff60a81b1916600160a81b17905561124e6009600a6119f5565b61125b90621e8480611a04565b600955505050565b600a54600090819060649061127b9060ff1685611a04565b6112859190611abc565b6002549091506001600160a01b03908116908516036112c357600a546064906112b690610100900460ff1685611a04565b6112c09190611abc565b90505b801561132e5730600090815260036020526040812080548392906112e8908490611a1b565b909155505060405181815230906001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b611338818461189a565b95945050505050565b600c805460ff60a01b1916600160a01b179055600854600090606490611368906028611a04565b6113729190611abc565b90506000606460085460286113879190611a04565b6113919190611abc565b90506000606460085460146113a69190611a04565b6113b09190611abc565b9050821561140e5760006113c384610c71565b9050801561140c57600a54604051620100009091046001600160a01b0316906108fc8315029083906000818181858888f1935050505015801561140a573d6000803e3d6000fd5b505b505b811561146557600061141f83610c71565b9050801561146357600b546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611461573d6000803e3d6000fd5b505b505b80156114a9576000611478600283611abc565b90506000611486828461189a565b9050600061149383610c71565b905080156114a5576114a582826114dd565b5050505b47156114cb57600a546114cb906201000090046001600160a01b031647610de1565b5050600c805460ff60a01b1916905550565b6001546114f59030906001600160a01b031684610a3c565b600154600c5460405163f305d71960e01b815230600482015260248101859052600060448201819052606482018190526001600160a01b0392831660848301524260a483015292919091169063f305d71990849060c40160606040518083038185885af115801561156a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061158f9190611ade565b509150600090506115a0828461189a565b1115610efa57610efa6115b3828461189a565b600a546201000090046001600160a01b031690610de1565b600060208083528351808285015260005b818110156115f8578581018301518582016040015282016115dc565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610a3957600080fd5b803561163981611619565b919050565b6000806040838503121561165157600080fd5b823561165c81611619565b946020939093013593505050565b60008060006060848603121561167f57600080fd5b833561168a81611619565b9250602084013561169a81611619565b929592945050506040919091013590565b6000602082840312156116bd57600080fd5b81356116c881611619565b9392505050565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156116f857600080fd5b823567ffffffffffffffff8082111561171057600080fd5b818501915085601f83011261172457600080fd5b813581811115611736576117366116cf565b8060051b604051601f19603f8301168101818110858211171561175b5761175b6116cf565b60405291825284820192508381018501918883111561177957600080fd5b938501935b8285101561179e5761178f8561162e565b8452938501939285019261177e565b98975050505050505050565b6020808252825182820181905260009190848201906040850190845b818110156117e2578351835292840192918401916001016117c6565b50909695505050505050565b60006020828403121561180057600080fd5b5035919050565b803560ff8116811461163957600080fd5b6000806040838503121561182b57600080fd5b61183483611807565b915061184260208401611807565b90509250929050565b6000806040838503121561185e57600080fd5b823561186981611619565b9150602083013561187981611619565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b818103818111156105bf576105bf611884565b634e487b7160e01b600052603260045260246000fd5b6000600182016118d5576118d5611884565b5060010190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181815b8085111561194c57816000190482111561193257611932611884565b8085161561193f57918102915b93841c9390800290611916565b509250929050565b600082611963575060016105bf565b81611970575060006105bf565b81600181146119865760028114611990576119ac565b60019150506105bf565b60ff8411156119a1576119a1611884565b50506001821b6105bf565b5060208310610133831016604e8410600b84101617156119cf575081810a6105bf565b6119d98383611911565b80600019048211156119ed576119ed611884565b029392505050565b60006116c860ff841683611954565b80820281158282048414176105bf576105bf611884565b808201808211156105bf576105bf611884565b600060208284031215611a4057600080fd5b81516116c881611619565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611a9b5784516001600160a01b031683529383019391830191600101611a76565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611ad957634e487b7160e01b600052601260045260246000fd5b500490565b600080600060608486031215611af357600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220fee65d62f726e70973fb25ff589b8f69c0c922b4f372550cde83bfb65db959f164736f6c63430008130033

Deployed Bytecode Sourcemap

3415:9453:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3930:56;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;3930:56:0;;;;;;;;5768:83;;;;;;;;;;-1:-1:-1;5838:5:0;;;;;;;;;;;-1:-1:-1;;;5838:5:0;;;;5768:83;;;;5838:5;5768:83;:::i;6599:161::-;;;;;;;;;;-1:-1:-1;6599:161:0;;;;;:::i;:::-;;:::i;:::-;;;1509:14:1;;1502:22;1484:41;;1472:2;1457:18;6599:161:0;1344:187:1;6045:95:0;;;;;;;;;;-1:-1:-1;6125:7:0;;6045:95;;6768:266;;;;;;;;;;-1:-1:-1;6768:266:0;;;;;:::i;:::-;;:::i;3757:58::-;;;;;;;;;;-1:-1:-1;3757:58:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;11376:335;;;;;;;;;;-1:-1:-1;11376:335:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;5954:83::-;;;;;;;;;;-1:-1:-1;3859:1:0;5954:83;;;4316:4:1;4304:17;;;4286:36;;4274:2;4259:18;5954:83:0;4144:184:1;4061:23:0;;;;;;;;;;-1:-1:-1;4061:23:0;;;;;;;;11719:284;;;;;;;;;;-1:-1:-1;11719:284:0;;;;;:::i;:::-;;:::i;:::-;;12388:473;;;;;;;;;;;;;:::i;4482:72::-;;;;;;;;;;-1:-1:-1;4482:72:0;;;;-1:-1:-1;;;;;4482:72:0;;;;;;-1:-1:-1;;;;;4682:32:1;;;4664:51;;4652:2;4637:18;4482:72:0;4518:203:1;6148:117:0;;;;;;;;;;-1:-1:-1;6148:117:0;;;;;:::i;:::-;-1:-1:-1;;;;;6241:16:0;6214:7;6241:16;;;:7;:16;;;;;;;6148:117;1406:94;;;;;;;;;;;;;:::i;4322:75::-;;;;;;;;;;-1:-1:-1;4322:75:0;;;;;;;-1:-1:-1;;;;;4322:75:0;;;3699:51;;;;;;;;;;-1:-1:-1;3699:51:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;12011:216;;;;;;;;;;-1:-1:-1;12011:216:0;;;;;:::i;:::-;;:::i;1183:87::-;;;;;;;;;;-1:-1:-1;1229:7:0;1256:6;-1:-1:-1;;;;;1256:6:0;1183:87;;12235:145;;;;;;;;;;-1:-1:-1;12235:145:0;;;;;:::i;:::-;;:::i;3540:19::-;;;;;;;;;;-1:-1:-1;3540:19:0;;;;-1:-1:-1;;;;;3540:19:0;;;6273:167;;;;;;;;;;-1:-1:-1;6273:167:0;;;;;:::i;:::-;;:::i;4091:24::-;;;;;;;;;;-1:-1:-1;4091:24:0;;;;;;;;;;;6448:143;;;;;;;;;;-1:-1:-1;6448:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6556:18:0;;;6529:7;6556:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6448:143;1508:192;;;;;;;;;;-1:-1:-1;1508:192:0;;;;;:::i;:::-;;:::i;3512:21::-;;;;;;;;;;-1:-1:-1;3512:21:0;;;;-1:-1:-1;;;;;3512:21:0;;;3993:55;;;;;;;;;;;;;;;;4404:71;;;;;;;;;;-1:-1:-1;4404:71:0;;;;-1:-1:-1;;;;;4404:71:0;;;6599:161;6674:4;6691:39;804:10;6714:7;6723:6;6691:8;:39::i;:::-;-1:-1:-1;6748:4:0;6599:161;;;;;:::o;6768:266::-;6866:4;6883:36;6893:6;6901:9;6912:6;6883:9;:36::i;:::-;-1:-1:-1;;;;;6961:19:0;;;;;;:11;:19;;;;;;;;804:10;6961:33;;;;;;;;;6930:74;;6939:6;;6961:42;;6997:6;;6961:42;:::i;:::-;6930:8;:74::i;:::-;-1:-1:-1;7022:4:0;6768:266;;;;;:::o;11376:335::-;11482:14;;11443:13;;11468:11;11482:14;11539:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11539:18:0;;11507:50;;11573:6;11568:103;11589:6;11585:1;:10;11568:103;;;11638:21;11648:7;11656:1;11648:10;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;6241:16:0;6214:7;6241:16;;;:7;:16;;;;;;;6148:117;11638:21;11617:15;11633:1;11617:18;;;;;;;;:::i;:::-;;;;;;;;;;:42;11597:3;;;;:::i;:::-;;;;11568:103;;;-1:-1:-1;11688:15:0;11376:335;-1:-1:-1;;;11376:335:0:o;11719:284::-;1229:7;1256:6;-1:-1:-1;;;;;1256:6:0;804:10;1318:23;1310:68;;;;-1:-1:-1;;;1310:68:0;;;;;;;:::i;:::-;;;;;;;;;11800:21:::1;11834:13;3859:1;11834:2;:13;:::i;:::-;11824:24;::::0;:6:::1;:24;:::i;:::-;11800:48:::0;-1:-1:-1;11800:48:0;11886:13:::1;3859:1;11886:2;:13;:::i;:::-;11867:33;::::0;:15;:33:::1;:::i;:::-;:50;;11859:80;;;::::0;-1:-1:-1;;;11859:80:0;;8416:2:1;11859:80:0::1;::::0;::::1;8398:21:1::0;8455:2;8435:18;;;8428:30;-1:-1:-1;;;8474:18:1;;;8467:47;8531:18;;11859:80:0::1;8214:341:1::0;11859:80:0::1;11981:13;3859:1;11981:2;:13;:::i;:::-;11962:33;::::0;:15;:33:::1;:::i;:::-;11950:9;:45:::0;-1:-1:-1;;11719:284:0:o;12388:473::-;4662:8;:15;;-1:-1:-1;;;;;;;4662:15:0;;;;;;12463::::1;::::0;;;::::1;-1:-1:-1::0;;;;;12463:15:0::1;12449:10;:29;12441:38;;;::::0;::::1;;12531:4;12490:20;6241:16:::0;;;:7;:16;;;;;;12551;;12548:194:::1;;12583:18;12604:30;12621:12;12604:16;:30::i;:::-;12583:51:::0;-1:-1:-1;12652:14:0;;12649:81:::1;;12693:15;::::0;12685:45:::1;::::0;12693:15;;;::::1;-1:-1:-1::0;;;;;12693:15:0::1;::::0;12685:45:::1;::::0;::::1;;::::0;;;::::1;::::0;;;;12693:15;12685:45;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;12649:81;12568:174;12548:194;12756:21;:25:::0;12752:101:::1;;12804:15;::::0;12796:57:::1;::::0;12804:15;;::::1;-1:-1:-1::0;;;;;12804:15:0::1;12831:21;12796:34;:57::i;:::-;-1:-1:-1::0;4700:8:0;:16;;-1:-1:-1;;;;4700:16:0;;;12388:473::o;1406:94::-;1229:7;1256:6;-1:-1:-1;;;;;1256:6:0;804:10;1318:23;1310:68;;;;-1:-1:-1;;;1310:68:0;;;;;;;:::i;:::-;1471:21:::1;1489:1;1471:9;:21::i;:::-;1406:94::o:0;12011:216::-;1229:7;1256:6;-1:-1:-1;;;;;1256:6:0;804:10;1318:23;1310:68;;;;-1:-1:-1;;;1310:68:0;;;;;;;:::i;:::-;12120:2:::1;12109:7;:13;;;;:31;;;;;12138:2;12126:8;:14;;;;12109:31;12101:61;;;::::0;-1:-1:-1;;;12101:61:0;;8416:2:1;12101:61:0::1;::::0;::::1;8398:21:1::0;8455:2;8435:18;;;8428:30;-1:-1:-1;;;8474:18:1;;;8467:47;8531:18;;12101:61:0::1;8214:341:1::0;12101:61:0::1;12173:6;:16:::0;;::::1;12201:18:::0;;::::1;12173:16;12201:18;-1:-1:-1::0;;12201:18:0;;;12173:16;;;::::1;12201:18:::0;;;;;;;::::1;::::0;;12011:216::o;12235:145::-;1229:7;1256:6;-1:-1:-1;;;;;1256:6:0;804:10;1318:23;1310:68;;;;-1:-1:-1;;;1310:68:0;;;;;;;:::i;:::-;12358:13:::1;3859:1;12358:2;:13;:::i;:::-;12335:37;::::0;:19;:37:::1;:::i;:::-;12319:13;:53:::0;-1:-1:-1;12235:145:0:o;6273:167::-;6351:4;6368:42;804:10;6392:9;6403:6;6368:9;:42::i;1508:192::-;1229:7;1256:6;-1:-1:-1;;;;;1256:6:0;804:10;1318:23;1310:68;;;;-1:-1:-1;;;1310:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1597:22:0;::::1;1589:73;;;::::0;-1:-1:-1;;;1589:73:0;;8762:2:1;1589:73:0::1;::::0;::::1;8744:21:1::0;8801:2;8781:18;;;8774:30;8840:34;8820:18;;;8813:62;-1:-1:-1;;;8891:18:1;;;8884:36;8937:19;;1589:73:0::1;8560:402:1::0;1589:73:0::1;1673:19;1683:8;1673:9;:19::i;:::-;1508:192:::0;:::o;7042:335::-;-1:-1:-1;;;;;7135:19:0;;7127:68;;;;-1:-1:-1;;;7127:68:0;;9169:2:1;7127:68:0;;;9151:21:1;9208:2;9188:18;;;9181:30;9247:34;9227:18;;;9220:62;-1:-1:-1;;;9298:18:1;;;9291:34;9342:19;;7127:68:0;8967:400:1;7127:68:0;-1:-1:-1;;;;;7214:21:0;;7206:68;;;;-1:-1:-1;;;7206:68:0;;9574:2:1;7206:68:0;;;9556:21:1;9613:2;9593:18;;;9586:30;9652:34;9632:18;;;9625:62;-1:-1:-1;;;9703:18:1;;;9696:32;9745:19;;7206:68:0;9372:398:1;7206:68:0;-1:-1:-1;;;;;7285:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7337:32;;160:25:1;;;7337:32:0;;133:18:1;7337:32:0;;;;;;;7042:335;;;:::o;8695:413::-;8773:35;8791:4;8797:2;8801:6;8773:17;:35::i;:::-;-1:-1:-1;;;;;8819:13:0;;;;;;:7;:13;;;;;:23;;8836:6;;8819:13;:23;;8836:6;;8819:23;:::i;:::-;;;;-1:-1:-1;;;;;;;8899:24:0;;8853:22;8899:24;;;:18;:24;;;;;;8878:6;;8899:24;;8898:25;:52;;;;-1:-1:-1;;;;;;8928:22:0;;;;;;:18;:22;;;;;;;;8927:23;8898:52;8895:115;;;8982:28;8993:4;8999:2;9003:6;8982:10;:28::i;:::-;8965:45;;8895:115;-1:-1:-1;;;;;9021:11:0;;;;;;:7;:11;;;;;:29;;9036:14;;9021:11;:29;;9036:14;;9021:29;:::i;:::-;;;;;;;;9081:2;-1:-1:-1;;;;;9066:34:0;9075:4;-1:-1:-1;;;;;9066:34:0;;9085:14;9066:34;;;;160:25:1;;148:2;133:18;;14:177;9066:34:0;;;;;;;;8762:346;8695:413;;;:::o;10219:581::-;10384:16;;;10398:1;10384:16;;;;;;;;10283:7;;10328:21;;10283:7;;10384:16;;;;;;;;;;;;-1:-1:-1;10384:16:0;10360:40;;10429:4;10411;10416:1;10411:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10411:23:0;;;:7;;;;;;;;;;:23;;;;10455:6;;:13;;;-1:-1:-1;;;10455:13:0;;;;:6;;;;;:11;;:13;;;;;10411:7;;10455:13;;;;;:6;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10445:4;10450:1;10445:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10445:23:0;;;:7;;;;;;;;;:23;10513:6;;10481:53;;10498:4;;10513:6;10522:11;10481:8;:53::i;:::-;10547:6;;:187;;-1:-1:-1;;;10547:187:0;;-1:-1:-1;;;;;10547:6:0;;;;:57;;:187;;10619:11;;10547:6;;10661:4;;10688;;10708:15;;10547:187;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10777:14;10753:21;:38;;;;:::i;:::-;10745:47;10219:581;-1:-1:-1;;;;10219:581:0:o;351:317::-;466:6;441:21;:31;;433:73;;;;-1:-1:-1;;;433:73:0;;11348:2:1;433:73:0;;;11330:21:1;11387:2;11367:18;;;11360:30;11426:31;11406:18;;;11399:59;11475:18;;433:73:0;11146:353:1;433:73:0;520:12;538:9;-1:-1:-1;;;;;538:14:0;560:6;538:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;519:52;;;590:7;582:78;;;;-1:-1:-1;;;582:78:0;;11916:2:1;582:78:0;;;11898:21:1;11955:2;11935:18;;;11928:30;11994:34;11974:18;;;11967:62;12065:28;12045:18;;;12038:56;12111:19;;582:78:0;11714:422:1;582:78:0;422:246;351:317;;:::o;1708:173::-;1764:16;1783:6;;-1:-1:-1;;;;;1800:17:0;;;-1:-1:-1;;;;;;1800:17:0;;;;;;1833:40;;1783:6;;;;;;;1833:40;;1764:16;1833:40;1753:128;1708:173;:::o;7389:867::-;-1:-1:-1;;;;;7484:18:0;;7476:68;;;;-1:-1:-1;;;7476:68:0;;12343:2:1;7476:68:0;;;12325:21:1;12382:2;12362:18;;;12355:30;12421:34;12401:18;;;12394:62;-1:-1:-1;;;12472:18:1;;;12465:35;12517:19;;7476:68:0;12141:401:1;7476:68:0;-1:-1:-1;;;;;7563:16:0;;7555:64;;;;-1:-1:-1;;;7555:64:0;;12749:2:1;7555:64:0;;;12731:21:1;12788:2;12768:18;;;12761:30;12827:34;12807:18;;;12800:62;-1:-1:-1;;;12878:18:1;;;12871:33;12921:19;;7555:64:0;12547:399:1;7555:64:0;7647:1;7638:6;:10;7630:64;;;;-1:-1:-1;;;7630:64:0;;13153:2:1;7630:64:0;;;13135:21:1;13192:2;13172:18;;;13165:30;13231:34;13211:18;;;13204:62;-1:-1:-1;;;13282:18:1;;;13275:39;13331:19;;7630:64:0;12951:405:1;7630:64:0;7739:9;;7729:6;7713:13;7723:2;-1:-1:-1;;;;;6241:16:0;6214:7;6241:16;;;:7;:16;;;;;;;6148:117;7713:13;:22;;;;:::i;:::-;:35;;:68;;;-1:-1:-1;;;;;;7752:29:0;;;;;;:25;:29;;;;;;;;7713:68;7705:119;;;;-1:-1:-1;;;7705:119:0;;13563:2:1;7705:119:0;;;13545:21:1;13602:2;13582:18;;;13575:30;13641:34;13621:18;;;13614:62;-1:-1:-1;;;13692:18:1;;;13685:36;13738:19;;7705:119:0;13361:402:1;7705:119:0;1229:7;1256:6;-1:-1:-1;;;;;7838:15:0;;;1256:6;;7838:15;:29;;;;-1:-1:-1;7863:4:0;;-1:-1:-1;;;;;7857:10:0;;;7863:4;;7857:10;7838:29;:53;;;;-1:-1:-1;7881:4:0;;-1:-1:-1;;;;;7881:4:0;6214:7;6241:16;;;:7;:16;;;;;;7871:20;7838:53;7835:99;;;7922:12;7906:13;:28;7835:99;7977:13;;7967:4;6214:7;6241:16;;;:7;:16;;;;;;7949:41;;:54;;;;-1:-1:-1;7995:8:0;;-1:-1:-1;;;7995:8:0;;;;7994:9;7949:54;:70;;;;-1:-1:-1;8015:4:0;;-1:-1:-1;;;;;8007:12:0;;;8015:4;;8007:12;;7949:70;:89;;;;-1:-1:-1;1229:7:0;1256:6;-1:-1:-1;;;;;8023:15:0;;;1256:6;;8023:15;;7949:89;:106;;;;-1:-1:-1;1229:7:0;1256:6;-1:-1:-1;;;;;8042:13:0;;;1256:6;;8042:13;;7949:106;7945:141;;;8070:16;:14;:16::i;:::-;8121:12;8100:13;;8116:1;8100:17;;;;:::i;:::-;:33;;:49;;;;-1:-1:-1;8138:11:0;;-1:-1:-1;;;8138:11:0;;;;8137:12;8100:49;8097:152;;;8165:11;:18;;-1:-1:-1;;;;8165:18:0;-1:-1:-1;;;8165:18:0;;;8223:13;3859:1;8223:2;:13;:::i;:::-;8210:27;;:9;:27;:::i;:::-;8198:9;:39;7389:867;;;:::o;8264:419::-;8391:6;;8341:7;;;;8400:3;;8382:15;;8391:6;;8382;:15;:::i;:::-;:21;;;;:::i;:::-;8423:4;;8360:43;;-1:-1:-1;;;;;;8423:4:0;;;8417:10;;;;8414:64;;8465:7;;8475:3;;8456:16;;8465:7;;;;;8456:6;:16;:::i;:::-;:22;;;;:::i;:::-;8442:36;;8414:64;8493:15;;8489:147;;8540:4;8524:22;;;;:7;:22;;;;;:37;;8550:11;;8524:22;:37;;8550:11;;8524:37;:::i;:::-;;;;-1:-1:-1;;8581:43:0;;160:25:1;;;8605:4:0;;-1:-1:-1;;;;;8581:43:0;;;;;148:2:1;133:18;8581:43:0;;;;;;;8489:147;8654:20;8663:11;8654:6;:20;:::i;:::-;8646:29;8264:419;-1:-1:-1;;;;;8264:419:0:o;9116:1095::-;4662:8;:15;;-1:-1:-1;;;;4662:15:0;-1:-1:-1;;;4662:15:0;;;9203:13:::1;::::0;4662:15;;9224:3:::1;::::0;9203:18:::1;::::0;9219:2:::1;9203:18;:::i;:::-;:24;;;;:::i;:::-;9174:53;;9238:25;9287:3;9266:13;;9282:2;9266:18;;;;:::i;:::-;:24;;;;:::i;:::-;9238:52;;9301:26;9351:3;9330:13;;9346:2;9330:18;;;;:::i;:::-;:24;;;;:::i;:::-;9301:53:::0;-1:-1:-1;9378:22:0;;9375:206:::1;;9416:18;9437:36;9454:18;9437:16;:36::i;:::-;9416:57:::0;-1:-1:-1;9491:14:0;;9488:81:::1;;9532:15;::::0;9524:45:::1;::::0;9532:15;;;::::1;-1:-1:-1::0;;;;;9532:15:0::1;::::0;9524:45:::1;::::0;::::1;;::::0;;;::::1;::::0;;;;9532:15;9524:45;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;9488:81;9401:180;9375:206;9596:21:::0;;9593:200:::1;;9633:18;9654:35;9671:17;9654:16;:35::i;:::-;9633:56:::0;-1:-1:-1;9707:14:0;;9704:77:::1;;9748:11;::::0;9740:41:::1;::::0;-1:-1:-1;;;;;9748:11:0;;::::1;::::0;9740:41;::::1;;;::::0;9770:10;;9748:11:::1;9740:41:::0;9748:11;9740:41;9770:10;9748:11;9740:41;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;9704:77;9618:175;9593:200;9808:22:::0;;9805:283:::1;;9846:9;9858:22;9879:1;9858:18:::0;:22:::1;:::i;:::-;9846:34:::0;-1:-1:-1;9895:14:0::1;9912:25;9846:34:::0;9912:18;:25:::1;:::i;:::-;9895:42;;9952:14;9969:22;9986:4;9969:16;:22::i;:::-;9952:39:::0;-1:-1:-1;10010:13:0;;10006:70:::1;;10042:34;10055:9;10066;10042:12;:34::i;:::-;9831:257;;;9805:283;10104:21;:25:::0;10100:101:::1;;10152:15;::::0;10144:57:::1;::::0;10152:15;;::::1;-1:-1:-1::0;;;;;10152:15:0::1;10179:21;10144:34;:57::i;:::-;-1:-1:-1::0;;4700:8:0;:16;;-1:-1:-1;;;;4700:16:0;;;-1:-1:-1;9116:1095:0:o;10808:519::-;10921:6;;10889:53;;10906:4;;-1:-1:-1;;;;;10921:6:0;10930:11;10889:8;:53::i;:::-;10986:6;;11129:12;;10986:196;;-1:-1:-1;;;10986:196:0;;11051:4;10986:196;;;14331:34:1;14381:18;;;14374:34;;;10957:24:0;14424:18:1;;;14417:34;;;14467:18;;;14460:34;;;-1:-1:-1;;;;;11129:12:0;;;14510:19:1;;;14503:44;11156:15:0;14563:19:1;;;14556:35;10957:24:0;10986:6;;;;;:22;;11017:9;;14265:19:1;;10986:196:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;10955:227:0;-1:-1:-1;11238:1:0;;-1:-1:-1;11207:28:0;10955:227;11207:9;:28;:::i;:::-;:32;11203:116;;;11254:65;11290:28;11302:16;11290:9;:28;:::i;:::-;11262:15;;;;;-1:-1:-1;;;;;11262:15:0;;11254:34;:65::i;196:548:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;480:3;665:1;660:2;651:6;640:9;636:22;632:31;625:42;735:2;728;724:7;719:2;711:6;707:15;703:29;692:9;688:45;684:54;676:62;;;;196:548;;;;:::o;749:131::-;-1:-1:-1;;;;;824:31:1;;814:42;;804:70;;870:1;867;860:12;885:134;953:20;;982:31;953:20;982:31;:::i;:::-;885:134;;;:::o;1024:315::-;1092:6;1100;1153:2;1141:9;1132:7;1128:23;1124:32;1121:52;;;1169:1;1166;1159:12;1121:52;1208:9;1195:23;1227:31;1252:5;1227:31;:::i;:::-;1277:5;1329:2;1314:18;;;;1301:32;;-1:-1:-1;;;1024:315:1:o;1536:456::-;1613:6;1621;1629;1682:2;1670:9;1661:7;1657:23;1653:32;1650:52;;;1698:1;1695;1688:12;1650:52;1737:9;1724:23;1756:31;1781:5;1756:31;:::i;:::-;1806:5;-1:-1:-1;1863:2:1;1848:18;;1835:32;1876:33;1835:32;1876:33;:::i;:::-;1536:456;;1928:7;;-1:-1:-1;;;1982:2:1;1967:18;;;;1954:32;;1536:456::o;1997:247::-;2056:6;2109:2;2097:9;2088:7;2084:23;2080:32;2077:52;;;2125:1;2122;2115:12;2077:52;2164:9;2151:23;2183:31;2208:5;2183:31;:::i;:::-;2233:5;1997:247;-1:-1:-1;;;1997:247:1:o;2249:127::-;2310:10;2305:3;2301:20;2298:1;2291:31;2341:4;2338:1;2331:15;2365:4;2362:1;2355:15;2381:1121;2465:6;2496:2;2539;2527:9;2518:7;2514:23;2510:32;2507:52;;;2555:1;2552;2545:12;2507:52;2595:9;2582:23;2624:18;2665:2;2657:6;2654:14;2651:34;;;2681:1;2678;2671:12;2651:34;2719:6;2708:9;2704:22;2694:32;;2764:7;2757:4;2753:2;2749:13;2745:27;2735:55;;2786:1;2783;2776:12;2735:55;2822:2;2809:16;2844:2;2840;2837:10;2834:36;;;2850:18;;:::i;:::-;2896:2;2893:1;2889:10;2928:2;2922:9;2991:2;2987:7;2982:2;2978;2974:11;2970:25;2962:6;2958:38;3046:6;3034:10;3031:22;3026:2;3014:10;3011:18;3008:46;3005:72;;;3057:18;;:::i;:::-;3093:2;3086:22;3143:18;;;3177:15;;;;-1:-1:-1;3219:11:1;;;3215:20;;;3247:19;;;3244:39;;;3279:1;3276;3269:12;3244:39;3303:11;;;;3323:148;3339:6;3334:3;3331:15;3323:148;;;3405:23;3424:3;3405:23;:::i;:::-;3393:36;;3356:12;;;;3449;;;;3323:148;;;3490:6;2381:1121;-1:-1:-1;;;;;;;;2381:1121:1:o;3507:632::-;3678:2;3730:21;;;3800:13;;3703:18;;;3822:22;;;3649:4;;3678:2;3901:15;;;;3875:2;3860:18;;;3649:4;3944:169;3958:6;3955:1;3952:13;3944:169;;;4019:13;;4007:26;;4088:15;;;;4053:12;;;;3980:1;3973:9;3944:169;;;-1:-1:-1;4130:3:1;;3507:632;-1:-1:-1;;;;;;3507:632:1:o;4333:180::-;4392:6;4445:2;4433:9;4424:7;4420:23;4416:32;4413:52;;;4461:1;4458;4451:12;4413:52;-1:-1:-1;4484:23:1;;4333:180;-1:-1:-1;4333:180:1:o;4726:156::-;4792:20;;4852:4;4841:16;;4831:27;;4821:55;;4872:1;4869;4862:12;4887:252;4951:6;4959;5012:2;5000:9;4991:7;4987:23;4983:32;4980:52;;;5028:1;5025;5018:12;4980:52;5051:27;5068:9;5051:27;:::i;:::-;5041:37;;5097:36;5129:2;5118:9;5114:18;5097:36;:::i;:::-;5087:46;;4887:252;;;;;:::o;5144:388::-;5212:6;5220;5273:2;5261:9;5252:7;5248:23;5244:32;5241:52;;;5289:1;5286;5279:12;5241:52;5328:9;5315:23;5347:31;5372:5;5347:31;:::i;:::-;5397:5;-1:-1:-1;5454:2:1;5439:18;;5426:32;5467:33;5426:32;5467:33;:::i;:::-;5519:7;5509:17;;;5144:388;;;;;:::o;5760:127::-;5821:10;5816:3;5812:20;5809:1;5802:31;5852:4;5849:1;5842:15;5876:4;5873:1;5866:15;5892:128;5959:9;;;5980:11;;;5977:37;;;5994:18;;:::i;6025:127::-;6086:10;6081:3;6077:20;6074:1;6067:31;6117:4;6114:1;6107:15;6141:4;6138:1;6131:15;6157:135;6196:3;6217:17;;;6214:43;;6237:18;;:::i;:::-;-1:-1:-1;6284:1:1;6273:13;;6157:135::o;6297:356::-;6499:2;6481:21;;;6518:18;;;6511:30;6577:34;6572:2;6557:18;;6550:62;6644:2;6629:18;;6297:356::o;6658:422::-;6747:1;6790:5;6747:1;6804:270;6825:7;6815:8;6812:21;6804:270;;;6884:4;6880:1;6876:6;6872:17;6866:4;6863:27;6860:53;;;6893:18;;:::i;:::-;6943:7;6933:8;6929:22;6926:55;;;6963:16;;;;6926:55;7042:22;;;;7002:15;;;;6804:270;;;6808:3;6658:422;;;;;:::o;7085:806::-;7134:5;7164:8;7154:80;;-1:-1:-1;7205:1:1;7219:5;;7154:80;7253:4;7243:76;;-1:-1:-1;7290:1:1;7304:5;;7243:76;7335:4;7353:1;7348:59;;;;7421:1;7416:130;;;;7328:218;;7348:59;7378:1;7369:10;;7392:5;;;7416:130;7453:3;7443:8;7440:17;7437:43;;;7460:18;;:::i;:::-;-1:-1:-1;;7516:1:1;7502:16;;7531:5;;7328:218;;7630:2;7620:8;7617:16;7611:3;7605:4;7602:13;7598:36;7592:2;7582:8;7579:16;7574:2;7568:4;7565:12;7561:35;7558:77;7555:159;;;-1:-1:-1;7667:19:1;;;7699:5;;7555:159;7746:34;7771:8;7765:4;7746:34;:::i;:::-;7816:6;7812:1;7808:6;7804:19;7795:7;7792:32;7789:58;;;7827:18;;:::i;:::-;7865:20;;7085:806;-1:-1:-1;;;7085:806:1:o;7896:140::-;7954:5;7983:47;8024:4;8014:8;8010:19;8004:4;7983:47;:::i;8041:168::-;8114:9;;;8145;;8162:15;;;8156:22;;8142:37;8132:71;;8183:18;;:::i;9775:125::-;9840:9;;;9861:10;;;9858:36;;;9874:18;;:::i;9905:251::-;9975:6;10028:2;10016:9;10007:7;10003:23;9999:32;9996:52;;;10044:1;10041;10034:12;9996:52;10076:9;10070:16;10095:31;10120:5;10095:31;:::i;10161:980::-;10423:4;10471:3;10460:9;10456:19;10502:6;10491:9;10484:25;10528:2;10566:6;10561:2;10550:9;10546:18;10539:34;10609:3;10604:2;10593:9;10589:18;10582:31;10633:6;10668;10662:13;10699:6;10691;10684:22;10737:3;10726:9;10722:19;10715:26;;10776:2;10768:6;10764:15;10750:29;;10797:1;10807:195;10821:6;10818:1;10815:13;10807:195;;;10886:13;;-1:-1:-1;;;;;10882:39:1;10870:52;;10977:15;;;;10942:12;;;;10918:1;10836:9;10807:195;;;-1:-1:-1;;;;;;;11058:32:1;;;;11053:2;11038:18;;11031:60;-1:-1:-1;;;11122:3:1;11107:19;11100:35;11019:3;10161:980;-1:-1:-1;;;10161:980:1:o;13768:217::-;13808:1;13834;13824:132;;13878:10;13873:3;13869:20;13866:1;13859:31;13913:4;13910:1;13903:15;13941:4;13938:1;13931:15;13824:132;-1:-1:-1;13970:9:1;;13768:217::o;14602:306::-;14690:6;14698;14706;14759:2;14747:9;14738:7;14734:23;14730:32;14727:52;;;14775:1;14772;14765:12;14727:52;14804:9;14798:16;14788:26;;14854:2;14843:9;14839:18;14833:25;14823:35;;14898:2;14887:9;14883:18;14877:25;14867:35;;14602:306;;;;;:::o

Swarm Source

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