ETH Price: $3,391.18 (-1.55%)
Gas: 5 Gwei

Token

Golden Zen Token (GZT)
 

Overview

Max Total Supply

1,000,000 GZT

Holders

296

Market

Price

$0.44 @ 0.000129 ETH

Onchain Market Cap

$436,196.00

Circulating Supply Market Cap

$0.00

Other Info

Token Contract (WITH 18 Decimals)

Balance
122.935639222661488955 GZT

Value
$53.62 ( ~0.0158115832830255 Eth) [0.0123%]
0xc34a8ee4f75fa05936605ae9853538cb08372580
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:
ERC20

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: MIT
// zengame.io 
pragma solidity ^0.8.0;

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 {
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed _owner, address indexed spender, uint256 value);
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address to, 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 from, address to, uint256 amount) external returns (bool);
}

interface IERC20Metadata is IERC20 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
}

interface IUniswapV2Factory {
    event PairCreated(address indexed token0, address indexed token1, address pair, uint);
    function feeTo() external view returns (address);
    function feeToSetter() external view returns (address);
    function getPair(address tokenA, address tokenB) external view returns (address pair);
    function allPairs(uint) external view returns (address pair);
    function allPairsLength() external view returns (uint);
    function createPair(address tokenA, address tokenB) external returns (address pair);
    function setFeeTo(address) external;
    function setFeeToSetter(address) external;
}

interface IUniswapV2Router {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);

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

    function swapExactTokensForTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);

    function swapTokensForExactETH(
        uint amountOut,
        uint amountInMax,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);

    function swapExactETHForTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable returns (uint[] memory amounts);

    function swapExactTokensForETH(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    
    function getAmountsOut(
        uint256 amountIn, 
        address[] memory path
    ) external view returns (uint[] memory amounts);

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
    uint amountIn,
    uint amountOutMin,
    address[] calldata path,
    address to,
    uint deadline
    ) external view returns (uint[] memory amounts);
}

contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    address public owner;
    uint256 private _totalSupply;
    string  private _name;
    string  private _symbol;
    address private marketing_wl;
    uint256 public buy_fee  = 10;  // 10%
    uint256 public sell_fee = 15;  // 15%
    uint256 private swapThreshold = 0.15 ether;

    address private constant RouterV2 = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;

    bool public inSwapAndLiquify;
    bool public feeSwapEnable = false;
    bool public tradingEnabled = false;

    modifier onlyOwner() {
        require(owner == msg.sender, "Ownable: caller is not the owner");
        _;
    }
    function setFees_10_15() public onlyOwner {                
        buy_fee  = 10; // 10%  
        sell_fee = 15; // 15%  
    }
    function setFees_10_10() public onlyOwner {                
        buy_fee  = 10; // 10%
        sell_fee = 10; // 10% 
    }
    function setFees_3_3() public onlyOwner {                
        buy_fee  = 3; // 3%
        sell_fee = 3;// 3%  
    }
    function removeAllFees() public onlyOwner {
        buy_fee  = 0;
        sell_fee = 0; 
    }
    function tradingEnable() public onlyOwner {
        tradingEnabled = true;
    }    
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = owner;
        owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }
    function exclude_from_fee(address account) public onlyOwner {
        _isExcludedFromFee[account] = true;
    }    
    function include_in_fee(address account) public onlyOwner {
        _isExcludedFromFee[account] = false;
    }  

    constructor( address _marketing_wl ) {
        _name = "Golden Zen Token";
        _symbol = "GZT";
        // create tokens
        _totalSupply = 1000000*10**18;
        _balances[msg.sender] = _totalSupply;
        emit Transfer(address(0), msg.sender, _totalSupply);
        // create owner
        owner = msg.sender;
        marketing_wl = _marketing_wl;

        _isExcludedFromFee[msg.sender] = true;
        _isExcludedFromFee[marketing_wl] = true;
        _isExcludedFromFee[address(this)] = true;

        // create pool
        IUniswapV2Factory(IUniswapV2Router(RouterV2).factory())
                .createPair(address(this), IUniswapV2Router(RouterV2).WETH());
        // _approve
        _approve(address(this), RouterV2, type(uint256).max); 
    }
    function name() public view virtual override returns (string memory) {
        return _name;
    }
    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    } 
    function decimals() public view virtual override returns (uint8) {
        return 18;
    }
    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }
    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }
    function transfer(address to, uint256 amount) public virtual override returns (bool) {
        address _owner = _msgSender();
        _transfer(_owner, to, amount);
        return true;
    }
    function allowance(address _owner, address spender) public view virtual override returns (uint256) {
        return _allowances[_owner][spender];
    }
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        address _owner = _msgSender();
        _approve(_owner, spender, amount);
        return true;
    }
    function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }
    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        address _owner = _msgSender();
        _approve(_owner, spender, allowance(_owner, spender) + addedValue);
        return true;
    }
    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        address _owner = _msgSender();
        uint256 currentAllowance = allowance(_owner, spender);
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(_owner, spender, currentAllowance - subtractedValue);
        }
        return true;
    }
    function _transfer(address from, address to, uint256 amount) internal virtual {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");      
        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");

        //swap fees
        if (feeSwapEnable){
            uint256 AmountOutMin = getAmountOutMin(_balances[address(this)]);
            if(AmountOutMin > swapThreshold &&  !inSwapAndLiquify && to == getPoolAddress()){
                inSwapAndLiquify = true;
                swapTokensForETH();
                inSwapAndLiquify = false;
            }
            // send fees   
            if(address(this).balance > 1 ){
                uint256 send_balance = address(this).balance;
                payable(marketing_wl).transfer(send_balance);
            }
        }
   
        // transfer logic
        if (_isExcludedFromFee[from] || _isExcludedFromFee[to] || inSwapAndLiquify) {           
                _balances[from] = fromBalance - amount;
                _balances[to] += amount;
            emit Transfer(from, to, amount);
        } else {
                if (to == getPoolAddress() || from == getPoolAddress()) {
                    require(tradingEnabled, "trading not enabled");
                    uint256 _this_fee;
                    if(to == getPoolAddress()) _this_fee = sell_fee; //if sell 
                    if(from == getPoolAddress()) _this_fee = buy_fee; //if buy                    
                
                    uint256 _amount = amount * (100 - _this_fee) / 100;
                    _balances[from] = fromBalance - amount;
                    _balances[to]   += _amount;
                    emit Transfer(from, to, _amount);
            
                    uint256 _this_fee_value  = amount * _this_fee / 100;
                    _balances[address(this)] += _this_fee_value;                 
                } else { //if transfer             
                    _balances[from] = fromBalance - amount;
                    _balances[to] += amount;               
                    emit Transfer(from, to, amount);
                }
            }
    }
    function swapTokensForETH() internal {
        IERC20(address(this)).approve(RouterV2, type(uint256).max);
        uint256 tokenBalance = balanceOf(address(this));
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = IUniswapV2Router(RouterV2).WETH();
        IUniswapV2Router(RouterV2).swapExactTokensForETH(
            tokenBalance,
            0,
            path,
            address(this),
            block.timestamp
        );
    }
    function getPoolAddress() public view returns (address) {      
        address poolAddress = IUniswapV2Factory(IUniswapV2Router(RouterV2).factory()).getPair(address(this), IUniswapV2Router(RouterV2).WETH());        
        return poolAddress;
    }
    function getAmountOutMin(uint256 _amount) public view returns (uint256) {
		address[] memory path;
		path = new address[](2);
		path[0] = address(this);
		path[1] = IUniswapV2Router(RouterV2).WETH();
		uint256[] memory amountOutMins = IUniswapV2Router(RouterV2).getAmountsOut(_amount, path);
		return amountOutMins[path.length - 1];
	}
    function setSwapThresholdx(uint256 _swapThreshold) public onlyOwner {
        swapThreshold = _swapThreshold;
    }
    function flipFeeSwapEnable() public onlyOwner {
        feeSwapEnable = !feeSwapEnable;
    }
    function clearSpam(address _token_link) public onlyOwner{
        IERC20(_token_link).transfer(msg.sender, IERC20(_token_link).balanceOf(address(this)));
    }
    function clearETH() public onlyOwner{
        payable(msg.sender).transfer(address(this).balance);
    }
    function _approve(address _owner, address spender, uint256 amount) internal virtual {
        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 _spendAllowance(address _owner, address spender, uint256 amount) internal virtual {
        uint256 currentAllowance = allowance(_owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(_owner, spender, currentAllowance - amount);
            }
        }
    }
    receive() external payable {}    
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_marketing_wl","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":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":[{"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":"buy_fee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"clearETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token_link","type":"address"}],"name":"clearSpam","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"exclude_from_fee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"feeSwapEnable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"flipFeeSwapEnable","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"getAmountOutMin","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPoolAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"inSwapAndLiquify","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"include_in_fee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeAllFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sell_fee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"setFees_10_10","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setFees_10_15","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setFees_3_3","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_swapThreshold","type":"uint256"}],"name":"setSwapThresholdx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingEnable","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"tradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600a600855600f600955670214e8348c4f0000600a556000600b60016101000a81548160ff0219169083151502179055506000600b60026101000a81548160ff0219169083151502179055503480156200005d57600080fd5b506040516200418638038062004186833981810160405281019062000083919062000794565b6040518060400160405280601081526020017f476f6c64656e205a656e20546f6b656e0000000000000000000000000000000081525060059081620000c9919062000a40565b506040518060400160405280600381526020017f475a5400000000000000000000000000000000000000000000000000000000008152506006908162000110919062000a40565b5069d3c21bcecceda10000006004819055506004546000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600454604051620001c9919062000b38565b60405180910390a333600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160026000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620003dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000403919062000794565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200047f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004a5919062000794565b6040518363ffffffff1660e01b8152600401620004c492919062000b66565b6020604051808303816000875af1158015620004e4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200050a919062000794565b506200055230737a250d5630b4cf539739df2c5dacb4c659f2488d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6200055960201b60201c565b5062000cd4565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620005cb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005c29062000c1a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036200063d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620006349062000cb2565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516200071d919062000b38565b60405180910390a3505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200075c826200072f565b9050919050565b6200076e816200074f565b81146200077a57600080fd5b50565b6000815190506200078e8162000763565b92915050565b600060208284031215620007ad57620007ac6200072a565b5b6000620007bd848285016200077d565b91505092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200084857607f821691505b6020821081036200085e576200085d62000800565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620008c87fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000889565b620008d4868362000889565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620009216200091b6200091584620008ec565b620008f6565b620008ec565b9050919050565b6000819050919050565b6200093d8362000900565b620009556200094c8262000928565b84845462000896565b825550505050565b600090565b6200096c6200095d565b6200097981848462000932565b505050565b5b81811015620009a1576200099560008262000962565b6001810190506200097f565b5050565b601f821115620009f057620009ba8162000864565b620009c58462000879565b81016020851015620009d5578190505b620009ed620009e48562000879565b8301826200097e565b50505b505050565b600082821c905092915050565b600062000a1560001984600802620009f5565b1980831691505092915050565b600062000a30838362000a02565b9150826002028217905092915050565b62000a4b82620007c6565b67ffffffffffffffff81111562000a675762000a66620007d1565b5b62000a7382546200082f565b62000a80828285620009a5565b600060209050601f83116001811462000ab8576000841562000aa3578287015190505b62000aaf858262000a22565b86555062000b1f565b601f19841662000ac88662000864565b60005b8281101562000af25784890151825560018201915060208501945060208101905062000acb565b8683101562000b12578489015162000b0e601f89168262000a02565b8355505b6001600288020188555050505b505050505050565b62000b3281620008ec565b82525050565b600060208201905062000b4f600083018462000b27565b92915050565b62000b60816200074f565b82525050565b600060408201905062000b7d600083018562000b55565b62000b8c602083018462000b55565b9392505050565b600082825260208201905092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600062000c0260248362000b93565b915062000c0f8262000ba4565b604082019050919050565b6000602082019050818103600083015262000c358162000bf3565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600062000c9a60228362000b93565b915062000ca78262000c3c565b604082019050919050565b6000602082019050818103600083015262000ccd8162000c8b565b9050919050565b6134a28062000ce46000396000f3fe6080604052600436106101dc5760003560e01c80636281a8c011610102578063a9059cbb11610095578063df31058011610064578063df3105801461065d578063e09b481314610674578063f3c533f61461069d578063f586c6d9146106da576101e3565b8063a9059cbb1461058f578063abd545bf146105cc578063b364574e146105f7578063dd62ed3e14610620576101e3565b80638da5cb5b116100d15780638da5cb5b146104d357806395d89b41146104fe5780639eec1a4514610529578063a457c2d714610552576101e3565b80636281a8c0146104515780636b130f9a1461046857806370a082311461047f578063715018a6146104bc576101e3565b8063220f66961161017a578063395093511161014957806339509351146103bb5780634ada218b146103f85780635e685f4414610423578063616eb6381461043a576101e3565b8063220f66961461031157806323b872dd1461033c5780632fc6028114610379578063313ce56714610390576101e3565b8063162b51fc116101b6578063162b51fc1461027b5780631693e8d4146102a657806318160ddd146102bd578063210ab5d6146102e8576101e3565b806306fdde03146101e8578063090666d614610213578063095ea7b31461023e576101e3565b366101e357005b600080fd5b3480156101f457600080fd5b506101fd610705565b60405161020a91906126ef565b60405180910390f35b34801561021f57600080fd5b50610228610797565b604051610235919061272c565b60405180910390f35b34801561024a57600080fd5b50610265600480360381019061026091906127ef565b6107aa565b604051610272919061272c565b60405180910390f35b34801561028757600080fd5b506102906107cd565b60405161029d919061283e565b60405180910390f35b3480156102b257600080fd5b506102bb6107d3565b005b3480156102c957600080fd5b506102d2610880565b6040516102df919061283e565b60405180910390f35b3480156102f457600080fd5b5061030f600480360381019061030a9190612859565b61088a565b005b34801561031d57600080fd5b50610326610975565b604051610333919061272c565b60405180910390f35b34801561034857600080fd5b50610363600480360381019061035e9190612886565b610988565b604051610370919061272c565b60405180910390f35b34801561038557600080fd5b5061038e6109b7565b005b34801561039c57600080fd5b506103a5610a73565b6040516103b291906128f5565b60405180910390f35b3480156103c757600080fd5b506103e260048036038101906103dd91906127ef565b610a7c565b6040516103ef919061272c565b60405180910390f35b34801561040457600080fd5b5061040d610ab3565b60405161041a919061272c565b60405180910390f35b34801561042f57600080fd5b50610438610ac6565b005b34801561044657600080fd5b5061044f610b68565b005b34801561045d57600080fd5b50610466610c41565b005b34801561047457600080fd5b5061047d610ce3565b005b34801561048b57600080fd5b506104a660048036038101906104a19190612859565b610d85565b6040516104b3919061283e565b60405180910390f35b3480156104c857600080fd5b506104d1610dcd565b005b3480156104df57600080fd5b506104e8610e69565b6040516104f5919061291f565b60405180910390f35b34801561050a57600080fd5b50610513610e8f565b60405161052091906126ef565b60405180910390f35b34801561053557600080fd5b50610550600480360381019061054b9190612859565b610f21565b005b34801561055e57600080fd5b50610579600480360381019061057491906127ef565b6110ac565b604051610586919061272c565b60405180910390f35b34801561059b57600080fd5b506105b660048036038101906105b191906127ef565b611123565b6040516105c3919061272c565b60405180910390f35b3480156105d857600080fd5b506105e1611146565b6040516105ee919061283e565b60405180910390f35b34801561060357600080fd5b5061061e6004803603810190610619919061293a565b61114c565b005b34801561062c57600080fd5b5061064760048036038101906106429190612967565b6111e6565b604051610654919061283e565b60405180910390f35b34801561066957600080fd5b5061067261126d565b005b34801561068057600080fd5b5061069b60048036038101906106969190612859565b61130f565b005b3480156106a957600080fd5b506106c460048036038101906106bf919061293a565b6113fa565b6040516106d1919061283e565b60405180910390f35b3480156106e657600080fd5b506106ef611634565b6040516106fc919061291f565b60405180910390f35b606060058054610714906129d6565b80601f0160208091040260200160405190810160405280929190818152602001828054610740906129d6565b801561078d5780601f106107625761010080835404028352916020019161078d565b820191906000526020600020905b81548152906001019060200180831161077057829003601f168201915b5050505050905090565b600b60019054906101000a900460ff1681565b6000806107b56117c0565b90506107c28185856117c8565b600191505092915050565b60085481565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610863576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085a90612a53565b60405180910390fd5b6001600b60026101000a81548160ff021916908315150217905550565b6000600454905090565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461091a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161091190612a53565b60405180910390fd5b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600b60009054906101000a900460ff1681565b6000806109936117c0565b90506109a0858285611991565b6109ab858585611a1d565b60019150509392505050565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a3e90612a53565b60405180910390fd5b600b60019054906101000a900460ff1615600b60016101000a81548160ff021916908315150217905550565b60006012905090565b600080610a876117c0565b9050610aa8818585610a9985896111e6565b610aa39190612aa2565b6117c8565b600191505092915050565b600b60029054906101000a900460ff1681565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4d90612a53565b60405180910390fd5b600a600881905550600a600981905550565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bf8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bef90612a53565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015610c3e573d6000803e3d6000fd5b50565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cd1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cc890612a53565b60405180910390fd5b600a600881905550600f600981905550565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6a90612a53565b60405180910390fd5b60006008819055506000600981905550565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e5d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5490612a53565b60405180910390fd5b610e6760006122c8565b565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b606060068054610e9e906129d6565b80601f0160208091040260200160405190810160405280929190818152602001828054610eca906129d6565b8015610f175780601f10610eec57610100808354040283529160200191610f17565b820191906000526020600020905b815481529060010190602001808311610efa57829003601f168201915b5050505050905090565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610fb1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa890612a53565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb338373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401611007919061291f565b602060405180830381865afa158015611024573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110489190612aeb565b6040518363ffffffff1660e01b8152600401611065929190612b18565b6020604051808303816000875af1158015611084573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a89190612b6d565b5050565b6000806110b76117c0565b905060006110c582866111e6565b90508381101561110a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110190612c0c565b60405180910390fd5b61111782868684036117c8565b60019250505092915050565b60008061112e6117c0565b905061113b818585611a1d565b600191505092915050565b60095481565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111d390612a53565b60405180910390fd5b80600a8190555050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f490612a53565b60405180910390fd5b60036008819055506003600981905550565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461139f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161139690612a53565b60405180910390fd5b6001600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006060600267ffffffffffffffff81111561141957611418612c2c565b5b6040519080825280602002602001820160405280156114475781602001602082028036833780820191505090505b509050308160008151811061145f5761145e612c5b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061151c9190612c9f565b816001815181106115305761152f612c5b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506000737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663d06ca61f85846040518363ffffffff1660e01b81526004016115bb929190612d8a565b600060405180830381865afa1580156115d8573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906116019190612ed3565b905080600183516116129190612f1c565b8151811061162357611622612c5b565b5b602002602001015192505050919050565b600080737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611696573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116ba9190612c9f565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611735573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117599190612c9f565b6040518363ffffffff1660e01b8152600401611776929190612f50565b602060405180830381865afa158015611793573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117b79190612c9f565b90508091505090565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611837576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182e90612feb565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036118a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189d9061307d565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611984919061283e565b60405180910390a3505050565b600061199d84846111e6565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114611a175781811015611a09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a00906130e9565b60405180910390fd5b611a1684848484036117c8565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611a8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a839061317b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611afb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af29061320d565b60405180910390fd5b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611b81576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b789061329f565b60405180910390fd5b600b60019054906101000a900460ff1615611cfc576000611bdf6000803073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113fa565b9050600a5481118015611bff5750600b60009054906101000a900460ff16155b8015611c3d5750611c0e611634565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b15611c81576001600b60006101000a81548160ff021916908315150217905550611c6561238e565b6000600b60006101000a81548160ff0219169083151502179055505b6001471115611cfa576000479050600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611cf7573d6000803e3d6000fd5b50505b505b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611d9d5750600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80611db45750600b60009054906101000a900460ff165b15611ec6578181611dc59190612f1c565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611e559190612aa2565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611eb9919061283e565b60405180910390a36122c2565b611ece611634565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480611f395750611f0a611634565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b156121b857600b60029054906101000a900460ff16611f8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f849061330b565b60405180910390fd5b6000611f97611634565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611fcf5760095490505b611fd7611634565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff160361200f5760085490505b600060648260646120209190612f1c565b8561202b919061332b565b612035919061339c565b905083836120439190612f1c565b6000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550806000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546120d39190612aa2565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051612137919061283e565b60405180910390a360006064838661214f919061332b565b612159919061339c565b9050806000803073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546121a99190612aa2565b925050819055505050506122c1565b81816121c49190612f1c565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546122549190612aa2565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516122b8919061283e565b60405180910390a35b5b50505050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b3073ffffffffffffffffffffffffffffffffffffffff1663095ea7b3737a250d5630b4cf539739df2c5dacb4c659f2488d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016123fd929190612b18565b6020604051808303816000875af115801561241c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124409190612b6d565b50600061244c30610d85565b90506000600267ffffffffffffffff81111561246b5761246a612c2c565b5b6040519080825280602002602001820160405280156124995781602001602082028036833780820191505090505b50905030816000815181106124b1576124b0612c5b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561254a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061256e9190612c9f565b8160018151811061258257612581612c5b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff166318cbafe58360008430426040518663ffffffff1660e01b8152600401612612959493929190613412565b6000604051808303816000875af1158015612631573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061265a9190612ed3565b505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561269957808201518184015260208101905061267e565b60008484015250505050565b6000601f19601f8301169050919050565b60006126c18261265f565b6126cb818561266a565b93506126db81856020860161267b565b6126e4816126a5565b840191505092915050565b6000602082019050818103600083015261270981846126b6565b905092915050565b60008115159050919050565b61272681612711565b82525050565b6000602082019050612741600083018461271d565b92915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006127868261275b565b9050919050565b6127968161277b565b81146127a157600080fd5b50565b6000813590506127b38161278d565b92915050565b6000819050919050565b6127cc816127b9565b81146127d757600080fd5b50565b6000813590506127e9816127c3565b92915050565b6000806040838503121561280657612805612751565b5b6000612814858286016127a4565b9250506020612825858286016127da565b9150509250929050565b612838816127b9565b82525050565b6000602082019050612853600083018461282f565b92915050565b60006020828403121561286f5761286e612751565b5b600061287d848285016127a4565b91505092915050565b60008060006060848603121561289f5761289e612751565b5b60006128ad868287016127a4565b93505060206128be868287016127a4565b92505060406128cf868287016127da565b9150509250925092565b600060ff82169050919050565b6128ef816128d9565b82525050565b600060208201905061290a60008301846128e6565b92915050565b6129198161277b565b82525050565b60006020820190506129346000830184612910565b92915050565b6000602082840312156129505761294f612751565b5b600061295e848285016127da565b91505092915050565b6000806040838503121561297e5761297d612751565b5b600061298c858286016127a4565b925050602061299d858286016127a4565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806129ee57607f821691505b602082108103612a0157612a006129a7565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612a3d60208361266a565b9150612a4882612a07565b602082019050919050565b60006020820190508181036000830152612a6c81612a30565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612aad826127b9565b9150612ab8836127b9565b9250828201905080821115612ad057612acf612a73565b5b92915050565b600081519050612ae5816127c3565b92915050565b600060208284031215612b0157612b00612751565b5b6000612b0f84828501612ad6565b91505092915050565b6000604082019050612b2d6000830185612910565b612b3a602083018461282f565b9392505050565b612b4a81612711565b8114612b5557600080fd5b50565b600081519050612b6781612b41565b92915050565b600060208284031215612b8357612b82612751565b5b6000612b9184828501612b58565b91505092915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000612bf660258361266a565b9150612c0182612b9a565b604082019050919050565b60006020820190508181036000830152612c2581612be9565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050612c998161278d565b92915050565b600060208284031215612cb557612cb4612751565b5b6000612cc384828501612c8a565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612d018161277b565b82525050565b6000612d138383612cf8565b60208301905092915050565b6000602082019050919050565b6000612d3782612ccc565b612d418185612cd7565b9350612d4c83612ce8565b8060005b83811015612d7d578151612d648882612d07565b9750612d6f83612d1f565b925050600181019050612d50565b5085935050505092915050565b6000604082019050612d9f600083018561282f565b8181036020830152612db18184612d2c565b90509392505050565b600080fd5b612dc8826126a5565b810181811067ffffffffffffffff82111715612de757612de6612c2c565b5b80604052505050565b6000612dfa612747565b9050612e068282612dbf565b919050565b600067ffffffffffffffff821115612e2657612e25612c2c565b5b602082029050602081019050919050565b600080fd5b6000612e4f612e4a84612e0b565b612df0565b90508083825260208201905060208402830185811115612e7257612e71612e37565b5b835b81811015612e9b5780612e878882612ad6565b845260208401935050602081019050612e74565b5050509392505050565b600082601f830112612eba57612eb9612dba565b5b8151612eca848260208601612e3c565b91505092915050565b600060208284031215612ee957612ee8612751565b5b600082015167ffffffffffffffff811115612f0757612f06612756565b5b612f1384828501612ea5565b91505092915050565b6000612f27826127b9565b9150612f32836127b9565b9250828203905081811115612f4a57612f49612a73565b5b92915050565b6000604082019050612f656000830185612910565b612f726020830184612910565b9392505050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612fd560248361266a565b9150612fe082612f79565b604082019050919050565b6000602082019050818103600083015261300481612fc8565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061306760228361266a565b91506130728261300b565b604082019050919050565b600060208201905081810360008301526130968161305a565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b60006130d3601d8361266a565b91506130de8261309d565b602082019050919050565b60006020820190508181036000830152613102816130c6565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061316560258361266a565b915061317082613109565b604082019050919050565b6000602082019050818103600083015261319481613158565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006131f760238361266a565b91506132028261319b565b604082019050919050565b60006020820190508181036000830152613226816131ea565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b600061328960268361266a565b91506132948261322d565b604082019050919050565b600060208201905081810360008301526132b88161327c565b9050919050565b7f74726164696e67206e6f7420656e61626c656400000000000000000000000000600082015250565b60006132f560138361266a565b9150613300826132bf565b602082019050919050565b60006020820190508181036000830152613324816132e8565b9050919050565b6000613336826127b9565b9150613341836127b9565b925082820261334f816127b9565b9150828204841483151761336657613365612a73565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006133a7826127b9565b91506133b2836127b9565b9250826133c2576133c161336d565b5b828204905092915050565b6000819050919050565b6000819050919050565b60006133fc6133f76133f2846133cd565b6133d7565b6127b9565b9050919050565b61340c816133e1565b82525050565b600060a082019050613427600083018861282f565b6134346020830187613403565b81810360408301526134468186612d2c565b90506134556060830185612910565b613462608083018461282f565b969550505050505056fea2646970667358221220899ed03cfed829a61afaf57bfe62266a9aaa14856b7d1584de3b4e4ecbae401a64736f6c63430008120033000000000000000000000000221604ba51a66e750906d0a9fb0d67853d123f6c

