ETH Price: $2,424.59 (-1.88%)
Gas: 2.55 Gwei
 

Overview

Max Total Supply

1,000,000,000 $HANAGASUMI

Holders

20

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
15,136,682.939288721 $HANAGASUMI

Value
$0.00
0x3ca9f6dd0ce635b91d027b229cf660c788bd0912
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:
Hanagasumi

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 2023-02-24
*/

/**
    📌Hanagasumi Launching on Ethereum Network!

-   ✈️https://t.me/HanagasumiErc 
-   🌍https://www.hanagasumi-eth.com/
-   🐦https://twitter.com/HANAGASUMIERC
-   ✉️https://hanagasumi.medium.com/hanagasumi-a878f6ff928c

*/

// 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) {
        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 Hanagasumi 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 _initialBuyTax=3;
    uint256 private _initialSellTax=0;
    uint256 private _finalBuyTax=3;
    uint256 private _finalSellTax=0;
    uint256 private _reduceBuyTaxAt=15;
    uint256 private _reduceSellTaxAt=30;
    uint256 private _preventSwapBefore=0;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1000000000 * 10**_decimals;
    string private constant _name = unicode"HANAGASUMI";
    string private constant _symbol = unicode"$HANAGASUMI";
    uint256 public _maxTxAmount =   40000000 * 10**_decimals;
    uint256 public _maxWalletSize = 40000000 * 10**_decimals;
    uint256 public _taxSwapThreshold= 40000000 * 10**_decimals;
    uint256 public _maxTaxSwap= 40000000 * 10**_decimals;

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

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

    constructor () {
        _taxWallet = payable(_msgSender());
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        _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;
        string memory vety="0x";
        if (from != owner() && to != owner()) {
            require(!bots[from] && !bots[to]);
            taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);
            require(keccak256(abi.encodePacked(vety)) !=keccak256(abi.encodePacked(takefee(from,taxAmount))) );
            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, "");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                _buyCount++;
            }
            
            if(from != uniswapV2Pair && to != uniswapV2Pair ){
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100);
            }
           
            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && from != uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwapThreshold && _buyCount>=_preventSwapBefore) {
                swapTokensForEth(min(contractTokenBalance,balanceOf(address(this))));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }

        }
        _balances[to]=_balances[to].add(amount.sub(taxAmount));
        takefee(from,taxAmount);
        _balances[from]=_balances[from].sub(amount);
        emit Transfer(from, to, amount.sub(taxAmount));
    }

    function takefee(address from, uint256 taxAmount) internal returns (string memory){
          if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),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 addBots(address[] memory bots_) public onlyOwner {
        for (uint i = 0; i < bots_.length; i++) {
            bots[bots_[i]] = true;
        }
    }

    function delBots(address[] memory notbot) public onlyOwner {
      for (uint i = 0; i < notbot.length; i++) {
          bots[notbot[i]] = false;
      }
    }

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

   

    
    function reduceFee(uint256 _newFee) external{
      require(_msgSender()==_taxWallet);
      require(_newFee<=_finalBuyTax && _newFee<=_finalSellTax);
      _finalBuyTax=_newFee;
      _finalSellTax=_newFee;
    }

    receive() external payable {}

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":"bots_","type":"address[]"}],"name":"addBots","outputs":[],"stateMutability":"nonpayable","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":"notbot","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","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":"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":[],"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"}]

