ETH Price: $3,247.45 (-0.61%)

Contract

0x76af4CB74C8d4Da51403d672A799e94B5958c230
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve214077972024-12-15 12:03:4736 days ago1734264227IN
0x76af4CB7...B5958c230
0 ETH0.000333647.21732558
Approve212514142024-11-23 15:44:1158 days ago1732376651IN
0x76af4CB7...B5958c230
0 ETH0.0009707221.03096708
Approve209926002024-10-18 12:58:4794 days ago1729256327IN
0x76af4CB7...B5958c230
0 ETH0.0009293319.97330936
Approve209261742024-10-09 6:14:47103 days ago1728454487IN
0x76af4CB7...B5958c230
0 ETH0.000241729.9947872
Approve208901962024-10-04 5:54:35108 days ago1728021275IN
0x76af4CB7...B5958c230
0 ETH0.000286696.16161688
Approve208595162024-09-29 23:15:11113 days ago1727651711IN
0x76af4CB7...B5958c230
0 ETH0.000153346.34057222
Approve208148682024-09-23 17:46:59119 days ago1727113619IN
0x76af4CB7...B5958c230
0 ETH0.0010638622.86449226
Approve207527162024-09-15 1:25:59128 days ago1726363559IN
0x76af4CB7...B5958c230
0 ETH0.000096342.07060814
Approve207526642024-09-15 1:15:35128 days ago1726362935IN
0x76af4CB7...B5958c230
0 ETH0.000089751.93140586
Approve206834232024-09-05 9:15:23137 days ago1725527723IN
0x76af4CB7...B5958c230
0 ETH0.000144523.10621825
Approve206822872024-09-05 5:26:35137 days ago1725513995IN
0x76af4CB7...B5958c230
0 ETH0.000158123.4028742
Approve205985922024-08-24 12:55:35149 days ago1724504135IN
0x76af4CB7...B5958c230
0 ETH0.00005521.19567259
Approve205891762024-08-23 5:19:59150 days ago1724390399IN
0x76af4CB7...B5958c230
0 ETH0.000044060.94817827
Approve205529052024-08-18 3:44:35156 days ago1723952675IN
0x76af4CB7...B5958c230
0 ETH0.000045240.97373263
Approve205156242024-08-12 22:48:47161 days ago1723502927IN
0x76af4CB7...B5958c230
0 ETH0.000100322.15891353
Approve205085212024-08-11 23:01:35162 days ago1723417295IN
0x76af4CB7...B5958c230
0 ETH0.00006971.5
Transfer205083722024-08-11 22:31:47162 days ago1723415507IN
0x76af4CB7...B5958c230
0 ETH0.000068721.04708403
Approve204864522024-08-08 21:06:47165 days ago1723151207IN
0x76af4CB7...B5958c230
0 ETH0.000151133.25228022
Transfer204284592024-07-31 18:55:47173 days ago1722452147IN
0x76af4CB7...B5958c230
0 ETH0.0008861613.49918445
Approve202755132024-07-10 10:30:59194 days ago1720607459IN
0x76af4CB7...B5958c230
0 ETH0.000204714.40534107
Approve202630822024-07-08 16:48:35196 days ago1720457315IN
0x76af4CB7...B5958c230
0 ETH0.000421849.12511142
Approve202566492024-07-07 19:13:35197 days ago1720379615IN
0x76af4CB7...B5958c230
0 ETH0.000066391.4288916
Approve202548852024-07-07 13:19:11197 days ago1720358351IN
0x76af4CB7...B5958c230
0 ETH0.000125132.70686551
Approve202547682024-07-07 12:55:35197 days ago1720356935IN
0x76af4CB7...B5958c230
0 ETH0.000081021.74354085
Approve202206652024-07-02 18:37:47202 days ago1719945467IN
0x76af4CB7...B5958c230
0 ETH0.000320696.93709483
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
215214912024-12-31 9:13:5920 days ago1735636439
0x76af4CB7...B5958c230
0.00411154 ETH
215214912024-12-31 9:13:5920 days ago1735636439
0x76af4CB7...B5958c230
0.00045683 ETH
215214912024-12-31 9:13:5920 days ago1735636439
0x76af4CB7...B5958c230
0.0001142 ETH
215214912024-12-31 9:13:5920 days ago1735636439
0x76af4CB7...B5958c230
0.00468259 ETH
210040202024-10-20 3:12:1193 days ago1729393931
0x76af4CB7...B5958c230
0.00432223 ETH
210040202024-10-20 3:12:1193 days ago1729393931
0x76af4CB7...B5958c230
0.00048024 ETH
210040202024-10-20 3:12:1193 days ago1729393931
0x76af4CB7...B5958c230
0.00012006 ETH
210040202024-10-20 3:12:1193 days ago1729393931
0x76af4CB7...B5958c230
0.00492254 ETH
204284772024-07-31 18:59:23173 days ago1722452363
0x76af4CB7...B5958c230
0.0046601 ETH
204284772024-07-31 18:59:23173 days ago1722452363
0x76af4CB7...B5958c230
0.00051778 ETH
204284772024-07-31 18:59:23173 days ago1722452363
0x76af4CB7...B5958c230
0.00012944 ETH
204284772024-07-31 18:59:23173 days ago1722452363
0x76af4CB7...B5958c230
0.00530733 ETH
203085772024-07-15 1:18:35190 days ago1721006315
0x76af4CB7...B5958c230
0.00491847 ETH
203085772024-07-15 1:18:35190 days ago1721006315
0x76af4CB7...B5958c230
0.00054649 ETH
203085772024-07-15 1:18:35190 days ago1721006315
0x76af4CB7...B5958c230
0.00013662 ETH
203085772024-07-15 1:18:35190 days ago1721006315
0x76af4CB7...B5958c230
0.00560159 ETH
202547722024-07-07 12:56:23197 days ago1720356983
0x76af4CB7...B5958c230
0.00514561 ETH
202547722024-07-07 12:56:23197 days ago1720356983
0x76af4CB7...B5958c230
0.00057173 ETH
202547722024-07-07 12:56:23197 days ago1720356983
0x76af4CB7...B5958c230
0.00014293 ETH
202547722024-07-07 12:56:23197 days ago1720356983
0x76af4CB7...B5958c230
0.00586028 ETH
201507452024-06-23 0:13:47212 days ago1719101627
0x76af4CB7...B5958c230
0.00512695 ETH
201507452024-06-23 0:13:47212 days ago1719101627
0x76af4CB7...B5958c230
0.00056966 ETH
201507452024-06-23 0:13:47212 days ago1719101627
0x76af4CB7...B5958c230
0.00014241 ETH
201507452024-06-23 0:13:47212 days ago1719101627
0x76af4CB7...B5958c230
0.00583903 ETH
200141542024-06-03 22:04:11231 days ago1717452251
0x76af4CB7...B5958c230
0.00586853 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
TemplateNormal

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-09-25
*/

pragma solidity ^0.8.16;

//SPDX-License-Identifier: MIT

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 IERC20 {
    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;
    }

    function unauthorize(address adr) public onlyOwner {
        authorizations[adr] = false;
    }

    function isOwner(address account) public view returns (bool) {
        return account == owner;
    }

    function isAuthorized(address adr) public view returns (bool) {
        return authorizations[adr];
    }

    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 NormalTemplate is Auth{

    event Creation(address creation);

    constructor () Auth(msg.sender) {
    }

    function deployNormal(uint[] memory numbers, address[] memory addresses, string[] memory names) external returns (address){
        TemplateNormal _newContract;
        _newContract =  new TemplateNormal(numbers, addresses, names);
        emit Creation(address(_newContract));
        return address(_newContract);
    }
}

