ETH Price: $2,852.88 (-9.73%)
Gas: 10 Gwei

Contract

0xbc21967eBaf2039731682f8a743BE6F58F721495
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
Approve200031392024-06-02 9:07:3533 days ago1717319255IN
0xbc21967e...58F721495
0 ETH0.000284411.45600701
Approve189317252024-01-04 4:56:11183 days ago1704344171IN
0xbc21967e...58F721495
0 ETH0.000581412.35724887
Approve162721432022-12-26 23:14:59556 days ago1672096499IN
0xbc21967e...58F721495
0 ETH0.000369214.87162188
Approve157627942022-10-16 19:34:23627 days ago1665948863IN
0xbc21967e...58F721495
0 ETH0.0003612714.55211692
Approve157184992022-10-10 15:09:11633 days ago1665414551IN
0xbc21967e...58F721495
0 ETH0.0013128927.8687505
Approve157161992022-10-10 7:25:47634 days ago1665386747IN
0xbc21967e...58F721495
0 ETH0.0014143130.02159866
Approve157144072022-10-10 1:26:23634 days ago1665365183IN
0xbc21967e...58F721495
0 ETH0.0011306424
Approve157143982022-10-10 1:24:23634 days ago1665365063IN
0xbc21967e...58F721495
0 ETH0.0011824325.09944876
Approve157143482022-10-10 1:14:23634 days ago1665364463IN
0xbc21967e...58F721495
0 ETH0.0011429424.26109292
Approve157143442022-10-10 1:13:35634 days ago1665364415IN
0xbc21967e...58F721495
0 ETH0.0010780422.88366123
Approve157143242022-10-10 1:09:35634 days ago1665364175IN
0xbc21967e...58F721495
0 ETH0.0011776924.99880055
Approve157143082022-10-10 1:06:23634 days ago1665363983IN
0xbc21967e...58F721495
0 ETH0.0012182725.86030757
Approve157143052022-10-10 1:05:47634 days ago1665363947IN
0xbc21967e...58F721495
0 ETH0.0010510622.31084346
Approve157142882022-10-10 1:02:23634 days ago1665363743IN
0xbc21967e...58F721495
0 ETH0.0011777525
Approve157142592022-10-10 0:56:35634 days ago1665363395IN
0xbc21967e...58F721495
0 ETH0.0013190828
Approve157142222022-10-10 0:49:11634 days ago1665362951IN
0xbc21967e...58F721495
0 ETH0.0014604131
Approve157142162022-10-10 0:47:59634 days ago1665362879IN
0xbc21967e...58F721495
0 ETH0.0013430128.50800491
Approve157141962022-10-10 0:43:59634 days ago1665362639IN
0xbc21967e...58F721495
0 ETH0.0014127429.98828868
Approve157141762022-10-10 0:39:59634 days ago1665362399IN
0xbc21967e...58F721495
0 ETH0.0016555235.14165139
Approve157141442022-10-10 0:33:23634 days ago1665362003IN
0xbc21967e...58F721495
0 ETH0.0012786327.14140737
Approve157141382022-10-10 0:32:11634 days ago1665361931IN
0xbc21967e...58F721495
0 ETH0.0014258530.26658484
Approve157141262022-10-10 0:29:47634 days ago1665361787IN
0xbc21967e...58F721495
0 ETH0.0012800627.17192289
Approve157140942022-10-10 0:23:23634 days ago1665361403IN
0xbc21967e...58F721495
0 ETH0.0018001338.21141913
Approve157140812022-10-10 0:20:47634 days ago1665361247IN
0xbc21967e...58F721495
0 ETH0.0013661929
Approve157140712022-10-10 0:18:47634 days ago1665361127IN
0xbc21967e...58F721495
0 ETH0.0015491732.88423163
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To Value
157775512022-10-18 21:02:23625 days ago1666126943
0xbc21967e...58F721495
0.000069 ETH
157775512022-10-18 21:02:23625 days ago1666126943
0xbc21967e...58F721495
0.000069 ETH
157246152022-10-11 11:37:11632 days ago1665488231
0xbc21967e...58F721495
0.00027981 ETH
157246152022-10-11 11:37:11632 days ago1665488231
0xbc21967e...58F721495
0.00027981 ETH
157185502022-10-10 15:19:23633 days ago1665415163
0xbc21967e...58F721495
0.00016432 ETH
157185502022-10-10 15:19:23633 days ago1665415163
0xbc21967e...58F721495
0.00016432 ETH
157175692022-10-10 12:01:35633 days ago1665403295
0xbc21967e...58F721495
0.00038181 ETH
157175692022-10-10 12:01:35633 days ago1665403295
0xbc21967e...58F721495
0.00038181 ETH
157171762022-10-10 10:42:35633 days ago1665398555
0xbc21967e...58F721495
0.0002328 ETH
157171762022-10-10 10:42:35633 days ago1665398555
0xbc21967e...58F721495
0.0002328 ETH
157160302022-10-10 6:51:47634 days ago1665384707
0xbc21967e...58F721495
0.00012281 ETH
157160302022-10-10 6:51:47634 days ago1665384707
0xbc21967e...58F721495
0.00012281 ETH
157157822022-10-10 6:01:35634 days ago1665381695
0xbc21967e...58F721495
0.0002162 ETH
157157822022-10-10 6:01:35634 days ago1665381695
0xbc21967e...58F721495
0.0002162 ETH
157148502022-10-10 2:54:59634 days ago1665370499
0xbc21967e...58F721495
0.00029803 ETH
157148502022-10-10 2:54:59634 days ago1665370499
0xbc21967e...58F721495
0.00029803 ETH
157147682022-10-10 2:38:35634 days ago1665369515
0xbc21967e...58F721495
0.00035502 ETH
157147682022-10-10 2:38:35634 days ago1665369515
0xbc21967e...58F721495
0.00035502 ETH
157147092022-10-10 2:26:47634 days ago1665368807
0xbc21967e...58F721495
0.00027378 ETH
157147092022-10-10 2:26:47634 days ago1665368807
0xbc21967e...58F721495
0.00027378 ETH
157145642022-10-10 1:57:47634 days ago1665367067
0xbc21967e...58F721495
0.00151493 ETH
157145642022-10-10 1:57:47634 days ago1665367067
0xbc21967e...58F721495
0.00151493 ETH
157144152022-10-10 1:27:59634 days ago1665365279
0xbc21967e...58F721495
0.0002956 ETH
157144152022-10-10 1:27:59634 days ago1665365279
0xbc21967e...58F721495
0.0002956 ETH
157144092022-10-10 1:26:47634 days ago1665365207
0xbc21967e...58F721495
0.00060879 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ONE

Compiler Version
v0.8.15+commit.e14f2714

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-08-02
*/

/**

Conceptually speaking, what really causes growth, appreciation and gain is the work of the collective and not of the individual. We believe in true decentralization.
We can call it hive mind, or collective intelligence. The concept is easy, togheter we are strong.
So this is a call for arms, Unite as a community, fight the market, and we all shall prevail.
Thus we are ONE.

*/
//SPDX-License-Identifier: MIT
pragma solidity ^0.8.5;


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) {
        // Solidity only automatically asserts when dividing by 0
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }
}

interface IBEP20 {
    function totalSupply() external view returns (uint256);
    function decimals() external view returns (uint8);
    function symbol() external view returns (string memory);
    function name() external view returns (string memory);
    function getOwner() external view returns (address);
    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);
}




abstract contract Auth {
    address internal owner;
    mapping (address => bool) internal authorizations;




    constructor(address _owner) {
        owner = _owner;
        authorizations[_owner] = true;
    }




    
    modifier onlyOwner() {
        require(isOwner(msg.sender), "!OWNER"); _;
    }




    
    modifier authorized() {
        require(isAuthorized(msg.sender), "!AUTHORIZED"); _;
    }




    
    function authorize(address adr) public onlyOwner {
        authorizations[adr] = true;
    }




    /**
     * Remove address' authorization. Owner only
     */
    function unauthorize(address adr) public onlyOwner {
        authorizations[adr] = false;
    }




    /**
     * Check if address is owner
     */
    function isOwner(address account) public view returns (bool) {
        return account == owner;
    }




    /**
     * Return address' authorization status
     */
    function isAuthorized(address adr) public view returns (bool) {
        return authorizations[adr];
    }




    /**
     * Transfer ownership to new address. Caller must be owner. Leaves old owner authorized
     */
    function transferOwnership(address payable adr) public onlyOwner {
        owner = adr;
        authorizations[adr] = true;
        emit OwnershipTransferred(adr);
    }




    event OwnershipTransferred(address owner);
}


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

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

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




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




    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;




    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;




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