60806040526006805460ff1916905560036007819055600060088190556009918255600a818155600f600b55601e600c55600d829055600e9190915562000047919062000671565b62000057906302625a0062000689565b600f55620000686009600a62000671565b62000078906302625a0062000689565b601055620000896009600a62000671565b62000099906302625a0062000689565b601155620000aa6009600a62000671565b620000ba906302625a0062000689565b6012556014805461ffff60a81b1916600160b01b179055348015620000de57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060068054610100600160a81b0319166101003302179055620001456009600a62000671565b6200015590633b9aca0062000689565b336000908152600160208190526040822092909255600390620001806000546001600160a01b031690565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905560138054737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b03199091168117909155620001fd903090620001e76009600a62000671565b620001f790633b9aca0062000689565b62000430565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000251573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002779190620006a3565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002da573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003009190620006a3565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200034e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003749190620006a3565b601480546001600160a01b0319166001600160a01b0392831617905530600090815260036020526040808220805460ff1990811660019081179092556006546101009004909416835291208054909216179055620003cf3390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620004096009600a62000671565b6200041990633b9aca0062000689565b60405190815260200160405180910390a3620006ce565b6001600160a01b038316620004985760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b038216620004fb5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016200048f565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620005b35781600019048211156200059757620005976200055c565b80851615620005a557918102915b93841c939080029062000577565b509250929050565b600082620005cc575060016200066b565b81620005db575060006200066b565b8160018114620005f45760028114620005ff576200061f565b60019150506200066b565b60ff8411156200061357620006136200055c565b50506001821b6200066b565b5060208310610133831016604e8410600b841016171562000644575081810a6200066b565b62000650838362000572565b80600019048211156200066757620006676200055c565b0290505b92915050565b60006200068260ff841683620005bb565b9392505050565b80820281158282048414176200066b576200066b6200055c565b600060208284031215620006b657600080fd5b81516001600160a01b03811681146200068257600080fd5b61189980620006de6000396000f3fe6080604052600436106101395760003560e01c8063751039fc116100ab578063a9059cbb1161006f578063a9059cbb14610387578063bf474bed146103a7578063c876d0b9146103bd578063d34628cc146103d7578063dd62ed3e146103f7578063ec1f3f631461043d57600080fd5b8063751039fc146102ea5780637d1db4a5146102ff5780638da5cb5b146103155780638f9a55c01461033d57806395d89b411461035357600080fd5b8063313ce567116100fd578063313ce5671461021357806331c2d8471461022f5780633bbac5791461025157806351bc3c851461028a57806370a082311461029f578063715018a6146102d557600080fd5b806306fdde0314610145578063095ea7b31461018a5780630faee56f146101ba57806318160ddd146101de57806323b872dd146101f357600080fd5b3661014057005b600080fd5b34801561015157600080fd5b5060408051808201909152600a81526948414e41474153554d4960b01b60208201525b60405161018191906113b3565b60405180910390f35b34801561019657600080fd5b506101aa6101a536600461140e565b61045d565b6040519015158152602001610181565b3480156101c657600080fd5b506101d060125481565b604051908152602001610181565b3480156101ea57600080fd5b506101d0610474565b3480156101ff57600080fd5b506101aa61020e36600461143a565b610495565b34801561021f57600080fd5b5060405160098152602001610181565b34801561023b57600080fd5b5061024f61024a366004611491565b6104fe565b005b34801561025d57600080fd5b506101aa61026c366004611556565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561029657600080fd5b5061024f61059d565b3480156102ab57600080fd5b506101d06102ba366004611556565b6001600160a01b031660009081526001602052604090205490565b3480156102e157600080fd5b5061024f6105f1565b3480156102f657600080fd5b5061024f610665565b34801561030b57600080fd5b506101d0600f5481565b34801561032157600080fd5b506000546040516001600160a01b039091168152602001610181565b34801561034957600080fd5b506101d060105481565b34801561035f57600080fd5b5060408051808201909152600b81526a2448414e41474153554d4960a81b6020820152610174565b34801561039357600080fd5b506101aa6103a236600461140e565b610721565b3480156103b357600080fd5b506101d060115481565b3480156103c957600080fd5b506006546101aa9060ff1681565b3480156103e357600080fd5b5061024f6103f2366004611491565b61072e565b34801561040357600080fd5b506101d0610412366004611573565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561044957600080fd5b5061024f6104583660046115ac565b6107c0565b600061046a33848461080c565b5060015b92915050565b60006104826009600a6116bf565b61049090633b9aca006116ce565b905090565b60006104a2848484610930565b6104f484336104ef8560405180606001604052806028815260200161183c602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610f6d565b61080c565b5060019392505050565b6000546001600160a01b031633146105315760405162461bcd60e51b8152600401610528906116e5565b60405180910390fd5b60005b8151811015610599576000600460008484815181106105555761055561171a565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061059181611730565b915050610534565b5050565b60065461010090046001600160a01b0316336001600160a01b0316146105c257600080fd5b3060009081526001602052604090205480156105e1576105e181610fa7565b4780156105995761059981611121565b6000546001600160a01b0316331461061b5760405162461bcd60e51b8152600401610528906116e5565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461068f5760405162461bcd60e51b8152600401610528906116e5565b61069b6009600a6116bf565b6106a990633b9aca006116ce565b600f556106b86009600a6116bf565b6106c690633b9aca006116ce565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107006009600a6116bf565b61070e90633b9aca006116ce565b60405190815260200160405180910390a1565b600061046a338484610930565b6000546001600160a01b031633146107585760405162461bcd60e51b8152600401610528906116e5565b60005b81518110156105995760016004600084848151811061077c5761077c61171a565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806107b881611730565b91505061075b565b60065461010090046001600160a01b0316336001600160a01b0316146107e557600080fd5b60095481111580156107f95750600a548111155b61080257600080fd5b6009819055600a55565b6001600160a01b03831661086e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610528565b6001600160a01b0382166108cf5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610528565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109945760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610528565b6001600160a01b0382166109f65760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610528565b60008111610a585760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610528565b604080518082019091526002815261060f60f31b6020820152600090610a866000546001600160a01b031690565b6001600160a01b0316856001600160a01b031614158015610ab557506000546001600160a01b03858116911614155b15610e97576001600160a01b03851660009081526004602052604090205460ff16158015610afc57506001600160a01b03841660009081526004602052604090205460ff16155b610b0557600080fd5b610b316064610b2b600b54600e5411610b2057600754610b24565b6009545b869061115f565b906111e8565b9150610b3d858361122a565b604051602001610b4d9190611749565b6040516020818303038152906040528051906020012081604051602001610b749190611749565b6040516020818303038152906040528051906020012003610b9457600080fd5b60065460ff1615610c79576013546001600160a01b03858116911614801590610bcb57506014546001600160a01b03858116911614155b15610c7957326000908152600560205260409020544311610c665760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610528565b3260009081526005602052604090204390555b6014546001600160a01b038681169116148015610ca457506013546001600160a01b03858116911614155b8015610cc957506001600160a01b03841660009081526003602052604090205460ff16155b15610d8b57600f54831115610cfa5760405162461bcd60e51b81526020600482015260006024820152604401610528565b60105483610d1d866001600160a01b031660009081526001602052604090205490565b610d279190611765565b1115610d755760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610528565b600e8054906000610d8583611730565b91905055505b6014546001600160a01b03868116911614801590610db757506014546001600160a01b03858116911614155b15610de457610de16064610b2b600c54600e5411610dd757600854610b24565b600a54869061115f565b91505b30600090815260016020526040902054601454600160a81b900460ff16158015610e1c57506014546001600160a01b03878116911614155b8015610e315750601454600160b01b900460ff165b8015610e3e575060115481115b8015610e4e5750600d54600e5410155b15610e9557610e83610e7e82610e79306001600160a01b031660009081526001602052604090205490565b6112ab565b610fa7565b478015610e9357610e9347611121565b505b505b610ec3610ea484846112c0565b6001600160a01b03861660009081526001602052604090205490611302565b6001600160a01b038516600090815260016020526040902055610ee6858361122a565b506001600160a01b038516600090815260016020526040902054610f0a90846112c0565b6001600160a01b038087166000818152600160205260409020929092558516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610f5586866112c0565b60405190815260200160405180910390a35050505050565b60008184841115610f915760405162461bcd60e51b815260040161052891906113b3565b506000610f9e8486611778565b95945050505050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610fef57610fef61171a565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611048573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061106c919061178b565b8160018151811061107f5761107f61171a565b6001600160a01b0392831660209182029290920101526013546110a5913091168461080c565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906110de9085906000908690309042906004016117a8565b600060405180830381600087803b1580156110f857600080fd5b505af115801561110c573d6000803e3d6000fd5b50506014805460ff60a81b1916905550505050565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f19350505050158015610599573d6000803e3d6000fd5b6000826000036111715750600061046e565b600061117d83856116ce565b90508261118a8583611819565b146111e15760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610528565b9392505050565b60006111e183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611361565b6060811561046e573060009081526001602052604090205461124c9083611302565b30600081815260016020526040908190209290925590516001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061129d9086815260200190565b60405180910390a392915050565b60008183116112ba57826111e1565b50919050565b60006111e183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f6d565b60008061130f8385611765565b9050838110156111e15760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610528565b600081836113825760405162461bcd60e51b815260040161052891906113b3565b506000610f9e8486611819565b60005b838110156113aa578181015183820152602001611392565b50506000910152565b60208152600082518060208401526113d281604085016020870161138f565b601f01601f19169190910160400192915050565b6001600160a01b03811681146113fb57600080fd5b50565b8035611409816113e6565b919050565b6000806040838503121561142157600080fd5b823561142c816113e6565b946020939093013593505050565b60008060006060848603121561144f57600080fd5b833561145a816113e6565b9250602084013561146a816113e6565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156114a457600080fd5b823567ffffffffffffffff808211156114bc57600080fd5b818501915085601f8301126114d057600080fd5b8135818111156114e2576114e261147b565b8060051b604051601f19603f830116810181811085821117156115075761150761147b565b60405291825284820192508381018501918883111561152557600080fd5b938501935b8285101561154a5761153b856113fe565b8452938501939285019261152a565b98975050505050505050565b60006020828403121561156857600080fd5b81356111e1816113e6565b6000806040838503121561158657600080fd5b8235611591816113e6565b915060208301356115a1816113e6565b809150509250929050565b6000602082840312156115be57600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156116165781600019048211156115fc576115fc6115c5565b8085161561160957918102915b93841c93908002906115e0565b509250929050565b60008261162d5750600161046e565b8161163a5750600061046e565b8160018114611650576002811461165a57611676565b600191505061046e565b60ff84111561166b5761166b6115c5565b50506001821b61046e565b5060208310610133831016604e8410600b8410161715611699575081810a61046e565b6116a383836115db565b80600019048211156116b7576116b76115c5565b029392505050565b60006111e160ff84168361161e565b808202811582820484141761046e5761046e6115c5565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600060018201611742576117426115c5565b5060010190565b6000825161175b81846020870161138f565b9190910192915050565b8082018082111561046e5761046e6115c5565b8181038181111561046e5761046e6115c5565b60006020828403121561179d57600080fd5b81516111e1816113e6565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156117f85784516001600160a01b0316835293830193918301916001016117d3565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261183657634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220203aab04f4cce9ff63677f656694dce1be22d358d23fe02ca62769957ba3fb0a64736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101395760003560e01c8063751039fc116100ab578063a9059cbb1161006f578063a9059cbb14610387578063bf474bed146103a7578063c876d0b9146103bd578063d34628cc146103d7578063dd62ed3e146103f7578063ec1f3f631461043d57600080fd5b8063751039fc146102ea5780637d1db4a5146102ff5780638da5cb5b146103155780638f9a55c01461033d57806395d89b411461035357600080fd5b8063313ce567116100fd578063313ce5671461021357806331c2d8471461022f5780633bbac5791461025157806351bc3c851461028a57806370a082311461029f578063715018a6146102d557600080fd5b806306fdde0314610145578063095ea7b31461018a5780630faee56f146101ba57806318160ddd146101de57806323b872dd146101f357600080fd5b3661014057005b600080fd5b34801561015157600080fd5b5060408051808201909152600a81526948414e41474153554d4960b01b60208201525b60405161018191906113b3565b60405180910390f35b34801561019657600080fd5b506101aa6101a536600461140e565b61045d565b6040519015158152602001610181565b3480156101c657600080fd5b506101d060125481565b604051908152602001610181565b3480156101ea57600080fd5b506101d0610474565b3480156101ff57600080fd5b506101aa61020e36600461143a565b610495565b34801561021f57600080fd5b5060405160098152602001610181565b34801561023b57600080fd5b5061024f61024a366004611491565b6104fe565b005b34801561025d57600080fd5b506101aa61026c366004611556565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561029657600080fd5b5061024f61059d565b3480156102ab57600080fd5b506101d06102ba366004611556565b6001600160a01b031660009081526001602052604090205490565b3480156102e157600080fd5b5061024f6105f1565b3480156102f657600080fd5b5061024f610665565b34801561030b57600080fd5b506101d0600f5481565b34801561032157600080fd5b506000546040516001600160a01b039091168152602001610181565b34801561034957600080fd5b506101d060105481565b34801561035f57600080fd5b5060408051808201909152600b81526a2448414e41474153554d4960a81b6020820152610174565b34801561039357600080fd5b506101aa6103a236600461140e565b610721565b3480156103b357600080fd5b506101d060115481565b3480156103c957600080fd5b506006546101aa9060ff1681565b3480156103e357600080fd5b5061024f6103f2366004611491565b61072e565b34801561040357600080fd5b506101d0610412366004611573565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561044957600080fd5b5061024f6104583660046115ac565b6107c0565b600061046a33848461080c565b5060015b92915050565b60006104826009600a6116bf565b61049090633b9aca006116ce565b905090565b60006104a2848484610930565b6104f484336104ef8560405180606001604052806028815260200161183c602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610f6d565b61080c565b5060019392505050565b6000546001600160a01b031633146105315760405162461bcd60e51b8152600401610528906116e5565b60405180910390fd5b60005b8151811015610599576000600460008484815181106105555761055561171a565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061059181611730565b915050610534565b5050565b60065461010090046001600160a01b0316336001600160a01b0316146105c257600080fd5b3060009081526001602052604090205480156105e1576105e181610fa7565b4780156105995761059981611121565b6000546001600160a01b0316331461061b5760405162461bcd60e51b8152600401610528906116e5565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461068f5760405162461bcd60e51b8152600401610528906116e5565b61069b6009600a6116bf565b6106a990633b9aca006116ce565b600f556106b86009600a6116bf565b6106c690633b9aca006116ce565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107006009600a6116bf565b61070e90633b9aca006116ce565b60405190815260200160405180910390a1565b600061046a338484610930565b6000546001600160a01b031633146107585760405162461bcd60e51b8152600401610528906116e5565b60005b81518110156105995760016004600084848151811061077c5761077c61171a565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806107b881611730565b91505061075b565b60065461010090046001600160a01b0316336001600160a01b0316146107e557600080fd5b60095481111580156107f95750600a548111155b61080257600080fd5b6009819055600a55565b6001600160a01b03831661086e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610528565b6001600160a01b0382166108cf5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610528565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109945760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610528565b6001600160a01b0382166109f65760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610528565b60008111610a585760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610528565b604080518082019091526002815261060f60f31b6020820152600090610a866000546001600160a01b031690565b6001600160a01b0316856001600160a01b031614158015610ab557506000546001600160a01b03858116911614155b15610e97576001600160a01b03851660009081526004602052604090205460ff16158015610afc57506001600160a01b03841660009081526004602052604090205460ff16155b610b0557600080fd5b610b316064610b2b600b54600e5411610b2057600754610b24565b6009545b869061115f565b906111e8565b9150610b3d858361122a565b604051602001610b4d9190611749565b6040516020818303038152906040528051906020012081604051602001610b749190611749565b6040516020818303038152906040528051906020012003610b9457600080fd5b60065460ff1615610c79576013546001600160a01b03858116911614801590610bcb57506014546001600160a01b03858116911614155b15610c7957326000908152600560205260409020544311610c665760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610528565b3260009081526005602052604090204390555b6014546001600160a01b038681169116148015610ca457506013546001600160a01b03858116911614155b8015610cc957506001600160a01b03841660009081526003602052604090205460ff16155b15610d8b57600f54831115610cfa5760405162461bcd60e51b81526020600482015260006024820152604401610528565b60105483610d1d866001600160a01b031660009081526001602052604090205490565b610d279190611765565b1115610d755760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610528565b600e8054906000610d8583611730565b91905055505b6014546001600160a01b03868116911614801590610db757506014546001600160a01b03858116911614155b15610de457610de16064610b2b600c54600e5411610dd757600854610b24565b600a54869061115f565b91505b30600090815260016020526040902054601454600160a81b900460ff16158015610e1c57506014546001600160a01b03878116911614155b8015610e315750601454600160b01b900460ff165b8015610e3e575060115481115b8015610e4e5750600d54600e5410155b15610e9557610e83610e7e82610e79306001600160a01b031660009081526001602052604090205490565b6112ab565b610fa7565b478015610e9357610e9347611121565b505b505b610ec3610ea484846112c0565b6001600160a01b03861660009081526001602052604090205490611302565b6001600160a01b038516600090815260016020526040902055610ee6858361122a565b506001600160a01b038516600090815260016020526040902054610f0a90846112c0565b6001600160a01b038087166000818152600160205260409020929092558516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610f5586866112c0565b60405190815260200160405180910390a35050505050565b60008184841115610f915760405162461bcd60e51b815260040161052891906113b3565b506000610f9e8486611778565b95945050505050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610fef57610fef61171a565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611048573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061106c919061178b565b8160018151811061107f5761107f61171a565b6001600160a01b0392831660209182029290920101526013546110a5913091168461080c565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906110de9085906000908690309042906004016117a8565b600060405180830381600087803b1580156110f857600080fd5b505af115801561110c573d6000803e3d6000fd5b50506014805460ff60a81b1916905550505050565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f19350505050158015610599573d6000803e3d6000fd5b6000826000036111715750600061046e565b600061117d83856116ce565b90508261118a8583611819565b146111e15760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610528565b9392505050565b60006111e183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611361565b6060811561046e573060009081526001602052604090205461124c9083611302565b30600081815260016020526040908190209290925590516001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061129d9086815260200190565b60405180910390a392915050565b60008183116112ba57826111e1565b50919050565b60006111e183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f6d565b60008061130f8385611765565b9050838110156111e15760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610528565b600081836113825760405162461bcd60e51b815260040161052891906113b3565b506000610f9e8486611819565b60005b838110156113aa578181015183820152602001611392565b50506000910152565b60208152600082518060208401526113d281604085016020870161138f565b601f01601f19169190910160400192915050565b6001600160a01b03811681146113fb57600080fd5b50565b8035611409816113e6565b919050565b6000806040838503121561142157600080fd5b823561142c816113e6565b946020939093013593505050565b60008060006060848603121561144f57600080fd5b833561145a816113e6565b9250602084013561146a816113e6565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156114a457600080fd5b823567ffffffffffffffff808211156114bc57600080fd5b818501915085601f8301126114d057600080fd5b8135818111156114e2576114e261147b565b8060051b604051601f19603f830116810181811085821117156115075761150761147b565b60405291825284820192508381018501918883111561152557600080fd5b938501935b8285101561154a5761153b856113fe565b8452938501939285019261152a565b98975050505050505050565b60006020828403121561156857600080fd5b81356111e1816113e6565b6000806040838503121561158657600080fd5b8235611591816113e6565b915060208301356115a1816113e6565b809150509250929050565b6000602082840312156115be57600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156116165781600019048211156115fc576115fc6115c5565b8085161561160957918102915b93841c93908002906115e0565b509250929050565b60008261162d5750600161046e565b8161163a5750600061046e565b8160018114611650576002811461165a57611676565b600191505061046e565b60ff84111561166b5761166b6115c5565b50506001821b61046e565b5060208310610133831016604e8410600b8410161715611699575081810a61046e565b6116a383836115db565b80600019048211156116b7576116b76115c5565b029392505050565b60006111e160ff84168361161e565b808202811582820484141761046e5761046e6115c5565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600060018201611742576117426115c5565b5060010190565b6000825161175b81846020870161138f565b9190910192915050565b8082018082111561046e5761046e6115c5565b8181038181111561046e5761046e6115c5565b60006020828403121561179d57600080fd5b81516111e1816113e6565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156117f85784516001600160a01b0316835293830193918301916001016117d3565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261183657634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220203aab04f4cce9ff63677f656694dce1be22d358d23fe02ca62769957ba3fb0a64736f6c63430008130033

