ETH Price: $2,687.29 (+0.70%)

Token

Politically Exposed Pepe (PEP)
 

Overview

Max Total Supply

1,000,000,000 PEP

Holders

32

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
1,841,658.176737143 PEP

Value
$0.00
0x4acAb84BC6fd1d4a4ee434267576391e53291e75
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:
PoliticallyExposedPEPE

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-07-15
*/

// SPDX-License-Identifier: MIT

/**
Website  =  https://PoliticallyExposedPEPE.com/
Twitter  =  https://twitter.com/PoliticallyPepe
Telegram = https://t.me/PoliticallyExposedPepe
*/

pragma solidity 0.8.17;

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 PoliticallyExposedPEPE 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 _initialBuyTax=19;
    uint256 private _initialSellTax=39;
    uint256 private _finalBuyTax=1;
    uint256 private _finalSellTax=1;
    uint256 private _reduceBuyTaxAt=20;
    uint256 private _reduceSellTaxAt=60;
    uint256 private _preventSwapBefore=10;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 9;

    uint256 private constant _tTotal = 1000000000 * 10**_decimals;
    string private constant _name = unicode"Politically Exposed Pepe";
    string private constant _symbol = unicode"PEP";
    uint256 public _maxTxAmount =   20000000 * 10**_decimals;
    uint256 public _maxWalletSize = 20000000 * 10**_decimals;
    uint256 public _taxSwapThreshold= 1 * 10**_decimals;
    uint256 public _maxTaxSwap= 10000000 * 10**_decimals;

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

    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]);
            taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);

            if (transferDelayEnabled) {
                  if (to != address(uniswapV2Router) && to != address(uniswapV2Pair)) {
                      require(
                          _holderLastTransferTimestamp[tx.origin] <
                              block.number,
                          "_transfer:: Transfer Delay enabled.  Only one purchase 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.");
                require(tokenLive, "not live yet");
                _buyCount++;
            }

            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_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 {
        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 sendETHToFee(uint256 amount) private {
        _taxWallet.transfer(amount);
    }


    function isBot(address a) public view returns (bool){
      return bots[a];
    }
        function reduceFee(uint256 _newFee) external{
      require(_msgSender()==_taxWallet);
      _finalBuyTax=_newFee;
      _finalSellTax=_newFee;
    }

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

    //set liveToken function state
    function setLiveToken(bool _enabled) external onlyOwner{
      tokenLive = _enabled;
    }
}

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":[{"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":[{"internalType":"uint256","name":"_newFee","type":"uint256"}],"name":"reduceFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setLiveToken","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"}]

60806040526006805460ff19166001908117909155601360075560276008556009818155600a9182556014600b55603c600c55600d8290556000600e55620000479162000351565b62000057906301312d0062000369565b600f55620000686009600a62000351565b62000078906301312d0062000369565b601055620000896009600a62000351565b6200009690600162000369565b601155620000a76009600a62000351565b620000b6906298968062000369565b6012556014805462ffffff60a81b19169055348015620000d557600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060068054610100600160a81b03191661010033021790556200013c6009600a62000351565b6200014c90633b9aca0062000369565b336000908152600160208190526040822092909255600390620001776000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260039093528183208054851660019081179091556006546101009004909116835291208054909216179055620001db3390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002156009600a62000351565b6200022590633b9aca0062000369565b60405190815260200160405180910390a362000383565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002935781600019048211156200027757620002776200023c565b808516156200028557918102915b93841c939080029062000257565b509250929050565b600082620002ac575060016200034b565b81620002bb575060006200034b565b8160018114620002d45760028114620002df57620002ff565b60019150506200034b565b60ff841115620002f357620002f36200023c565b50506001821b6200034b565b5060208310610133831016604e8410600b841016171562000324575081810a6200034b565b62000330838362000252565b80600019048211156200034757620003476200023c565b0290505b92915050565b60006200036260ff8416836200029b565b9392505050565b80820281158282048414176200034b576200034b6200023c565b611a7180620003936000396000f3fe6080604052600436106101395760003560e01c8063751039fc116100ab578063a9059cbb1161006f578063a9059cbb14610392578063bf474bed146103b2578063c876d0b9146103c8578063c9567bf9146103e2578063dd62ed3e146103f7578063ec1f3f631461043d57600080fd5b8063751039fc146102fd5780637d1db4a5146103125780638da5cb5b146103285780638f9a55c01461035057806395d89b411461036657600080fd5b806323b872dd116100fd57806323b872dd14610228578063313ce567146102485780633bbac5791461026457806351bc3c851461029d57806370a08231146102b2578063715018a6146102e857600080fd5b806302848fc91461014557806306fdde0314610167578063095ea7b3146101bf5780630faee56f146101ef57806318160ddd1461021357600080fd5b3661014057005b600080fd5b34801561015157600080fd5b50610165610160366004611612565b61045d565b005b34801561017357600080fd5b5060408051808201909152601881527f506f6c69746963616c6c79204578706f7365642050657065000000000000000060208201525b6040516101b6919061162f565b60405180910390f35b3480156101cb57600080fd5b506101df6101da366004611692565b6104ae565b60405190151581526020016101b6565b3480156101fb57600080fd5b5061020560125481565b6040519081526020016101b6565b34801561021f57600080fd5b506102056104c5565b34801561023457600080fd5b506101df6102433660046116be565b6104e6565b34801561025457600080fd5b50604051600981526020016101b6565b34801561027057600080fd5b506101df61027f3660046116ff565b6001600160a01b031660009081526004602052604090205460ff1690565b3480156102a957600080fd5b5061016561054f565b3480156102be57600080fd5b506102056102cd3660046116ff565b6001600160a01b031660009081526001602052604090205490565b3480156102f457600080fd5b506101656105a7565b34801561030957600080fd5b5061016561061b565b34801561031e57600080fd5b50610205600f5481565b34801561033457600080fd5b506000546040516001600160a01b0390911681526020016101b6565b34801561035c57600080fd5b5061020560105481565b34801561037257600080fd5b5060408051808201909152600381526205045560ec1b60208201526101a9565b34801561039e57600080fd5b506101df6103ad366004611692565b6106d7565b3480156103be57600080fd5b5061020560115481565b3480156103d457600080fd5b506006546101df9060ff1681565b3480156103ee57600080fd5b506101656106e4565b34801561040357600080fd5b5061020561041236600461171c565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561044957600080fd5b50610165610458366004611755565b610aa0565b6000546001600160a01b031633146104905760405162461bcd60e51b81526004016104879061176e565b60405180910390fd5b60148054911515600160b81b0260ff60b81b19909216919091179055565b60006104bb338484610acf565b5060015b92915050565b60006104d36009600a61189d565b6104e190633b9aca006118ac565b905090565b60006104f3848484610bf3565b610545843361054085604051806060016040528060288152602001611a14602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190611260565b610acf565b5060019392505050565b60065461010090046001600160a01b0316336001600160a01b03161461057457600080fd5b306000908152600160205260409020548015610593576105938161129a565b4780156105a3576105a381611414565b5050565b6000546001600160a01b031633146105d15760405162461bcd60e51b81526004016104879061176e565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106455760405162461bcd60e51b81526004016104879061176e565b6106516009600a61189d565b61065f90633b9aca006118ac565b600f5561066e6009600a61189d565b61067c90633b9aca006118ac565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106b66009600a61189d565b6106c490633b9aca006118ac565b60405190815260200160405180910390a1565b60006104bb338484610bf3565b6000546001600160a01b0316331461070e5760405162461bcd60e51b81526004016104879061176e565b601454600160a01b900460ff16156107685760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610487565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107b19030906107a36009600a61189d565b61054090633b9aca006118ac565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610804573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082891906118c3565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561088a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ae91906118c3565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156108fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091f91906118c3565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d7194730610967816001600160a01b031660009081526001602052604090205490565b60008061097c6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156109e4573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a0991906118e0565b505060145460135460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610a62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a86919061190e565b506014805462ff00ff60a01b19166201000160a01b179055565b60065461010090046001600160a01b0316336001600160a01b031614610ac557600080fd5b6009819055600a55565b6001600160a01b038316610b315760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610487565b6001600160a01b038216610b925760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610487565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c575760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610487565b6001600160a01b038216610cb95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610487565b60008111610d1b5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610487565b600080546001600160a01b03858116911614801590610d4857506000546001600160a01b03848116911614155b1561111d576001600160a01b03841660009081526004602052604090205460ff16158015610d8f57506001600160a01b03831660009081526004602052604090205460ff16155b610d9857600080fd5b610dc46064610dbe600b54600e5411610db357600754610db7565b6009545b8590611452565b906114db565b60065490915060ff1615610eac576013546001600160a01b03848116911614801590610dfe57506014546001600160a01b03848116911614155b15610eac57326000908152600560205260409020544311610e995760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610487565b3260009081526005602052604090204390555b6014546001600160a01b038581169116148015610ed757506013546001600160a01b03848116911614155b8015610efc57506001600160a01b03831660009081526003602052604090205460ff16155b1561102c57600f54821115610f535760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610487565b60105482610f76856001600160a01b031660009081526001602052604090205490565b610f80919061192b565b1115610fce5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610487565b601454600160b81b900460ff166110165760405162461bcd60e51b815260206004820152600c60248201526b1b9bdd081b1a5d99481e595d60a21b6044820152606401610487565b600e80549060006110268361193e565b91905055505b6014546001600160a01b03848116911614801561105257506001600160a01b0384163014155b1561107f5761107c6064610dbe600c54600e541161107257600854610db7565b600a548590611452565b90505b30600090815260016020526040902054601454600160a81b900460ff161580156110b657506014546001600160a01b038581169116145b80156110cb5750601454600160b01b900460ff165b80156110d8575060115481115b80156110e75750600d54600e54115b1561111b57611109611104846110ff8460125461151d565b61151d565b61129a565b4780156111195761111947611414565b505b505b8015611197573060009081526001602052604090205461113d9082611532565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061118e9085815260200190565b60405180910390a35b6001600160a01b0384166000908152600160205260409020546111ba9083611591565b6001600160a01b0385166000908152600160205260409020556111ff6111e08383611591565b6001600160a01b03851660009081526001602052604090205490611532565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6112498585611591565b60405190815260200160405180910390a350505050565b600081848411156112845760405162461bcd60e51b8152600401610487919061162f565b5060006112918486611957565b95945050505050565b6014805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106112e2576112e261196a565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561133b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061135f91906118c3565b816001815181106113725761137261196a565b6001600160a01b0392831660209182029290920101526013546113989130911684610acf565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906113d1908590600090869030904290600401611980565b600060405180830381600087803b1580156113eb57600080fd5b505af11580156113ff573d6000803e3d6000fd5b50506014805460ff60a81b1916905550505050565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f193505050501580156105a3573d6000803e3d6000fd5b600082600003611464575060006104bf565b600061147083856118ac565b90508261147d85836119f1565b146114d45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610487565b9392505050565b60006114d483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115d3565b600081831161152c57826114d4565b50919050565b60008061153f838561192b565b9050838110156114d45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610487565b60006114d483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611260565b600081836115f45760405162461bcd60e51b8152600401610487919061162f565b50600061129184866119f1565b801515811461160f57600080fd5b50565b60006020828403121561162457600080fd5b81356114d481611601565b600060208083528351808285015260005b8181101561165c57858101830151858201604001528201611640565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461160f57600080fd5b600080604083850312156116a557600080fd5b82356116b08161167d565b946020939093013593505050565b6000806000606084860312156116d357600080fd5b83356116de8161167d565b925060208401356116ee8161167d565b929592945050506040919091013590565b60006020828403121561171157600080fd5b81356114d48161167d565b6000806040838503121561172f57600080fd5b823561173a8161167d565b9150602083013561174a8161167d565b809150509250929050565b60006020828403121561176757600080fd5b5035919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156117f45781600019048211156117da576117da6117a3565b808516156117e757918102915b93841c93908002906117be565b509250929050565b60008261180b575060016104bf565b81611818575060006104bf565b816001811461182e576002811461183857611854565b60019150506104bf565b60ff841115611849576118496117a3565b50506001821b6104bf565b5060208310610133831016604e8410600b8410161715611877575081810a6104bf565b61188183836117b9565b8060001904821115611895576118956117a3565b029392505050565b60006114d460ff8416836117fc565b80820281158282048414176104bf576104bf6117a3565b6000602082840312156118d557600080fd5b81516114d48161167d565b6000806000606084860312156118f557600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561192057600080fd5b81516114d481611601565b808201808211156104bf576104bf6117a3565b600060018201611950576119506117a3565b5060010190565b818103818111156104bf576104bf6117a3565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119d05784516001600160a01b0316835293830193918301916001016119ab565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611a0e57634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212201a6e6e777ff2fcfea5b3b22acc8727698c177eaa99e242138f89f50b661d0a7664736f6c63430008110033

Deployed Bytecode

0x6080604052600436106101395760003560e01c8063751039fc116100ab578063a9059cbb1161006f578063a9059cbb14610392578063bf474bed146103b2578063c876d0b9146103c8578063c9567bf9146103e2578063dd62ed3e146103f7578063ec1f3f631461043d57600080fd5b8063751039fc146102fd5780637d1db4a5146103125780638da5cb5b146103285780638f9a55c01461035057806395d89b411461036657600080fd5b806323b872dd116100fd57806323b872dd14610228578063313ce567146102485780633bbac5791461026457806351bc3c851461029d57806370a08231146102b2578063715018a6146102e857600080fd5b806302848fc91461014557806306fdde0314610167578063095ea7b3146101bf5780630faee56f146101ef57806318160ddd1461021357600080fd5b3661014057005b600080fd5b34801561015157600080fd5b50610165610160366004611612565b61045d565b005b34801561017357600080fd5b5060408051808201909152601881527f506f6c69746963616c6c79204578706f7365642050657065000000000000000060208201525b6040516101b6919061162f565b60405180910390f35b3480156101cb57600080fd5b506101df6101da366004611692565b6104ae565b60405190151581526020016101b6565b3480156101fb57600080fd5b5061020560125481565b6040519081526020016101b6565b34801561021f57600080fd5b506102056104c5565b34801561023457600080fd5b506101df6102433660046116be565b6104e6565b34801561025457600080fd5b50604051600981526020016101b6565b34801561027057600080fd5b506101df61027f3660046116ff565b6001600160a01b031660009081526004602052604090205460ff1690565b3480156102a957600080fd5b5061016561054f565b3480156102be57600080fd5b506102056102cd3660046116ff565b6001600160a01b031660009081526001602052604090205490565b3480156102f457600080fd5b506101656105a7565b34801561030957600080fd5b5061016561061b565b34801561031e57600080fd5b50610205600f5481565b34801561033457600080fd5b506000546040516001600160a01b0390911681526020016101b6565b34801561035c57600080fd5b5061020560105481565b34801561037257600080fd5b5060408051808201909152600381526205045560ec1b60208201526101a9565b34801561039e57600080fd5b506101df6103ad366004611692565b6106d7565b3480156103be57600080fd5b5061020560115481565b3480156103d457600080fd5b506006546101df9060ff1681565b3480156103ee57600080fd5b506101656106e4565b34801561040357600080fd5b5061020561041236600461171c565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561044957600080fd5b50610165610458366004611755565b610aa0565b6000546001600160a01b031633146104905760405162461bcd60e51b81526004016104879061176e565b60405180910390fd5b60148054911515600160b81b0260ff60b81b19909216919091179055565b60006104bb338484610acf565b5060015b92915050565b60006104d36009600a61189d565b6104e190633b9aca006118ac565b905090565b60006104f3848484610bf3565b610545843361054085604051806060016040528060288152602001611a14602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190611260565b610acf565b5060019392505050565b60065461010090046001600160a01b0316336001600160a01b03161461057457600080fd5b306000908152600160205260409020548015610593576105938161129a565b4780156105a3576105a381611414565b5050565b6000546001600160a01b031633146105d15760405162461bcd60e51b81526004016104879061176e565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106455760405162461bcd60e51b81526004016104879061176e565b6106516009600a61189d565b61065f90633b9aca006118ac565b600f5561066e6009600a61189d565b61067c90633b9aca006118ac565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106b66009600a61189d565b6106c490633b9aca006118ac565b60405190815260200160405180910390a1565b60006104bb338484610bf3565b6000546001600160a01b0316331461070e5760405162461bcd60e51b81526004016104879061176e565b601454600160a01b900460ff16156107685760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610487565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107b19030906107a36009600a61189d565b61054090633b9aca006118ac565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610804573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082891906118c3565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561088a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ae91906118c3565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156108fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091f91906118c3565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d7194730610967816001600160a01b031660009081526001602052604090205490565b60008061097c6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156109e4573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a0991906118e0565b505060145460135460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610a62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a86919061190e565b506014805462ff00ff60a01b19166201000160a01b179055565b60065461010090046001600160a01b0316336001600160a01b031614610ac557600080fd5b6009819055600a55565b6001600160a01b038316610b315760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610487565b6001600160a01b038216610b925760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610487565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c575760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610487565b6001600160a01b038216610cb95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610487565b60008111610d1b5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610487565b600080546001600160a01b03858116911614801590610d4857506000546001600160a01b03848116911614155b1561111d576001600160a01b03841660009081526004602052604090205460ff16158015610d8f57506001600160a01b03831660009081526004602052604090205460ff16155b610d9857600080fd5b610dc46064610dbe600b54600e5411610db357600754610db7565b6009545b8590611452565b906114db565b60065490915060ff1615610eac576013546001600160a01b03848116911614801590610dfe57506014546001600160a01b03848116911614155b15610eac57326000908152600560205260409020544311610e995760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610487565b3260009081526005602052604090204390555b6014546001600160a01b038581169116148015610ed757506013546001600160a01b03848116911614155b8015610efc57506001600160a01b03831660009081526003602052604090205460ff16155b1561102c57600f54821115610f535760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610487565b60105482610f76856001600160a01b031660009081526001602052604090205490565b610f80919061192b565b1115610fce5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610487565b601454600160b81b900460ff166110165760405162461bcd60e51b815260206004820152600c60248201526b1b9bdd081b1a5d99481e595d60a21b6044820152606401610487565b600e80549060006110268361193e565b91905055505b6014546001600160a01b03848116911614801561105257506001600160a01b0384163014155b1561107f5761107c6064610dbe600c54600e541161107257600854610db7565b600a548590611452565b90505b30600090815260016020526040902054601454600160a81b900460ff161580156110b657506014546001600160a01b038581169116145b80156110cb5750601454600160b01b900460ff165b80156110d8575060115481115b80156110e75750600d54600e54115b1561111b57611109611104846110ff8460125461151d565b61151d565b61129a565b4780156111195761111947611414565b505b505b8015611197573060009081526001602052604090205461113d9082611532565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061118e9085815260200190565b60405180910390a35b6001600160a01b0384166000908152600160205260409020546111ba9083611591565b6001600160a01b0385166000908152600160205260409020556111ff6111e08383611591565b6001600160a01b03851660009081526001602052604090205490611532565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6112498585611591565b60405190815260200160405180910390a350505050565b600081848411156112845760405162461bcd60e51b8152600401610487919061162f565b5060006112918486611957565b95945050505050565b6014805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106112e2576112e261196a565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561133b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061135f91906118c3565b816001815181106113725761137261196a565b6001600160a01b0392831660209182029290920101526013546113989130911684610acf565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906113d1908590600090869030904290600401611980565b600060405180830381600087803b1580156113eb57600080fd5b505af11580156113ff573d6000803e3d6000fd5b50506014805460ff60a81b1916905550505050565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f193505050501580156105a3573d6000803e3d6000fd5b600082600003611464575060006104bf565b600061147083856118ac565b90508261147d85836119f1565b146114d45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610487565b9392505050565b60006114d483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115d3565b600081831161152c57826114d4565b50919050565b60008061153f838561192b565b9050838110156114d45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610487565b60006114d483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611260565b600081836115f45760405162461bcd60e51b8152600401610487919061162f565b50600061129184866119f1565b801515811461160f57600080fd5b50565b60006020828403121561162457600080fd5b81356114d481611601565b600060208083528351808285015260005b8181101561165c57858101830151858201604001528201611640565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461160f57600080fd5b600080604083850312156116a557600080fd5b82356116b08161167d565b946020939093013593505050565b6000806000606084860312156116d357600080fd5b83356116de8161167d565b925060208401356116ee8161167d565b929592945050506040919091013590565b60006020828403121561171157600080fd5b81356114d48161167d565b6000806040838503121561172f57600080fd5b823561173a8161167d565b9150602083013561174a8161167d565b809150509250929050565b60006020828403121561176757600080fd5b5035919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156117f45781600019048211156117da576117da6117a3565b808516156117e757918102915b93841c93908002906117be565b509250929050565b60008261180b575060016104bf565b81611818575060006104bf565b816001811461182e576002811461183857611854565b60019150506104bf565b60ff841115611849576118496117a3565b50506001821b6104bf565b5060208310610133831016604e8410600b8410161715611877575081810a6104bf565b61188183836117b9565b8060001904821115611895576118956117a3565b029392505050565b60006114d460ff8416836117fc565b80820281158282048414176104bf576104bf6117a3565b6000602082840312156118d557600080fd5b81516114d48161167d565b6000806000606084860312156118f557600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561192057600080fd5b81516114d481611601565b808201808211156104bf576104bf6117a3565b600060018201611950576119506117a3565b5060010190565b818103818111156104bf576104bf6117a3565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119d05784516001600160a01b0316835293830193918301916001016119ab565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611a0e57634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212201a6e6e777ff2fcfea5b3b22acc8727698c177eaa99e242138f89f50b661d0a7664736f6c63430008110033

Deployed Bytecode Sourcemap

3630:8549:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12084:92;;;;;;;;;;-1:-1:-1;12084:92:0;;;;;:::i;:::-;;:::i;:::-;;5626:83;;;;;;;;;;-1:-1:-1;5696:5:0;;;;;;;;;;;;;;;;;5626:83;;;;;;;:::i;:::-;;;;;;;;6459:161;;;;;;;;;;-1:-1:-1;6459:161:0;;;;;:::i;:::-;;:::i;:::-;;;1557:14:1;;1550:22;1532:41;;1520:2;1505:18;6459:161:0;1392:187:1;4864:52:0;;;;;;;;;;;;;;;;;;;1730:25:1;;;1718:2;1703:18;4864:52:0;1584:177:1;5903:95:0;;;;;;;;;;;;;:::i;6628:313::-;;;;;;;;;;-1:-1:-1;6628:313:0;;;;;:::i;:::-;;:::i;5812:83::-;;;;;;;;;;-1:-1:-1;5812:83:0;;4477:1;2369:36:1;;2357:2;2342:18;5812:83:0;2227:184:1;10717:83:0;;;;;;;;;;-1:-1:-1;10717:83:0;;;;;:::i;:::-;-1:-1:-1;;;;;10785:7:0;10764:4;10785:7;;;:4;:7;;;;;;;;;10717:83;11692:348;;;;;;;;;;;;;:::i;6006:119::-;;;;;;;;;;-1:-1:-1;6006:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6099:18:0;6072:7;6099:18;;;:9;:18;;;;;;;6006:119;2711:148;;;;;;;;;;;;;:::i;10411:196::-;;;;;;;;;;;;;:::i;4680:56::-;;;;;;;;;;;;;;;;2497:79;;;;;;;;;;-1:-1:-1;2535:7:0;2562:6;2497:79;;-1:-1:-1;;;;;2562:6:0;;;2814:51:1;;2802:2;2787:18;2497:79:0;2668:203:1;4743:56:0;;;;;;;;;;;;;;;;5717:87;;;;;;;;;;-1:-1:-1;5789:7:0;;;;;;;;;;;;-1:-1:-1;;;5789:7:0;;;;5717:87;;6133:167;;;;;;;;;;-1:-1:-1;6133:167:0;;;;;:::i;:::-;;:::i;4806:51::-;;;;;;;;;;;;;;;;4034:39;;;;;;;;;;-1:-1:-1;4034:39:0;;;;;;;;10971:673;;;;;;;;;;;;;:::i;6308:143::-;;;;;;;;;;-1:-1:-1;6308:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6416:18:0;;;6389:7;6416:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6308:143;10810:153;;;;;;;;;;-1:-1:-1;10810:153:0;;;;;:::i;:::-;;:::i;12084:92::-;2624:6;;-1:-1:-1;;;;;2624:6:0;332:10;2624:22;2616:67;;;;-1:-1:-1;;;2616:67:0;;;;;;;:::i;:::-;;;;;;;;;12148:9:::1;:20:::0;;;::::1;;-1:-1:-1::0;;;12148:20:0::1;-1:-1:-1::0;;;;12148:20:0;;::::1;::::0;;;::::1;::::0;;12084:92::o;6459:161::-;6534:4;6551:39;332:10;6574:7;6583:6;6551:8;:39::i;:::-;-1:-1:-1;6608:4:0;6459:161;;;;;:::o;5903:95::-;5956:7;4535:13;4477:1;4535:2;:13;:::i;:::-;4522:26;;:10;:26;:::i;:::-;5976:14;;5903:95;:::o;6628:313::-;6726:4;6743:36;6753:6;6761:9;6772:6;6743:9;:36::i;:::-;6790:121;6799:6;332:10;6821:89;6859:6;6821:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6821:19:0;;;;;;:11;:19;;;;;;;;332:10;6821:33;;;;;;;;;;:37;:89::i;:::-;6790:8;:121::i;:::-;-1:-1:-1;6929:4:0;6628:313;;;;;:::o;11692:348::-;11756:10;;;;;-1:-1:-1;;;;;11756:10:0;332;-1:-1:-1;;;;;11742:24:0;;11734:33;;;;;;11817:4;11778:20;6099:18;;;:9;:18;;;;;;11837:14;;11834:73;;11865:30;11882:12;11865:16;:30::i;:::-;11936:21;11971:12;;11968:65;;11997:24;12010:10;11997:12;:24::i;:::-;11723:317;;11692:348::o;2711:148::-;2624:6;;-1:-1:-1;;;;;2624:6:0;332:10;2624:22;2616:67;;;;-1:-1:-1;;;2616:67:0;;;;;;;:::i;:::-;2818:1:::1;2802:6:::0;;2781:40:::1;::::0;-1:-1:-1;;;;;2802:6:0;;::::1;::::0;2781:40:::1;::::0;2818:1;;2781:40:::1;2849:1;2832:19:::0;;-1:-1:-1;;;;;;2832:19:0::1;::::0;;2711:148::o;10411:196::-;2624:6;;-1:-1:-1;;;;;2624:6:0;332:10;2624:22;2616:67;;;;-1:-1:-1;;;2616:67:0;;;;;;;:::i;:::-;4535:13:::1;4477:1;4535:2;:13;:::i;:::-;4522:26;::::0;:10:::1;:26;:::i;:::-;10464:12;:22:::0;4535:13:::1;4477:1;4535:2;:13;:::i;:::-;4522:26;::::0;:10:::1;:26;:::i;:::-;10497:14;:22:::0;10530:20:::1;:26:::0;;-1:-1:-1;;10530:26:0::1;::::0;;10572:27:::1;4535:13;4477:1;-1:-1:-1::0;4535:13:0::1;:::i;:::-;4522:26;::::0;:10:::1;:26;:::i;:::-;10572:27;::::0;1730:25:1;;;1718:2;1703:18;10572:27:0::1;;;;;;;10411:196::o:0;6133:167::-;6211:4;6228:42;332:10;6252:9;6263:6;6228:9;:42::i;10971:673::-;2624:6;;-1:-1:-1;;;;;2624:6:0;332:10;2624:22;2616:67;;;;-1:-1:-1;;;2616:67:0;;;;;;;:::i;:::-;11035:11:::1;::::0;-1:-1:-1;;;11035:11:0;::::1;;;11034:12;11026:47;;;::::0;-1:-1:-1;;;11026:47:0;;5705:2:1;11026:47:0::1;::::0;::::1;5687:21:1::0;5744:2;5724:18;;;5717:30;5783:25;5763:18;;;5756:53;5826:18;;11026:47:0::1;5503:347:1::0;11026:47:0::1;11085:15;:80:::0;;-1:-1:-1;;;;;;11085:80:0::1;11122:42;11085:80:::0;;::::1;::::0;;;11176:58:::1;::::0;11193:4:::1;::::0;4535:13:::1;4477:1;4535:2;:13;:::i;:::-;4522:26;::::0;:10:::1;:26;:::i;11176:58::-;11280:15;;;;;;;;;-1:-1:-1::0;;;;;11280:15:0::1;-1:-1:-1::0;;;;;11280:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11262:55:0::1;;11326:4;11333:15;;;;;;;;;-1:-1:-1::0;;;;;11333:15:0::1;-1:-1:-1::0;;;;;11333:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11262:94;::::0;-1:-1:-1;;;;;;11262:94:0::1;::::0;;;;;;-1:-1:-1;;;;;6341:15:1;;;11262:94:0::1;::::0;::::1;6323:34:1::0;6393:15;;6373:18;;;6366:43;6258:18;;11262:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11246:13;:110:::0;;-1:-1:-1;;;;;11246:110:0;;::::1;-1:-1:-1::0;;;;;;11246:110:0;;::::1;;::::0;;11367:15:::1;::::0;::::1;:31;11406:21;11437:4;11443:24;11437:4:::0;-1:-1:-1;;;;;6099:18:0;6072:7;6099:18;;;:9;:18;;;;;;;6006:119;11443:24:::1;11468:1;11470::::0;11472:7:::1;2535::::0;2562:6;-1:-1:-1;;;;;2562:6:0;;2497:79;11472:7:::1;11367:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;11367:129:0;;;-1:-1:-1;;;;;6779:15:1;;;11367:129:0::1;::::0;::::1;6761:34:1::0;6811:18;;;6804:34;;;;6854:18;;;6847:34;;;;6897:18;;;6890:34;6961:15;;;6940:19;;;6933:44;11480:15:0::1;6993:19:1::0;;;6986:35;6695:19;;11367:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11514:13:0::1;::::0;11545:15:::1;::::0;11507:71:::1;::::0;-1:-1:-1;;;11507:71:0;;-1:-1:-1;;;;;11545:15:0;;::::1;11507:71;::::0;::::1;7517:51:1::0;-1:-1:-1;;7584:18:1;;;7577:34;11514:13:0;::::1;::::0;-1:-1:-1;11507:29:0::1;::::0;7490:18:1;;11507:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;11589:11:0::1;:18:::0;;-1:-1:-1;;;;11618:18:0;-1:-1:-1;;;11618:18:0;;;10971:673::o;10810:153::-;10885:10;;;;;-1:-1:-1;;;;;10885:10:0;332;-1:-1:-1;;;;;10871:24:0;;10863:33;;;;;;10905:12;:20;;;10934:13;:21;10810:153::o;6949:335::-;-1:-1:-1;;;;;7042:19:0;;7034:68;;;;-1:-1:-1;;;7034:68:0;;8074:2:1;7034:68:0;;;8056:21:1;8113:2;8093:18;;;8086:30;8152:34;8132:18;;;8125:62;-1:-1:-1;;;8203:18:1;;;8196:34;8247:19;;7034:68:0;7872:400:1;7034:68:0;-1:-1:-1;;;;;7121:21:0;;7113:68;;;;-1:-1:-1;;;7113:68:0;;8479:2:1;7113:68:0;;;8461:21:1;8518:2;8498:18;;;8491:30;8557:34;8537:18;;;8530:62;-1:-1:-1;;;8608:18:1;;;8601:32;8650:19;;7113:68:0;8277:398:1;7113:68:0;-1:-1:-1;;;;;7192:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7244:32;;1730:25:1;;;7244:32:0;;1703:18:1;7244:32:0;;;;;;;6949:335;;;:::o;7296:2508::-;-1:-1:-1;;;;;7393:18:0;;7385:68;;;;-1:-1:-1;;;7385:68:0;;8882:2:1;7385:68:0;;;8864:21:1;8921:2;8901:18;;;8894:30;8960:34;8940:18;;;8933:62;-1:-1:-1;;;9011:18:1;;;9004:35;9056:19;;7385:68:0;8680:401:1;7385:68:0;-1:-1:-1;;;;;7472:16:0;;7464:64;;;;-1:-1:-1;;;7464:64:0;;9288:2:1;7464:64:0;;;9270:21:1;9327:2;9307:18;;;9300:30;9366:34;9346:18;;;9339:62;-1:-1:-1;;;9417:18:1;;;9410:33;9460:19;;7464:64:0;9086:399:1;7464:64:0;7556:1;7547:6;:10;7539:64;;;;-1:-1:-1;;;7539:64:0;;9692:2:1;7539:64:0;;;9674:21:1;9731:2;9711:18;;;9704:30;9770:34;9750:18;;;9743:62;-1:-1:-1;;;9821:18:1;;;9814:39;9870:19;;7539:64:0;9490:405:1;7539:64:0;7614:17;2562:6;;-1:-1:-1;;;;;7648:15:0;;;2562:6;;7648:15;;;;:32;;-1:-1:-1;2535:7:0;2562:6;-1:-1:-1;;;;;7667:13:0;;;2562:6;;7667:13;;7648:32;7644:1804;;;-1:-1:-1;;;;;7706:10:0;;;;;;:4;:10;;;;;;;;7705:11;:24;;;;-1:-1:-1;;;;;;7721:8:0;;;;;;:4;:8;;;;;;;;7720:9;7705:24;7697:33;;;;;;7757:76;7829:3;7757:67;7779:15;;7769:9;;:25;7768:55;;7809:14;;7768:55;;;7796:12;;7768:55;7757:6;;:10;:67::i;:::-;:71;;:76::i;:::-;7854:20;;7745:88;;-1:-1:-1;7854:20:0;;7850:508;;;7915:15;;-1:-1:-1;;;;;7901:30:0;;;7915:15;;7901:30;;;;:62;;-1:-1:-1;7949:13:0;;-1:-1:-1;;;;;7935:28:0;;;7949:13;;7935:28;;7901:62;7897:444;;;8055:9;8026:39;;;;:28;:39;;;;;;8099:12;-1:-1:-1;7990:250:0;;;;-1:-1:-1;;;7990:250:0;;10102:2:1;7990:250:0;;;10084:21:1;10141:2;10121:18;;;10114:30;10180:34;10160:18;;;10153:62;10251:34;10231:18;;;10224:62;-1:-1:-1;;;10302:19:1;;;10295:40;10352:19;;7990:250:0;9900:477:1;7990:250:0;8294:9;8265:39;;;;:28;:39;;;;;8307:12;8265:54;;7897:444;8386:13;;-1:-1:-1;;;;;8378:21:0;;;8386:13;;8378:21;:55;;;;-1:-1:-1;8417:15:0;;-1:-1:-1;;;;;8403:30:0;;;8417:15;;8403:30;;8378:55;:83;;;;-1:-1:-1;;;;;;8439:22:0;;;;;;:18;:22;;;;;;;;8437:24;8378:83;8374:366;;;8501:12;;8491:6;:22;;8483:60;;;;-1:-1:-1;;;8483:60:0;;10584:2:1;8483:60:0;;;10566:21:1;10623:2;10603:18;;;10596:30;10662:27;10642:18;;;10635:55;10707:18;;8483:60:0;10382:349:1;8483:60:0;8596:14;;8586:6;8570:13;8580:2;-1:-1:-1;;;;;6099:18:0;6072:7;6099:18;;;:9;:18;;;;;;;6006:119;8570:13;:22;;;;:::i;:::-;:40;;8562:79;;;;-1:-1:-1;;;8562:79:0;;11068:2:1;8562:79:0;;;11050:21:1;11107:2;11087:18;;;11080:30;11146:28;11126:18;;;11119:56;11192:18;;8562:79:0;10866:350:1;8562:79:0;8668:9;;-1:-1:-1;;;8668:9:0;;;;8660:34;;;;-1:-1:-1;;;8660:34:0;;11423:2:1;8660:34:0;;;11405:21:1;11462:2;11442:18;;;11435:30;-1:-1:-1;;;11481:18:1;;;11474:42;11533:18;;8660:34:0;11221:336:1;8660:34:0;8713:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8374:366;8765:13;;-1:-1:-1;;;;;8759:19:0;;;8765:13;;8759:19;:43;;;;-1:-1:-1;;;;;;8782:20:0;;8797:4;8782:20;;8759:43;8756:174;;;8835:79;8910:3;8835:70;8857:16;;8847:9;;:26;8846:58;;8889:15;;8846:58;;;8875:13;;8835:6;;:10;:70::i;:79::-;8823:91;;8756:174;8995:4;8946:28;6099:18;;;:9;:18;;;;;;9021:6;;-1:-1:-1;;;9021:6:0;;;;9020:7;:32;;;;-1:-1:-1;9039:13:0;;-1:-1:-1;;;;;9031:21:0;;;9039:13;;9031:21;9020:32;:47;;;;-1:-1:-1;9056:11:0;;-1:-1:-1;;;9056:11:0;;;;9020:47;:89;;;;;9092:17;;9071:20;:38;9020:89;:121;;;;;9123:18;;9113:9;;:28;9020:121;9016:421;;;9162:67;9179:49;9183:6;9190:37;9194:20;9215:11;;9190:3;:37::i;:::-;9179:3;:49::i;:::-;9162:16;:67::i;:::-;9277:21;9320:22;;9317:105;;9367:35;9380:21;9367:12;:35::i;:::-;9143:294;9016:421;7682:1766;7644:1804;9463:11;;9460:161;;9531:4;9513:24;;;;:9;:24;;;;;;:39;;9542:9;9513:28;:39::i;:::-;9506:4;9488:24;;;;:9;:24;;;;;;;:64;;;;9570:39;;-1:-1:-1;;;;;9570:39:0;;;;;;;9599:9;1730:25:1;;1718:2;1703:18;;1584:177;9570:39:0;;;;;;;;9460:161;-1:-1:-1;;;;;9647:15:0;;;;;;:9;:15;;;;;;:27;;9667:6;9647:19;:27::i;:::-;-1:-1:-1;;;;;9631:15:0;;;;;;:9;:15;;;;;:43;9699:40;9717:21;:6;9728:9;9717:10;:21::i;:::-;-1:-1:-1;;;;;9699:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9685:13:0;;;;;;;:9;:13;;;;;:54;;;;9755:41;;;9774:21;:6;9785:9;9774:10;:21::i;:::-;9755:41;;1730:25:1;;;1718:2;1703:18;9755:41:0;;;;;;;7365:2439;7296:2508;;;:::o;1389:190::-;1475:7;1511:12;1503:6;;;;1495:29;;;;-1:-1:-1;;;1495:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1535:9:0;1547:5;1551:1;1547;:5;:::i;:::-;1535:17;1389:190;-1:-1:-1;;;;;1389:190:0:o;9920:483::-;5235:6;:13;;-1:-1:-1;;;;5235:13:0;-1:-1:-1;;;5235:13:0;;;10022:16:::1;::::0;;10036:1:::1;10022:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10022:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10022:16:0::1;9998:40;;10067:4;10049;10054:1;10049:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10049:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10093:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10093:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10049:7;;10093:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10083:4;10088:1;10083:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10083:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10158:15:::1;::::0;10126:62:::1;::::0;10143:4:::1;::::0;10158:15:::1;10176:11:::0;10126:8:::1;:62::i;:::-;10199:15;::::0;:196:::1;::::0;-1:-1:-1;;;10199:196:0;;-1:-1:-1;;;;;10199:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10280:11;;10199:15:::1;::::0;10322:4;;10349::::1;::::0;10369:15:::1;::::0;10199:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5271:6:0;:14;;-1:-1:-1;;;;5271:14:0;;;-1:-1:-1;;;;9920:483:0:o;10615:92::-;10672:10;;:27;;:10;;;;-1:-1:-1;;;;;10672:10:0;;:27;;;;;;;;;;;;:10;:27;;;;;;;;;;;;;;;;;;;1587:246;1645:7;1669:1;1674;1669:6;1665:47;;-1:-1:-1;1699:1:0;1692:8;;1665:47;1722:9;1734:5;1738:1;1734;:5;:::i;:::-;1722:17;-1:-1:-1;1767:1:0;1758:5;1762:1;1722:17;1758:5;:::i;:::-;:10;1750:56;;;;-1:-1:-1;;;1750:56:0;;13508:2:1;1750:56:0;;;13490:21:1;13547:2;13527:18;;;13520:30;13586:34;13566:18;;;13559:62;-1:-1:-1;;;13637:18:1;;;13630:31;13678:19;;1750:56:0;13306:397:1;1750:56:0;1824:1;1587:246;-1:-1:-1;;;1587:246:0:o;1841:132::-;1899:7;1926:39;1930:1;1933;1926:39;;;;;;;;;;;;;;;;;:3;:39::i;9814:98::-;9871:7;9898:1;9896;:3;9895:9;;9903:1;9895:9;;;-1:-1:-1;9901:1:0;9814:98;-1:-1:-1;9814:98:0:o;1058:179::-;1116:7;;1148:5;1152:1;1148;:5;:::i;:::-;1136:17;;1177:1;1172;:6;;1164:46;;;;-1:-1:-1;;;1164:46:0;;13910:2:1;1164:46:0;;;13892:21:1;13949:2;13929:18;;;13922:30;13988:29;13968:18;;;13961:57;14035:18;;1164:46:0;13708:351:1;1245:136:0;1303:7;1330:43;1334:1;1337;1330:43;;;;;;;;;;;;;;;;;:3;:43::i;1981:189::-;2067:7;2102:12;2095:5;2087:28;;;;-1:-1:-1;;;2087:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2126:9:0;2138:5;2142:1;2138;:5;:::i;14:118:1:-;100:5;93:13;86:21;79:5;76:32;66:60;;122:1;119;112:12;66:60;14:118;:::o;137:241::-;193:6;246:2;234:9;225:7;221:23;217:32;214:52;;;262:1;259;252:12;214:52;301:9;288:23;320:28;342:5;320:28;:::i;383:548::-;495:4;524:2;553;542:9;535:21;585:6;579:13;628:6;623:2;612:9;608:18;601:34;653:1;663:140;677:6;674:1;671:13;663:140;;;772:14;;;768:23;;762:30;738:17;;;757:2;734:26;727:66;692:10;;663:140;;;667:3;852:1;847:2;838:6;827:9;823:22;819:31;812:42;922:2;915;911:7;906:2;898:6;894:15;890:29;879:9;875:45;871:54;863:62;;;;383:548;;;;:::o;936:131::-;-1:-1:-1;;;;;1011:31:1;;1001:42;;991:70;;1057:1;1054;1047:12;1072:315;1140:6;1148;1201:2;1189:9;1180:7;1176:23;1172:32;1169:52;;;1217:1;1214;1207:12;1169:52;1256:9;1243:23;1275:31;1300:5;1275:31;:::i;:::-;1325:5;1377:2;1362:18;;;;1349:32;;-1:-1:-1;;;1072:315:1:o;1766:456::-;1843:6;1851;1859;1912:2;1900:9;1891:7;1887:23;1883:32;1880:52;;;1928:1;1925;1918:12;1880:52;1967:9;1954:23;1986:31;2011:5;1986:31;:::i;:::-;2036:5;-1:-1:-1;2093:2:1;2078:18;;2065:32;2106:33;2065:32;2106:33;:::i;:::-;1766:456;;2158:7;;-1:-1:-1;;;2212:2:1;2197:18;;;;2184:32;;1766:456::o;2416:247::-;2475:6;2528:2;2516:9;2507:7;2503:23;2499:32;2496:52;;;2544:1;2541;2534:12;2496:52;2583:9;2570:23;2602:31;2627:5;2602:31;:::i;2876:388::-;2944:6;2952;3005:2;2993:9;2984:7;2980:23;2976:32;2973:52;;;3021:1;3018;3011:12;2973:52;3060:9;3047:23;3079:31;3104:5;3079:31;:::i;:::-;3129:5;-1:-1:-1;3186:2:1;3171:18;;3158:32;3199:33;3158:32;3199:33;:::i;:::-;3251:7;3241:17;;;2876:388;;;;;:::o;3269:180::-;3328:6;3381:2;3369:9;3360:7;3356:23;3352:32;3349:52;;;3397:1;3394;3387:12;3349:52;-1:-1:-1;3420:23:1;;3269:180;-1:-1:-1;3269:180:1:o;3454:356::-;3656:2;3638:21;;;3675:18;;;3668:30;3734:34;3729:2;3714:18;;3707:62;3801:2;3786:18;;3454:356::o;3815:127::-;3876:10;3871:3;3867:20;3864:1;3857:31;3907:4;3904:1;3897:15;3931:4;3928:1;3921:15;3947:422;4036:1;4079:5;4036:1;4093:270;4114:7;4104:8;4101:21;4093:270;;;4173:4;4169:1;4165:6;4161:17;4155:4;4152:27;4149:53;;;4182:18;;:::i;:::-;4232:7;4222:8;4218:22;4215:55;;;4252:16;;;;4215:55;4331:22;;;;4291:15;;;;4093:270;;;4097:3;3947:422;;;;;:::o;4374:806::-;4423:5;4453:8;4443:80;;-1:-1:-1;4494:1:1;4508:5;;4443:80;4542:4;4532:76;;-1:-1:-1;4579:1:1;4593:5;;4532:76;4624:4;4642:1;4637:59;;;;4710:1;4705:130;;;;4617:218;;4637:59;4667:1;4658:10;;4681:5;;;4705:130;4742:3;4732:8;4729:17;4726:43;;;4749:18;;:::i;:::-;-1:-1:-1;;4805:1:1;4791:16;;4820:5;;4617:218;;4919:2;4909:8;4906:16;4900:3;4894:4;4891:13;4887:36;4881:2;4871:8;4868:16;4863:2;4857:4;4854:12;4850:35;4847:77;4844:159;;;-1:-1:-1;4956:19:1;;;4988:5;;4844:159;5035:34;5060:8;5054:4;5035:34;:::i;:::-;5105:6;5101:1;5097:6;5093:19;5084:7;5081:32;5078:58;;;5116:18;;:::i;:::-;5154:20;;4374:806;-1:-1:-1;;;4374:806:1:o;5185:140::-;5243:5;5272:47;5313:4;5303:8;5299:19;5293:4;5272:47;:::i;5330:168::-;5403:9;;;5434;;5451:15;;;5445:22;;5431:37;5421:71;;5472:18;;:::i;5855:251::-;5925:6;5978:2;5966:9;5957:7;5953:23;5949:32;5946:52;;;5994:1;5991;5984:12;5946:52;6026:9;6020:16;6045:31;6070:5;6045:31;:::i;7032:306::-;7120:6;7128;7136;7189:2;7177:9;7168:7;7164:23;7160:32;7157:52;;;7205:1;7202;7195:12;7157:52;7234:9;7228:16;7218:26;;7284:2;7273:9;7269:18;7263:25;7253:35;;7328:2;7317:9;7313:18;7307:25;7297:35;;7032:306;;;;;:::o;7622:245::-;7689:6;7742:2;7730:9;7721:7;7717:23;7713:32;7710:52;;;7758:1;7755;7748:12;7710:52;7790:9;7784:16;7809:28;7831:5;7809:28;:::i;10736:125::-;10801:9;;;10822:10;;;10819:36;;;10835:18;;:::i;11562:135::-;11601:3;11622:17;;;11619:43;;11642:18;;:::i;:::-;-1:-1:-1;11689:1:1;11678:13;;11562:135::o;11702:128::-;11769:9;;;11790:11;;;11787:37;;;11804:18;;:::i;11967:127::-;12028:10;12023:3;12019:20;12016:1;12009:31;12059:4;12056:1;12049:15;12083:4;12080:1;12073:15;12099:980;12361:4;12409:3;12398:9;12394:19;12440:6;12429:9;12422:25;12466:2;12504:6;12499:2;12488:9;12484:18;12477:34;12547:3;12542:2;12531:9;12527:18;12520:31;12571:6;12606;12600:13;12637:6;12629;12622:22;12675:3;12664:9;12660:19;12653:26;;12714:2;12706:6;12702:15;12688:29;;12735:1;12745:195;12759:6;12756:1;12753:13;12745:195;;;12824:13;;-1:-1:-1;;;;;12820:39:1;12808:52;;12915:15;;;;12880:12;;;;12856:1;12774:9;12745:195;;;-1:-1:-1;;;;;;;12996:32:1;;;;12991:2;12976:18;;12969:60;-1:-1:-1;;;13060:3:1;13045:19;13038:35;12957:3;12099:980;-1:-1:-1;;;12099:980:1:o;13084:217::-;13124:1;13150;13140:132;;13194:10;13189:3;13185:20;13182:1;13175:31;13229:4;13226:1;13219:15;13257:4;13254:1;13247:15;13140:132;-1:-1:-1;13286:9:1;;13084:217::o

Swarm Source

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