ETH Price: $3,612.91 (+5.59%)
Gas: 8.33 Gwei

Token

PEPE THE G (PEPEG)
 

Overview

Max Total Supply

6,969,600,000,000 PEPEG

Holders

38

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 8 Decimals)

Filtered by Token Holder
*草拟吗狗庄还我钱来.eth
Balance
0.39961598 PEPEG

Value
$0.00
0x05cc8b8031674221412c29a775ee74a9f6b02023
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:
PEPETHEG

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 100 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-04-21
*/

// SPDX-License-Identifier: MIT

/**
🐸🐸🐸🐸🐸🐸🐸🐸🐸🐸🐸🐸🐸🐸🐸🐸
PEPE THE G - THE ULTIMATE FORM

PEPE THE G is a strong and determined 
frog that exudes confidence and power.

Website: https://pepetheg.com
Telegram: https://t.me/PEPETHEG
Twitter: https://twitter.com/PEPE_THE_G
**/

pragma solidity 0.8.19;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

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

contract PEPETHEG is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    mapping(address => bool) private bots;
    mapping(address => uint256) private _holderLastTransferTimestamp;
    bool public transferDelayEnabled = true;
    address payable private _taxWallet;

    uint256 private _buyTax = 0;
    uint256 private _initialSellTax = 20;
    uint256 private _taxIncrements = 10;
    uint256 private _preventSwapBefore = 20;
    uint256 private _capBuyCountAt = 30;
    uint256 private _buyCount = 0;

    uint256 public _currentSellTax = _initialSellTax;
    uint256 public _currentBuyTax = _buyTax;

    uint8 private constant _decimals = 8;
    uint256 private constant _tTotal = 69696 * 10 ** 8 * 10 ** _decimals;
    string private constant _name = "PEPE THE G";
    string private constant _symbol = "PEPEG";
    uint256 public _maxTxAmount =( _tTotal * 2 / 100); // 2%
    uint256 public _maxWalletSize =( _tTotal * 2 / 100); // 2%
    uint256 public _taxSwapThreshold = (_tTotal * uint256(5)) / uint256(10000); // 0.05%
    uint256 public _maxTaxSwap =( _tTotal * 2 / 100); // 0.2%

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

    event TaxesUpdated(uint _initialSellTax);
    event MaxTxAmountUpdated(uint _maxTxAmount);

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

    constructor() {
        _taxWallet = payable(_msgSender());
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_taxWallet] = true;

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

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

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

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

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

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

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

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

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

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

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

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

            if (tradingOpen && transferDelayEnabled) {
                require(
                    _holderLastTransferTimestamp[tx.origin] < block.number,
                    "Only one transfer per block allowed."
                );
                _holderLastTransferTimestamp[tx.origin] = block.number;
            }

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

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

            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                !inSwap &&
                to == uniswapV2Pair &&
                swapEnabled &&
                contractTokenBalance > _taxSwapThreshold &&
                _buyCount > _preventSwapBefore
            ) {
                swapTokensForEth(
                    min(amount, min(contractTokenBalance, _maxTaxSwap))
                );
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

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

    function min(uint256 a, uint256 b) private pure returns (uint256) {
        return (a > b) ? b : a;
    }

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

    function removeLimits() external onlyOwner {
        _maxTxAmount = _tTotal;
        _maxWalletSize = _tTotal;
        transferDelayEnabled = false;
        emit MaxTxAmountUpdated(_tTotal);
    }

    function reduceTaxes() external onlyOwner {
        if (_initialSellTax > _taxIncrements) {
            _initialSellTax -= _taxIncrements;
        } else {
            _initialSellTax = 0;
        }
        _currentSellTax = _initialSellTax;
        emit TaxesUpdated(_initialSellTax);
    }

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

    function isBot(address a) public view returns (bool) {
        return bots[a];
    }

    function openTrading() external onlyOwner {
        require(!tradingOpen, "trading is already open");
        uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(
            address(this),
            uniswapV2Router.WETH()
        );
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            balanceOf(address(this)),
            0,
            0,
            owner(),
            block.timestamp
        );
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        swapEnabled = true;
        tradingOpen = true;
    }

    receive() external payable {}

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_initialSellTax","type":"uint256"}],"name":"TaxesUpdated","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":"_currentBuyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_currentSellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"reduceTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526006805460ff191660011790556000600781905560146008818155600a6009819055828155601e600b55600c849055600d92909255600e929092556064916200004d91620003d3565b6200005f90650656bc884000620003eb565b6200006c906002620003eb565b62000078919062000405565b600f5560646200008b6008600a620003d3565b6200009d90650656bc884000620003eb565b620000aa906002620003eb565b620000b6919062000405565b6010556127106005620000cc6008600a620003d3565b620000de90650656bc884000620003eb565b620000ea9190620003eb565b620000f6919062000405565b6011556064620001096008600a620003d3565b6200011b90650656bc884000620003eb565b62000128906002620003eb565b62000134919062000405565b6012556014805462ffffff60a01b191690553480156200015357600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060068054610100600160a81b0319166101003302179055620001ba6008600a620003d3565b620001cc90650656bc884000620003eb565b336000908152600160208190526040822092909255600390620001f76000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff19968716179055308152600390935281832080548516600190811790915560065461010090049091168352912080549092161790556200025b3390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002956008600a620003d3565b620002a790650656bc884000620003eb565b60405190815260200160405180910390a362000428565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000315578160001904821115620002f957620002f9620002be565b808516156200030757918102915b93841c9390800290620002d9565b509250929050565b6000826200032e57506001620003cd565b816200033d57506000620003cd565b8160018114620003565760028114620003615762000381565b6001915050620003cd565b60ff841115620003755762000375620002be565b50506001821b620003cd565b5060208310610133831016604e8410600b8410161715620003a6575081810a620003cd565b620003b28383620002d4565b8060001904821115620003c957620003c9620002be565b0290505b92915050565b6000620003e460ff8416836200031d565b9392505050565b8082028115828204841417620003cd57620003cd620002be565b6000826200042357634e487b7160e01b600052601260045260246000fd5b500490565b6119a780620004386000396000f3fe6080604052600436106101445760003560e01c8063728607ba116100b6578063a9059cbb1161006f578063a9059cbb1461037d578063b8ec67351461039d578063bf474bed146103b3578063c876d0b9146103c9578063c9567bf9146103e3578063dd62ed3e146103f857600080fd5b8063728607ba146102d1578063751039fc146102e65780637d1db4a5146102fb5780638da5cb5b146103115780638f9a55c01461033957806395d89b411461034f57600080fd5b806323b872dd1161010857806323b872dd14610210578063313ce567146102305780633bbac5791461024c57806351bc3c851461028557806370a082311461029c578063715018a6146102bc57600080fd5b8063013d39c41461015057806306fdde0314610179578063095ea7b3146101b55780630faee56f146101e557806318160ddd146101fb57600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b50610166600d5481565b6040519081526020015b60405180910390f35b34801561018557600080fd5b5060408051808201909152600a8152695045504520544845204760b01b60208201525b6040516101709190611576565b3480156101c157600080fd5b506101d56101d03660046115dc565b61043e565b6040519015158152602001610170565b3480156101f157600080fd5b5061016660125481565b34801561020757600080fd5b50610166610455565b34801561021c57600080fd5b506101d561022b366004611608565b610478565b34801561023c57600080fd5b5060405160088152602001610170565b34801561025857600080fd5b506101d5610267366004611649565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561029157600080fd5b5061029a6104e1565b005b3480156102a857600080fd5b506101666102b7366004611649565b610536565b3480156102c857600080fd5b5061029a610551565b3480156102dd57600080fd5b5061029a6105ce565b3480156102f257600080fd5b5061029a610667565b34801561030757600080fd5b50610166600f5481565b34801561031d57600080fd5b506000546040516001600160a01b039091168152602001610170565b34801561034557600080fd5b5061016660105481565b34801561035b57600080fd5b50604080518082019091526005815264504550454760d81b60208201526101a8565b34801561038957600080fd5b506101d56103983660046115dc565b610724565b3480156103a957600080fd5b50610166600e5481565b3480156103bf57600080fd5b5061016660115481565b3480156103d557600080fd5b506006546101d59060ff1681565b3480156103ef57600080fd5b5061029a610731565b34801561040457600080fd5b50610166610413366004611666565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b600061044b338484610ad1565b5060015b92915050565b60006104636008600a611799565b61047390650656bc8840006117a8565b905090565b6000610485848484610bf5565b6104d784336104d28560405180606001604052806028815260200161194a602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906111bc565b610ad1565b5060019392505050565b60065461010090046001600160a01b0316336001600160a01b03161461050657600080fd5b600061051130610536565b9050801561052257610522816111f6565b4780156105325761053281611389565b5050565b6001600160a01b031660009081526001602052604090205490565b6000546001600160a01b031633146105845760405162461bcd60e51b815260040161057b906117bf565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105f85760405162461bcd60e51b815260040161057b906117bf565b6009546008541115610623576009546008600082825461061891906117f4565b909155506106299050565b60006008555b600854600d8190556040519081527f08a9cbb7bd5bab504d3fc44931790235ee0c3011feecaa62967a37e3f934146b906020015b60405180910390a1565b6000546001600160a01b031633146106915760405162461bcd60e51b815260040161057b906117bf565b61069d6008600a611799565b6106ad90650656bc8840006117a8565b600f556106bc6008600a611799565b6106cc90650656bc8840006117a8565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107066008600a611799565b61071690650656bc8840006117a8565b60405190815260200161065d565b600061044b338484610bf5565b6000546001600160a01b0316331461075b5760405162461bcd60e51b815260040161057b906117bf565b601454600160a01b900460ff16156107af5760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b604482015260640161057b565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107fa9030906107ea6008600a611799565b6104d290650656bc8840006117a8565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561084d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108719190611807565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f79190611807565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610944573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109689190611807565b601480546001600160a01b0319166001600160a01b039283161790556013541663f305d719473061099881610536565b6000806109ad6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a15573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a3a9190611824565b505060145460135460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610a93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab79190611852565b506014805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610b335760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161057b565b6001600160a01b038216610b945760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161057b565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c595760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161057b565b6001600160a01b038216610cbb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161057b565b60008111610d1d5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161057b565b600080546001600160a01b03858116911614801590610d4a57506000546001600160a01b03848116911614155b15611079576001600160a01b03841660009081526004602052604090205460ff16158015610d9157506001600160a01b03831660009081526004602052604090205460ff16155b610d9a57600080fd5b601454600160a01b900460ff168015610db5575060065460ff165b15610e3757326000908152600560205260409020544311610e245760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b606482015260840161057b565b3260009081526005602052604090204390555b6014546001600160a01b038581169116148015610e6257506013546001600160a01b03848116911614155b8015610e8757506001600160a01b03831660009081526003602052604090205460ff16155b15610f6157600b54600c541015610eae57600c8054906000610ea883611874565b91905055505b600f54821115610efc5760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b604482015260640161057b565b60105482610f0985610536565b610f13919061188d565b1115610f615760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161057b565b601454600160a81b900460ff16610fdd57610f926064610f8c600754856113c790919063ffffffff16565b90611450565b6014549091506001600160a01b038481169116148015610fbb57506001600160a01b0384163014155b15610fdd57610fda6064610f8c600854856113c790919063ffffffff16565b90505b6000610fe830610536565b601454909150600160a81b900460ff1615801561101257506014546001600160a01b038581169116145b80156110275750601454600160b01b900460ff165b8015611034575060115481115b80156110435750600a54600c54115b15611077576110656110608461105b84601254611492565b611492565b6111f6565b4780156110755761107547611389565b505b505b80156110f3573060009081526001602052604090205461109990826114a7565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110ea9085815260200190565b60405180910390a35b6001600160a01b0384166000908152600160205260409020546111169083611506565b6001600160a01b03851660009081526001602052604090205561115b61113c8383611506565b6001600160a01b038516600090815260016020526040902054906114a7565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111a58585611506565b60405190815260200160405180910390a350505050565b600081848411156111e05760405162461bcd60e51b815260040161057b9190611576565b5060006111ed84866117f4565b95945050505050565b6014805460ff60a81b1916600160a81b179055801561137957601454600160a01b900460ff1615611379576040805160028082526060820183526000926020830190803683370190505090503081600081518110611256576112566118a0565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112d39190611807565b816001815181106112e6576112e66118a0565b6001600160a01b03928316602091820292909201015260135461130c9130911684610ad1565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906113459085906000908690309042906004016118b6565b600060405180830381600087803b15801561135f57600080fd5b505af1158015611373573d6000803e3d6000fd5b50505050505b506014805460ff60a81b19169055565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f19350505050158015610532573d6000803e3d6000fd5b6000826000036113d95750600061044f565b60006113e583856117a8565b9050826113f28583611927565b146114495760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161057b565b9392505050565b600061144983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611548565b60008183116114a15782611449565b50919050565b6000806114b4838561188d565b9050838110156114495760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161057b565b600061144983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111bc565b600081836115695760405162461bcd60e51b815260040161057b9190611576565b5060006111ed8486611927565b600060208083528351808285015260005b818110156115a357858101830151858201604001528201611587565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146115d957600080fd5b50565b600080604083850312156115ef57600080fd5b82356115fa816115c4565b946020939093013593505050565b60008060006060848603121561161d57600080fd5b8335611628816115c4565b92506020840135611638816115c4565b929592945050506040919091013590565b60006020828403121561165b57600080fd5b8135611449816115c4565b6000806040838503121561167957600080fd5b8235611684816115c4565b91506020830135611694816115c4565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156116f05781600019048211156116d6576116d661169f565b808516156116e357918102915b93841c93908002906116ba565b509250929050565b6000826117075750600161044f565b816117145750600061044f565b816001811461172a576002811461173457611750565b600191505061044f565b60ff8411156117455761174561169f565b50506001821b61044f565b5060208310610133831016604e8410600b8410161715611773575081810a61044f565b61177d83836116b5565b80600019048211156117915761179161169f565b029392505050565b600061144960ff8416836116f8565b808202811582820484141761044f5761044f61169f565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8181038181111561044f5761044f61169f565b60006020828403121561181957600080fd5b8151611449816115c4565b60008060006060848603121561183957600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561186457600080fd5b8151801515811461144957600080fd5b6000600182016118865761188661169f565b5060010190565b8082018082111561044f5761044f61169f565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119065784516001600160a01b0316835293830193918301916001016118e1565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261194457634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200e881de631f690caae59d14305d1a7fda60e103ebc095caa14e2e7b9a7c3f02564736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101445760003560e01c8063728607ba116100b6578063a9059cbb1161006f578063a9059cbb1461037d578063b8ec67351461039d578063bf474bed146103b3578063c876d0b9146103c9578063c9567bf9146103e3578063dd62ed3e146103f857600080fd5b8063728607ba146102d1578063751039fc146102e65780637d1db4a5146102fb5780638da5cb5b146103115780638f9a55c01461033957806395d89b411461034f57600080fd5b806323b872dd1161010857806323b872dd14610210578063313ce567146102305780633bbac5791461024c57806351bc3c851461028557806370a082311461029c578063715018a6146102bc57600080fd5b8063013d39c41461015057806306fdde0314610179578063095ea7b3146101b55780630faee56f146101e557806318160ddd146101fb57600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b50610166600d5481565b6040519081526020015b60405180910390f35b34801561018557600080fd5b5060408051808201909152600a8152695045504520544845204760b01b60208201525b6040516101709190611576565b3480156101c157600080fd5b506101d56101d03660046115dc565b61043e565b6040519015158152602001610170565b3480156101f157600080fd5b5061016660125481565b34801561020757600080fd5b50610166610455565b34801561021c57600080fd5b506101d561022b366004611608565b610478565b34801561023c57600080fd5b5060405160088152602001610170565b34801561025857600080fd5b506101d5610267366004611649565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561029157600080fd5b5061029a6104e1565b005b3480156102a857600080fd5b506101666102b7366004611649565b610536565b3480156102c857600080fd5b5061029a610551565b3480156102dd57600080fd5b5061029a6105ce565b3480156102f257600080fd5b5061029a610667565b34801561030757600080fd5b50610166600f5481565b34801561031d57600080fd5b506000546040516001600160a01b039091168152602001610170565b34801561034557600080fd5b5061016660105481565b34801561035b57600080fd5b50604080518082019091526005815264504550454760d81b60208201526101a8565b34801561038957600080fd5b506101d56103983660046115dc565b610724565b3480156103a957600080fd5b50610166600e5481565b3480156103bf57600080fd5b5061016660115481565b3480156103d557600080fd5b506006546101d59060ff1681565b3480156103ef57600080fd5b5061029a610731565b34801561040457600080fd5b50610166610413366004611666565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b600061044b338484610ad1565b5060015b92915050565b60006104636008600a611799565b61047390650656bc8840006117a8565b905090565b6000610485848484610bf5565b6104d784336104d28560405180606001604052806028815260200161194a602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906111bc565b610ad1565b5060019392505050565b60065461010090046001600160a01b0316336001600160a01b03161461050657600080fd5b600061051130610536565b9050801561052257610522816111f6565b4780156105325761053281611389565b5050565b6001600160a01b031660009081526001602052604090205490565b6000546001600160a01b031633146105845760405162461bcd60e51b815260040161057b906117bf565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105f85760405162461bcd60e51b815260040161057b906117bf565b6009546008541115610623576009546008600082825461061891906117f4565b909155506106299050565b60006008555b600854600d8190556040519081527f08a9cbb7bd5bab504d3fc44931790235ee0c3011feecaa62967a37e3f934146b906020015b60405180910390a1565b6000546001600160a01b031633146106915760405162461bcd60e51b815260040161057b906117bf565b61069d6008600a611799565b6106ad90650656bc8840006117a8565b600f556106bc6008600a611799565b6106cc90650656bc8840006117a8565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107066008600a611799565b61071690650656bc8840006117a8565b60405190815260200161065d565b600061044b338484610bf5565b6000546001600160a01b0316331461075b5760405162461bcd60e51b815260040161057b906117bf565b601454600160a01b900460ff16156107af5760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b604482015260640161057b565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107fa9030906107ea6008600a611799565b6104d290650656bc8840006117a8565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561084d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108719190611807565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f79190611807565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610944573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109689190611807565b601480546001600160a01b0319166001600160a01b039283161790556013541663f305d719473061099881610536565b6000806109ad6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a15573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a3a9190611824565b505060145460135460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610a93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab79190611852565b506014805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610b335760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161057b565b6001600160a01b038216610b945760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161057b565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c595760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161057b565b6001600160a01b038216610cbb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161057b565b60008111610d1d5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161057b565b600080546001600160a01b03858116911614801590610d4a57506000546001600160a01b03848116911614155b15611079576001600160a01b03841660009081526004602052604090205460ff16158015610d9157506001600160a01b03831660009081526004602052604090205460ff16155b610d9a57600080fd5b601454600160a01b900460ff168015610db5575060065460ff165b15610e3757326000908152600560205260409020544311610e245760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b606482015260840161057b565b3260009081526005602052604090204390555b6014546001600160a01b038581169116148015610e6257506013546001600160a01b03848116911614155b8015610e8757506001600160a01b03831660009081526003602052604090205460ff16155b15610f6157600b54600c541015610eae57600c8054906000610ea883611874565b91905055505b600f54821115610efc5760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b604482015260640161057b565b60105482610f0985610536565b610f13919061188d565b1115610f615760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161057b565b601454600160a81b900460ff16610fdd57610f926064610f8c600754856113c790919063ffffffff16565b90611450565b6014549091506001600160a01b038481169116148015610fbb57506001600160a01b0384163014155b15610fdd57610fda6064610f8c600854856113c790919063ffffffff16565b90505b6000610fe830610536565b601454909150600160a81b900460ff1615801561101257506014546001600160a01b038581169116145b80156110275750601454600160b01b900460ff165b8015611034575060115481115b80156110435750600a54600c54115b15611077576110656110608461105b84601254611492565b611492565b6111f6565b4780156110755761107547611389565b505b505b80156110f3573060009081526001602052604090205461109990826114a7565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110ea9085815260200190565b60405180910390a35b6001600160a01b0384166000908152600160205260409020546111169083611506565b6001600160a01b03851660009081526001602052604090205561115b61113c8383611506565b6001600160a01b038516600090815260016020526040902054906114a7565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111a58585611506565b60405190815260200160405180910390a350505050565b600081848411156111e05760405162461bcd60e51b815260040161057b9190611576565b5060006111ed84866117f4565b95945050505050565b6014805460ff60a81b1916600160a81b179055801561137957601454600160a01b900460ff1615611379576040805160028082526060820183526000926020830190803683370190505090503081600081518110611256576112566118a0565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112d39190611807565b816001815181106112e6576112e66118a0565b6001600160a01b03928316602091820292909201015260135461130c9130911684610ad1565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906113459085906000908690309042906004016118b6565b600060405180830381600087803b15801561135f57600080fd5b505af1158015611373573d6000803e3d6000fd5b50505050505b506014805460ff60a81b19169055565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f19350505050158015610532573d6000803e3d6000fd5b6000826000036113d95750600061044f565b60006113e583856117a8565b9050826113f28583611927565b146114495760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161057b565b9392505050565b600061144983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611548565b60008183116114a15782611449565b50919050565b6000806114b4838561188d565b9050838110156114495760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161057b565b600061144983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111bc565b600081836115695760405162461bcd60e51b815260040161057b9190611576565b5060006111ed8486611927565b600060208083528351808285015260005b818110156115a357858101830151858201604001528201611587565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146115d957600080fd5b50565b600080604083850312156115ef57600080fd5b82356115fa816115c4565b946020939093013593505050565b60008060006060848603121561161d57600080fd5b8335611628816115c4565b92506020840135611638816115c4565b929592945050506040919091013590565b60006020828403121561165b57600080fd5b8135611449816115c4565b6000806040838503121561167957600080fd5b8235611684816115c4565b91506020830135611694816115c4565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156116f05781600019048211156116d6576116d661169f565b808516156116e357918102915b93841c93908002906116ba565b509250929050565b6000826117075750600161044f565b816117145750600061044f565b816001811461172a576002811461173457611750565b600191505061044f565b60ff8411156117455761174561169f565b50506001821b61044f565b5060208310610133831016604e8410600b8410161715611773575081810a61044f565b61177d83836116b5565b80600019048211156117915761179161169f565b029392505050565b600061144960ff8416836116f8565b808202811582820484141761044f5761044f61169f565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8181038181111561044f5761044f61169f565b60006020828403121561181957600080fd5b8151611449816115c4565b60008060006060848603121561183957600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561186457600080fd5b8151801515811461144957600080fd5b6000600182016118865761188661169f565b5060010190565b8082018082111561044f5761044f61169f565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119065784516001600160a01b0316835293830193918301916001016118e1565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261194457634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200e881de631f690caae59d14305d1a7fda60e103ebc095caa14e2e7b9a7c3f02564736f6c63430008130033

