ETH Price: $2,438.18 (+4.63%)

Token

#TrumpSavesAmerica (#TrumpSavesAmerica)
 

Overview

Max Total Supply

1,000,000,000 #TrumpSavesAmerica

Holders

14

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0.010000001131557684 #TrumpSavesAmerica

Value
$0.00
0x016b57e32b3147ac469b54b5e28777a823f6ecd1
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:
TrumpSavesAmerica

Compiler Version
v0.8.25+commit.b61c2a91

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-07-18
*/

/*
#TrumpSavesAmerica is a hashemoji on Twitter like #MAGA.

https://t.me/trumpsavesamericaentry
https://x.com/trumpsaveseth
*/

pragma solidity = 0.8.25;
pragma experimental ABIEncoderV2;

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

interface IUniswapV2Router02 {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;
}

interface IUniswapV2Factory {
    event PairCreated(
        address indexed token0,
        address indexed token1,
        address pair,
        uint256
    );

    function getPair(address tokenA, address tokenB)
        external
        view
        returns (address pair);

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

library SafeMath {

    function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            uint256 c = a + b;
            if (c < a) return (false, 0);
            return (true, c);
        }
    }

    function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b > a) return (false, 0);
            return (true, a - b);
        }
    }

    function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (a == 0) return (true, 0);
            uint256 c = a * b;
            if (c / a != b) return (false, 0);
            return (true, c);
        }
    }

    function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a / b);
        }
    }

    function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a % b);
        }
    }

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        return a + b;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return a - b;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        return a * b;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return a % b;
    }

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

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

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a % b;
        }
    }
}

interface IERC20 {

    event Transfer(address indexed from, address indexed to, uint256 value);

    event Approval(address indexed owner, address indexed spender, uint256 value);

    function totalSupply() external view returns (uint256);

    function balanceOf(address account) external view returns (uint256);

    function transfer(address to, 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 from,
        address to,
        uint256 amount
    ) external returns (bool);
}

interface IERC20Metadata is IERC20 {

    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
}

abstract contract Ownable is Context {
    address private _owner;

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

    constructor() {
        _transferOwnership(_msgSender());
    }

    modifier onlyOwner() {
        _checkOwner();
        _;
    }

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

    function _checkOwner() internal view virtual {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
    }

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

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

    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;

    mapping(address => mapping(address => uint256)) private _allowances;

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

    function name() public view virtual override returns (string memory) {
        return _name;
    }

    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

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

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

    function transfer(address to, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, amount);
        return true;
    }

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

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

    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, allowance(owner, spender) + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        address owner = _msgSender();
        uint256 currentAllowance = allowance(owner, spender);
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(owner, spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(from, to, amount);

        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[from] = fromBalance - amount;
            _balances[to] += amount;
        }

        emit Transfer(from, to, amount);

        _afterTokenTransfer(from, to, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply += amount;
        unchecked {
            _balances[account] += amount;
        }
        emit Transfer(address(0), account, amount);

        _afterTokenTransfer(address(0), account, amount);
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        _beforeTokenTransfer(account, address(0), amount);

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
            _totalSupply -= amount;
        }

        emit Transfer(account, address(0), amount);

        _afterTokenTransfer(account, address(0), amount);
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        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 _spendAllowance(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }

    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}

    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
}

contract TrumpSavesAmerica is ERC20, Ownable {

    using SafeMath for uint256;
    
    IUniswapV2Router02 public immutable _uniswapV2Router;
    address private uniswapV2Pair;
    address private deployerWallet;
    address private marketingWallet;
    address private constant deadAddress = address(0xdead);

    bool private swapping;

    string private constant _name = "#TrumpSavesAmerica";
    string private constant _symbol = "#TrumpSavesAmerica";

    uint256 public initialTotalSupply = 1000000000 * 1e18;
    uint256 public maxTransactionAmount = 20000000 * 1e18;
    uint256 public maxWallet = 20000000 * 1e18;
    uint256 public swapTokensAtAmount = 10000000 * 1e18;

    bool public tradingOpen = false;
    bool public swapEnabled = false;

    uint256 public BuyFee = 20;
    uint256 public SellFee = 20;

    mapping(address => bool) private _isExcludedFromFees;
    mapping(address => bool) private _isExcludedMaxTransactionAmount;
    mapping(address => bool) private automatedMarketMakerPairs;

    event ExcludeFromFees(address indexed account, bool isExcluded);
    event SetAutomatedMarketMakerPair(address indexed pair, bool indexed value);

    constructor(address wallet) ERC20(_name, _symbol) {

        _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
        _setAutomatedMarketMakerPair(address(uniswapV2Pair), true);
        excludeFromMaxTransaction(address(uniswapV2Pair), true);
        excludeFromMaxTransaction(address(_uniswapV2Router), true);
        marketingWallet = payable(wallet);     
        
        deployerWallet = payable(_msgSender());
        excludeFromFees(owner(), true);
        excludeFromFees(address(this), true);
        excludeFromFees(address(wallet), true);
        excludeFromFees(address(0xdead), true);

        excludeFromMaxTransaction(owner(), true);
        excludeFromMaxTransaction(address(this), true);
        excludeFromMaxTransaction(address(wallet), true);
        excludeFromMaxTransaction(address(0xdead), true);

        uint devTx = initialTotalSupply.mul(88).div(100);
        uint remain = initialTotalSupply.sub(devTx);

        _mint(deployerWallet, devTx);
        _mint(address(this),remain);
    }

    receive() external payable {}

    function openTrade() external onlyOwner() {
        tradingOpen = true;
        swapEnabled = true;
    }

    function excludeFromMaxTransaction(address updAds, bool isEx) private {
        _isExcludedMaxTransactionAmount[updAds] = isEx;
    }

    function excludeFromFees(address account, bool excluded) private {
        _isExcludedFromFees[account] = excluded;
        emit ExcludeFromFees(account, excluded);
    }

    function setAutomatedMarketMakerPair(address pair, bool value) public onlyOwner {
        require(pair != uniswapV2Pair, "The pair cannot be removed from automatedMarketMakerPairs");
        _setAutomatedMarketMakerPair(pair, value);
    }

    function _setAutomatedMarketMakerPair(address pair, bool value) private {
        automatedMarketMakerPairs[pair] = value;
        emit SetAutomatedMarketMakerPair(pair, value);
    }

    function isExcludedFromFees(address account) public view returns (bool) {
        return _isExcludedFromFees[account];
    }

    function _transfer(address from, address to, uint256 amount) internal override {

        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        if (amount == 0) {
            super._transfer(from, to, 0);
            return;
        }
                bool isTransfer = !automatedMarketMakerPairs[from] && !automatedMarketMakerPairs[to];

                if (from != owner() && to != owner() && to != address(0) && to != address(0xdead) && !swapping) {

                if (!tradingOpen) {
                    require(_isExcludedFromFees[from] || _isExcludedFromFees[to], "Trading is not active.");
                }

                if (automatedMarketMakerPairs[from] && !_isExcludedMaxTransactionAmount[to]
                ) {
                    require(amount <= maxTransactionAmount, "Buy transfer amount exceeds the maxTransactionAmount.");
                    require(amount + balanceOf(to) <= maxWallet, "Max wallet exceeded");
                }

                else if (automatedMarketMakerPairs[to] && !_isExcludedMaxTransactionAmount[from]) {
                    require(amount <= maxTransactionAmount, "Sell transfer amount exceeds the maxTransactionAmount.");
                } 
                
                else if (!_isExcludedMaxTransactionAmount[to]) {
                    require(amount + balanceOf(to) <= maxWallet, "Max wallet exceeded");
                }
            }

        uint256 contractTokenBalance = balanceOf(address(this));

        bool canSwap = contractTokenBalance > 0 && !isTransfer;

        if (canSwap && !swapping && !automatedMarketMakerPairs[from] && !_isExcludedFromFees[from] && !_isExcludedFromFees[to] && swapEnabled) {
            swapping = true;
            swapBack(amount);
            swapping = false;
        }

        bool takeFee = !swapping && !isTransfer;

        if (_isExcludedFromFees[from] || _isExcludedFromFees[to]) {
            takeFee = false;
        }

        uint256 fees = 0;

        if (takeFee) {
            if (automatedMarketMakerPairs[to]) {
                fees = amount.mul(SellFee).div(100);
            }
            else {
                fees = amount.mul(BuyFee).div(100);
            }

        if (fees > 0) {
            super._transfer(from, address(this), fees);
        }
        amount -= fees;
    }
        super._transfer(from, to, amount);
    }

    function swapTokensForEth(uint256 tokenAmount) private {

        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,
            marketingWallet,
            block.timestamp
        );
    }

   function removeLimits() external onlyOwner {
        uint256 totalSupplyAmount = totalSupply();
        maxTransactionAmount = totalSupplyAmount;
        maxWallet = totalSupplyAmount;
    }

    function clearStuckEth() external {
        require(_msgSender() == deployerWallet);
        require(address(this).balance > 0, "Token: no ETH to clear");
        payable(msg.sender).transfer(address(this).balance);
    }

    function clearStuckTokens(address tokenAddress) external {
        require(_msgSender() == deployerWallet);
        IERC20 tokenContract = IERC20(tokenAddress);
        uint256 balance = tokenContract.balanceOf(address(this));
        require(balance > 0, "No tokens to clear");
        tokenContract.transfer(deployerWallet, balance);
    }

    function setFee(uint256 _buyFee, uint256 _sellFee) external onlyOwner {
        require(_buyFee <= 99 && _sellFee <= 99, "Fees cannot exceed 99%");
        BuyFee = _buyFee;
        SellFee = _sellFee;
    }

    function setSwapTokensAtAmount(uint256 _amount) external onlyOwner {
        swapTokensAtAmount = _amount * (10 ** 18);
    }

    function manualSwap(uint256 percent) external {
        require(_msgSender() == deployerWallet);
        uint256 totalSupplyAmount = totalSupply();
        uint256 contractBalance = balanceOf(address(this));
        uint256 tokensToSwap;

        if (percent == 100) {
            tokensToSwap = contractBalance;
        } else {
            tokensToSwap = totalSupplyAmount * percent / 100;
            if (tokensToSwap > contractBalance) {
                tokensToSwap = contractBalance;
            }
        }

        require(tokensToSwap <= contractBalance, "Swap amount exceeds contract balance");
        swapTokensForEth(tokensToSwap);
    }

        function swapBack(uint256 tokens) private {
        uint256 contractBalance = balanceOf(address(this));
        uint256 tokensToSwap; 

        if (contractBalance == 0) {
            return;
        }

    if ((BuyFee+SellFee) == 0) {

        if(contractBalance > 0 && contractBalance < swapTokensAtAmount) {
            tokensToSwap = contractBalance;
        }
        else {
            uint256 sellFeeTokens = tokens.mul(SellFee).div(100);
            tokens -= sellFeeTokens;
            if (tokens > swapTokensAtAmount) {
                tokensToSwap = swapTokensAtAmount;
            }
            else {
                tokensToSwap = tokens;
            }
        }
    }

    else {

        if(contractBalance > 0 && contractBalance < swapTokensAtAmount.div(5)) {
            return;
        }
        else if (contractBalance > 0 && contractBalance > swapTokensAtAmount.div(5) && contractBalance < swapTokensAtAmount) {
            tokensToSwap = swapTokensAtAmount.div(5);
        }
        else {
            uint256 sellFeeTokens = tokens.mul(SellFee).div(100);
            tokens -= sellFeeTokens;
            if (tokens > swapTokensAtAmount) {
                tokensToSwap = swapTokensAtAmount;
            } else {
                tokensToSwap = tokens;
            }
        }
    }
        swapTokensForEth(tokensToSwap);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"ExcludeFromFees","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":"pair","type":"address"},{"indexed":true,"internalType":"bool","name":"value","type":"bool"}],"name":"SetAutomatedMarketMakerPair","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":"BuyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"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":"clearStuckEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"}],"name":"clearStuckTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initialTotalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTransactionAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":"view","type":"function"},{"inputs":[],"name":"openTrade","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutomatedMarketMakerPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buyFee","type":"uint256"},{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setSwapTokensAtAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","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"}]