Deployed Bytecode

0x6080604052600436106101dc5760003560e01c80636281a8c011610102578063a9059cbb11610095578063df31058011610064578063df3105801461065d578063e09b481314610674578063f3c533f61461069d578063f586c6d9146106da576101e3565b8063a9059cbb1461058f578063abd545bf146105cc578063b364574e146105f7578063dd62ed3e14610620576101e3565b80638da5cb5b116100d15780638da5cb5b146104d357806395d89b41146104fe5780639eec1a4514610529578063a457c2d714610552576101e3565b80636281a8c0146104515780636b130f9a1461046857806370a082311461047f578063715018a6146104bc576101e3565b8063220f66961161017a578063395093511161014957806339509351146103bb5780634ada218b146103f85780635e685f4414610423578063616eb6381461043a576101e3565b8063220f66961461031157806323b872dd1461033c5780632fc6028114610379578063313ce56714610390576101e3565b8063162b51fc116101b6578063162b51fc1461027b5780631693e8d4146102a657806318160ddd146102bd578063210ab5d6146102e8576101e3565b806306fdde03146101e8578063090666d614610213578063095ea7b31461023e576101e3565b366101e357005b600080fd5b3480156101f457600080fd5b506101fd610705565b60405161020a91906126ef565b60405180910390f35b34801561021f57600080fd5b50610228610797565b604051610235919061272c565b60405180910390f35b34801561024a57600080fd5b50610265600480360381019061026091906127ef565b6107aa565b604051610272919061272c565b60405180910390f35b34801561028757600080fd5b506102906107cd565b60405161029d919061283e565b60405180910390f35b3480156102b257600080fd5b506102bb6107d3565b005b3480156102c957600080fd5b506102d2610880565b6040516102df919061283e565b60405180910390f35b3480156102f457600080fd5b5061030f600480360381019061030a9190612859565b61088a565b005b34801561031d57600080fd5b50610326610975565b604051610333919061272c565b60405180910390f35b34801561034857600080fd5b50610363600480360381019061035e9190612886565b610988565b604051610370919061272c565b60405180910390f35b34801561038557600080fd5b5061038e6109b7565b005b34801561039c57600080fd5b506103a5610a73565b6040516103b291906128f5565b60405180910390f35b3480156103c757600080fd5b506103e260048036038101906103dd91906127ef565b610a7c565b6040516103ef919061272c565b60405180910390f35b34801561040457600080fd5b5061040d610ab3565b60405161041a919061272c565b60405180910390f35b34801561042f57600080fd5b50610438610ac6565b005b34801561044657600080fd5b5061044f610b68565b005b34801561045d57600080fd5b50610466610c41565b005b34801561047457600080fd5b5061047d610ce3565b005b34801561048b57600080fd5b506104a660048036038101906104a19190612859565b610d85565b6040516104b3919061283e565b60405180910390f35b3480156104c857600080fd5b506104d1610dcd565b005b3480156104df57600080fd5b506104e8610e69565b6040516104f5919061291f565b60405180910390f35b34801561050a57600080fd5b50610513610e8f565b60405161052091906126ef565b60405180910390f35b34801561053557600080fd5b50610550600480360381019061054b9190612859565b610f21565b005b34801561055e57600080fd5b50610579600480360381019061057491906127ef565b6110ac565b604051610586919061272c565b60405180910390f35b34801561059b57600080fd5b506105b660048036038101906105b191906127ef565b611123565b6040516105c3919061272c565b60405180910390f35b3480156105d857600080fd5b506105e1611146565b6040516105ee919061283e565b60405180910390f35b34801561060357600080fd5b5061061e6004803603810190610619919061293a565b61114c565b005b34801561062c57600080fd5b5061064760048036038101906106429190612967565b6111e6565b604051610654919061283e565b60405180910390f35b34801561066957600080fd5b5061067261126d565b005b34801561068057600080fd5b5061069b60048036038101906106969190612859565b61130f565b005b3480156106a957600080fd5b506106c460048036038101906106bf919061293a565b6113fa565b6040516106d1919061283e565b60405180910390f35b3480156106e657600080fd5b506106ef611634565b6040516106fc919061291f565b60405180910390f35b606060058054610714906129d6565b80601f0160208091040260200160405190810160405280929190818152602001828054610740906129d6565b801561078d5780601f106107625761010080835404028352916020019161078d565b820191906000526020600020905b81548152906001019060200180831161077057829003601f168201915b5050505050905090565b600b60019054906101000a900460ff1681565b6000806107b56117c0565b90506107c28185856117c8565b600191505092915050565b60085481565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610863576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085a90612a53565b60405180910390fd5b6001600b60026101000a81548160ff021916908315150217905550565b6000600454905090565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461091a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161091190612a53565b60405180910390fd5b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600b60009054906101000a900460ff1681565b6000806109936117c0565b90506109a0858285611991565b6109ab858585611a1d565b60019150509392505050565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a3e90612a53565b60405180910390fd5b600b60019054906101000a900460ff1615600b60016101000a81548160ff021916908315150217905550565b60006012905090565b600080610a876117c0565b9050610aa8818585610a9985896111e6565b610aa39190612aa2565b6117c8565b600191505092915050565b600b60029054906101000a900460ff1681565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4d90612a53565b60405180910390fd5b600a600881905550600a600981905550565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bf8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bef90612a53565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015610c3e573d6000803e3d6000fd5b50565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cd1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cc890612a53565b60405180910390fd5b600a600881905550600f600981905550565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6a90612a53565b60405180910390fd5b60006008819055506000600981905550565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e5d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5490612a53565b60405180910390fd5b610e6760006122c8565b565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b606060068054610e9e906129d6565b80601f0160208091040260200160405190810160405280929190818152602001828054610eca906129d6565b8015610f175780601f10610eec57610100808354040283529160200191610f17565b820191906000526020600020905b815481529060010190602001808311610efa57829003601f168201915b5050505050905090565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610fb1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa890612a53565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb338373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401611007919061291f565b602060405180830381865afa158015611024573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110489190612aeb565b6040518363ffffffff1660e01b8152600401611065929190612b18565b6020604051808303816000875af1158015611084573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a89190612b6d565b5050565b6000806110b76117c0565b905060006110c582866111e6565b90508381101561110a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110190612c0c565b60405180910390fd5b61111782868684036117c8565b60019250505092915050565b60008061112e6117c0565b905061113b818585611a1d565b600191505092915050565b60095481565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111d390612a53565b60405180910390fd5b80600a8190555050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f490612a53565b60405180910390fd5b60036008819055506003600981905550565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461139f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161139690612a53565b60405180910390fd5b6001600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006060600267ffffffffffffffff81111561141957611418612c2c565b5b6040519080825280602002602001820160405280156114475781602001602082028036833780820191505090505b509050308160008151811061145f5761145e612c5b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061151c9190612c9f565b816001815181106115305761152f612c5b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506000737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663d06ca61f85846040518363ffffffff1660e01b81526004016115bb929190612d8a565b600060405180830381865afa1580156115d8573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906116019190612ed3565b905080600183516116129190612f1c565b8151811061162357611622612c5b565b5b602002602001015192505050919050565b600080737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611696573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116ba9190612c9f565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611735573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117599190612c9f565b6040518363ffffffff1660e01b8152600401611776929190612f50565b602060405180830381865afa158015611793573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117b79190612c9f565b90508091505090565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611837576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182e90612feb565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036118a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189d9061307d565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611984919061283e565b60405180910390a3505050565b600061199d84846111e6565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114611a175781811015611a09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a00906130e9565b60405180910390fd5b611a1684848484036117c8565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611a8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a839061317b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611afb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af29061320d565b60405180910390fd5b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611b81576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b789061329f565b60405180910390fd5b600b60019054906101000a900460ff1615611cfc576000611bdf6000803073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113fa565b9050600a5481118015611bff5750600b60009054906101000a900460ff16155b8015611c3d5750611c0e611634565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b15611c81576001600b60006101000a81548160ff021916908315150217905550611c6561238e565b6000600b60006101000a81548160ff0219169083151502179055505b6001471115611cfa576000479050600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611cf7573d6000803e3d6000fd5b50505b505b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611d9d5750600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80611db45750600b60009054906101000a900460ff165b15611ec6578181611dc59190612f1c565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611e559190612aa2565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611eb9919061283e565b60405180910390a36122c2565b611ece611634565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480611f395750611f0a611634565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b156121b857600b60029054906101000a900460ff16611f8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f849061330b565b60405180910390fd5b6000611f97611634565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611fcf5760095490505b611fd7611634565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff160361200f5760085490505b600060648260646120209190612f1c565b8561202b919061332b565b612035919061339c565b905083836120439190612f1c565b6000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550806000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546120d39190612aa2565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051612137919061283e565b60405180910390a360006064838661214f919061332b565b612159919061339c565b9050806000803073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546121a99190612aa2565b925050819055505050506122c1565b81816121c49190612f1c565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546122549190612aa2565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516122b8919061283e565b60405180910390a35b5b50505050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b3073ffffffffffffffffffffffffffffffffffffffff1663095ea7b3737a250d5630b4cf539739df2c5dacb4c659f2488d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016123fd929190612b18565b6020604051808303816000875af115801561241c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124409190612b6d565b50600061244c30610d85565b90506000600267ffffffffffffffff81111561246b5761246a612c2c565b5b6040519080825280602002602001820160405280156124995781602001602082028036833780820191505090505b50905030816000815181106124b1576124b0612c5b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561254a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061256e9190612c9f565b8160018151811061258257612581612c5b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff166318cbafe58360008430426040518663ffffffff1660e01b8152600401612612959493929190613412565b6000604051808303816000875af1158015612631573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061265a9190612ed3565b505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561269957808201518184015260208101905061267e565b60008484015250505050565b6000601f19601f8301169050919050565b60006126c18261265f565b6126cb818561266a565b93506126db81856020860161267b565b6126e4816126a5565b840191505092915050565b6000602082019050818103600083015261270981846126b6565b905092915050565b60008115159050919050565b61272681612711565b82525050565b6000602082019050612741600083018461271d565b92915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006127868261275b565b9050919050565b6127968161277b565b81146127a157600080fd5b50565b6000813590506127b38161278d565b92915050565b6000819050919050565b6127cc816127b9565b81146127d757600080fd5b50565b6000813590506127e9816127c3565b92915050565b6000806040838503121561280657612805612751565b5b6000612814858286016127a4565b9250506020612825858286016127da565b9150509250929050565b612838816127b9565b82525050565b6000602082019050612853600083018461282f565b92915050565b60006020828403121561286f5761286e612751565b5b600061287d848285016127a4565b91505092915050565b60008060006060848603121561289f5761289e612751565b5b60006128ad868287016127a4565b93505060206128be868287016127a4565b92505060406128cf868287016127da565b9150509250925092565b600060ff82169050919050565b6128ef816128d9565b82525050565b600060208201905061290a60008301846128e6565b92915050565b6129198161277b565b82525050565b60006020820190506129346000830184612910565b92915050565b6000602082840312156129505761294f612751565b5b600061295e848285016127da565b91505092915050565b6000806040838503121561297e5761297d612751565b5b600061298c858286016127a4565b925050602061299d858286016127a4565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806129ee57607f821691505b602082108103612a0157612a006129a7565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612a3d60208361266a565b9150612a4882612a07565b602082019050919050565b60006020820190508181036000830152612a6c81612a30565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612aad826127b9565b9150612ab8836127b9565b9250828201905080821115612ad057612acf612a73565b5b92915050565b600081519050612ae5816127c3565b92915050565b600060208284031215612b0157612b00612751565b5b6000612b0f84828501612ad6565b91505092915050565b6000604082019050612b2d6000830185612910565b612b3a602083018461282f565b9392505050565b612b4a81612711565b8114612b5557600080fd5b50565b600081519050612b6781612b41565b92915050565b600060208284031215612b8357612b82612751565b5b6000612b9184828501612b58565b91505092915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000612bf660258361266a565b9150612c0182612b9a565b604082019050919050565b60006020820190508181036000830152612c2581612be9565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050612c998161278d565b92915050565b600060208284031215612cb557612cb4612751565b5b6000612cc384828501612c8a565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612d018161277b565b82525050565b6000612d138383612cf8565b60208301905092915050565b6000602082019050919050565b6000612d3782612ccc565b612d418185612cd7565b9350612d4c83612ce8565b8060005b83811015612d7d578151612d648882612d07565b9750612d6f83612d1f565b925050600181019050612d50565b5085935050505092915050565b6000604082019050612d9f600083018561282f565b8181036020830152612db18184612d2c565b90509392505050565b600080fd5b612dc8826126a5565b810181811067ffffffffffffffff82111715612de757612de6612c2c565b5b80604052505050565b6000612dfa612747565b9050612e068282612dbf565b919050565b600067ffffffffffffffff821115612e2657612e25612c2c565b5b602082029050602081019050919050565b600080fd5b6000612e4f612e4a84612e0b565b612df0565b90508083825260208201905060208402830185811115612e7257612e71612e37565b5b835b81811015612e9b5780612e878882612ad6565b845260208401935050602081019050612e74565b5050509392505050565b600082601f830112612eba57612eb9612dba565b5b8151612eca848260208601612e3c565b91505092915050565b600060208284031215612ee957612ee8612751565b5b600082015167ffffffffffffffff811115612f0757612f06612756565b5b612f1384828501612ea5565b91505092915050565b6000612f27826127b9565b9150612f32836127b9565b9250828203905081811115612f4a57612f49612a73565b5b92915050565b6000604082019050612f656000830185612910565b612f726020830184612910565b9392505050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612fd560248361266a565b9150612fe082612f79565b604082019050919050565b6000602082019050818103600083015261300481612fc8565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061306760228361266a565b91506130728261300b565b604082019050919050565b600060208201905081810360008301526130968161305a565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b60006130d3601d8361266a565b91506130de8261309d565b602082019050919050565b60006020820190508181036000830152613102816130c6565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061316560258361266a565b915061317082613109565b604082019050919050565b6000602082019050818103600083015261319481613158565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006131f760238361266a565b91506132028261319b565b604082019050919050565b60006020820190508181036000830152613226816131ea565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b600061328960268361266a565b91506132948261322d565b604082019050919050565b600060208201905081810360008301526132b88161327c565b9050919050565b7f74726164696e67206e6f7420656e61626c656400000000000000000000000000600082015250565b60006132f560138361266a565b9150613300826132bf565b602082019050919050565b60006020820190508181036000830152613324816132e8565b9050919050565b6000613336826127b9565b9150613341836127b9565b925082820261334f816127b9565b9150828204841483151761336657613365612a73565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006133a7826127b9565b91506133b2836127b9565b9250826133c2576133c161336d565b5b828204905092915050565b6000819050919050565b6000819050919050565b60006133fc6133f76133f2846133cd565b6133d7565b6127b9565b9050919050565b61340c816133e1565b82525050565b600060a082019050613427600083018861282f565b6134346020830187613403565b81810360408301526134468186612d2c565b90506134556060830185612910565b613462608083018461282f565b969550505050505056fea2646970667358221220899ed03cfed829a61afaf57bfe62266a9aaa14856b7d1584de3b4e4ecbae401a64736f6c63430008120033

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