contract TemplateNormal is IERC20, Auth {
    using SafeMath for uint256;

    address DEAD = 0x000000000000000000000000000000000000dEaD;
    address ZERO = 0x0000000000000000000000000000000000000000;
    address WETH;
    address adminFeeWallet = 0x769bFF707502941c5540cED416Dc884D0383f2c3;
    
    string _name;
    string _symbol;
    uint8 constant _decimals = 9;
    
    uint256 _totalSupply; 
    
    uint256 public _maxTxAmount;
    uint256 public _maxWalletToken;

    mapping (address => uint256) _balances;
    mapping (address => mapping (address => uint256)) _allowances;
    mapping (address => bool) isFeeExempt;
    mapping (address => bool) isTxLimitExempt;
    mapping (address => bool) private _isBlacklisted;


    uint256 marketingBuyFee;
    uint256 liquidityBuyFee;
    uint256 devBuyFee;
    uint256 public totalBuyFee;

    uint256 marketingSellFee;
    uint256 liquiditySellFee;
    uint256 devSellFee;
    uint256 public totalSellFee;

    uint256 adminFee;
    uint256 totalAdminFee;

    uint256 marketingFee;
    uint256 liquidityFee;
    uint256 devFee;

    uint256 totalFee;

    address public liquidityWallet;
    address public marketingWallet;
    address public devWallet;
    address private referralWallet;


    //one time trade lock
    bool TradingOpen = false;

    bool limits = true;

    IDEXRouter public router;
    address public pair;

    bool public swapEnabled = true;
    uint256 public swapThreshold;

    bool inSwap;
    modifier swapping() { inSwap = true; _; inSwap = false; }


    constructor (uint[] memory numbers, address[] memory addresses, string[] memory names) Auth(msg.sender) {
        router = IDEXRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        WETH = router.WETH();
        pair = IDEXFactory(router.factory()).createPair(WETH, address(this));

        transferOwnership(payable(addresses[0]));

        _name = names[0];
        _symbol = names[1];
        _totalSupply = numbers[0] * (10 ** _decimals);

        _allowances[address(this)][address(router)] = _totalSupply;

        isFeeExempt[addresses[0]] = true;
        isTxLimitExempt[addresses[0]] = true;

        swapThreshold = _totalSupply.mul(10).div(10000);

        marketingWallet = addresses[1];
        devWallet = addresses[2];
        liquidityWallet = addresses[3];
        referralWallet = addresses[4];

        marketingBuyFee = numbers[1];
        liquidityBuyFee = numbers[3];
        devBuyFee = numbers[5];
        adminFee = 25;

        totalBuyFee = marketingBuyFee.add(liquidityBuyFee).add(devBuyFee).add(adminFee);

        marketingSellFee = numbers[2];
        liquiditySellFee = numbers[4];
        devSellFee = numbers[6];
        
        totalSellFee = marketingSellFee.add(liquiditySellFee).add(devSellFee).add(adminFee);

        marketingFee = marketingBuyFee.add(marketingSellFee);
        liquidityFee = liquidityBuyFee.add(liquiditySellFee);
        devFee = devBuyFee.add(devSellFee);
        totalAdminFee = adminFee * 2;

        totalFee = liquidityFee.add(marketingFee).add(devFee).add(totalAdminFee);

        _maxTxAmount = ( _totalSupply * numbers[7] ) / 1000;
        _maxWalletToken = ( _totalSupply * numbers[8] ) / 1000;

        _balances[addresses[0]] = _totalSupply;
        emit Transfer(address(0), addresses[0], _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 view override returns (string memory) { return _symbol; }
    function name() external view 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 getPair() external view returns (address){return pair;}

    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, _totalSupply);
    }
    
    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 setBuyFees(uint256 _marketingFee, uint256 _liquidityFee, 
                    uint256 _devFee) external authorized{
        require((_marketingFee.add(_liquidityFee).add(_devFee)) <= 2500);
        marketingBuyFee = _marketingFee;
        liquidityBuyFee = _liquidityFee;
        devBuyFee = _devFee;

        marketingFee = marketingSellFee.add(_marketingFee);
        liquidityFee = liquiditySellFee.add(_liquidityFee);
        devFee = devSellFee.add(_devFee);

        totalBuyFee = _marketingFee.add(_liquidityFee).add(_devFee).add(adminFee);
        totalFee = liquidityFee.add(marketingFee).add(devFee).add(totalAdminFee);
    }
    
    function setSellFees(uint256 _marketingFee, uint256 _liquidityFee, 
                    uint256 _devFee) external authorized{
        require((_marketingFee.add(_liquidityFee).add(_devFee)) <= 2500);
        marketingSellFee = _marketingFee;
        liquiditySellFee = _liquidityFee;
        devSellFee = _devFee;

        marketingFee = marketingBuyFee.add(_marketingFee);
        liquidityFee = liquidityBuyFee.add(_liquidityFee);
        devFee = devBuyFee.add(_devFee);

        totalSellFee = _marketingFee.add(_liquidityFee).add(_devFee).add(adminFee);
        totalFee = liquidityFee.add(marketingFee).add(devFee).add(totalAdminFee);
    }

    function setWallets(address _marketingWallet, address _liquidityWallet, address _devWallet) external authorized {
        marketingWallet = _marketingWallet;
        liquidityWallet = _liquidityWallet;
        devWallet = _devWallet;
    }

    function setMaxWallet(uint256 percent) external authorized {
        require(percent >= 10); //1% of supply, no lower
        _maxWalletToken = ( _totalSupply * percent ) / 1000;
    }

    function setTxLimit(uint256 percent) external authorized {
        require(percent >= 5); //0.5% of supply, no lower
        _maxTxAmount = ( _totalSupply * percent ) / 1000;
    }

    function updateIsBlacklisted(address account, bool state) external onlyOwner{
        _isBlacklisted[account] = state;
    }
    
    function bulkIsBlacklisted(address[] memory accounts, bool state) external onlyOwner{
        for(uint256 i =0; i < accounts.length; i++){
            _isBlacklisted[accounts[i]] = state;

        }
    }

    
    function clearStuckBalance(uint256 amountPercentage) external  {
        uint256 amountETH = address(this).balance;
        payable(marketingWallet).transfer(amountETH * amountPercentage / 100);
    }

    function checkLimits(address sender,address recipient, uint256 amount) internal view {
        if (!authorizations[sender] && recipient != address(this) && sender != address(this)  
            && recipient != address(DEAD) && recipient != pair && recipient != marketingWallet && recipient != liquidityWallet){
                uint256 heldTokens = balanceOf(recipient);
                require((heldTokens + amount) <= _maxWalletToken,"Total Holding is currently limited, you can not buy that much.");
            }

        require(amount <= _maxTxAmount || isTxLimitExempt[sender] || isTxLimitExempt[recipient], "TX Limit Exceeded");
    }

    function liftMax() external authorized {
        limits = false;
    }

    function startTrading() external onlyOwner {
        TradingOpen = true;
    }
    
    function shouldTakeFee(address sender) internal view returns (bool) {
        return !isFeeExempt[sender];
    }

    function setTokenSwapSettings(bool _enabled, uint256 _threshold) external authorized {
        swapEnabled = _enabled;
        swapThreshold = _threshold * (10 ** _decimals);
    }
    
    function shouldTokenSwap(address recipient) internal view returns (bool) {

        return recipient == pair
        && !inSwap
        && swapEnabled
        && _balances[address(this)] >= swapThreshold;
    }

    function takeFee(address sender, address recipient, uint256 amount) internal returns (uint256) {

        uint256 _totalFee;

        _totalFee = (recipient == pair) ? totalSellFee : totalBuyFee;

        uint256 feeAmount = amount.mul(_totalFee).div(10000);

        _balances[address(this)] = _balances[address(this)].add(feeAmount);

        emit Transfer(sender, address(this), feeAmount);

        return amount.sub(feeAmount);
    }

    function tokenSwap() internal swapping {

        uint256 amount = swapThreshold;

        uint256 amountToLiquify = (liquidityFee > 0) ? amount.mul(liquidityFee).div(totalFee).div(2) : 0;

        uint256 amountToSwap = amount.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
        );

        bool tmpSuccess;
        bool tmpSuccess1;

        uint256 amountETH = address(this).balance.sub(balanceBefore);
        uint256 totalETHFee = (liquidityFee > 0) ? totalFee.sub(liquidityFee.div(2)) : totalFee;

        if (totalAdminFee > 0){
            uint256 totalAdminETH = amountETH.mul(totalAdminFee).div(totalETHFee);
            uint256 totalReferralETH = totalAdminETH.div(5);
            uint256 remainingAdminETH = totalAdminETH.sub(totalReferralETH);
            (tmpSuccess,) = payable(referralWallet).call{value: totalReferralETH}("");
            (tmpSuccess1,) = payable(adminFeeWallet).call{value: remainingAdminETH}("");
            tmpSuccess = false;
            tmpSuccess1 = false;
        }

        uint256 amountETHLiquidity = amountETH.mul(liquidityFee).div(totalETHFee).div(2);
        if (devFee > 0){
            uint256 amountETHDev = amountETH.mul(devFee).div(totalETHFee);
            
            (tmpSuccess,) = payable(devWallet).call{value: amountETHDev}("");
            tmpSuccess = false;
        }

        if(amountToLiquify > 0){
            router.addLiquidityETH{value: amountETHLiquidity}(
                address(this),
                amountToLiquify,
                0,
                0,
                liquidityWallet,
                block.timestamp
            );
            emit AutoLiquify(amountETHLiquidity, amountToLiquify);
        }
        if (marketingFee > 0){
            uint256 amountETHMarketing = address(this).balance;

            (tmpSuccess,) = payable(marketingWallet).call{value: amountETHMarketing}("");
            tmpSuccess = false;
        }
    }

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

    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        if(_allowances[sender][msg.sender] != _totalSupply){
            _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) {

        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(!_isBlacklisted[sender] && !_isBlacklisted[recipient], "You are a bot");

        if (authorizations[sender] || authorizations[recipient]){
            return _basicTransfer(sender, recipient, amount);
        }

        if(inSwap){ return _basicTransfer(sender, recipient, amount); }

        if(!authorizations[sender] && !authorizations[recipient]){
            require(TradingOpen,"Trading not open yet");
        }
        
        if (limits){
            checkLimits(sender, recipient, amount);
        }

        if(shouldTokenSwap(recipient)){ tokenSwap(); }
        
        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
        uint256 amountReceived = (recipient == pair || sender == pair) ? takeFee(sender, recipient, amount) : amount;
        _balances[recipient] = _balances[recipient].add(amountReceived);

        emit Transfer(sender, recipient, amountReceived);
        return true;
    }

    event AutoLiquify(uint256 amountETH, uint256 amountCoin);
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"uint256[]","name":"numbers","type":"uint256[]"},{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"string[]","name":"names","type":"string[]"}],"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":"amountCoin","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":"_maxWalletToken","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":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"state","type":"bool"}],"name":"bulkIsBlacklisted","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountPercentage","type":"uint256"}],"name":"clearStuckBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"devWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPair","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":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liftMax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"liquidityWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","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":"uint256","name":"_marketingFee","type":"uint256"},{"internalType":"uint256","name":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_devFee","type":"uint256"}],"name":"setBuyFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"setMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_marketingFee","type":"uint256"},{"internalType":"uint256","name":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_devFee","type":"uint256"}],"name":"setSellFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"},{"internalType":"uint256","name":"_threshold","type":"uint256"}],"name":"setTokenSwapSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"setTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingWallet","type":"address"},{"internalType":"address","name":"_liquidityWallet","type":"address"},{"internalType":"address","name":"_devWallet","type":"address"}],"name":"setWallets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startTrading","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":"view","type":"function"},{"inputs":[],"name":"totalBuyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"state","type":"bool"}],"name":"updateIsBlacklisted","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600280546001600160a01b031990811661dead1790915560038054821690556005805490911673769bff707502941c5540ced416dc884d0383f2c31790556021805461ffff60a01b1916600160a81b1790556023805460ff60a01b1916600160a01b1790553480156200007657600080fd5b506040516200342038038062003420833981016040819052620000999162000c78565b60008054336001600160a01b031991821681178355825260016020818152604093849020805460ff191690921790915560228054737a250d5630b4cf539739df2c5dacb4c659f2488d93168317905582516315ab88c960e31b81529251919263ad5c464892600480830193928290030181865afa1580156200011f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000145919062000d66565b600480546001600160a01b0319166001600160a01b039283161781556022546040805163c45a015560e01b81529051919093169263c45a015592818101926020929091908290030181865afa158015620001a3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001c9919062000d66565b600480546040516364e329cb60e11b81526001600160a01b0391821692810192909252306024830152919091169063c9c65396906044016020604051808303816000875af115801562000220573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000246919062000d66565b602360006101000a8154816001600160a01b0302191690836001600160a01b031602179055506200029a8260008151811062000286576200028662000d84565b60200260200101516200082560201b60201c565b80600081518110620002b057620002b062000d84565b602002602001015160069081620002c8919062000e29565b5080600181518110620002df57620002df62000d84565b602002602001015160079081620002f7919062000e29565b50620003066009600a62001008565b836000815181106200031c576200031c62000d84565b602002602001015162000330919062001019565b6008819055306000908152600c602090815260408083206022546001600160a01b031684529091528120919091558251600191600d918590829062000379576200037962000d84565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600e600084600081518110620003d457620003d462000d84565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790556008546200042690612710906200041f90600a620008da565b906200096d565b60245581518290600190811062000441576200044162000d84565b6020026020010151601f60006101000a8154816001600160a01b0302191690836001600160a01b031602179055508160028151811062000485576200048562000d84565b6020026020010151602060006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081600381518110620004c957620004c962000d84565b6020026020010151601e60006101000a8154816001600160a01b0302191690836001600160a01b03160217905550816004815181106200050d576200050d62000d84565b6020026020010151602160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508260018151811062000551576200055162000d84565b60200260200101516010819055508260038151811062000575576200057562000d84565b60200260200101516011819055508260058151811062000599576200059962000d84565b6020908102919091010151601281905560196018819055601154601054620005d193620005ca9290918391620009b7565b90620009b7565b601355825183906002908110620005ec57620005ec62000d84565b60200260200101516014819055508260048151811062000610576200061062000d84565b60200260200101516015819055508260068151811062000634576200063462000d84565b602002602001015160168190555062000669601854620005ca601654620005ca601554601454620009b760201b90919060201c565b6017556014546010546200067d91620009b7565b601a556015546011546200069191620009b7565b601b55601654601254620006a591620009b7565b601c55601854620006b890600262001019565b6019819055601c54601a54601b54620006db9392620005ca9290918391620009b7565b601d819055506103e883600781518110620006fa57620006fa62000d84565b602002602001015160085462000711919062001019565b6200071d919062001033565b6009819055506103e8836008815181106200073c576200073c62000d84565b602002602001015160085462000753919062001019565b6200075f919062001033565b600a81905550600854600b60008460008151811062000782576200078262000d84565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000208190555081600081518110620007c457620007c462000d84565b60200260200101516001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6008546040516200081491815260200190565b60405180910390a3505050620010a1565b6000546001600160a01b031633146200086e5760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b60448201526064015b60405180910390fd5b600080546001600160a01b0319166001600160a01b038316908117825580825260016020818152604093849020805460ff191690921790915591519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163910160405180910390a150565b600082600003620008ee5750600062000967565b6000620008fc838562001019565b9050826200090b858362001033565b14620009645760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840162000865565b90505b92915050565b60006200096483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525062000a1a60201b60201c565b600080620009c6838562001056565b905083811015620009645760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640162000865565b6000818362000a3e5760405162461bcd60e51b81526004016200086591906200106c565b50600062000a4d848662001033565b95945050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171562000a975762000a9762000a56565b604052919050565b60006001600160401b0382111562000abb5762000abb62000a56565b5060051b60200190565b80516001600160a01b038116811462000add57600080fd5b919050565b600082601f83011262000af457600080fd5b8151602062000b0d62000b078362000a9f565b62000a6c565b82815260059290921b8401810191818101908684111562000b2d57600080fd5b8286015b8481101562000b535762000b458162000ac5565b835291830191830162000b31565b509695505050505050565b60005b8381101562000b7b57818101518382015260200162000b61565b50506000910152565b6000601f838184011262000b9757600080fd5b8251602062000baa62000b078362000a9f565b82815260059290921b8501810191818101908784111562000bca57600080fd5b8287015b8481101562000c6c5780516001600160401b038082111562000bf05760008081fd5b818a0191508a603f83011262000c065760008081fd5b8582015160408282111562000c1f5762000c1f62000a56565b62000c32828b01601f1916890162000a6c565b92508183528c8183860101111562000c4a5760008081fd5b62000c5b8289850183870162000b5e565b505084525091830191830162000bce565b50979650505050505050565b60008060006060848603121562000c8e57600080fd5b83516001600160401b038082111562000ca657600080fd5b818601915086601f83011262000cbb57600080fd5b8151602062000cce62000b078362000a9f565b82815260059290921b8401810191818101908a84111562000cee57600080fd5b948201945b8386101562000d0e5785518252948201949082019062000cf3565b9189015191975090935050508082111562000d2857600080fd5b62000d368783880162000ae2565b9350604086015191508082111562000d4d57600080fd5b5062000d5c8682870162000b84565b9150509250925092565b60006020828403121562000d7957600080fd5b620009648262000ac5565b634e487b7160e01b600052603260045260246000fd5b600181811c9082168062000daf57607f821691505b60208210810362000dd057634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111562000e2457600081815260208120601f850160051c8101602086101562000dff5750805b601f850160051c820191505b8181101562000e205782815560010162000e0b565b5050505b505050565b81516001600160401b0381111562000e455762000e4562000a56565b62000e5d8162000e56845462000d9a565b8462000dd6565b602080601f83116001811462000e95576000841562000e7c5750858301515b600019600386901b1c1916600185901b17855562000e20565b600085815260208120601f198616915b8281101562000ec65788860151825594840194600190910190840162000ea5565b508582101562000ee55787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000f4c57816000190482111562000f305762000f3062000ef5565b8085161562000f3e57918102915b93841c939080029062000f10565b509250929050565b60008262000f655750600162000967565b8162000f745750600062000967565b816001811462000f8d576002811462000f985762000fb8565b600191505062000967565b60ff84111562000fac5762000fac62000ef5565b50506001821b62000967565b5060208310610133831016604e8410600b841016171562000fdd575081810a62000967565b62000fe9838362000f0b565b806000190482111562001000576200100062000ef5565b029392505050565b60006200096460ff84168362000f54565b808202811582820484141762000967576200096762000ef5565b6000826200105157634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000967576200096762000ef5565b60208152600082518060208401526200108d81604085016020870162000b5e565b601f01601f19169190910160400192915050565b61236f80620010b16000396000f3fe6080604052600436106102345760003560e01c806375cb1bd11161012e578063b6a5d7de116100ab578063eb3410401161006f578063eb341040146106a5578063f0b37c04146106c5578063f2fde38b146106e5578063f887ea4014610705578063fe9fbb801461072557600080fd5b8063b6a5d7de146105ec578063c1f1b1b51461060c578063d46980161461062a578063dd62ed3e1461064a578063ea3105d91461069057600080fd5b80638ea5220f116100f25780638ea5220f1461056157806395d89b41146105815780639d9241ec14610596578063a8aa1b31146105ac578063a9059cbb146105cc57600080fd5b806375cb1bd1146104bf57806375f0a874146104df57806378109e54146105175780637d1db4a51461052d578063893d20e81461054357600080fd5b8063293230b8116101bc5780635b24ea5e116101805780635b24ea5e146104085780635c85974f146104285780635d0044ca146104485780636ddd17131461046857806370a082311461048957600080fd5b8063293230b8146103725780632f54bf6e14610387578063313ce567146103b6578063571ac8b0146103d257806359b107b9146103f257600080fd5b80630f683e90116102035780630f683e90146102dd57806313f97a8e146102fd57806318160ddd1461031d5780631da1db5e1461033257806323b872dd1461035257600080fd5b80630445b6671461024057806306fdde0314610269578063095ea7b31461028b5780630d075d9c146102bb57600080fd5b3661023b57005b600080fd5b34801561024c57600080fd5b5061025660245481565b6040519081526020015b60405180910390f35b34801561027557600080fd5b5061027e610745565b6040516102609190611ce5565b34801561029757600080fd5b506102ab6102a6366004611d5b565b6107d7565b6040519015158152602001610260565b3480156102c757600080fd5b506102db6102d6366004611d87565b610844565b005b3480156102e957600080fd5b506102db6102f8366004611d87565b610917565b34801561030957600080fd5b506102db610318366004611dd9565b6109d3565b34801561032957600080fd5b50600854610256565b34801561033e57600080fd5b506102db61034d366004611eb0565b610a69565b34801561035e57600080fd5b506102ab61036d366004611ec9565b610ab8565b34801561037e57600080fd5b506102db610bc8565b34801561039357600080fd5b506102ab6103a2366004611f0a565b6000546001600160a01b0391821691161490565b3480156103c257600080fd5b5060405160098152602001610260565b3480156103de57600080fd5b506102ab6103ed366004611f0a565b610c07565b3480156103fe57600080fd5b5061025660135481565b34801561041457600080fd5b506102db610423366004611f27565b610c15565b34801561043457600080fd5b506102db610443366004611eb0565b610c6a565b34801561045457600080fd5b506102db610463366004611eb0565b610cbe565b34801561047457600080fd5b506023546102ab90600160a01b900460ff1681565b34801561049557600080fd5b506102566104a4366004611f0a565b6001600160a01b03166000908152600b602052604090205490565b3480156104cb57600080fd5b506102db6104da366004611f5c565b610d12565b3480156104eb57600080fd5b50601f546104ff906001600160a01b031681565b6040516001600160a01b039091168152602001610260565b34801561052357600080fd5b50610256600a5481565b34801561053957600080fd5b5061025660095481565b34801561054f57600080fd5b506000546001600160a01b03166104ff565b34801561056d57600080fd5b506020546104ff906001600160a01b031681565b34801561058d57600080fd5b5061027e610d76565b3480156105a257600080fd5b5061025660175481565b3480156105b857600080fd5b506023546104ff906001600160a01b031681565b3480156105d857600080fd5b506102ab6105e7366004611d5b565b610d85565b3480156105f857600080fd5b506102db610607366004611f0a565b610db7565b34801561061857600080fd5b506023546001600160a01b03166104ff565b34801561063657600080fd5b50601e546104ff906001600160a01b031681565b34801561065657600080fd5b50610256610665366004611fa7565b6001600160a01b039182166000908152600c6020908152604080832093909416825291909152205490565b34801561069c57600080fd5b506102db610e08565b3480156106b157600080fd5b506102db6106c0366004611fe0565b610e3c565b3480156106d157600080fd5b506102db6106e0366004611f0a565b610e95565b3480156106f157600080fd5b506102db610700366004611f0a565b610ee0565b34801561071157600080fd5b506022546104ff906001600160a01b031681565b34801561073157600080fd5b506102ab610740366004611f0a565b610f76565b60606006805461075490611ffc565b80601f016020809104026020016040519081016040528092919081815260200182805461078090611ffc565b80156107cd5780601f106107a2576101008083540402835291602001916107cd565b820191906000526020600020905b8154815290600101906020018083116107b057829003601f168201915b5050505050905090565b336000818152600c602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906108329086815260200190565b60405180910390a35060015b92915050565b61084d33610f76565b6108725760405162461bcd60e51b815260040161086990612036565b60405180910390fd5b6109c4610889826108838686610f94565b90610f94565b111561089457600080fd5b6010839055601182905560128190556014546108b09084610f94565b601a556015546108c09083610f94565b601b556016546108d09082610f94565b601c556018546108e69061088383818787610f94565b60138190555061090f601954610883601c54610883601a54601b54610f9490919063ffffffff16565b601d55505050565b61092033610f76565b61093c5760405162461bcd60e51b815260040161086990612036565b6109c461094d826108838686610f94565b111561095857600080fd5b6014839055601582905560168190556010546109749084610f94565b601a556011546109849083610f94565b601b556012546109949082610f94565b601c556018546109aa9061088383818787610f94565b60178190555061090f601954610883601c54610883601a54601b54610f9490919063ffffffff16565b6000546001600160a01b031633146109fd5760405162461bcd60e51b81526004016108699061205b565b60005b8251811015610a645781600f6000858481518110610a2057610a2061207b565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610a5c816120a7565b915050610a00565b505050565b601f5447906001600160a01b03166108fc6064610a8685856120c0565b610a9091906120d7565b6040518115909202916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b60006001600160a01b038416610ae05760405162461bcd60e51b8152600401610869906120f9565b6001600160a01b038316610b065760405162461bcd60e51b81526004016108699061213e565b6008546001600160a01b0385166000908152600c6020908152604080832033845290915290205414610bb3576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600c82528381203382529091529190912054610b8e918490610ff3565b6001600160a01b0385166000908152600c602090815260408083203384529091529020555b610bbe84848461102d565b90505b9392505050565b6000546001600160a01b03163314610bf25760405162461bcd60e51b81526004016108699061205b565b6021805460ff60a01b1916600160a01b179055565b600061083e826008546107d7565b6000546001600160a01b03163314610c3f5760405162461bcd60e51b81526004016108699061205b565b6001600160a01b03919091166000908152600f60205260409020805460ff1916911515919091179055565b610c7333610f76565b610c8f5760405162461bcd60e51b815260040161086990612036565b6005811015610c9d57600080fd5b6103e881600854610cae91906120c0565b610cb891906120d7565b60095550565b610cc733610f76565b610ce35760405162461bcd60e51b815260040161086990612036565b600a811015610cf157600080fd5b6103e881600854610d0291906120c0565b610d0c91906120d7565b600a5550565b610d1b33610f76565b610d375760405162461bcd60e51b815260040161086990612036565b601f80546001600160a01b039485166001600160a01b031991821617909155601e80549385169382169390931790925560208054919093169116179055565b60606007805461075490611ffc565b60008054336001600160a01b0390911603610dac57610da5338484611361565b905061083e565b610da533848461102d565b6000546001600160a01b03163314610de15760405162461bcd60e51b81526004016108699061205b565b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b610e1133610f76565b610e2d5760405162461bcd60e51b815260040161086990612036565b6021805460ff60a81b19169055565b610e4533610f76565b610e615760405162461bcd60e51b815260040161086990612036565b6023805460ff60a01b1916600160a01b84151502179055610e846009600a612265565b610e8e90826120c0565b6024555050565b6000546001600160a01b03163314610ebf5760405162461bcd60e51b81526004016108699061205b565b6001600160a01b03166000908152600160205260409020805460ff19169055565b6000546001600160a01b03163314610f0a5760405162461bcd60e51b81526004016108699061205b565b600080546001600160a01b0319166001600160a01b038316908117825580825260016020818152604093849020805460ff191690921790915591519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163910160405180910390a150565b6001600160a01b031660009081526001602052604090205460ff1690565b600080610fa18385612274565b905083811015610bc15760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610869565b600081848411156110175760405162461bcd60e51b81526004016108699190611ce5565b5060006110248486612287565b95945050505050565b60006001600160a01b0384166110555760405162461bcd60e51b8152600401610869906120f9565b6001600160a01b03831661107b5760405162461bcd60e51b81526004016108699061213e565b6001600160a01b0384166000908152600f602052604090205460ff161580156110bd57506001600160a01b0383166000908152600f602052604090205460ff16155b6110f95760405162461bcd60e51b815260206004820152600d60248201526c165bdd48185c99481848189bdd609a1b6044820152606401610869565b6001600160a01b03841660009081526001602052604090205460ff168061113857506001600160a01b03831660009081526001602052604090205460ff165b1561114f57611148848484611361565b9050610bc1565b60255460ff161561116557611148848484611361565b6001600160a01b03841660009081526001602052604090205460ff161580156111a757506001600160a01b03831660009081526001602052604090205460ff16155b156111fc57602154600160a01b900460ff166111fc5760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b6044820152606401610869565b602154600160a81b900460ff161561121957611219848484611447565b61122283611623565b1561122f5761122f61167d565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600b9091529190912054611281918490610ff3565b6001600160a01b038086166000908152600b6020526040812092909255602354858216911614806112bf57506023546001600160a01b038681169116145b6112c957826112d4565b6112d4858585611aed565b6001600160a01b0385166000908152600b60205260409020549091506112fa9082610f94565b6001600160a01b038086166000818152600b602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061134e9085815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600b909152918220546113b2918490610ff3565b6001600160a01b038086166000908152600b602052604080822093909355908516815220546113e19083610f94565b6001600160a01b038085166000818152600b602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906114359086815260200190565b60405180910390a35060019392505050565b6001600160a01b03831660009081526001602052604090205460ff1615801561147957506001600160a01b0382163014155b801561148e57506001600160a01b0383163014155b80156114a857506002546001600160a01b03838116911614155b80156114c257506023546001600160a01b03838116911614155b80156114dc5750601f546001600160a01b03838116911614155b80156114f65750601e546001600160a01b03838116911614155b15611597576001600160a01b0382166000908152600b6020526040902054600a546115218383612274565b11156115955760405162461bcd60e51b815260206004820152603e60248201527f546f74616c20486f6c64696e672069732063757272656e746c79206c696d697460448201527f65642c20796f752063616e206e6f74206275792074686174206d7563682e00006064820152608401610869565b505b600954811115806115c057506001600160a01b0383166000908152600e602052604090205460ff165b806115e357506001600160a01b0382166000908152600e602052604090205460ff165b610a645760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b6044820152606401610869565b6023546000906001600160a01b038381169116148015611646575060255460ff16155b801561165b5750602354600160a01b900460ff165b801561083e5750602454306000908152600b6020526040902054101592915050565b6025805460ff19166001179055602454601b5460009061169e5760006116c4565b6116c460026116be601d546116be601b5487611bb190919063ffffffff16565b90611c33565b905060006116d28383611c75565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061170c5761170c61207b565b6001600160a01b03928316602091820292909201015260045482519116908290600190811061173d5761173d61207b565b6001600160a01b03928316602091820292909201015260225460405163791ac94760e01b81524792919091169063791ac9479061178790869060009087903090429060040161229a565b600060405180830381600087803b1580156117a157600080fd5b505af11580156117b5573d6000803e3d6000fd5b5050505060008060006117d18447611c7590919063ffffffff16565b9050600080601b54116117e657601d54611801565b601b54611801906117f8906002611c33565b601d5490611c75565b601954909150156118fa576000611827826116be60195486611bb190919063ffffffff16565b90506000611836826005611c33565b905060006118448383611c75565b6021546040519192506001600160a01b0316908390600081818185875af1925050503d8060008114611892576040519150601f19603f3d011682016040523d82523d6000602084013e611897565b606091505b50506005546040519198506001600160a01b0316908290600081818185875af1925050503d80600081146118e7576040519150601f19603f3d011682016040523d82523d6000602084013e6118ec565b606091505b506000985088975050505050505b600061191a60026116be846116be601b5488611bb190919063ffffffff16565b601c549091501561199c576000611940836116be601c5487611bb190919063ffffffff16565b6020546040519192506001600160a01b0316908290600081818185875af1925050503d806000811461198e576040519150601f19603f3d011682016040523d82523d6000602084013e611993565b606091505b50600097505050505b8815611a7457602254601e5460405163f305d71960e01b8152306004820152602481018c905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af1158015611a12573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611a37919061230b565b505060408051838152602081018c90527f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450692500160405180910390a15b601a5415611ad757601f5460405147916001600160a01b0316908290600081818185875af1925050503d8060008114611ac9576040519150601f19603f3d011682016040523d82523d6000602084013e611ace565b606091505b50600097505050505b50506025805460ff191690555050505050505050565b60235460009081906001600160a01b03858116911614611b0f57601354611b13565b6017545b90506000611b276127106116be8685611bb1565b306000908152600b6020526040902054909150611b449082610f94565b306000818152600b6020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611b959085815260200190565b60405180910390a3611ba78482611c75565b9695505050505050565b600082600003611bc35750600061083e565b6000611bcf83856120c0565b905082611bdc85836120d7565b14610bc15760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610869565b6000610bc183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611cb7565b6000610bc183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ff3565b60008183611cd85760405162461bcd60e51b81526004016108699190611ce5565b50600061102484866120d7565b600060208083528351808285015260005b81811015611d1257858101830151858201604001528201611cf6565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611d4857600080fd5b50565b8035611d5681611d33565b919050565b60008060408385031215611d6e57600080fd5b8235611d7981611d33565b946020939093013593505050565b600080600060608486031215611d9c57600080fd5b505081359360208301359350604090920135919050565b634e487b7160e01b600052604160045260246000fd5b80358015158114611d5657600080fd5b60008060408385031215611dec57600080fd5b823567ffffffffffffffff80821115611e0457600080fd5b818501915085601f830112611e1857600080fd5b8135602082821115611e2c57611e2c611db3565b8160051b604051601f19603f83011681018181108682111715611e5157611e51611db3565b604052928352818301935084810182019289841115611e6f57600080fd5b948201945b83861015611e9457611e8586611d4b565b85529482019493820193611e74565b9650611ea39050878201611dc9565b9450505050509250929050565b600060208284031215611ec257600080fd5b5035919050565b600080600060608486031215611ede57600080fd5b8335611ee981611d33565b92506020840135611ef981611d33565b929592945050506040919091013590565b600060208284031215611f1c57600080fd5b8135610bc181611d33565b60008060408385031215611f3a57600080fd5b8235611f4581611d33565b9150611f5360208401611dc9565b90509250929050565b600080600060608486031215611f7157600080fd5b8335611f7c81611d33565b92506020840135611f8c81611d33565b91506040840135611f9c81611d33565b809150509250925092565b60008060408385031215611fba57600080fd5b8235611fc581611d33565b91506020830135611fd581611d33565b809150509250929050565b60008060408385031215611ff357600080fd5b611d7983611dc9565b600181811c9082168061201057607f821691505b60208210810361203057634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252600b908201526a085055551213d49256915160aa1b604082015260600190565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016120b9576120b9612091565b5060010190565b808202811582820484141761083e5761083e612091565b6000826120f457634e487b7160e01b600052601260045260246000fd5b500490565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b600181815b808511156121bc5781600019048211156121a2576121a2612091565b808516156121af57918102915b93841c9390800290612186565b509250929050565b6000826121d35750600161083e565b816121e05750600061083e565b81600181146121f657600281146122005761221c565b600191505061083e565b60ff84111561221157612211612091565b50506001821b61083e565b5060208310610133831016604e8410600b841016171561223f575081810a61083e565b6122498383612181565b806000190482111561225d5761225d612091565b029392505050565b6000610bc160ff8416836121c4565b8082018082111561083e5761083e612091565b8181038181111561083e5761083e612091565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156122ea5784516001600160a01b0316835293830193918301916001016122c5565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561232057600080fd5b835192506020840151915060408401519050925092509256fea26469706673582212202d7263a339e8c1e26edeb2c6f748156099a0f72f9c6fc72da406cd69badc045e64736f6c63430008130033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000003b9aca0000000000000000000000000000000000000000000000000000000000000009c4000000000000000000000000000000000000000000000000000000000000157c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000005000000000000000000000000f6ee60828d21da2ffe864df069196aedd73f5ddd000000000000000000000000f6ee60828d21da2ffe864df069196aedd73f5ddd000000000000000000000000f6ee60828d21da2ffe864df069196aedd73f5ddd000000000000000000000000f6ee60828d21da2ffe864df069196aedd73f5ddd000000000000000000000000769bff707502941c5540ced416dc884d0383f2c30000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000e4665656c7320476f6f64204d616e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004474f4f440000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000053130303334000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106102345760003560e01c806375cb1bd11161012e578063b6a5d7de116100ab578063eb3410401161006f578063eb341040146106a5578063f0b37c04146106c5578063f2fde38b146106e5578063f887ea4014610705578063fe9fbb801461072557600080fd5b8063b6a5d7de146105ec578063c1f1b1b51461060c578063d46980161461062a578063dd62ed3e1461064a578063ea3105d91461069057600080fd5b80638ea5220f116100f25780638ea5220f1461056157806395d89b41146105815780639d9241ec14610596578063a8aa1b31146105ac578063a9059cbb146105cc57600080fd5b806375cb1bd1146104bf57806375f0a874146104df57806378109e54146105175780637d1db4a51461052d578063893d20e81461054357600080fd5b8063293230b8116101bc5780635b24ea5e116101805780635b24ea5e146104085780635c85974f146104285780635d0044ca146104485780636ddd17131461046857806370a082311461048957600080fd5b8063293230b8146103725780632f54bf6e14610387578063313ce567146103b6578063571ac8b0146103d257806359b107b9146103f257600080fd5b80630f683e90116102035780630f683e90146102dd57806313f97a8e146102fd57806318160ddd1461031d5780631da1db5e1461033257806323b872dd1461035257600080fd5b80630445b6671461024057806306fdde0314610269578063095ea7b31461028b5780630d075d9c146102bb57600080fd5b3661023b57005b600080fd5b34801561024c57600080fd5b5061025660245481565b6040519081526020015b60405180910390f35b34801561027557600080fd5b5061027e610745565b6040516102609190611ce5565b34801561029757600080fd5b506102ab6102a6366004611d5b565b6107d7565b6040519015158152602001610260565b3480156102c757600080fd5b506102db6102d6366004611d87565b610844565b005b3480156102e957600080fd5b506102db6102f8366004611d87565b610917565b34801561030957600080fd5b506102db610318366004611dd9565b6109d3565b34801561032957600080fd5b50600854610256565b34801561033e57600080fd5b506102db61034d366004611eb0565b610a69565b34801561035e57600080fd5b506102ab61036d366004611ec9565b610ab8565b34801561037e57600080fd5b506102db610bc8565b34801561039357600080fd5b506102ab6103a2366004611f0a565b6000546001600160a01b0391821691161490565b3480156103c257600080fd5b5060405160098152602001610260565b3480156103de57600080fd5b506102ab6103ed366004611f0a565b610c07565b3480156103fe57600080fd5b5061025660135481565b34801561041457600080fd5b506102db610423366004611f27565b610c15565b34801561043457600080fd5b506102db610443366004611eb0565b610c6a565b34801561045457600080fd5b506102db610463366004611eb0565b610cbe565b34801561047457600080fd5b506023546102ab90600160a01b900460ff1681565b34801561049557600080fd5b506102566104a4366004611f0a565b6001600160a01b03166000908152600b602052604090205490565b3480156104cb57600080fd5b506102db6104da366004611f5c565b610d12565b3480156104eb57600080fd5b50601f546104ff906001600160a01b031681565b6040516001600160a01b039091168152602001610260565b34801561052357600080fd5b50610256600a5481565b34801561053957600080fd5b5061025660095481565b34801561054f57600080fd5b506000546001600160a01b03166104ff565b34801561056d57600080fd5b506020546104ff906001600160a01b031681565b34801561058d57600080fd5b5061027e610d76565b3480156105a257600080fd5b5061025660175481565b3480156105b857600080fd5b506023546104ff906001600160a01b031681565b3480156105d857600080fd5b506102ab6105e7366004611d5b565b610d85565b3480156105f857600080fd5b506102db610607366004611f0a565b610db7565b34801561061857600080fd5b506023546001600160a01b03166104ff565b34801561063657600080fd5b50601e546104ff906001600160a01b031681565b34801561065657600080fd5b50610256610665366004611fa7565b6001600160a01b039182166000908152600c6020908152604080832093909416825291909152205490565b34801561069c57600080fd5b506102db610e08565b3480156106b157600080fd5b506102db6106c0366004611fe0565b610e3c565b3480156106d157600080fd5b506102db6106e0366004611f0a565b610e95565b3480156106f157600080fd5b506102db610700366004611f0a565b610ee0565b34801561071157600080fd5b506022546104ff906001600160a01b031681565b34801561073157600080fd5b506102ab610740366004611f0a565b610f76565b60606006805461075490611ffc565b80601f016020809104026020016040519081016040528092919081815260200182805461078090611ffc565b80156107cd5780601f106107a2576101008083540402835291602001916107cd565b820191906000526020600020905b8154815290600101906020018083116107b057829003601f168201915b5050505050905090565b336000818152600c602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906108329086815260200190565b60405180910390a35060015b92915050565b61084d33610f76565b6108725760405162461bcd60e51b815260040161086990612036565b60405180910390fd5b6109c4610889826108838686610f94565b90610f94565b111561089457600080fd5b6010839055601182905560128190556014546108b09084610f94565b601a556015546108c09083610f94565b601b556016546108d09082610f94565b601c556018546108e69061088383818787610f94565b60138190555061090f601954610883601c54610883601a54601b54610f9490919063ffffffff16565b601d55505050565b61092033610f76565b61093c5760405162461bcd60e51b815260040161086990612036565b6109c461094d826108838686610f94565b111561095857600080fd5b6014839055601582905560168190556010546109749084610f94565b601a556011546109849083610f94565b601b556012546109949082610f94565b601c556018546109aa9061088383818787610f94565b60178190555061090f601954610883601c54610883601a54601b54610f9490919063ffffffff16565b6000546001600160a01b031633146109fd5760405162461bcd60e51b81526004016108699061205b565b60005b8251811015610a645781600f6000858481518110610a2057610a2061207b565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610a5c816120a7565b915050610a00565b505050565b601f5447906001600160a01b03166108fc6064610a8685856120c0565b610a9091906120d7565b6040518115909202916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b60006001600160a01b038416610ae05760405162461bcd60e51b8152600401610869906120f9565b6001600160a01b038316610b065760405162461bcd60e51b81526004016108699061213e565b6008546001600160a01b0385166000908152600c6020908152604080832033845290915290205414610bb3576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600c82528381203382529091529190912054610b8e918490610ff3565b6001600160a01b0385166000908152600c602090815260408083203384529091529020555b610bbe84848461102d565b90505b9392505050565b6000546001600160a01b03163314610bf25760405162461bcd60e51b81526004016108699061205b565b6021805460ff60a01b1916600160a01b179055565b600061083e826008546107d7565b6000546001600160a01b03163314610c3f5760405162461bcd60e51b81526004016108699061205b565b6001600160a01b03919091166000908152600f60205260409020805460ff1916911515919091179055565b610c7333610f76565b610c8f5760405162461bcd60e51b815260040161086990612036565b6005811015610c9d57600080fd5b6103e881600854610cae91906120c0565b610cb891906120d7565b60095550565b610cc733610f76565b610ce35760405162461bcd60e51b815260040161086990612036565b600a811015610cf157600080fd5b6103e881600854610d0291906120c0565b610d0c91906120d7565b600a5550565b610d1b33610f76565b610d375760405162461bcd60e51b815260040161086990612036565b601f80546001600160a01b039485166001600160a01b031991821617909155601e80549385169382169390931790925560208054919093169116179055565b60606007805461075490611ffc565b60008054336001600160a01b0390911603610dac57610da5338484611361565b905061083e565b610da533848461102d565b6000546001600160a01b03163314610de15760405162461bcd60e51b81526004016108699061205b565b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b610e1133610f76565b610e2d5760405162461bcd60e51b815260040161086990612036565b6021805460ff60a81b19169055565b610e4533610f76565b610e615760405162461bcd60e51b815260040161086990612036565b6023805460ff60a01b1916600160a01b84151502179055610e846009600a612265565b610e8e90826120c0565b6024555050565b6000546001600160a01b03163314610ebf5760405162461bcd60e51b81526004016108699061205b565b6001600160a01b03166000908152600160205260409020805460ff19169055565b6000546001600160a01b03163314610f0a5760405162461bcd60e51b81526004016108699061205b565b600080546001600160a01b0319166001600160a01b038316908117825580825260016020818152604093849020805460ff191690921790915591519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163910160405180910390a150565b6001600160a01b031660009081526001602052604090205460ff1690565b600080610fa18385612274565b905083811015610bc15760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610869565b600081848411156110175760405162461bcd60e51b81526004016108699190611ce5565b5060006110248486612287565b95945050505050565b60006001600160a01b0384166110555760405162461bcd60e51b8152600401610869906120f9565b6001600160a01b03831661107b5760405162461bcd60e51b81526004016108699061213e565b6001600160a01b0384166000908152600f602052604090205460ff161580156110bd57506001600160a01b0383166000908152600f602052604090205460ff16155b6110f95760405162461bcd60e51b815260206004820152600d60248201526c165bdd48185c99481848189bdd609a1b6044820152606401610869565b6001600160a01b03841660009081526001602052604090205460ff168061113857506001600160a01b03831660009081526001602052604090205460ff165b1561114f57611148848484611361565b9050610bc1565b60255460ff161561116557611148848484611361565b6001600160a01b03841660009081526001602052604090205460ff161580156111a757506001600160a01b03831660009081526001602052604090205460ff16155b156111fc57602154600160a01b900460ff166111fc5760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b6044820152606401610869565b602154600160a81b900460ff161561121957611219848484611447565b61122283611623565b1561122f5761122f61167d565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600b9091529190912054611281918490610ff3565b6001600160a01b038086166000908152600b6020526040812092909255602354858216911614806112bf57506023546001600160a01b038681169116145b6112c957826112d4565b6112d4858585611aed565b6001600160a01b0385166000908152600b60205260409020549091506112fa9082610f94565b6001600160a01b038086166000818152600b602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061134e9085815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600b909152918220546113b2918490610ff3565b6001600160a01b038086166000908152600b602052604080822093909355908516815220546113e19083610f94565b6001600160a01b038085166000818152600b602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906114359086815260200190565b60405180910390a35060019392505050565b6001600160a01b03831660009081526001602052604090205460ff1615801561147957506001600160a01b0382163014155b801561148e57506001600160a01b0383163014155b80156114a857506002546001600160a01b03838116911614155b80156114c257506023546001600160a01b03838116911614155b80156114dc5750601f546001600160a01b03838116911614155b80156114f65750601e546001600160a01b03838116911614155b15611597576001600160a01b0382166000908152600b6020526040902054600a546115218383612274565b11156115955760405162461bcd60e51b815260206004820152603e60248201527f546f74616c20486f6c64696e672069732063757272656e746c79206c696d697460448201527f65642c20796f752063616e206e6f74206275792074686174206d7563682e00006064820152608401610869565b505b600954811115806115c057506001600160a01b0383166000908152600e602052604090205460ff165b806115e357506001600160a01b0382166000908152600e602052604090205460ff165b610a645760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b6044820152606401610869565b6023546000906001600160a01b038381169116148015611646575060255460ff16155b801561165b5750602354600160a01b900460ff165b801561083e5750602454306000908152600b6020526040902054101592915050565b6025805460ff19166001179055602454601b5460009061169e5760006116c4565b6116c460026116be601d546116be601b5487611bb190919063ffffffff16565b90611c33565b905060006116d28383611c75565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061170c5761170c61207b565b6001600160a01b03928316602091820292909201015260045482519116908290600190811061173d5761173d61207b565b6001600160a01b03928316602091820292909201015260225460405163791ac94760e01b81524792919091169063791ac9479061178790869060009087903090429060040161229a565b600060405180830381600087803b1580156117a157600080fd5b505af11580156117b5573d6000803e3d6000fd5b5050505060008060006117d18447611c7590919063ffffffff16565b9050600080601b54116117e657601d54611801565b601b54611801906117f8906002611c33565b601d5490611c75565b601954909150156118fa576000611827826116be60195486611bb190919063ffffffff16565b90506000611836826005611c33565b905060006118448383611c75565b6021546040519192506001600160a01b0316908390600081818185875af1925050503d8060008114611892576040519150601f19603f3d011682016040523d82523d6000602084013e611897565b606091505b50506005546040519198506001600160a01b0316908290600081818185875af1925050503d80600081146118e7576040519150601f19603f3d011682016040523d82523d6000602084013e6118ec565b606091505b506000985088975050505050505b600061191a60026116be846116be601b5488611bb190919063ffffffff16565b601c549091501561199c576000611940836116be601c5487611bb190919063ffffffff16565b6020546040519192506001600160a01b0316908290600081818185875af1925050503d806000811461198e576040519150601f19603f3d011682016040523d82523d6000602084013e611993565b606091505b50600097505050505b8815611a7457602254601e5460405163f305d71960e01b8152306004820152602481018c905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af1158015611a12573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611a37919061230b565b505060408051838152602081018c90527f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450692500160405180910390a15b601a5415611ad757601f5460405147916001600160a01b0316908290600081818185875af1925050503d8060008114611ac9576040519150601f19603f3d011682016040523d82523d6000602084013e611ace565b606091505b50600097505050505b50506025805460ff191690555050505050505050565b60235460009081906001600160a01b03858116911614611b0f57601354611b13565b6017545b90506000611b276127106116be8685611bb1565b306000908152600b6020526040902054909150611b449082610f94565b306000818152600b6020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611b959085815260200190565b60405180910390a3611ba78482611c75565b9695505050505050565b600082600003611bc35750600061083e565b6000611bcf83856120c0565b905082611bdc85836120d7565b14610bc15760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610869565b6000610bc183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611cb7565b6000610bc183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ff3565b60008183611cd85760405162461bcd60e51b81526004016108699190611ce5565b50600061102484866120d7565b600060208083528351808285015260005b81811015611d1257858101830151858201604001528201611cf6565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611d4857600080fd5b50565b8035611d5681611d33565b919050565b60008060408385031215611d6e57600080fd5b8235611d7981611d33565b946020939093013593505050565b600080600060608486031215611d9c57600080fd5b505081359360208301359350604090920135919050565b634e487b7160e01b600052604160045260246000fd5b80358015158114611d5657600080fd5b60008060408385031215611dec57600080fd5b823567ffffffffffffffff80821115611e0457600080fd5b818501915085601f830112611e1857600080fd5b8135602082821115611e2c57611e2c611db3565b8160051b604051601f19603f83011681018181108682111715611e5157611e51611db3565b604052928352818301935084810182019289841115611e6f57600080fd5b948201945b83861015611e9457611e8586611d4b565b85529482019493820193611e74565b9650611ea39050878201611dc9565b9450505050509250929050565b600060208284031215611ec257600080fd5b5035919050565b600080600060608486031215611ede57600080fd5b8335611ee981611d33565b92506020840135611ef981611d33565b929592945050506040919091013590565b600060208284031215611f1c57600080fd5b8135610bc181611d33565b60008060408385031215611f3a57600080fd5b8235611f4581611d33565b9150611f5360208401611dc9565b90509250929050565b600080600060608486031215611f7157600080fd5b8335611f7c81611d33565b92506020840135611f8c81611d33565b91506040840135611f9c81611d33565b809150509250925092565b60008060408385031215611fba57600080fd5b8235611fc581611d33565b91506020830135611fd581611d33565b809150509250929050565b60008060408385031215611ff357600080fd5b611d7983611dc9565b600181811c9082168061201057607f821691505b60208210810361203057634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252600b908201526a085055551213d49256915160aa1b604082015260600190565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016120b9576120b9612091565b5060010190565b808202811582820484141761083e5761083e612091565b6000826120f457634e487b7160e01b600052601260045260246000fd5b500490565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b600181815b808511156121bc5781600019048211156121a2576121a2612091565b808516156121af57918102915b93841c9390800290612186565b509250929050565b6000826121d35750600161083e565b816121e05750600061083e565b81600181146121f657600281146122005761221c565b600191505061083e565b60ff84111561221157612211612091565b50506001821b61083e565b5060208310610133831016604e8410600b841016171561223f575081810a61083e565b6122498383612181565b806000190482111561225d5761225d612091565b029392505050565b6000610bc160ff8416836121c4565b8082018082111561083e5761083e612091565b8181038181111561083e5761083e612091565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156122ea5784516001600160a01b0316835293830193918301916001016122c5565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561232057600080fd5b835192506020840151915060408401519050925092509256fea26469706673582212202d7263a339e8c1e26edeb2c6f748156099a0f72f9c6fc72da406cd69badc045e64736f6c63430008130033

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