60a06040526b033b2e3c9fd0803ce80000006009556a108b2a2c28029094000000600a556a108b2a2c28029094000000600b556a084595161401484a000000600c555f600d5f6101000a81548160ff0219169083151502179055505f600d60016101000a81548160ff0219169083151502179055506014600e556014600f55348015610089575f80fd5b5060405161466538038061466583398181016040528101906100ab91906109f9565b6040518060400160405280601281526020017f235472756d705361766573416d657269636100000000000000000000000000008152506040518060400160405280601281526020017f235472756d705361766573416d6572696361000000000000000000000000000081525081600390816101269190610c5e565b5080600490816101369190610c5e565b50505061015561014a61056a60201b60201c565b61057160201b60201c565b737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff168152505060805173ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101e8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020c91906109f9565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060805173ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610273573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061029791906109f9565b6040518363ffffffff1660e01b81526004016102b4929190610d3c565b6020604051808303815f875af11580156102d0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102f491906109f9565b60065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061036560065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600161063460201b60201c565b61039760065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016106d260201b60201c565b6103aa60805160016106d260201b60201c565b8060085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506103f861056a60201b60201c565b60075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061045561044861072a60201b60201c565b600161075260201b60201c565b61046630600161075260201b60201c565b61047781600161075260201b60201c565b61048a61dead600161075260201b60201c565b6104a861049b61072a60201b60201c565b60016106d260201b60201c565b6104b93060016106d260201b60201c565b6104ca8160016106d260201b60201c565b6104dd61dead60016106d260201b60201c565b5f61050760646104f960586009546107f860201b90919060201c565b61080d60201b90919060201c565b90505f61051f8260095461082260201b90919060201c565b905061055260075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff168361083760201b60201c565b610562308261083760201b60201c565b505050610f67565b5f33905090565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b8060115f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b8060105f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7826040516107ec9190610d7d565b60405180910390a25050565b5f81836108059190610dc3565b905092915050565b5f818361081a9190610e31565b905092915050565b5f818361082f9190610e61565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036108a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161089c90610eee565b60405180910390fd5b6108b65f838361099160201b60201c565b8060025f8282546108c79190610f0c565b92505081905550805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516109749190610f4e565b60405180910390a361098d5f838361099660201b60201c565b5050565b505050565b505050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6109c88261099f565b9050919050565b6109d8816109be565b81146109e2575f80fd5b50565b5f815190506109f3816109cf565b92915050565b5f60208284031215610a0e57610a0d61099b565b5b5f610a1b848285016109e5565b91505092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680610a9f57607f821691505b602082108103610ab257610ab1610a5b565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302610b147fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610ad9565b610b1e8683610ad9565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f610b62610b5d610b5884610b36565b610b3f565b610b36565b9050919050565b5f819050919050565b610b7b83610b48565b610b8f610b8782610b69565b848454610ae5565b825550505050565b5f90565b610ba3610b97565b610bae818484610b72565b505050565b5b81811015610bd157610bc65f82610b9b565b600181019050610bb4565b5050565b601f821115610c1657610be781610ab8565b610bf084610aca565b81016020851015610bff578190505b610c13610c0b85610aca565b830182610bb3565b50505b505050565b5f82821c905092915050565b5f610c365f1984600802610c1b565b1980831691505092915050565b5f610c4e8383610c27565b9150826002028217905092915050565b610c6782610a24565b67ffffffffffffffff811115610c8057610c7f610a2e565b5b610c8a8254610a88565b610c95828285610bd5565b5f60209050601f831160018114610cc6575f8415610cb4578287015190505b610cbe8582610c43565b865550610d25565b601f198416610cd486610ab8565b5f5b82811015610cfb57848901518255600182019150602085019450602081019050610cd6565b86831015610d185784890151610d14601f891682610c27565b8355505b6001600288020188555050505b505050505050565b610d36816109be565b82525050565b5f604082019050610d4f5f830185610d2d565b610d5c6020830184610d2d565b9392505050565b5f8115159050919050565b610d7781610d63565b82525050565b5f602082019050610d905f830184610d6e565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610dcd82610b36565b9150610dd883610b36565b9250828202610de681610b36565b91508282048414831517610dfd57610dfc610d96565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f610e3b82610b36565b9150610e4683610b36565b925082610e5657610e55610e04565b5b828204905092915050565b5f610e6b82610b36565b9150610e7683610b36565b9250828203905081811115610e8e57610e8d610d96565b5b92915050565b5f82825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f610ed8601f83610e94565b9150610ee382610ea4565b602082019050919050565b5f6020820190508181035f830152610f0581610ecc565b9050919050565b5f610f1682610b36565b9150610f2183610b36565b9250828201905080821115610f3957610f38610d96565b5b92915050565b610f4881610b36565b82525050565b5f602082019050610f615f830184610f3f565b92915050565b6080516136d1610f945f395f8181610b1301528181611fa00152818161207f01526120a601526136d15ff3fe6080604052600436106101e6575f3560e01c80638da5cb5b11610101578063cf9522fd11610094578063f2fde38b11610063578063f2fde38b146106d3578063f8b45b05146106fb578063fb201b1d14610725578063ffb54a991461073b576101ed565b8063cf9522fd14610619578063dd62ed3e14610643578063dd8546521461067f578063e2f45605146106a9576101ed565b8063a9059cbb116100d0578063a9059cbb14610563578063afa4f3b21461059f578063b70143c9146105c7578063c8c8ebe4146105ef576101ed565b80638da5cb5b146104ab57806395d89b41146104d55780639a7a23d6146104ff578063a457c2d714610527576101ed565b80634fbee1931161017957806370a082311161014857806370a082311461042d578063715018a614610469578063751039fc1461047f57806389291a8f14610495576101ed565b80634fbee1931461037557806352f7c988146103b1578063583e0568146103d95780636ddd171314610403576101ed565b8063311028af116101b5578063311028af146102bd578063313ce567146102e7578063346cc7be146103115780633950935114610339576101ed565b806306fdde03146101f1578063095ea7b31461021b57806318160ddd1461025757806323b872dd14610281576101ed565b366101ed57005b5f80fd5b3480156101fc575f80fd5b50610205610765565b60405161021291906125f1565b60405180910390f35b348015610226575f80fd5b50610241600480360381019061023c91906126a2565b6107f5565b60405161024e91906126fa565b60405180910390f35b348015610262575f80fd5b5061026b610817565b6040516102789190612722565b60405180910390f35b34801561028c575f80fd5b506102a760048036038101906102a2919061273b565b610820565b6040516102b491906126fa565b60405180910390f35b3480156102c8575f80fd5b506102d161084e565b6040516102de9190612722565b60405180910390f35b3480156102f2575f80fd5b506102fb610854565b60405161030891906127a6565b60405180910390f35b34801561031c575f80fd5b50610337600480360381019061033291906127bf565b61085c565b005b348015610344575f80fd5b5061035f600480360381019061035a91906126a2565b610a1e565b60405161036c91906126fa565b60405180910390f35b348015610380575f80fd5b5061039b600480360381019061039691906127bf565b610a54565b6040516103a891906126fa565b60405180910390f35b3480156103bc575f80fd5b506103d760048036038101906103d291906127ea565b610aa6565b005b3480156103e4575f80fd5b506103ed610b11565b6040516103fa9190612883565b60405180910390f35b34801561040e575f80fd5b50610417610b35565b60405161042491906126fa565b60405180910390f35b348015610438575f80fd5b50610453600480360381019061044e91906127bf565b610b48565b6040516104609190612722565b60405180910390f35b348015610474575f80fd5b5061047d610b8d565b005b34801561048a575f80fd5b50610493610ba0565b005b3480156104a0575f80fd5b506104a9610bc4565b005b3480156104b6575f80fd5b506104bf610cab565b6040516104cc91906128ab565b60405180910390f35b3480156104e0575f80fd5b506104e9610cd3565b6040516104f691906125f1565b60405180910390f35b34801561050a575f80fd5b50610525600480360381019061052091906128ee565b610d63565b005b348015610532575f80fd5b5061054d600480360381019061054891906126a2565b610e08565b60405161055a91906126fa565b60405180910390f35b34801561056e575f80fd5b50610589600480360381019061058491906126a2565b610e7d565b60405161059691906126fa565b60405180910390f35b3480156105aa575f80fd5b506105c560048036038101906105c0919061292c565b610e9f565b005b3480156105d2575f80fd5b506105ed60048036038101906105e8919061292c565b610ec4565b005b3480156105fa575f80fd5b50610603610fc4565b6040516106109190612722565b60405180910390f35b348015610624575f80fd5b5061062d610fca565b60405161063a9190612722565b60405180910390f35b34801561064e575f80fd5b5061066960048036038101906106649190612957565b610fd0565b6040516106769190612722565b60405180910390f35b34801561068a575f80fd5b50610693611052565b6040516106a09190612722565b60405180910390f35b3480156106b4575f80fd5b506106bd611058565b6040516106ca9190612722565b60405180910390f35b3480156106de575f80fd5b506106f960048036038101906106f491906127bf565b61105e565b005b348015610706575f80fd5b5061070f6110e0565b60405161071c9190612722565b60405180910390f35b348015610730575f80fd5b506107396110e6565b005b348015610746575f80fd5b5061074f611125565b60405161075c91906126fa565b60405180910390f35b606060038054610774906129c2565b80601f01602080910402602001604051908101604052809291908181526020018280546107a0906129c2565b80156107eb5780601f106107c2576101008083540402835291602001916107eb565b820191905f5260205f20905b8154815290600101906020018083116107ce57829003601f168201915b5050505050905090565b5f806107ff611137565b905061080c81858561113e565b600191505092915050565b5f600254905090565b5f8061082a611137565b9050610837858285611301565b61084285858561138c565b60019150509392505050565b60095481565b5f6012905090565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661089c611137565b73ffffffffffffffffffffffffffffffffffffffff16146108bb575f80fd5b5f8190505f8173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016108f991906128ab565b602060405180830381865afa158015610914573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109389190612a06565b90505f811161097c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097390612a7b565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b81526004016109d8929190612a99565b6020604051808303815f875af11580156109f4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a189190612ad4565b50505050565b5f80610a28611137565b9050610a49818585610a3a8589610fd0565b610a449190612b2c565b61113e565b600191505092915050565b5f60105f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b610aae611d24565b60638211158015610ac0575060638111155b610aff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610af690612ba9565b60405180910390fd5b81600e8190555080600f819055505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600d60019054906101000a900460ff1681565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610b95611d24565b610b9e5f611da2565b565b610ba8611d24565b5f610bb1610817565b905080600a8190555080600b8190555050565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c04611137565b73ffffffffffffffffffffffffffffffffffffffff1614610c23575f80fd5b5f4711610c65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5c90612c11565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015610ca8573d5f803e3d5ffd5b50565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054610ce2906129c2565b80601f0160208091040260200160405190810160405280929190818152602001828054610d0e906129c2565b8015610d595780601f10610d3057610100808354040283529160200191610d59565b820191905f5260205f20905b815481529060010190602001808311610d3c57829003601f168201915b5050505050905090565b610d6b611d24565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610dfa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610df190612c9f565b60405180910390fd5b610e048282611e65565b5050565b5f80610e12611137565b90505f610e1f8286610fd0565b905083811015610e64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5b90612d2d565b60405180910390fd5b610e71828686840361113e565b60019250505092915050565b5f80610e87611137565b9050610e9481858561138c565b600191505092915050565b610ea7611d24565b670de0b6b3a764000081610ebb9190612d4b565b600c8190555050565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f04611137565b73ffffffffffffffffffffffffffffffffffffffff1614610f23575f80fd5b5f610f2c610817565b90505f610f3830610b48565b90505f60648403610f4b57819050610f72565b60648484610f599190612d4b565b610f639190612db9565b905081811115610f71578190505b5b81811115610fb5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fac90612e59565b60405180910390fd5b610fbe81611f03565b50505050565b600a5481565b600f5481565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600e5481565b600c5481565b611066611d24565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036110d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110cb90612ee7565b60405180910390fd5b6110dd81611da2565b50565b600b5481565b6110ee611d24565b6001600d5f6101000a81548160ff0219169083151502179055506001600d60016101000a81548160ff021916908315150217905550565b600d5f9054906101000a900460ff1681565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036111ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a390612f75565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361121a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121190613003565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112f49190612722565b60405180910390a3505050565b5f61130c8484610fd0565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146113865781811015611378576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136f9061306b565b60405180910390fd5b611385848484840361113e565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036113fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113f1906130f9565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611468576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145f90613187565b60405180910390fd5b5f810361147f5761147a83835f612157565b611d1f565b5f60125f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615801561151e575060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b9050611528610cab565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156115965750611566610cab565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156115ce57505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611608575061dead73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156116215750600860149054906101000a900460ff16155b156119ee57600d5f9054906101000a900460ff166117145760105f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16806116d4575060105f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b611713576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161170a906131ef565b60405180910390fd5b5b60125f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680156117b1575060115f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561185857600a548211156117fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f29061327d565b60405180910390fd5b600b5461180784610b48565b836118129190612b2c565b1115611853576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161184a906132e5565b60405180910390fd5b6119ed565b60125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680156118f5575060115f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561194457600a5482111561193f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161193690613373565b60405180910390fd5b6119ec565b60115f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166119eb57600b5461199e84610b48565b836119a99190612b2c565b11156119ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119e1906132e5565b60405180910390fd5b5b5b5b5b5f6119f830610b48565b90505f8082118015611a08575082155b9050808015611a245750600860149054906101000a900460ff16155b8015611a77575060125f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611aca575060105f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611b1d575060105f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611b355750600d60019054906101000a900460ff165b15611b79576001600860146101000a81548160ff021916908315150217905550611b5e846123c3565b5f600860146101000a81548160ff0219169083151502179055505b5f600860149054906101000a900460ff16158015611b95575083155b905060105f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680611c32575060105f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b15611c3b575f90505b5f8115611d0e5760125f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615611cc057611cb96064611cab600f548961254d90919063ffffffff16565b61256290919063ffffffff16565b9050611ceb565b611ce86064611cda600e548961254d90919063ffffffff16565b61256290919063ffffffff16565b90505b5f811115611cff57611cfe883083612157565b5b8086611d0b9190613391565b95505b611d19888888612157565b50505050505b505050565b611d2c611137565b73ffffffffffffffffffffffffffffffffffffffff16611d4a610cab565b73ffffffffffffffffffffffffffffffffffffffff1614611da0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d979061340e565b60405180910390fd5b565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b5f600267ffffffffffffffff811115611f1f57611f1e61342c565b5b604051908082528060200260200182016040528015611f4d5781602001602082028036833780820191505090505b50905030815f81518110611f6457611f63613459565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612007573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061202b919061349a565b8160018151811061203f5761203e613459565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506120a4307f00000000000000000000000000000000000000000000000000000000000000008461113e565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8460085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b81526004016121269594939291906135b5565b5f604051808303815f87803b15801561213d575f80fd5b505af115801561214f573d5f803e3d5ffd5b505050505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036121c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121bc906130f9565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612233576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161222a90613187565b60405180910390fd5b61223e838383612577565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050818110156122c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122b89061367d565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516123aa9190612722565b60405180910390a36123bd84848461257c565b50505050565b5f6123cd30610b48565b90505f8082036123de57505061254a565b5f600f54600e546123ef9190612b2c565b03612469575f821180156124045750600c5482105b1561241157819050612464565b5f61243a606461242c600f548761254d90919063ffffffff16565b61256290919063ffffffff16565b905080846124489190613391565b9350600c5484111561245e57600c549150612462565b8391505b505b61253e565b5f8211801561248c57506124896005600c5461256290919063ffffffff16565b82105b1561249857505061254a565b5f821180156124bb57506124b86005600c5461256290919063ffffffff16565b82115b80156124c85750600c5482105b156124ea576124e36005600c5461256290919063ffffffff16565b905061253d565b5f6125136064612505600f548761254d90919063ffffffff16565b61256290919063ffffffff16565b905080846125219190613391565b9350600c5484111561253757600c54915061253b565b8391505b505b5b61254781611f03565b50505b50565b5f818361255a9190612d4b565b905092915050565b5f818361256f9190612db9565b905092915050565b505050565b505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6125c382612581565b6125cd818561258b565b93506125dd81856020860161259b565b6125e6816125a9565b840191505092915050565b5f6020820190508181035f83015261260981846125b9565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61263e82612615565b9050919050565b61264e81612634565b8114612658575f80fd5b50565b5f8135905061266981612645565b92915050565b5f819050919050565b6126818161266f565b811461268b575f80fd5b50565b5f8135905061269c81612678565b92915050565b5f80604083850312156126b8576126b7612611565b5b5f6126c58582860161265b565b92505060206126d68582860161268e565b9150509250929050565b5f8115159050919050565b6126f4816126e0565b82525050565b5f60208201905061270d5f8301846126eb565b92915050565b61271c8161266f565b82525050565b5f6020820190506127355f830184612713565b92915050565b5f805f6060848603121561275257612751612611565b5b5f61275f8682870161265b565b93505060206127708682870161265b565b92505060406127818682870161268e565b9150509250925092565b5f60ff82169050919050565b6127a08161278b565b82525050565b5f6020820190506127b95f830184612797565b92915050565b5f602082840312156127d4576127d3612611565b5b5f6127e18482850161265b565b91505092915050565b5f8060408385031215612800576127ff612611565b5b5f61280d8582860161268e565b925050602061281e8582860161268e565b9150509250929050565b5f819050919050565b5f61284b61284661284184612615565b612828565b612615565b9050919050565b5f61285c82612831565b9050919050565b5f61286d82612852565b9050919050565b61287d81612863565b82525050565b5f6020820190506128965f830184612874565b92915050565b6128a581612634565b82525050565b5f6020820190506128be5f83018461289c565b92915050565b6128cd816126e0565b81146128d7575f80fd5b50565b5f813590506128e8816128c4565b92915050565b5f806040838503121561290457612903612611565b5b5f6129118582860161265b565b9250506020612922858286016128da565b9150509250929050565b5f6020828403121561294157612940612611565b5b5f61294e8482850161268e565b91505092915050565b5f806040838503121561296d5761296c612611565b5b5f61297a8582860161265b565b925050602061298b8582860161265b565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806129d957607f821691505b6020821081036129ec576129eb612995565b5b50919050565b5f81519050612a0081612678565b92915050565b5f60208284031215612a1b57612a1a612611565b5b5f612a28848285016129f2565b91505092915050565b7f4e6f20746f6b656e7320746f20636c65617200000000000000000000000000005f82015250565b5f612a6560128361258b565b9150612a7082612a31565b602082019050919050565b5f6020820190508181035f830152612a9281612a59565b9050919050565b5f604082019050612aac5f83018561289c565b612ab96020830184612713565b9392505050565b5f81519050612ace816128c4565b92915050565b5f60208284031215612ae957612ae8612611565b5b5f612af684828501612ac0565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612b368261266f565b9150612b418361266f565b9250828201905080821115612b5957612b58612aff565b5b92915050565b7f466565732063616e6e6f742065786365656420393925000000000000000000005f82015250565b5f612b9360168361258b565b9150612b9e82612b5f565b602082019050919050565b5f6020820190508181035f830152612bc081612b87565b9050919050565b7f546f6b656e3a206e6f2045544820746f20636c656172000000000000000000005f82015250565b5f612bfb60168361258b565b9150612c0682612bc7565b602082019050919050565b5f6020820190508181035f830152612c2881612bef565b9050919050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d205f8201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b5f612c8960398361258b565b9150612c9482612c2f565b604082019050919050565b5f6020820190508181035f830152612cb681612c7d565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f612d1760258361258b565b9150612d2282612cbd565b604082019050919050565b5f6020820190508181035f830152612d4481612d0b565b9050919050565b5f612d558261266f565b9150612d608361266f565b9250828202612d6e8161266f565b91508282048414831517612d8557612d84612aff565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612dc38261266f565b9150612dce8361266f565b925082612dde57612ddd612d8c565b5b828204905092915050565b7f5377617020616d6f756e74206578636565647320636f6e74726163742062616c5f8201527f616e636500000000000000000000000000000000000000000000000000000000602082015250565b5f612e4360248361258b565b9150612e4e82612de9565b604082019050919050565b5f6020820190508181035f830152612e7081612e37565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f612ed160268361258b565b9150612edc82612e77565b604082019050919050565b5f6020820190508181035f830152612efe81612ec5565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612f5f60248361258b565b9150612f6a82612f05565b604082019050919050565b5f6020820190508181035f830152612f8c81612f53565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612fed60228361258b565b9150612ff882612f93565b604082019050919050565b5f6020820190508181035f83015261301a81612fe1565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000005f82015250565b5f613055601d8361258b565b915061306082613021565b602082019050919050565b5f6020820190508181035f83015261308281613049565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6130e360258361258b565b91506130ee82613089565b604082019050919050565b5f6020820190508181035f830152613110816130d7565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61317160238361258b565b915061317c82613117565b604082019050919050565b5f6020820190508181035f83015261319e81613165565b9050919050565b7f54726164696e67206973206e6f74206163746976652e000000000000000000005f82015250565b5f6131d960168361258b565b91506131e4826131a5565b602082019050919050565b5f6020820190508181035f830152613206816131cd565b9050919050565b7f427579207472616e7366657220616d6f756e74206578636565647320746865205f8201527f6d61785472616e73616374696f6e416d6f756e742e0000000000000000000000602082015250565b5f61326760358361258b565b91506132728261320d565b604082019050919050565b5f6020820190508181035f8301526132948161325b565b9050919050565b7f4d61782077616c6c6574206578636565646564000000000000000000000000005f82015250565b5f6132cf60138361258b565b91506132da8261329b565b602082019050919050565b5f6020820190508181035f8301526132fc816132c3565b9050919050565b7f53656c6c207472616e7366657220616d6f756e742065786365656473207468655f8201527f206d61785472616e73616374696f6e416d6f756e742e00000000000000000000602082015250565b5f61335d60368361258b565b915061336882613303565b604082019050919050565b5f6020820190508181035f83015261338a81613351565b9050919050565b5f61339b8261266f565b91506133a68361266f565b92508282039050818111156133be576133bd612aff565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6133f860208361258b565b9150613403826133c4565b602082019050919050565b5f6020820190508181035f830152613425816133ec565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f8151905061349481612645565b92915050565b5f602082840312156134af576134ae612611565b5b5f6134bc84828501613486565b91505092915050565b5f819050919050565b5f6134e86134e36134de846134c5565b612828565b61266f565b9050919050565b6134f8816134ce565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61353081612634565b82525050565b5f6135418383613527565b60208301905092915050565b5f602082019050919050565b5f613563826134fe565b61356d8185613508565b935061357883613518565b805f5b838110156135a857815161358f8882613536565b975061359a8361354d565b92505060018101905061357b565b5085935050505092915050565b5f60a0820190506135c85f830188612713565b6135d560208301876134ef565b81810360408301526135e78186613559565b90506135f6606083018561289c565b6136036080830184612713565b9695505050505050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f61366760268361258b565b91506136728261360d565b604082019050919050565b5f6020820190508181035f8301526136948161365b565b905091905056fea2646970667358221220a27ba2b26a0ae2beb512d7ec61a7747565f4bc7b00c47b9ab5ee87ff7d047f5d64736f6c634300081900330000000000000000000000000e16d97f5635df7af7315850a63a99d4f236c7aa