contract ONE is IBEP20, Auth {
    using SafeMath for uint256;

    address WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2;
    address DEAD = 0x000000000000000000000000000000000000dEaD;
    address ZERO = 0x0000000000000000000000000000000000000000;

    string constant _name = "Collective Intelligence";
    string constant _symbol = "ONE";
    uint8 constant _decimals = 18;

    uint256 _totalSupply = 9999999 * (10 ** _decimals);
    uint256 public _maxTxAmount = (_totalSupply * 2) / 100; 
    uint256 public _maxWalletSize = (_totalSupply * 2) / 100; 

    mapping (address => uint256) _balances;
    mapping (address => mapping (address => uint256)) _allowances;

    mapping (address => bool) isFeeExempt;
    mapping (address => bool) isTxLimitExempt;

    uint256 liquidityFee = 0;
    uint256 BBFee = 1;
    uint256 totalFee = 1;
    uint256 feeDenominator = 100;
    
    address private marketingReceiver = 0x7daf8CDe768e997E6337734F55FDDfF33823351f;

    IDEXRouter public router;
    address public pair;
    uint256 public launchedAt;

    bool public swapEnabled = true;
    uint256 public swapThreshold = _totalSupply / 1000000 * 1; // 0.3%
    bool inSwap;
    modifier swapping() { inSwap = true; _; inSwap = false; }

    constructor () Auth(msg.sender) {
        router = IDEXRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        pair = IDEXFactory(router.factory()).createPair(WETH, address(this));
        _allowances[address(this)][address(router)] = type(uint256).max;




        address _owner = owner;
        isFeeExempt[_owner] = true;
        isTxLimitExempt[_owner] = true;




        _balances[_owner] = _totalSupply;
        emit Transfer(address(0), _owner, _totalSupply);
    }




    receive() external payable { }




    function totalSupply() external view override returns (uint256) { return _totalSupply; }
    function decimals() external pure override returns (uint8) { return _decimals; }
    function symbol() external pure override returns (string memory) { return _symbol; }
    function name() external pure override returns (string memory) { return _name; }
    function getOwner() external view override returns (address) { return owner; }
    function balanceOf(address account) public view override returns (uint256) { return _balances[account]; }
    function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; }




    function approve(address spender, uint256 amount) public override returns (bool) {
        _allowances[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }




    function approveMax(address spender) external returns (bool) {
        return approve(spender, type(uint256).max);
    }




    function transfer(address recipient, uint256 amount) external override returns (bool) {
        return _transferFrom(msg.sender, recipient, amount);
    }




    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        if(_allowances[sender][msg.sender] != type(uint256).max){
            _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance");
        }




        return _transferFrom(sender, recipient, amount);
    }




    function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) {
        if(inSwap){ return _basicTransfer(sender, recipient, amount); }
        
        checkTxLimit(sender, amount);
        
        if (recipient != pair && recipient != DEAD) {
            require(isTxLimitExempt[recipient] || _balances[recipient] + amount <= _maxWalletSize, "Transfer amount exceeds the bag size.");
        }
        
        if(shouldSwapBack()){ swapBack(); }




        if(!launched() && recipient == pair){ require(_balances[sender] > 0); launch(); }




        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");




        uint256 amountReceived = shouldTakeFee(sender) ? takeFee(sender, amount) : amount;
        _balances[recipient] = _balances[recipient].add(amountReceived);




        emit Transfer(sender, recipient, amountReceived);
        return true;
    }
    
    function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }




    function checkTxLimit(address sender, uint256 amount) internal view {
        require(amount <= _maxTxAmount || isTxLimitExempt[sender], "TX Limit Exceeded");
    }
    
    function shouldTakeFee(address sender) internal view returns (bool) {
        return !isFeeExempt[sender];
    }








    function takeFee(address sender, uint256 amount) internal returns (uint256) {
        uint256 feeAmount = amount.mul(totalFee).div(feeDenominator);




        _balances[address(this)] = _balances[address(this)].add(feeAmount);
        emit Transfer(sender, address(this), feeAmount);




        return amount.sub(feeAmount);
    }




    function shouldSwapBack() internal view returns (bool) {
        return msg.sender != pair
        && !inSwap
        && swapEnabled
        && _balances[address(this)] >= swapThreshold;
    }




    function swapBack() internal swapping {
        uint256 contractTokenBalance = balanceOf(address(this));
        uint256 amountToLiquify = contractTokenBalance.mul(liquidityFee).div(totalFee).div(2);
        uint256 amountToSwap = contractTokenBalance.sub(amountToLiquify);




        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = WETH;




        uint256 balanceBefore = address(this).balance;




        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            amountToSwap,
            0,
            path,
            address(this),
            block.timestamp
        );
        uint256 amountETH = address(this).balance.sub(balanceBefore);
        uint256 totalETHFee = totalFee.sub(liquidityFee.div(2));
        uint256 amountETHLiquidity = amountETH.mul(liquidityFee).div(totalETHFee).div(2);
        uint256 amountETHMarket = amountETH.mul(BBFee).div(totalETHFee);




        (bool OPSuccess, /* bytes memory data */) = payable(marketingReceiver).call{value: amountETHMarket, gas: 30000}("");
        require(OPSuccess, "receiver rejected ETH transfer");
        addLiquidity(amountToLiquify, amountETHLiquidity);
    }




    function addLiquidity(uint256 tokenAmount, uint256 ETHAmount) private {
    if(tokenAmount > 0){
            router.addLiquidityETH{value: ETHAmount}(
                address(this),
                tokenAmount,
                0,
                0,
                address(this),
                block.timestamp
            );
            emit AutoLiquify(ETHAmount, tokenAmount);
        }
    }




    function buyTokens(uint256 amount, address to) internal swapping {
        address[] memory path = new address[](2);
        path[0] = WETH;
        path[1] = address(this);




        router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(
            0,
            path,
            to,
            block.timestamp
        );
    }




    function launched() internal view returns (bool) {
        return launchedAt != 0;
    }




    function launch() internal {
        launchedAt = block.number;
    }




    function setTxLimit(uint256 amount) external authorized {
        require(amount >= _totalSupply / 1000);
        _maxTxAmount = amount;
    }




   function setMaxWallet(uint256 amount) external onlyOwner() {
        require(amount >= _totalSupply / 1000 );
        _maxWalletSize = amount;
    }    




    function setIsFeeExempt(address holder, bool exempt) external authorized {
        isFeeExempt[holder] = exempt;
    }




    function setIsTxLimitExempt(address holder, bool exempt) external authorized {
        isTxLimitExempt[holder] = exempt;
    }




    function setFees(uint256 _liquidityFee, uint256 _BBFee, uint256 _feeDenominator) external authorized {
        liquidityFee = _liquidityFee;
        BBFee = _BBFee;
        totalFee = _liquidityFee.add(_BBFee);
        feeDenominator = _feeDenominator;
    }




    function setFeeReceiver(address _marketingReceiver) external authorized {
        marketingReceiver = _marketingReceiver;
    }




    function setSwapBackSettings(bool _enabled, uint256 _amount) external authorized {
        swapEnabled = _enabled;
        swapThreshold = _amount;
    }



    function getCirculatingSupply() public view returns (uint256) {
        return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(ZERO));
    }




    function getLiquidityBacking(uint256 accuracy) public view returns (uint256) {
        return accuracy.mul(balanceOf(pair).mul(2)).div(getCirculatingSupply());
    }




    function isOverLiquified(uint256 target, uint256 accuracy) public view returns (bool) {
        return getLiquidityBacking(accuracy) > target;
    }
    
    event AutoLiquify(uint256 amountETH, uint256 amountBOG);
}

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":"amountETH","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountBOG","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_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":[{"internalType":"address","name":"holder","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":"spender","type":"address"}],"name":"approveMax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"authorize","outputs":[],"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":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"getLiquidityBacking","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"isAuthorized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"target","type":"uint256"},{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"isOverLiquified","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingReceiver","type":"address"}],"name":"setFeeReceiver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_BBFee","type":"uint256"},{"internalType":"uint256","name":"_feeDenominator","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsTxLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"view","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":[{"internalType":"address payable","name":"adr","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"unauthorize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506012600a620000ee91906200084b565b6298967f620000fe91906200089c565b600555606460026005546200011491906200089c565b6200012091906200092c565b600655606460026005546200013691906200089c565b6200014291906200092c565b6007556000600c556001600d556001600e556064600f55737daf8cde768e997e6337734f55fddff33823351f601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601460006101000a81548160ff0219169083151502179055506001620f4240600554620001de91906200092c565b620001ea91906200089c565b601555348015620001fa57600080fd5b5033806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050737a250d5630b4cf539739df2c5dacb4c659f2488d601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000357573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200037d9190620009ce565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16306040518363ffffffff1660e01b8152600401620003db92919062000a11565b6020604051808303816000875af1158015620003fb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004219190620009ce565b601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506001600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600554600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600554604051620006a2919062000a4f565b60405180910390a35062000a6c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200073f57808604811115620007175762000716620006b1565b5b6001851615620007275780820291505b80810290506200073785620006e0565b9450620006f7565b94509492505050565b6000826200075a57600190506200082d565b816200076a57600090506200082d565b81600181146200078357600281146200078e57620007c4565b60019150506200082d565b60ff841115620007a357620007a2620006b1565b5b8360020a915084821115620007bd57620007bc620006b1565b5b506200082d565b5060208310610133831016604e8410600b8410161715620007fe5782820a905083811115620007f857620007f7620006b1565b5b6200082d565b6200080d8484846001620006ed565b92509050818404811115620008275762000826620006b1565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b6000620008588262000834565b915062000865836200083e565b9250620008947fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000748565b905092915050565b6000620008a98262000834565b9150620008b68362000834565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620008f257620008f1620006b1565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000620009398262000834565b9150620009468362000834565b925082620009595762000958620008fd565b5b828204905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620009968262000969565b9050919050565b620009a88162000989565b8114620009b457600080fd5b50565b600081519050620009c8816200099d565b92915050565b600060208284031215620009e757620009e662000964565b5b6000620009f784828501620009b7565b91505092915050565b62000a0b8162000989565b82525050565b600060408201905062000a28600083018562000a00565b62000a37602083018462000a00565b9392505050565b62000a498162000834565b82525050565b600060208201905062000a66600083018462000a3e565b92915050565b6133088062000a7c6000396000f3fe6080604052600436106101f25760003560e01c8063893d20e81161010d578063d51ed1c8116100a0578063f0b37c041161006f578063f0b37c0414610746578063f2fde38b1461076f578063f84ba65d14610798578063f887ea40146107c1578063fe9fbb80146107ec576101f9565b8063d51ed1c81461067a578063dd62ed3e146106b7578063df20fd49146106f4578063efdcd9741461071d576101f9565b8063a9059cbb116100dc578063a9059cbb146105c0578063b6a5d7de146105fd578063bf56b37114610626578063cec10c1114610651576101f9565b8063893d20e8146105145780638f9a55c01461053f57806395d89b411461056a578063a8aa1b3114610595576101f9565b8063313ce56711610185578063658d4b7f11610154578063658d4b7f146104585780636ddd17131461048157806370a08231146104ac5780637d1db4a5146104e9576101f9565b8063313ce5671461039e578063571ac8b0146103c95780635c85974f146104065780635d0044ca1461042f576101f9565b806318160ddd116101c157806318160ddd146102ce57806323b872dd146102f95780632b112e49146103365780632f54bf6e14610361576101f9565b80630445b667146101fe57806306fdde0314610229578063095ea7b3146102545780631161ae3914610291576101f9565b366101f957005b600080fd5b34801561020a57600080fd5b50610213610829565b60405161022091906125ad565b60405180910390f35b34801561023557600080fd5b5061023e61082f565b60405161024b9190612661565b60405180910390f35b34801561026057600080fd5b5061027b60048036038101906102769190612712565b61086c565b604051610288919061276d565b60405180910390f35b34801561029d57600080fd5b506102b860048036038101906102b39190612788565b61095e565b6040516102c5919061276d565b60405180910390f35b3480156102da57600080fd5b506102e3610973565b6040516102f091906125ad565b60405180910390f35b34801561030557600080fd5b50610320600480360381019061031b91906127c8565b61097d565b60405161032d919061276d565b60405180910390f35b34801561034257600080fd5b5061034b610b7d565b60405161035891906125ad565b60405180910390f35b34801561036d57600080fd5b506103886004803603810190610383919061281b565b610bff565b604051610395919061276d565b60405180910390f35b3480156103aa57600080fd5b506103b3610c58565b6040516103c09190612864565b60405180910390f35b3480156103d557600080fd5b506103f060048036038101906103eb919061281b565b610c61565b6040516103fd919061276d565b60405180910390f35b34801561041257600080fd5b5061042d6004803603810190610428919061287f565b610c94565b005b34801561043b57600080fd5b506104566004803603810190610451919061287f565b610d02565b005b34801561046457600080fd5b5061047f600480360381019061047a91906128d8565b610d70565b005b34801561048d57600080fd5b50610496610e13565b6040516104a3919061276d565b60405180910390f35b3480156104b857600080fd5b506104d360048036038101906104ce919061281b565b610e26565b6040516104e091906125ad565b60405180910390f35b3480156104f557600080fd5b506104fe610e6f565b60405161050b91906125ad565b60405180910390f35b34801561052057600080fd5b50610529610e75565b6040516105369190612927565b60405180910390f35b34801561054b57600080fd5b50610554610e9e565b60405161056191906125ad565b60405180910390f35b34801561057657600080fd5b5061057f610ea4565b60405161058c9190612661565b60405180910390f35b3480156105a157600080fd5b506105aa610ee1565b6040516105b79190612927565b60405180910390f35b3480156105cc57600080fd5b506105e760048036038101906105e29190612712565b610f07565b6040516105f4919061276d565b60405180910390f35b34801561060957600080fd5b50610624600480360381019061061f919061281b565b610f1c565b005b34801561063257600080fd5b5061063b610fbe565b60405161064891906125ad565b60405180910390f35b34801561065d57600080fd5b5061067860048036038101906106739190612942565b610fc4565b005b34801561068657600080fd5b506106a1600480360381019061069c919061287f565b61103f565b6040516106ae91906125ad565b60405180910390f35b3480156106c357600080fd5b506106de60048036038101906106d99190612995565b6110b1565b6040516106eb91906125ad565b60405180910390f35b34801561070057600080fd5b5061071b600480360381019061071691906129d5565b611138565b005b34801561072957600080fd5b50610744600480360381019061073f919061281b565b6111a5565b005b34801561075257600080fd5b5061076d6004803603810190610768919061281b565b611231565b005b34801561077b57600080fd5b5061079660048036038101906107919190612a53565b6112d4565b005b3480156107a457600080fd5b506107bf60048036038101906107ba91906128d8565b6113ed565b005b3480156107cd57600080fd5b506107d6611490565b6040516107e39190612adf565b60405180910390f35b3480156107f857600080fd5b50610813600480360381019061080e919061281b565b6114b6565b604051610820919061276d565b60405180910390f35b60155481565b60606040518060400160405280601781526020017f436f6c6c65637469766520496e74656c6c6967656e6365000000000000000000815250905090565b600081600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161094c91906125ad565b60405180910390a36001905092915050565b60008261096a8361103f565b11905092915050565b6000600554905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610b6957610ae8826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461150c9092919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610b74848484611570565b90509392505050565b6000610bfa610bad600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610e26565b610bec610bdb600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610e26565b6005546119ff90919063ffffffff16565b6119ff90919063ffffffff16565b905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006012905090565b6000610c8d827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61086c565b9050919050565b610c9d336114b6565b610cdc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd390612b46565b60405180910390fd5b6103e8600554610cec9190612bc4565b811015610cf857600080fd5b8060068190555050565b610d0b33610bff565b610d4a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4190612c41565b60405180910390fd5b6103e8600554610d5a9190612bc4565b811015610d6657600080fd5b8060078190555050565b610d79336114b6565b610db8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610daf90612b46565b60405180910390fd5b80600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b601460009054906101000a900460ff1681565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60065481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60075481565b60606040518060400160405280600381526020017f4f4e450000000000000000000000000000000000000000000000000000000000815250905090565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610f14338484611570565b905092915050565b610f2533610bff565b610f64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f5b90612c41565b60405180910390fd5b60018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60135481565b610fcd336114b6565b61100c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100390612b46565b60405180910390fd5b82600c8190555081600d8190555061102d8284611a4990919063ffffffff16565b600e8190555080600f81905550505050565b60006110aa61104c610b7d565b61109c61108d600261107f601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610e26565b611aa790919063ffffffff16565b85611aa790919063ffffffff16565b611b2190919063ffffffff16565b9050919050565b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611141336114b6565b611180576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117790612b46565b60405180910390fd5b81601460006101000a81548160ff021916908315150217905550806015819055505050565b6111ae336114b6565b6111ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e490612b46565b60405180910390fd5b80601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b61123a33610bff565b611279576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127090612c41565b60405180910390fd5b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6112dd33610bff565b61131c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131390612c41565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163816040516113e29190612c82565b60405180910390a150565b6113f6336114b6565b611435576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142c90612b46565b60405180910390fd5b80600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000838311158290611554576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154b9190612661565b60405180910390fd5b50600083856115639190612c9d565b9050809150509392505050565b6000601660009054906101000a900460ff161561159957611592848484611b6b565b90506119f8565b6115a38483611d3e565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561164f5750600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561173857600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806116f8575060075482600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116f59190612cd1565b11155b611737576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161172e90612d99565b60405180910390fd5b5b611740611ddb565b1561174e5761174d611eb2565b5b61175661228c565b1580156117b05750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b1561180a576000600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541161180157600080fd5b611809612299565b5b611893826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461150c9092919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006118e1856122a2565b6118eb57826118f6565b6118f585846122f9565b5b905061194a81600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a4990919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516119ea91906125ad565b60405180910390a360019150505b9392505050565b6000611a4183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061150c565b905092915050565b6000808284611a589190612cd1565b905083811015611a9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a9490612e05565b60405180910390fd5b8091505092915050565b6000808303611ab95760009050611b1b565b60008284611ac79190612e25565b9050828482611ad69190612bc4565b14611b16576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0d90612ef1565b60405180910390fd5b809150505b92915050565b6000611b6383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061243d565b905092915050565b6000611bf6826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461150c9092919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c8b82600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a4990919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611d2b91906125ad565b60405180910390a3600190509392505050565b60065481111580611d985750600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b611dd7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dce90612f5d565b60405180910390fd5b5050565b6000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611e485750601660009054906101000a900460ff16155b8015611e605750601460009054906101000a900460ff165b8015611ead5750601554600860003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b905090565b6001601660006101000a81548160ff0219169083151502179055506000611ed830610e26565b90506000611f186002611f0a600e54611efc600c5487611aa790919063ffffffff16565b611b2190919063ffffffff16565b611b2190919063ffffffff16565b90506000611f2f82846119ff90919063ffffffff16565b90506000600267ffffffffffffffff811115611f4e57611f4d612f7d565b5b604051908082528060200260200182016040528015611f7c5781602001602082028036833780820191505090505b5090503081600081518110611f9457611f93612fac565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160018151811061200557612004612fac565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506000479050601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008530426040518663ffffffff1660e01b81526004016120a89594939291906130d4565b600060405180830381600087803b1580156120c257600080fd5b505af11580156120d6573d6000803e3d6000fd5b5050505060006120ef82476119ff90919063ffffffff16565b9050600061211d61210c6002600c54611b2190919063ffffffff16565b600e546119ff90919063ffffffff16565b9050600061215b600261214d8461213f600c5488611aa790919063ffffffff16565b611b2190919063ffffffff16565b611b2190919063ffffffff16565b9050600061218683612178600d5487611aa790919063ffffffff16565b611b2190919063ffffffff16565b90506000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682617530906040516121d49061315f565b600060405180830381858888f193505050503d8060008114612212576040519150601f19603f3d011682016040523d82523d6000602084013e612217565b606091505b505090508061225b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612252906131c0565b60405180910390fd5b61226589846124a0565b505050505050505050506000601660006101000a81548160ff021916908315150217905550565b6000806013541415905090565b43601381905550565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16159050919050565b600080612325600f54612317600e5486611aa790919063ffffffff16565b611b2190919063ffffffff16565b905061237981600860003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a4990919063ffffffff16565b600860003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161241991906125ad565b60405180910390a361243481846119ff90919063ffffffff16565b91505092915050565b60008083118290612484576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161247b9190612661565b60405180910390fd5b50600083856124939190612bc4565b9050809150509392505050565b600082111561259057601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71982308560008030426040518863ffffffff1660e01b8152600401612510969594939291906131e0565b60606040518083038185885af115801561252e573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906125539190613256565b5050507f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450681836040516125879291906132a9565b60405180910390a15b5050565b6000819050919050565b6125a781612594565b82525050565b60006020820190506125c2600083018461259e565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156126025780820151818401526020810190506125e7565b83811115612611576000848401525b50505050565b6000601f19601f8301169050919050565b6000612633826125c8565b61263d81856125d3565b935061264d8185602086016125e4565b61265681612617565b840191505092915050565b6000602082019050818103600083015261267b8184612628565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006126b382612688565b9050919050565b6126c3816126a8565b81146126ce57600080fd5b50565b6000813590506126e0816126ba565b92915050565b6126ef81612594565b81146126fa57600080fd5b50565b60008135905061270c816126e6565b92915050565b6000806040838503121561272957612728612683565b5b6000612737858286016126d1565b9250506020612748858286016126fd565b9150509250929050565b60008115159050919050565b61276781612752565b82525050565b6000602082019050612782600083018461275e565b92915050565b6000806040838503121561279f5761279e612683565b5b60006127ad858286016126fd565b92505060206127be858286016126fd565b9150509250929050565b6000806000606084860312156127e1576127e0612683565b5b60006127ef868287016126d1565b9350506020612800868287016126d1565b9250506040612811868287016126fd565b9150509250925092565b60006020828403121561283157612830612683565b5b600061283f848285016126d1565b91505092915050565b600060ff82169050919050565b61285e81612848565b82525050565b60006020820190506128796000830184612855565b92915050565b60006020828403121561289557612894612683565b5b60006128a3848285016126fd565b91505092915050565b6128b581612752565b81146128c057600080fd5b50565b6000813590506128d2816128ac565b92915050565b600080604083850312156128ef576128ee612683565b5b60006128fd858286016126d1565b925050602061290e858286016128c3565b9150509250929050565b612921816126a8565b82525050565b600060208201905061293c6000830184612918565b92915050565b60008060006060848603121561295b5761295a612683565b5b6000612969868287016126fd565b935050602061297a868287016126fd565b925050604061298b868287016126fd565b9150509250925092565b600080604083850312156129ac576129ab612683565b5b60006129ba858286016126d1565b92505060206129cb858286016126d1565b9150509250929050565b600080604083850312156129ec576129eb612683565b5b60006129fa858286016128c3565b9250506020612a0b858286016126fd565b9150509250929050565b6000612a2082612688565b9050919050565b612a3081612a15565b8114612a3b57600080fd5b50565b600081359050612a4d81612a27565b92915050565b600060208284031215612a6957612a68612683565b5b6000612a7784828501612a3e565b91505092915050565b6000819050919050565b6000612aa5612aa0612a9b84612688565b612a80565b612688565b9050919050565b6000612ab782612a8a565b9050919050565b6000612ac982612aac565b9050919050565b612ad981612abe565b82525050565b6000602082019050612af46000830184612ad0565b92915050565b7f21415554484f52495a4544000000000000000000000000000000000000000000600082015250565b6000612b30600b836125d3565b9150612b3b82612afa565b602082019050919050565b60006020820190508181036000830152612b5f81612b23565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612bcf82612594565b9150612bda83612594565b925082612bea57612be9612b66565b5b828204905092915050565b7f214f574e45520000000000000000000000000000000000000000000000000000600082015250565b6000612c2b6006836125d3565b9150612c3682612bf5565b602082019050919050565b60006020820190508181036000830152612c5a81612c1e565b9050919050565b6000612c6c82612aac565b9050919050565b612c7c81612c61565b82525050565b6000602082019050612c976000830184612c73565b92915050565b6000612ca882612594565b9150612cb383612594565b925082821015612cc657612cc5612b95565b5b828203905092915050565b6000612cdc82612594565b9150612ce783612594565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612d1c57612d1b612b95565b5b828201905092915050565b7f5472616e7366657220616d6f756e74206578636565647320746865206261672060008201527f73697a652e000000000000000000000000000000000000000000000000000000602082015250565b6000612d836025836125d3565b9150612d8e82612d27565b604082019050919050565b60006020820190508181036000830152612db281612d76565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612def601b836125d3565b9150612dfa82612db9565b602082019050919050565b60006020820190508181036000830152612e1e81612de2565b9050919050565b6000612e3082612594565b9150612e3b83612594565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612e7457612e73612b95565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612edb6021836125d3565b9150612ee682612e7f565b604082019050919050565b60006020820190508181036000830152612f0a81612ece565b9050919050565b7f5458204c696d6974204578636565646564000000000000000000000000000000600082015250565b6000612f476011836125d3565b9150612f5282612f11565b602082019050919050565b60006020820190508181036000830152612f7681612f3a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b6000613000612ffb612ff684612fdb565b612a80565b612594565b9050919050565b61301081612fe5565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61304b816126a8565b82525050565b600061305d8383613042565b60208301905092915050565b6000602082019050919050565b600061308182613016565b61308b8185613021565b935061309683613032565b8060005b838110156130c75781516130ae8882613051565b97506130b983613069565b92505060018101905061309a565b5085935050505092915050565b600060a0820190506130e9600083018861259e565b6130f66020830187613007565b81810360408301526131088186613076565b90506131176060830185612918565b613124608083018461259e565b9695505050505050565b600081905092915050565b50565b600061314960008361312e565b915061315482613139565b600082019050919050565b600061316a8261313c565b9150819050919050565b7f72656365697665722072656a656374656420455448207472616e736665720000600082015250565b60006131aa601e836125d3565b91506131b582613174565b602082019050919050565b600060208201905081810360008301526131d98161319d565b9050919050565b600060c0820190506131f56000830189612918565b613202602083018861259e565b61320f6040830187613007565b61321c6060830186613007565b6132296080830185612918565b61323660a083018461259e565b979650505050505050565b600081519050613250816126e6565b92915050565b60008060006060848603121561326f5761326e612683565b5b600061327d86828701613241565b935050602061328e86828701613241565b925050604061329f86828701613241565b9150509250925092565b60006040820190506132be600083018561259e565b6132cb602083018461259e565b939250505056fea26469706673582212206ca9c65c68e176417fc02f7bfc59ae2b11282f518ba62d3bbfac70d777882dcb64736f6c634300080f0033

Deployed Bytecode

0x6080604052600436106101f25760003560e01c8063893d20e81161010d578063d51ed1c8116100a0578063f0b37c041161006f578063f0b37c0414610746578063f2fde38b1461076f578063f84ba65d14610798578063f887ea40146107c1578063fe9fbb80146107ec576101f9565b8063d51ed1c81461067a578063dd62ed3e146106b7578063df20fd49146106f4578063efdcd9741461071d576101f9565b8063a9059cbb116100dc578063a9059cbb146105c0578063b6a5d7de146105fd578063bf56b37114610626578063cec10c1114610651576101f9565b8063893d20e8146105145780638f9a55c01461053f57806395d89b411461056a578063a8aa1b3114610595576101f9565b8063313ce56711610185578063658d4b7f11610154578063658d4b7f146104585780636ddd17131461048157806370a08231146104ac5780637d1db4a5146104e9576101f9565b8063313ce5671461039e578063571ac8b0146103c95780635c85974f146104065780635d0044ca1461042f576101f9565b806318160ddd116101c157806318160ddd146102ce57806323b872dd146102f95780632b112e49146103365780632f54bf6e14610361576101f9565b80630445b667146101fe57806306fdde0314610229578063095ea7b3146102545780631161ae3914610291576101f9565b366101f957005b600080fd5b34801561020a57600080fd5b50610213610829565b60405161022091906125ad565b60405180910390f35b34801561023557600080fd5b5061023e61082f565b60405161024b9190612661565b60405180910390f35b34801561026057600080fd5b5061027b60048036038101906102769190612712565b61086c565b604051610288919061276d565b60405180910390f35b34801561029d57600080fd5b506102b860048036038101906102b39190612788565b61095e565b6040516102c5919061276d565b60405180910390f35b3480156102da57600080fd5b506102e3610973565b6040516102f091906125ad565b60405180910390f35b34801561030557600080fd5b50610320600480360381019061031b91906127c8565b61097d565b60405161032d919061276d565b60405180910390f35b34801561034257600080fd5b5061034b610b7d565b60405161035891906125ad565b60405180910390f35b34801561036d57600080fd5b506103886004803603810190610383919061281b565b610bff565b604051610395919061276d565b60405180910390f35b3480156103aa57600080fd5b506103b3610c58565b6040516103c09190612864565b60405180910390f35b3480156103d557600080fd5b506103f060048036038101906103eb919061281b565b610c61565b6040516103fd919061276d565b60405180910390f35b34801561041257600080fd5b5061042d6004803603810190610428919061287f565b610c94565b005b34801561043b57600080fd5b506104566004803603810190610451919061287f565b610d02565b005b34801561046457600080fd5b5061047f600480360381019061047a91906128d8565b610d70565b005b34801561048d57600080fd5b50610496610e13565b6040516104a3919061276d565b60405180910390f35b3480156104b857600080fd5b506104d360048036038101906104ce919061281b565b610e26565b6040516104e091906125ad565b60405180910390f35b3480156104f557600080fd5b506104fe610e6f565b60405161050b91906125ad565b60405180910390f35b34801561052057600080fd5b50610529610e75565b6040516105369190612927565b60405180910390f35b34801561054b57600080fd5b50610554610e9e565b60405161056191906125ad565b60405180910390f35b34801561057657600080fd5b5061057f610ea4565b60405161058c9190612661565b60405180910390f35b3480156105a157600080fd5b506105aa610ee1565b6040516105b79190612927565b60405180910390f35b3480156105cc57600080fd5b506105e760048036038101906105e29190612712565b610f07565b6040516105f4919061276d565b60405180910390f35b34801561060957600080fd5b50610624600480360381019061061f919061281b565b610f1c565b005b34801561063257600080fd5b5061063b610fbe565b60405161064891906125ad565b60405180910390f35b34801561065d57600080fd5b5061067860048036038101906106739190612942565b610fc4565b005b34801561068657600080fd5b506106a1600480360381019061069c919061287f565b61103f565b6040516106ae91906125ad565b60405180910390f35b3480156106c357600080fd5b506106de60048036038101906106d99190612995565b6110b1565b6040516106eb91906125ad565b60405180910390f35b34801561070057600080fd5b5061071b600480360381019061071691906129d5565b611138565b005b34801561072957600080fd5b50610744600480360381019061073f919061281b565b6111a5565b005b34801561075257600080fd5b5061076d6004803603810190610768919061281b565b611231565b005b34801561077b57600080fd5b5061079660048036038101906107919190612a53565b6112d4565b005b3480156107a457600080fd5b506107bf60048036038101906107ba91906128d8565b6113ed565b005b3480156107cd57600080fd5b506107d6611490565b6040516107e39190612adf565b60405180910390f35b3480156107f857600080fd5b50610813600480360381019061080e919061281b565b6114b6565b604051610820919061276d565b60405180910390f35b60155481565b60606040518060400160405280601781526020017f436f6c6c65637469766520496e74656c6c6967656e6365000000000000000000815250905090565b600081600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161094c91906125ad565b60405180910390a36001905092915050565b60008261096a8361103f565b11905092915050565b6000600554905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610b6957610ae8826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461150c9092919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610b74848484611570565b90509392505050565b6000610bfa610bad600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610e26565b610bec610bdb600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610e26565b6005546119ff90919063ffffffff16565b6119ff90919063ffffffff16565b905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006012905090565b6000610c8d827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61086c565b9050919050565b610c9d336114b6565b610cdc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd390612b46565b60405180910390fd5b6103e8600554610cec9190612bc4565b811015610cf857600080fd5b8060068190555050565b610d0b33610bff565b610d4a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4190612c41565b60405180910390fd5b6103e8600554610d5a9190612bc4565b811015610d6657600080fd5b8060078190555050565b610d79336114b6565b610db8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610daf90612b46565b60405180910390fd5b80600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b601460009054906101000a900460ff1681565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60065481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60075481565b60606040518060400160405280600381526020017f4f4e450000000000000000000000000000000000000000000000000000000000815250905090565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610f14338484611570565b905092915050565b610f2533610bff565b610f64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f5b90612c41565b60405180910390fd5b60018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60135481565b610fcd336114b6565b61100c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100390612b46565b60405180910390fd5b82600c8190555081600d8190555061102d8284611a4990919063ffffffff16565b600e8190555080600f81905550505050565b60006110aa61104c610b7d565b61109c61108d600261107f601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610e26565b611aa790919063ffffffff16565b85611aa790919063ffffffff16565b611b2190919063ffffffff16565b9050919050565b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611141336114b6565b611180576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117790612b46565b60405180910390fd5b81601460006101000a81548160ff021916908315150217905550806015819055505050565b6111ae336114b6565b6111ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e490612b46565b60405180910390fd5b80601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b61123a33610bff565b611279576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127090612c41565b60405180910390fd5b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6112dd33610bff565b61131c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131390612c41565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163816040516113e29190612c82565b60405180910390a150565b6113f6336114b6565b611435576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142c90612b46565b60405180910390fd5b80600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000838311158290611554576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154b9190612661565b60405180910390fd5b50600083856115639190612c9d565b9050809150509392505050565b6000601660009054906101000a900460ff161561159957611592848484611b6b565b90506119f8565b6115a38483611d3e565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561164f5750600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561173857600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806116f8575060075482600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116f59190612cd1565b11155b611737576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161172e90612d99565b60405180910390fd5b5b611740611ddb565b1561174e5761174d611eb2565b5b61175661228c565b1580156117b05750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b1561180a576000600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541161180157600080fd5b611809612299565b5b611893826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461150c9092919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006118e1856122a2565b6118eb57826118f6565b6118f585846122f9565b5b905061194a81600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a4990919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516119ea91906125ad565b60405180910390a360019150505b9392505050565b6000611a4183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061150c565b905092915050565b6000808284611a589190612cd1565b905083811015611a9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a9490612e05565b60405180910390fd5b8091505092915050565b6000808303611ab95760009050611b1b565b60008284611ac79190612e25565b9050828482611ad69190612bc4565b14611b16576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0d90612ef1565b60405180910390fd5b809150505b92915050565b6000611b6383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061243d565b905092915050565b6000611bf6826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461150c9092919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c8b82600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a4990919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611d2b91906125ad565b60405180910390a3600190509392505050565b60065481111580611d985750600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b611dd7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dce90612f5d565b60405180910390fd5b5050565b6000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611e485750601660009054906101000a900460ff16155b8015611e605750601460009054906101000a900460ff165b8015611ead5750601554600860003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b905090565b6001601660006101000a81548160ff0219169083151502179055506000611ed830610e26565b90506000611f186002611f0a600e54611efc600c5487611aa790919063ffffffff16565b611b2190919063ffffffff16565b611b2190919063ffffffff16565b90506000611f2f82846119ff90919063ffffffff16565b90506000600267ffffffffffffffff811115611f4e57611f4d612f7d565b5b604051908082528060200260200182016040528015611f7c5781602001602082028036833780820191505090505b5090503081600081518110611f9457611f93612fac565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160018151811061200557612004612fac565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506000479050601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008530426040518663ffffffff1660e01b81526004016120a89594939291906130d4565b600060405180830381600087803b1580156120c257600080fd5b505af11580156120d6573d6000803e3d6000fd5b5050505060006120ef82476119ff90919063ffffffff16565b9050600061211d61210c6002600c54611b2190919063ffffffff16565b600e546119ff90919063ffffffff16565b9050600061215b600261214d8461213f600c5488611aa790919063ffffffff16565b611b2190919063ffffffff16565b611b2190919063ffffffff16565b9050600061218683612178600d5487611aa790919063ffffffff16565b611b2190919063ffffffff16565b90506000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682617530906040516121d49061315f565b600060405180830381858888f193505050503d8060008114612212576040519150601f19603f3d011682016040523d82523d6000602084013e612217565b606091505b505090508061225b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612252906131c0565b60405180910390fd5b61226589846124a0565b505050505050505050506000601660006101000a81548160ff021916908315150217905550565b6000806013541415905090565b43601381905550565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16159050919050565b600080612325600f54612317600e5486611aa790919063ffffffff16565b611b2190919063ffffffff16565b905061237981600860003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a4990919063ffffffff16565b600860003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161241991906125ad565b60405180910390a361243481846119ff90919063ffffffff16565b91505092915050565b60008083118290612484576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161247b9190612661565b60405180910390fd5b50600083856124939190612bc4565b9050809150509392505050565b600082111561259057601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71982308560008030426040518863ffffffff1660e01b8152600401612510969594939291906131e0565b60606040518083038185885af115801561252e573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906125539190613256565b5050507f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450681836040516125879291906132a9565b60405180910390a15b5050565b6000819050919050565b6125a781612594565b82525050565b60006020820190506125c2600083018461259e565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156126025780820151818401526020810190506125e7565b83811115612611576000848401525b50505050565b6000601f19601f8301169050919050565b6000612633826125c8565b61263d81856125d3565b935061264d8185602086016125e4565b61265681612617565b840191505092915050565b6000602082019050818103600083015261267b8184612628565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006126b382612688565b9050919050565b6126c3816126a8565b81146126ce57600080fd5b50565b6000813590506126e0816126ba565b92915050565b6126ef81612594565b81146126fa57600080fd5b50565b60008135905061270c816126e6565b92915050565b6000806040838503121561272957612728612683565b5b6000612737858286016126d1565b9250506020612748858286016126fd565b9150509250929050565b60008115159050919050565b61276781612752565b82525050565b6000602082019050612782600083018461275e565b92915050565b6000806040838503121561279f5761279e612683565b5b60006127ad858286016126fd565b92505060206127be858286016126fd565b9150509250929050565b6000806000606084860312156127e1576127e0612683565b5b60006127ef868287016126d1565b9350506020612800868287016126d1565b9250506040612811868287016126fd565b9150509250925092565b60006020828403121561283157612830612683565b5b600061283f848285016126d1565b91505092915050565b600060ff82169050919050565b61285e81612848565b82525050565b60006020820190506128796000830184612855565b92915050565b60006020828403121561289557612894612683565b5b60006128a3848285016126fd565b91505092915050565b6128b581612752565b81146128c057600080fd5b50565b6000813590506128d2816128ac565b92915050565b600080604083850312156128ef576128ee612683565b5b60006128fd858286016126d1565b925050602061290e858286016128c3565b9150509250929050565b612921816126a8565b82525050565b600060208201905061293c6000830184612918565b92915050565b60008060006060848603121561295b5761295a612683565b5b6000612969868287016126fd565b935050602061297a868287016126fd565b925050604061298b868287016126fd565b9150509250925092565b600080604083850312156129ac576129ab612683565b5b60006129ba858286016126d1565b92505060206129cb858286016126d1565b9150509250929050565b600080604083850312156129ec576129eb612683565b5b60006129fa858286016128c3565b9250506020612a0b858286016126fd565b9150509250929050565b6000612a2082612688565b9050919050565b612a3081612a15565b8114612a3b57600080fd5b50565b600081359050612a4d81612a27565b92915050565b600060208284031215612a6957612a68612683565b5b6000612a7784828501612a3e565b91505092915050565b6000819050919050565b6000612aa5612aa0612a9b84612688565b612a80565b612688565b9050919050565b6000612ab782612a8a565b9050919050565b6000612ac982612aac565b9050919050565b612ad981612abe565b82525050565b6000602082019050612af46000830184612ad0565b92915050565b7f21415554484f52495a4544000000000000000000000000000000000000000000600082015250565b6000612b30600b836125d3565b9150612b3b82612afa565b602082019050919050565b60006020820190508181036000830152612b5f81612b23565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612bcf82612594565b9150612bda83612594565b925082612bea57612be9612b66565b5b828204905092915050565b7f214f574e45520000000000000000000000000000000000000000000000000000600082015250565b6000612c2b6006836125d3565b9150612c3682612bf5565b602082019050919050565b60006020820190508181036000830152612c5a81612c1e565b9050919050565b6000612c6c82612aac565b9050919050565b612c7c81612c61565b82525050565b6000602082019050612c976000830184612c73565b92915050565b6000612ca882612594565b9150612cb383612594565b925082821015612cc657612cc5612b95565b5b828203905092915050565b6000612cdc82612594565b9150612ce783612594565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612d1c57612d1b612b95565b5b828201905092915050565b7f5472616e7366657220616d6f756e74206578636565647320746865206261672060008201527f73697a652e000000000000000000000000000000000000000000000000000000602082015250565b6000612d836025836125d3565b9150612d8e82612d27565b604082019050919050565b60006020820190508181036000830152612db281612d76565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612def601b836125d3565b9150612dfa82612db9565b602082019050919050565b60006020820190508181036000830152612e1e81612de2565b9050919050565b6000612e3082612594565b9150612e3b83612594565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612e7457612e73612b95565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612edb6021836125d3565b9150612ee682612e7f565b604082019050919050565b60006020820190508181036000830152612f0a81612ece565b9050919050565b7f5458204c696d6974204578636565646564000000000000000000000000000000600082015250565b6000612f476011836125d3565b9150612f5282612f11565b602082019050919050565b60006020820190508181036000830152612f7681612f3a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b6000613000612ffb612ff684612fdb565b612a80565b612594565b9050919050565b61301081612fe5565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61304b816126a8565b82525050565b600061305d8383613042565b60208301905092915050565b6000602082019050919050565b600061308182613016565b61308b8185613021565b935061309683613032565b8060005b838110156130c75781516130ae8882613051565b97506130b983613069565b92505060018101905061309a565b5085935050505092915050565b600060a0820190506130e9600083018861259e565b6130f66020830187613007565b81810360408301526131088186613076565b90506131176060830185612918565b613124608083018461259e565b9695505050505050565b600081905092915050565b50565b600061314960008361312e565b915061315482613139565b600082019050919050565b600061316a8261313c565b9150819050919050565b7f72656365697665722072656a656374656420455448207472616e736665720000600082015250565b60006131aa601e836125d3565b91506131b582613174565b602082019050919050565b600060208201905081810360008301526131d98161319d565b9050919050565b600060c0820190506131f56000830189612918565b613202602083018861259e565b61320f6040830187613007565b61321c6060830186613007565b6132296080830185612918565b61323660a083018461259e565b979650505050505050565b600081519050613250816126e6565b92915050565b60008060006060848603121561326f5761326e612683565b5b600061327d86828701613241565b935050602061328e86828701613241565b925050604061329f86828701613241565b9150509250925092565b60006040820190506132be600083018561259e565b6132cb602083018461259e565b939250505056fea26469706673582212206ca9c65c68e176417fc02f7bfc59ae2b11282f518ba62d3bbfac70d777882dcb64736f6c634300080f0033

Deployed Bytecode Sourcemap

5634:9642:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6763:57;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7741:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8169:216;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15055:150;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7471:88;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8705:376;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14718:142;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3479:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7565:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8399:122;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13527:145;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;13685:151;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;13854:120;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6726:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7911:105;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6088:54;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7827:78;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6150:56;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7651:84;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6666:19;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8535:156;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3140:94;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6692:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14130:263;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14874:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8022:133;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14550:156;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14407:129;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3316:97;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3891:173;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;13988:128;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6635:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3659:107;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6763:57;;;;:::o;7741:80::-;7789:13;7813:5;;;;;;;;;;;;;;;;;7806:12;;7741:80;:::o;8169:216::-;8244:4;8296:6;8261:11;:23;8273:10;8261:23;;;;;;;;;;;;;;;:32;8285:7;8261:32;;;;;;;;;;;;;;;:41;;;;8339:7;8318:37;;8327:10;8318:37;;;8348:6;8318:37;;;;;;:::i;:::-;;;;;;;;8373:4;8366:11;;8169:216;;;;:::o;15055:150::-;15135:4;15191:6;15159:29;15179:8;15159:19;:29::i;:::-;:38;15152:45;;15055:150;;;;:::o;7471:88::-;7526:7;7544:12;;7537:19;;7471:88;:::o;8705:376::-;8805:4;8860:17;8825:11;:19;8837:6;8825:19;;;;;;;;;;;;;;;:31;8845:10;8825:31;;;;;;;;;;;;;;;;:52;8822:186;;8927:69;8963:6;8927:69;;;;;;;;;;;;;;;;;:11;:19;8939:6;8927:19;;;;;;;;;;;;;;;:31;8947:10;8927:31;;;;;;;;;;;;;;;;:35;;:69;;;;;:::i;:::-;8893:11;:19;8905:6;8893:19;;;;;;;;;;;;;;;:31;8913:10;8893:31;;;;;;;;;;;;;;;:103;;;;8822:186;9033:40;9047:6;9055:9;9066:6;9033:13;:40::i;:::-;9026:47;;8705:376;;;;;:::o;14718:142::-;14771:7;14798:54;14836:15;14846:4;;;;;;;;;;;14836:9;:15::i;:::-;14798:33;14815:15;14825:4;;;;;;;;;;;14815:9;:15::i;:::-;14798:12;;:16;;:33;;;;:::i;:::-;:37;;:54;;;;:::i;:::-;14791:61;;14718:142;:::o;3479:103::-;3534:4;3569:5;;;;;;;;;;;3558:16;;:7;:16;;;3551:23;;3479:103;;;:::o;7565:80::-;7617:5;6020:2;7626:16;;7565:80;:::o;8399:122::-;8454:4;8478:35;8486:7;8495:17;8478:7;:35::i;:::-;8471:42;;8399:122;;;:::o;13527:145::-;3069:24;3082:10;3069:12;:24::i;:::-;3061:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;13627:4:::1;13612:12;;:19;;;;:::i;:::-;13602:6;:29;;13594:38;;;::::0;::::1;;13658:6;13643:12;:21;;;;13527:145:::0;:::o;13685:151::-;2967:19;2975:10;2967:7;:19::i;:::-;2959:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;13788:4:::1;13773:12;;:19;;;;:::i;:::-;13763:6;:29;;13755:39;;;::::0;::::1;;13822:6;13805:14;:23;;;;13685:151:::0;:::o;13854:120::-;3069:24;3082:10;3069:12;:24::i;:::-;3061:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;13960:6:::1;13938:11;:19;13950:6;13938:19;;;;;;;;;;;;;;;;:28;;;;;;;;;;;;;;;;;;13854:120:::0;;:::o;6726:30::-;;;;;;;;;;;;;:::o;7911:105::-;7977:7;7995:9;:18;8005:7;7995:18;;;;;;;;;;;;;;;;7988:25;;7911:105;;;:::o;6088:54::-;;;;:::o;7827:78::-;7879:7;7897:5;;;;;;;;;;;7890:12;;7827:78;:::o;6150:56::-;;;;:::o;7651:84::-;7701:13;7725:7;;;;;;;;;;;;;;;;;7718:14;;7651:84;:::o;6666:19::-;;;;;;;;;;;;;:::o;8535:156::-;8615:4;8639:44;8653:10;8665:9;8676:6;8639:13;:44::i;:::-;8632:51;;8535:156;;;;:::o;3140:94::-;2967:19;2975:10;2967:7;:19::i;:::-;2959:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;3222:4:::1;3200:14:::0;:19:::1;3215:3;3200:19;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;3140:94:::0;:::o;6692:25::-;;;;:::o;14130:263::-;3069:24;3082:10;3069:12;:24::i;:::-;3061:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;14257:13:::1;14242:12;:28;;;;14289:6;14281:5;:14;;;;14317:25;14335:6;14317:13;:17;;:25;;;;:::i;:::-;14306:8;:36;;;;14370:15;14353:14;:32;;;;14130:263:::0;;;:::o;14874:167::-;14942:7;14969:64;15010:22;:20;:22::i;:::-;14969:36;14982:22;15002:1;14982:15;14992:4;;;;;;;;;;;14982:9;:15::i;:::-;:19;;:22;;;;:::i;:::-;14969:8;:12;;:36;;;;:::i;:::-;:40;;:64;;;;:::i;:::-;14962:71;;14874:167;;;:::o;8022:133::-;8106:7;8124:11;:19;8136:6;8124:19;;;;;;;;;;;;;;;:28;8144:7;8124:28;;;;;;;;;;;;;;;;8117:35;;8022:133;;;;:::o;14550:156::-;3069:24;3082:10;3069:12;:24::i;:::-;3061:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;14656:8:::1;14642:11;;:22;;;;;;;;;;;;;;;;;;14691:7;14675:13;:23;;;;14550:156:::0;;:::o;14407:129::-;3069:24;3082:10;3069:12;:24::i;:::-;3061:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;14510:18:::1;14490:17;;:38;;;;;;;;;;;;;;;;;;14407:129:::0;:::o;3316:97::-;2967:19;2975:10;2967:7;:19::i;:::-;2959:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;3400:5:::1;3378:14;:19;3393:3;3378:19;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;3316:97:::0;:::o;3891:173::-;2967:19;2975:10;2967:7;:19::i;:::-;2959:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;3975:3:::1;3967:5;::::0;:11:::1;;;;;;;;;;;;;;;;;;4011:4;3989:14:::0;:19:::1;4004:3;3989:19;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;4031:25;4052:3;4031:25;;;;;;:::i;:::-;;;;;;;;3891:173:::0;:::o;13988:128::-;3069:24;3082:10;3069:12;:24::i;:::-;3061:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;14102:6:::1;14076:15;:23;14092:6;14076:23;;;;;;;;;;;;;;;;:32;;;;;;;;;;;;;;;;;;13988:128:::0;;:::o;6635:24::-;;;;;;;;;;;;;:::o;3659:107::-;3715:4;3739:14;:19;3754:3;3739:19;;;;;;;;;;;;;;;;;;;;;;;;;3732:26;;3659:107;;;:::o;813:198::-;899:7;932:1;927;:6;;935:12;919:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;959:9;975:1;971;:5;;;;:::i;:::-;959:17;;1002:1;995:8;;;813:198;;;;;:::o;9095:955::-;9187:4;9207:6;;;;;;;;;;;9204:63;;;9223:41;9238:6;9246:9;9257:6;9223:14;:41::i;:::-;9216:48;;;;9204:63;9287:28;9300:6;9308;9287:12;:28::i;:::-;9353:4;;;;;;;;;;;9340:17;;:9;:17;;;;:38;;;;;9374:4;;;;;;;;;;;9361:17;;:9;:17;;;;9340:38;9336:198;;;9403:15;:26;9419:9;9403:26;;;;;;;;;;;;;;;;;;;;;;;;;:77;;;;9466:14;;9456:6;9433:9;:20;9443:9;9433:20;;;;;;;;;;;;;;;;:29;;;;:::i;:::-;:47;;9403:77;9395:127;;;;;;;;;;;;:::i;:::-;;;;;;;;;9336:198;9557:16;:14;:16::i;:::-;9554:35;;;9576:10;:8;:10::i;:::-;9554:35;9611:10;:8;:10::i;:::-;9610:11;:32;;;;;9638:4;;;;;;;;;;;9625:17;;:9;:17;;;9610:32;9607:81;;;9673:1;9653:9;:17;9663:6;9653:17;;;;;;;;;;;;;;;;:21;9645:30;;;;;;9677:8;:6;:8::i;:::-;9607:81;9726:53;9748:6;9726:53;;;;;;;;;;;;;;;;;:9;:17;9736:6;9726:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;9706:9;:17;9716:6;9706:17;;;;;;;;;;;;;;;:73;;;;9798:22;9823:21;9837:6;9823:13;:21::i;:::-;:56;;9873:6;9823:56;;;9847:23;9855:6;9863;9847:7;:23::i;:::-;9823:56;9798:81;;9913:40;9938:14;9913:9;:20;9923:9;9913:20;;;;;;;;;;;;;;;;:24;;:40;;;;:::i;:::-;9890:9;:20;9900:9;9890:20;;;;;;;;;;;;;;;:63;;;;9994:9;9977:43;;9986:6;9977:43;;;10005:14;9977:43;;;;;;:::i;:::-;;;;;;;;10038:4;10031:11;;;9095:955;;;;;;:::o;671:136::-;729:7;756:43;760:1;763;756:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;749:50;;671:136;;;;:::o;478:187::-;536:7;556:9;572:1;568;:5;;;;:::i;:::-;556:17;;597:1;592;:6;;584:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;656:1;649:8;;;478:187;;;;:::o;1017:250::-;1075:7;1104:1;1099;:6;1095:47;;1129:1;1122:8;;;;1095:47;1154:9;1170:1;1166;:5;;;;:::i;:::-;1154:17;;1199:1;1194;1190;:5;;;;:::i;:::-;:10;1182:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1258:1;1251:8;;;1017:250;;;;;:::o;1273:132::-;1331:7;1358:39;1362:1;1365;1358:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1351:46;;1273:132;;;;:::o;10062:330::-;10155:4;10192:53;10214:6;10192:53;;;;;;;;;;;;;;;;;:9;:17;10202:6;10192:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;10172:9;:17;10182:6;10172:17;;;;;;;;;;;;;;;:73;;;;10279:32;10304:6;10279:9;:20;10289:9;10279:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;10256:9;:20;10266:9;10256:20;;;;;;;;;;;;;;;:55;;;;10344:9;10327:35;;10336:6;10327:35;;;10355:6;10327:35;;;;;;:::i;:::-;;;;;;;;10380:4;10373:11;;10062:330;;;;;:::o;10406:166::-;10503:12;;10493:6;:22;;:49;;;;10519:15;:23;10535:6;10519:23;;;;;;;;;;;;;;;;;;;;;;;;;10493:49;10485:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;10406:166;;:::o;11079:197::-;11128:4;11166;;;;;;;;;;;11152:18;;:10;:18;;;;:38;;;;;11184:6;;;;;;;;;;;11183:7;11152:38;:62;;;;;11203:11;;;;;;;;;;;11152:62;:116;;;;;11255:13;;11227:9;:24;11245:4;11227:24;;;;;;;;;;;;;;;;:41;;11152:116;11145:123;;11079:197;:::o;11290:1231::-;6884:4;6875:6;;:13;;;;;;;;;;;;;;;;;;11339:28:::1;11370:24;11388:4;11370:9;:24::i;:::-;11339:55;;11405:23;11431:59;11488:1;11431:52;11474:8;;11431:38;11456:12;;11431:20;:24;;:38;;;;:::i;:::-;:42;;:52;;;;:::i;:::-;:56;;:59;;;;:::i;:::-;11405:85;;11501:20;11524:41;11549:15;11524:20;:24;;:41;;;;:::i;:::-;11501:64;;11584:21;11622:1;11608:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11584:40;;11653:4;11635;11640:1;11635:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;11679:4;;;;;;;;;;;11669;11674:1;11669:7;;;;;;;;:::i;:::-;;;;;;;:14;;;;;;;;;::::0;::::1;11702:21;11726;11702:45;;11766:6;;;;;;;;;;;:57;;;11838:12;11865:1;11881:4;11908;11928:15;11766:188;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;11965:17;11985:40;12011:13;11985:21;:25;;:40;;;;:::i;:::-;11965:60;;12036:19;12058:33;12071:19;12088:1;12071:12;;:16;;:19;;;;:::i;:::-;12058:8;;:12;;:33;;;;:::i;:::-;12036:55;;12102:26;12131:51;12180:1;12131:44;12163:11;12131:27;12145:12;;12131:9;:13;;:27;;;;:::i;:::-;:31;;:44;;;;:::i;:::-;:48;;:51;;;;:::i;:::-;12102:80;;12193:23;12219:37;12244:11;12219:20;12233:5;;12219:9;:13;;:20;;;;:::i;:::-;:24;;:37;;;;:::i;:::-;12193:63;;12276:14;12327:17;;;;;;;;;;;12319:31;;12358:15;12380:5;12319:71;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12275:115;;;12409:9;12401:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;12464:49;12477:15;12494:18;12464:12;:49::i;:::-;11328:1193;;;;;;;;;;6902:5:::0;6893:6;;:14;;;;;;;;;;;;;;;;;;11290:1231::o;13338:90::-;13381:4;13419:1;13405:10;;:15;;13398:22;;13338:90;:::o;13442:71::-;13493:12;13480:10;:25;;;;13442:71::o;10584:114::-;10646:4;10671:11;:19;10683:6;10671:19;;;;;;;;;;;;;;;;;;;;;;;;;10670:20;10663:27;;10584:114;;;:::o;10720:345::-;10787:7;10807:17;10827:40;10852:14;;10827:20;10838:8;;10827:6;:10;;:20;;;;:::i;:::-;:24;;:40;;;;:::i;:::-;10807:60;;10913:39;10942:9;10913;:24;10931:4;10913:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;10886:9;:24;10904:4;10886:24;;;;;;;;;;;;;;;:66;;;;10993:4;10968:42;;10977:6;10968:42;;;11000:9;10968:42;;;;;;:::i;:::-;;;;;;;;11036:21;11047:9;11036:6;:10;;:21;;;;:::i;:::-;11029:28;;;10720:345;;;;:::o;1411:::-;1497:7;1596:1;1592;:5;1599:12;1584:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1623:9;1639:1;1635;:5;;;;:::i;:::-;1623:17;;1747:1;1740:8;;;1411:345;;;;;:::o;12535:408::-;12629:1;12615:11;:15;12612:324;;;12646:6;;;;;;;;;;;:22;;;12676:9;12713:4;12737:11;12767:1;12787;12815:4;12839:15;12646:223;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;12889:35;12901:9;12912:11;12889:35;;;;;;;:::i;:::-;;;;;;;;12612:324;12535:408;;:::o;7:77:1:-;44:7;73:5;62:16;;7:77;;;:::o;90:118::-;177:24;195:5;177:24;:::i;:::-;172:3;165:37;90:118;;:::o;214:222::-;307:4;345:2;334:9;330:18;322:26;;358:71;426:1;415:9;411:17;402:6;358:71;:::i;:::-;214:222;;;;:::o;442:99::-;494:6;528:5;522:12;512:22;;442:99;;;:::o;547:169::-;631:11;665:6;660:3;653:19;705:4;700:3;696:14;681:29;;547:169;;;;:::o;722:307::-;790:1;800:113;814:6;811:1;808:13;800:113;;;899:1;894:3;890:11;884:18;880:1;875:3;871:11;864:39;836:2;833:1;829:10;824:15;;800:113;;;931:6;928:1;925:13;922:101;;;1011:1;1002:6;997:3;993:16;986:27;922:101;771:258;722:307;;;:::o;1035:102::-;1076:6;1127:2;1123:7;1118:2;1111:5;1107:14;1103:28;1093:38;;1035:102;;;:::o;1143:364::-;1231:3;1259:39;1292:5;1259:39;:::i;:::-;1314:71;1378:6;1373:3;1314:71;:::i;:::-;1307:78;;1394:52;1439:6;1434:3;1427:4;1420:5;1416:16;1394:52;:::i;:::-;1471:29;1493:6;1471:29;:::i;:::-;1466:3;1462:39;1455:46;;1235:272;1143:364;;;;:::o;1513:313::-;1626:4;1664:2;1653:9;1649:18;1641:26;;1713:9;1707:4;1703:20;1699:1;1688:9;1684:17;1677:47;1741:78;1814:4;1805:6;1741:78;:::i;:::-;1733:86;;1513:313;;;;:::o;1913:117::-;2022:1;2019;2012:12;2159:126;2196:7;2236:42;2229:5;2225:54;2214:65;;2159:126;;;:::o;2291:96::-;2328:7;2357:24;2375:5;2357:24;:::i;:::-;2346:35;;2291:96;;;:::o;2393:122::-;2466:24;2484:5;2466:24;:::i;:::-;2459:5;2456:35;2446:63;;2505:1;2502;2495:12;2446:63;2393:122;:::o;2521:139::-;2567:5;2605:6;2592:20;2583:29;;2621:33;2648:5;2621:33;:::i;:::-;2521:139;;;;:::o;2666:122::-;2739:24;2757:5;2739:24;:::i;:::-;2732:5;2729:35;2719:63;;2778:1;2775;2768:12;2719:63;2666:122;:::o;2794:139::-;2840:5;2878:6;2865:20;2856:29;;2894:33;2921:5;2894:33;:::i;:::-;2794:139;;;;:::o;2939:474::-;3007:6;3015;3064:2;3052:9;3043:7;3039:23;3035:32;3032:119;;;3070:79;;:::i;:::-;3032:119;3190:1;3215:53;3260:7;3251:6;3240:9;3236:22;3215:53;:::i;:::-;3205:63;;3161:117;3317:2;3343:53;3388:7;3379:6;3368:9;3364:22;3343:53;:::i;:::-;3333:63;;3288:118;2939:474;;;;;:::o;3419:90::-;3453:7;3496:5;3489:13;3482:21;3471:32;;3419:90;;;:::o;3515:109::-;3596:21;3611:5;3596:21;:::i;:::-;3591:3;3584:34;3515:109;;:::o;3630:210::-;3717:4;3755:2;3744:9;3740:18;3732:26;;3768:65;3830:1;3819:9;3815:17;3806:6;3768:65;:::i;:::-;3630:210;;;;:::o;3846:474::-;3914:6;3922;3971:2;3959:9;3950:7;3946:23;3942:32;3939:119;;;3977:79;;:::i;:::-;3939:119;4097:1;4122:53;4167:7;4158:6;4147:9;4143:22;4122:53;:::i;:::-;4112:63;;4068:117;4224:2;4250:53;4295:7;4286:6;4275:9;4271:22;4250:53;:::i;:::-;4240:63;;4195:118;3846:474;;;;;:::o;4326:619::-;4403:6;4411;4419;4468:2;4456:9;4447:7;4443:23;4439:32;4436:119;;;4474:79;;:::i;:::-;4436:119;4594:1;4619:53;4664:7;4655:6;4644:9;4640:22;4619:53;:::i;:::-;4609:63;;4565:117;4721:2;4747:53;4792:7;4783:6;4772:9;4768:22;4747:53;:::i;:::-;4737:63;;4692:118;4849:2;4875:53;4920:7;4911:6;4900:9;4896:22;4875:53;:::i;:::-;4865:63;;4820:118;4326:619;;;;;:::o;4951:329::-;5010:6;5059:2;5047:9;5038:7;5034:23;5030:32;5027:119;;;5065:79;;:::i;:::-;5027:119;5185:1;5210:53;5255:7;5246:6;5235:9;5231:22;5210:53;:::i;:::-;5200:63;;5156:117;4951:329;;;;:::o;5286:86::-;5321:7;5361:4;5354:5;5350:16;5339:27;;5286:86;;;:::o;5378:112::-;5461:22;5477:5;5461:22;:::i;:::-;5456:3;5449:35;5378:112;;:::o;5496:214::-;5585:4;5623:2;5612:9;5608:18;5600:26;;5636:67;5700:1;5689:9;5685:17;5676:6;5636:67;:::i;:::-;5496:214;;;;:::o;5716:329::-;5775:6;5824:2;5812:9;5803:7;5799:23;5795:32;5792:119;;;5830:79;;:::i;:::-;5792:119;5950:1;5975:53;6020:7;6011:6;6000:9;5996:22;5975:53;:::i;:::-;5965:63;;5921:117;5716:329;;;;:::o;6051:116::-;6121:21;6136:5;6121:21;:::i;:::-;6114:5;6111:32;6101:60;;6157:1;6154;6147:12;6101:60;6051:116;:::o;6173:133::-;6216:5;6254:6;6241:20;6232:29;;6270:30;6294:5;6270:30;:::i;:::-;6173:133;;;;:::o;6312:468::-;6377:6;6385;6434:2;6422:9;6413:7;6409:23;6405:32;6402:119;;;6440:79;;:::i;:::-;6402:119;6560:1;6585:53;6630:7;6621:6;6610:9;6606:22;6585:53;:::i;:::-;6575:63;;6531:117;6687:2;6713:50;6755:7;6746:6;6735:9;6731:22;6713:50;:::i;:::-;6703:60;;6658:115;6312:468;;;;;:::o;6786:118::-;6873:24;6891:5;6873:24;:::i;:::-;6868:3;6861:37;6786:118;;:::o;6910:222::-;7003:4;7041:2;7030:9;7026:18;7018:26;;7054:71;7122:1;7111:9;7107:17;7098:6;7054:71;:::i;:::-;6910:222;;;;:::o;7138:619::-;7215:6;7223;7231;7280:2;7268:9;7259:7;7255:23;7251:32;7248:119;;;7286:79;;:::i;:::-;7248:119;7406:1;7431:53;7476:7;7467:6;7456:9;7452:22;7431:53;:::i;:::-;7421:63;;7377:117;7533:2;7559:53;7604:7;7595:6;7584:9;7580:22;7559:53;:::i;:::-;7549:63;;7504:118;7661:2;7687:53;7732:7;7723:6;7712:9;7708:22;7687:53;:::i;:::-;7677:63;;7632:118;7138:619;;;;;:::o;7763:474::-;7831:6;7839;7888:2;7876:9;7867:7;7863:23;7859:32;7856:119;;;7894:79;;:::i;:::-;7856:119;8014:1;8039:53;8084:7;8075:6;8064:9;8060:22;8039:53;:::i;:::-;8029:63;;7985:117;8141:2;8167:53;8212:7;8203:6;8192:9;8188:22;8167:53;:::i;:::-;8157:63;;8112:118;7763:474;;;;;:::o;8243:468::-;8308:6;8316;8365:2;8353:9;8344:7;8340:23;8336:32;8333:119;;;8371:79;;:::i;:::-;8333:119;8491:1;8516:50;8558:7;8549:6;8538:9;8534:22;8516:50;:::i;:::-;8506:60;;8462:114;8615:2;8641:53;8686:7;8677:6;8666:9;8662:22;8641:53;:::i;:::-;8631:63;;8586:118;8243:468;;;;;:::o;8717:104::-;8762:7;8791:24;8809:5;8791:24;:::i;:::-;8780:35;;8717:104;;;:::o;8827:138::-;8908:32;8934:5;8908:32;:::i;:::-;8901:5;8898:43;8888:71;;8955:1;8952;8945:12;8888:71;8827:138;:::o;8971:155::-;9025:5;9063:6;9050:20;9041:29;;9079:41;9114:5;9079:41;:::i;:::-;8971:155;;;;:::o;9132:345::-;9199:6;9248:2;9236:9;9227:7;9223:23;9219:32;9216:119;;;9254:79;;:::i;:::-;9216:119;9374:1;9399:61;9452:7;9443:6;9432:9;9428:22;9399:61;:::i;:::-;9389:71;;9345:125;9132:345;;;;:::o;9483:60::-;9511:3;9532:5;9525:12;;9483:60;;;:::o;9549:142::-;9599:9;9632:53;9650:34;9659:24;9677:5;9659:24;:::i;:::-;9650:34;:::i;:::-;9632:53;:::i;:::-;9619:66;;9549:142;;;:::o;9697:126::-;9747:9;9780:37;9811:5;9780:37;:::i;:::-;9767:50;;9697:126;;;:::o;9829:144::-;9897:9;9930:37;9961:5;9930:37;:::i;:::-;9917:50;;9829:144;;;:::o;9979:167::-;10084:55;10133:5;10084:55;:::i;:::-;10079:3;10072:68;9979:167;;:::o;10152:258::-;10263:4;10301:2;10290:9;10286:18;10278:26;;10314:89;10400:1;10389:9;10385:17;10376:6;10314:89;:::i;:::-;10152:258;;;;:::o;10416:161::-;10556:13;10552:1;10544:6;10540:14;10533:37;10416:161;:::o;10583:366::-;10725:3;10746:67;10810:2;10805:3;10746:67;:::i;:::-;10739:74;;10822:93;10911:3;10822:93;:::i;:::-;10940:2;10935:3;10931:12;10924:19;;10583:366;;;:::o;10955:419::-;11121:4;11159:2;11148:9;11144:18;11136:26;;11208:9;11202:4;11198:20;11194:1;11183:9;11179:17;11172:47;11236:131;11362:4;11236:131;:::i;:::-;11228:139;;10955:419;;;:::o;11380:180::-;11428:77;11425:1;11418:88;11525:4;11522:1;11515:15;11549:4;11546:1;11539:15;11566:180;11614:77;11611:1;11604:88;11711:4;11708:1;11701:15;11735:4;11732:1;11725:15;11752:185;11792:1;11809:20;11827:1;11809:20;:::i;:::-;11804:25;;11843:20;11861:1;11843:20;:::i;:::-;11838:25;;11882:1;11872:35;;11887:18;;:::i;:::-;11872:35;11929:1;11926;11922:9;11917:14;;11752:185;;;;:::o;11943:156::-;12083:8;12079:1;12071:6;12067:14;12060:32;11943:156;:::o;12105:365::-;12247:3;12268:66;12332:1;12327:3;12268:66;:::i;:::-;12261:73;;12343:93;12432:3;12343:93;:::i;:::-;12461:2;12456:3;12452:12;12445:19;;12105:365;;;:::o;12476:419::-;12642:4;12680:2;12669:9;12665:18;12657:26;;12729:9;12723:4;12719:20;12715:1;12704:9;12700:17;12693:47;12757:131;12883:4;12757:131;:::i;:::-;12749:139;;12476:419;;;:::o;12901:134::-;12959:9;12992:37;13023:5;12992:37;:::i;:::-;12979:50;;12901:134;;;:::o;13041:147::-;13136:45;13175:5;13136:45;:::i;:::-;13131:3;13124:58;13041:147;;:::o;13194:238::-;13295:4;13333:2;13322:9;13318:18;13310:26;;13346:79;13422:1;13411:9;13407:17;13398:6;13346:79;:::i;:::-;13194:238;;;;:::o;13438:191::-;13478:4;13498:20;13516:1;13498:20;:::i;:::-;13493:25;;13532:20;13550:1;13532:20;:::i;:::-;13527:25;;13571:1;13568;13565:8;13562:34;;;13576:18;;:::i;:::-;13562:34;13621:1;13618;13614:9;13606:17;;13438:191;;;;:::o;13635:305::-;13675:3;13694:20;13712:1;13694:20;:::i;:::-;13689:25;;13728:20;13746:1;13728:20;:::i;:::-;13723:25;;13882:1;13814:66;13810:74;13807:1;13804:81;13801:107;;;13888:18;;:::i;:::-;13801:107;13932:1;13929;13925:9;13918:16;;13635:305;;;;:::o;13946:224::-;14086:34;14082:1;14074:6;14070:14;14063:58;14155:7;14150:2;14142:6;14138:15;14131:32;13946:224;:::o;14176:366::-;14318:3;14339:67;14403:2;14398:3;14339:67;:::i;:::-;14332:74;;14415:93;14504:3;14415:93;:::i;:::-;14533:2;14528:3;14524:12;14517:19;;14176:366;;;:::o;14548:419::-;14714:4;14752:2;14741:9;14737:18;14729:26;;14801:9;14795:4;14791:20;14787:1;14776:9;14772:17;14765:47;14829:131;14955:4;14829:131;:::i;:::-;14821:139;;14548:419;;;:::o;14973:177::-;15113:29;15109:1;15101:6;15097:14;15090:53;14973:177;:::o;15156:366::-;15298:3;15319:67;15383:2;15378:3;15319:67;:::i;:::-;15312:74;;15395:93;15484:3;15395:93;:::i;:::-;15513:2;15508:3;15504:12;15497:19;;15156:366;;;:::o;15528:419::-;15694:4;15732:2;15721:9;15717:18;15709:26;;15781:9;15775:4;15771:20;15767:1;15756:9;15752:17;15745:47;15809:131;15935:4;15809:131;:::i;:::-;15801:139;;15528:419;;;:::o;15953:348::-;15993:7;16016:20;16034:1;16016:20;:::i;:::-;16011:25;;16050:20;16068:1;16050:20;:::i;:::-;16045:25;;16238:1;16170:66;16166:74;16163:1;16160:81;16155:1;16148:9;16141:17;16137:105;16134:131;;;16245:18;;:::i;:::-;16134:131;16293:1;16290;16286:9;16275:20;;15953:348;;;;:::o;16307:220::-;16447:34;16443:1;16435:6;16431:14;16424:58;16516:3;16511:2;16503:6;16499:15;16492:28;16307:220;:::o;16533:366::-;16675:3;16696:67;16760:2;16755:3;16696:67;:::i;:::-;16689:74;;16772:93;16861:3;16772:93;:::i;:::-;16890:2;16885:3;16881:12;16874:19;;16533:366;;;:::o;16905:419::-;17071:4;17109:2;17098:9;17094:18;17086:26;;17158:9;17152:4;17148:20;17144:1;17133:9;17129:17;17122:47;17186:131;17312:4;17186:131;:::i;:::-;17178:139;;16905:419;;;:::o;17330:167::-;17470:19;17466:1;17458:6;17454:14;17447:43;17330:167;:::o;17503:366::-;17645:3;17666:67;17730:2;17725:3;17666:67;:::i;:::-;17659:74;;17742:93;17831:3;17742:93;:::i;:::-;17860:2;17855:3;17851:12;17844:19;;17503:366;;;:::o;17875:419::-;18041:4;18079:2;18068:9;18064:18;18056:26;;18128:9;18122:4;18118:20;18114:1;18103:9;18099:17;18092:47;18156:131;18282:4;18156:131;:::i;:::-;18148:139;;17875:419;;;:::o;18300:180::-;18348:77;18345:1;18338:88;18445:4;18442:1;18435:15;18469:4;18466:1;18459:15;18486:180;18534:77;18531:1;18524:88;18631:4;18628:1;18621:15;18655:4;18652:1;18645:15;18672:85;18717:7;18746:5;18735:16;;18672:85;;;:::o;18763:158::-;18821:9;18854:61;18872:42;18881:32;18907:5;18881:32;:::i;:::-;18872:42;:::i;:::-;18854:61;:::i;:::-;18841:74;;18763:158;;;:::o;18927:147::-;19022:45;19061:5;19022:45;:::i;:::-;19017:3;19010:58;18927:147;;:::o;19080:114::-;19147:6;19181:5;19175:12;19165:22;;19080:114;;;:::o;19200:184::-;19299:11;19333:6;19328:3;19321:19;19373:4;19368:3;19364:14;19349:29;;19200:184;;;;:::o;19390:132::-;19457:4;19480:3;19472:11;;19510:4;19505:3;19501:14;19493:22;;19390:132;;;:::o;19528:108::-;19605:24;19623:5;19605:24;:::i;:::-;19600:3;19593:37;19528:108;;:::o;19642:179::-;19711:10;19732:46;19774:3;19766:6;19732:46;:::i;:::-;19810:4;19805:3;19801:14;19787:28;;19642:179;;;;:::o;19827:113::-;19897:4;19929;19924:3;19920:14;19912:22;;19827:113;;;:::o;19976:732::-;20095:3;20124:54;20172:5;20124:54;:::i;:::-;20194:86;20273:6;20268:3;20194:86;:::i;:::-;20187:93;;20304:56;20354:5;20304:56;:::i;:::-;20383:7;20414:1;20399:284;20424:6;20421:1;20418:13;20399:284;;;20500:6;20494:13;20527:63;20586:3;20571:13;20527:63;:::i;:::-;20520:70;;20613:60;20666:6;20613:60;:::i;:::-;20603:70;;20459:224;20446:1;20443;20439:9;20434:14;;20399:284;;;20403:14;20699:3;20692:10;;20100:608;;;19976:732;;;;:::o;20714:831::-;20977:4;21015:3;21004:9;21000:19;20992:27;;21029:71;21097:1;21086:9;21082:17;21073:6;21029:71;:::i;:::-;21110:80;21186:2;21175:9;21171:18;21162:6;21110:80;:::i;:::-;21237:9;21231:4;21227:20;21222:2;21211:9;21207:18;21200:48;21265:108;21368:4;21359:6;21265:108;:::i;:::-;21257:116;;21383:72;21451:2;21440:9;21436:18;21427:6;21383:72;:::i;:::-;21465:73;21533:3;21522:9;21518:19;21509:6;21465:73;:::i;:::-;20714:831;;;;;;;;:::o;21551:147::-;21652:11;21689:3;21674:18;;21551:147;;;;:::o;21704:114::-;;:::o;21824:398::-;21983:3;22004:83;22085:1;22080:3;22004:83;:::i;:::-;21997:90;;22096:93;22185:3;22096:93;:::i;:::-;22214:1;22209:3;22205:11;22198:18;;21824:398;;;:::o;22228:379::-;22412:3;22434:147;22577:3;22434:147;:::i;:::-;22427:154;;22598:3;22591:10;;22228:379;;;:::o;22613:180::-;22753:32;22749:1;22741:6;22737:14;22730:56;22613:180;:::o;22799:366::-;22941:3;22962:67;23026:2;23021:3;22962:67;:::i;:::-;22955:74;;23038:93;23127:3;23038:93;:::i;:::-;23156:2;23151:3;23147:12;23140:19;;22799:366;;;:::o;23171:419::-;23337:4;23375:2;23364:9;23360:18;23352:26;;23424:9;23418:4;23414:20;23410:1;23399:9;23395:17;23388:47;23452:131;23578:4;23452:131;:::i;:::-;23444:139;;23171:419;;;:::o;23596:807::-;23845:4;23883:3;23872:9;23868:19;23860:27;;23897:71;23965:1;23954:9;23950:17;23941:6;23897:71;:::i;:::-;23978:72;24046:2;24035:9;24031:18;24022:6;23978:72;:::i;:::-;24060:80;24136:2;24125:9;24121:18;24112:6;24060:80;:::i;:::-;24150;24226:2;24215:9;24211:18;24202:6;24150:80;:::i;:::-;24240:73;24308:3;24297:9;24293:19;24284:6;24240:73;:::i;:::-;24323;24391:3;24380:9;24376:19;24367:6;24323:73;:::i;:::-;23596:807;;;;;;;;;:::o;24409:143::-;24466:5;24497:6;24491:13;24482:22;;24513:33;24540:5;24513:33;:::i;:::-;24409:143;;;;:::o;24558:663::-;24646:6;24654;24662;24711:2;24699:9;24690:7;24686:23;24682:32;24679:119;;;24717:79;;:::i;:::-;24679:119;24837:1;24862:64;24918:7;24909:6;24898:9;24894:22;24862:64;:::i;:::-;24852:74;;24808:128;24975:2;25001:64;25057:7;25048:6;25037:9;25033:22;25001:64;:::i;:::-;24991:74;;24946:129;25114:2;25140:64;25196:7;25187:6;25176:9;25172:22;25140:64;:::i;:::-;25130:74;;25085:129;24558:663;;;;;:::o;25227:332::-;25348:4;25386:2;25375:9;25371:18;25363:26;;25399:71;25467:1;25456:9;25452:17;25443:6;25399:71;:::i;:::-;25480:72;25548:2;25537:9;25533:18;25524:6;25480:72;:::i;:::-;25227:332;;;;;:::o

Swarm Source

ipfs://6ca9c65c68e176417fc02f7bfc59ae2b11282f518ba62d3bbfac70d777882dcb

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.