000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000003b9aca0000000000000000000000000000000000000000000000000000000000000009c4000000000000000000000000000000000000000000000000000000000000157c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000005000000000000000000000000f6ee60828d21da2ffe864df069196aedd73f5ddd000000000000000000000000f6ee60828d21da2ffe864df069196aedd73f5ddd000000000000000000000000f6ee60828d21da2ffe864df069196aedd73f5ddd000000000000000000000000f6ee60828d21da2ffe864df069196aedd73f5ddd000000000000000000000000769bff707502941c5540ced416dc884d0383f2c30000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000e4665656c7320476f6f64204d616e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004474f4f440000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000053130303334000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : numbers (uint256[]): 1000000000,2500,5500,0,0,0,0,10,10
Arg [1] : addresses (address[]): 0xF6EE60828d21Da2fFE864DF069196AedD73F5ddD,0xF6EE60828d21Da2fFE864DF069196AedD73F5ddD,0xF6EE60828d21Da2fFE864DF069196AedD73F5ddD,0xF6EE60828d21Da2fFE864DF069196AedD73F5ddD,0x769bFF707502941c5540cED416Dc884D0383f2c3
Arg [2] : names (string[]): Feels Good Man,GOOD,10034

-----Encoded View---------------
29 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 00000000000000000000000000000000000000000000000000000000000001a0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000260
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000009
Arg [4] : 000000000000000000000000000000000000000000000000000000003b9aca00
Arg [5] : 00000000000000000000000000000000000000000000000000000000000009c4
Arg [6] : 000000000000000000000000000000000000000000000000000000000000157c
Arg [7] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [8] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [9] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [10] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [11] : 000000000000000000000000000000000000000000000000000000000000000a
Arg [12] : 000000000000000000000000000000000000000000000000000000000000000a
Arg [13] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [14] : 000000000000000000000000f6ee60828d21da2ffe864df069196aedd73f5ddd
Arg [15] : 000000000000000000000000f6ee60828d21da2ffe864df069196aedd73f5ddd
Arg [16] : 000000000000000000000000f6ee60828d21da2ffe864df069196aedd73f5ddd
Arg [17] : 000000000000000000000000f6ee60828d21da2ffe864df069196aedd73f5ddd
Arg [18] : 000000000000000000000000769bff707502941c5540ced416dc884d0383f2c3
Arg [19] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [20] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [21] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [22] : 00000000000000000000000000000000000000000000000000000000000000e0
Arg [23] : 000000000000000000000000000000000000000000000000000000000000000e
Arg [24] : 4665656c7320476f6f64204d616e000000000000000000000000000000000000
Arg [25] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [26] : 474f4f4400000000000000000000000000000000000000000000000000000000
Arg [27] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [28] : 3130303334000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