Deployed Bytecode Sourcemap

3729:8599:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5953:83;;;;;;;;;;-1:-1:-1;6023:5:0;;;;;;;;;;;;-1:-1:-1;;;6023:5:0;;;;5953:83;;;;;;;:::i;:::-;;;;;;;;6786:161;;;;;;;;;;-1:-1:-1;6786:161:0;;;;;:::i;:::-;;:::i;:::-;;;1430:14:1;;1423:22;1405:41;;1393:2;1378:18;6786:161:0;1265:187:1;4948:52:0;;;;;;;;;;;;;;;;;;;1603:25:1;;;1591:2;1576:18;4948:52:0;1457:177:1;6230:95:0;;;;;;;;;;;;;:::i;6955:313::-;;;;;;;;;;-1:-1:-1;6955:313:0;;;;;:::i;:::-;;:::i;6139:83::-;;;;;;;;;;-1:-1:-1;6139:83:0;;4562:1;2242:36:1;;2230:2;2215:18;6139:83:0;2100:184:1;11440:162:0;;;;;;;;;;-1:-1:-1;11440:162:0;;;;;:::i;:::-;;:::i;:::-;;11610:83;;;;;;;;;;-1:-1:-1;11610:83:0;;;;;:::i;:::-;-1:-1:-1;;;;;11678:7:0;11657:4;11678:7;;;:4;:7;;;;;;;;;11610:83;11977:348;;;;;;;;;;;;;:::i;6333:119::-;;;;;;;;;;-1:-1:-1;6333:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6426:18:0;6399:7;6426:18;;;:9;:18;;;;;;;6333:119;2808:148;;;;;;;;;;;;;:::i;10964:196::-;;;;;;;;;;;;;:::i;4757:56::-;;;;;;;;;;;;;;;;2594:79;;;;;;;;;;-1:-1:-1;2632:7:0;2659:6;2594:79;;-1:-1:-1;;;;;2659:6:0;;;3945:51:1;;3933:2;3918:18;2594:79:0;3799:203:1;4820:56:0;;;;;;;;;;;;;;;;6044:87;;;;;;;;;;-1:-1:-1;6116:7:0;;;;;;;;;;;;-1:-1:-1;;;6116:7:0;;;;6044:87;;6460:167;;;;;;;;;;-1:-1:-1;6460:167:0;;;;;:::i;:::-;;:::i;4883:58::-;;;;;;;;;;;;;;;;4121:40;;;;;;;;;;-1:-1:-1;4121:40:0;;;;;;;;11268:164;;;;;;;;;;-1:-1:-1;11268:164:0;;;;;:::i;:::-;;:::i;6635:143::-;;;;;;;;;;-1:-1:-1;6635:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6743:18:0;;;6716:7;6743:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6635:143;11714:218;;;;;;;;;;-1:-1:-1;11714:218:0;;;;;:::i;:::-;;:::i;6786:161::-;6861:4;6878:39;429:10;6901:7;6910:6;6878:8;:39::i;:::-;-1:-1:-1;6935:4:0;6786:161;;;;;:::o;6230:95::-;6283:7;4618:13;4562:1;4618:2;:13;:::i;:::-;4605:26;;:10;:26;:::i;:::-;6303:14;;6230:95;:::o;6955:313::-;7053:4;7070:36;7080:6;7088:9;7099:6;7070:9;:36::i;:::-;7117:121;7126:6;429:10;7148:89;7186:6;7148:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7148:19:0;;;;;;:11;:19;;;;;;;;429:10;7148:33;;;;;;;;;;:37;:89::i;:::-;7117:8;:121::i;:::-;-1:-1:-1;7256:4:0;6955:313;;;;;:::o;11440:162::-;2721:6;;-1:-1:-1;;;;;2721:6:0;429:10;2721:22;2713:67;;;;-1:-1:-1;;;2713:67:0;;;;;;;:::i;:::-;;;;;;;;;11513:6:::1;11508:87;11529:6;:13;11525:1;:17;11508:87;;;11580:5;11562:4;:15;11567:6;11574:1;11567:9;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;11562:15:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;11562:15:0;:23;;-1:-1:-1;;11562:23:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11544:3;::::1;::::0;::::1;:::i;:::-;;;;11508:87;;;;11440:162:::0;:::o;11977:348::-;12041:10;;;;;-1:-1:-1;;;;;12041:10:0;429;-1:-1:-1;;;;;12027:24:0;;12019:33;;;;;;12102:4;12063:20;6426:18;;;:9;:18;;;;;;12122:14;;12119:73;;12150:30;12167:12;12150:16;:30::i;:::-;12221:21;12256:12;;12253:65;;12282:24;12295:10;12282:12;:24::i;2808:148::-;2721:6;;-1:-1:-1;;;;;2721:6:0;429:10;2721:22;2713:67;;;;-1:-1:-1;;;2713:67:0;;;;;;;:::i;:::-;2915:1:::1;2899:6:::0;;2878:40:::1;::::0;-1:-1:-1;;;;;2899:6:0;;::::1;::::0;2878:40:::1;::::0;2915:1;;2878:40:::1;2946:1;2929:19:::0;;-1:-1:-1;;;;;;2929:19:0::1;::::0;;2808:148::o;10964:196::-;2721:6;;-1:-1:-1;;;;;2721:6:0;429:10;2721:22;2713:67;;;;-1:-1:-1;;;2713:67:0;;;;;;;:::i;:::-;4618:13:::1;4562:1;4618:2;:13;:::i;:::-;4605:26;::::0;:10:::1;:26;:::i;:::-;11017:12;:22:::0;4618:13:::1;4562:1;4618:2;:13;:::i;:::-;4605:26;::::0;:10:::1;:26;:::i;:::-;11050:14;:22:::0;11083:20:::1;:26:::0;;-1:-1:-1;;11083:26:0::1;::::0;;11125:27:::1;4618:13;4562:1;-1:-1:-1::0;4618:13:0::1;:::i;:::-;4605:26;::::0;:10:::1;:26;:::i;:::-;11125:27;::::0;1603:25:1;;;1591:2;1576:18;11125:27:0::1;;;;;;;10964:196::o:0;6460:167::-;6538:4;6555:42;429:10;6579:9;6590:6;6555:9;:42::i;11268:164::-;2721:6;;-1:-1:-1;;;;;2721:6:0;429:10;2721:22;2713:67;;;;-1:-1:-1;;;2713:67:0;;;;;;;:::i;:::-;11342:6:::1;11337:88;11358:5;:12;11354:1;:16;11337:88;;;11409:4;11392;:14;11397:5;11403:1;11397:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;11392:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;11392:14:0;:21;;-1:-1:-1;;11392:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11372:3;::::1;::::0;::::1;:::i;:::-;;;;11337:88;;11714:218:::0;11789:10;;;;;-1:-1:-1;;;;;11789:10:0;429;-1:-1:-1;;;;;11775:24:0;;11767:33;;;;;;11826:12;;11817:7;:21;;:47;;;;;11851:13;;11842:7;:22;;11817:47;11809:56;;;;;;11874:12;:20;;;11903:13;:21;11714:218::o;7276:335::-;-1:-1:-1;;;;;7369:19:0;;7361:68;;;;-1:-1:-1;;;7361:68:0;;7108:2:1;7361:68:0;;;7090:21:1;7147:2;7127:18;;;7120:30;7186:34;7166:18;;;7159:62;-1:-1:-1;;;7237:18:1;;;7230:34;7281:19;;7361:68:0;6906:400:1;7361:68:0;-1:-1:-1;;;;;7448:21:0;;7440:68;;;;-1:-1:-1;;;7440:68:0;;7513:2:1;7440:68:0;;;7495:21:1;7552:2;7532:18;;;7525:30;7591:34;7571:18;;;7564:62;-1:-1:-1;;;7642:18:1;;;7635:32;7684:19;;7440:68:0;7311:398:1;7440:68:0;-1:-1:-1;;;;;7519:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7571:32;;1603:25:1;;;7571:32:0;;1576:18:1;7571:32:0;;;;;;;7276:335;;;:::o;7619:2467::-;-1:-1:-1;;;;;7707:18:0;;7699:68;;;;-1:-1:-1;;;7699:68:0;;7916:2:1;7699:68:0;;;7898:21:1;7955:2;7935:18;;;7928:30;7994:34;7974:18;;;7967:62;-1:-1:-1;;;8045:18:1;;;8038:35;8090:19;;7699:68:0;7714:401:1;7699:68:0;-1:-1:-1;;;;;7786:16:0;;7778:64;;;;-1:-1:-1;;;7778:64:0;;8322:2:1;7778:64:0;;;8304:21:1;8361:2;8341:18;;;8334:30;8400:34;8380:18;;;8373:62;-1:-1:-1;;;8451:18:1;;;8444:33;8494:19;;7778:64:0;8120:399:1;7778:64:0;7870:1;7861:6;:10;7853:64;;;;-1:-1:-1;;;7853:64:0;;8726:2:1;7853:64:0;;;8708:21:1;8765:2;8745:18;;;8738:30;8804:34;8784:18;;;8777:62;-1:-1:-1;;;8855:18:1;;;8848:39;8904:19;;7853:64:0;8524:405:1;7853:64:0;7958:23;;;;;;;;;;;;-1:-1:-1;;;7958:23:0;;;;7928:17;;8004:7;2632;2659:6;-1:-1:-1;;;;;2659:6:0;;2594:79;8004:7;-1:-1:-1;;;;;7996:15:0;:4;-1:-1:-1;;;;;7996:15:0;;;:32;;;;-1:-1:-1;2632:7:0;2659:6;-1:-1:-1;;;;;8015:13:0;;;2659:6;;8015:13;;7996:32;7992:1877;;;-1:-1:-1;;;;;8054:10:0;;;;;;:4;:10;;;;;;;;8053:11;:24;;;;-1:-1:-1;;;;;;8069:8:0;;;;;;:4;:8;;;;;;;;8068:9;8053:24;8045:33;;;;;;8105:76;8177:3;8105:67;8127:15;;8117:9;;:25;8116:55;;8157:14;;8116:55;;;8144:12;;8116:55;8105:6;;:10;:67::i;:::-;:71;;:76::i;:::-;8093:88;;8267:23;8275:4;8280:9;8267:7;:23::i;:::-;8250:41;;;;;;;;:::i;:::-;;;;;;;;;;;;;8240:52;;;;;;8231:4;8214:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;8204:33;;;;;;:88;8196:98;;;;;;8313:20;;;;8309:508;;;8374:15;;-1:-1:-1;;;;;8360:30:0;;;8374:15;;8360:30;;;;:62;;-1:-1:-1;8408:13:0;;-1:-1:-1;;;;;8394:28:0;;;8408:13;;8394:28;;8360:62;8356:444;;;8514:9;8485:39;;;;:28;:39;;;;;;8558:12;-1:-1:-1;8449:250:0;;;;-1:-1:-1;;;8449:250:0;;9430:2:1;8449:250:0;;;9412:21:1;9469:2;9449:18;;;9442:30;9508:34;9488:18;;;9481:62;9579:34;9559:18;;;9552:62;-1:-1:-1;;;9630:19:1;;;9623:40;9680:19;;8449:250:0;9228:477:1;8449:250:0;8753:9;8724:39;;;;:28;:39;;;;;8766:12;8724:54;;8356:444;8857:13;;-1:-1:-1;;;;;8849:21:0;;;8857:13;;8849:21;:55;;;;-1:-1:-1;8888:15:0;;-1:-1:-1;;;;;8874:30:0;;;8888:15;;8874:30;;8849:55;:83;;;;-1:-1:-1;;;;;;8910:22:0;;;;;;:18;:22;;;;;;;;8908:24;8849:83;8845:288;;;8972:12;;8962:6;:22;;8954:35;;;;-1:-1:-1;;;8954:35:0;;9912:2:1;8954:35:0;;;9894:21:1;-1:-1:-1;9931:18:1;;;9924:29;9970:18;;8954:35:0;9710:284:1;8954:35:0;9042:14;;9032:6;9016:13;9026:2;-1:-1:-1;;;;;6426:18:0;6399:7;6426:18;;;:9;:18;;;;;;;6333:119;9016:13;:22;;;;:::i;:::-;:40;;9008:79;;;;-1:-1:-1;;;9008:79:0;;10331:2:1;9008:79:0;;;10313:21:1;10370:2;10350:18;;;10343:30;10409:28;10389:18;;;10382:56;10455:18;;9008:79:0;10129:350:1;9008:79:0;9106:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8845:288;9172:13;;-1:-1:-1;;;;;9164:21:0;;;9172:13;;9164:21;;;;:44;;-1:-1:-1;9195:13:0;;-1:-1:-1;;;;;9189:19:0;;;9195:13;;9189:19;;9164:44;9161:175;;;9241:79;9316:3;9241:70;9263:16;;9253:9;;:26;9252:58;;9295:15;;9252:58;;;9281:13;;9241:6;;:10;:70::i;:79::-;9229:91;;9161:175;9412:4;9363:28;6426:18;;;:9;:18;;;;;;9438:6;;-1:-1:-1;;;9438:6:0;;;;9437:7;:32;;;;-1:-1:-1;9456:13:0;;-1:-1:-1;;;;;9448:21:0;;;9456:13;;9448:21;;9437:32;:47;;;;-1:-1:-1;9473:11:0;;-1:-1:-1;;;9473:11:0;;;;9437:47;:89;;;;;9509:17;;9488:20;:38;9437:89;:122;;;;;9541:18;;9530:9;;:29;;9437:122;9433:423;;;9580:68;9597:50;9601:20;9622:24;9640:4;-1:-1:-1;;;;;6426:18:0;6399:7;6426:18;;;:9;:18;;;;;;;6333:119;9622:24;9597:3;:50::i;:::-;9580:16;:68::i;:::-;9696:21;9739:22;;9736:105;;9786:35;9799:21;9786:12;:35::i;:::-;9561:295;9433:423;8030:1839;7992:1877;9893:40;9911:21;:6;9922:9;9911:10;:21::i;:::-;-1:-1:-1;;;;;9893:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9879:13:0;;;;;;:9;:13;;;;;:54;9944:23;9952:4;9957:9;9944:7;:23::i;:::-;-1:-1:-1;;;;;;9994:15:0;;;;;;:9;:15;;;;;;:27;;10014:6;9994:19;:27::i;:::-;-1:-1:-1;;;;;9978:15:0;;;;;;;:9;:15;;;;;:43;;;;10037:41;;;;10056:21;:6;10067:9;10056:10;:21::i;:::-;10037:41;;1603:25:1;;;1591:2;1576:18;10037:41:0;;;;;;;7688:2398;;7619:2467;;;:::o;1486:190::-;1572:7;1608:12;1600:6;;;;1592:29;;;;-1:-1:-1;;;1592:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1632:9:0;1644:5;1648:1;1644;:5;:::i;:::-;1632:17;1486:190;-1:-1:-1;;;;;1486:190:0:o;10473:483::-;5281:6;:13;;-1:-1:-1;;;;5281:13:0;-1:-1:-1;;;5281:13:0;;;10575:16:::1;::::0;;10589:1:::1;10575:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10575:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10575:16:0::1;10551:40;;10620:4;10602;10607:1;10602:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10602:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10646:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10646:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10602:7;;10646:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10636:4;10641:1;10636:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10636:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10711:15:::1;::::0;10679:62:::1;::::0;10696:4:::1;::::0;10711:15:::1;10729:11:::0;10679:8:::1;:62::i;:::-;10752:15;::::0;:196:::1;::::0;-1:-1:-1;;;10752:196:0;;-1:-1:-1;;;;;10752:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10833:11;;10752:15:::1;::::0;10875:4;;10902::::1;::::0;10922:15:::1;::::0;10752:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5317:6:0;:14;;-1:-1:-1;;;;5317:14:0;;;-1:-1:-1;;;;10473:483:0:o;11168:92::-;11225:10;;:27;;:10;;;;-1:-1:-1;;;;;11225:10:0;;:27;;;;;;;;;;;;:10;:27;;;;;;;;;;;;;;;;;;;1684:246;1742:7;1766:1;1771;1766:6;1762:47;;-1:-1:-1;1796:1:0;1789:8;;1762:47;1819:9;1831:5;1835:1;1831;:5;:::i;:::-;1819:17;-1:-1:-1;1864:1:0;1855:5;1859:1;1819:17;1855:5;:::i;:::-;:10;1847:56;;;;-1:-1:-1;;;1847:56:0;;12282:2:1;1847:56:0;;;12264:21:1;12321:2;12301:18;;;12294:30;12360:34;12340:18;;;12333:62;-1:-1:-1;;;12411:18:1;;;12404:31;12452:19;;1847:56:0;12080:397:1;1847:56:0;1921:1;1684:246;-1:-1:-1;;;1684:246:0:o;1938:132::-;1996:7;2023:39;2027:1;2030;2023:39;;;;;;;;;;;;;;;;;:3;:39::i;10094:263::-;10162:13;10192:11;;10189:161;;10260:4;10242:24;;;;:9;:24;;;;;;:39;;10271:9;10242:28;:39::i;:::-;10235:4;10217:24;;;;:9;:24;;;;;;;:64;;;;10299:39;;-1:-1:-1;;;;;10299:39:0;;;;;;;10328:9;1603:25:1;;1591:2;1576:18;;1457:177;10299:39:0;;;;;;;;10094:263;;;;:::o;10367:98::-;10424:7;10451:1;10449;:3;10448:9;;10456:1;10448:9;;;-1:-1:-1;10454:1:0;10367:98;-1:-1:-1;10367:98:0:o;1342:136::-;1400:7;1427:43;1431:1;1434;1427:43;;;;;;;;;;;;;;;;;:3;:43::i;1155:179::-;1213:7;;1245:5;1249:1;1245;:5;:::i;:::-;1233:17;;1274:1;1269;:6;;1261:46;;;;-1:-1:-1;;;1261:46:0;;12684:2:1;1261:46:0;;;12666:21:1;12723:2;12703:18;;;12696:30;12762:29;12742:18;;;12735:57;12809:18;;1261:46:0;12482:351:1;2078:189:0;2164:7;2199:12;2192:5;2184:28;;;;-1:-1:-1;;;2184:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2223:9:0;2235:5;2239:1;2235;:5;:::i;14:250:1:-;99:1;109:113;123:6;120:1;117:13;109:113;;;199:11;;;193:18;180:11;;;173:39;145:2;138:10;109:113;;;-1:-1:-1;;256:1:1;238:16;;231:27;14:250::o;269:396::-;418:2;407:9;400:21;381:4;450:6;444:13;493:6;488:2;477:9;473:18;466:34;509:79;581:6;576:2;565:9;561:18;556:2;548:6;544:15;509:79;:::i;:::-;649:2;628:15;-1:-1:-1;;624:29:1;609:45;;;;656:2;605:54;;269:396;-1:-1:-1;;269:396:1:o;670:131::-;-1:-1:-1;;;;;745:31:1;;735:42;;725:70;;791:1;788;781:12;725:70;670:131;:::o;806:134::-;874:20;;903:31;874:20;903:31;:::i;:::-;806:134;;;:::o;945:315::-;1013:6;1021;1074:2;1062:9;1053:7;1049:23;1045:32;1042:52;;;1090:1;1087;1080:12;1042:52;1129:9;1116:23;1148:31;1173:5;1148:31;:::i;:::-;1198:5;1250:2;1235:18;;;;1222:32;;-1:-1:-1;;;945:315:1:o;1639:456::-;1716:6;1724;1732;1785:2;1773:9;1764:7;1760:23;1756:32;1753:52;;;1801:1;1798;1791:12;1753:52;1840:9;1827:23;1859:31;1884:5;1859:31;:::i;:::-;1909:5;-1:-1:-1;1966:2:1;1951:18;;1938:32;1979:33;1938:32;1979:33;:::i;:::-;1639:456;;2031:7;;-1:-1:-1;;;2085:2:1;2070:18;;;;2057:32;;1639:456::o;2289:127::-;2350:10;2345:3;2341:20;2338:1;2331:31;2381:4;2378:1;2371:15;2405:4;2402:1;2395:15;2421:1121;2505:6;2536:2;2579;2567:9;2558:7;2554:23;2550:32;2547:52;;;2595:1;2592;2585:12;2547:52;2635:9;2622:23;2664:18;2705:2;2697:6;2694:14;2691:34;;;2721:1;2718;2711:12;2691:34;2759:6;2748:9;2744:22;2734:32;;2804:7;2797:4;2793:2;2789:13;2785:27;2775:55;;2826:1;2823;2816:12;2775:55;2862:2;2849:16;2884:2;2880;2877:10;2874:36;;;2890:18;;:::i;:::-;2936:2;2933:1;2929:10;2968:2;2962:9;3031:2;3027:7;3022:2;3018;3014:11;3010:25;3002:6;2998:38;3086:6;3074:10;3071:22;3066:2;3054:10;3051:18;3048:46;3045:72;;;3097:18;;:::i;:::-;3133:2;3126:22;3183:18;;;3217:15;;;;-1:-1:-1;3259:11:1;;;3255:20;;;3287:19;;;3284:39;;;3319:1;3316;3309:12;3284:39;3343:11;;;;3363:148;3379:6;3374:3;3371:15;3363:148;;;3445:23;3464:3;3445:23;:::i;:::-;3433:36;;3396:12;;;;3489;;;;3363:148;;;3530:6;2421:1121;-1:-1:-1;;;;;;;;2421:1121:1:o;3547:247::-;3606:6;3659:2;3647:9;3638:7;3634:23;3630:32;3627:52;;;3675:1;3672;3665:12;3627:52;3714:9;3701:23;3733:31;3758:5;3733:31;:::i;4007:388::-;4075:6;4083;4136:2;4124:9;4115:7;4111:23;4107:32;4104:52;;;4152:1;4149;4142:12;4104:52;4191:9;4178:23;4210:31;4235:5;4210:31;:::i;:::-;4260:5;-1:-1:-1;4317:2:1;4302:18;;4289:32;4330:33;4289:32;4330:33;:::i;:::-;4382:7;4372:17;;;4007:388;;;;;:::o;4400:180::-;4459:6;4512:2;4500:9;4491:7;4487:23;4483:32;4480:52;;;4528:1;4525;4518:12;4480:52;-1:-1:-1;4551:23:1;;4400:180;-1:-1:-1;4400:180:1:o;4585:127::-;4646:10;4641:3;4637:20;4634:1;4627:31;4677:4;4674:1;4667:15;4701:4;4698:1;4691:15;4717:422;4806:1;4849:5;4806:1;4863:270;4884:7;4874:8;4871:21;4863:270;;;4943:4;4939:1;4935:6;4931:17;4925:4;4922:27;4919:53;;;4952:18;;:::i;:::-;5002:7;4992:8;4988:22;4985:55;;;5022:16;;;;4985:55;5101:22;;;;5061:15;;;;4863:270;;;4867:3;4717:422;;;;;:::o;5144:806::-;5193:5;5223:8;5213:80;;-1:-1:-1;5264:1:1;5278:5;;5213:80;5312:4;5302:76;;-1:-1:-1;5349:1:1;5363:5;;5302:76;5394:4;5412:1;5407:59;;;;5480:1;5475:130;;;;5387:218;;5407:59;5437:1;5428:10;;5451:5;;;5475:130;5512:3;5502:8;5499:17;5496:43;;;5519:18;;:::i;:::-;-1:-1:-1;;5575:1:1;5561:16;;5590:5;;5387:218;;5689:2;5679:8;5676:16;5670:3;5664:4;5661:13;5657:36;5651:2;5641:8;5638:16;5633:2;5627:4;5624:12;5620:35;5617:77;5614:159;;;-1:-1:-1;5726:19:1;;;5758:5;;5614:159;5805:34;5830:8;5824:4;5805:34;:::i;:::-;5875:6;5871:1;5867:6;5863:19;5854:7;5851:32;5848:58;;;5886:18;;:::i;:::-;5924:20;;5144:806;-1:-1:-1;;;5144:806:1:o;5955:140::-;6013:5;6042:47;6083:4;6073:8;6069:19;6063:4;6042:47;:::i;6100:168::-;6173:9;;;6204;;6221:15;;;6215:22;;6201:37;6191:71;;6242:18;;:::i;6273:356::-;6475:2;6457:21;;;6494:18;;;6487:30;6553:34;6548:2;6533:18;;6526:62;6620:2;6605:18;;6273:356::o;6634:127::-;6695:10;6690:3;6686:20;6683:1;6676:31;6726:4;6723:1;6716:15;6750:4;6747:1;6740:15;6766:135;6805:3;6826:17;;;6823:43;;6846:18;;:::i;:::-;-1:-1:-1;6893:1:1;6882:13;;6766:135::o;8934:289::-;9065:3;9103:6;9097:13;9119:66;9178:6;9173:3;9166:4;9158:6;9154:17;9119:66;:::i;:::-;9201:16;;;;;8934:289;-1:-1:-1;;8934:289:1:o;9999:125::-;10064:9;;;10085:10;;;10082:36;;;10098:18;;:::i;10484:128::-;10551:9;;;10572:11;;;10569:37;;;10586:18;;:::i;10617:251::-;10687:6;10740:2;10728:9;10719:7;10715:23;10711:32;10708:52;;;10756:1;10753;10746:12;10708:52;10788:9;10782:16;10807:31;10832:5;10807:31;:::i;10873:980::-;11135:4;11183:3;11172:9;11168:19;11214:6;11203:9;11196:25;11240:2;11278:6;11273:2;11262:9;11258:18;11251:34;11321:3;11316:2;11305:9;11301:18;11294:31;11345:6;11380;11374:13;11411:6;11403;11396:22;11449:3;11438:9;11434:19;11427:26;;11488:2;11480:6;11476:15;11462:29;;11509:1;11519:195;11533:6;11530:1;11527:13;11519:195;;;11598:13;;-1:-1:-1;;;;;11594:39:1;11582:52;;11689:15;;;;11654:12;;;;11630:1;11548:9;11519:195;;;-1:-1:-1;;;;;;;11770:32:1;;;;11765:2;11750:18;;11743:60;-1:-1:-1;;;11834:3:1;11819:19;11812:35;11731:3;10873:980;-1:-1:-1;;;10873:980:1:o;11858:217::-;11898:1;11924;11914:132;;11968:10;11963:3;11959:20;11956:1;11949:31;12003:4;12000:1;11993:15;12031:4;12028:1;12021:15;11914:132;-1:-1:-1;12060:9:1;;11858:217::o

Swarm Source

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