Deployed Bytecode

0x6080604052600436106101e6575f3560e01c80638da5cb5b11610101578063cf9522fd11610094578063f2fde38b11610063578063f2fde38b146106d3578063f8b45b05146106fb578063fb201b1d14610725578063ffb54a991461073b576101ed565b8063cf9522fd14610619578063dd62ed3e14610643578063dd8546521461067f578063e2f45605146106a9576101ed565b8063a9059cbb116100d0578063a9059cbb14610563578063afa4f3b21461059f578063b70143c9146105c7578063c8c8ebe4146105ef576101ed565b80638da5cb5b146104ab57806395d89b41146104d55780639a7a23d6146104ff578063a457c2d714610527576101ed565b80634fbee1931161017957806370a082311161014857806370a082311461042d578063715018a614610469578063751039fc1461047f57806389291a8f14610495576101ed565b80634fbee1931461037557806352f7c988146103b1578063583e0568146103d95780636ddd171314610403576101ed565b8063311028af116101b5578063311028af146102bd578063313ce567146102e7578063346cc7be146103115780633950935114610339576101ed565b806306fdde03146101f1578063095ea7b31461021b57806318160ddd1461025757806323b872dd14610281576101ed565b366101ed57005b5f80fd5b3480156101fc575f80fd5b50610205610765565b60405161021291906125f1565b60405180910390f35b348015610226575f80fd5b50610241600480360381019061023c91906126a2565b6107f5565b60405161024e91906126fa565b60405180910390f35b348015610262575f80fd5b5061026b610817565b6040516102789190612722565b60405180910390f35b34801561028c575f80fd5b506102a760048036038101906102a2919061273b565b610820565b6040516102b491906126fa565b60405180910390f35b3480156102c8575f80fd5b506102d161084e565b6040516102de9190612722565b60405180910390f35b3480156102f2575f80fd5b506102fb610854565b60405161030891906127a6565b60405180910390f35b34801561031c575f80fd5b50610337600480360381019061033291906127bf565b61085c565b005b348015610344575f80fd5b5061035f600480360381019061035a91906126a2565b610a1e565b60405161036c91906126fa565b60405180910390f35b348015610380575f80fd5b5061039b600480360381019061039691906127bf565b610a54565b6040516103a891906126fa565b60405180910390f35b3480156103bc575f80fd5b506103d760048036038101906103d291906127ea565b610aa6565b005b3480156103e4575f80fd5b506103ed610b11565b6040516103fa9190612883565b60405180910390f35b34801561040e575f80fd5b50610417610b35565b60405161042491906126fa565b60405180910390f35b348015610438575f80fd5b50610453600480360381019061044e91906127bf565b610b48565b6040516104609190612722565b60405180910390f35b348015610474575f80fd5b5061047d610b8d565b005b34801561048a575f80fd5b50610493610ba0565b005b3480156104a0575f80fd5b506104a9610bc4565b005b3480156104b6575f80fd5b506104bf610cab565b6040516104cc91906128ab565b60405180910390f35b3480156104e0575f80fd5b506104e9610cd3565b6040516104f691906125f1565b60405180910390f35b34801561050a575f80fd5b50610525600480360381019061052091906128ee565b610d63565b005b348015610532575f80fd5b5061054d600480360381019061054891906126a2565b610e08565b60405161055a91906126fa565b60405180910390f35b34801561056e575f80fd5b50610589600480360381019061058491906126a2565b610e7d565b60405161059691906126fa565b60405180910390f35b3480156105aa575f80fd5b506105c560048036038101906105c0919061292c565b610e9f565b005b3480156105d2575f80fd5b506105ed60048036038101906105e8919061292c565b610ec4565b005b3480156105fa575f80fd5b50610603610fc4565b6040516106109190612722565b60405180910390f35b348015610624575f80fd5b5061062d610fca565b60405161063a9190612722565b60405180910390f35b34801561064e575f80fd5b5061066960048036038101906106649190612957565b610fd0565b6040516106769190612722565b60405180910390f35b34801561068a575f80fd5b50610693611052565b6040516106a09190612722565b60405180910390f35b3480156106b4575f80fd5b506106bd611058565b6040516106ca9190612722565b60405180910390f35b3480156106de575f80fd5b506106f960048036038101906106f491906127bf565b61105e565b005b348015610706575f80fd5b5061070f6110e0565b60405161071c9190612722565b60405180910390f35b348015610730575f80fd5b506107396110e6565b005b348015610746575f80fd5b5061074f611125565b60405161075c91906126fa565b60405180910390f35b606060038054610774906129c2565b80601f01602080910402602001604051908101604052809291908181526020018280546107a0906129c2565b80156107eb5780601f106107c2576101008083540402835291602001916107eb565b820191905f5260205f20905b8154815290600101906020018083116107ce57829003601f168201915b5050505050905090565b5f806107ff611137565b905061080c81858561113e565b600191505092915050565b5f600254905090565b5f8061082a611137565b9050610837858285611301565b61084285858561138c565b60019150509392505050565b60095481565b5f6012905090565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661089c611137565b73ffffffffffffffffffffffffffffffffffffffff16146108bb575f80fd5b5f8190505f8173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016108f991906128ab565b602060405180830381865afa158015610914573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109389190612a06565b90505f811161097c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097390612a7b565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b81526004016109d8929190612a99565b6020604051808303815f875af11580156109f4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a189190612ad4565b50505050565b5f80610a28611137565b9050610a49818585610a3a8589610fd0565b610a449190612b2c565b61113e565b600191505092915050565b5f60105f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b610aae611d24565b60638211158015610ac0575060638111155b610aff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610af690612ba9565b60405180910390fd5b81600e8190555080600f819055505050565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b600d60019054906101000a900460ff1681565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610b95611d24565b610b9e5f611da2565b565b610ba8611d24565b5f610bb1610817565b905080600a8190555080600b8190555050565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c04611137565b73ffffffffffffffffffffffffffffffffffffffff1614610c23575f80fd5b5f4711610c65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5c90612c11565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015610ca8573d5f803e3d5ffd5b50565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054610ce2906129c2565b80601f0160208091040260200160405190810160405280929190818152602001828054610d0e906129c2565b8015610d595780601f10610d3057610100808354040283529160200191610d59565b820191905f5260205f20905b815481529060010190602001808311610d3c57829003601f168201915b5050505050905090565b610d6b611d24565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610dfa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610df190612c9f565b60405180910390fd5b610e048282611e65565b5050565b5f80610e12611137565b90505f610e1f8286610fd0565b905083811015610e64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5b90612d2d565b60405180910390fd5b610e71828686840361113e565b60019250505092915050565b5f80610e87611137565b9050610e9481858561138c565b600191505092915050565b610ea7611d24565b670de0b6b3a764000081610ebb9190612d4b565b600c8190555050565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f04611137565b73ffffffffffffffffffffffffffffffffffffffff1614610f23575f80fd5b5f610f2c610817565b90505f610f3830610b48565b90505f60648403610f4b57819050610f72565b60648484610f599190612d4b565b610f639190612db9565b905081811115610f71578190505b5b81811115610fb5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fac90612e59565b60405180910390fd5b610fbe81611f03565b50505050565b600a5481565b600f5481565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600e5481565b600c5481565b611066611d24565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036110d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110cb90612ee7565b60405180910390fd5b6110dd81611da2565b50565b600b5481565b6110ee611d24565b6001600d5f6101000a81548160ff0219169083151502179055506001600d60016101000a81548160ff021916908315150217905550565b600d5f9054906101000a900460ff1681565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036111ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a390612f75565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361121a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121190613003565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112f49190612722565b60405180910390a3505050565b5f61130c8484610fd0565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146113865781811015611378576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136f9061306b565b60405180910390fd5b611385848484840361113e565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036113fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113f1906130f9565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611468576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145f90613187565b60405180910390fd5b5f810361147f5761147a83835f612157565b611d1f565b5f60125f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615801561151e575060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b9050611528610cab565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156115965750611566610cab565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156115ce57505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611608575061dead73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156116215750600860149054906101000a900460ff16155b156119ee57600d5f9054906101000a900460ff166117145760105f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16806116d4575060105f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b611713576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161170a906131ef565b60405180910390fd5b5b60125f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680156117b1575060115f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561185857600a548211156117fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f29061327d565b60405180910390fd5b600b5461180784610b48565b836118129190612b2c565b1115611853576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161184a906132e5565b60405180910390fd5b6119ed565b60125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680156118f5575060115f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561194457600a5482111561193f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161193690613373565b60405180910390fd5b6119ec565b60115f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166119eb57600b5461199e84610b48565b836119a99190612b2c565b11156119ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119e1906132e5565b60405180910390fd5b5b5b5b5b5f6119f830610b48565b90505f8082118015611a08575082155b9050808015611a245750600860149054906101000a900460ff16155b8015611a77575060125f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611aca575060105f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611b1d575060105f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611b355750600d60019054906101000a900460ff165b15611b79576001600860146101000a81548160ff021916908315150217905550611b5e846123c3565b5f600860146101000a81548160ff0219169083151502179055505b5f600860149054906101000a900460ff16158015611b95575083155b905060105f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680611c32575060105f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b15611c3b575f90505b5f8115611d0e5760125f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615611cc057611cb96064611cab600f548961254d90919063ffffffff16565b61256290919063ffffffff16565b9050611ceb565b611ce86064611cda600e548961254d90919063ffffffff16565b61256290919063ffffffff16565b90505b5f811115611cff57611cfe883083612157565b5b8086611d0b9190613391565b95505b611d19888888612157565b50505050505b505050565b611d2c611137565b73ffffffffffffffffffffffffffffffffffffffff16611d4a610cab565b73ffffffffffffffffffffffffffffffffffffffff1614611da0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d979061340e565b60405180910390fd5b565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b5f600267ffffffffffffffff811115611f1f57611f1e61342c565b5b604051908082528060200260200182016040528015611f4d5781602001602082028036833780820191505090505b50905030815f81518110611f6457611f63613459565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612007573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061202b919061349a565b8160018151811061203f5761203e613459565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506120a4307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d8461113e565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8460085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b81526004016121269594939291906135b5565b5f604051808303815f87803b15801561213d575f80fd5b505af115801561214f573d5f803e3d5ffd5b505050505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036121c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121bc906130f9565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612233576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161222a90613187565b60405180910390fd5b61223e838383612577565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050818110156122c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122b89061367d565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516123aa9190612722565b60405180910390a36123bd84848461257c565b50505050565b5f6123cd30610b48565b90505f8082036123de57505061254a565b5f600f54600e546123ef9190612b2c565b03612469575f821180156124045750600c5482105b1561241157819050612464565b5f61243a606461242c600f548761254d90919063ffffffff16565b61256290919063ffffffff16565b905080846124489190613391565b9350600c5484111561245e57600c549150612462565b8391505b505b61253e565b5f8211801561248c57506124896005600c5461256290919063ffffffff16565b82105b1561249857505061254a565b5f821180156124bb57506124b86005600c5461256290919063ffffffff16565b82115b80156124c85750600c5482105b156124ea576124e36005600c5461256290919063ffffffff16565b905061253d565b5f6125136064612505600f548761254d90919063ffffffff16565b61256290919063ffffffff16565b905080846125219190613391565b9350600c5484111561253757600c54915061253b565b8391505b505b5b61254781611f03565b50505b50565b5f818361255a9190612d4b565b905092915050565b5f818361256f9190612db9565b905092915050565b505050565b505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6125c382612581565b6125cd818561258b565b93506125dd81856020860161259b565b6125e6816125a9565b840191505092915050565b5f6020820190508181035f83015261260981846125b9565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61263e82612615565b9050919050565b61264e81612634565b8114612658575f80fd5b50565b5f8135905061266981612645565b92915050565b5f819050919050565b6126818161266f565b811461268b575f80fd5b50565b5f8135905061269c81612678565b92915050565b5f80604083850312156126b8576126b7612611565b5b5f6126c58582860161265b565b92505060206126d68582860161268e565b9150509250929050565b5f8115159050919050565b6126f4816126e0565b82525050565b5f60208201905061270d5f8301846126eb565b92915050565b61271c8161266f565b82525050565b5f6020820190506127355f830184612713565b92915050565b5f805f6060848603121561275257612751612611565b5b5f61275f8682870161265b565b93505060206127708682870161265b565b92505060406127818682870161268e565b9150509250925092565b5f60ff82169050919050565b6127a08161278b565b82525050565b5f6020820190506127b95f830184612797565b92915050565b5f602082840312156127d4576127d3612611565b5b5f6127e18482850161265b565b91505092915050565b5f8060408385031215612800576127ff612611565b5b5f61280d8582860161268e565b925050602061281e8582860161268e565b9150509250929050565b5f819050919050565b5f61284b61284661284184612615565b612828565b612615565b9050919050565b5f61285c82612831565b9050919050565b5f61286d82612852565b9050919050565b61287d81612863565b82525050565b5f6020820190506128965f830184612874565b92915050565b6128a581612634565b82525050565b5f6020820190506128be5f83018461289c565b92915050565b6128cd816126e0565b81146128d7575f80fd5b50565b5f813590506128e8816128c4565b92915050565b5f806040838503121561290457612903612611565b5b5f6129118582860161265b565b9250506020612922858286016128da565b9150509250929050565b5f6020828403121561294157612940612611565b5b5f61294e8482850161268e565b91505092915050565b5f806040838503121561296d5761296c612611565b5b5f61297a8582860161265b565b925050602061298b8582860161265b565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806129d957607f821691505b6020821081036129ec576129eb612995565b5b50919050565b5f81519050612a0081612678565b92915050565b5f60208284031215612a1b57612a1a612611565b5b5f612a28848285016129f2565b91505092915050565b7f4e6f20746f6b656e7320746f20636c65617200000000000000000000000000005f82015250565b5f612a6560128361258b565b9150612a7082612a31565b602082019050919050565b5f6020820190508181035f830152612a9281612a59565b9050919050565b5f604082019050612aac5f83018561289c565b612ab96020830184612713565b9392505050565b5f81519050612ace816128c4565b92915050565b5f60208284031215612ae957612ae8612611565b5b5f612af684828501612ac0565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612b368261266f565b9150612b418361266f565b9250828201905080821115612b5957612b58612aff565b5b92915050565b7f466565732063616e6e6f742065786365656420393925000000000000000000005f82015250565b5f612b9360168361258b565b9150612b9e82612b5f565b602082019050919050565b5f6020820190508181035f830152612bc081612b87565b9050919050565b7f546f6b656e3a206e6f2045544820746f20636c656172000000000000000000005f82015250565b5f612bfb60168361258b565b9150612c0682612bc7565b602082019050919050565b5f6020820190508181035f830152612c2881612bef565b9050919050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d205f8201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b5f612c8960398361258b565b9150612c9482612c2f565b604082019050919050565b5f6020820190508181035f830152612cb681612c7d565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f612d1760258361258b565b9150612d2282612cbd565b604082019050919050565b5f6020820190508181035f830152612d4481612d0b565b9050919050565b5f612d558261266f565b9150612d608361266f565b9250828202612d6e8161266f565b91508282048414831517612d8557612d84612aff565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612dc38261266f565b9150612dce8361266f565b925082612dde57612ddd612d8c565b5b828204905092915050565b7f5377617020616d6f756e74206578636565647320636f6e74726163742062616c5f8201527f616e636500000000000000000000000000000000000000000000000000000000602082015250565b5f612e4360248361258b565b9150612e4e82612de9565b604082019050919050565b5f6020820190508181035f830152612e7081612e37565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f612ed160268361258b565b9150612edc82612e77565b604082019050919050565b5f6020820190508181035f830152612efe81612ec5565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612f5f60248361258b565b9150612f6a82612f05565b604082019050919050565b5f6020820190508181035f830152612f8c81612f53565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612fed60228361258b565b9150612ff882612f93565b604082019050919050565b5f6020820190508181035f83015261301a81612fe1565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000005f82015250565b5f613055601d8361258b565b915061306082613021565b602082019050919050565b5f6020820190508181035f83015261308281613049565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6130e360258361258b565b91506130ee82613089565b604082019050919050565b5f6020820190508181035f830152613110816130d7565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61317160238361258b565b915061317c82613117565b604082019050919050565b5f6020820190508181035f83015261319e81613165565b9050919050565b7f54726164696e67206973206e6f74206163746976652e000000000000000000005f82015250565b5f6131d960168361258b565b91506131e4826131a5565b602082019050919050565b5f6020820190508181035f830152613206816131cd565b9050919050565b7f427579207472616e7366657220616d6f756e74206578636565647320746865205f8201527f6d61785472616e73616374696f6e416d6f756e742e0000000000000000000000602082015250565b5f61326760358361258b565b91506132728261320d565b604082019050919050565b5f6020820190508181035f8301526132948161325b565b9050919050565b7f4d61782077616c6c6574206578636565646564000000000000000000000000005f82015250565b5f6132cf60138361258b565b91506132da8261329b565b602082019050919050565b5f6020820190508181035f8301526132fc816132c3565b9050919050565b7f53656c6c207472616e7366657220616d6f756e742065786365656473207468655f8201527f206d61785472616e73616374696f6e416d6f756e742e00000000000000000000602082015250565b5f61335d60368361258b565b915061336882613303565b604082019050919050565b5f6020820190508181035f83015261338a81613351565b9050919050565b5f61339b8261266f565b91506133a68361266f565b92508282039050818111156133be576133bd612aff565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6133f860208361258b565b9150613403826133c4565b602082019050919050565b5f6020820190508181035f830152613425816133ec565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f8151905061349481612645565b92915050565b5f602082840312156134af576134ae612611565b5b5f6134bc84828501613486565b91505092915050565b5f819050919050565b5f6134e86134e36134de846134c5565b612828565b61266f565b9050919050565b6134f8816134ce565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61353081612634565b82525050565b5f6135418383613527565b60208301905092915050565b5f602082019050919050565b5f613563826134fe565b61356d8185613508565b935061357883613518565b805f5b838110156135a857815161358f8882613536565b975061359a8361354d565b92505060018101905061357b565b5085935050505092915050565b5f60a0820190506135c85f830188612713565b6135d560208301876134ef565b81810360408301526135e78186613559565b90506135f6606083018561289c565b6136036080830184612713565b9695505050505050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f61366760268361258b565b91506136728261360d565b604082019050919050565b5f6020820190508181035f8301526136948161365b565b905091905056fea2646970667358221220a27ba2b26a0ae2beb512d7ec61a7747565f4bc7b00c47b9ab5ee87ff7d047f5d64736f6c63430008190033

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

