ETH Price: $3,326.76 (+1.32%)
 

Overview

Max Total Supply

1,000,000,000 DARKTRUMP

Holders

33

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
12,031,599.9999987981 DARKTRUMP

Value
$0.00
0xAd23cF3b9DD0A1a5342F7D446e8d8cd528E42bDA
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:
DARKTRUMP

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

/**
 * https://t.me/SaviorDarkTrump
 * https://x.com/SaviorDarkTrump
 * https://darktrump.live
 */


// SPDX-License-Identifier: MIT

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) {
        uint256 c = a > b ? a - b : 0;
        require(c >= 0, errorMessage);
        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 DARKTRUMP 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 = false;
    address payable private _taxWallet;

    uint256 private _preventSwapBefore = 0;
    uint256 private _buyTax = 30;
    uint256 private _sellTax = 30;
    uint256 private _buyCount = 0;

    uint8 private constant _decimals = 18;
    uint256 private constant _tTotal = 1e9 * 10 ** _decimals;
    string private constant _name = "Savior of Dark America";
    string private constant _symbol = "DARKTRUMP";
    uint256 public _maxTxAmount = 2e7 * 10 ** _decimals;
    uint256 public _maxWalletSize = 2e7 * 10 ** _decimals;
    uint256 public _taxSwapThreshold = 5e3 * 10 ** _decimals;
    uint256 public _maxTaxSwap = 1e7 * 10 ** _decimals;

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

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

    constructor() {
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _taxWallet = payable(0x7DE409427f3bceC9E4bc0bd921227f220de89ECe);
        _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;

        bool isFeeExcluded = _isExcludedFromFee[from] || _isExcludedFromFee[to];

        if (!isFeeExcluded) {
            require(
                _balances[from] >= amount,
                "Transfer amount must be less than from balance"
            );
            require(!bots[from] && !bots[to]);

            if (transferDelayEnabled) {
                if (
                    to != address(uniswapV2Router) &&
                    to != address(uniswapV2Pair)
                ) {
                    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]
            ) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(
                    balanceOf(to) + amount <= _maxWalletSize,
                    "Exceeds the maxWalletSize."
                );
                if (_buyCount < _preventSwapBefore) {
                    require(!isContract(to));
                }
                _buyCount++;
            }

            taxAmount = amount.mul(_buyTax).div(100);
            if (to == uniswapV2Pair && from != address(this)) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                taxAmount = amount.mul(_sellTax).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));

            if (
                !inSwap &&
                to == uniswapV2Pair &&
                swapEnabled &&
                _buyCount > _preventSwapBefore
            )
                swapTokensForEth(
                    min(amount, min(contractTokenBalance, _maxTaxSwap))
                );
        }

        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 setNewRules(uint256 buyTax, uint256 sellTax) external onlyOwner {
        require(buyTax <= 99 && sellTax <= 99, "Must be less than 100");

        _buyTax = buyTax;
        _sellTax = sellTax;
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        if (tradingOpen && tokenAmount > 0) {
            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
            );
        }

        passBallToTeam(address(this).balance);
    }

    function removeReferee() external onlyOwner {
        _maxTxAmount = type(uint256).max;
        _maxWalletSize = type(uint256).max;
        transferDelayEnabled = false;
        emit MaxTxAmountUpdated(type(uint256).max);
    }

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

    function kickoff() external onlyOwner {
        require(!tradingOpen, "trading is already open");
        _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,
            0x000000000000000000000000000000000000dEaD,
            block.timestamp
        );
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        swapEnabled = true;
        tradingOpen = true;
    }

    receive() external payable {}

    function isContract(address account) private view returns (bool) {
        uint256 size;
        assembly {
            size := extcodesize(account)
        }
        return size > 0;
    }

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"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":[],"name":"kickoff","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeReferee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"buyTax","type":"uint256"},{"internalType":"uint256","name":"sellTax","type":"uint256"}],"name":"setNewRules","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"}]