000000000000000000000000221604ba51a66e750906d0a9fb0d67853d123f6c

-----Decoded View---------------
Arg [0] : _marketing_wl (address): 0x221604BA51A66E750906D0a9FB0d67853d123f6C

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000221604ba51a66e750906d0a9fb0d67853d123f6c


Deployed Bytecode Sourcemap

3817:9735:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6708:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4472:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7631:203;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4213:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5182:82;;;;;;;;;;;;;:::i;:::-;;7024:108;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5797:112;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4437:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7840:261;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12354:95;;;;;;;;;;;;;:::i;:::-;;6925:93;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8107:241;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4512:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4815:129;;;;;;;;;;;;;:::i;:::-;;12622:106;;;;;;;;;;;;;:::i;:::-;;4677:132;;;;;;;;;;;;;:::i;:::-;;5079:97;;;;;;;;;;;;;:::i;:::-;;7138:127;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5565:103;;;;;;;;;;;;;:::i;:::-;;4058:20;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6814:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12455:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8354:437;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7271:195;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4256:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12231:117;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7472:153;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4950:123;;;;;;;;;;;;;:::i;:::-;;5674:113;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11883:342;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11624:253;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6708:100;6762:13;6795:5;6788:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6708:100;:::o;4472:33::-;;;;;;;;;;;;;:::o;7631:203::-;7714:4;7731:14;7748:12;:10;:12::i;:::-;7731:29;;7771:33;7780:6;7788:7;7797:6;7771:8;:33::i;:::-;7822:4;7815:11;;;7631:203;;;;:::o;4213:28::-;;;;:::o;5182:82::-;4604:10;4595:19;;:5;;;;;;;;;;;:19;;;4587:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;5252:4:::1;5235:14;;:21;;;;;;;;;;;;;;;;;;5182:82::o:0;7024:108::-;7085:7;7112:12;;7105:19;;7024:108;:::o;5797:112::-;4604:10;4595:19;;:5;;;;;;;;;;;:19;;;4587:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;5896:5:::1;5866:18;:27;5885:7;5866:27;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;5797:112:::0;:::o;4437:28::-;;;;;;;;;;;;;:::o;7840:261::-;7937:4;7954:15;7972:12;:10;:12::i;:::-;7954:30;;7995:38;8011:4;8017:7;8026:6;7995:15;:38::i;:::-;8044:27;8054:4;8060:2;8064:6;8044:9;:27::i;:::-;8089:4;8082:11;;;7840:261;;;;;:::o;12354:95::-;4604:10;4595:19;;:5;;;;;;;;;;;:19;;;4587:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;12428:13:::1;;;;;;;;;;;12427:14;12411:13;;:30;;;;;;;;;;;;;;;;;;12354:95::o:0;6925:93::-;6983:5;7008:2;7001:9;;6925:93;:::o;8107:241::-;8195:4;8212:14;8229:12;:10;:12::i;:::-;8212:29;;8252:66;8261:6;8269:7;8307:10;8278:26;8288:6;8296:7;8278:9;:26::i;:::-;:39;;;;:::i;:::-;8252:8;:66::i;:::-;8336:4;8329:11;;;8107:241;;;;:::o;4512:34::-;;;;;;;;;;;;;:::o;4815:129::-;4604:10;4595:19;;:5;;;;;;;;;;;:19;;;4587:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;4895:2:::1;4884:7;:13;;;;4926:2;4915:8;:13;;;;4815:129::o:0;12622:106::-;4604:10;4595:19;;:5;;;;;;;;;;;:19;;;4587:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;12677:10:::1;12669:28;;:51;12698:21;12669:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;12622:106::o:0;4677:132::-;4604:10;4595:19;;:5;;;;;;;;;;;:19;;;4587:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;4757:2:::1;4746:7;:13;;;;4790:2;4779:8;:13;;;;4677:132::o:0;5079:97::-;4604:10;4595:19;;:5;;;;;;;;;;;:19;;;4587:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;5143:1:::1;5132:7;:12;;;;5166:1;5155:8;:12;;;;5079:97::o:0;7138:127::-;7212:7;7239:9;:18;7249:7;7239:18;;;;;;;;;;;;;;;;7232:25;;7138:127;;;:::o;5565:103::-;4604:10;4595:19;;:5;;;;;;;;;;;:19;;;4587:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;5630:30:::1;5657:1;5630:18;:30::i;:::-;5565:103::o:0;4058:20::-;;;;;;;;;;;;;:::o;6814:104::-;6870:13;6903:7;6896:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6814:104;:::o;12455:161::-;4604:10;4595:19;;:5;;;;;;;;;;;:19;;;4587:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;12529:11:::1;12522:28;;;12551:10;12570:11;12563:29;;;12601:4;12563:44;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12522:86;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12455:161:::0;:::o;8354:437::-;8447:4;8464:14;8481:12;:10;:12::i;:::-;8464:29;;8504:24;8531:26;8541:6;8549:7;8531:9;:26::i;:::-;8504:53;;8596:15;8576:16;:35;;8568:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;8689:61;8698:6;8706:7;8734:15;8715:16;:34;8689:8;:61::i;:::-;8779:4;8772:11;;;;8354:437;;;;:::o;7271:195::-;7350:4;7367:14;7384:12;:10;:12::i;:::-;7367:29;;7407;7417:6;7425:2;7429:6;7407:9;:29::i;:::-;7454:4;7447:11;;;7271:195;;;;:::o;4256:28::-;;;;:::o;12231:117::-;4604:10;4595:19;;:5;;;;;;;;;;;:19;;;4587:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;12326:14:::1;12310:13;:30;;;;12231:117:::0;:::o;7472:153::-;7562:7;7589:11;:19;7601:6;7589:19;;;;;;;;;;;;;;;:28;7609:7;7589:28;;;;;;;;;;;;;;;;7582:35;;7472:153;;;;:::o;4950:123::-;4604:10;4595:19;;:5;;;;;;;;;;;:19;;;4587:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;5028:1:::1;5017:7;:12;;;;5057:1;5046:8;:12;;;;4950:123::o:0;5674:113::-;4604:10;4595:19;;:5;;;;;;;;;;;:19;;;4587:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;5775:4:::1;5745:18;:27;5764:7;5745:27;;;;;;;;;;;;;;;;:34;;;;;;;;;;;;;;;;;;5674:113:::0;:::o;11883:342::-;11946:7;11960:21;12007:1;11993:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11986:23;;12032:4;12014;12019:1;12014:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;4386:42;12052:31;;;:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12042:4;12047:1;12042:7;;;;;;;;:::i;:::-;;;;;;;:43;;;;;;;;;;;12090:30;4386:42;12123:40;;;12164:7;12173:4;12123:55;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12090:88;;12190:13;12218:1;12204:4;:11;:15;;;;:::i;:::-;12190:30;;;;;;;;:::i;:::-;;;;;;;;12183:37;;;;11883:342;;;:::o;11624:253::-;11671:7;11697:19;4386:42;11737:34;;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11719:63;;;11791:4;4386:42;11798:31;;;:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11719:113;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11697:135;;11858:11;11851:18;;;11624:253;:::o;109:98::-;162:7;189:10;182:17;;109:98;:::o;12734:348::-;12855:1;12837:20;;:6;:20;;;12829:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;12936:1;12917:21;;:7;:21;;;12909:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;13019:6;12988:11;:19;13000:6;12988:19;;;;;;;;;;;;;;;:28;13008:7;12988:28;;;;;;;;;;;;;;;:37;;;;13058:7;13041:33;;13050:6;13041:33;;;13067:6;13041:33;;;;;;:::i;:::-;;;;;;;;12734:348;;;:::o;13088:422::-;13190:24;13217:26;13227:6;13235:7;13217:9;:26::i;:::-;13190:53;;13278:17;13258:16;:37;13254:249;;13340:6;13320:16;:26;;13312:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;13424:52;13433:6;13441:7;13469:6;13450:16;:25;13424:8;:52::i;:::-;13254:249;13179:331;13088:422;;;:::o;8797:2314::-;8910:1;8894:18;;:4;:18;;;8886:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8987:1;8973:16;;:2;:16;;;8965:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;9046:19;9068:9;:15;9078:4;9068:15;;;;;;;;;;;;;;;;9046:37;;9117:6;9102:11;:21;;9094:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;9204:13;;;;;;;;;;;9200:556;;;9233:20;9256:41;9272:9;:24;9290:4;9272:24;;;;;;;;;;;;;;;;9256:15;:41::i;:::-;9233:64;;9330:13;;9315:12;:28;:50;;;;;9349:16;;;;;;;;;;;9348:17;9315:50;:76;;;;;9375:16;:14;:16::i;:::-;9369:22;;:2;:22;;;9315:76;9312:218;;;9430:4;9411:16;;:23;;;;;;;;;;;;;;;;;;9453:18;:16;:18::i;:::-;9509:5;9490:16;;:24;;;;;;;;;;;;;;;;;;9312:218;9600:1;9576:21;:25;9573:172;;;9622:20;9645:21;9622:44;;9693:12;;;;;;;;;;;9685:30;;:44;9716:12;9685:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9603:142;9573:172;9218:538;9200:556;9802:18;:24;9821:4;9802:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;9830:18;:22;9849:2;9830:22;;;;;;;;;;;;;;;;;;;;;;;;;9802:50;:70;;;;9856:16;;;;;;;;;;;9802:70;9798:1306;;;9936:6;9922:11;:20;;;;:::i;:::-;9904:9;:15;9914:4;9904:15;;;;;;;;;;;;;;;:38;;;;9978:6;9961:9;:13;9971:2;9961:13;;;;;;;;;;;;;;;;:23;;;;;;;:::i;:::-;;;;;;;;10019:2;10004:26;;10013:4;10004:26;;;10023:6;10004:26;;;;;;:::i;:::-;;;;;;;;9798:1306;;;10077:16;:14;:16::i;:::-;10071:22;;:2;:22;;;:50;;;;10105:16;:14;:16::i;:::-;10097:24;;:4;:24;;;10071:50;10067:1022;;;10154:14;;;;;;;;;;;10146:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;10215:17;10264:16;:14;:16::i;:::-;10258:22;;:2;:22;;;10255:47;;10294:8;;10282:20;;10255:47;10347:16;:14;:16::i;:::-;10339:24;;:4;:24;;;10336:48;;10377:7;;10365:19;;10336:48;10454:15;10501:3;10488:9;10482:3;:15;;;;:::i;:::-;10472:6;:26;;;;:::i;:::-;:32;;;;:::i;:::-;10454:50;;10559:6;10545:11;:20;;;;:::i;:::-;10527:9;:15;10537:4;10527:15;;;;;;;;;;;;;;;:38;;;;10607:7;10588:9;:13;10598:2;10588:13;;;;;;;;;;;;;;;;:26;;;;;;;:::i;:::-;;;;;;;;10657:2;10642:27;;10651:4;10642:27;;;10661:7;10642:27;;;;;;:::i;:::-;;;;;;;;10706:23;10754:3;10742:9;10733:6;:18;;;;:::i;:::-;:24;;;;:::i;:::-;10706:51;;10808:15;10780:9;:24;10798:4;10780:24;;;;;;;;;;;;;;;;:43;;;;;;;:::i;:::-;;;;;;;;10123:737;;;10067:1022;;;10948:6;10934:11;:20;;;;:::i;:::-;10916:9;:15;10926:4;10916:15;;;;;;;;;;;;;;;:38;;;;10994:6;10977:9;:13;10987:2;10977:13;;;;;;;;;;;;;;;;:23;;;;;;;:::i;:::-;;;;;;;;11058:2;11043:26;;11052:4;11043:26;;;11062:6;11043:26;;;;;;:::i;:::-;;;;;;;;10067:1022;9798:1306;8875:2236;8797:2314;;;:::o;5370:189::-;5444:16;5463:5;;;;;;;;;;;5444:24;;5487:8;5479:5;;:16;;;;;;;;;;;;;;;;;;5542:8;5511:40;;5532:8;5511:40;;;;;;;;;;;;5433:126;5370:189;:::o;11117:501::-;11180:4;11165:29;;;4386:42;11205:17;11165:58;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11234:20;11257:24;11275:4;11257:9;:24::i;:::-;11234:47;;11292:21;11330:1;11316:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11292:40;;11361:4;11343;11348:1;11343:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;4386:42;11387:31;;;:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11377:4;11382:1;11377:7;;;;;;;;:::i;:::-;;;;;;;:43;;;;;;;;;;;4386:42;11431:48;;;11494:12;11521:1;11537:4;11564;11584:15;11431:179;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11154:464;;11117:501::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1349:90::-;1383:7;1426:5;1419:13;1412:21;1401:32;;1349:90;;;:::o;1445:109::-;1526:21;1541:5;1526:21;:::i;:::-;1521:3;1514:34;1445:109;;:::o;1560:210::-;1647:4;1685:2;1674:9;1670:18;1662:26;;1698:65;1760:1;1749:9;1745:17;1736:6;1698:65;:::i;:::-;1560:210;;;;:::o;1776:75::-;1809:6;1842:2;1836:9;1826:19;;1776:75;:::o;1857:117::-;1966:1;1963;1956:12;1980:117;2089:1;2086;2079:12;2103:126;2140:7;2180:42;2173:5;2169:54;2158:65;;2103:126;;;:::o;2235:96::-;2272:7;2301:24;2319:5;2301:24;:::i;:::-;2290:35;;2235:96;;;:::o;2337:122::-;2410:24;2428:5;2410:24;:::i;:::-;2403:5;2400:35;2390:63;;2449:1;2446;2439:12;2390:63;2337:122;:::o;2465:139::-;2511:5;2549:6;2536:20;2527:29;;2565:33;2592:5;2565:33;:::i;:::-;2465:139;;;;:::o;2610:77::-;2647:7;2676:5;2665:16;;2610:77;;;:::o;2693:122::-;2766:24;2784:5;2766:24;:::i;:::-;2759:5;2756:35;2746:63;;2805:1;2802;2795:12;2746:63;2693:122;:::o;2821:139::-;2867:5;2905:6;2892:20;2883:29;;2921:33;2948:5;2921:33;:::i;:::-;2821:139;;;;:::o;2966:474::-;3034:6;3042;3091:2;3079:9;3070:7;3066:23;3062:32;3059:119;;;3097:79;;:::i;:::-;3059:119;3217:1;3242:53;3287:7;3278:6;3267:9;3263:22;3242:53;:::i;:::-;3232:63;;3188:117;3344:2;3370:53;3415:7;3406:6;3395:9;3391:22;3370:53;:::i;:::-;3360:63;;3315:118;2966:474;;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:329::-;3857:6;3906:2;3894:9;3885:7;3881:23;3877:32;3874:119;;;3912:79;;:::i;:::-;3874:119;4032:1;4057:53;4102:7;4093:6;4082:9;4078:22;4057:53;:::i;:::-;4047:63;;4003:117;3798:329;;;;:::o;4133:619::-;4210:6;4218;4226;4275:2;4263:9;4254:7;4250:23;4246:32;4243:119;;;4281:79;;:::i;:::-;4243:119;4401:1;4426:53;4471:7;4462:6;4451:9;4447:22;4426:53;:::i;:::-;4416:63;;4372:117;4528:2;4554:53;4599:7;4590:6;4579:9;4575:22;4554:53;:::i;:::-;4544:63;;4499:118;4656:2;4682:53;4727:7;4718:6;4707:9;4703:22;4682:53;:::i;:::-;4672:63;;4627:118;4133:619;;;;;:::o;4758:86::-;4793:7;4833:4;4826:5;4822:16;4811:27;;4758:86;;;:::o;4850:112::-;4933:22;4949:5;4933:22;:::i;:::-;4928:3;4921:35;4850:112;;:::o;4968:214::-;5057:4;5095:2;5084:9;5080:18;5072:26;;5108:67;5172:1;5161:9;5157:17;5148:6;5108:67;:::i;:::-;4968:214;;;;:::o;5188:118::-;5275:24;5293:5;5275:24;:::i;:::-;5270:3;5263:37;5188:118;;:::o;5312:222::-;5405:4;5443:2;5432:9;5428:18;5420:26;;5456:71;5524:1;5513:9;5509:17;5500:6;5456:71;:::i;:::-;5312:222;;;;:::o;5540:329::-;5599:6;5648:2;5636:9;5627:7;5623:23;5619:32;5616:119;;;5654:79;;:::i;:::-;5616:119;5774:1;5799:53;5844:7;5835:6;5824:9;5820:22;5799:53;:::i;:::-;5789:63;;5745:117;5540:329;;;;:::o;5875:474::-;5943:6;5951;6000:2;5988:9;5979:7;5975:23;5971:32;5968:119;;;6006:79;;:::i;:::-;5968:119;6126:1;6151:53;6196:7;6187:6;6176:9;6172:22;6151:53;:::i;:::-;6141:63;;6097:117;6253:2;6279:53;6324:7;6315:6;6304:9;6300:22;6279:53;:::i;:::-;6269:63;;6224:118;5875:474;;;;;:::o;6355:180::-;6403:77;6400:1;6393:88;6500:4;6497:1;6490:15;6524:4;6521:1;6514:15;6541:320;6585:6;6622:1;6616:4;6612:12;6602:22;;6669:1;6663:4;6659:12;6690:18;6680:81;;6746:4;6738:6;6734:17;6724:27;;6680:81;6808:2;6800:6;6797:14;6777:18;6774:38;6771:84;;6827:18;;:::i;:::-;6771:84;6592:269;6541:320;;;:::o;6867:182::-;7007:34;7003:1;6995:6;6991:14;6984:58;6867:182;:::o;7055:366::-;7197:3;7218:67;7282:2;7277:3;7218:67;:::i;:::-;7211:74;;7294:93;7383:3;7294:93;:::i;:::-;7412:2;7407:3;7403:12;7396:19;;7055:366;;;:::o;7427:419::-;7593:4;7631:2;7620:9;7616:18;7608:26;;7680:9;7674:4;7670:20;7666:1;7655:9;7651:17;7644:47;7708:131;7834:4;7708:131;:::i;:::-;7700:139;;7427:419;;;:::o;7852:180::-;7900:77;7897:1;7890:88;7997:4;7994:1;7987:15;8021:4;8018:1;8011:15;8038:191;8078:3;8097:20;8115:1;8097:20;:::i;:::-;8092:25;;8131:20;8149:1;8131:20;:::i;:::-;8126:25;;8174:1;8171;8167:9;8160:16;;8195:3;8192:1;8189:10;8186:36;;;8202:18;;:::i;:::-;8186:36;8038:191;;;;:::o;8235:143::-;8292:5;8323:6;8317:13;8308:22;;8339:33;8366:5;8339:33;:::i;:::-;8235:143;;;;:::o;8384:351::-;8454:6;8503:2;8491:9;8482:7;8478:23;8474:32;8471:119;;;8509:79;;:::i;:::-;8471:119;8629:1;8654:64;8710:7;8701:6;8690:9;8686:22;8654:64;:::i;:::-;8644:74;;8600:128;8384:351;;;;:::o;8741:332::-;8862:4;8900:2;8889:9;8885:18;8877:26;;8913:71;8981:1;8970:9;8966:17;8957:6;8913:71;:::i;:::-;8994:72;9062:2;9051:9;9047:18;9038:6;8994:72;:::i;:::-;8741:332;;;;;:::o;9079:116::-;9149:21;9164:5;9149:21;:::i;:::-;9142:5;9139:32;9129:60;;9185:1;9182;9175:12;9129:60;9079:116;:::o;9201:137::-;9255:5;9286:6;9280:13;9271:22;;9302:30;9326:5;9302:30;:::i;:::-;9201:137;;;;:::o;9344:345::-;9411:6;9460:2;9448:9;9439:7;9435:23;9431:32;9428:119;;;9466:79;;:::i;:::-;9428:119;9586:1;9611:61;9664:7;9655:6;9644:9;9640:22;9611:61;:::i;:::-;9601:71;;9557:125;9344:345;;;;:::o;9695:224::-;9835:34;9831:1;9823:6;9819:14;9812:58;9904:7;9899:2;9891:6;9887:15;9880:32;9695:224;:::o;9925:366::-;10067:3;10088:67;10152:2;10147:3;10088:67;:::i;:::-;10081:74;;10164:93;10253:3;10164:93;:::i;:::-;10282:2;10277:3;10273:12;10266:19;;9925:366;;;:::o;10297:419::-;10463:4;10501:2;10490:9;10486:18;10478:26;;10550:9;10544:4;10540:20;10536:1;10525:9;10521:17;10514:47;10578:131;10704:4;10578:131;:::i;:::-;10570:139;;10297:419;;;:::o;10722:180::-;10770:77;10767:1;10760:88;10867:4;10864:1;10857:15;10891:4;10888:1;10881:15;10908:180;10956:77;10953:1;10946:88;11053:4;11050:1;11043:15;11077:4;11074:1;11067:15;11094:143;11151:5;11182:6;11176:13;11167:22;;11198:33;11225:5;11198:33;:::i;:::-;11094:143;;;;:::o;11243:351::-;11313:6;11362:2;11350:9;11341:7;11337:23;11333:32;11330:119;;;11368:79;;:::i;:::-;11330:119;11488:1;11513:64;11569:7;11560:6;11549:9;11545:22;11513:64;:::i;:::-;11503:74;;11459:128;11243:351;;;;:::o;11600:114::-;11667:6;11701:5;11695:12;11685:22;;11600:114;;;:::o;11720:184::-;11819:11;11853:6;11848:3;11841:19;11893:4;11888:3;11884:14;11869:29;;11720:184;;;;:::o;11910:132::-;11977:4;12000:3;11992:11;;12030:4;12025:3;12021:14;12013:22;;11910:132;;;:::o;12048:108::-;12125:24;12143:5;12125:24;:::i;:::-;12120:3;12113:37;12048:108;;:::o;12162:179::-;12231:10;12252:46;12294:3;12286:6;12252:46;:::i;:::-;12330:4;12325:3;12321:14;12307:28;;12162:179;;;;:::o;12347:113::-;12417:4;12449;12444:3;12440:14;12432:22;;12347:113;;;:::o;12496:732::-;12615:3;12644:54;12692:5;12644:54;:::i;:::-;12714:86;12793:6;12788:3;12714:86;:::i;:::-;12707:93;;12824:56;12874:5;12824:56;:::i;:::-;12903:7;12934:1;12919:284;12944:6;12941:1;12938:13;12919:284;;;13020:6;13014:13;13047:63;13106:3;13091:13;13047:63;:::i;:::-;13040:70;;13133:60;13186:6;13133:60;:::i;:::-;13123:70;;12979:224;12966:1;12963;12959:9;12954:14;;12919:284;;;12923:14;13219:3;13212:10;;12620:608;;;12496:732;;;;:::o;13234:483::-;13405:4;13443:2;13432:9;13428:18;13420:26;;13456:71;13524:1;13513:9;13509:17;13500:6;13456:71;:::i;:::-;13574:9;13568:4;13564:20;13559:2;13548:9;13544:18;13537:48;13602:108;13705:4;13696:6;13602:108;:::i;:::-;13594:116;;13234:483;;;;;:::o;13723:117::-;13832:1;13829;13822:12;13846:281;13929:27;13951:4;13929:27;:::i;:::-;13921:6;13917:40;14059:6;14047:10;14044:22;14023:18;14011:10;14008:34;14005:62;14002:88;;;14070:18;;:::i;:::-;14002:88;14110:10;14106:2;14099:22;13889:238;13846:281;;:::o;14133:129::-;14167:6;14194:20;;:::i;:::-;14184:30;;14223:33;14251:4;14243:6;14223:33;:::i;:::-;14133:129;;;:::o;14268:311::-;14345:4;14435:18;14427:6;14424:30;14421:56;;;14457:18;;:::i;:::-;14421:56;14507:4;14499:6;14495:17;14487:25;;14567:4;14561;14557:15;14549:23;;14268:311;;;:::o;14585:117::-;14694:1;14691;14684:12;14725:732;14832:5;14857:81;14873:64;14930:6;14873:64;:::i;:::-;14857:81;:::i;:::-;14848:90;;14958:5;14987:6;14980:5;14973:21;15021:4;15014:5;15010:16;15003:23;;15074:4;15066:6;15062:17;15054:6;15050:30;15103:3;15095:6;15092:15;15089:122;;;15122:79;;:::i;:::-;15089:122;15237:6;15220:231;15254:6;15249:3;15246:15;15220:231;;;15329:3;15358:48;15402:3;15390:10;15358:48;:::i;:::-;15353:3;15346:61;15436:4;15431:3;15427:14;15420:21;;15296:155;15280:4;15275:3;15271:14;15264:21;;15220:231;;;15224:21;14838:619;;14725:732;;;;;:::o;15480:385::-;15562:5;15611:3;15604:4;15596:6;15592:17;15588:27;15578:122;;15619:79;;:::i;:::-;15578:122;15729:6;15723:13;15754:105;15855:3;15847:6;15840:4;15832:6;15828:17;15754:105;:::i;:::-;15745:114;;15568:297;15480:385;;;;:::o;15871:554::-;15966:6;16015:2;16003:9;15994:7;15990:23;15986:32;15983:119;;;16021:79;;:::i;:::-;15983:119;16162:1;16151:9;16147:17;16141:24;16192:18;16184:6;16181:30;16178:117;;;16214:79;;:::i;:::-;16178:117;16319:89;16400:7;16391:6;16380:9;16376:22;16319:89;:::i;:::-;16309:99;;16112:306;15871:554;;;;:::o;16431:194::-;16471:4;16491:20;16509:1;16491:20;:::i;:::-;16486:25;;16525:20;16543:1;16525:20;:::i;:::-;16520:25;;16569:1;16566;16562:9;16554:17;;16593:1;16587:4;16584:11;16581:37;;;16598:18;;:::i;:::-;16581:37;16431:194;;;;:::o;16631:332::-;16752:4;16790:2;16779:9;16775:18;16767:26;;16803:71;16871:1;16860:9;16856:17;16847:6;16803:71;:::i;:::-;16884:72;16952:2;16941:9;16937:18;16928:6;16884:72;:::i;:::-;16631:332;;;;;:::o;16969:223::-;17109:34;17105:1;17097:6;17093:14;17086:58;17178:6;17173:2;17165:6;17161:15;17154:31;16969:223;:::o;17198:366::-;17340:3;17361:67;17425:2;17420:3;17361:67;:::i;:::-;17354:74;;17437:93;17526:3;17437:93;:::i;:::-;17555:2;17550:3;17546:12;17539:19;;17198:366;;;:::o;17570:419::-;17736:4;17774:2;17763:9;17759:18;17751:26;;17823:9;17817:4;17813:20;17809:1;17798:9;17794:17;17787:47;17851:131;17977:4;17851:131;:::i;:::-;17843:139;;17570:419;;;:::o;17995:221::-;18135:34;18131:1;18123:6;18119:14;18112:58;18204:4;18199:2;18191:6;18187:15;18180:29;17995:221;:::o;18222:366::-;18364:3;18385:67;18449:2;18444:3;18385:67;:::i;:::-;18378:74;;18461:93;18550:3;18461:93;:::i;:::-;18579:2;18574:3;18570:12;18563:19;;18222:366;;;:::o;18594:419::-;18760:4;18798:2;18787:9;18783:18;18775:26;;18847:9;18841:4;18837:20;18833:1;18822:9;18818:17;18811:47;18875:131;19001:4;18875:131;:::i;:::-;18867:139;;18594:419;;;:::o;19019:179::-;19159:31;19155:1;19147:6;19143:14;19136:55;19019:179;:::o;19204:366::-;19346:3;19367:67;19431:2;19426:3;19367:67;:::i;:::-;19360:74;;19443:93;19532:3;19443:93;:::i;:::-;19561:2;19556:3;19552:12;19545:19;;19204:366;;;:::o;19576:419::-;19742:4;19780:2;19769:9;19765:18;19757:26;;19829:9;19823:4;19819:20;19815:1;19804:9;19800:17;19793:47;19857:131;19983:4;19857:131;:::i;:::-;19849:139;;19576:419;;;:::o;20001:224::-;20141:34;20137:1;20129:6;20125:14;20118:58;20210:7;20205:2;20197:6;20193:15;20186:32;20001:224;:::o;20231:366::-;20373:3;20394:67;20458:2;20453:3;20394:67;:::i;:::-;20387:74;;20470:93;20559:3;20470:93;:::i;:::-;20588:2;20583:3;20579:12;20572:19;;20231:366;;;:::o;20603:419::-;20769:4;20807:2;20796:9;20792:18;20784:26;;20856:9;20850:4;20846:20;20842:1;20831:9;20827:17;20820:47;20884:131;21010:4;20884:131;:::i;:::-;20876:139;;20603:419;;;:::o;21028:222::-;21168:34;21164:1;21156:6;21152:14;21145:58;21237:5;21232:2;21224:6;21220:15;21213:30;21028:222;:::o;21256:366::-;21398:3;21419:67;21483:2;21478:3;21419:67;:::i;:::-;21412:74;;21495:93;21584:3;21495:93;:::i;:::-;21613:2;21608:3;21604:12;21597:19;;21256:366;;;:::o;21628:419::-;21794:4;21832:2;21821:9;21817:18;21809:26;;21881:9;21875:4;21871:20;21867:1;21856:9;21852:17;21845:47;21909:131;22035:4;21909:131;:::i;:::-;21901:139;;21628:419;;;:::o;22053:225::-;22193:34;22189:1;22181:6;22177:14;22170:58;22262:8;22257:2;22249:6;22245:15;22238:33;22053:225;:::o;22284:366::-;22426:3;22447:67;22511:2;22506:3;22447:67;:::i;:::-;22440:74;;22523:93;22612:3;22523:93;:::i;:::-;22641:2;22636:3;22632:12;22625:19;;22284:366;;;:::o;22656:419::-;22822:4;22860:2;22849:9;22845:18;22837:26;;22909:9;22903:4;22899:20;22895:1;22884:9;22880:17;22873:47;22937:131;23063:4;22937:131;:::i;:::-;22929:139;;22656:419;;;:::o;23081:169::-;23221:21;23217:1;23209:6;23205:14;23198:45;23081:169;:::o;23256:366::-;23398:3;23419:67;23483:2;23478:3;23419:67;:::i;:::-;23412:74;;23495:93;23584:3;23495:93;:::i;:::-;23613:2;23608:3;23604:12;23597:19;;23256:366;;;:::o;23628:419::-;23794:4;23832:2;23821:9;23817:18;23809:26;;23881:9;23875:4;23871:20;23867:1;23856:9;23852:17;23845:47;23909:131;24035:4;23909:131;:::i;:::-;23901:139;;23628:419;;;:::o;24053:410::-;24093:7;24116:20;24134:1;24116:20;:::i;:::-;24111:25;;24150:20;24168:1;24150:20;:::i;:::-;24145:25;;24205:1;24202;24198:9;24227:30;24245:11;24227:30;:::i;:::-;24216:41;;24406:1;24397:7;24393:15;24390:1;24387:22;24367:1;24360:9;24340:83;24317:139;;24436:18;;:::i;:::-;24317:139;24101:362;24053:410;;;;:::o;24469:180::-;24517:77;24514:1;24507:88;24614:4;24611:1;24604:15;24638:4;24635:1;24628:15;24655:185;24695:1;24712:20;24730:1;24712:20;:::i;:::-;24707:25;;24746:20;24764:1;24746:20;:::i;:::-;24741:25;;24785:1;24775:35;;24790:18;;:::i;:::-;24775:35;24832:1;24829;24825:9;24820:14;;24655:185;;;;:::o;24846:85::-;24891:7;24920:5;24909:16;;24846:85;;;:::o;24937:60::-;24965:3;24986:5;24979:12;;24937:60;;;:::o;25003:158::-;25061:9;25094:61;25112:42;25121:32;25147:5;25121:32;:::i;:::-;25112:42;:::i;:::-;25094:61;:::i;:::-;25081:74;;25003:158;;;:::o;25167:147::-;25262:45;25301:5;25262:45;:::i;:::-;25257:3;25250:58;25167:147;;:::o;25320:831::-;25583:4;25621:3;25610:9;25606:19;25598:27;;25635:71;25703:1;25692:9;25688:17;25679:6;25635:71;:::i;:::-;25716:80;25792:2;25781:9;25777:18;25768:6;25716:80;:::i;:::-;25843:9;25837:4;25833:20;25828:2;25817:9;25813:18;25806:48;25871:108;25974:4;25965:6;25871:108;:::i;:::-;25863:116;;25989:72;26057:2;26046:9;26042:18;26033:6;25989:72;:::i;:::-;26071:73;26139:3;26128:9;26124:19;26115:6;26071:73;:::i;:::-;25320:831;;;;;;;;:::o

Swarm Source

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