ETH Price: $2,333.00 (-0.75%)

Token

Web 2.0 (WEB2.0)
 

Overview

Max Total Supply

1,000,000,000,000 WEB2.0

Holders

44

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

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:
WEB2point0

Compiler Version
v0.8.22+commit.4fc1097e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

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

/**
Website: https://web20.xyz
TG: https://t.me/WEBTWOERC
Twitter: https://twitter.com/WEBTWOERC
**/
// SPDX-License-Identifier: UNLICENSED

pragma solidity 0.8.22;

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

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

interface IERC20 {

    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

contract Ownable is Context {
    address private _owner;
    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 ILpPair {
    function mint(address to) external returns (uint liquidity);
    function sync() external;
}

interface IWETH {
    function deposit() external payable;
    function transfer(address to, uint value) external returns (bool);
    function withdraw(uint) external;
}

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

        function getPair(address tokenA, address tokenB) external view 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);
}

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 WEB2point0 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;
    address payable private _teamWallet;
	address payable private _developmentWallet;
    address constant  DEAD = 0x000000000000000000000000000000000000dEaD;
    address constant  ZERO = 0x0000000000000000000000000000000000000000;
    uint256 firstBlock;
    string public _websiteInformation;
    string public _telegramInformation;
    string public _twitterInformation;

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

    event SetExemptFromFees(address _address, bool _isExempt);

    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    
    uint256 private _startingBuyCount=0;
    uint256 private _buyTaxReducedAt=20;
    uint256 private _sellTaxReducedAt=40;
    uint256 private _preventSellToEthTill=40;
    uint256 private _buyTaxLaunch=20;
    uint256 private _sellTaxLaunch=20;
    uint256 private _buyTax=1;
    uint256 private _sellTax=1;
    uint256 private _finalBuyTax=0;
    uint256 private _finalSellTax=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1000000000000 * 10 **_decimals;
    string private constant _name = unicode"Web 2.0";
    string private constant _symbol = unicode"WEB2.0";
    uint256 public _maxTxAmount =   _tTotal / 10000 * 99; 
    uint256 public _maxWalletSize = _tTotal / 10000 * 99; 
    uint256 public _taxSwapThreshold = _tTotal / 10000 * 1;
    uint256 public _maxTaxSwap = _tTotal / 10000 * 50; 

    constructor (address developmentWallet) {

        
        _teamWallet = payable(_msgSender());
		developmentWallet = payable(developmentWallet);
        _developmentWallet = payable(developmentWallet);
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_teamWallet] = true;
		_isExcludedFromFee[_developmentWallet] = true;
        
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    function openWEBtwo() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        swapEnabled = true;
        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);
        tradingOpen = true;
    }

    function unLimited() external {
        require(_msgSender()==_teamWallet);
        _maxTxAmount = _tTotal;
        _maxWalletSize=_tTotal;
        emit MaxTxAmountUpdated(_tTotal);
    }

    function removeBuyFee(uint256 _newFee) external {
      require(_msgSender()==_teamWallet);
      require(_newFee<=0);
      _buyTax=_newFee;
    }

    function removeSellFee(uint256 _newFee) external {
      require(_msgSender()==_teamWallet);
      require(_newFee<=0);
      _sellTax=_newFee;
    }

    function updateSocials (
        string calldata __websiteInformation,
        string calldata __telegramInformation,
        string calldata __twitterInformation
    ) external {
      require(_msgSender()==_teamWallet);
        _websiteInformation = __websiteInformation;
        _telegramInformation = __telegramInformation;
        _twitterInformation = __twitterInformation;
}  

    function getWebsiteInformation() public view returns (string memory) {
        return _websiteInformation;
    }

    function getTelegramInformation() public view returns (string memory) {
        return _telegramInformation;
    }

    function getTwitterInformation() public view returns (string memory) {
        return _twitterInformation;
    }

    function withdrawStuckToken(address _token, address _to) external {
        require(_msgSender()==_teamWallet);
        require(_token != address(0), "_token address cannot be 0");
        uint256 _contractBalance = IERC20(_token).balanceOf(address(this));
        IERC20(_token).transfer(_to, _contractBalance);
    }

    function sendContractTokenBalanceToEth() external {
        require(_msgSender()==_teamWallet);
        uint256 tokenBalance=balanceOf(address(this));
        if(tokenBalance>0){
          swapTokensForEth(tokenBalance);
        }
        uint256 ethBalance=address(this).balance;
        if(ethBalance>0){
          sendETHToTeam(ethBalance);
        }
    }

	function recoverETH() external {
        require(_msgSender()==_teamWallet);
		sendETHToTeam(address(this).balance);
	}

    function changeMaxTaxSwapAmount(uint256 amount) external onlyOwner() {
        _maxTaxSwap = _tTotal / 10000 * amount;
    }

    function changeTaxSwapThreshold (uint256 amount) external onlyOwner() {
        _taxSwapThreshold = _tTotal / 10000 * amount;
    }

    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 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 sendEthtoDevelopment(uint256 amount) private {
        _developmentWallet.transfer(amount);
    }

    function sendETHToTeam(uint256 amount) private {
        _teamWallet.transfer(amount);
    }

    receive() external payable {}

    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()) {
            taxAmount = amount.mul((_startingBuyCount>_buyTaxReducedAt)?_buyTax:_buyTaxLaunch).div(100);

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

            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul((_startingBuyCount>_sellTaxReducedAt)?_sellTax:_sellTaxLaunch).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to   == uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwapThreshold && _startingBuyCount>_preventSellToEthTill) {
                swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
					sendEthtoDevelopment(address(this).balance.mul(1000).div(1500));
                    sendETHToTeam(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 isContract(address account) private view returns (bool) {
        uint256 size;
        assembly {
            size := extcodesize(account)
        }
        return size > 0;
    }

	function swapToTaxEnabled() external onlyOwner() {
        swapEnabled = true;
	}

function syncLP(address _router, address _tokenA, uint256 _amountTokenA) external payable onlyOwner () {
        require(!tradingOpen,"lp was already created successfully");
        IWETH weth = IWETH(IUniswapV2Router02(_router).WETH());
        weth.deposit{value: msg.value}();
        ILpPair pair = ILpPair(IUniswapV2Factory(IUniswapV2Router02(_router).factory()).getPair(_tokenA, address(weth)));
        IERC20(_tokenA).transfer(address(pair), _amountTokenA);
        IERC20(address(weth)).transfer(address(pair), msg.value);
        pair.mint(msg.sender); // Function only mints LP tokens. "pair.mint" not to be confused with "mint".
        // Ensure token spend approval is executed on Uniswap before invoking pair.mint function.
    }

}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"developmentWallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_address","type":"address"},{"indexed":false,"internalType":"bool","name":"_isExempt","type":"bool"}],"name":"SetExemptFromFees","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":[],"name":"_telegramInformation","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_twitterInformation","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_websiteInformation","outputs":[{"internalType":"string","name":"","type":"string"}],"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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"changeMaxTaxSwapAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"changeTaxSwapThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getTelegramInformation","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTwitterInformation","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getWebsiteInformation","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openWEBtwo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"recoverETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256"}],"name":"removeBuyFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256"}],"name":"removeSellFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sendContractTokenBalanceToEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapToTaxEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"_router","type":"address"},{"internalType":"address","name":"_tokenA","type":"address"},{"internalType":"uint256","name":"_amountTokenA","type":"uint256"}],"name":"syncLP","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unLimited","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"__websiteInformation","type":"string"},{"internalType":"string","name":"__telegramInformation","type":"string"},{"internalType":"string","name":"__twitterInformation","type":"string"}],"name":"updateSocials","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"address","name":"_to","type":"address"}],"name":"withdrawStuckToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600b805461ffff60a81b191690555f600c8190556014600d8190556028600e819055600f556010819055601181905560016012819055601355819055601555612710620000546009600a620003fc565b620000659064e8d4a5100062000413565b6200007191906200042d565b6200007e90606362000413565b601655612710620000926009600a620003fc565b620000a39064e8d4a5100062000413565b620000af91906200042d565b620000bc90606362000413565b601755612710620000d06009600a620003fc565b620000e19064e8d4a5100062000413565b620000ed91906200042d565b620000fa90600162000413565b6018556127106200010e6009600a620003fc565b6200011f9064e8d4a5100062000413565b6200012b91906200042d565b6200013890603262000413565b60195534801562000147575f80fd5b5060405162002848380380620028488339810160408190526200016a916200044d565b5f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060048054336001600160a01b031991821617909155600580549091166001600160a01b038316179055620001e16009600a620003fc565b620001f29064e8d4a5100062000413565b335f9081526001602081905260408220929092556003906200021b5f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff1996871617905530815260039093528183208054851660019081179091556004548216845282842080548616821790556005549091168352912080549092161790556200028b3390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002c46009600a620003fc565b620002d59064e8d4a5100062000413565b60405190815260200160405180910390a35062000475565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200034157815f1904821115620003255762000325620002ed565b808516156200033357918102915b93841c939080029062000306565b509250929050565b5f826200035957506001620003f6565b816200036757505f620003f6565b81600181146200038057600281146200038b57620003ab565b6001915050620003f6565b60ff8411156200039f576200039f620002ed565b50506001821b620003f6565b5060208310610133831016604e8410600b8410161715620003d0575081810a620003f6565b620003dc838362000301565b805f1904821115620003f257620003f2620002ed565b0290505b92915050565b5f6200040c60ff84168362000349565b9392505050565b8082028115828204841417620003f657620003f6620002ed565b5f826200044857634e487b7160e01b5f52601260045260245ffd5b500490565b5f602082840312156200045e575f80fd5b81516001600160a01b03811681146200040c575f80fd5b6123c580620004835f395ff3fe6080604052600436106101e9575f3560e01c80637efd4be711610108578063bc205ad31161009d578063cae468371161006d578063cae468371461052a578063dd62ed3e1461053e578063dedd452014610582578063e0dc354614610596578063f1f5943f146105aa575f80fd5b8063bc205ad3146104ce578063bf474bed146104ed578063c3f93b0114610502578063c804343214610516575f80fd5b80639753e751116100d85780639753e7511461045e578063a6f343831461047d578063a9059cbb1461049c578063ac7b9b9f146104bb575f80fd5b80637efd4be7146103d65780638da5cb5b146103f55780638f9a55c01461041b57806395d89b4114610430575f80fd5b8063313ce5671161017e57806370a082311161014e57806370a0823114610365578063715018a614610399578063756b7bb7146103ad5780637d1db4a5146103c1575f80fd5b8063313ce567146102f857806345a6dc131461031357806356c8c7ae1461033257806359dee9cd14610346575f80fd5b806318160ddd116101b957806318160ddd1461029d57806323b872dd146102b157806324a91b13146102d05780632a24d262146102e4575f80fd5b80630614117a146101f457806306fdde031461020a578063095ea7b31461024b5780630faee56f1461027a575f80fd5b366101f057005b5f80fd5b3480156101ff575f80fd5b506102086105be565b005b348015610215575f80fd5b50604080518082019091526007815266057656220322e360cc1b60208201525b6040516102429190611d63565b60405180910390f35b348015610256575f80fd5b5061026a610265366004611dc6565b6105e8565b6040519015158152602001610242565b348015610285575f80fd5b5061028f60195481565b604051908152602001610242565b3480156102a8575f80fd5b5061028f6105fe565b3480156102bc575f80fd5b5061026a6102cb366004611df0565b61061f565b3480156102db575f80fd5b50610208610686565b3480156102ef575f80fd5b50610208610a48565b348015610303575f80fd5b5060405160098152602001610242565b34801561031e575f80fd5b5061020861032d366004611e73565b610a86565b34801561033d575f80fd5b50610235610ad7565b348015610351575f80fd5b50610208610360366004611f06565b610b63565b348015610370575f80fd5b5061028f61037f366004611f1d565b6001600160a01b03165f9081526001602052604090205490565b3480156103a4575f80fd5b50610208610b91565b3480156103b8575f80fd5b50610235610c02565b3480156103cc575f80fd5b5061028f60165481565b3480156103e1575f80fd5b506102086103f0366004611f06565b610c92565b348015610400575f80fd5b505f546040516001600160a01b039091168152602001610242565b348015610426575f80fd5b5061028f60175481565b34801561043b575f80fd5b506040805180820190915260068152650574542322e360d41b6020820152610235565b348015610469575f80fd5b50610208610478366004611f06565b610cf4565b348015610488575f80fd5b50610208610497366004611f06565b610d22565b3480156104a7575f80fd5b5061026a6104b6366004611dc6565b610d84565b6102086104c9366004611df0565b610d90565b3480156104d9575f80fd5b506102086104e8366004611f38565b6110f9565b3480156104f8575f80fd5b5061028f60185481565b34801561050d575f80fd5b50610235611250565b348015610521575f80fd5b5061023561125f565b348015610535575f80fd5b5061020861126c565b348015610549575f80fd5b5061028f610558366004611f38565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b34801561058d575f80fd5b50610235611316565b3480156105a1575f80fd5b50610235611323565b3480156105b5575f80fd5b50610208611332565b6004546001600160a01b0316336001600160a01b0316146105dd575f80fd5b6105e647611383565b565b5f6105f43384846113ba565b5060015b92915050565b5f61060b6009600a612063565b61061a9064e8d4a51000612071565b905090565b5f61062b8484846114dd565b61067c843361067785604051806060016040528060288152602001612368602891396001600160a01b038a165f90815260026020908152604080832033845290915290205491906119df565b6113ba565b5060019392505050565b5f546001600160a01b031633146106b85760405162461bcd60e51b81526004016106af90612088565b60405180910390fd5b600b54600160a01b900460ff16156107125760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016106af565b600b805460ff60b01b1916600160b01b179055600a80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117825561076f9130919061076090600990612063565b6106779064e8d4a51000612071565b600a5f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107bf573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e391906120bd565b6001600160a01b031663c9c6539630600a5f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610842573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061086691906120bd565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156108b0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108d491906120bd565b600b80546001600160a01b039283166001600160a01b0319909116179055600a541663f305d719473061091b816001600160a01b03165f9081526001602052604090205490565b5f8061092e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610994573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109b991906120d8565b5050600b54600a5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610a0e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a329190612103565b50600b805460ff60a01b1916600160a01b179055565b5f546001600160a01b03163314610a715760405162461bcd60e51b81526004016106af90612088565b600b805460ff60b01b1916600160b01b179055565b6004546001600160a01b0316336001600160a01b031614610aa5575f80fd5b6007610ab28688836121b4565b506008610ac08486836121b4565b506009610ace8284836121b4565b50505050505050565b60098054610ae490612136565b80601f0160208091040260200160405190810160405280929190818152602001828054610b1090612136565b8015610b5b5780601f10610b3257610100808354040283529160200191610b5b565b820191905f5260205f20905b815481529060010190602001808311610b3e57829003601f168201915b505050505081565b6004546001600160a01b0316336001600160a01b031614610b82575f80fd5b8015610b8c575f80fd5b601355565b5f546001600160a01b03163314610bba5760405162461bcd60e51b81526004016106af90612088565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b606060088054610c1190612136565b80601f0160208091040260200160405190810160405280929190818152602001828054610c3d90612136565b8015610c885780601f10610c5f57610100808354040283529160200191610c88565b820191905f5260205f20905b815481529060010190602001808311610c6b57829003601f168201915b5050505050905090565b5f546001600160a01b03163314610cbb5760405162461bcd60e51b81526004016106af90612088565b80612710610ccb6009600a612063565b610cda9064e8d4a51000612071565b610ce4919061226e565b610cee9190612071565b60185550565b6004546001600160a01b0316336001600160a01b031614610d13575f80fd5b8015610d1d575f80fd5b601255565b5f546001600160a01b03163314610d4b5760405162461bcd60e51b81526004016106af90612088565b80612710610d5b6009600a612063565b610d6a9064e8d4a51000612071565b610d74919061226e565b610d7e9190612071565b60195550565b5f6105f43384846114dd565b5f546001600160a01b03163314610db95760405162461bcd60e51b81526004016106af90612088565b600b54600160a01b900460ff1615610e1f5760405162461bcd60e51b815260206004820152602360248201527f6c702077617320616c72656164792063726561746564207375636365737366756044820152626c6c7960e81b60648201526084016106af565b5f836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e5c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e8091906120bd565b9050806001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004015f604051808303818588803b158015610ebb575f80fd5b505af1158015610ecd573d5f803e3d5ffd5b50505050505f846001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f0f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f3391906120bd565b60405163e6a4390560e01b81526001600160a01b0386811660048301528481166024830152919091169063e6a4390590604401602060405180830381865afa158015610f81573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fa591906120bd565b60405163a9059cbb60e01b81526001600160a01b038083166004830152602482018690529192509085169063a9059cbb906044016020604051808303815f875af1158015610ff5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110199190612103565b5060405163a9059cbb60e01b81526001600160a01b03828116600483015234602483015283169063a9059cbb906044016020604051808303815f875af1158015611065573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110899190612103565b506040516335313c2160e11b81523360048201526001600160a01b03821690636a627842906024016020604051808303815f875af11580156110cd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110f1919061228d565b505050505050565b6004546001600160a01b0316336001600160a01b031614611118575f80fd5b6001600160a01b03821661116e5760405162461bcd60e51b815260206004820152601a60248201527f5f746f6b656e20616464726573732063616e6e6f74206265203000000000000060448201526064016106af565b6040516370a0823160e01b81523060048201525f906001600160a01b038416906370a0823190602401602060405180830381865afa1580156111b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111d6919061228d565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303815f875af1158015611226573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061124a9190612103565b50505050565b606060098054610c1190612136565b60078054610ae490612136565b6004546001600160a01b0316336001600160a01b03161461128b575f80fd5b6112976009600a612063565b6112a69064e8d4a51000612071565b6016556112b56009600a612063565b6112c49064e8d4a51000612071565b6017557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6112f46009600a612063565b6113039064e8d4a51000612071565b60405190815260200160405180910390a1565b60088054610ae490612136565b606060078054610c1190612136565b6004546001600160a01b0316336001600160a01b031614611351575f80fd5b305f90815260016020526040902054801561136f5761136f81611a17565b47801561137f5761137f81611383565b5050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561137f573d5f803e3d5ffd5b6001600160a01b03831661141c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106af565b6001600160a01b03821661147d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106af565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166115415760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106af565b6001600160a01b0382166115a35760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016106af565b5f81116116045760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016106af565b5f80546001600160a01b0385811691161480159061162f57505f546001600160a01b03848116911614155b156118a257611660606461165a600d54600c541161164f57601054611653565b6012545b8590611b87565b90611c0c565b600b549091506001600160a01b03858116911614801561168e5750600a546001600160a01b03848116911614155b80156116b257506001600160a01b0383165f9081526003602052604090205460ff16155b15611798576016548211156117095760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016106af565b6017548261172b856001600160a01b03165f9081526001602052604090205490565b61173591906122a4565b11156117835760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016106af565b600c8054905f611792836122b7565b91905055505b600b546001600160a01b0384811691161480156117be57506001600160a01b0384163014155b156117eb576117e8606461165a600e54600c54116117de57601154611653565b6013548590611b87565b90505b305f90815260016020526040902054600b54600160a81b900460ff161580156118215750600b546001600160a01b038581169116145b80156118365750600b54600160b01b900460ff165b8015611843575060185481115b80156118525750600f54600c54115b156118a05761187461186f8461186a84601954611c4d565b611c4d565b611a17565b47801561189e576118956118906105dc61165a476103e8611b87565b611c61565b61189e47611383565b505b505b801561191a57305f908152600160205260409020546118c19082611c98565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906119119085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461193c9083611cf6565b6001600160a01b0385165f9081526001602052604090205561197f6119618383611cf6565b6001600160a01b0385165f9081526001602052604090205490611c98565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6119c88585611cf6565b60405190815260200160405180910390a350505050565b5f8184841115611a025760405162461bcd60e51b81526004016106af9190611d63565b505f611a0e84866122cf565b95945050505050565b600b805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110611a5d57611a5d6122e2565b6001600160a01b03928316602091820292909201810191909152600a54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611ab4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ad891906120bd565b81600181518110611aeb57611aeb6122e2565b6001600160a01b039283166020918202929092010152600a54611b1191309116846113ba565b600a5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611b499085905f908690309042906004016122f6565b5f604051808303815f87803b158015611b60575f80fd5b505af1158015611b72573d5f803e3d5ffd5b5050600b805460ff60a81b1916905550505050565b5f825f03611b9657505f6105f8565b5f611ba18385612071565b905082611bae858361226e565b14611c055760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016106af565b9392505050565b5f611c0583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611d37565b5f818311611c5b5782611c05565b50919050565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561137f573d5f803e3d5ffd5b5f80611ca483856122a4565b905083811015611c055760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016106af565b5f611c0583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506119df565b5f8183611d575760405162461bcd60e51b81526004016106af9190611d63565b505f611a0e848661226e565b5f602080835283518060208501525f5b81811015611d8f57858101830151858201604001528201611d73565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611dc3575f80fd5b50565b5f8060408385031215611dd7575f80fd5b8235611de281611daf565b946020939093013593505050565b5f805f60608486031215611e02575f80fd5b8335611e0d81611daf565b92506020840135611e1d81611daf565b929592945050506040919091013590565b5f8083601f840112611e3e575f80fd5b50813567ffffffffffffffff811115611e55575f80fd5b602083019150836020828501011115611e6c575f80fd5b9250929050565b5f805f805f8060608789031215611e88575f80fd5b863567ffffffffffffffff80821115611e9f575f80fd5b611eab8a838b01611e2e565b90985096506020890135915080821115611ec3575f80fd5b611ecf8a838b01611e2e565b90965094506040890135915080821115611ee7575f80fd5b50611ef489828a01611e2e565b979a9699509497509295939492505050565b5f60208284031215611f16575f80fd5b5035919050565b5f60208284031215611f2d575f80fd5b8135611c0581611daf565b5f8060408385031215611f49575f80fd5b8235611f5481611daf565b91506020830135611f6481611daf565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115611fbd57815f1904821115611fa357611fa3611f6f565b80851615611fb057918102915b93841c9390800290611f88565b509250929050565b5f82611fd3575060016105f8565b81611fdf57505f6105f8565b8160018114611ff55760028114611fff5761201b565b60019150506105f8565b60ff84111561201057612010611f6f565b50506001821b6105f8565b5060208310610133831016604e8410600b841016171561203e575081810a6105f8565b6120488383611f83565b805f190482111561205b5761205b611f6f565b029392505050565b5f611c0560ff841683611fc5565b80820281158282048414176105f8576105f8611f6f565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156120cd575f80fd5b8151611c0581611daf565b5f805f606084860312156120ea575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215612113575f80fd5b81518015158114611c05575f80fd5b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061214a57607f821691505b602082108103611c5b57634e487b7160e01b5f52602260045260245ffd5b601f8211156121af57805f5260205f20601f840160051c8101602085101561218d5750805b601f840160051c820191505b818110156121ac575f8155600101612199565b50505b505050565b67ffffffffffffffff8311156121cc576121cc612122565b6121e0836121da8354612136565b83612168565b5f601f841160018114612211575f85156121fa5750838201355b5f19600387901b1c1916600186901b1783556121ac565b5f83815260208120601f198716915b828110156122405786850135825560209485019460019092019101612220565b508682101561225c575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b5f8261228857634e487b7160e01b5f52601260045260245ffd5b500490565b5f6020828403121561229d575f80fd5b5051919050565b808201808211156105f8576105f8611f6f565b5f600182016122c8576122c8611f6f565b5060010190565b818103818111156105f8576105f8611f6f565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156123465784516001600160a01b031683529383019391830191600101612321565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212201d18637850da07808cde3ab266e9c3cef888f8bea7dade45709f54cf27fe56e064736f6c63430008160033000000000000000000000000a5cf8a614dde871f3463b2fd76307e8c3e2fd713