60806040526006805460ff1916905560006007819055601e6008819055600955600a908155620000329060129062000375565b62000042906301312d006200038d565b600b55620000536012600a62000375565b62000063906301312d006200038d565b600c55620000746012600a62000375565b62000082906113886200038d565b600d55620000936012600a62000375565b620000a290629896806200038d565b600e556010805461ffff60a81b19169055348015620000c057600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600f80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d17905560068054747de409427f3bcec9e4bc0bd921227f220de89ece00610100600160a81b0319909116179055620001606012600a62000375565b6200017090633b9aca006200038d565b3360009081526001602081905260408220929092556003906200019b6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260039093528183208054851660019081179091556006546101009004909116835291208054909216179055620001ff3390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002396012600a62000375565b6200024990633b9aca006200038d565b60405190815260200160405180910390a3620003a7565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002b75781600019048211156200029b576200029b62000260565b80851615620002a957918102915b93841c93908002906200027b565b509250929050565b600082620002d0575060016200036f565b81620002df575060006200036f565b8160018114620002f85760028114620003035762000323565b60019150506200036f565b60ff84111562000317576200031762000260565b50506001821b6200036f565b5060208310610133831016604e8410600b841016171562000348575081810a6200036f565b62000354838362000276565b80600019048211156200036b576200036b62000260565b0290505b92915050565b60006200038660ff841683620002bf565b9392505050565b80820281158282048414176200036f576200036f62000260565b6119dd80620003b76000396000f3fe6080604052600436106101235760003560e01c80637d1db4a5116100a0578063980f62b111610064578063980f62b114610342578063a9059cbb14610357578063bf474bed14610377578063c876d0b91461038d578063dd62ed3e146103a757600080fd5b80637d1db4a5146102a75780638da5cb5b146102bd5780638f9a55c0146102e557806392ef35b3146102fb57806395d89b411461031057600080fd5b806323b872dd116100e757806323b872dd1461020b578063313ce5671461022b57806351bc3c851461024757806370a082311461025c578063715018a61461029257600080fd5b80630348d9041461012f57806306fdde0314610151578063095ea7b3146101a25780630faee56f146101d257806318160ddd146101f657600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b5061014f61014a36600461158a565b6103ed565b005b34801561015d57600080fd5b50604080518082019091526016815275536176696f72206f66204461726b20416d657269636160501b60208201525b60405161019991906115ac565b60405180910390f35b3480156101ae57600080fd5b506101c26101bd366004611612565b610481565b6040519015158152602001610199565b3480156101de57600080fd5b506101e8600e5481565b604051908152602001610199565b34801561020257600080fd5b506101e8610498565b34801561021757600080fd5b506101c261022636600461163e565b6104b9565b34801561023757600080fd5b5060405160128152602001610199565b34801561025357600080fd5b5061014f610522565b34801561026857600080fd5b506101e861027736600461167f565b6001600160a01b031660009081526001602052604090205490565b34801561029e57600080fd5b5061014f61057a565b3480156102b357600080fd5b506101e8600b5481565b3480156102c957600080fd5b506000546040516001600160a01b039091168152602001610199565b3480156102f157600080fd5b506101e8600c5481565b34801561030757600080fd5b5061014f6105ee565b34801561031c57600080fd5b5060408051808201909152600981526804441524b5452554d560bc1b602082015261018c565b34801561034e57600080fd5b5061014f610664565b34801561036357600080fd5b506101c2610372366004611612565b6109ec565b34801561038357600080fd5b506101e8600d5481565b34801561039957600080fd5b506006546101c29060ff1681565b3480156103b357600080fd5b506101e86103c236600461169c565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6000546001600160a01b031633146104205760405162461bcd60e51b8152600401610417906116d5565b60405180910390fd5b60638211158015610432575060638111155b6104765760405162461bcd60e51b815260206004820152601560248201527404d757374206265206c657373207468616e2031303605c1b6044820152606401610417565b600891909155600955565b600061048e3384846109f9565b5060015b92915050565b60006104a66012600a611804565b6104b490633b9aca00611813565b905090565b60006104c6848484610b1d565b610518843361051385604051806060016040528060288152602001611980602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906111d8565b6109f9565b5060019392505050565b60065461010090046001600160a01b0316336001600160a01b03161461054757600080fd5b30600090815260016020526040902054801561056657610566816111fc565b478015610576576105768161139d565b5050565b6000546001600160a01b031633146105a45760405162461bcd60e51b8152600401610417906116d5565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106185760405162461bcd60e51b8152600401610417906116d5565b600019600b819055600c8190556006805460ff191690556040519081527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf9060200160405180910390a1565b6000546001600160a01b0316331461068e5760405162461bcd60e51b8152600401610417906116d5565b601054600160a01b900460ff16156106e85760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610417565b600f546107149030906001600160a01b03166107066012600a611804565b61051390633b9aca00611813565b600f60009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610767573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061078b919061182a565b6001600160a01b031663c9c6539630600f60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ed573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610811919061182a565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801561085e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610882919061182a565b601080546001600160a01b039283166001600160a01b0319909116179055600f541663f305d71947306108ca816001600160a01b031660009081526001602052604090205490565b6040516001600160e01b031960e086901b1681526001600160a01b0390921660048301526024820152600060448201819052606482015261dead60848201524260a482015260c40160606040518083038185885af1158015610930573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906109559190611847565b5050601054600f5460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af11580156109ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d29190611875565b506010805462ff00ff60a01b19166201000160a01b179055565b600061048e338484610b1d565b6001600160a01b038316610a5b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610417565b6001600160a01b038216610abc5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610417565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b815760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610417565b6001600160a01b038216610be35760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610417565b60008111610c455760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610417565b6001600160a01b038316600090815260036020526040812054819060ff1680610c8657506001600160a01b03841660009081526003602052604090205460ff165b905080611094576001600160a01b038516600090815260016020526040902054831115610d0c5760405162461bcd60e51b815260206004820152602e60248201527f5472616e7366657220616d6f756e74206d757374206265206c6573732074686160448201526d6e2066726f6d2062616c616e636560901b6064820152608401610417565b6001600160a01b03851660009081526004602052604090205460ff16158015610d4e57506001600160a01b03841660009081526004602052604090205460ff16155b610d5757600080fd5b60065460ff1615610e1057600f546001600160a01b03858116911614801590610d8e57506010546001600160a01b03858116911614155b15610e1057326000908152600560205260409020544311610dfd5760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b6064820152608401610417565b3260009081526005602052604090204390555b6010546001600160a01b038681169116148015610e3b5750600f546001600160a01b03858116911614155b8015610e6057506001600160a01b03841660009081526003602052604090205460ff16155b15610f5c57600b54831115610eb35760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b6044820152606401610417565b600c5483610ed6866001600160a01b031660009081526001602052604090205490565b610ee09190611897565b1115610f2e5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610417565b600754600a541015610f4657833b15610f4657600080fd5b600a8054906000610f56836118aa565b91905055505b610f7c6064610f76600854866113db90919063ffffffff16565b90611464565b6010549092506001600160a01b038581169116148015610fa557506001600160a01b0385163014155b1561101557600b54831115610ff85760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b6044820152606401610417565b6110126064610f76600954866113db90919063ffffffff16565b91505b30600090815260016020526040902054601054600160a81b900460ff1615801561104c57506010546001600160a01b038681169116145b80156110615750601054600160b01b900460ff165b80156110705750600754600a54115b156110925761109261108d8561108884600e546114a6565b6114a6565b6111fc565b505b811561110e57306000908152600160205260409020546110b490836114bb565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111059086815260200190565b60405180910390a35b6001600160a01b038516600090815260016020526040902054611131908461151a565b6001600160a01b038616600090815260016020526040902055611176611157848461151a565b6001600160a01b038616600090815260016020526040902054906114bb565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111c0868661151a565b60405190815260200160405180910390a35050505050565b6000808385116111e95760006111f3565b6111f384866118c3565b95945050505050565b6010805460ff60a81b1916600160a81b1790819055600160a01b900460ff1680156112275750600081115b15611384576040805160028082526060820183526000926020830190803683370190505090503081600081518110611261576112616118d6565b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112de919061182a565b816001815181106112f1576112f16118d6565b6001600160a01b039283166020918202929092010152600f5461131791309116846109f9565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac947906113509085906000908690309042906004016118ec565b600060405180830381600087803b15801561136a57600080fd5b505af115801561137e573d6000803e3d6000fd5b50505050505b61138d4761139d565b506010805460ff60a81b19169055565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f19350505050158015610576573d6000803e3d6000fd5b6000826000036113ed57506000610492565b60006113f98385611813565b905082611406858361195d565b1461145d5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610417565b9392505050565b600061145d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061155c565b60008183116114b5578261145d565b50919050565b6000806114c88385611897565b90508381101561145d5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610417565b600061145d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111d8565b6000818361157d5760405162461bcd60e51b815260040161041791906115ac565b5060006111f3848661195d565b6000806040838503121561159d57600080fd5b50508035926020909101359150565b600060208083528351808285015260005b818110156115d9578581018301518582016040015282016115bd565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461160f57600080fd5b50565b6000806040838503121561162557600080fd5b8235611630816115fa565b946020939093013593505050565b60008060006060848603121561165357600080fd5b833561165e816115fa565b9250602084013561166e816115fa565b929592945050506040919091013590565b60006020828403121561169157600080fd5b813561145d816115fa565b600080604083850312156116af57600080fd5b82356116ba816115fa565b915060208301356116ca816115fa565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561175b5781600019048211156117415761174161170a565b8085161561174e57918102915b93841c9390800290611725565b509250929050565b60008261177257506001610492565b8161177f57506000610492565b8160018114611795576002811461179f576117bb565b6001915050610492565b60ff8411156117b0576117b061170a565b50506001821b610492565b5060208310610133831016604e8410600b84101617156117de575081810a610492565b6117e88383611720565b80600019048211156117fc576117fc61170a565b029392505050565b600061145d60ff841683611763565b80820281158282048414176104925761049261170a565b60006020828403121561183c57600080fd5b815161145d816115fa565b60008060006060848603121561185c57600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561188757600080fd5b8151801515811461145d57600080fd5b808201808211156104925761049261170a565b6000600182016118bc576118bc61170a565b5060010190565b818103818111156104925761049261170a565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561193c5784516001600160a01b031683529383019391830191600101611917565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261197a57634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220db2463ec5642c3e3aa74ba567a9c48cd06acfaa74e53addbc2bb9e3f29c7d75264736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101235760003560e01c80637d1db4a5116100a0578063980f62b111610064578063980f62b114610342578063a9059cbb14610357578063bf474bed14610377578063c876d0b91461038d578063dd62ed3e146103a757600080fd5b80637d1db4a5146102a75780638da5cb5b146102bd5780638f9a55c0146102e557806392ef35b3146102fb57806395d89b411461031057600080fd5b806323b872dd116100e757806323b872dd1461020b578063313ce5671461022b57806351bc3c851461024757806370a082311461025c578063715018a61461029257600080fd5b80630348d9041461012f57806306fdde0314610151578063095ea7b3146101a25780630faee56f146101d257806318160ddd146101f657600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b5061014f61014a36600461158a565b6103ed565b005b34801561015d57600080fd5b50604080518082019091526016815275536176696f72206f66204461726b20416d657269636160501b60208201525b60405161019991906115ac565b60405180910390f35b3480156101ae57600080fd5b506101c26101bd366004611612565b610481565b6040519015158152602001610199565b3480156101de57600080fd5b506101e8600e5481565b604051908152602001610199565b34801561020257600080fd5b506101e8610498565b34801561021757600080fd5b506101c261022636600461163e565b6104b9565b34801561023757600080fd5b5060405160128152602001610199565b34801561025357600080fd5b5061014f610522565b34801561026857600080fd5b506101e861027736600461167f565b6001600160a01b031660009081526001602052604090205490565b34801561029e57600080fd5b5061014f61057a565b3480156102b357600080fd5b506101e8600b5481565b3480156102c957600080fd5b506000546040516001600160a01b039091168152602001610199565b3480156102f157600080fd5b506101e8600c5481565b34801561030757600080fd5b5061014f6105ee565b34801561031c57600080fd5b5060408051808201909152600981526804441524b5452554d560bc1b602082015261018c565b34801561034e57600080fd5b5061014f610664565b34801561036357600080fd5b506101c2610372366004611612565b6109ec565b34801561038357600080fd5b506101e8600d5481565b34801561039957600080fd5b506006546101c29060ff1681565b3480156103b357600080fd5b506101e86103c236600461169c565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6000546001600160a01b031633146104205760405162461bcd60e51b8152600401610417906116d5565b60405180910390fd5b60638211158015610432575060638111155b6104765760405162461bcd60e51b815260206004820152601560248201527404d757374206265206c657373207468616e2031303605c1b6044820152606401610417565b600891909155600955565b600061048e3384846109f9565b5060015b92915050565b60006104a66012600a611804565b6104b490633b9aca00611813565b905090565b60006104c6848484610b1d565b610518843361051385604051806060016040528060288152602001611980602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906111d8565b6109f9565b5060019392505050565b60065461010090046001600160a01b0316336001600160a01b03161461054757600080fd5b30600090815260016020526040902054801561056657610566816111fc565b478015610576576105768161139d565b5050565b6000546001600160a01b031633146105a45760405162461bcd60e51b8152600401610417906116d5565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106185760405162461bcd60e51b8152600401610417906116d5565b600019600b819055600c8190556006805460ff191690556040519081527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf9060200160405180910390a1565b6000546001600160a01b0316331461068e5760405162461bcd60e51b8152600401610417906116d5565b601054600160a01b900460ff16156106e85760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610417565b600f546107149030906001600160a01b03166107066012600a611804565b61051390633b9aca00611813565b600f60009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610767573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061078b919061182a565b6001600160a01b031663c9c6539630600f60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ed573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610811919061182a565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801561085e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610882919061182a565b601080546001600160a01b039283166001600160a01b0319909116179055600f541663f305d71947306108ca816001600160a01b031660009081526001602052604090205490565b6040516001600160e01b031960e086901b1681526001600160a01b0390921660048301526024820152600060448201819052606482015261dead60848201524260a482015260c40160606040518083038185885af1158015610930573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906109559190611847565b5050601054600f5460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af11580156109ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d29190611875565b506010805462ff00ff60a01b19166201000160a01b179055565b600061048e338484610b1d565b6001600160a01b038316610a5b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610417565b6001600160a01b038216610abc5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610417565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b815760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610417565b6001600160a01b038216610be35760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610417565b60008111610c455760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610417565b6001600160a01b038316600090815260036020526040812054819060ff1680610c8657506001600160a01b03841660009081526003602052604090205460ff165b905080611094576001600160a01b038516600090815260016020526040902054831115610d0c5760405162461bcd60e51b815260206004820152602e60248201527f5472616e7366657220616d6f756e74206d757374206265206c6573732074686160448201526d6e2066726f6d2062616c616e636560901b6064820152608401610417565b6001600160a01b03851660009081526004602052604090205460ff16158015610d4e57506001600160a01b03841660009081526004602052604090205460ff16155b610d5757600080fd5b60065460ff1615610e1057600f546001600160a01b03858116911614801590610d8e57506010546001600160a01b03858116911614155b15610e1057326000908152600560205260409020544311610dfd5760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b6064820152608401610417565b3260009081526005602052604090204390555b6010546001600160a01b038681169116148015610e3b5750600f546001600160a01b03858116911614155b8015610e6057506001600160a01b03841660009081526003602052604090205460ff16155b15610f5c57600b54831115610eb35760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b6044820152606401610417565b600c5483610ed6866001600160a01b031660009081526001602052604090205490565b610ee09190611897565b1115610f2e5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610417565b600754600a541015610f4657833b15610f4657600080fd5b600a8054906000610f56836118aa565b91905055505b610f7c6064610f76600854866113db90919063ffffffff16565b90611464565b6010549092506001600160a01b038581169116148015610fa557506001600160a01b0385163014155b1561101557600b54831115610ff85760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b6044820152606401610417565b6110126064610f76600954866113db90919063ffffffff16565b91505b30600090815260016020526040902054601054600160a81b900460ff1615801561104c57506010546001600160a01b038681169116145b80156110615750601054600160b01b900460ff165b80156110705750600754600a54115b156110925761109261108d8561108884600e546114a6565b6114a6565b6111fc565b505b811561110e57306000908152600160205260409020546110b490836114bb565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111059086815260200190565b60405180910390a35b6001600160a01b038516600090815260016020526040902054611131908461151a565b6001600160a01b038616600090815260016020526040902055611176611157848461151a565b6001600160a01b038616600090815260016020526040902054906114bb565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111c0868661151a565b60405190815260200160405180910390a35050505050565b6000808385116111e95760006111f3565b6111f384866118c3565b95945050505050565b6010805460ff60a81b1916600160a81b1790819055600160a01b900460ff1680156112275750600081115b15611384576040805160028082526060820183526000926020830190803683370190505090503081600081518110611261576112616118d6565b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112de919061182a565b816001815181106112f1576112f16118d6565b6001600160a01b039283166020918202929092010152600f5461131791309116846109f9565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac947906113509085906000908690309042906004016118ec565b600060405180830381600087803b15801561136a57600080fd5b505af115801561137e573d6000803e3d6000fd5b50505050505b61138d4761139d565b506010805460ff60a81b19169055565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f19350505050158015610576573d6000803e3d6000fd5b6000826000036113ed57506000610492565b60006113f98385611813565b905082611406858361195d565b1461145d5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610417565b9392505050565b600061145d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061155c565b60008183116114b5578261145d565b50919050565b6000806114c88385611897565b90508381101561145d5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610417565b600061145d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111d8565b6000818361157d5760405162461bcd60e51b815260040161041791906115ac565b5060006111f3848661195d565b6000806040838503121561159d57600080fd5b50508035926020909101359150565b600060208083528351808285015260005b818110156115d9578581018301518582016040015282016115bd565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461160f57600080fd5b50565b6000806040838503121561162557600080fd5b8235611630816115fa565b946020939093013593505050565b60008060006060848603121561165357600080fd5b833561165e816115fa565b9250602084013561166e816115fa565b929592945050506040919091013590565b60006020828403121561169157600080fd5b813561145d816115fa565b600080604083850312156116af57600080fd5b82356116ba816115fa565b915060208301356116ca816115fa565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561175b5781600019048211156117415761174161170a565b8085161561174e57918102915b93841c9390800290611725565b509250929050565b60008261177257506001610492565b8161177f57506000610492565b8160018114611795576002811461179f576117bb565b6001915050610492565b60ff8411156117b0576117b061170a565b50506001821b610492565b5060208310610133831016604e8410600b84101617156117de575081810a610492565b6117e88383611720565b80600019048211156117fc576117fc61170a565b029392505050565b600061145d60ff841683611763565b80820281158282048414176104925761049261170a565b60006020828403121561183c57600080fd5b815161145d816115fa565b60008060006060848603121561185c57600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561188757600080fd5b8151801515811461145d57600080fd5b808201808211156104925761049261170a565b6000600182016118bc576118bc61170a565b5060010190565b818103818111156104925761049261170a565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561193c5784516001600160a01b031683529383019391830191600101611917565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261197a57634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220db2463ec5642c3e3aa74ba567a9c48cd06acfaa74e53addbc2bb9e3f29c7d75264736f6c63430008130033

