ETH Price: $2,874.41 (-10.25%)
Gas: 14 Gwei

Contract

0xa364a9f85f61dC5E3118bE282a23eDC5E09F62AC
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

TokenTracker

Multichain Info

1 address found via
Transaction Hash
Method
Block
From
To
Value
Approve202216962024-07-02 22:05:592 days ago1719957959IN
ZenGame ETH: GZT Token
0 ETH0.00041738.89164782
Approve202014822024-06-30 2:20:595 days ago1719714059IN
ZenGame ETH: GZT Token
0 ETH0.000134632.84823118
Approve201010632024-06-16 1:27:3519 days ago1718501255IN
ZenGame ETH: GZT Token
0 ETH0.000161183.41428769
Approve200471712024-06-08 12:40:2326 days ago1717850423IN
ZenGame ETH: GZT Token
0 ETH0.000312366.65734632
Approve199999532024-06-01 22:27:2333 days ago1717280843IN
ZenGame ETH: GZT Token
0 ETH0.00013355.35644112
Approve199836232024-05-30 15:42:4735 days ago1717083767IN
ZenGame ETH: GZT Token
0 ETH0.0009857520.88120031
Transfer199775552024-05-29 19:20:2336 days ago1717010423IN
ZenGame ETH: GZT Token
0 ETH0.0006975910.28099854
Approve199473762024-05-25 14:05:4740 days ago1716645947IN
ZenGame ETH: GZT Token
0 ETH0.000259935.54133144
Approve199400562024-05-24 13:31:3541 days ago1716557495IN
ZenGame ETH: GZT Token
0 ETH0.0002536510.1528113
Approve199245752024-05-22 9:37:3543 days ago1716370655IN
ZenGame ETH: GZT Token
0 ETH0.000366357.76034029
Approve198712262024-05-14 22:33:4751 days ago1715726027IN
ZenGame ETH: GZT Token
0 ETH0.000219824.6505638
Approve198681982024-05-14 12:19:1151 days ago1715689151IN
ZenGame ETH: GZT Token
0 ETH0.0005287611.1864751
Transfer198564302024-05-12 20:49:3553 days ago1715546975IN
ZenGame ETH: GZT Token
0 ETH0.00017673.48175225
Transfer198493482024-05-11 21:02:3554 days ago1715461355IN
ZenGame ETH: GZT Token
0 ETH0.000190243.74836701
Transfer198432672024-05-11 0:38:4755 days ago1715387927IN
ZenGame ETH: GZT Token
0 ETH0.000272535.36988925
Transfer198350222024-05-09 20:58:3556 days ago1715288315IN
ZenGame ETH: GZT Token
0 ETH0.000197213.88569556
Approve198299242024-05-09 3:52:1157 days ago1715226731IN
ZenGame ETH: GZT Token
0 ETH0.000171553.62934356
Transfer198294912024-05-09 2:24:5957 days ago1715221499IN
ZenGame ETH: GZT Token
0 ETH0.000107164.28425887
Transfer198294902024-05-09 2:24:4757 days ago1715221487IN
ZenGame ETH: GZT Token
0 ETH0.000190883.76106419
Transfer198133542024-05-06 20:14:1159 days ago1715026451IN
ZenGame ETH: GZT Token
0 ETH0.000409698.07235256
Transfer198082642024-05-06 3:08:3560 days ago1714964915IN
ZenGame ETH: GZT Token
0 ETH0.000229684.52560017
Approve198077412024-05-06 1:22:5960 days ago1714958579IN
ZenGame ETH: GZT Token
0 ETH0.000222694.71135714
Approve197995732024-05-04 21:58:1161 days ago1714859891IN
ZenGame ETH: GZT Token
0 ETH0.000189254.008969
Transfer197930272024-05-04 0:00:5962 days ago1714780859IN
ZenGame ETH: GZT Token
0 ETH0.000231884.56898223
Transfer197858642024-05-02 23:58:5963 days ago1714694339IN
ZenGame ETH: GZT Token
0 ETH0.000242614.78032932
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To Value
193118812024-02-26 12:56:23129 days ago1708952183
ZenGame ETH: GZT Token
0.230495 ETH
193118812024-02-26 12:56:23129 days ago1708952183
ZenGame ETH: GZT Token
0.230495 ETH
192076662024-02-11 22:04:23144 days ago1707689063
ZenGame ETH: GZT Token
0.1524445 ETH
192076662024-02-11 22:04:23144 days ago1707689063
ZenGame ETH: GZT Token
0.1524445 ETH
191830342024-02-08 11:04:59147 days ago1707390299
ZenGame ETH: GZT Token
0.69549496 ETH
191830342024-02-08 11:04:59147 days ago1707390299
ZenGame ETH: GZT Token
0.69549496 ETH
191053402024-01-28 13:29:47158 days ago1706448587
ZenGame ETH: GZT Token
0.15048206 ETH
191053402024-01-28 13:29:47158 days ago1706448587
ZenGame ETH: GZT Token
0.15048206 ETH
190540632024-01-21 8:31:59165 days ago1705825919
ZenGame ETH: GZT Token
0.15157037 ETH
190540632024-01-21 8:31:59165 days ago1705825919
ZenGame ETH: GZT Token
0.15157037 ETH
190391282024-01-19 6:30:47167 days ago1705645847
ZenGame ETH: GZT Token
0.17704181 ETH
190391282024-01-19 6:30:47167 days ago1705645847
ZenGame ETH: GZT Token
0.17704181 ETH
189862572024-01-11 21:08:35175 days ago1705007315
ZenGame ETH: GZT Token
0.27165028 ETH
189862572024-01-11 21:08:35175 days ago1705007315
ZenGame ETH: GZT Token
0.27165028 ETH
189542432024-01-07 9:11:59179 days ago1704618719
ZenGame ETH: GZT Token
0.15061226 ETH
189542432024-01-07 9:11:59179 days ago1704618719
ZenGame ETH: GZT Token
0.15061226 ETH
189197062024-01-02 12:30:11184 days ago1704198611
ZenGame ETH: GZT Token
0.15105289 ETH
189197062024-01-02 12:30:11184 days ago1704198611
ZenGame ETH: GZT Token
0.15105289 ETH
188891692023-12-29 5:30:11189 days ago1703827811
ZenGame ETH: GZT Token
0.20204483 ETH
188891692023-12-29 5:30:11189 days ago1703827811
ZenGame ETH: GZT Token
0.20204483 ETH
188725362023-12-26 21:27:11191 days ago1703626031
ZenGame ETH: GZT Token
0.18519031 ETH
188725362023-12-26 21:27:11191 days ago1703626031
ZenGame ETH: GZT Token
0.18519031 ETH
188437672023-12-22 20:29:23195 days ago1703276963
ZenGame ETH: GZT Token
0.19161045 ETH
188437672023-12-22 20:29:23195 days ago1703276963
ZenGame ETH: GZT Token
0.19161045 ETH
188245082023-12-20 3:40:59198 days ago1703043659
ZenGame ETH: GZT Token
0.16978229 ETH
View All Internal Transactions
Loading...
Loading

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

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.