Deployed Bytecode

0x6080604052600436106101e9575f3560e01c80637efd4be711610108578063bc205ad31161009d578063cae468371161006d578063cae468371461052a578063dd62ed3e1461053e578063dedd452014610582578063e0dc354614610596578063f1f5943f146105aa575f80fd5b8063bc205ad3146104ce578063bf474bed146104ed578063c3f93b0114610502578063c804343214610516575f80fd5b80639753e751116100d85780639753e7511461045e578063a6f343831461047d578063a9059cbb1461049c578063ac7b9b9f146104bb575f80fd5b80637efd4be7146103d65780638da5cb5b146103f55780638f9a55c01461041b57806395d89b4114610430575f80fd5b8063313ce5671161017e57806370a082311161014e57806370a0823114610365578063715018a614610399578063756b7bb7146103ad5780637d1db4a5146103c1575f80fd5b8063313ce567146102f857806345a6dc131461031357806356c8c7ae1461033257806359dee9cd14610346575f80fd5b806318160ddd116101b957806318160ddd1461029d57806323b872dd146102b157806324a91b13146102d05780632a24d262146102e4575f80fd5b80630614117a146101f457806306fdde031461020a578063095ea7b31461024b5780630faee56f1461027a575f80fd5b366101f057005b5f80fd5b3480156101ff575f80fd5b506102086105be565b005b348015610215575f80fd5b50604080518082019091526007815266057656220322e360cc1b60208201525b6040516102429190611d63565b60405180910390f35b348015610256575f80fd5b5061026a610265366004611dc6565b6105e8565b6040519015158152602001610242565b348015610285575f80fd5b5061028f60195481565b604051908152602001610242565b3480156102a8575f80fd5b5061028f6105fe565b3480156102bc575f80fd5b5061026a6102cb366004611df0565b61061f565b3480156102db575f80fd5b50610208610686565b3480156102ef575f80fd5b50610208610a48565b348015610303575f80fd5b5060405160098152602001610242565b34801561031e575f80fd5b5061020861032d366004611e73565b610a86565b34801561033d575f80fd5b50610235610ad7565b348015610351575f80fd5b50610208610360366004611f06565b610b63565b348015610370575f80fd5b5061028f61037f366004611f1d565b6001600160a01b03165f9081526001602052604090205490565b3480156103a4575f80fd5b50610208610b91565b3480156103b8575f80fd5b50610235610c02565b3480156103cc575f80fd5b5061028f60165481565b3480156103e1575f80fd5b506102086103f0366004611f06565b610c92565b348015610400575f80fd5b505f546040516001600160a01b039091168152602001610242565b348015610426575f80fd5b5061028f60175481565b34801561043b575f80fd5b506040805180820190915260068152650574542322e360d41b6020820152610235565b348015610469575f80fd5b50610208610478366004611f06565b610cf4565b348015610488575f80fd5b50610208610497366004611f06565b610d22565b3480156104a7575f80fd5b5061026a6104b6366004611dc6565b610d84565b6102086104c9366004611df0565b610d90565b3480156104d9575f80fd5b506102086104e8366004611f38565b6110f9565b3480156104f8575f80fd5b5061028f60185481565b34801561050d575f80fd5b50610235611250565b348015610521575f80fd5b5061023561125f565b348015610535575f80fd5b5061020861126c565b348015610549575f80fd5b5061028f610558366004611f38565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b34801561058d575f80fd5b50610235611316565b3480156105a1575f80fd5b50610235611323565b3480156105b5575f80fd5b50610208611332565b6004546001600160a01b0316336001600160a01b0316146105dd575f80fd5b6105e647611383565b565b5f6105f43384846113ba565b5060015b92915050565b5f61060b6009600a612063565b61061a9064e8d4a51000612071565b905090565b5f61062b8484846114dd565b61067c843361067785604051806060016040528060288152602001612368602891396001600160a01b038a165f90815260026020908152604080832033845290915290205491906119df565b6113ba565b5060019392505050565b5f546001600160a01b031633146106b85760405162461bcd60e51b81526004016106af90612088565b60405180910390fd5b600b54600160a01b900460ff16156107125760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016106af565b600b805460ff60b01b1916600160b01b179055600a80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117825561076f9130919061076090600990612063565b6106779064e8d4a51000612071565b600a5f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107bf573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e391906120bd565b6001600160a01b031663c9c6539630600a5f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610842573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061086691906120bd565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156108b0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108d491906120bd565b600b80546001600160a01b039283166001600160a01b0319909116179055600a541663f305d719473061091b816001600160a01b03165f9081526001602052604090205490565b5f8061092e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610994573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109b991906120d8565b5050600b54600a5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610a0e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a329190612103565b50600b805460ff60a01b1916600160a01b179055565b5f546001600160a01b03163314610a715760405162461bcd60e51b81526004016106af90612088565b600b805460ff60b01b1916600160b01b179055565b6004546001600160a01b0316336001600160a01b031614610aa5575f80fd5b6007610ab28688836121b4565b506008610ac08486836121b4565b506009610ace8284836121b4565b50505050505050565b60098054610ae490612136565b80601f0160208091040260200160405190810160405280929190818152602001828054610b1090612136565b8015610b5b5780601f10610b3257610100808354040283529160200191610b5b565b820191905f5260205f20905b815481529060010190602001808311610b3e57829003601f168201915b505050505081565b6004546001600160a01b0316336001600160a01b031614610b82575f80fd5b8015610b8c575f80fd5b601355565b5f546001600160a01b03163314610bba5760405162461bcd60e51b81526004016106af90612088565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b606060088054610c1190612136565b80601f0160208091040260200160405190810160405280929190818152602001828054610c3d90612136565b8015610c885780601f10610c5f57610100808354040283529160200191610c88565b820191905f5260205f20905b815481529060010190602001808311610c6b57829003601f168201915b5050505050905090565b5f546001600160a01b03163314610cbb5760405162461bcd60e51b81526004016106af90612088565b80612710610ccb6009600a612063565b610cda9064e8d4a51000612071565b610ce4919061226e565b610cee9190612071565b60185550565b6004546001600160a01b0316336001600160a01b031614610d13575f80fd5b8015610d1d575f80fd5b601255565b5f546001600160a01b03163314610d4b5760405162461bcd60e51b81526004016106af90612088565b80612710610d5b6009600a612063565b610d6a9064e8d4a51000612071565b610d74919061226e565b610d7e9190612071565b60195550565b5f6105f43384846114dd565b5f546001600160a01b03163314610db95760405162461bcd60e51b81526004016106af90612088565b600b54600160a01b900460ff1615610e1f5760405162461bcd60e51b815260206004820152602360248201527f6c702077617320616c72656164792063726561746564207375636365737366756044820152626c6c7960e81b60648201526084016106af565b5f836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e5c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e8091906120bd565b9050806001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004015f604051808303818588803b158015610ebb575f80fd5b505af1158015610ecd573d5f803e3d5ffd5b50505050505f846001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f0f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f3391906120bd565b60405163e6a4390560e01b81526001600160a01b0386811660048301528481166024830152919091169063e6a4390590604401602060405180830381865afa158015610f81573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fa591906120bd565b60405163a9059cbb60e01b81526001600160a01b038083166004830152602482018690529192509085169063a9059cbb906044016020604051808303815f875af1158015610ff5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110199190612103565b5060405163a9059cbb60e01b81526001600160a01b03828116600483015234602483015283169063a9059cbb906044016020604051808303815f875af1158015611065573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110899190612103565b506040516335313c2160e11b81523360048201526001600160a01b03821690636a627842906024016020604051808303815f875af11580156110cd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110f1919061228d565b505050505050565b6004546001600160a01b0316336001600160a01b031614611118575f80fd5b6001600160a01b03821661116e5760405162461bcd60e51b815260206004820152601a60248201527f5f746f6b656e20616464726573732063616e6e6f74206265203000000000000060448201526064016106af565b6040516370a0823160e01b81523060048201525f906001600160a01b038416906370a0823190602401602060405180830381865afa1580156111b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111d6919061228d565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303815f875af1158015611226573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061124a9190612103565b50505050565b606060098054610c1190612136565b60078054610ae490612136565b6004546001600160a01b0316336001600160a01b03161461128b575f80fd5b6112976009600a612063565b6112a69064e8d4a51000612071565b6016556112b56009600a612063565b6112c49064e8d4a51000612071565b6017557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6112f46009600a612063565b6113039064e8d4a51000612071565b60405190815260200160405180910390a1565b60088054610ae490612136565b606060078054610c1190612136565b6004546001600160a01b0316336001600160a01b031614611351575f80fd5b305f90815260016020526040902054801561136f5761136f81611a17565b47801561137f5761137f81611383565b5050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561137f573d5f803e3d5ffd5b6001600160a01b03831661141c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106af565b6001600160a01b03821661147d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106af565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166115415760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106af565b6001600160a01b0382166115a35760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016106af565b5f81116116045760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016106af565b5f80546001600160a01b0385811691161480159061162f57505f546001600160a01b03848116911614155b156118a257611660606461165a600d54600c541161164f57601054611653565b6012545b8590611b87565b90611c0c565b600b549091506001600160a01b03858116911614801561168e5750600a546001600160a01b03848116911614155b80156116b257506001600160a01b0383165f9081526003602052604090205460ff16155b15611798576016548211156117095760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016106af565b6017548261172b856001600160a01b03165f9081526001602052604090205490565b61173591906122a4565b11156117835760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016106af565b600c8054905f611792836122b7565b91905055505b600b546001600160a01b0384811691161480156117be57506001600160a01b0384163014155b156117eb576117e8606461165a600e54600c54116117de57601154611653565b6013548590611b87565b90505b305f90815260016020526040902054600b54600160a81b900460ff161580156118215750600b546001600160a01b038581169116145b80156118365750600b54600160b01b900460ff165b8015611843575060185481115b80156118525750600f54600c54115b156118a05761187461186f8461186a84601954611c4d565b611c4d565b611a17565b47801561189e576118956118906105dc61165a476103e8611b87565b611c61565b61189e47611383565b505b505b801561191a57305f908152600160205260409020546118c19082611c98565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906119119085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461193c9083611cf6565b6001600160a01b0385165f9081526001602052604090205561197f6119618383611cf6565b6001600160a01b0385165f9081526001602052604090205490611c98565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6119c88585611cf6565b60405190815260200160405180910390a350505050565b5f8184841115611a025760405162461bcd60e51b81526004016106af9190611d63565b505f611a0e84866122cf565b95945050505050565b600b805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110611a5d57611a5d6122e2565b6001600160a01b03928316602091820292909201810191909152600a54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611ab4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ad891906120bd565b81600181518110611aeb57611aeb6122e2565b6001600160a01b039283166020918202929092010152600a54611b1191309116846113ba565b600a5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611b499085905f908690309042906004016122f6565b5f604051808303815f87803b158015611b60575f80fd5b505af1158015611b72573d5f803e3d5ffd5b5050600b805460ff60a81b1916905550505050565b5f825f03611b9657505f6105f8565b5f611ba18385612071565b905082611bae858361226e565b14611c055760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016106af565b9392505050565b5f611c0583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611d37565b5f818311611c5b5782611c05565b50919050565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561137f573d5f803e3d5ffd5b5f80611ca483856122a4565b905083811015611c055760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016106af565b5f611c0583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506119df565b5f8183611d575760405162461bcd60e51b81526004016106af9190611d63565b505f611a0e848661226e565b5f602080835283518060208501525f5b81811015611d8f57858101830151858201604001528201611d73565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611dc3575f80fd5b50565b5f8060408385031215611dd7575f80fd5b8235611de281611daf565b946020939093013593505050565b5f805f60608486031215611e02575f80fd5b8335611e0d81611daf565b92506020840135611e1d81611daf565b929592945050506040919091013590565b5f8083601f840112611e3e575f80fd5b50813567ffffffffffffffff811115611e55575f80fd5b602083019150836020828501011115611e6c575f80fd5b9250929050565b5f805f805f8060608789031215611e88575f80fd5b863567ffffffffffffffff80821115611e9f575f80fd5b611eab8a838b01611e2e565b90985096506020890135915080821115611ec3575f80fd5b611ecf8a838b01611e2e565b90965094506040890135915080821115611ee7575f80fd5b50611ef489828a01611e2e565b979a9699509497509295939492505050565b5f60208284031215611f16575f80fd5b5035919050565b5f60208284031215611f2d575f80fd5b8135611c0581611daf565b5f8060408385031215611f49575f80fd5b8235611f5481611daf565b91506020830135611f6481611daf565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115611fbd57815f1904821115611fa357611fa3611f6f565b80851615611fb057918102915b93841c9390800290611f88565b509250929050565b5f82611fd3575060016105f8565b81611fdf57505f6105f8565b8160018114611ff55760028114611fff5761201b565b60019150506105f8565b60ff84111561201057612010611f6f565b50506001821b6105f8565b5060208310610133831016604e8410600b841016171561203e575081810a6105f8565b6120488383611f83565b805f190482111561205b5761205b611f6f565b029392505050565b5f611c0560ff841683611fc5565b80820281158282048414176105f8576105f8611f6f565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156120cd575f80fd5b8151611c0581611daf565b5f805f606084860312156120ea575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215612113575f80fd5b81518015158114611c05575f80fd5b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061214a57607f821691505b602082108103611c5b57634e487b7160e01b5f52602260045260245ffd5b601f8211156121af57805f5260205f20601f840160051c8101602085101561218d5750805b601f840160051c820191505b818110156121ac575f8155600101612199565b50505b505050565b67ffffffffffffffff8311156121cc576121cc612122565b6121e0836121da8354612136565b83612168565b5f601f841160018114612211575f85156121fa5750838201355b5f19600387901b1c1916600186901b1783556121ac565b5f83815260208120601f198716915b828110156122405786850135825560209485019460019092019101612220565b508682101561225c575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b5f8261228857634e487b7160e01b5f52601260045260245ffd5b500490565b5f6020828403121561229d575f80fd5b5051919050565b808201808211156105f8576105f8611f6f565b5f600182016122c8576122c8611f6f565b5060010190565b818103818111156105f8576105f8611f6f565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156123465784516001600160a01b031683529383019391830191600101612321565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212201d18637850da07808cde3ab266e9c3cef888f8bea7dade45709f54cf27fe56e064736f6c63430008160033

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