Deployed Bytecode Sourcemap

4048:9104:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4767:48;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;4767:48:0;;;;;;;;6090:83;;;;;;;;;;-1:-1:-1;6160:5:0;;;;;;;;;;;;-1:-1:-1;;;6160:5:0;;;;6090:83;;;;;;;:::i;6973:186::-;;;;;;;;;;-1:-1:-1;6973:186:0;;;;;:::i;:::-;;:::i;:::-;;;1370:14:1;;1363:22;1345:41;;1333:2;1318:18;6973:186:0;1205:187:1;5303:48:0;;;;;;;;;;;;;;;;6367:95;;;;;;;;;;;;;:::i;7167:446::-;;;;;;;;;;-1:-1:-1;7167:446:0;;;;;:::i;:::-;;:::i;6276:83::-;;;;;;;;;;-1:-1:-1;6276:83:0;;4905:1;2000:36:1;;1988:2;1973:18;6276:83:0;1858:184:1;11819:86:0;;;;;;;;;;-1:-1:-1;11819:86:0;;;;;:::i;:::-;-1:-1:-1;;;;;11890:7:0;11866:4;11890:7;;;:4;:7;;;;;;;;;11819:86;12783:366;;;;;;;;;;;;;:::i;:::-;;6470:119;;;;;;;;;;-1:-1:-1;6470:119:0;;;;;:::i;:::-;;:::i;3073:148::-;;;;;;;;;;;;;:::i;11412:299::-;;;;;;;;;;;;;:::i;11203:201::-;;;;;;;;;;;;;:::i;5087:49::-;;;;;;;;;;;;;;;;2859:79;;;;;;;;;;-1:-1:-1;2897:7:0;2924:6;2859:79;;-1:-1:-1;;;;;2924:6:0;;;2445:51:1;;2433:2;2418:18;2859:79:0;2299:203:1;5149:51:0;;;;;;;;;;;;;;;;6181:87;;;;;;;;;;-1:-1:-1;6253:7:0;;;;;;;;;;;;-1:-1:-1;;;6253:7:0;;;;6181:87;;6597:192;;;;;;;;;;-1:-1:-1;6597:192:0;;;;;:::i;:::-;;:::i;4822:39::-;;;;;;;;;;;;;;;;5213:74;;;;;;;;;;;;;;;;4433:39;;;;;;;;;;-1:-1:-1;4433:39:0;;;;;;;;11913:825;;;;;;;;;;;;;:::i;6797:168::-;;;;;;;;;;-1:-1:-1;6797:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;6930:18:0;;;6903:7;6930:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6797:168;6973:186;7073:4;7090:39;474:10;7113:7;7122:6;7090:8;:39::i;:::-;-1:-1:-1;7147:4:0;6973:186;;;;;:::o;6367:95::-;6420:7;4966:15;4905:1;4966:2;:15;:::i;:::-;4948:33;;:15;:33;:::i;:::-;6440:14;;6367:95;:::o;7167:446::-;7299:4;7316:36;7326:6;7334:9;7345:6;7316:9;:36::i;:::-;7363:220;7386:6;474:10;7434:138;7490:6;7434:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7434:19:0;;;;;;:11;:19;;;;;;;;474:10;7434:33;;;;;;;;;;:37;:138::i;:::-;7363:8;:220::i;:::-;-1:-1:-1;7601:4:0;7167:446;;;;;:::o;12783:366::-;12849:10;;;;;-1:-1:-1;;;;;12849:10:0;474;-1:-1:-1;;;;;12833:26:0;;12825:35;;;;;;12871:20;12894:24;12912:4;12894:9;:24::i;:::-;12871:47;-1:-1:-1;12933:16:0;;12929:79;;12966:30;12983:12;12966:16;:30::i;:::-;13039:21;13075:14;;13071:71;;13106:24;13119:10;13106:12;:24::i;:::-;12814:335;;12783:366::o;6470:119::-;-1:-1:-1;;;;;6563:18:0;6536:7;6563:18;;;:9;:18;;;;;;;6470:119::o;3073:148::-;2986:6;;-1:-1:-1;;;;;2986:6:0;474:10;2986:22;2978:67;;;;-1:-1:-1;;;2978:67:0;;;;;;;:::i;:::-;;;;;;;;;3180:1:::1;3164:6:::0;;3143:40:::1;::::0;-1:-1:-1;;;;;3164:6:0;;::::1;::::0;3143:40:::1;::::0;3180:1;;3143:40:::1;3211:1;3194:19:::0;;-1:-1:-1;;;;;;3194:19:0::1;::::0;;3073:148::o;11412:299::-;2986:6;;-1:-1:-1;;;;;2986:6:0;474:10;2986:22;2978:67;;;;-1:-1:-1;;;2978:67:0;;;;;;;:::i;:::-;11487:14:::1;;11469:15;;:32;11465:150;;;11537:14;;11518:15;;:33;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;11465:150:0::1;::::0;-1:-1:-1;11465:150:0::1;;11602:1;11584:15;:19:::0;11465:150:::1;11643:15;::::0;11625::::1;:33:::0;;;11674:29:::1;::::0;160:25:1;;;11674:29:0::1;::::0;148:2:1;133:18;11674:29:0::1;;;;;;;;11412:299::o:0;11203:201::-;2986:6;;-1:-1:-1;;;;;2986:6:0;474:10;2986:22;2978:67;;;;-1:-1:-1;;;2978:67:0;;;;;;;:::i;:::-;4966:15:::1;4905:1;4966:2;:15;:::i;:::-;4948:33;::::0;:15:::1;:33;:::i;:::-;11257:12;:22:::0;4966:15:::1;4905:1;4966:2;:15;:::i;:::-;4948:33;::::0;:15:::1;:33;:::i;:::-;11290:14;:24:::0;11325:20:::1;:28:::0;;-1:-1:-1;;11325:28:0::1;::::0;;11369:27:::1;4966:15;4905:1;-1:-1:-1::0;4966:15:0::1;:::i;:::-;4948:33;::::0;:15:::1;:33;:::i;:::-;11369:27;::::0;160:25:1;;;148:2;133:18;11369:27:0::1;14:177:1::0;6597:192:0;6700:4;6717:42;474:10;6741:9;6752:6;6717:9;:42::i;11913:825::-;2986:6;;-1:-1:-1;;;;;2986:6:0;474:10;2986:22;2978:67;;;;-1:-1:-1;;;2978:67:0;;;;;;;:::i;:::-;11975:11:::1;::::0;-1:-1:-1;;;11975:11:0;::::1;;;11974:12;11966:48;;;::::0;-1:-1:-1;;;11966:48:0;;5284:2:1;11966:48:0::1;::::0;::::1;5266:21:1::0;5323:2;5303:18;;;5296:30;-1:-1:-1;;;5342:18:1;;;5335:53;5405:18;;11966:48:0::1;5082:347:1::0;11966:48:0::1;12025:15;:104:::0;;-1:-1:-1;;;;;;12025:104:0::1;12076:42;12025:104:::0;;::::1;::::0;;;12140:58:::1;::::0;12157:4:::1;::::0;4966:15:::1;4905:1;4966:2;:15;:::i;:::-;4948:33;::::0;:15:::1;:33;:::i;12140:58::-;12243:15;;;;;;;;;-1:-1:-1::0;;;;;12243:15:0::1;-1:-1:-1::0;;;;;12243:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12225:55:0::1;;12303:4;12323:15;;;;;;;;;-1:-1:-1::0;;;;;12323:15:0::1;-1:-1:-1::0;;;;;12323:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12225:131;::::0;-1:-1:-1;;;;;;12225:131:0::1;::::0;;;;;;-1:-1:-1;;;;;5920:15:1;;;12225:131:0::1;::::0;::::1;5902:34:1::0;5972:15;;5952:18;;;5945:43;5837:18;;12225:131:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12209:13;:147:::0;;-1:-1:-1;;;;;;12209:147:0::1;-1:-1:-1::0;;;;;12209:147:0;;::::1;;::::0;;12367:15:::1;::::0;::::1;:31;12406:21;12451:4;12471:24;12451:4:::0;12471:9:::1;:24::i;:::-;12510:1;12526::::0;12542:7:::1;2897::::0;2924:6;-1:-1:-1;;;;;2924:6:0;;2859:79;12542:7:::1;12367:223;::::0;::::1;::::0;;;-1:-1:-1;;;;;;12367:223:0;;;-1:-1:-1;;;;;6358:15:1;;;12367:223:0::1;::::0;::::1;6340:34:1::0;6390:18;;;6383:34;;;;6433:18;;;6426:34;;;;6476:18;;;6469:34;6540:15;;;6519:19;;;6512:44;12564:15:0::1;6572:19:1::0;;;6565:35;6274:19;;12367:223:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;12608:13:0::1;::::0;12639:15:::1;::::0;12601:71:::1;::::0;-1:-1:-1;;;12601:71:0;;-1:-1:-1;;;;;12639:15:0;;::::1;12601:71;::::0;::::1;7096:51:1::0;-1:-1:-1;;7163:18:1;;;7156:34;12608:13:0;::::1;::::0;-1:-1:-1;12601:29:0::1;::::0;7069:18:1;;12601:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;12683:11:0::1;:18:::0;;-1:-1:-1;;;;12712:18:0;-1:-1:-1;;;12712:18:0;;;11913:825::o;7621:335::-;-1:-1:-1;;;;;7714:19:0;;7706:68;;;;-1:-1:-1;;;7706:68:0;;7685:2:1;7706:68:0;;;7667:21:1;7724:2;7704:18;;;7697:30;7763:34;7743:18;;;7736:62;-1:-1:-1;;;7814:18:1;;;7807:34;7858:19;;7706:68:0;7483:400:1;7706:68:0;-1:-1:-1;;;;;7793:21:0;;7785:68;;;;-1:-1:-1;;;7785:68:0;;8090:2:1;7785:68:0;;;8072:21:1;8129:2;8109:18;;;8102:30;8168:34;8148:18;;;8141:62;-1:-1:-1;;;8219:18:1;;;8212:32;8261:19;;7785:68:0;7888:398:1;7785:68:0;-1:-1:-1;;;;;7864:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7916:32;;160:25:1;;;7916:32:0;;133:18:1;7916:32:0;;;;;;;7621:335;;;:::o;7964:2499::-;-1:-1:-1;;;;;8048:18:0;;8040:68;;;;-1:-1:-1;;;8040:68:0;;8493:2:1;8040:68:0;;;8475:21:1;8532:2;8512:18;;;8505:30;8571:34;8551:18;;;8544:62;-1:-1:-1;;;8622:18:1;;;8615:35;8667:19;;8040:68:0;8291:401:1;8040:68:0;-1:-1:-1;;;;;8123:16:0;;8115:64;;;;-1:-1:-1;;;8115:64:0;;8899:2:1;8115:64:0;;;8881:21:1;8938:2;8918:18;;;8911:30;8977:34;8957:18;;;8950:62;-1:-1:-1;;;9028:18:1;;;9021:33;9071:19;;8115:64:0;8697:399:1;8115:64:0;8203:1;8194:6;:10;8186:64;;;;-1:-1:-1;;;8186:64:0;;9303:2:1;8186:64:0;;;9285:21:1;9342:2;9322:18;;;9315:30;9381:34;9361:18;;;9354:62;-1:-1:-1;;;9432:18:1;;;9425:39;9481:19;;8186:64:0;9101:405:1;8186:64:0;8257:17;2924:6;;-1:-1:-1;;;;;8293:15:0;;;2924:6;;8293:15;;;;:32;;-1:-1:-1;2897:7:0;2924:6;-1:-1:-1;;;;;8312:13:0;;;2924:6;;8312:13;;8293:32;8289:1803;;;-1:-1:-1;;;;;8351:10:0;;;;;;:4;:10;;;;;;;;8350:11;:24;;;;-1:-1:-1;;;;;;8366:8:0;;;;;;:4;:8;;;;;;;;8365:9;8350:24;8342:33;;;;;;8396:11;;-1:-1:-1;;;8396:11:0;;;;:35;;;;-1:-1:-1;8411:20:0;;;;8396:35;8392:313;;;8511:9;8482:39;;;;:28;:39;;;;;;8524:12;-1:-1:-1;8452:164:0;;;;-1:-1:-1;;;8452:164:0;;9713:2:1;8452:164:0;;;9695:21:1;9752:2;9732:18;;;9725:30;9791:34;9771:18;;;9764:62;-1:-1:-1;;;9842:18:1;;;9835:34;9886:19;;8452:164:0;9511:400:1;8452:164:0;8664:9;8635:39;;;;:28;:39;;;;;8677:12;8635:54;;8392:313;8751:13;;-1:-1:-1;;;;;8743:21:0;;;8751:13;;8743:21;:72;;;;-1:-1:-1;8799:15:0;;-1:-1:-1;;;;;8785:30:0;;;8799:15;;8785:30;;8743:72;:116;;;;-1:-1:-1;;;;;;8837:22:0;;;;;;:18;:22;;;;;;;;8836:23;8743:116;8721:445;;;8909:14;;8897:9;;:26;8894:80;;;8943:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8894:80;9010:12;;9000:6;:22;;8992:60;;;;-1:-1:-1;;;8992:60:0;;10258:2:1;8992:60:0;;;10240:21:1;10297:2;10277:18;;;10270:30;-1:-1:-1;;;10316:18:1;;;10309:55;10381:18;;8992:60:0;10056:349:1;8992:60:0;9105:14;;9095:6;9079:13;9089:2;9079:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;9071:79;;;;-1:-1:-1;;;9071:79:0;;10742:2:1;9071:79:0;;;10724:21:1;10781:2;10761:18;;;10754:30;10820:28;10800:18;;;10793:56;10866:18;;9071:79:0;10540:350:1;9071:79:0;9187:6;;-1:-1:-1;;;9187:6:0;;;;9182:247;;9226:28;9250:3;9226:19;9237:7;;9226:6;:10;;:19;;;;:::i;:::-;:23;;:28::i;:::-;9283:13;;9214:40;;-1:-1:-1;;;;;;9277:19:0;;;9283:13;;9277:19;:44;;;;-1:-1:-1;;;;;;9300:21:0;;9316:4;9300:21;;9277:44;9273:141;;;9358:36;9390:3;9358:27;9369:15;;9358:6;:10;;:27;;;;:::i;:36::-;9346:48;;9273:141;9445:28;9476:24;9494:4;9476:9;:24::i;:::-;9538:6;;9445:55;;-1:-1:-1;;;;9538:6:0;;;;9537:7;:47;;;;-1:-1:-1;9571:13:0;;-1:-1:-1;;;;;9565:19:0;;;9571:13;;9565:19;9537:47;:79;;;;-1:-1:-1;9605:11:0;;-1:-1:-1;;;9605:11:0;;;;9537:79;:140;;;;;9660:17;;9637:20;:40;9537:140;:191;;;;;9710:18;;9698:9;;:30;9537:191;9515:566;;;9763:109;9802:51;9806:6;9814:38;9818:20;9840:11;;9814:3;:38::i;:::-;9802:3;:51::i;:::-;9763:16;:109::i;:::-;9920:21;9964:22;;9960:106;;10011:35;10024:21;10011:12;:35::i;:::-;9744:337;9515:566;8327:1765;8289:1803;10108:13;;10104:172;;10183:4;10165:24;;;;:9;:24;;;;;;:39;;10194:9;10165:28;:39::i;:::-;10156:4;10138:24;;;;:9;:24;;;;;;;:66;;;;10224:40;;-1:-1:-1;;;;;10224:40:0;;;;;;;10254:9;160:25:1;;148:2;133:18;;14:177;10224:40:0;;;;;;;;10104:172;-1:-1:-1;;;;;10304:15:0;;;;;;:9;:15;;;;;;:27;;10324:6;10304:19;:27::i;:::-;-1:-1:-1;;;;;10286:15:0;;;;;;:9;:15;;;;;:45;10358:40;10376:21;:6;10387:9;10376:10;:21::i;:::-;-1:-1:-1;;;;;10358:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;10342:13:0;;;;;;;:9;:13;;;;;:56;;;;10414:41;;;10433:21;:6;10444:9;10433:10;:21::i;:::-;10414:41;;160:25:1;;;148:2;133:18;10414:41:0;;;;;;;8033:2430;7964:2499;;;:::o;1661:224::-;1781:7;1817:12;1809:6;;;;1801:29;;;;-1:-1:-1;;;1801:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1841:9:0;1853:5;1857:1;1853;:5;:::i;:::-;1841:17;1661:224;-1:-1:-1;;;;;1661:224:0:o;10586:609::-;5700:6;:13;;-1:-1:-1;;;;5700:13:0;-1:-1:-1;;;5700:13:0;;;10664:55;;10701:7:::1;10664:55;10734:11;::::0;-1:-1:-1;;;10734:11:0;::::1;;;10729:51:::0;10762:7:::1;10729:51;10814:16;::::0;;10828:1:::1;10814:16:::0;;;;;::::1;::::0;;10790:21:::1;::::0;10814:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10814:16:0::1;10790:40;;10859:4;10841;10846:1;10841:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10841:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10885:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10885:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10841:7;;10885:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10875:4;10880:1;10875:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10875:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10950:15:::1;::::0;10918:62:::1;::::0;10935:4:::1;::::0;10950:15:::1;10968:11:::0;10918:8:::1;:62::i;:::-;10991:15;::::0;:196:::1;::::0;-1:-1:-1;;;10991:196:0;;-1:-1:-1;;;;;10991:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;11072:11;;10991:15:::1;::::0;11114:4;;11141::::1;::::0;11161:15:::1;::::0;10991:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10653:542;5724:1;-1:-1:-1::0;5736:6:0;:14;;-1:-1:-1;;;;5736:14:0;;;10586:609::o;11719:92::-;11776:10;;:27;;:10;;;;-1:-1:-1;;;;;11776:10:0;;:27;;;;;;;;;;;;:10;:27;;;;;;;;;;;;;;;;;;;1893:246;1951:7;1975:1;1980;1975:6;1971:47;;-1:-1:-1;2005:1:0;1998:8;;1971:47;2028:9;2040:5;2044:1;2040;:5;:::i;:::-;2028:17;-1:-1:-1;2073:1:0;2064:5;2068:1;2028:17;2064:5;:::i;:::-;:10;2056:56;;;;-1:-1:-1;;;2056:56:0;;12568:2:1;2056:56:0;;;12550:21:1;12607:2;12587:18;;;12580:30;12646:34;12626:18;;;12619:62;-1:-1:-1;;;12697:18:1;;;12690:31;12738:19;;2056:56:0;12366:397:1;2056:56:0;2130:1;1893:246;-1:-1:-1;;;1893:246:0:o;2147:132::-;2205:7;2232:39;2236:1;2239;2232:39;;;;;;;;;;;;;;;;;:3;:39::i;10471:107::-;10528:7;10560:1;10556;:5;10555:15;;10569:1;10555:15;;;-1:-1:-1;10565:1:0;10471:107;-1:-1:-1;10471:107:0:o;1330:179::-;1388:7;;1420:5;1424:1;1420;:5;:::i;:::-;1408:17;;1449:1;1444;:6;;1436:46;;;;-1:-1:-1;;;1436:46:0;;12970:2:1;1436:46:0;;;12952:21:1;13009:2;12989:18;;;12982:30;13048:29;13028:18;;;13021:57;13095:18;;1436:46:0;12768:351:1;1517:136:0;1575:7;1602:43;1606:1;1609;1602:43;;;;;;;;;;;;;;;;;:3;:43::i;2287:223::-;2407:7;2442:12;2435:5;2427:28;;;;-1:-1:-1;;;2427:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2466:9:0;2478:5;2482:1;2478;:5;:::i;196:548:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;480:3;665:1;660:2;651:6;640:9;636:22;632:31;625:42;735:2;728;724:7;719:2;711:6;707:15;703:29;692:9;688:45;684:54;676:62;;;;196:548;;;;:::o;749:131::-;-1:-1:-1;;;;;824:31:1;;814:42;;804:70;;870:1;867;860:12;804:70;749:131;:::o;885:315::-;953:6;961;1014:2;1002:9;993:7;989:23;985:32;982:52;;;1030:1;1027;1020:12;982:52;1069:9;1056:23;1088:31;1113:5;1088:31;:::i;:::-;1138:5;1190:2;1175:18;;;;1162:32;;-1:-1:-1;;;885:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:422;3121:1;3164:5;3121:1;3178:270;3199:7;3189:8;3186:21;3178:270;;;3258:4;3254:1;3250:6;3246:17;3240:4;3237:27;3234:53;;;3267:18;;:::i;:::-;3317:7;3307:8;3303:22;3300:55;;;3337:16;;;;3300:55;3416:22;;;;3376:15;;;;3178:270;;;3182:3;3032:422;;;;;:::o;3459:806::-;3508:5;3538:8;3528:80;;-1:-1:-1;3579:1:1;3593:5;;3528:80;3627:4;3617:76;;-1:-1:-1;3664:1:1;3678:5;;3617:76;3709:4;3727:1;3722:59;;;;3795:1;3790:130;;;;3702:218;;3722:59;3752:1;3743:10;;3766:5;;;3790:130;3827:3;3817:8;3814:17;3811:43;;;3834:18;;:::i;:::-;-1:-1:-1;;3890:1:1;3876:16;;3905:5;;3702:218;;4004:2;3994:8;3991:16;3985:3;3979:4;3976:13;3972:36;3966:2;3956:8;3953:16;3948:2;3942:4;3939:12;3935:35;3932:77;3929:159;;;-1:-1:-1;4041:19:1;;;4073:5;;3929:159;4120:34;4145:8;4139:4;4120:34;:::i;:::-;4190:6;4186:1;4182:6;4178:19;4169:7;4166:32;4163:58;;;4201:18;;:::i;:::-;4239:20;;3459:806;-1:-1:-1;;;3459:806:1:o;4270:140::-;4328:5;4357:47;4398:4;4388:8;4384:19;4378:4;4357:47;:::i;4415:168::-;4488:9;;;4519;;4536:15;;;4530:22;;4516:37;4506:71;;4557:18;;:::i;4588:356::-;4790:2;4772:21;;;4809:18;;;4802:30;4868:34;4863:2;4848:18;;4841:62;4935:2;4920:18;;4588:356::o;4949:128::-;5016:9;;;5037:11;;;5034:37;;;5051:18;;:::i;5434:251::-;5504:6;5557:2;5545:9;5536:7;5532:23;5528:32;5525:52;;;5573:1;5570;5563:12;5525:52;5605:9;5599:16;5624:31;5649:5;5624:31;:::i;6611:306::-;6699:6;6707;6715;6768:2;6756:9;6747:7;6743:23;6739:32;6736:52;;;6784:1;6781;6774:12;6736:52;6813:9;6807:16;6797:26;;6863:2;6852:9;6848:18;6842:25;6832:35;;6907:2;6896:9;6892:18;6886:25;6876:35;;6611:306;;;;;:::o;7201:277::-;7268:6;7321:2;7309:9;7300:7;7296:23;7292:32;7289:52;;;7337:1;7334;7327:12;7289:52;7369:9;7363:16;7422:5;7415:13;7408:21;7401:5;7398:32;7388:60;;7444:1;7441;7434:12;9916:135;9955:3;9976:17;;;9973:43;;9996:18;;:::i;:::-;-1:-1:-1;10043:1:1;10032:13;;9916:135::o;10410:125::-;10475:9;;;10496:10;;;10493:36;;;10509:18;;:::i;11027:127::-;11088:10;11083:3;11079:20;11076:1;11069:31;11119:4;11116:1;11109:15;11143:4;11140:1;11133:15;11159:980;11421:4;11469:3;11458:9;11454:19;11500:6;11489:9;11482:25;11526:2;11564:6;11559:2;11548:9;11544:18;11537:34;11607:3;11602:2;11591:9;11587:18;11580:31;11631:6;11666;11660:13;11697:6;11689;11682:22;11735:3;11724:9;11720:19;11713:26;;11774:2;11766:6;11762:15;11748:29;;11795:1;11805:195;11819:6;11816:1;11813:13;11805:195;;;11884:13;;-1:-1:-1;;;;;11880:39:1;11868:52;;11975:15;;;;11940:12;;;;11916:1;11834:9;11805:195;;;-1:-1:-1;;;;;;;12056:32:1;;;;12051:2;12036:18;;12029:60;-1:-1:-1;;;12120:3:1;12105:19;12098:35;12017:3;11159:980;-1:-1:-1;;;11159:980:1:o;12144:217::-;12184:1;12210;12200:132;;12254:10;12249:3;12245:20;12242:1;12235:31;12289:4;12286:1;12279:15;12317:4;12314:1;12307:15;12200:132;-1:-1:-1;12346:9:1;;12144:217::o

Swarm Source

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