Deployed Bytecode Sourcemap

3870:9216:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10508:213;;;;;;;;;;-1:-1:-1;10508:213:0;;;;;:::i;:::-;;:::i;:::-;;5748:83;;;;;;;;;;-1:-1:-1;5818:5:0;;;;;;;;;;;;-1:-1:-1;;;5818:5:0;;;;5748:83;;;;;;;:::i;:::-;;;;;;;;6631:186;;;;;;;;;;-1:-1:-1;6631:186:0;;;;;:::i;:::-;;:::i;:::-;;;1441:14:1;;1434:22;1416:41;;1404:2;1389:18;6631:186:0;1276:187:1;4903:50:0;;;;;;;;;;;;;;;;;;;1614:25:1;;;1602:2;1587:18;4903:50:0;1468:177:1;6025:95:0;;;;;;;;;;;;;:::i;6825:446::-;;;;;;;;;;-1:-1:-1;6825:446:0;;;;;:::i;:::-;;:::i;5934:83::-;;;;;;;;;;-1:-1:-1;5934:83:0;;4535:2;2253:36:1;;2241:2;2226:18;5934:83:0;2111:184:1;12715:368:0;;;;;;;;;;;;;:::i;6128:119::-;;;;;;;;;;-1:-1:-1;6128:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6221:18:0;6194:7;6221:18;;;:9;:18;;;;;;;6128:119;2895:148;;;;;;;;;;;;;:::i;4722:51::-;;;;;;;;;;;;;;;;2681:79;;;;;;;;;;-1:-1:-1;2719:7:0;2746:6;2681:79;;-1:-1:-1;;;;;2746:6:0;;;2698:51:1;;2686:2;2671:18;2681:79:0;2552:203:1;4780:53:0;;;;;;;;;;;;;;;;11372:232;;;;;;;;;;;;;:::i;5839:87::-;;;;;;;;;;-1:-1:-1;5911:7:0;;;;;;;;;;;;-1:-1:-1;;;5911:7:0;;;;5839:87;;11714:753;;;;;;;;;;;;;:::i;6255:192::-;;;;;;;;;;-1:-1:-1;6255:192:0;;;;;:::i;:::-;;:::i;4840:56::-;;;;;;;;;;;;;;;;4256:40;;;;;;;;;;-1:-1:-1;4256:40:0;;;;;;;;6455:168;;;;;;;;;;-1:-1:-1;6455:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;6588:18:0;;;6561:7;6588:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6455:168;10508:213;2808:6;;-1:-1:-1;;;;;2808:6:0;284:10;2808:22;2800:67;;;;-1:-1:-1;;;2800:67:0;;;;;;;:::i;:::-;;;;;;;;;10610:2:::1;10600:6;:12;;:29;;;;;10627:2;10616:7;:13;;10600:29;10592:63;;;::::0;-1:-1:-1;;;10592:63:0;;3716:2:1;10592:63:0::1;::::0;::::1;3698:21:1::0;3755:2;3735:18;;;3728:30;-1:-1:-1;;;3774:18:1;;;3767:51;3835:18;;10592:63:0::1;3514:345:1::0;10592:63:0::1;10668:7;:16:::0;;;;10695:8:::1;:18:::0;10508:213::o;6631:186::-;6731:4;6748:39;284:10;6771:7;6780:6;6748:8;:39::i;:::-;-1:-1:-1;6805:4:0;6631:186;;;;;:::o;6025:95::-;6078:7;4585:15;4535:2;4585;:15;:::i;:::-;4579:21;;:3;:21;:::i;:::-;6098:14;;6025:95;:::o;6825:446::-;6957:4;6974:36;6984:6;6992:9;7003:6;6974:9;:36::i;:::-;7021:220;7044:6;284:10;7092:138;7148:6;7092:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7092:19:0;;;;;;:11;:19;;;;;;;;284:10;7092:33;;;;;;;;;;:37;:138::i;:::-;7021:8;:220::i;:::-;-1:-1:-1;7259:4:0;6825:446;;;;;:::o;12715:368::-;12781:10;;;;;-1:-1:-1;;;;;12781:10:0;284;-1:-1:-1;;;;;12765:26:0;;12757:35;;;;;;12844:4;12803:20;6221:18;;;:9;:18;;;;;;12865:16;;12861:79;;12898:30;12915:12;12898:16;:30::i;:::-;12971:21;13007:14;;13003:73;;13038:26;13053:10;13038:14;:26::i;:::-;12746:337;;12715:368::o;2895:148::-;2808:6;;-1:-1:-1;;;;;2808:6:0;284:10;2808:22;2800:67;;;;-1:-1:-1;;;2800:67:0;;;;;;;:::i;:::-;3002:1:::1;2986:6:::0;;2965:40:::1;::::0;-1:-1:-1;;;;;2986:6:0;;::::1;::::0;2965:40:::1;::::0;3002:1;;2965:40:::1;3033:1;3016:19:::0;;-1:-1:-1;;;;;;3016:19:0::1;::::0;;2895:148::o;11372:232::-;2808:6;;-1:-1:-1;;;;;2808:6:0;284:10;2808:22;2800:67;;;;-1:-1:-1;;;2800:67:0;;;;;;;:::i;:::-;-1:-1:-1;;11427:12:0::1;:32:::0;;;11470:14:::1;:34:::0;;;11515:20:::1;:28:::0;;-1:-1:-1;;11515:28:0::1;::::0;;11559:37:::1;::::0;1614:25:1;;;11559:37:0::1;::::0;1602:2:1;1587:18;11559:37:0::1;;;;;;;11372:232::o:0;11714:753::-;2808:6;;-1:-1:-1;;;;;2808:6:0;284:10;2808:22;2800:67;;;;-1:-1:-1;;;2800:67:0;;;;;;;:::i;:::-;11772:11:::1;::::0;-1:-1:-1;;;11772:11:0;::::1;;;11771:12;11763:48;;;::::0;-1:-1:-1;;;11763:48:0;;5754:2:1;11763:48:0::1;::::0;::::1;5736:21:1::0;5793:2;5773:18;;;5766:30;5832:25;5812:18;;;5805:53;5875:18;;11763:48:0::1;5552:347:1::0;11763:48:0::1;11854:15;::::0;11822:58:::1;::::0;11839:4:::1;::::0;-1:-1:-1;;;;;11854:15:0::1;4585;4535:2;4585;:15;:::i;:::-;4579:21;::::0;:3:::1;:21;:::i;11822:58::-;11925:15;;;;;;;;;-1:-1:-1::0;;;;;11925:15:0::1;-1:-1:-1::0;;;;;11925:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11907:55:0::1;;11989:4;12013:15;;;;;;;;;-1:-1:-1::0;;;;;12013:15:0::1;-1:-1:-1::0;;;;;12013:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11907:143;::::0;-1:-1:-1;;;;;;11907:143:0::1;::::0;;;;;;-1:-1:-1;;;;;6390:15:1;;;11907:143:0::1;::::0;::::1;6372:34:1::0;6442:15;;6422:18;;;6415:43;6307:18;;11907:143:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11891:13;:159:::0;;-1:-1:-1;;;;;11891:159:0;;::::1;-1:-1:-1::0;;;;;;11891:159:0;;::::1;;::::0;;12061:15:::1;::::0;::::1;:31;12100:21;12145:4;12165:24;12145:4:::0;-1:-1:-1;;;;;6221:18:0;6194:7;6221:18;;;:9;:18;;;;;;;6128:119;12165:24:::1;12061:258;::::0;-1:-1:-1;;;;;;12061:258:0::1;::::0;;;;;;-1:-1:-1;;;;;6828:15:1;;;12061:258:0::1;::::0;::::1;6810:34:1::0;6860:18;;;6853:34;12204:1:0::1;6903:18:1::0;;;6896:34;;;6946:18;;;6939:34;12236:42:0::1;6989:19:1::0;;;6982:44;12293:15:0::1;7042:19:1::0;;;7035:35;6744:19;;12061:258:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;12337:13:0::1;::::0;12368:15:::1;::::0;12330:71:::1;::::0;-1:-1:-1;;;12330:71:0;;-1:-1:-1;;;;;12368:15:0;;::::1;12330:71;::::0;::::1;7566:51:1::0;-1:-1:-1;;7633:18:1;;;7626:34;12337:13:0;::::1;::::0;-1:-1:-1;12330:29:0::1;::::0;7539:18:1;;12330:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;12412:11:0::1;:18:::0;;-1:-1:-1;;;;12441:18:0;-1:-1:-1;;;12441:18:0;;;11714:753::o;6255:192::-;6358:4;6375:42;284:10;6399:9;6410:6;6375:9;:42::i;7279:335::-;-1:-1:-1;;;;;7372:19:0;;7364:68;;;;-1:-1:-1;;;7364:68:0;;8155:2:1;7364:68:0;;;8137:21:1;8194:2;8174:18;;;8167:30;8233:34;8213:18;;;8206:62;-1:-1:-1;;;8284:18:1;;;8277:34;8328:19;;7364:68:0;7953:400:1;7364:68:0;-1:-1:-1;;;;;7451:21:0;;7443:68;;;;-1:-1:-1;;;7443:68:0;;8560:2:1;7443:68:0;;;8542:21:1;8599:2;8579:18;;;8572:30;8638:34;8618:18;;;8611:62;-1:-1:-1;;;8689:18:1;;;8682:32;8731:19;;7443:68:0;8358:398:1;7443:68:0;-1:-1:-1;;;;;7522:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7574:32;;1614:25:1;;;7574:32:0;;1587:18:1;7574:32:0;;;;;;;7279:335;;;:::o;7622:2763::-;-1:-1:-1;;;;;7710:18:0;;7702:68;;;;-1:-1:-1;;;7702:68:0;;8963:2:1;7702:68:0;;;8945:21:1;9002:2;8982:18;;;8975:30;9041:34;9021:18;;;9014:62;-1:-1:-1;;;9092:18:1;;;9085:35;9137:19;;7702:68:0;8761:401:1;7702:68:0;-1:-1:-1;;;;;7789:16:0;;7781:64;;;;-1:-1:-1;;;7781:64:0;;9369:2:1;7781:64:0;;;9351:21:1;9408:2;9388:18;;;9381:30;9447:34;9427:18;;;9420:62;-1:-1:-1;;;9498:18:1;;;9491:33;9541:19;;7781:64:0;9167:399:1;7781:64:0;7873:1;7864:6;:10;7856:64;;;;-1:-1:-1;;;7856:64:0;;9773:2:1;7856:64:0;;;9755:21:1;9812:2;9792:18;;;9785:30;9851:34;9831:18;;;9824:62;-1:-1:-1;;;9902:18:1;;;9895:39;9951:19;;7856:64:0;9571:405:1;7856:64:0;-1:-1:-1;;;;;7988:24:0;;7933:17;7988:24;;;:18;:24;;;;;;7933:17;;7988:24;;;:50;;-1:-1:-1;;;;;;8016:22:0;;;;;;:18;:22;;;;;;;;7988:50;7967:71;;8056:13;8051:1963;;-1:-1:-1;;;;;8112:15:0;;;;;;:9;:15;;;;;;:25;-1:-1:-1;8112:25:0;8086:133;;;;-1:-1:-1;;;8086:133:0;;10183:2:1;8086:133:0;;;10165:21:1;10222:2;10202:18;;;10195:30;10261:34;10241:18;;;10234:62;-1:-1:-1;;;10312:18:1;;;10305:44;10366:19;;8086:133:0;9981:410:1;8086:133:0;-1:-1:-1;;;;;8243:10:0;;;;;;:4;:10;;;;;;;;8242:11;:24;;;;-1:-1:-1;;;;;;8258:8:0;;;;;;:4;:8;;;;;;;;8257:9;8242:24;8234:33;;;;;;8288:20;;;;8284:485;;;8369:15;;-1:-1:-1;;;;;8355:30:0;;;8369:15;;8355:30;;;;:83;;-1:-1:-1;8424:13:0;;-1:-1:-1;;;;;8410:28:0;;;8424:13;;8410:28;;8355:83;8329:425;;;8544:9;8515:39;;;;:28;:39;;;;;;8557:12;-1:-1:-1;8481:176:0;;;;-1:-1:-1;;;8481:176:0;;10598:2:1;8481:176:0;;;10580:21:1;10637:2;10617:18;;;10610:30;10676:34;10656:18;;;10649:62;-1:-1:-1;;;10727:18:1;;;10720:34;10771:19;;8481:176:0;10396:400:1;8481:176:0;8709:9;8680:39;;;;:28;:39;;;;;8722:12;8680:54;;8329:425;8815:13;;-1:-1:-1;;;;;8807:21:0;;;8815:13;;8807:21;:72;;;;-1:-1:-1;8863:15:0;;-1:-1:-1;;;;;8849:30:0;;;8863:15;;8849:30;;8807:72;:116;;;;-1:-1:-1;;;;;;8901:22:0;;;;;;:18;:22;;;;;;;;8900:23;8807:116;8785:559;;;8976:12;;8966:6;:22;;8958:60;;;;-1:-1:-1;;;8958:60:0;;11003:2:1;8958:60:0;;;10985:21:1;11042:2;11022:18;;;11015:30;-1:-1:-1;;;11061:18:1;;;11054:55;11126:18;;8958:60:0;10801:349:1;8958:60:0;9093:14;;9083:6;9067:13;9077:2;-1:-1:-1;;;;;6221:18:0;6194:7;6221:18;;;:9;:18;;;;;;;6128:119;9067:13;:22;;;;:::i;:::-;:40;;9037:140;;;;-1:-1:-1;;;9037:140:0;;11487:2:1;9037:140:0;;;11469:21:1;11526:2;11506:18;;;11499:30;11565:28;11545:18;;;11538:56;11611:18;;9037:140:0;11285:350:1;9037:140:0;9212:18;;9200:9;;:30;9196:103;;;12643:20;;12691:8;9255:24;;;;;;9317:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8785:559;9372:28;9396:3;9372:19;9383:7;;9372:6;:10;;:19;;;;:::i;:::-;:23;;:28::i;:::-;9425:13;;9360:40;;-1:-1:-1;;;;;;9419:19:0;;;9425:13;;9419:19;:44;;;;-1:-1:-1;;;;;;9442:21:0;;9458:4;9442:21;;9419:44;9415:205;;;9502:12;;9492:6;:22;;9484:60;;;;-1:-1:-1;;;9484:60:0;;11003:2:1;9484:60:0;;;10985:21:1;11042:2;11022:18;;;11015:30;-1:-1:-1;;;11061:18:1;;;11054:55;11126:18;;9484:60:0;10801:349:1;9484:60:0;9575:29;9600:3;9575:20;9586:8;;9575:6;:10;;:20;;;;:::i;:29::-;9563:41;;9415:205;9685:4;9636:28;6221:18;;;:9;:18;;;;;;9731:6;;-1:-1:-1;;;9731:6:0;;;;9730:7;:47;;;;-1:-1:-1;9764:13:0;;-1:-1:-1;;;;;9758:19:0;;;9764:13;;9758:19;9730:47;:79;;;;-1:-1:-1;9798:11:0;;-1:-1:-1;;;9798:11:0;;;;9730:79;:130;;;;;9842:18;;9830:9;;:30;9730:130;9708:294;;;9893:109;9932:51;9936:6;9944:38;9948:20;9970:11;;9944:3;:38::i;:::-;9932:3;:51::i;:::-;9893:16;:109::i;:::-;8071:1943;8051:1963;10030:13;;10026:172;;10105:4;10087:24;;;;:9;:24;;;;;;:39;;10116:9;10087:28;:39::i;:::-;10078:4;10060:24;;;;:9;:24;;;;;;;:66;;;;10146:40;;-1:-1:-1;;;;;10146:40:0;;;;;;;10176:9;1614:25:1;;1602:2;1587:18;;1468:177;10146:40:0;;;;;;;;10026:172;-1:-1:-1;;;;;10226:15:0;;;;;;:9;:15;;;;;;:27;;10246:6;10226:19;:27::i;:::-;-1:-1:-1;;;;;10208:15:0;;;;;;:9;:15;;;;;:45;10280:40;10298:21;:6;10309:9;10298:10;:21::i;:::-;-1:-1:-1;;;;;10280:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;10264:13:0;;;;;;;:9;:13;;;;;:56;;;;10336:41;;;10355:21;:6;10366:9;10355:10;:21::i;:::-;10336:41;;1614:25:1;;;1602:2;1587:18;10336:41:0;;;;;;;7691:2694;;7622:2763;;;:::o;1471:236::-;1591:7;1611:9;1627:1;1623;:5;:17;;1639:1;1623:17;;;1631:5;1635:1;1631;:5;:::i;:::-;1611:29;1698:1;-1:-1:-1;;;;;1471:236:0:o;10729:635::-;5237:6;:13;;-1:-1:-1;;;;5237:13:0;-1:-1:-1;;;5237:13:0;;;;;-1:-1:-1;;;10811:11:0;::::1;5237:13:::0;10811:11:::1;:30:::0;::::1;;;;10840:1;10826:11;:15;10811:30;10807:500;;;10882:16;::::0;;10896:1:::1;10882:16:::0;;;;;::::1;::::0;;10858:21:::1;::::0;10882:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10882:16:0::1;10858:40;;10931:4;10913;10918:1;10913:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10913:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10961:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10961:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10913:7;;10961:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10951:4;10956:1;10951:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10951:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;11030:15:::1;::::0;10998:62:::1;::::0;11015:4:::1;::::0;11030:15:::1;11048:11:::0;10998:8:::1;:62::i;:::-;11075:15;::::0;:220:::1;::::0;-1:-1:-1;;;11075:220:0;;-1:-1:-1;;;;;11075:15:0;;::::1;::::0;:66:::1;::::0;:220:::1;::::0;11160:11;;11075:15:::1;::::0;11210:4;;11241::::1;::::0;11265:15:::1;::::0;11075:220:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10843:464;10807:500;11319:37;11334:21;11319:14;:37::i;:::-;-1:-1:-1::0;5273:6:0;:14;;-1:-1:-1;;;;5273:14:0;;;10729:635::o;11612:94::-;11671:10;;:27;;:10;;;;-1:-1:-1;;;;;11671:10:0;;:27;;;;;;;;;;;;:10;:27;;;;;;;;;;;;;;;;;;;1715:246;1773:7;1797:1;1802;1797:6;1793:47;;-1:-1:-1;1827:1:0;1820:8;;1793:47;1850:9;1862:5;1866:1;1862;:5;:::i;:::-;1850:17;-1:-1:-1;1895:1:0;1886:5;1890:1;1850:17;1886:5;:::i;:::-;:10;1878:56;;;;-1:-1:-1;;;1878:56:0;;13586:2:1;1878:56:0;;;13568:21:1;13625:2;13605:18;;;13598:30;13664:34;13644:18;;;13637:62;-1:-1:-1;;;13715:18:1;;;13708:31;13756:19;;1878:56:0;13384:397:1;1878:56:0;1952:1;1715:246;-1:-1:-1;;;1715:246:0:o;1969:132::-;2027:7;2054:39;2058:1;2061;2054:39;;;;;;;;;;;;;;;;;:3;:39::i;10393:107::-;10450:7;10482:1;10478;:5;10477:15;;10491:1;10477:15;;;-1:-1:-1;10487:1:0;10393:107;-1:-1:-1;10393:107:0:o;1140:179::-;1198:7;;1230:5;1234:1;1230;:5;:::i;:::-;1218:17;;1259:1;1254;:6;;1246:46;;;;-1:-1:-1;;;1246:46:0;;13988:2:1;1246:46:0;;;13970:21:1;14027:2;14007:18;;;14000:30;14066:29;14046:18;;;14039:57;14113:18;;1246:46:0;13786:351:1;1327:136:0;1385:7;1412:43;1416:1;1419;1412:43;;;;;;;;;;;;;;;;;:3;:43::i;2109:223::-;2229:7;2264:12;2257:5;2249:28;;;;-1:-1:-1;;;2249:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2288:9:0;2300:5;2304:1;2300;:5;:::i;14:248:1:-;82:6;90;143:2;131:9;122:7;118:23;114:32;111:52;;;159:1;156;149:12;111:52;-1:-1:-1;;182:23:1;;;252:2;237:18;;;224:32;;-1:-1:-1;14:248:1:o;267:548::-;379:4;408:2;437;426:9;419:21;469:6;463:13;512:6;507:2;496:9;492:18;485:34;537:1;547:140;561:6;558:1;555:13;547:140;;;656:14;;;652:23;;646:30;622:17;;;641:2;618:26;611:66;576:10;;547:140;;;551:3;736:1;731:2;722:6;711:9;707:22;703:31;696:42;806:2;799;795:7;790:2;782:6;778:15;774:29;763:9;759:45;755:54;747:62;;;;267:548;;;;:::o;820:131::-;-1:-1:-1;;;;;895:31:1;;885:42;;875:70;;941:1;938;931:12;875:70;820:131;:::o;956:315::-;1024:6;1032;1085:2;1073:9;1064:7;1060:23;1056:32;1053:52;;;1101:1;1098;1091:12;1053:52;1140:9;1127:23;1159:31;1184:5;1159:31;:::i;:::-;1209:5;1261:2;1246:18;;;;1233:32;;-1:-1:-1;;;956:315:1:o;1650:456::-;1727:6;1735;1743;1796:2;1784:9;1775:7;1771:23;1767:32;1764:52;;;1812:1;1809;1802:12;1764:52;1851:9;1838:23;1870:31;1895:5;1870:31;:::i;:::-;1920:5;-1:-1:-1;1977:2:1;1962:18;;1949:32;1990:33;1949:32;1990:33;:::i;:::-;1650:456;;2042:7;;-1:-1:-1;;;2096:2:1;2081:18;;;;2068:32;;1650:456::o;2300:247::-;2359:6;2412:2;2400:9;2391:7;2387:23;2383:32;2380:52;;;2428:1;2425;2418:12;2380:52;2467:9;2454:23;2486:31;2511:5;2486:31;:::i;2760:388::-;2828:6;2836;2889:2;2877:9;2868:7;2864:23;2860:32;2857:52;;;2905:1;2902;2895:12;2857:52;2944:9;2931:23;2963:31;2988:5;2963:31;:::i;:::-;3013:5;-1:-1:-1;3070:2:1;3055:18;;3042:32;3083:33;3042:32;3083:33;:::i;:::-;3135:7;3125:17;;;2760:388;;;;;:::o;3153:356::-;3355:2;3337:21;;;3374:18;;;3367:30;3433:34;3428:2;3413:18;;3406:62;3500:2;3485:18;;3153:356::o;3864:127::-;3925:10;3920:3;3916:20;3913:1;3906:31;3956:4;3953:1;3946:15;3980:4;3977:1;3970:15;3996:422;4085:1;4128:5;4085:1;4142:270;4163:7;4153:8;4150:21;4142:270;;;4222:4;4218:1;4214:6;4210:17;4204:4;4201:27;4198:53;;;4231:18;;:::i;:::-;4281:7;4271:8;4267:22;4264:55;;;4301:16;;;;4264:55;4380:22;;;;4340:15;;;;4142:270;;;4146:3;3996:422;;;;;:::o;4423:806::-;4472:5;4502:8;4492:80;;-1:-1:-1;4543:1:1;4557:5;;4492:80;4591:4;4581:76;;-1:-1:-1;4628:1:1;4642:5;;4581:76;4673:4;4691:1;4686:59;;;;4759:1;4754:130;;;;4666:218;;4686:59;4716:1;4707:10;;4730:5;;;4754:130;4791:3;4781:8;4778:17;4775:43;;;4798:18;;:::i;:::-;-1:-1:-1;;4854:1:1;4840:16;;4869:5;;4666:218;;4968:2;4958:8;4955:16;4949:3;4943:4;4940:13;4936:36;4930:2;4920:8;4917:16;4912:2;4906:4;4903:12;4899:35;4896:77;4893:159;;;-1:-1:-1;5005:19:1;;;5037:5;;4893:159;5084:34;5109:8;5103:4;5084:34;:::i;:::-;5154:6;5150:1;5146:6;5142:19;5133:7;5130:32;5127:58;;;5165:18;;:::i;:::-;5203:20;;4423:806;-1:-1:-1;;;4423:806:1:o;5234:140::-;5292:5;5321:47;5362:4;5352:8;5348:19;5342:4;5321:47;:::i;5379:168::-;5452:9;;;5483;;5500:15;;;5494:22;;5480:37;5470:71;;5521:18;;:::i;5904:251::-;5974:6;6027:2;6015:9;6006:7;6002:23;5998:32;5995:52;;;6043:1;6040;6033:12;5995:52;6075:9;6069:16;6094:31;6119:5;6094:31;:::i;7081:306::-;7169:6;7177;7185;7238:2;7226:9;7217:7;7213:23;7209:32;7206:52;;;7254:1;7251;7244:12;7206:52;7283:9;7277:16;7267:26;;7333:2;7322:9;7318:18;7312:25;7302:35;;7377:2;7366:9;7362:18;7356:25;7346:35;;7081:306;;;;;:::o;7671:277::-;7738:6;7791:2;7779:9;7770:7;7766:23;7762:32;7759:52;;;7807:1;7804;7797:12;7759:52;7839:9;7833:16;7892:5;7885:13;7878:21;7871:5;7868:32;7858:60;;7914:1;7911;7904:12;11155:125;11220:9;;;11241:10;;;11238:36;;;11254:18;;:::i;11640:135::-;11679:3;11700:17;;;11697:43;;11720:18;;:::i;:::-;-1:-1:-1;11767:1:1;11756:13;;11640:135::o;11780:128::-;11847:9;;;11868:11;;;11865:37;;;11882:18;;:::i;12045:127::-;12106:10;12101:3;12097:20;12094:1;12087:31;12137:4;12134:1;12127:15;12161:4;12158:1;12151:15;12177:980;12439:4;12487:3;12476:9;12472:19;12518:6;12507:9;12500:25;12544:2;12582:6;12577:2;12566:9;12562:18;12555:34;12625:3;12620:2;12609:9;12605:18;12598:31;12649:6;12684;12678:13;12715:6;12707;12700:22;12753:3;12742:9;12738:19;12731:26;;12792:2;12784:6;12780:15;12766:29;;12813:1;12823:195;12837:6;12834:1;12831:13;12823:195;;;12902:13;;-1:-1:-1;;;;;12898:39:1;12886:52;;12993:15;;;;12958:12;;;;12934:1;12852:9;12823:195;;;-1:-1:-1;;;;;;;13074:32:1;;;;13069:2;13054:18;;13047:60;-1:-1:-1;;;13138:3:1;13123:19;13116:35;13035:3;12177:980;-1:-1:-1;;;12177:980:1:o;13162:217::-;13202:1;13228;13218:132;;13272:10;13267:3;13263:20;13260:1;13253:31;13307:4;13304:1;13297:15;13335:4;13332:1;13325:15;13218:132;-1:-1:-1;13364:9:1;;13162:217::o

Swarm Source

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