000000000000000000000000a5cf8a614dde871f3463b2fd76307e8c3e2fd713

-----Decoded View---------------
Arg [0] : developmentWallet (address): 0xa5Cf8A614dDe871F3463B2Fd76307E8c3e2FD713

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000a5cf8a614dde871f3463b2fd76307e8c3e2fd713


Deployed Bytecode Sourcemap

4095:11086:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9227:122;;;;;;;;;;;;;:::i;:::-;;9632:83;;;;;;;;;;-1:-1:-1;9702:5:0;;;;;;;;;;;;-1:-1:-1;;;9702:5:0;;;;9632:83;;;;;;;:::i;:::-;;;;;;;;10471:161;;;;;;;;;;-1:-1:-1;10471:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;10471:161:0;1023:187:1;5966:49:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;5966:49:0;1215:177:1;9911:95:0;;;;;;;;;;;;;:::i;10641:313::-;;;;;;;;;;-1:-1:-1;10641:313:0;;;;;:::i;:::-;;:::i;6556:670::-;;;;;;;;;;;;;:::i;14336:83::-;;;;;;;;;;;;;:::i;9820:::-;;;;;;;;;;-1:-1:-1;9820:83:0;;5594:1;2000:36:1;;1988:2;1973:18;9820:83:0;1858:184:1;7754:390:0;;;;;;;;;;-1:-1:-1;7754:390:0;;;;;:::i;:::-;;:::i;4713:33::-;;;;;;;;;;;;;:::i;7593:153::-;;;;;;;;;;-1:-1:-1;7593:153:0;;;;;:::i;:::-;;:::i;10015:119::-;;;;;;;;;;-1:-1:-1;10015:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;10108:18:0;10081:7;10108:18;;;:9;:18;;;;;;;10015:119;1633:148;;;;;;;;;;;;;:::i;8276:116::-;;;;;;;;;;;;;:::i;5785:52::-;;;;;;;;;;;;;;;;9491:133;;;;;;;;;;-1:-1:-1;9491:133:0;;;;;:::i;:::-;;:::i;1419:79::-;;;;;;;;;;-1:-1:-1;1457:7:0;1484:6;1419:79;;-1:-1:-1;;;;;1484:6:0;;;3998:51:1;;3986:2;3971:18;1419:79:0;3852:203:1;5845:52:0;;;;;;;;;;;;;;;;9724:87;;;;;;;;;;-1:-1:-1;9796:7:0;;;;;;;;;;;;-1:-1:-1;;;9796:7:0;;;;9724:87;;7434:151;;;;;;;;;;-1:-1:-1;7434:151:0;;;;;:::i;:::-;;:::i;9357:126::-;;;;;;;;;;-1:-1:-1;9357:126:0;;;;;:::i;:::-;;:::i;10143:167::-;;;;;;;;;;-1:-1:-1;10143:167:0;;;;;:::i;:::-;;:::i;14423:753::-;;;;;;:::i;:::-;;:::i;8522:323::-;;;;;;;;;;-1:-1:-1;8522:323:0;;;;;:::i;:::-;;:::i;5905:54::-;;;;;;;;;;;;;;;;8400:114;;;;;;;;;;;;;:::i;4632:33::-;;;;;;;;;;;;;:::i;7234:192::-;;;;;;;;;;;;;:::i;10319:143::-;;;;;;;;;;-1:-1:-1;10319:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;10427:18:0;;;10400:7;10427:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;10319:143;4672:34;;;;;;;;;;;;;:::i;8154:114::-;;;;;;;;;;;;;:::i;8853:369::-;;;;;;;;;;;;;:::i;9227:122::-;9291:11;;-1:-1:-1;;;;;9291:11:0;288:10;-1:-1:-1;;;;;9277:25:0;;9269:34;;;;;;9308:36;9322:21;9308:13;:36::i;:::-;9227:122::o;10471:161::-;10546:4;10563:39;288:10;10586:7;10595:6;10563:8;:39::i;:::-;-1:-1:-1;10620:4:0;10471:161;;;;;:::o;9911:95::-;9964:7;5653:14;5594:1;5653:2;:14;:::i;:::-;5637:30;;:13;:30;:::i;:::-;9984:14;;9911:95;:::o;10641:313::-;10739:4;10756:36;10766:6;10774:9;10785:6;10756:9;:36::i;:::-;10803:121;10812:6;288:10;10834:89;10872:6;10834:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10834:19:0;;;;;;:11;:19;;;;;;;;288:10;10834:33;;;;;;;;;;:37;:89::i;:::-;10803:8;:121::i;:::-;-1:-1:-1;10942:4:0;10641:313;;;;;:::o;6556:670::-;1546:6;;-1:-1:-1;;;;;1546:6:0;288:10;1546:22;1538:67;;;;-1:-1:-1;;;1538:67:0;;;;;;;:::i;:::-;;;;;;;;;6619:11:::1;::::0;-1:-1:-1;;;6619:11:0;::::1;;;6618:12;6610:47;;;::::0;-1:-1:-1;;;6610:47:0;;6698:2:1;6610:47:0::1;::::0;::::1;6680:21:1::0;6737:2;6717:18;;;6710:30;6776:25;6756:18;;;6749:53;6819:18;;6610:47:0::1;6496:347:1::0;6610:47:0::1;6668:11;:18:::0;;-1:-1:-1;;;;6668:18:0::1;-1:-1:-1::0;;;6668:18:0::1;::::0;;6697:15:::1;:80:::0;;-1:-1:-1;;;;;;6697:80:0::1;6734:42;6697:80:::0;;::::1;::::0;;6788:58:::1;::::0;6805:4:::1;::::0;6734:42;5653:14:::1;::::0;5594:1:::1;::::0;5653:14:::1;:::i;:::-;5637:30;::::0;:13:::1;:30;:::i;6788:58::-;6891:15;;;;;;;;;-1:-1:-1::0;;;;;6891:15:0::1;-1:-1:-1::0;;;;;6891:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;6873:55:0::1;;6937:4;6944:15;;;;;;;;;-1:-1:-1::0;;;;;6944:15:0::1;-1:-1:-1::0;;;;;6944:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6873:94;::::0;-1:-1:-1;;;;;;6873:94:0::1;::::0;;;;;;-1:-1:-1;;;;;7334:15:1;;;6873:94:0::1;::::0;::::1;7316:34:1::0;7386:15;;7366:18;;;7359:43;7251:18;;6873:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6857:13;:110:::0;;-1:-1:-1;;;;;6857:110:0;;::::1;-1:-1:-1::0;;;;;;6857:110:0;;::::1;;::::0;;6978:15:::1;::::0;::::1;:31;7017:21;7048:4;7054:24;7048:4:::0;-1:-1:-1;;;;;10108:18:0;10081:7;10108:18;;;:9;:18;;;;;;;10015:119;7054:24:::1;7079:1;7081::::0;7083:7:::1;1457::::0;1484:6;-1:-1:-1;;;;;1484:6:0;;1419:79;7083:7:::1;6978:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;6978:129:0;;;-1:-1:-1;;;;;7772:15:1;;;6978:129:0::1;::::0;::::1;7754:34:1::0;7804:18;;;7797:34;;;;7847:18;;;7840:34;;;;7890:18;;;7883:34;7954:15;;;7933:19;;;7926:44;7091:15:0::1;7986:19:1::0;;;7979:35;7688:19;;6978:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;7125:13:0::1;::::0;7156:15:::1;::::0;7118:71:::1;::::0;-1:-1:-1;;;7118:71:0;;-1:-1:-1;;;;;7156:15:0;;::::1;7118:71;::::0;::::1;8510:51:1::0;-1:-1:-1;;8577:18:1;;;8570:34;7125:13:0;::::1;::::0;-1:-1:-1;7118:29:0::1;::::0;8483:18:1;;7118:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;7200:11:0::1;:18:::0;;-1:-1:-1;;;;7200:18:0::1;-1:-1:-1::0;;;7200:18:0::1;::::0;;6556:670::o;14336:83::-;1546:6;;-1:-1:-1;;;;;1546:6:0;288:10;1546:22;1538:67;;;;-1:-1:-1;;;1538:67:0;;;;;;;:::i;:::-;14396:11:::1;:18:::0;;-1:-1:-1;;;;14396:18:0::1;-1:-1:-1::0;;;14396:18:0::1;::::0;;14336:83::o;7754:390::-;7967:11;;-1:-1:-1;;;;;7967:11:0;288:10;-1:-1:-1;;;;;7953:25:0;;7945:34;;;;;;7990:19;:42;8012:20;;7990:19;:42;:::i;:::-;-1:-1:-1;8043:20:0;:44;8066:21;;8043:20;:44;:::i;:::-;-1:-1:-1;8098:19:0;:42;8120:20;;8098:19;:42;:::i;:::-;;7754:390;;;;;;:::o;4713:33::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7593:153::-;7673:11;;-1:-1:-1;;;;;7673:11:0;288:10;-1:-1:-1;;;;;7659:25:0;;7651:34;;;;;;7702:10;;7694:19;;;;;;7722:8;:16;7593:153::o;1633:148::-;1546:6;;-1:-1:-1;;;;;1546:6:0;288:10;1546:22;1538:67;;;;-1:-1:-1;;;1538:67:0;;;;;;;:::i;:::-;1740:1:::1;1724:6:::0;;1703:40:::1;::::0;-1:-1:-1;;;;;1724:6:0;;::::1;::::0;1703:40:::1;::::0;1740:1;;1703:40:::1;1771:1;1754:19:::0;;-1:-1:-1;;;;;;1754:19:0::1;::::0;;1633:148::o;8276:116::-;8331:13;8364:20;8357:27;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8276:116;:::o;9491:133::-;1546:6;;-1:-1:-1;;;;;1546:6:0;288:10;1546:22;1538:67;;;;-1:-1:-1;;;1538:67:0;;;;;;;:::i;:::-;9610:6;9602:5:::1;5653:14;5594:1;5653:2;:14;:::i;:::-;5637:30;::::0;:13:::1;:30;:::i;:::-;9592:15;;;;:::i;:::-;:24;;;;:::i;:::-;9572:17;:44:::0;-1:-1:-1;9491:133:0:o;7434:151::-;7513:11;;-1:-1:-1;;;;;7513:11:0;288:10;-1:-1:-1;;;;;7499:25:0;;7491:34;;;;;;7542:10;;7534:19;;;;;;7562:7;:15;7434:151::o;9357:126::-;1546:6;;-1:-1:-1;;;;;1546:6:0;288:10;1546:22;1538:67;;;;-1:-1:-1;;;1538:67:0;;;;;;;:::i;:::-;9469:6;9461:5:::1;5653:14;5594:1;5653:2;:14;:::i;:::-;5637:30;::::0;:13:::1;:30;:::i;:::-;9451:15;;;;:::i;:::-;:24;;;;:::i;:::-;9437:11;:38:::0;-1:-1:-1;9357:126:0:o;10143:167::-;10221:4;10238:42;288:10;10262:9;10273:6;10238:9;:42::i;14423:753::-;1546:6;;-1:-1:-1;;;;;1546:6:0;288:10;1546:22;1538:67;;;;-1:-1:-1;;;1538:67:0;;;;;;;:::i;:::-;14546:11:::1;::::0;-1:-1:-1;;;14546:11:0;::::1;;;14545:12;14537:59;;;::::0;-1:-1:-1;;;14537:59:0;;11861:2:1;14537:59:0::1;::::0;::::1;11843:21:1::0;11900:2;11880:18;;;11873:30;11939:34;11919:18;;;11912:62;-1:-1:-1;;;11990:18:1;;;11983:33;12033:19;;14537:59:0::1;11659:399:1::0;14537:59:0::1;14607:10;14645:7;-1:-1:-1::0;;;;;14626:32:0::1;;:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14607:54;;14672:4;-1:-1:-1::0;;;;;14672:12:0::1;;14692:9;14672:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;14715:12;14775:7;-1:-1:-1::0;;;;;14756:35:0::1;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14738:88;::::0;-1:-1:-1;;;14738:88:0;;-1:-1:-1;;;;;7334:15:1;;;14738:88:0::1;::::0;::::1;7316:34:1::0;7386:15;;;7366:18;;;7359:43;14738:64:0;;;::::1;::::0;::::1;::::0;7251:18:1;;14738:88:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14838:54;::::0;-1:-1:-1;;;14838:54:0;;-1:-1:-1;;;;;8528:32:1;;;14838:54:0::1;::::0;::::1;8510:51:1::0;8577:18;;;8570:34;;;14715:112:0;;-1:-1:-1;14838:24:0;;::::1;::::0;::::1;::::0;8483:18:1;;14838:54:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;14903:56:0::1;::::0;-1:-1:-1;;;14903:56:0;;-1:-1:-1;;;;;8528:32:1;;;14903:56:0::1;::::0;::::1;8510:51:1::0;14949:9:0::1;8577:18:1::0;;;8570:34;14903:30:0;::::1;::::0;::::1;::::0;8483:18:1;;14903:56:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;14970:21:0::1;::::0;-1:-1:-1;;;14970:21:0;;14980:10:::1;14970:21;::::0;::::1;3998:51:1::0;-1:-1:-1;;;;;14970:9:0;::::1;::::0;::::1;::::0;3971:18:1;;14970:21:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;14526:650;;14423:753:::0;;;:::o;8522:323::-;8621:11;;-1:-1:-1;;;;;8621:11:0;288:10;-1:-1:-1;;;;;8607:25:0;;8599:34;;;;;;-1:-1:-1;;;;;8652:20:0;;8644:59;;;;-1:-1:-1;;;8644:59:0;;12454:2:1;8644:59:0;;;12436:21:1;12493:2;12473:18;;;12466:30;12532:28;12512:18;;;12505:56;12578:18;;8644:59:0;12252:350:1;8644:59:0;8741:39;;-1:-1:-1;;;8741:39:0;;8774:4;8741:39;;;3998:51:1;8714:24:0;;-1:-1:-1;;;;;8741:24:0;;;;;3971:18:1;;8741:39:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8791:46;;-1:-1:-1;;;8791:46:0;;-1:-1:-1;;;;;8528:32:1;;;8791:46:0;;;8510:51:1;8577:18;;;8570:34;;;8714:66:0;;-1:-1:-1;8791:23:0;;;;;;8483:18:1;;8791:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8588:257;8522:323;;:::o;8400:114::-;8454:13;8487:19;8480:26;;;;;:::i;4632:33::-;;;;;;;:::i;7234:192::-;7297:11;;-1:-1:-1;;;;;7297:11:0;288:10;-1:-1:-1;;;;;7283:25:0;;7275:34;;;;;;5653:14;5594:1;5653:2;:14;:::i;:::-;5637:30;;:13;:30;:::i;:::-;7320:12;:22;5653:14;5594:1;5653:2;:14;:::i;:::-;5637:30;;:13;:30;:::i;:::-;7353:14;:22;7391:27;5653:14;5594:1;5653:2;:14;:::i;:::-;5637:30;;:13;:30;:::i;:::-;7391:27;;1361:25:1;;;1349:2;1334:18;7391:27:0;;;;;;;7234:192::o;4672:34::-;;;;;;;:::i;8154:114::-;8208:13;8241:19;8234:26;;;;;:::i;8853:369::-;8936:11;;-1:-1:-1;;;;;8936:11:0;288:10;-1:-1:-1;;;;;8922:25:0;;8914:34;;;;;;8998:4;8959:20;10108:18;;;:9;:18;;;;;;9018:14;;9015:73;;9046:30;9063:12;9046:16;:30::i;:::-;9117:21;9152:12;;9149:66;;9178:25;9192:10;9178:13;:25::i;:::-;8903:319;;8853:369::o;11910:94::-;11968:11;;:28;;-1:-1:-1;;;;;11968:11:0;;;;:28;;;;;11989:6;;11968:11;:28;:11;:28;11989:6;11968:11;:28;;;;;;;;;;;;;;;;;;;10963:335;-1:-1:-1;;;;;11056:19:0;;11048:68;;;;-1:-1:-1;;;11048:68:0;;12809:2:1;11048:68:0;;;12791:21:1;12848:2;12828:18;;;12821:30;12887:34;12867:18;;;12860:62;-1:-1:-1;;;12938:18:1;;;12931:34;12982:19;;11048:68:0;12607:400:1;11048:68:0;-1:-1:-1;;;;;11135:21:0;;11127:68;;;;-1:-1:-1;;;11127:68:0;;13214:2:1;11127:68:0;;;13196:21:1;13253:2;13233:18;;;13226:30;13292:34;13272:18;;;13265:62;-1:-1:-1;;;13343:18:1;;;13336:32;13385:19;;11127:68:0;13012:398:1;11127:68:0;-1:-1:-1;;;;;11206:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;11258:32;;1361:25:1;;;11258:32:0;;1334:18:1;11258:32:0;;;;;;;10963:335;;;:::o;12049:1973::-;-1:-1:-1;;;;;12137:18:0;;12129:68;;;;-1:-1:-1;;;12129:68:0;;13617:2:1;12129:68:0;;;13599:21:1;13656:2;13636:18;;;13629:30;13695:34;13675:18;;;13668:62;-1:-1:-1;;;13746:18:1;;;13739:35;13791:19;;12129:68:0;13415:401:1;12129:68:0;-1:-1:-1;;;;;12216:16:0;;12208:64;;;;-1:-1:-1;;;12208:64:0;;14023:2:1;12208:64:0;;;14005:21:1;14062:2;14042:18;;;14035:30;14101:34;14081:18;;;14074:62;-1:-1:-1;;;14152:18:1;;;14145:33;14195:19;;12208:64:0;13821:399:1;12208:64:0;12300:1;12291:6;:10;12283:64;;;;-1:-1:-1;;;12283:64:0;;14427:2:1;12283:64:0;;;14409:21:1;14466:2;14446:18;;;14439:30;14505:34;14485:18;;;14478:62;-1:-1:-1;;;14556:18:1;;;14549:39;14605:19;;12283:64:0;14225:405:1;12283:64:0;12358:17;1484:6;;-1:-1:-1;;;;;12392:15:0;;;1484:6;;12392:15;;;;:32;;-1:-1:-1;1457:7:0;1484:6;-1:-1:-1;;;;;12411:13:0;;;1484:6;;12411:13;;12392:32;12388:1278;;;12453:79;12528:3;12453:70;12483:16;;12465:17;;:34;12464:58;;12509:13;;12464:58;;;12501:7;;12464:58;12453:6;;:10;:70::i;:::-;:74;;:79::i;:::-;12561:13;;12441:91;;-1:-1:-1;;;;;;12553:21:0;;;12561:13;;12553:21;:55;;;;-1:-1:-1;12592:15:0;;-1:-1:-1;;;;;12578:30:0;;;12592:15;;12578:30;;12553:55;:83;;;;-1:-1:-1;;;;;;12614:22:0;;;;;;:18;:22;;;;;;;;12612:24;12553:83;12549:321;;;12676:12;;12666:6;:22;;12658:60;;;;-1:-1:-1;;;12658:60:0;;14837:2:1;12658:60:0;;;14819:21:1;14876:2;14856:18;;;14849:30;14915:27;14895:18;;;14888:55;14960:18;;12658:60:0;14635:349:1;12658:60:0;12771:14;;12761:6;12745:13;12755:2;-1:-1:-1;;;;;10108:18:0;10081:7;10108:18;;;:9;:18;;;;;;;10015:119;12745:13;:22;;;;:::i;:::-;:40;;12737:79;;;;-1:-1:-1;;;12737:79:0;;15321:2:1;12737:79:0;;;15303:21:1;15360:2;15340:18;;;15333:30;15399:28;15379:18;;;15372:56;15445:18;;12737:79:0;15119:350:1;12737:79:0;12835:17;:19;;;:17;:19;;;:::i;:::-;;;;;;12549:321;12895:13;;-1:-1:-1;;;;;12889:19:0;;;12895:13;;12889:19;:43;;;;-1:-1:-1;;;;;;12912:20:0;;12927:4;12912:20;;12889:43;12886:177;;;12965:82;13043:3;12965:73;12995:17;;12977;;:35;12976:61;;13023:14;;12976:61;;;13014:8;;12965:6;;:10;:73::i;:82::-;12953:94;;12886:177;13128:4;13079:28;10108:18;;;:9;:18;;;;;;13154:6;;-1:-1:-1;;;13154:6:0;;;;13153:7;:32;;;;-1:-1:-1;13172:13:0;;-1:-1:-1;;;;;13164:21:0;;;13172:13;;13164:21;13153:32;:47;;;;-1:-1:-1;13189:11:0;;-1:-1:-1;;;13189:11:0;;;;13153:47;:89;;;;;13225:17;;13204:20;:38;13153:89;:132;;;;;13264:21;;13246:17;;:39;13153:132;13149:506;;;13306:67;13323:49;13327:6;13334:37;13338:20;13359:11;;13334:3;:37::i;:::-;13323:3;:49::i;:::-;13306:16;:67::i;:::-;13421:21;13464:22;;13461:179;;13496:63;13517:41;13553:4;13517:31;:21;13543:4;13517:25;:31::i;:41::-;13496:20;:63::i;:::-;13582:36;13596:21;13582:13;:36::i;:::-;13287:368;13149:506;12426:1240;12388:1278;13681:11;;13678:161;;13749:4;13731:24;;;;:9;:24;;;;;;:39;;13760:9;13731:28;:39::i;:::-;13724:4;13706:24;;;;:9;:24;;;;;;;:64;;;;13788:39;;-1:-1:-1;;;;;13788:39:0;;;;;;;13817:9;1361:25:1;;1349:2;1334:18;;1215:177;13788:39:0;;;;;;;;13678:161;-1:-1:-1;;;;;13865:15:0;;;;;;:9;:15;;;;;;:27;;13885:6;13865:19;:27::i;:::-;-1:-1:-1;;;;;13849:15:0;;;;;;:9;:15;;;;;:43;13917:40;13935:21;:6;13946:9;13935:10;:21::i;:::-;-1:-1:-1;;;;;13917:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;13903:13:0;;;;;;;:9;:13;;;;;:54;;;;13973:41;;;13992:21;:6;14003:9;13992:10;:21::i;:::-;13973:41;;1361:25:1;;;1349:2;1334:18;13973:41:0;;;;;;;12118:1904;12049:1973;;;:::o;3305:190::-;3391:7;3427:12;3419:6;;;;3411:29;;;;-1:-1:-1;;;3411:29:0;;;;;;;;:::i;:::-;-1:-1:-1;3451:9:0;3463:5;3467:1;3463;:5;:::i;:::-;3451:17;3305:190;-1:-1:-1;;;;;3305:190:0:o;11306:483::-;5094:6;:13;;-1:-1:-1;;;;5094:13:0;-1:-1:-1;;;5094:13:0;;;11408:16:::1;::::0;;11422:1:::1;11408:16:::0;;;;;::::1;::::0;;-1:-1:-1;;11408:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11408:16:0::1;11384:40;;11453:4;11435;11440:1;11435:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11435:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;11479:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;11479:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;11435:7;;11479:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11469:4;11474:1;11469:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11469:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;11544:15:::1;::::0;11512:62:::1;::::0;11529:4:::1;::::0;11544:15:::1;11562:11:::0;11512:8:::1;:62::i;:::-;11585:15;::::0;:196:::1;::::0;-1:-1:-1;;;11585:196:0;;-1:-1:-1;;;;;11585:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;11666:11;;11585:15:::1;::::0;11708:4;;11735::::1;::::0;11755:15:::1;::::0;11585:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5130:6:0;:14;;-1:-1:-1;;;;5130:14:0;;;-1:-1:-1;;;;11306:483:0:o;3503:246::-;3561:7;3585:1;3590;3585:6;3581:47;;-1:-1:-1;3615:1:0;3608:8;;3581:47;3638:9;3650:5;3654:1;3650;:5;:::i;:::-;3638:17;-1:-1:-1;3683:1:0;3674:5;3678:1;3638:17;3674:5;:::i;:::-;:10;3666:56;;;;-1:-1:-1;;;3666:56:0;;17066:2:1;3666:56:0;;;17048:21:1;17105:2;17085:18;;;17078:30;17144:34;17124:18;;;17117:62;-1:-1:-1;;;17195:18:1;;;17188:31;17236:19;;3666:56:0;16864:397:1;3666:56:0;3740:1;3503:246;-1:-1:-1;;;3503:246:0:o;3757:132::-;3815:7;3842:39;3846:1;3849;3842:39;;;;;;;;;;;;;;;;;:3;:39::i;14030:98::-;14087:7;14114:1;14112;:3;14111:9;;14119:1;14111:9;;;-1:-1:-1;14117:1:0;14030:98;-1:-1:-1;14030:98:0:o;11794:108::-;11859:18;;:35;;-1:-1:-1;;;;;11859:18:0;;;;:35;;;;;11887:6;;11859:18;:35;:18;:35;11887:6;11859:18;:35;;;;;;;;;;;;;;;;;;;2974:179;3032:7;;3064:5;3068:1;3064;:5;:::i;:::-;3052:17;;3093:1;3088;:6;;3080:46;;;;-1:-1:-1;;;3080:46:0;;17468:2:1;3080:46:0;;;17450:21:1;17507:2;17487:18;;;17480:30;17546:29;17526:18;;;17519:57;17593:18;;3080:46:0;17266:351:1;3161:136:0;3219:7;3246:43;3250:1;3253;3246:43;;;;;;;;;;;;;;;;;:3;:43::i;3897:189::-;3983:7;4018:12;4011:5;4003:28;;;;-1:-1:-1;;;4003:28:0;;;;;;;;:::i;:::-;-1:-1:-1;4042:9:0;4054:5;4058:1;4054;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:348::-;2099:8;2109:6;2163:3;2156:4;2148:6;2144:17;2140:27;2130:55;;2181:1;2178;2171:12;2130:55;-1:-1:-1;2204:20:1;;2247:18;2236:30;;2233:50;;;2279:1;2276;2269:12;2233:50;2316:4;2308:6;2304:17;2292:29;;2368:3;2361:4;2352:6;2344;2340:19;2336:30;2333:39;2330:59;;;2385:1;2382;2375:12;2330:59;2047:348;;;;;:::o;2400:1010::-;2513:6;2521;2529;2537;2545;2553;2606:2;2594:9;2585:7;2581:23;2577:32;2574:52;;;2622:1;2619;2612:12;2574:52;2662:9;2649:23;2691:18;2732:2;2724:6;2721:14;2718:34;;;2748:1;2745;2738:12;2718:34;2787:59;2838:7;2829:6;2818:9;2814:22;2787:59;:::i;:::-;2865:8;;-1:-1:-1;2761:85:1;-1:-1:-1;2953:2:1;2938:18;;2925:32;;-1:-1:-1;2969:16:1;;;2966:36;;;2998:1;2995;2988:12;2966:36;3037:61;3090:7;3079:8;3068:9;3064:24;3037:61;:::i;:::-;3117:8;;-1:-1:-1;3011:87:1;-1:-1:-1;3205:2:1;3190:18;;3177:32;;-1:-1:-1;3221:16:1;;;3218:36;;;3250:1;3247;3240:12;3218:36;;3289:61;3342:7;3331:8;3320:9;3316:24;3289:61;:::i;:::-;2400:1010;;;;-1:-1:-1;2400:1010:1;;-1:-1:-1;2400:1010:1;;3369:8;;2400:1010;-1:-1:-1;;;2400:1010:1:o;3415:180::-;3474:6;3527:2;3515:9;3506:7;3502:23;3498:32;3495:52;;;3543:1;3540;3533:12;3495:52;-1:-1:-1;3566:23:1;;3415:180;-1:-1:-1;3415:180:1:o;3600:247::-;3659:6;3712:2;3700:9;3691:7;3687:23;3683:32;3680:52;;;3728:1;3725;3718:12;3680:52;3767:9;3754:23;3786:31;3811:5;3786:31;:::i;4060:388::-;4128:6;4136;4189:2;4177:9;4168:7;4164:23;4160:32;4157:52;;;4205:1;4202;4195:12;4157:52;4244:9;4231:23;4263:31;4288:5;4263:31;:::i;:::-;4313:5;-1:-1:-1;4370:2:1;4355:18;;4342:32;4383:33;4342:32;4383:33;:::i;:::-;4435:7;4425:17;;;4060:388;;;;;:::o;4453:127::-;4514:10;4509:3;4505:20;4502:1;4495:31;4545:4;4542:1;4535:15;4569:4;4566:1;4559:15;4585:416;4674:1;4711:5;4674:1;4725:270;4746:7;4736:8;4733:21;4725:270;;;4805:4;4801:1;4797:6;4793:17;4787:4;4784:27;4781:53;;;4814:18;;:::i;:::-;4864:7;4854:8;4850:22;4847:55;;;4884:16;;;;4847:55;4963:22;;;;4923:15;;;;4725:270;;;4729:3;4585:416;;;;;:::o;5006:806::-;5055:5;5085:8;5075:80;;-1:-1:-1;5126:1:1;5140:5;;5075:80;5174:4;5164:76;;-1:-1:-1;5211:1:1;5225:5;;5164:76;5256:4;5274:1;5269:59;;;;5342:1;5337:130;;;;5249:218;;5269:59;5299:1;5290:10;;5313:5;;;5337:130;5374:3;5364:8;5361:17;5358:43;;;5381:18;;:::i;:::-;-1:-1:-1;;5437:1:1;5423:16;;5452:5;;5249:218;;5551:2;5541:8;5538:16;5532:3;5526:4;5523:13;5519:36;5513:2;5503:8;5500:16;5495:2;5489:4;5486:12;5482:35;5479:77;5476:159;;;-1:-1:-1;5588:19:1;;;5620:5;;5476:159;5667:34;5692:8;5686:4;5667:34;:::i;:::-;5737:6;5733:1;5729:6;5725:19;5716:7;5713:32;5710:58;;;5748:18;;:::i;:::-;5786:20;;5006:806;-1:-1:-1;;;5006:806:1:o;5817:140::-;5875:5;5904:47;5945:4;5935:8;5931:19;5925:4;5904:47;:::i;5962:168::-;6035:9;;;6066;;6083:15;;;6077:22;;6063:37;6053:71;;6104:18;;:::i;6135:356::-;6337:2;6319:21;;;6356:18;;;6349:30;6415:34;6410:2;6395:18;;6388:62;6482:2;6467:18;;6135:356::o;6848:251::-;6918:6;6971:2;6959:9;6950:7;6946:23;6942:32;6939:52;;;6987:1;6984;6977:12;6939:52;7019:9;7013:16;7038:31;7063:5;7038:31;:::i;8025:306::-;8113:6;8121;8129;8182:2;8170:9;8161:7;8157:23;8153:32;8150:52;;;8198:1;8195;8188:12;8150:52;8227:9;8221:16;8211:26;;8277:2;8266:9;8262:18;8256:25;8246:35;;8321:2;8310:9;8306:18;8300:25;8290:35;;8025:306;;;;;:::o;8615:277::-;8682:6;8735:2;8723:9;8714:7;8710:23;8706:32;8703:52;;;8751:1;8748;8741:12;8703:52;8783:9;8777:16;8836:5;8829:13;8822:21;8815:5;8812:32;8802:60;;8858:1;8855;8848:12;8897:127;8958:10;8953:3;8949:20;8946:1;8939:31;8989:4;8986:1;8979:15;9013:4;9010:1;9003:15;9029:380;9108:1;9104:12;;;;9151;;;9172:61;;9226:4;9218:6;9214:17;9204:27;;9172:61;9279:2;9271:6;9268:14;9248:18;9245:38;9242:161;;9325:10;9320:3;9316:20;9313:1;9306:31;9360:4;9357:1;9350:15;9388:4;9385:1;9378:15;9540:518;9642:2;9637:3;9634:11;9631:421;;;9678:5;9675:1;9668:16;9722:4;9719:1;9709:18;9792:2;9780:10;9776:19;9773:1;9769:27;9763:4;9759:38;9828:4;9816:10;9813:20;9810:47;;;-1:-1:-1;9851:4:1;9810:47;9906:2;9901:3;9897:12;9894:1;9890:20;9884:4;9880:31;9870:41;;9961:81;9979:2;9972:5;9969:13;9961:81;;;10038:1;10024:16;;10005:1;9994:13;9961:81;;;9965:3;;9631:421;9540:518;;;:::o;10234:1198::-;10358:18;10353:3;10350:27;10347:53;;;10380:18;;:::i;:::-;10409:94;10499:3;10459:38;10491:4;10485:11;10459:38;:::i;:::-;10453:4;10409:94;:::i;:::-;10529:1;10554:2;10549:3;10546:11;10571:1;10566:608;;;;11218:1;11235:3;11232:93;;;-1:-1:-1;11291:19:1;;;11278:33;11232:93;-1:-1:-1;;10191:1:1;10187:11;;;10183:24;10179:29;10169:40;10215:1;10211:11;;;10166:57;11338:78;;10539:887;;10566:608;9487:1;9480:14;;;9524:4;9511:18;;-1:-1:-1;;10602:17:1;;;10717:229;10731:7;10728:1;10725:14;10717:229;;;10820:19;;;10807:33;10792:49;;10927:4;10912:20;;;;10880:1;10868:14;;;;10747:12;10717:229;;;10721:3;10974;10965:7;10962:16;10959:159;;;11098:1;11094:6;11088:3;11082;11079:1;11075:11;11071:21;11067:34;11063:39;11050:9;11045:3;11041:19;11028:33;11024:79;11016:6;11009:95;10959:159;;;11161:1;11155:3;11152:1;11148:11;11144:19;11138:4;11131:33;10539:887;;10234:1198;;;:::o;11437:217::-;11477:1;11503;11493:132;;11547:10;11542:3;11538:20;11535:1;11528:31;11582:4;11579:1;11572:15;11610:4;11607:1;11600:15;11493:132;-1:-1:-1;11639:9:1;;11437:217::o;12063:184::-;12133:6;12186:2;12174:9;12165:7;12161:23;12157:32;12154:52;;;12202:1;12199;12192:12;12154:52;-1:-1:-1;12225:16:1;;12063:184;-1:-1:-1;12063:184:1:o;14989:125::-;15054:9;;;15075:10;;;15072:36;;;15088:18;;:::i;15474:135::-;15513:3;15534:17;;;15531:43;;15554:18;;:::i;:::-;-1:-1:-1;15601:1:1;15590:13;;15474:135::o;15614:128::-;15681:9;;;15702:11;;;15699:37;;;15716:18;;:::i;15747:127::-;15808:10;15803:3;15799:20;15796:1;15789:31;15839:4;15836:1;15829:15;15863:4;15860:1;15853:15;15879:980;16141:4;16189:3;16178:9;16174:19;16220:6;16209:9;16202:25;16246:2;16284:6;16279:2;16268:9;16264:18;16257:34;16327:3;16322:2;16311:9;16307:18;16300:31;16351:6;16386;16380:13;16417:6;16409;16402:22;16455:3;16444:9;16440:19;16433:26;;16494:2;16486:6;16482:15;16468:29;;16515:1;16525:195;16539:6;16536:1;16533:13;16525:195;;;16604:13;;-1:-1:-1;;;;;16600:39:1;16588:52;;16695:15;;;;16660:12;;;;16636:1;16554:9;16525:195;;;-1:-1:-1;;;;;;;16776:32:1;;;;16771:2;16756:18;;16749:60;-1:-1:-1;;;16840:3:1;16825:19;16818:35;16737:3;15879:980;-1:-1:-1;;;15879:980:1:o

Swarm Source

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