5288:13787:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6775:28;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;6775:28:0;;;;;;;;9048:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;9540:216::-;;;;;;;;;;-1:-1:-1;9540:216:0;;;;;:::i;:::-;;:::i;:::-;;;1509:14:1;;1502:22;1484:41;;1472:2;1457:18;9540:216:0;1344:187:1;10231:657:0;;;;;;;;;;-1:-1:-1;10231:657:0;;;;;:::i;:::-;;:::i;:::-;;10900:659;;;;;;;;;;-1:-1:-1;10900:659:0;;;;;:::i;:::-;;:::i;12342:209::-;;;;;;;;;;-1:-1:-1;12342:209:0;;;;;:::i;:::-;;:::i;8778:88::-;;;;;;;;;;-1:-1:-1;8851:12:0;;8778:88;;12565:203;;;;;;;;;;-1:-1:-1;12565:203:0;;;;;:::i;:::-;;:::i;17229:528::-;;;;;;;;;;-1:-1:-1;17229:528:0;;;;;:::i;:::-;;:::i;13513:80::-;;;;;;;;;;;;;:::i;2895:103::-;;;;;;;;;;-1:-1:-1;2895:103:0;;;;;:::i;:::-;2950:4;2985:5;-1:-1:-1;;;;;2974:16:0;;;2985:5;;2974:16;;2895:103;8872:80;;;;;;;;;;-1:-1:-1;8872:80:0;;5664:1;4390:36:1;;4378:2;4363:18;8872:80:0;4248:184:1;9764:117:0;;;;;;;;;;-1:-1:-1;9764:117:0;;;;;:::i;:::-;;:::i;6133:26::-;;;;;;;;;;;;;;;;12204:126;;;;;;;;;;-1:-1:-1;12204:126:0;;;;;:::i;:::-;;:::i;12013:183::-;;;;;;;;;;-1:-1:-1;12013:183:0;;;;;:::i;:::-;;:::i;11818:187::-;;;;;;;;;;-1:-1:-1;11818:187:0;;;;;:::i;:::-;;:::i;6738:30::-;;;;;;;;;;-1:-1:-1;6738:30:0;;;;-1:-1:-1;;;6738:30:0;;;;;;9218:105;;;;;;;;;;-1:-1:-1;9218:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;9302:18:0;9284:7;9302:18;;;:9;:18;;;;;;;9218:105;11567:243;;;;;;;;;;-1:-1:-1;11567:243:0;;;;;:::i;:::-;;:::i;6483:30::-;;;;;;;;;;-1:-1:-1;6483:30:0;;;;-1:-1:-1;;;;;6483:30:0;;;;;;-1:-1:-1;;;;;5455:32:1;;;5437:51;;5425:2;5410:18;6483:30:0;5291:203:1;5746:30:0;;;;;;;;;;;;;;;;5712:27;;;;;;;;;;;;;;;;9134:78;;;;;;;;;;-1:-1:-1;9186:7:0;9204:5;-1:-1:-1;;;;;9204:5:0;9134:78;;6520:24;;;;;;;;;;-1:-1:-1;6520:24:0;;;;-1:-1:-1;;;;;6520:24:0;;;8958:84;;;;;;;;;;;;;:::i;6255:27::-;;;;;;;;;;;;;;;;6710:19;;;;;;;;;;-1:-1:-1;6710:19:0;;;;-1:-1:-1;;;;;6710:19:0;;;16921:300;;;;;;;;;;-1:-1:-1;16921:300:0;;;;;:::i;:::-;;:::i;2688:94::-;;;;;;;;;;-1:-1:-1;2688:94:0;;;;;:::i;:::-;;:::i;9468:64::-;;;;;;;;;;-1:-1:-1;9526:4:0;;-1:-1:-1;;;;;9526:4:0;9468:64;;6446:30;;;;;;;;;;-1:-1:-1;6446:30:0;;;;-1:-1:-1;;;;;6446:30:0;;;9329:133;;;;;;;;;;-1:-1:-1;9329:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;9431:19:0;;;9413:7;9431:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;9329:133;13433:72;;;;;;;;;;;;;:::i;13727:183::-;;;;;;;;;;-1:-1:-1;13727:183:0;;;;;:::i;:::-;;:::i;2790:97::-;;;;;;;;;;-1:-1:-1;2790:97:0;;;;;:::i;:::-;;:::i;3121:173::-;;;;;;;;;;-1:-1:-1;3121:173:0;;;;;:::i;:::-;;:::i;6679:24::-;;;;;;;;;;-1:-1:-1;6679:24:0;;;;-1:-1:-1;;;;;6679:24:0;;;3006:107;;;;;;;;;;-1:-1:-1;3006:107:0;;;;;:::i;:::-;;:::i;9048:80::-;9096:13;9120:5;9113:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9048:80;:::o;9540:216::-;9644:10;9615:4;9632:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;9632:32:0;;;;;;;;;;:41;;;9689:37;9615:4;;9632:32;;9689:37;;;;9667:6;160:25:1;;148:2;133:18;;14:177;9689:37:0;;;;;;;;-1:-1:-1;9744:4:0;9540:216;;;;;:::o;10231:657::-;2629:24;2642:10;2629:12;:24::i;:::-;2621:48;;;;-1:-1:-1;;;2621:48:0;;;;;;;:::i;:::-;;;;;;;;;10425:4:::1;10375:45;10412:7:::0;10375:32:::1;:13:::0;10393;10375:17:::1;:32::i;:::-;:36:::0;::::1;:45::i;:::-;10374:55;;10366:64;;;::::0;::::1;;10441:15;:31:::0;;;10483:15:::1;:31:::0;;;10525:9:::1;:19:::0;;;10572:16:::1;::::0;:35:::1;::::0;10459:13;10572:20:::1;:35::i;:::-;10557:12;:50:::0;10633:16:::1;::::0;:35:::1;::::0;10654:13;10633:20:::1;:35::i;:::-;10618:12;:50:::0;10688:10:::1;::::0;:23:::1;::::0;10703:7;10688:14:::1;:23::i;:::-;10679:6;:32:::0;10788:8:::1;::::0;10738:59:::1;::::0;:45:::1;10775:7:::0;10738:45;:13;10756;10738:17:::1;:32::i;:59::-;10724:11;:73;;;;10819:61;10866:13;;10819:42;10854:6;;10819:30;10836:12;;10819;;:16;;:30;;;;:::i;:61::-;10808:8;:72:::0;-1:-1:-1;;;10231:657:0:o;10900:659::-;2629:24;2642:10;2629:12;:24::i;:::-;2621:48;;;;-1:-1:-1;;;2621:48:0;;;;;;;:::i;:::-;11095:4:::1;11045:45;11082:7:::0;11045:32:::1;:13:::0;11063;11045:17:::1;:32::i;:45::-;11044:55;;11036:64;;;::::0;::::1;;11111:16;:32:::0;;;11154:16:::1;:32:::0;;;11197:10:::1;:20:::0;;;11245:15:::1;::::0;:34:::1;::::0;11130:13;11245:19:::1;:34::i;:::-;11230:12;:49:::0;11305:15:::1;::::0;:34:::1;::::0;11325:13;11305:19:::1;:34::i;:::-;11290:12;:49:::0;11359:9:::1;::::0;:22:::1;::::0;11373:7;11359:13:::1;:22::i;:::-;11350:6;:31:::0;11459:8:::1;::::0;11409:59:::1;::::0;:45:::1;11446:7:::0;11409:45;:13;11427;11409:17:::1;:32::i;:59::-;11394:12;:74;;;;11490:61;11537:13;;11490:42;11525:6;;11490:30;11507:12;;11490;;:16;;:30;;;;:::i;12342:209::-:0;2950:4;2985:5;-1:-1:-1;;;;;2985:5:0;2547:10;2974:16;2531:38;;;;-1:-1:-1;;;2531:38:0;;;;;;;:::i;:::-;12441:9:::1;12437:107;12459:8;:15;12455:1;:19;12437:107;;;12525:5;12495:14;:27;12510:8;12519:1;12510:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;12495:27:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;12495:27:0;:35;;-1:-1:-1;;12495:35:0::1;::::0;::::1;;::::0;;;::::1;::::0;;12476:3;::::1;::::0;::::1;:::i;:::-;;;;12437:107;;;;12342:209:::0;;:::o;12565:203::-;12699:15;;12659:21;;-1:-1:-1;;;;;12699:15:0;12691:69;12756:3;12725:28;12737:16;12659:21;12725:28;:::i;:::-;:34;;;;:::i;:::-;12691:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17229:528;17329:4;-1:-1:-1;;;;;17354:20:0;;17346:70;;;;-1:-1:-1;;;17346:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17435:23:0;;17427:71;;;;-1:-1:-1;;;17427:71:0;;;;;;;:::i;:::-;17547:12;;-1:-1:-1;;;;;17512:19:0;;;;;;:11;:19;;;;;;;;17532:10;17512:31;;;;;;;;:47;17509:181;;17609:69;;;;;;;;;;;-1:-1:-1;;;17609:69:0;;;;;;;;-1:-1:-1;;;;;17609:19:0;;-1:-1:-1;17609:19:0;;;:11;:19;;;;;17629:10;17609:31;;;;;;;;;;:69;;17645:6;;17609:35;:69::i;:::-;-1:-1:-1;;;;;17575:19:0;;;;;;:11;:19;;;;;;;;17595:10;17575:31;;;;;;;:103;17509:181;17709:40;17723:6;17731:9;17742:6;17709:13;:40::i;:::-;17702:47;;17229:528;;;;;;:::o;13513:80::-;2950:4;2985:5;-1:-1:-1;;;;;2985:5:0;2547:10;2974:16;2531:38;;;;-1:-1:-1;;;2531:38:0;;;;;;;:::i;:::-;13567:11:::1;:18:::0;;-1:-1:-1;;;;13567:18:0::1;-1:-1:-1::0;;;13567:18:0::1;::::0;;13513:80::o;9764:117::-;9819:4;9843:30;9851:7;9860:12;;9843:7;:30::i;12204:126::-;2950:4;2985:5;-1:-1:-1;;;;;2985:5:0;2547:10;2974:16;2531:38;;;;-1:-1:-1;;;2531:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12291:23:0;;;::::1;;::::0;;;:14:::1;:23;::::0;;;;:31;;-1:-1:-1;;12291:31:0::1;::::0;::::1;;::::0;;;::::1;::::0;;12204:126::o;12013:183::-;2629:24;2642:10;2629:12;:24::i;:::-;2621:48;;;;-1:-1:-1;;;2621:48:0;;;;;;;:::i;:::-;12100:1:::1;12089:7;:12;;12081:21;;;::::0;::::1;;12184:4;12172:7;12157:12;;:22;;;;:::i;:::-;12155:33;;;;:::i;:::-;12140:12;:48:::0;-1:-1:-1;12013:183:0:o;11818:187::-;2629:24;2642:10;2629:12;:24::i;:::-;2621:48;;;;-1:-1:-1;;;2621:48:0;;;;;;;:::i;:::-;11907:2:::1;11896:7;:13;;11888:22;;;::::0;::::1;;11993:4;11981:7;11966:12;;:22;;;;:::i;:::-;11964:33;;;;:::i;:::-;11946:15;:51:::0;-1:-1:-1;11818:187:0:o;11567:243::-;2629:24;2642:10;2629:12;:24::i;:::-;2621:48;;;;-1:-1:-1;;;2621:48:0;;;;;;;:::i;:::-;11690:15:::1;:34:::0;;-1:-1:-1;;;;;11690:34:0;;::::1;-1:-1:-1::0;;;;;;11690:34:0;;::::1;;::::0;;;11735:15:::1;:34:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;11780:9:::1;:22:::0;;;;;::::1;::::0;::::1;;::::0;;11567:243::o;8958:84::-;9008:13;9032:7;9025:14;;;;;:::i;16921:300::-;17001:4;17022:5;;17031:10;-1:-1:-1;;;;;17022:5:0;;;:19;17018:196;;17064:45;17079:10;17091:9;17102:6;17064:14;:45::i;:::-;17057:52;;;;17018:196;17158:44;17172:10;17184:9;17195:6;17158:13;:44::i;2688:94::-;2950:4;2985:5;-1:-1:-1;;;;;2985:5:0;2547:10;2974:16;2531:38;;;;-1:-1:-1;;;2531:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2748:19:0::1;;::::0;;;2770:4:::1;2748:19;::::0;;;;;;;:26;;-1:-1:-1;;2748:26:0::1;::::0;;::::1;::::0;;2688:94::o;13433:72::-;2629:24;2642:10;2629:12;:24::i;:::-;2621:48;;;;-1:-1:-1;;;2621:48:0;;;;;;;:::i;:::-;13483:6:::1;:14:::0;;-1:-1:-1;;;;13483:14:0::1;::::0;;13433:72::o;13727:183::-;2629:24;2642:10;2629:12;:24::i;:::-;2621:48;;;;-1:-1:-1;;;2621:48:0;;;;;;;:::i;:::-;13823:11:::1;:22:::0;;-1:-1:-1;;;;13823:22:0::1;-1:-1:-1::0;;;13823:22:0;::::1;;;;::::0;;13886:15:::1;5664:1;13886:2;:15;:::i;:::-;13872:30;::::0;:10;:30:::1;:::i;:::-;13856:13;:46:::0;-1:-1:-1;;13727:183:0:o;2790:97::-;2950:4;2985:5;-1:-1:-1;;;;;2985:5:0;2547:10;2974:16;2531:38;;;;-1:-1:-1;;;2531:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2852:19:0::1;2874:5;2852:19:::0;;;:14:::1;:19;::::0;;;;:27;;-1:-1:-1;;2852:27:0::1;::::0;;2790:97::o;3121:173::-;2950:4;2985:5;-1:-1:-1;;;;;2985:5:0;2547:10;2974:16;2531:38;;;;-1:-1:-1;;;2531:38:0;;;;;;;:::i;:::-;3197:5:::1;:11:::0;;-1:-1:-1;;;;;;3197:11:0::1;-1:-1:-1::0;;;;;3197:11:0;::::1;::::0;;::::1;::::0;;3219:19;;;-1:-1:-1;3219:19:0::1;::::0;;;;;;;;:26;;-1:-1:-1;;3219:26:0::1;::::0;;::::1;::::0;;;3261:25;;5437:51:1;;;3261:25:0::1;::::0;5410:18:1;3261:25:0::1;;;;;;;3121:173:::0;:::o;3006:107::-;-1:-1:-1;;;;;3086:19:0;3062:4;3086:19;;;:14;:19;;;;;;;;;3006:107::o;86:181::-;144:7;;176:5;180:1;176;:5;:::i;:::-;164:17;;205:1;200;:6;;192:46;;;;-1:-1:-1;;;192:46:0;;11230:2:1;192:46:0;;;11212:21:1;11269:2;11249:18;;;11242:30;11308:29;11288:18;;;11281:57;11355:18;;192:46:0;11028:351:1;415:192:0;501:7;537:12;529:6;;;;521:29;;;;-1:-1:-1;;;521:29:0;;;;;;;;:::i;:::-;-1:-1:-1;561:9:0;573:5;577:1;573;:5;:::i;:::-;561:17;415:192;-1:-1:-1;;;;;415:192:0:o;17765:1242::-;17857:4;-1:-1:-1;;;;;17884:20:0;;17876:70;;;;-1:-1:-1;;;17876:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17965:23:0;;17957:71;;;;-1:-1:-1;;;17957:71:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;18048:22:0;;;;;;:14;:22;;;;;;;;18047:23;:53;;;;-1:-1:-1;;;;;;18075:25:0;;;;;;:14;:25;;;;;;;;18074:26;18047:53;18039:79;;;;-1:-1:-1;;;18039:79:0;;11719:2:1;18039:79:0;;;11701:21:1;11758:2;11738:18;;;11731:30;-1:-1:-1;;;11777:18:1;;;11770:43;11830:18;;18039:79:0;11517:337:1;18039:79:0;-1:-1:-1;;;;;18135:22:0;;;;;;:14;:22;;;;;;;;;:51;;-1:-1:-1;;;;;;18161:25:0;;;;;;:14;:25;;;;;;;;18135:51;18131:131;;;18209:41;18224:6;18232:9;18243:6;18209:14;:41::i;:::-;18202:48;;;;18131:131;18277:6;;;;18274:63;;;18293:41;18308:6;18316:9;18327:6;18293:14;:41::i;18274:63::-;-1:-1:-1;;;;;18353:22:0;;;;;;:14;:22;;;;;;;;18352:23;:53;;;;-1:-1:-1;;;;;;18380:25:0;;;;;;:14;:25;;;;;;;;18379:26;18352:53;18349:127;;;18429:11;;-1:-1:-1;;;18429:11:0;;;;18421:43;;;;-1:-1:-1;;;18421:43:0;;12061:2:1;18421:43:0;;;12043:21:1;12100:2;12080:18;;;12073:30;-1:-1:-1;;;12119:18:1;;;12112:50;12179:18;;18421:43:0;11859:344:1;18421:43:0;18500:6;;-1:-1:-1;;;18500:6:0;;;;18496:76;;;18522:38;18534:6;18542:9;18553:6;18522:11;:38::i;:::-;18587:26;18603:9;18587:15;:26::i;:::-;18584:46;;;18616:11;:9;:11::i;:::-;18670:53;;;;;;;;;;;-1:-1:-1;;;18670:53:0;;;;;;;;-1:-1:-1;;;;;18670:17:0;;-1:-1:-1;18670:17:0;;;:9;:17;;;;;;;;:53;;18692:6;;18670:21;:53::i;:::-;-1:-1:-1;;;;;18650:17:0;;;;;;;:9;:17;;;;;:73;;;;18773:4;;18760:17;;;18773:4;;18760:17;;:35;;-1:-1:-1;18791:4:0;;-1:-1:-1;;;;;18781:14:0;;;18791:4;;18781:14;18760:35;18759:83;;18836:6;18759:83;;;18799:34;18807:6;18815:9;18826:6;18799:7;:34::i;:::-;-1:-1:-1;;;;;18876:20:0;;;;;;:9;:20;;;;;;18734:108;;-1:-1:-1;18876:40:0;;18734:108;18876:24;:40::i;:::-;-1:-1:-1;;;;;18853:20:0;;;;;;;:9;:20;;;;;;;:63;;;;18934:43;;;;;;;;;;18962:14;160:25:1;;148:2;133:18;;14:177;18934:43:0;;;;;;;;-1:-1:-1;18995:4:0;;17765:1242;-1:-1:-1;;;;17765:1242:0:o;9893:330::-;10023:53;;;;;;;;;;;-1:-1:-1;;;10023:53:0;;;;;;;;-1:-1:-1;;;;;10023:17:0;;9986:4;10023:17;;;:9;:17;;;;;;;:53;;10045:6;;10023:21;:53::i;:::-;-1:-1:-1;;;;;10003:17:0;;;;;;;:9;:17;;;;;;:73;;;;10110:20;;;;;;;:32;;10135:6;10110:24;:32::i;:::-;-1:-1:-1;;;;;10087:20:0;;;;;;;:9;:20;;;;;;;:55;;;;10158:35;;;;;;;;;;10186:6;160:25:1;;148:2;133:18;;14:177;10158:35:0;;;;;;;;-1:-1:-1;10211:4:0;9893:330;;;;;:::o;12776:649::-;-1:-1:-1;;;;;12877:22:0;;;;;;:14;:22;;;;;;;;12876:23;:53;;;;-1:-1:-1;;;;;;12903:26:0;;12924:4;12903:26;;12876:53;:80;;;;-1:-1:-1;;;;;;12933:23:0;;12951:4;12933:23;;12876:80;:125;;;;-1:-1:-1;12996:4:0;;-1:-1:-1;;;;;12975:26:0;;;12996:4;;12975:26;;12876:125;:146;;;;-1:-1:-1;13018:4:0;;-1:-1:-1;;;;;13005:17:0;;;13018:4;;13005:17;;12876:146;:178;;;;-1:-1:-1;13039:15:0;;-1:-1:-1;;;;;13026:28:0;;;13039:15;;13026:28;;12876:178;:210;;;;-1:-1:-1;13071:15:0;;-1:-1:-1;;;;;13058:28:0;;;13071:15;;13058:28;;12876:210;12872:424;;;-1:-1:-1;;;;;9302:18:0;;13106;9302;;;:9;:18;;;;;;13199:15;;13175:19;13188:6;9302:18;13175:19;:::i;:::-;13174:40;;13166:114;;;;-1:-1:-1;;;13166:114:0;;12410:2:1;13166:114:0;;;12392:21:1;12449:2;12429:18;;;12422:30;12488:34;12468:18;;;12461:62;12559:32;12539:18;;;12532:60;12609:19;;13166:114:0;12208:426:1;13166:114:0;13087:209;12872:424;13326:12;;13316:6;:22;;:49;;;-1:-1:-1;;;;;;13342:23:0;;;;;;:15;:23;;;;;;;;13316:49;:79;;;-1:-1:-1;;;;;;13369:26:0;;;;;;:15;:26;;;;;;;;13316:79;13308:109;;;;-1:-1:-1;;;13308:109:0;;12841:2:1;13308:109:0;;;12823:21:1;12880:2;12860:18;;;12853:30;-1:-1:-1;;;12899:18:1;;;12892:47;12956:18;;13308:109:0;12639:341:1;13922:216:0;14028:4;;13989;;-1:-1:-1;;;;;14015:17:0;;;14028:4;;14015:17;:37;;;;-1:-1:-1;14046:6:0;;;;14045:7;14015:37;:61;;;;-1:-1:-1;14065:11:0;;-1:-1:-1;;;14065:11:0;;;;14015:61;:115;;;;-1:-1:-1;14117:13:0;;14107:4;14089:24;;;;:9;:24;;;;;;:41;;14008:122;13922:216;-1:-1:-1;;13922:216:0:o;14605:2308::-;6852:6;:13;;-1:-1:-1;;6852:13:0;6861:4;6852:13;;;14674::::1;::::0;14727:12:::1;::::0;6852:6;;14726:70:::1;;14795:1;14726:70;;;14747:45;14790:1;14747:38;14776:8;;14747:24;14758:12;;14747:6;:10;;:24;;;;:::i;:::-;:28:::0;::::1;:38::i;:45::-;14700:96:::0;-1:-1:-1;14809:20:0::1;14832:27;:6:::0;14700:96;14832:10:::1;:27::i;:::-;14896:16;::::0;;14910:1:::1;14896:16:::0;;;;;::::1;::::0;;14809:50;;-1:-1:-1;14872:21:0::1;::::0;14896:16;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;14896:16:0::1;14872:40;;14941:4;14923;14928:1;14923:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;14923:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;14967:4:::1;::::0;14957:7;;14967:4;::::1;::::0;14957;;14967;;14957:7;::::1;;;;;:::i;:::-;-1:-1:-1::0;;;;;14957:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;:14;15042:6:::1;::::0;:188:::1;::::0;-1:-1:-1;;;15042:188:0;;15008:21:::1;::::0;15042:6;;;::::1;::::0;:57:::1;::::0;:188:::1;::::0;15114:12;;14984:21:::1;::::0;15157:4;;15184::::1;::::0;15204:15:::1;::::0;15042:188:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;15243:15;15269:16:::0;15298:17:::1;15318:40;15344:13;15318:21;:25;;:40;;;;:::i;:::-;15298:60;;15369:19;15407:1:::0;15392:12:::1;;:16;15391:65;;15448:8;;15391:65;;;15425:12;::::0;15412:33:::1;::::0;15425:19:::1;::::0;15442:1:::1;15425:16;:19::i;:::-;15412:8;::::0;;:12:::1;:33::i;:::-;15473:13;::::0;15369:87;;-1:-1:-1;15473:17:0;15469:503:::1;;15506:21;15530:45;15563:11;15530:28;15544:13;;15530:9;:13;;:28;;;;:::i;:45::-;15506:69:::0;-1:-1:-1;15590:24:0::1;15617:20;15506:69:::0;15635:1:::1;15617:17;:20::i;:::-;15590:47:::0;-1:-1:-1;15652:25:0::1;15680:35;:13:::0;15590:47;15680:17:::1;:35::i;:::-;15754:14;::::0;15746:57:::1;::::0;15652:63;;-1:-1:-1;;;;;;15754:14:0::1;::::0;15782:16;;15746:57:::1;::::0;;;15782:16;15754:14;15746:57:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;15843:14:0::1;::::0;15835:58:::1;::::0;15730:73;;-1:-1:-1;;;;;;15843:14:0::1;::::0;15871:17;;15835:58:::1;::::0;;;15871:17;15843:14;15835:58:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;15921:5:0::1;::::0;-1:-1:-1;15921:5:0;;-1:-1:-1;;;;;;15469:503:0::1;15984:26;16013:51;16062:1;16013:44;16045:11;16013:27;16027:12;;16013:9;:13;;:27;;;;:::i;:51::-;16079:6;::::0;15984:80;;-1:-1:-1;16079:10:0;16075:229:::1;;16105:20;16128:38;16154:11;16128:21;16142:6;;16128:9;:13;;:21;;;;:::i;:38::-;16219:9;::::0;16211:48:::1;::::0;16105:61;;-1:-1:-1;;;;;;16219:9:0::1;::::0;16105:61;;16211:48:::1;::::0;;;16105:61;16219:9;16211:48:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;16287:5:0::1;::::0;-1:-1:-1;;;;16075:229:0::1;16319:19:::0;;16316:356:::1;;16354:6;::::0;16528:15:::1;::::0;16354:238:::1;::::0;-1:-1:-1;;;16354:238:0;;16430:4:::1;16354:238;::::0;::::1;14521:34:1::0;14571:18;;;14564:34;;;16354:6:0::1;14614:18:1::0;;;14607:34;;;14657:18;;;14650:34;-1:-1:-1;;;;;16528:15:0;;::::1;14700:19:1::0;;;14693:44;16562:15:0::1;14753:19:1::0;;;14746:35;16354:6:0;::::1;::::0;:22:::1;::::0;16384:18;;14455:19:1;;16354:238:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;16612:48:0::1;::::0;;15277:25:1;;;15333:2;15318:18;;15311:34;;;16612:48:0::1;::::0;-1:-1:-1;15250:18:1;16612:48:0::1;;;;;;;16316:356;16686:12;::::0;:16;16682:224:::1;;16809:15;::::0;16801:60:::1;::::0;16747:21:::1;::::0;-1:-1:-1;;;;;16809:15:0::1;::::0;16747:21;;16801:60:::1;::::0;;;16747:21;16809:15;16801:60:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;16889:5:0::1;::::0;-1:-1:-1;;;;16682:224:0::1;-1:-1:-1::0;;6870:6:0;:14;;-1:-1:-1;;6870:14:0;;;-1:-1:-1;;;;;;;;14605:2308:0:o;14146:451::-;14310:4;;14232:7;;;;-1:-1:-1;;;;;14297:17:0;;;14310:4;;14297:17;14296:48;;14333:11;;14296:48;;;14318:12;;14296:48;14284:60;-1:-1:-1;14357:17:0;14377:32;14403:5;14377:21;:6;14284:60;14377:10;:21::i;:32::-;14467:4;14449:24;;;;:9;:24;;;;;;14357:52;;-1:-1:-1;14449:39:0;;14357:52;14449:28;:39::i;:::-;14440:4;14422:24;;;;:9;:24;;;;;;;:66;;;;14506:42;;-1:-1:-1;;;;;14506:42:0;;;;;;;14538:9;160:25:1;;148:2;133:18;;14:177;14506:42:0;;;;;;;;14568:21;:6;14579:9;14568:10;:21::i;:::-;14561:28;14146:451;-1:-1:-1;;;;;;14146:451:0:o;613:250::-;671:7;695:1;700;695:6;691:47;;-1:-1:-1;725:1:0;718:8;;691:47;750:9;762:5;766:1;762;:5;:::i;:::-;750:17;-1:-1:-1;795:1:0;786:5;790:1;750:17;786:5;:::i;:::-;:10;778:56;;;;-1:-1:-1;;;778:56:0;;15558:2:1;778:56:0;;;15540:21:1;15597:2;15577:18;;;15570:30;15636:34;15616:18;;;15609:62;-1:-1:-1;;;15687:18:1;;;15680:31;15728:19;;778:56:0;15356:397:1;869:132:0;927:7;954:39;958:1;961;954:39;;;;;;;;;;;;;;;;;:3;:39::i;273:136::-;331:7;358:43;362:1;365;358:43;;;;;;;;;;;;;;;;;:3;:43::i;1007:345::-;1093:7;1195:12;1188:5;1180:28;;;;-1:-1:-1;;;1180:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1219:9:0;1231:5;1235:1;1231;:5;:::i;196:548:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;480:3;665:1;660:2;651:6;640:9;636:22;632:31;625:42;735:2;728;724:7;719:2;711:6;707:15;703:29;692:9;688:45;684:54;676:62;;;;196:548;;;;:::o;749:131::-;-1:-1:-1;;;;;824:31:1;;814:42;;804:70;;870:1;867;860:12;804:70;749:131;:::o;885:134::-;953:20;;982:31;953:20;982:31;:::i;:::-;885:134;;;:::o;1024:315::-;1092:6;1100;1153:2;1141:9;1132:7;1128:23;1124:32;1121:52;;;1169:1;1166;1159:12;1121:52;1208:9;1195:23;1227:31;1252:5;1227:31;:::i;:::-;1277:5;1329:2;1314:18;;;;1301:32;;-1:-1:-1;;;1024:315:1:o;1536:316::-;1613:6;1621;1629;1682:2;1670:9;1661:7;1657:23;1653:32;1650:52;;;1698:1;1695;1688:12;1650:52;-1:-1:-1;;1721:23:1;;;1791:2;1776:18;;1763:32;;-1:-1:-1;1842:2:1;1827:18;;;1814:32;;1536:316;-1:-1:-1;1536:316:1:o;1857:127::-;1918:10;1913:3;1909:20;1906:1;1899:31;1949:4;1946:1;1939:15;1973:4;1970:1;1963:15;1989:160;2054:20;;2110:13;;2103:21;2093:32;;2083:60;;2139:1;2136;2129:12;2154:1191;2244:6;2252;2305:2;2293:9;2284:7;2280:23;2276:32;2273:52;;;2321:1;2318;2311:12;2273:52;2361:9;2348:23;2390:18;2431:2;2423:6;2420:14;2417:34;;;2447:1;2444;2437:12;2417:34;2485:6;2474:9;2470:22;2460:32;;2530:7;2523:4;2519:2;2515:13;2511:27;2501:55;;2552:1;2549;2542:12;2501:55;2588:2;2575:16;2610:4;2633:2;2629;2626:10;2623:36;;;2639:18;;:::i;:::-;2685:2;2682:1;2678:10;2717:2;2711:9;2780:2;2776:7;2771:2;2767;2763:11;2759:25;2751:6;2747:38;2835:6;2823:10;2820:22;2815:2;2803:10;2800:18;2797:46;2794:72;;;2846:18;;:::i;:::-;2882:2;2875:22;2932:18;;;2966:15;;;;-1:-1:-1;3008:11:1;;;3004:20;;;3036:19;;;3033:39;;;3068:1;3065;3058:12;3033:39;3092:11;;;;3112:148;3128:6;3123:3;3120:15;3112:148;;;3194:23;3213:3;3194:23;:::i;:::-;3182:36;;3145:12;;;;3238;;;;3112:148;;;3279:6;-1:-1:-1;3304:35:1;;-1:-1:-1;3320:18:1;;;3304:35;:::i;:::-;3294:45;;;;;;2154:1191;;;;;:::o;3350:180::-;3409:6;3462:2;3450:9;3441:7;3437:23;3433:32;3430:52;;;3478:1;3475;3468:12;3430:52;-1:-1:-1;3501:23:1;;3350:180;-1:-1:-1;3350:180:1:o;3535:456::-;3612:6;3620;3628;3681:2;3669:9;3660:7;3656:23;3652:32;3649:52;;;3697:1;3694;3687:12;3649:52;3736:9;3723:23;3755:31;3780:5;3755:31;:::i;:::-;3805:5;-1:-1:-1;3862:2:1;3847:18;;3834:32;3875:33;3834:32;3875:33;:::i;:::-;3535:456;;3927:7;;-1:-1:-1;;;3981:2:1;3966:18;;;;3953:32;;3535:456::o;3996:247::-;4055:6;4108:2;4096:9;4087:7;4083:23;4079:32;4076:52;;;4124:1;4121;4114:12;4076:52;4163:9;4150:23;4182:31;4207:5;4182:31;:::i;4437:315::-;4502:6;4510;4563:2;4551:9;4542:7;4538:23;4534:32;4531:52;;;4579:1;4576;4569:12;4531:52;4618:9;4605:23;4637:31;4662:5;4637:31;:::i;:::-;4687:5;-1:-1:-1;4711:35:1;4742:2;4727:18;;4711:35;:::i;:::-;4701:45;;4437:315;;;;;:::o;4757:529::-;4834:6;4842;4850;4903:2;4891:9;4882:7;4878:23;4874:32;4871:52;;;4919:1;4916;4909:12;4871:52;4958:9;4945:23;4977:31;5002:5;4977:31;:::i;:::-;5027:5;-1:-1:-1;5084:2:1;5069:18;;5056:32;5097:33;5056:32;5097:33;:::i;:::-;5149:7;-1:-1:-1;5208:2:1;5193:18;;5180:32;5221:33;5180:32;5221:33;:::i;:::-;5273:7;5263:17;;;4757:529;;;;;:::o;5499:388::-;5567:6;5575;5628:2;5616:9;5607:7;5603:23;5599:32;5596:52;;;5644:1;5641;5634:12;5596:52;5683:9;5670:23;5702:31;5727:5;5702:31;:::i;:::-;5752:5;-1:-1:-1;5809:2:1;5794:18;;5781:32;5822:33;5781:32;5822:33;:::i;:::-;5874:7;5864:17;;;5499:388;;;;;:::o;5892:248::-;5957:6;5965;6018:2;6006:9;5997:7;5993:23;5989:32;5986:52;;;6034:1;6031;6024:12;5986:52;6057:26;6073:9;6057:26;:::i;6631:380::-;6710:1;6706:12;;;;6753;;;6774:61;;6828:4;6820:6;6816:17;6806:27;;6774:61;6881:2;6873:6;6870:14;6850:18;6847:38;6844:161;;6927:10;6922:3;6918:20;6915:1;6908:31;6962:4;6959:1;6952:15;6990:4;6987:1;6980:15;6844:161;;6631:380;;;:::o;7016:335::-;7218:2;7200:21;;;7257:2;7237:18;;;7230:30;-1:-1:-1;;;7291:2:1;7276:18;;7269:41;7342:2;7327:18;;7016:335::o;7356:329::-;7558:2;7540:21;;;7597:1;7577:18;;;7570:29;-1:-1:-1;;;7630:2:1;7615:18;;7608:36;7676:2;7661:18;;7356:329::o;7690:127::-;7751:10;7746:3;7742:20;7739:1;7732:31;7782:4;7779:1;7772:15;7806:4;7803:1;7796:15;7822:127;7883:10;7878:3;7874:20;7871:1;7864:31;7914:4;7911:1;7904:15;7938:4;7935:1;7928:15;7954:135;7993:3;8014:17;;;8011:43;;8034:18;;:::i;:::-;-1:-1:-1;8081:1:1;8070:13;;7954:135::o;8094:168::-;8167:9;;;8198;;8215:15;;;8209:22;;8195:37;8185:71;;8236:18;;:::i;8267:217::-;8307:1;8333;8323:132;;8377:10;8372:3;8368:20;8365:1;8358:31;8412:4;8409:1;8402:15;8440:4;8437:1;8430:15;8323:132;-1:-1:-1;8469:9:1;;8267:217::o;8489:401::-;8691:2;8673:21;;;8730:2;8710:18;;;8703:30;8769:34;8764:2;8749:18;;8742:62;-1:-1:-1;;;8835:2:1;8820:18;;8813:35;8880:3;8865:19;;8489:401::o;8895:399::-;9097:2;9079:21;;;9136:2;9116:18;;;9109:30;9175:34;9170:2;9155:18;;9148:62;-1:-1:-1;;;9241:2:1;9226:18;;9219:33;9284:3;9269:19;;8895:399::o;9299:422::-;9388:1;9431:5;9388:1;9445:270;9466:7;9456:8;9453:21;9445:270;;;9525:4;9521:1;9517:6;9513:17;9507:4;9504:27;9501:53;;;9534:18;;:::i;:::-;9584:7;9574:8;9570:22;9567:55;;;9604:16;;;;9567:55;9683:22;;;;9643:15;;;;9445:270;;;9449:3;9299:422;;;;;:::o;9726:806::-;9775:5;9805:8;9795:80;;-1:-1:-1;9846:1:1;9860:5;;9795:80;9894:4;9884:76;;-1:-1:-1;9931:1:1;9945:5;;9884:76;9976:4;9994:1;9989:59;;;;10062:1;10057:130;;;;9969:218;;9989:59;10019:1;10010:10;;10033:5;;;10057:130;10094:3;10084:8;10081:17;10078:43;;;10101:18;;:::i;:::-;-1:-1:-1;;10157:1:1;10143:16;;10172:5;;9969:218;;10271:2;10261:8;10258:16;10252:3;10246:4;10243:13;10239:36;10233:2;10223:8;10220:16;10215:2;10209:4;10206:12;10202:35;10199:77;10196:159;;;-1:-1:-1;10308:19:1;;;10340:5;;10196:159;10387:34;10412:8;10406:4;10387:34;:::i;:::-;10457:6;10453:1;10449:6;10445:19;10436:7;10433:32;10430:58;;;10468:18;;:::i;:::-;10506:20;;9726:806;-1:-1:-1;;;9726:806:1:o;10537:140::-;10595:5;10624:47;10665:4;10655:8;10651:19;10645:4;10624:47;:::i;10898:125::-;10963:9;;;10984:10;;;10981:36;;;10997:18;;:::i;11384:128::-;11451:9;;;11472:11;;;11469:37;;;11486:18;;:::i;12985:980::-;13247:4;13295:3;13284:9;13280:19;13326:6;13315:9;13308:25;13352:2;13390:6;13385:2;13374:9;13370:18;13363:34;13433:3;13428:2;13417:9;13413:18;13406:31;13457:6;13492;13486:13;13523:6;13515;13508:22;13561:3;13550:9;13546:19;13539:26;;13600:2;13592:6;13588:15;13574:29;;13621:1;13631:195;13645:6;13642:1;13639:13;13631:195;;;13710:13;;-1:-1:-1;;;;;13706:39:1;13694:52;;13801:15;;;;13766:12;;;;13742:1;13660:9;13631:195;;;-1:-1:-1;;;;;;;13882:32:1;;;;13877:2;13862:18;;13855:60;-1:-1:-1;;;13946:3:1;13931:19;13924:35;13843:3;12985:980;-1:-1:-1;;;12985:980:1:o;14792:306::-;14880:6;14888;14896;14949:2;14937:9;14928:7;14924:23;14920:32;14917:52;;;14965:1;14962;14955:12;14917:52;14994:9;14988:16;14978:26;;15044:2;15033:9;15029:18;15023:25;15013:35;;15088:2;15077:9;15073:18;15067:25;15057:35;;14792:306;;;;;:::o

Swarm Source

ipfs://2d7263a339e8c1e26edeb2c6f748156099a0f72f9c6fc72da406cd69badc045e

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.