0000000000000000000000000e16d97f5635df7af7315850a63a99d4f236c7aa

-----Decoded View---------------
Arg [0] : wallet (address): 0x0E16d97f5635DF7af7315850A63A99D4F236C7aa

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000000e16d97f5635df7af7315850a63a99d4f236c7aa


Deployed Bytecode Sourcemap

10810:9693:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5834:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6766:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6155:108;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6975:295;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11288:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6054:93;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17719:347;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7278:238;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14139:126;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18074:211;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10903:52;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11555:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6271:127;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4910:103;;;;;;;;;;;;;:::i;:::-;;17284:194;;;;;;;;;;;;;:::i;:::-;;17486:225;;;;;;;;;;;;;:::i;:::-;;4675:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5942:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13695:242;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7524:436;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6406:193;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18293:127;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18428:667;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11348:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11628:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6607:151;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11595:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11457:51;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5021:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11408:42;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13255:108;;;;;;;;;;;;;:::i;:::-;;11517:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5834:100;5888:13;5921:5;5914:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5834:100;:::o;6766:201::-;6849:4;6866:13;6882:12;:10;:12::i;:::-;6866:28;;6905:32;6914:5;6921:7;6930:6;6905:8;:32::i;:::-;6955:4;6948:11;;;6766:201;;;;:::o;6155:108::-;6216:7;6243:12;;6236:19;;6155:108;:::o;6975:295::-;7106:4;7123:15;7141:12;:10;:12::i;:::-;7123:30;;7164:38;7180:4;7186:7;7195:6;7164:15;:38::i;:::-;7213:27;7223:4;7229:2;7233:6;7213:9;:27::i;:::-;7258:4;7251:11;;;6975:295;;;;;:::o;11288:53::-;;;;:::o;6054:93::-;6112:5;6137:2;6130:9;;6054:93;:::o;17719:347::-;17811:14;;;;;;;;;;;17795:30;;:12;:10;:12::i;:::-;:30;;;17787:39;;;;;;17837:20;17867:12;17837:43;;17891:15;17909:13;:23;;;17941:4;17909:38;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17891:56;;17976:1;17966:7;:11;17958:42;;;;;;;;;;;;:::i;:::-;;;;;;;;;18011:13;:22;;;18034:14;;;;;;;;;;;18050:7;18011:47;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;17776:290;;17719:347;:::o;7278:238::-;7366:4;7383:13;7399:12;:10;:12::i;:::-;7383:28;;7422:64;7431:5;7438:7;7475:10;7447:25;7457:5;7464:7;7447:9;:25::i;:::-;:38;;;;:::i;:::-;7422:8;:64::i;:::-;7504:4;7497:11;;;7278:238;;;;:::o;14139:126::-;14205:4;14229:19;:28;14249:7;14229:28;;;;;;;;;;;;;;;;;;;;;;;;;14222:35;;14139:126;;;:::o;18074:211::-;4634:13;:11;:13::i;:::-;18174:2:::1;18163:7;:13;;:31;;;;;18192:2;18180:8;:14;;18163:31;18155:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;18241:7;18232:6;:16;;;;18269:8;18259:7;:18;;;;18074:211:::0;;:::o;10903:52::-;;;:::o;11555:31::-;;;;;;;;;;;;;:::o;6271:127::-;6345:7;6372:9;:18;6382:7;6372:18;;;;;;;;;;;;;;;;6365:25;;6271:127;;;:::o;4910:103::-;4634:13;:11;:13::i;:::-;4975:30:::1;5002:1;4975:18;:30::i;:::-;4910:103::o:0;17284:194::-;4634:13;:11;:13::i;:::-;17338:25:::1;17366:13;:11;:13::i;:::-;17338:41;;17413:17;17390:20;:40;;;;17453:17;17441:9;:29;;;;17327:151;17284:194::o:0;17486:225::-;17555:14;;;;;;;;;;;17539:30;;:12;:10;:12::i;:::-;:30;;;17531:39;;;;;;17613:1;17589:21;:25;17581:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;17660:10;17652:28;;:51;17681:21;17652:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17486:225::o;4675:87::-;4721:7;4748:6;;;;;;;;;;;4741:13;;4675:87;:::o;5942:104::-;5998:13;6031:7;6024:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5942:104;:::o;13695:242::-;4634:13;:11;:13::i;:::-;13802::::1;;;;;;;;;;;13794:21;;:4;:21;;::::0;13786:91:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;13888:41;13917:4;13923:5;13888:28;:41::i;:::-;13695:242:::0;;:::o;7524:436::-;7617:4;7634:13;7650:12;:10;:12::i;:::-;7634:28;;7673:24;7700:25;7710:5;7717:7;7700:9;:25::i;:::-;7673:52;;7764:15;7744:16;:35;;7736:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;7857:60;7866:5;7873:7;7901:15;7882:16;:34;7857:8;:60::i;:::-;7948:4;7941:11;;;;7524:436;;;;:::o;6406:193::-;6485:4;6502:13;6518:12;:10;:12::i;:::-;6502:28;;6541;6551:5;6558:2;6562:6;6541:9;:28::i;:::-;6587:4;6580:11;;;6406:193;;;;:::o;18293:127::-;4634:13;:11;:13::i;:::-;18403:8:::1;18392:7;:20;;;;:::i;:::-;18371:18;:41;;;;18293:127:::0;:::o;18428:667::-;18509:14;;;;;;;;;;;18493:30;;:12;:10;:12::i;:::-;:30;;;18485:39;;;;;;18535:25;18563:13;:11;:13::i;:::-;18535:41;;18587:23;18613:24;18631:4;18613:9;:24::i;:::-;18587:50;;18648:20;18696:3;18685:7;:14;18681:273;;18731:15;18716:30;;18681:273;;;18824:3;18814:7;18794:17;:27;;;;:::i;:::-;:33;;;;:::i;:::-;18779:48;;18861:15;18846:12;:30;18842:101;;;18912:15;18897:30;;18842:101;18681:273;18990:15;18974:12;:31;;18966:80;;;;;;;;;;;;:::i;:::-;;;;;;;;;19057:30;19074:12;19057:16;:30::i;:::-;18474:621;;;18428:667;:::o;11348:53::-;;;;:::o;11628:27::-;;;;:::o;6607:151::-;6696:7;6723:11;:18;6735:5;6723:18;;;;;;;;;;;;;;;:27;6742:7;6723:27;;;;;;;;;;;;;;;;6716:34;;6607:151;;;;:::o;11595:26::-;;;;:::o;11457:51::-;;;;:::o;5021:201::-;4634:13;:11;:13::i;:::-;5130:1:::1;5110:22;;:8;:22;;::::0;5102:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;5186:28;5205:8;5186:18;:28::i;:::-;5021:201:::0;:::o;11408:42::-;;;;:::o;13255:108::-;4634:13;:11;:13::i;:::-;13322:4:::1;13308:11;;:18;;;;;;;;;;;;;;;;;;13351:4;13337:11;;:18;;;;;;;;;;;;;;;;;;13255:108::o:0;11517:31::-;;;;;;;;;;;;;:::o;233:98::-;286:7;313:10;306:17;;233:98;:::o;9697:380::-;9850:1;9833:19;;:5;:19;;;9825:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9931:1;9912:21;;:7;:21;;;9904:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10015:6;9985:11;:18;9997:5;9985:18;;;;;;;;;;;;;;;:27;10004:7;9985:27;;;;;;;;;;;;;;;:36;;;;10053:7;10037:32;;10046:5;10037:32;;;10062:6;10037:32;;;;;;:::i;:::-;;;;;;;;9697:380;;;:::o;10085:453::-;10220:24;10247:25;10257:5;10264:7;10247:9;:25::i;:::-;10220:52;;10307:17;10287:16;:37;10283:248;;10369:6;10349:16;:26;;10341:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10453:51;10462:5;10469:7;10497:6;10478:16;:25;10453:8;:51::i;:::-;10283:248;10209:329;10085:453;;;:::o;14273:2514::-;14389:1;14373:18;;:4;:18;;;14365:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14466:1;14452:16;;:2;:16;;;14444:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;14535:1;14525:6;:11;14521:93;;14553:28;14569:4;14575:2;14579:1;14553:15;:28::i;:::-;14596:7;;14521:93;14632:15;14651:25;:31;14677:4;14651:31;;;;;;;;;;;;;;;;;;;;;;;;;14650:32;:66;;;;;14687:25;:29;14713:2;14687:29;;;;;;;;;;;;;;;;;;;;;;;;;14686:30;14650:66;14632:84;;14749:7;:5;:7::i;:::-;14741:15;;:4;:15;;;;:32;;;;;14766:7;:5;:7::i;:::-;14760:13;;:2;:13;;;;14741:32;:52;;;;;14791:1;14777:16;;:2;:16;;;;14741:52;:77;;;;;14811:6;14797:21;;:2;:21;;;;14741:77;:90;;;;;14823:8;;;;;;;;;;;14822:9;14741:90;14737:1060;;;14859:11;;;;;;;;;;;14854:148;;14903:19;:25;14923:4;14903:25;;;;;;;;;;;;;;;;;;;;;;;;;:52;;;;14932:19;:23;14952:2;14932:23;;;;;;;;;;;;;;;;;;;;;;;;;14903:52;14895:87;;;;;;;;;;;;:::i;:::-;;;;;;;;;14854:148;15026:25;:31;15052:4;15026:31;;;;;;;;;;;;;;;;;;;;;;;;;:71;;;;;15062:31;:35;15094:2;15062:35;;;;;;;;;;;;;;;;;;;;;;;;;15061:36;15026:71;15022:760;;;15158:20;;15148:6;:30;;15140:96;;;;;;;;;;;;:::i;:::-;;;;;;;;;15293:9;;15276:13;15286:2;15276:9;:13::i;:::-;15267:6;:22;;;;:::i;:::-;:35;;15259:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15022:760;;;15375:25;:29;15401:2;15375:29;;;;;;;;;;;;;;;;;;;;;;;;;:71;;;;;15409:31;:37;15441:4;15409:37;;;;;;;;;;;;;;;;;;;;;;;;;15408:38;15375:71;15371:411;;;15489:20;;15479:6;:30;;15471:97;;;;;;;;;;;;:::i;:::-;;;;;;;;;15371:411;;;15635:31;:35;15667:2;15635:35;;;;;;;;;;;;;;;;;;;;;;;;;15630:152;;15729:9;;15712:13;15722:2;15712:9;:13::i;:::-;15703:6;:22;;;;:::i;:::-;:35;;15695:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15630:152;15371:411;15022:760;14737:1060;15809:28;15840:24;15858:4;15840:9;:24::i;:::-;15809:55;;15877:12;15915:1;15892:20;:24;:39;;;;;15921:10;15920:11;15892:39;15877:54;;15948:7;:20;;;;;15960:8;;;;;;;;;;;15959:9;15948:20;:56;;;;;15973:25;:31;15999:4;15973:31;;;;;;;;;;;;;;;;;;;;;;;;;15972:32;15948:56;:86;;;;;16009:19;:25;16029:4;16009:25;;;;;;;;;;;;;;;;;;;;;;;;;16008:26;15948:86;:114;;;;;16039:19;:23;16059:2;16039:23;;;;;;;;;;;;;;;;;;;;;;;;;16038:24;15948:114;:129;;;;;16066:11;;;;;;;;;;;15948:129;15944:239;;;16105:4;16094:8;;:15;;;;;;;;;;;;;;;;;;16124:16;16133:6;16124:8;:16::i;:::-;16166:5;16155:8;;:16;;;;;;;;;;;;;;;;;;15944:239;16195:12;16211:8;;;;;;;;;;;16210:9;:24;;;;;16224:10;16223:11;16210:24;16195:39;;16251:19;:25;16271:4;16251:25;;;;;;;;;;;;;;;;;;;;;;;;;:52;;;;16280:19;:23;16300:2;16280:23;;;;;;;;;;;;;;;;;;;;;;;;;16251:52;16247:100;;;16330:5;16320:15;;16247:100;16359:12;16392:7;16388:348;;;16420:25;:29;16446:2;16420:29;;;;;;;;;;;;;;;;;;;;;;;;;16416:193;;;16477:28;16501:3;16477:19;16488:7;;16477:6;:10;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;16470:35;;16416:193;;;16566:27;16589:3;16566:18;16577:6;;16566;:10;;:18;;;;:::i;:::-;:22;;:27;;;;:::i;:::-;16559:34;;16416:193;16632:1;16625:4;:8;16621:83;;;16650:42;16666:4;16680;16687;16650:15;:42::i;:::-;16621:83;16724:4;16714:14;;;;;:::i;:::-;;;16388:348;16746:33;16762:4;16768:2;16772:6;16746:15;:33::i;:::-;14352:2435;;;;;14273:2514;;;;:::o;4770:132::-;4845:12;:10;:12::i;:::-;4834:23;;:7;:5;:7::i;:::-;:23;;;4826:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;4770:132::o;5230:191::-;5304:16;5323:6;;;;;;;;;;;5304:25;;5349:8;5340:6;;:17;;;;;;;;;;;;;;;;;;5404:8;5373:40;;5394:8;5373:40;;;;;;;;;;;;5293:128;5230:191;:::o;13945:186::-;14062:5;14028:25;:31;14054:4;14028:31;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;14117:5;14083:40;;14111:4;14083:40;;;;;;;;;;;;13945:186;;:::o;16795:482::-;16863:21;16901:1;16887:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16863:40;;16932:4;16914;16919:1;16914:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;16958:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16948:4;16953:1;16948:7;;;;;;;;:::i;:::-;;;;;;;:33;;;;;;;;;;;16994:63;17011:4;17026:16;17045:11;16994:8;:63::i;:::-;17070:16;:67;;;17152:11;17178:1;17194:4;17213:15;;;;;;;;;;;17243;17070:199;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16850:427;16795:482;:::o;7968:675::-;8115:1;8099:18;;:4;:18;;;8091:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8192:1;8178:16;;:2;:16;;;8170:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8247:38;8268:4;8274:2;8278:6;8247:20;:38::i;:::-;8298:19;8320:9;:15;8330:4;8320:15;;;;;;;;;;;;;;;;8298:37;;8369:6;8354:11;:21;;8346:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;8486:6;8472:11;:20;8454:9;:15;8464:4;8454:15;;;;;;;;;;;;;;;:38;;;;8524:6;8507:9;:13;8517:2;8507:13;;;;;;;;;;;;;;;;:23;;;;;;;;;;;8574:2;8559:26;;8568:4;8559:26;;;8578:6;8559:26;;;;;;:::i;:::-;;;;;;;;8598:37;8618:4;8624:2;8628:6;8598:19;:37::i;:::-;8080:563;7968:675;;;:::o;19107:1393::-;19160:23;19186:24;19204:4;19186:9;:24::i;:::-;19160:50;;19221:20;19278:1;19259:15;:20;19255:59;;19296:7;;;;19255:59;19346:1;19334:7;;19327:6;;:14;;;;:::i;:::-;19326:21;19322:1130;;19383:1;19365:15;:19;:59;;;;;19406:18;;19388:15;:36;19365:59;19362:443;;;19456:15;19441:30;;19362:443;;;19513:21;19537:28;19561:3;19537:19;19548:7;;19537:6;:10;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;19513:52;;19590:13;19580:23;;;;;:::i;:::-;;;19631:18;;19622:6;:27;19618:176;;;19685:18;;19670:33;;19618:176;;;19772:6;19757:21;;19618:176;19498:307;19362:443;19322:1130;;;19859:1;19841:15;:19;:66;;;;;19882:25;19905:1;19882:18;;:22;;:25;;;;:::i;:::-;19864:15;:43;19841:66;19838:607;;;19924:7;;;;19838:607;19979:1;19961:15;:19;:66;;;;;20002:25;20025:1;20002:18;;:22;;:25;;;;:::i;:::-;19984:15;:43;19961:66;:106;;;;;20049:18;;20031:15;:36;19961:106;19957:488;;;20099:25;20122:1;20099:18;;:22;;:25;;;;:::i;:::-;20084:40;;19957:488;;;20166:21;20190:28;20214:3;20190:19;20201:7;;20190:6;:10;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;20166:52;;20243:13;20233:23;;;;;:::i;:::-;;;20284:18;;20275:6;:27;20271:163;;;20338:18;;20323:33;;20271:163;;;20412:6;20397:21;;20271:163;20151:294;19957:488;19322:1130;20462:30;20479:12;20462:16;:30::i;:::-;19149:1351;;19107:1393;;:::o;2471:98::-;2529:7;2560:1;2556;:5;;;;:::i;:::-;2549:12;;2471:98;;;;:::o;2577:::-;2635:7;2666:1;2662;:5;;;;:::i;:::-;2655:12;;2577:98;;;;:::o;10546:125::-;;;;:::o;10679:124::-;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:139::-;376:6;371:3;366;360:23;417:1;408:6;403:3;399:16;392:27;287:139;;;:::o;432:102::-;473:6;524:2;520:7;515:2;508:5;504:14;500:28;490:38;;432:102;;;:::o;540:377::-;628:3;656:39;689:5;656:39;:::i;:::-;711:71;775:6;770:3;711:71;:::i;:::-;704:78;;791:65;849:6;844:3;837:4;830:5;826:16;791:65;:::i;:::-;881:29;903:6;881:29;:::i;:::-;876:3;872:39;865:46;;632:285;540:377;;;;:::o;923:313::-;1036:4;1074:2;1063:9;1059:18;1051:26;;1123:9;1117:4;1113:20;1109:1;1098:9;1094:17;1087:47;1151:78;1224:4;1215:6;1151:78;:::i;:::-;1143:86;;923:313;;;;:::o;1323:117::-;1432:1;1429;1422:12;1569:126;1606:7;1646:42;1639:5;1635:54;1624:65;;1569:126;;;:::o;1701:96::-;1738:7;1767:24;1785:5;1767:24;:::i;:::-;1756:35;;1701:96;;;:::o;1803:122::-;1876:24;1894:5;1876:24;:::i;:::-;1869:5;1866:35;1856:63;;1915:1;1912;1905:12;1856:63;1803:122;:::o;1931:139::-;1977:5;2015:6;2002:20;1993:29;;2031:33;2058:5;2031:33;:::i;:::-;1931:139;;;;:::o;2076:77::-;2113:7;2142:5;2131:16;;2076:77;;;:::o;2159:122::-;2232:24;2250:5;2232:24;:::i;:::-;2225:5;2222:35;2212:63;;2271:1;2268;2261:12;2212:63;2159:122;:::o;2287:139::-;2333:5;2371:6;2358:20;2349:29;;2387:33;2414:5;2387:33;:::i;:::-;2287:139;;;;:::o;2432:474::-;2500:6;2508;2557:2;2545:9;2536:7;2532:23;2528:32;2525:119;;;2563:79;;:::i;:::-;2525:119;2683:1;2708:53;2753:7;2744:6;2733:9;2729:22;2708:53;:::i;:::-;2698:63;;2654:117;2810:2;2836:53;2881:7;2872:6;2861:9;2857:22;2836:53;:::i;:::-;2826:63;;2781:118;2432:474;;;;;:::o;2912:90::-;2946:7;2989:5;2982:13;2975:21;2964:32;;2912:90;;;:::o;3008:109::-;3089:21;3104:5;3089:21;:::i;:::-;3084:3;3077:34;3008:109;;:::o;3123:210::-;3210:4;3248:2;3237:9;3233:18;3225:26;;3261:65;3323:1;3312:9;3308:17;3299:6;3261:65;:::i;:::-;3123:210;;;;:::o;3339:118::-;3426:24;3444:5;3426:24;:::i;:::-;3421:3;3414:37;3339:118;;:::o;3463:222::-;3556:4;3594:2;3583:9;3579:18;3571:26;;3607:71;3675:1;3664:9;3660:17;3651:6;3607:71;:::i;:::-;3463:222;;;;:::o;3691:619::-;3768:6;3776;3784;3833:2;3821:9;3812:7;3808:23;3804:32;3801:119;;;3839:79;;:::i;:::-;3801:119;3959:1;3984:53;4029:7;4020:6;4009:9;4005:22;3984:53;:::i;:::-;3974:63;;3930:117;4086:2;4112:53;4157:7;4148:6;4137:9;4133:22;4112:53;:::i;:::-;4102:63;;4057:118;4214:2;4240:53;4285:7;4276:6;4265:9;4261:22;4240:53;:::i;:::-;4230:63;;4185:118;3691:619;;;;;:::o;4316:86::-;4351:7;4391:4;4384:5;4380:16;4369:27;;4316:86;;;:::o;4408:112::-;4491:22;4507:5;4491:22;:::i;:::-;4486:3;4479:35;4408:112;;:::o;4526:214::-;4615:4;4653:2;4642:9;4638:18;4630:26;;4666:67;4730:1;4719:9;4715:17;4706:6;4666:67;:::i;:::-;4526:214;;;;:::o;4746:329::-;4805:6;4854:2;4842:9;4833:7;4829:23;4825:32;4822:119;;;4860:79;;:::i;:::-;4822:119;4980:1;5005:53;5050:7;5041:6;5030:9;5026:22;5005:53;:::i;:::-;4995:63;;4951:117;4746:329;;;;:::o;5081:474::-;5149:6;5157;5206:2;5194:9;5185:7;5181:23;5177:32;5174:119;;;5212:79;;:::i;:::-;5174:119;5332:1;5357:53;5402:7;5393:6;5382:9;5378:22;5357:53;:::i;:::-;5347:63;;5303:117;5459:2;5485:53;5530:7;5521:6;5510:9;5506:22;5485:53;:::i;:::-;5475:63;;5430:118;5081:474;;;;;:::o;5561:60::-;5589:3;5610:5;5603:12;;5561:60;;;:::o;5627:142::-;5677:9;5710:53;5728:34;5737:24;5755:5;5737:24;:::i;:::-;5728:34;:::i;:::-;5710:53;:::i;:::-;5697:66;;5627:142;;;:::o;5775:126::-;5825:9;5858:37;5889:5;5858:37;:::i;:::-;5845:50;;5775:126;;;:::o;5907:151::-;5982:9;6015:37;6046:5;6015:37;:::i;:::-;6002:50;;5907:151;;;:::o;6064:181::-;6176:62;6232:5;6176:62;:::i;:::-;6171:3;6164:75;6064:181;;:::o;6251:272::-;6369:4;6407:2;6396:9;6392:18;6384:26;;6420:96;6513:1;6502:9;6498:17;6489:6;6420:96;:::i;:::-;6251:272;;;;:::o;6529:118::-;6616:24;6634:5;6616:24;:::i;:::-;6611:3;6604:37;6529:118;;:::o;6653:222::-;6746:4;6784:2;6773:9;6769:18;6761:26;;6797:71;6865:1;6854:9;6850:17;6841:6;6797:71;:::i;:::-;6653:222;;;;:::o;6881:116::-;6951:21;6966:5;6951:21;:::i;:::-;6944:5;6941:32;6931:60;;6987:1;6984;6977:12;6931:60;6881:116;:::o;7003:133::-;7046:5;7084:6;7071:20;7062:29;;7100:30;7124:5;7100:30;:::i;:::-;7003:133;;;;:::o;7142:468::-;7207:6;7215;7264:2;7252:9;7243:7;7239:23;7235:32;7232:119;;;7270:79;;:::i;:::-;7232:119;7390:1;7415:53;7460:7;7451:6;7440:9;7436:22;7415:53;:::i;:::-;7405:63;;7361:117;7517:2;7543:50;7585:7;7576:6;7565:9;7561:22;7543:50;:::i;:::-;7533:60;;7488:115;7142:468;;;;;:::o;7616:329::-;7675:6;7724:2;7712:9;7703:7;7699:23;7695:32;7692:119;;;7730:79;;:::i;:::-;7692:119;7850:1;7875:53;7920:7;7911:6;7900:9;7896:22;7875:53;:::i;:::-;7865:63;;7821:117;7616:329;;;;:::o;7951:474::-;8019:6;8027;8076:2;8064:9;8055:7;8051:23;8047:32;8044:119;;;8082:79;;:::i;:::-;8044:119;8202:1;8227:53;8272:7;8263:6;8252:9;8248:22;8227:53;:::i;:::-;8217:63;;8173:117;8329:2;8355:53;8400:7;8391:6;8380:9;8376:22;8355:53;:::i;:::-;8345:63;;8300:118;7951:474;;;;;:::o;8431:180::-;8479:77;8476:1;8469:88;8576:4;8573:1;8566:15;8600:4;8597:1;8590:15;8617:320;8661:6;8698:1;8692:4;8688:12;8678:22;;8745:1;8739:4;8735:12;8766:18;8756:81;;8822:4;8814:6;8810:17;8800:27;;8756:81;8884:2;8876:6;8873:14;8853:18;8850:38;8847:84;;8903:18;;:::i;:::-;8847:84;8668:269;8617:320;;;:::o;8943:143::-;9000:5;9031:6;9025:13;9016:22;;9047:33;9074:5;9047:33;:::i;:::-;8943:143;;;;:::o;9092:351::-;9162:6;9211:2;9199:9;9190:7;9186:23;9182:32;9179:119;;;9217:79;;:::i;:::-;9179:119;9337:1;9362:64;9418:7;9409:6;9398:9;9394:22;9362:64;:::i;:::-;9352:74;;9308:128;9092:351;;;;:::o;9449:168::-;9589:20;9585:1;9577:6;9573:14;9566:44;9449:168;:::o;9623:366::-;9765:3;9786:67;9850:2;9845:3;9786:67;:::i;:::-;9779:74;;9862:93;9951:3;9862:93;:::i;:::-;9980:2;9975:3;9971:12;9964:19;;9623:366;;;:::o;9995:419::-;10161:4;10199:2;10188:9;10184:18;10176:26;;10248:9;10242:4;10238:20;10234:1;10223:9;10219:17;10212:47;10276:131;10402:4;10276:131;:::i;:::-;10268:139;;9995:419;;;:::o;10420:332::-;10541:4;10579:2;10568:9;10564:18;10556:26;;10592:71;10660:1;10649:9;10645:17;10636:6;10592:71;:::i;:::-;10673:72;10741:2;10730:9;10726:18;10717:6;10673:72;:::i;:::-;10420:332;;;;;:::o;10758:137::-;10812:5;10843:6;10837:13;10828:22;;10859:30;10883:5;10859:30;:::i;:::-;10758:137;;;;:::o;10901:345::-;10968:6;11017:2;11005:9;10996:7;10992:23;10988:32;10985:119;;;11023:79;;:::i;:::-;10985:119;11143:1;11168:61;11221:7;11212:6;11201:9;11197:22;11168:61;:::i;:::-;11158:71;;11114:125;10901:345;;;;:::o;11252:180::-;11300:77;11297:1;11290:88;11397:4;11394:1;11387:15;11421:4;11418:1;11411:15;11438:191;11478:3;11497:20;11515:1;11497:20;:::i;:::-;11492:25;;11531:20;11549:1;11531:20;:::i;:::-;11526:25;;11574:1;11571;11567:9;11560:16;;11595:3;11592:1;11589:10;11586:36;;;11602:18;;:::i;:::-;11586:36;11438:191;;;;:::o;11635:172::-;11775:24;11771:1;11763:6;11759:14;11752:48;11635:172;:::o;11813:366::-;11955:3;11976:67;12040:2;12035:3;11976:67;:::i;:::-;11969:74;;12052:93;12141:3;12052:93;:::i;:::-;12170:2;12165:3;12161:12;12154:19;;11813:366;;;:::o;12185:419::-;12351:4;12389:2;12378:9;12374:18;12366:26;;12438:9;12432:4;12428:20;12424:1;12413:9;12409:17;12402:47;12466:131;12592:4;12466:131;:::i;:::-;12458:139;;12185:419;;;:::o;12610:172::-;12750:24;12746:1;12738:6;12734:14;12727:48;12610:172;:::o;12788:366::-;12930:3;12951:67;13015:2;13010:3;12951:67;:::i;:::-;12944:74;;13027:93;13116:3;13027:93;:::i;:::-;13145:2;13140:3;13136:12;13129:19;;12788:366;;;:::o;13160:419::-;13326:4;13364:2;13353:9;13349:18;13341:26;;13413:9;13407:4;13403:20;13399:1;13388:9;13384:17;13377:47;13441:131;13567:4;13441:131;:::i;:::-;13433:139;;13160:419;;;:::o;13585:244::-;13725:34;13721:1;13713:6;13709:14;13702:58;13794:27;13789:2;13781:6;13777:15;13770:52;13585:244;:::o;13835:366::-;13977:3;13998:67;14062:2;14057:3;13998:67;:::i;:::-;13991:74;;14074:93;14163:3;14074:93;:::i;:::-;14192:2;14187:3;14183:12;14176:19;;13835:366;;;:::o;14207:419::-;14373:4;14411:2;14400:9;14396:18;14388:26;;14460:9;14454:4;14450:20;14446:1;14435:9;14431:17;14424:47;14488:131;14614:4;14488:131;:::i;:::-;14480:139;;14207:419;;;:::o;14632:224::-;14772:34;14768:1;14760:6;14756:14;14749:58;14841:7;14836:2;14828:6;14824:15;14817:32;14632:224;:::o;14862:366::-;15004:3;15025:67;15089:2;15084:3;15025:67;:::i;:::-;15018:74;;15101:93;15190:3;15101:93;:::i;:::-;15219:2;15214:3;15210:12;15203:19;;14862:366;;;:::o;15234:419::-;15400:4;15438:2;15427:9;15423:18;15415:26;;15487:9;15481:4;15477:20;15473:1;15462:9;15458:17;15451:47;15515:131;15641:4;15515:131;:::i;:::-;15507:139;;15234:419;;;:::o;15659:410::-;15699:7;15722:20;15740:1;15722:20;:::i;:::-;15717:25;;15756:20;15774:1;15756:20;:::i;:::-;15751:25;;15811:1;15808;15804:9;15833:30;15851:11;15833:30;:::i;:::-;15822:41;;16012:1;16003:7;15999:15;15996:1;15993:22;15973:1;15966:9;15946:83;15923:139;;16042:18;;:::i;:::-;15923:139;15707:362;15659:410;;;;:::o;16075:180::-;16123:77;16120:1;16113:88;16220:4;16217:1;16210:15;16244:4;16241:1;16234:15;16261:185;16301:1;16318:20;16336:1;16318:20;:::i;:::-;16313:25;;16352:20;16370:1;16352:20;:::i;:::-;16347:25;;16391:1;16381:35;;16396:18;;:::i;:::-;16381:35;16438:1;16435;16431:9;16426:14;;16261:185;;;;:::o;16452:223::-;16592:34;16588:1;16580:6;16576:14;16569:58;16661:6;16656:2;16648:6;16644:15;16637:31;16452:223;:::o;16681:366::-;16823:3;16844:67;16908:2;16903:3;16844:67;:::i;:::-;16837:74;;16920:93;17009:3;16920:93;:::i;:::-;17038:2;17033:3;17029:12;17022:19;;16681:366;;;:::o;17053:419::-;17219:4;17257:2;17246:9;17242:18;17234:26;;17306:9;17300:4;17296:20;17292:1;17281:9;17277:17;17270:47;17334:131;17460:4;17334:131;:::i;:::-;17326:139;;17053:419;;;:::o;17478:225::-;17618:34;17614:1;17606:6;17602:14;17595:58;17687:8;17682:2;17674:6;17670:15;17663:33;17478:225;:::o;17709:366::-;17851:3;17872:67;17936:2;17931:3;17872:67;:::i;:::-;17865:74;;17948:93;18037:3;17948:93;:::i;:::-;18066:2;18061:3;18057:12;18050:19;;17709:366;;;:::o;18081:419::-;18247:4;18285:2;18274:9;18270:18;18262:26;;18334:9;18328:4;18324:20;18320:1;18309:9;18305:17;18298:47;18362:131;18488:4;18362:131;:::i;:::-;18354:139;;18081:419;;;:::o;18506:223::-;18646:34;18642:1;18634:6;18630:14;18623:58;18715:6;18710:2;18702:6;18698:15;18691:31;18506:223;:::o;18735:366::-;18877:3;18898:67;18962:2;18957:3;18898:67;:::i;:::-;18891:74;;18974:93;19063:3;18974:93;:::i;:::-;19092:2;19087:3;19083:12;19076:19;;18735:366;;;:::o;19107:419::-;19273:4;19311:2;19300:9;19296:18;19288:26;;19360:9;19354:4;19350:20;19346:1;19335:9;19331:17;19324:47;19388:131;19514:4;19388:131;:::i;:::-;19380:139;;19107:419;;;:::o;19532:221::-;19672:34;19668:1;19660:6;19656:14;19649:58;19741:4;19736:2;19728:6;19724:15;19717:29;19532:221;:::o;19759:366::-;19901:3;19922:67;19986:2;19981:3;19922:67;:::i;:::-;19915:74;;19998:93;20087:3;19998:93;:::i;:::-;20116:2;20111:3;20107:12;20100:19;;19759:366;;;:::o;20131:419::-;20297:4;20335:2;20324:9;20320:18;20312:26;;20384:9;20378:4;20374:20;20370:1;20359:9;20355:17;20348:47;20412:131;20538:4;20412:131;:::i;:::-;20404:139;;20131:419;;;:::o;20556:179::-;20696:31;20692:1;20684:6;20680:14;20673:55;20556:179;:::o;20741:366::-;20883:3;20904:67;20968:2;20963:3;20904:67;:::i;:::-;20897:74;;20980:93;21069:3;20980:93;:::i;:::-;21098:2;21093:3;21089:12;21082:19;;20741:366;;;:::o;21113:419::-;21279:4;21317:2;21306:9;21302:18;21294:26;;21366:9;21360:4;21356:20;21352:1;21341:9;21337:17;21330:47;21394:131;21520:4;21394:131;:::i;:::-;21386:139;;21113:419;;;:::o;21538:224::-;21678:34;21674:1;21666:6;21662:14;21655:58;21747:7;21742:2;21734:6;21730:15;21723:32;21538:224;:::o;21768:366::-;21910:3;21931:67;21995:2;21990:3;21931:67;:::i;:::-;21924:74;;22007:93;22096:3;22007:93;:::i;:::-;22125:2;22120:3;22116:12;22109:19;;21768:366;;;:::o;22140:419::-;22306:4;22344:2;22333:9;22329:18;22321:26;;22393:9;22387:4;22383:20;22379:1;22368:9;22364:17;22357:47;22421:131;22547:4;22421:131;:::i;:::-;22413:139;;22140:419;;;:::o;22565:222::-;22705:34;22701:1;22693:6;22689:14;22682:58;22774:5;22769:2;22761:6;22757:15;22750:30;22565:222;:::o;22793:366::-;22935:3;22956:67;23020:2;23015:3;22956:67;:::i;:::-;22949:74;;23032:93;23121:3;23032:93;:::i;:::-;23150:2;23145:3;23141:12;23134:19;;22793:366;;;:::o;23165:419::-;23331:4;23369:2;23358:9;23354:18;23346:26;;23418:9;23412:4;23408:20;23404:1;23393:9;23389:17;23382:47;23446:131;23572:4;23446:131;:::i;:::-;23438:139;;23165:419;;;:::o;23590:172::-;23730:24;23726:1;23718:6;23714:14;23707:48;23590:172;:::o;23768:366::-;23910:3;23931:67;23995:2;23990:3;23931:67;:::i;:::-;23924:74;;24007:93;24096:3;24007:93;:::i;:::-;24125:2;24120:3;24116:12;24109:19;;23768:366;;;:::o;24140:419::-;24306:4;24344:2;24333:9;24329:18;24321:26;;24393:9;24387:4;24383:20;24379:1;24368:9;24364:17;24357:47;24421:131;24547:4;24421:131;:::i;:::-;24413:139;;24140:419;;;:::o;24565:240::-;24705:34;24701:1;24693:6;24689:14;24682:58;24774:23;24769:2;24761:6;24757:15;24750:48;24565:240;:::o;24811:366::-;24953:3;24974:67;25038:2;25033:3;24974:67;:::i;:::-;24967:74;;25050:93;25139:3;25050:93;:::i;:::-;25168:2;25163:3;25159:12;25152:19;;24811:366;;;:::o;25183:419::-;25349:4;25387:2;25376:9;25372:18;25364:26;;25436:9;25430:4;25426:20;25422:1;25411:9;25407:17;25400:47;25464:131;25590:4;25464:131;:::i;:::-;25456:139;;25183:419;;;:::o;25608:169::-;25748:21;25744:1;25736:6;25732:14;25725:45;25608:169;:::o;25783:366::-;25925:3;25946:67;26010:2;26005:3;25946:67;:::i;:::-;25939:74;;26022:93;26111:3;26022:93;:::i;:::-;26140:2;26135:3;26131:12;26124:19;;25783:366;;;:::o;26155:419::-;26321:4;26359:2;26348:9;26344:18;26336:26;;26408:9;26402:4;26398:20;26394:1;26383:9;26379:17;26372:47;26436:131;26562:4;26436:131;:::i;:::-;26428:139;;26155:419;;;:::o;26580:241::-;26720:34;26716:1;26708:6;26704:14;26697:58;26789:24;26784:2;26776:6;26772:15;26765:49;26580:241;:::o;26827:366::-;26969:3;26990:67;27054:2;27049:3;26990:67;:::i;:::-;26983:74;;27066:93;27155:3;27066:93;:::i;:::-;27184:2;27179:3;27175:12;27168:19;;26827:366;;;:::o;27199:419::-;27365:4;27403:2;27392:9;27388:18;27380:26;;27452:9;27446:4;27442:20;27438:1;27427:9;27423:17;27416:47;27480:131;27606:4;27480:131;:::i;:::-;27472:139;;27199:419;;;:::o;27624:194::-;27664:4;27684:20;27702:1;27684:20;:::i;:::-;27679:25;;27718:20;27736:1;27718:20;:::i;:::-;27713:25;;27762:1;27759;27755:9;27747:17;;27786:1;27780:4;27777:11;27774:37;;;27791:18;;:::i;:::-;27774:37;27624:194;;;;:::o;27824:182::-;27964:34;27960:1;27952:6;27948:14;27941:58;27824:182;:::o;28012:366::-;28154:3;28175:67;28239:2;28234:3;28175:67;:::i;:::-;28168:74;;28251:93;28340:3;28251:93;:::i;:::-;28369:2;28364:3;28360:12;28353:19;;28012:366;;;:::o;28384:419::-;28550:4;28588:2;28577:9;28573:18;28565:26;;28637:9;28631:4;28627:20;28623:1;28612:9;28608:17;28601:47;28665:131;28791:4;28665:131;:::i;:::-;28657:139;;28384:419;;;:::o;28809:180::-;28857:77;28854:1;28847:88;28954:4;28951:1;28944:15;28978:4;28975:1;28968:15;28995:180;29043:77;29040:1;29033:88;29140:4;29137:1;29130:15;29164:4;29161:1;29154:15;29181:143;29238:5;29269:6;29263:13;29254:22;;29285:33;29312:5;29285:33;:::i;:::-;29181:143;;;;:::o;29330:351::-;29400:6;29449:2;29437:9;29428:7;29424:23;29420:32;29417:119;;;29455:79;;:::i;:::-;29417:119;29575:1;29600:64;29656:7;29647:6;29636:9;29632:22;29600:64;:::i;:::-;29590:74;;29546:128;29330:351;;;;:::o;29687:85::-;29732:7;29761:5;29750:16;;29687:85;;;:::o;29778:158::-;29836:9;29869:61;29887:42;29896:32;29922:5;29896:32;:::i;:::-;29887:42;:::i;:::-;29869:61;:::i;:::-;29856:74;;29778:158;;;:::o;29942:147::-;30037:45;30076:5;30037:45;:::i;:::-;30032:3;30025:58;29942:147;;:::o;30095:114::-;30162:6;30196:5;30190:12;30180:22;;30095:114;;;:::o;30215:184::-;30314:11;30348:6;30343:3;30336:19;30388:4;30383:3;30379:14;30364:29;;30215:184;;;;:::o;30405:132::-;30472:4;30495:3;30487:11;;30525:4;30520:3;30516:14;30508:22;;30405:132;;;:::o;30543:108::-;30620:24;30638:5;30620:24;:::i;:::-;30615:3;30608:37;30543:108;;:::o;30657:179::-;30726:10;30747:46;30789:3;30781:6;30747:46;:::i;:::-;30825:4;30820:3;30816:14;30802:28;;30657:179;;;;:::o;30842:113::-;30912:4;30944;30939:3;30935:14;30927:22;;30842:113;;;:::o;30991:732::-;31110:3;31139:54;31187:5;31139:54;:::i;:::-;31209:86;31288:6;31283:3;31209:86;:::i;:::-;31202:93;;31319:56;31369:5;31319:56;:::i;:::-;31398:7;31429:1;31414:284;31439:6;31436:1;31433:13;31414:284;;;31515:6;31509:13;31542:63;31601:3;31586:13;31542:63;:::i;:::-;31535:70;;31628:60;31681:6;31628:60;:::i;:::-;31618:70;;31474:224;31461:1;31458;31454:9;31449:14;;31414:284;;;31418:14;31714:3;31707:10;;31115:608;;;30991:732;;;;:::o;31729:831::-;31992:4;32030:3;32019:9;32015:19;32007:27;;32044:71;32112:1;32101:9;32097:17;32088:6;32044:71;:::i;:::-;32125:80;32201:2;32190:9;32186:18;32177:6;32125:80;:::i;:::-;32252:9;32246:4;32242:20;32237:2;32226:9;32222:18;32215:48;32280:108;32383:4;32374:6;32280:108;:::i;:::-;32272:116;;32398:72;32466:2;32455:9;32451:18;32442:6;32398:72;:::i;:::-;32480:73;32548:3;32537:9;32533:19;32524:6;32480:73;:::i;:::-;31729:831;;;;;;;;:::o;32566:225::-;32706:34;32702:1;32694:6;32690:14;32683:58;32775:8;32770:2;32762:6;32758:15;32751:33;32566:225;:::o;32797:366::-;32939:3;32960:67;33024:2;33019:3;32960:67;:::i;:::-;32953:74;;33036:93;33125:3;33036:93;:::i;:::-;33154:2;33149:3;33145:12;33138:19;;32797:366;;;:::o;33169:419::-;33335:4;33373:2;33362:9;33358:18;33350:26;;33422:9;33416:4;33412:20;33408:1;33397:9;33393:17;33386:47;33450:131;33576:4;33450:131;:::i;:::-;33442:139;;33169:419;;;:::o

Swarm Source

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