ETH Price: $3,262.51 (+0.60%)
Gas: 1 Gwei

Contract

0x03bDeA5C4bf9693A19728fA0778938606E0d3492
 

Overview

ETH Balance

0.002156006903606633 ETH

Eth Value

$7.03 (@ $3,262.51/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer148657422022-05-29 9:35:33791 days ago1653816933IN
0x03bDeA5C...06E0d3492
0 ETH0.0009771211.86194176
Approve146708432022-04-28 4:51:36822 days ago1651121496IN
0x03bDeA5C...06E0d3492
0 ETH0.0020389343.86313778
Approve146602042022-04-26 12:42:56824 days ago1650976976IN
0x03bDeA5C...06E0d3492
0 ETH0.0020144543.33649102
Approve146477522022-04-24 13:33:29826 days ago1650807209IN
0x03bDeA5C...06E0d3492
0 ETH0.0008252634.10180758
Approve146465752022-04-24 9:01:20826 days ago1650790880IN
0x03bDeA5C...06E0d3492
0 ETH0.0010537322.66869942
Approve146338062022-04-22 9:12:49828 days ago1650618769IN
0x03bDeA5C...06E0d3492
0 ETH0.0014473831.13719602
Approve146338062022-04-22 9:12:49828 days ago1650618769IN
0x03bDeA5C...06E0d3492
0 ETH0.0014473831.13719602
Approve146332312022-04-22 7:06:29828 days ago1650611189IN
0x03bDeA5C...06E0d3492
0 ETH0.0017590937.84310123
Approve146318912022-04-22 1:59:03828 days ago1650592743IN
0x03bDeA5C...06E0d3492
0 ETH0.0019990443.00510598
Approve146313762022-04-22 0:05:47828 days ago1650585947IN
0x03bDeA5C...06E0d3492
0 ETH0.0028931862.24049174
Approve146312162022-04-21 23:27:18828 days ago1650583638IN
0x03bDeA5C...06E0d3492
0 ETH0.0021809346.91801002
Approve146308912022-04-21 22:17:26828 days ago1650579446IN
0x03bDeA5C...06E0d3492
0 ETH0.0028463761.23351019
Approve146301492022-04-21 19:24:32829 days ago1650569072IN
0x03bDeA5C...06E0d3492
0 ETH0.002656857.15523085
Approve146292202022-04-21 16:01:04829 days ago1650556864IN
0x03bDeA5C...06E0d3492
0 ETH0.0029300363.03314565
Approve146292082022-04-21 15:58:20829 days ago1650556700IN
0x03bDeA5C...06E0d3492
0 ETH0.0030481765.57473562
Approve146284682022-04-21 13:08:50829 days ago1650546530IN
0x03bDeA5C...06E0d3492
0 ETH0.0025177154.16295684
Approve146284112022-04-21 12:55:12829 days ago1650545712IN
0x03bDeA5C...06E0d3492
0 ETH0.0022312348
Approve146283662022-04-21 12:46:09829 days ago1650545169IN
0x03bDeA5C...06E0d3492
0 ETH0.0023000449.48025223
Approve146283442022-04-21 12:42:20829 days ago1650544940IN
0x03bDeA5C...06E0d3492
0 ETH0.0020992545.16091153
Approve146281782022-04-21 12:00:13829 days ago1650542413IN
0x03bDeA5C...06E0d3492
0 ETH0.0018117338.97535211
Approve146281762022-04-21 11:59:46829 days ago1650542386IN
0x03bDeA5C...06E0d3492
0 ETH0.0016615935.74561528
Approve146281322022-04-21 11:51:05829 days ago1650541865IN
0x03bDeA5C...06E0d3492
0 ETH0.0016020934.465462
Approve146281182022-04-21 11:48:18829 days ago1650541698IN
0x03bDeA5C...06E0d3492
0 ETH0.0017759838.206417
Approve146281092022-04-21 11:46:17829 days ago1650541577IN
0x03bDeA5C...06E0d3492
0 ETH0.0019428941.79708236
Approve146280732022-04-21 11:36:58829 days ago1650541018IN
0x03bDeA5C...06E0d3492
0 ETH0.0015830834.05665615
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
146459292022-04-24 6:40:07826 days ago1650782407
0x03bDeA5C...06E0d3492
0.0000946 ETH
146459292022-04-24 6:40:07826 days ago1650782407
0x03bDeA5C...06E0d3492
0.0020614 ETH
146459292022-04-24 6:40:07826 days ago1650782407
0x03bDeA5C...06E0d3492
0.0041228 ETH
146459292022-04-24 6:40:07826 days ago1650782407
0x03bDeA5C...06E0d3492
0.01236842 ETH
146459292022-04-24 6:40:07826 days ago1650782407
0x03bDeA5C...06E0d3492
0.01775427 ETH
146325022022-04-22 4:18:25828 days ago1650601105
0x03bDeA5C...06E0d3492
0.00014965 ETH
146325022022-04-22 4:18:25828 days ago1650601105
0x03bDeA5C...06E0d3492
0.0027101 ETH
146325022022-04-22 4:18:25828 days ago1650601105
0x03bDeA5C...06E0d3492
0.00542021 ETH
146325022022-04-22 4:18:25828 days ago1650601105
0x03bDeA5C...06E0d3492
0.01626063 ETH
146325022022-04-22 4:18:25828 days ago1650601105
0x03bDeA5C...06E0d3492
0.02313293 ETH
146307502022-04-21 21:40:31828 days ago1650577231
0x03bDeA5C...06E0d3492
0.0002272 ETH
146307502022-04-21 21:40:31828 days ago1650577231
0x03bDeA5C...06E0d3492
0.00374091 ETH
146307502022-04-21 21:40:31828 days ago1650577231
0x03bDeA5C...06E0d3492
0.00748182 ETH
146307502022-04-21 21:40:31828 days ago1650577231
0x03bDeA5C...06E0d3492
0.02244547 ETH
146307502022-04-21 21:40:31828 days ago1650577231
0x03bDeA5C...06E0d3492
0.0317831 ETH
146287432022-04-21 14:07:48829 days ago1650550068
0x03bDeA5C...06E0d3492
0.00035789 ETH
146287432022-04-21 14:07:48829 days ago1650550068
0x03bDeA5C...06E0d3492
0.00526813 ETH
146287432022-04-21 14:07:48829 days ago1650550068
0x03bDeA5C...06E0d3492
0.01053626 ETH
146287432022-04-21 14:07:48829 days ago1650550068
0x03bDeA5C...06E0d3492
0.03160878 ETH
146287432022-04-21 14:07:48829 days ago1650550068
0x03bDeA5C...06E0d3492
0.04448135 ETH
146284122022-04-21 12:55:40829 days ago1650545740
0x03bDeA5C...06E0d3492
0.00038773 ETH
146284122022-04-21 12:55:40829 days ago1650545740
0x03bDeA5C...06E0d3492
0.00781221 ETH
146284122022-04-21 12:55:40829 days ago1650545740
0x03bDeA5C...06E0d3492
0.01562442 ETH
146284122022-04-21 12:55:40829 days ago1650545740
0x03bDeA5C...06E0d3492
0.04687328 ETH
146284122022-04-21 12:55:40829 days ago1650545740
0x03bDeA5C...06E0d3492
0.06740705 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
FREEZE

Compiler Version
v0.8.13+commit.abaa5c0e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-04-21
*/

// SPDX-License-Identifier: UNLICENSED
// we rather freeze then burn

pragma solidity ^0.8.12;

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

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

        return c;
    }
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

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

interface ERC20 {
    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 {
        require(adr != owner, "OWNER cant be unauthorized");
        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 {
        require(adr != owner, "Already the owner");
        authorizations[owner] = false;
        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 addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);

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

contract FREEZE is ERC20, Auth {
    using SafeMath for uint256;

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

    string constant _name = "Freeze";
    string constant _symbol = "FREEZE";
    uint8 constant _decimals = 4;

    uint256 _totalSupply = 1 * 10**9 * 10**_decimals;

    uint256 public _maxTxAmount = _totalSupply / 200;
    uint256 public _maxWalletToken = _totalSupply / 50;

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

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

    uint256 public liquidityFee = 1;
    uint256 public marketingFee = 3;
    uint256 public devFee = 1;
    uint256 public totalFee = marketingFee + liquidityFee + devFee;
    uint256 public constant feeDenominator = 100;

    address public autoLiquidityReceiver;
    address public marketingFeeReceiver;
    address public devFeeReceiver;

    IDEXRouter public router;
    address public pair;

    bool public tradingOpen = false;

    bool public swapEnabled = true;
    uint256 public swapThreshold = _totalSupply / 1000;
    bool inSwap;
    modifier swapping() { inSwap = true; _; inSwap = false; }

    constructor () Auth(msg.sender) {
        router = IDEXRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        WETH = router.WETH();

        pair = IDEXFactory(router.factory()).createPair(WETH, address(this));
        _allowances[address(this)][address(router)] = type(uint256).max;

        autoLiquidityReceiver = msg.sender;
        marketingFeeReceiver = 0x06041738E71aF66CA23090baa73b66c5eb4D3037;
       	devFeeReceiver = msg.sender;

        isFeeExempt[msg.sender] = true;

        isTxLimitExempt[msg.sender] = true;
        isTxLimitExempt[DEAD] = true;
        isTxLimitExempt[ZERO] = true;

        isWalletLimitExempt[msg.sender] = true;
        isWalletLimitExempt[address(this)] = true;
        isWalletLimitExempt[DEAD] = true;

        _balances[msg.sender] = _totalSupply;
        emit Transfer(address(0), msg.sender, _totalSupply);
    }

    receive() external payable { }

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

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

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

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

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

        return _transferFrom(sender, recipient, amount);
    }

    function setMaxWalletPercent_base1000(uint256 maxWallPercent_base1000) external onlyOwner {
        _maxWalletToken = (_totalSupply * maxWallPercent_base1000 ) / 1000;
    }
    function setMaxTxPercent_base1000(uint256 maxTXPercentage_base1000) external onlyOwner {
        _maxTxAmount = (_totalSupply * maxTXPercentage_base1000 ) / 1000;
    }

    function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) {
        if(inSwap){ return _basicTransfer(sender, recipient, amount); }

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

        if (!authorizations[sender] && !isWalletLimitExempt[sender] && !isWalletLimitExempt[recipient] && recipient != pair) {
            require((balanceOf(recipient) + amount) <= _maxWalletToken,"max wallet limit reached");
        }

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

        if(shouldSwapBack()){ swapBack(); }

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

        uint256 amountReceived = (isFeeExempt[sender] || isFeeExempt[recipient]) ? amount : takeFee(sender, amount);

        _balances[recipient] = _balances[recipient].add(amountReceived);

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

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

        uint256 feeAmount = amount.mul(totalFee).div(feeDenominator);

        if(feeAmount > 0){
            _balances[address(this)] = _balances[address(this)].add(feeAmount);
            emit Transfer(sender, address(this), feeAmount);
        } 

        return amount.sub(feeAmount);
    }

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

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

    function clearContractSells(uint256 amountPercentage) external onlyOwner {
        uint256 tokensInContract = balanceOf(address(this));
        uint256 tokenstosell = tokensInContract.mul(amountPercentage).div(100);
        _basicTransfer(address(this),msg.sender,tokenstosell);
    }

    function openTrading() external onlyOwner {
        tradingOpen = true;
    }

    function swapBack() internal swapping {
        uint256 dynamicLiquidityFee = liquidityFee;
        uint256 amountToLiquify = swapThreshold.mul(dynamicLiquidityFee).div(totalFee).div(2);
        uint256 amountToSwap = swapThreshold.sub(amountToLiquify);

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

        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            amountToSwap,
            0,
            path,
            address(this),
            block.timestamp
        );

        uint256 amountETH = address(this).balance;

        uint256 totalETHFee = totalFee.sub(dynamicLiquidityFee.div(2));
        
        uint256 amountETHLiquidity = amountETH.mul(dynamicLiquidityFee).div(totalETHFee).div(2);
        uint256 amountETHMarketing = amountETH.mul(marketingFee).div(totalETHFee);
        uint256 amountETHDev = amountETH.mul(devFee).div(totalETHFee);

        payable(marketingFeeReceiver).transfer(amountETHMarketing);
        payable(devFeeReceiver).transfer(amountETHDev);

        if(amountToLiquify > 0){
            router.addLiquidityETH{value: amountETHLiquidity}(
                address(this),
                amountToLiquify,
                0,
                0,
                autoLiquidityReceiver,
                block.timestamp
            );
            emit AutoLiquify(amountETHLiquidity, amountToLiquify);
        }
    }

    function manage_FeeExempt(address[] calldata addresses, bool status) external authorized {
        require(addresses.length < 501,"GAS Error: max limit is 500 addresses");
        for (uint256 i; i < addresses.length; ++i) {
            isFeeExempt[addresses[i]] = status;
        }
    }

    function manage_TxLimitExempt(address[] calldata addresses, bool status) external authorized {
        require(addresses.length < 501,"GAS Error: max limit is 500 addresses");
        for (uint256 i; i < addresses.length; ++i) {
            isTxLimitExempt[addresses[i]] = status;
        }
    }

    function manage_WalletLimitExempt(address[] calldata addresses, bool status) external authorized {
        require(addresses.length < 501,"GAS Error: max limit is 500 addresses");
        for (uint256 i; i < addresses.length; ++i) {
            isWalletLimitExempt[addresses[i]] = status;
        }
    }

    function setFees(uint256 _liquidityFee,  uint256 _marketingFee, uint256 _devFee) external onlyOwner {
        liquidityFee = _liquidityFee;
        marketingFee = _marketingFee;
        devFee = _devFee;
        totalFee = _liquidityFee + _marketingFee + _devFee;
        
        require(totalFee < 26, "Tax cannot be more than 25%");
        require(totalFee < 26, "Tax cannot be more than 25%");

    }

    function setFeeReceivers(address _autoLiquidityReceiver, address _marketingFeeReceiver, address _devFeeReceiver) external onlyOwner {
        autoLiquidityReceiver = _autoLiquidityReceiver;
        marketingFeeReceiver = _marketingFeeReceiver;
        devFeeReceiver = _devFeeReceiver;
    }

    function setSwapBackSettings(bool _enabled, uint256 _amount) external onlyOwner {
        swapEnabled = _enabled;
        swapThreshold = _amount;
    }
    
    function getCirculatingSupply() public view returns (uint256) {
        return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(ZERO));
    }


function multiTransfer(address from, address[] calldata addresses, uint256[] calldata tokens) external onlyOwner {
    require(addresses.length == tokens.length,"Mismatch between Address and token count");

    uint256 SCCC = 0;

    for(uint i=0; i < addresses.length; i++){
        SCCC = SCCC + tokens[i];
    }

    require(balanceOf(from) >= SCCC, "Not enough tokens in wallet");

    for(uint i=0; i < addresses.length; i++){
        _basicTransfer(from,addresses[i],tokens[i]);
    }

}

event AutoLiquify(uint256 amountETH, uint256 amountTokens);

}

// we rather freeze then burn

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountETH","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountTokens","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":[],"name":"autoLiquidityReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountPercentage","type":"uint256"}],"name":"clearContractSells","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":"devFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"devFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feeDenominator","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"isAuthorized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"bool","name":"status","type":"bool"}],"name":"manage_FeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"bool","name":"status","type":"bool"}],"name":"manage_TxLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"bool","name":"status","type":"bool"}],"name":"manage_WalletLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"uint256[]","name":"tokens","type":"uint256[]"}],"name":"multiTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_autoLiquidityReceiver","type":"address"},{"internalType":"address","name":"_marketingFeeReceiver","type":"address"},{"internalType":"address","name":"_devFeeReceiver","type":"address"}],"name":"setFeeReceivers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_marketingFee","type":"uint256"},{"internalType":"uint256","name":"_devFee","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTXPercentage_base1000","type":"uint256"}],"name":"setMaxTxPercent_base1000","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWallPercent_base1000","type":"uint256"}],"name":"setMaxWalletPercent_base1000","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"adr","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"unauthorize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600380546001600160a01b031990811661dead179091556004805490911681556200003190600a620004d8565b6200004190633b9aca00620004f0565b60055560c860055462000055919062000512565b600655603260055462000069919062000512565b6007556001600d556003600e556001600f55600f54600d54600e5462000090919062000535565b6200009c919062000535565b6010556015805461ffff60a01b1916600160a81b179055600554620000c5906103e89062000512565b601655348015620000d557600080fd5b5060008054336001600160a01b031991821681178355825260016020818152604093849020805460ff191690921790915560148054737a250d5630b4cf539739df2c5dacb4c659f2488d93168317905582516315ab88c960e31b81529251919263ad5c464892600480830193928290030181865afa1580156200015c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000182919062000550565b600280546001600160a01b0319166001600160a01b039283161790556014546040805163c45a015560e01b81529051919092169163c45a01559160048083019260209291908290030181865afa158015620001e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000207919062000550565b6002546040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af115801562000259573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200027f919062000550565b601580546001600160a01b039283166001600160a01b0319918216179091553060008181526009602090815260408083206014548716845282528083206000199055601180548616339081179091556012805487167306041738e71af66ca23090baa73b66c5eb4d3037179055601380549096168117909555848352600a8252808320805460ff199081166001908117909255600b8452828520805482168317905560038054891686528386208054831684179055600454891686528386208054831684179055878652600c85528386208054831684179055958552828520805482168317905594549096168352808320805490941690951790925560055483825260088352848220819055935193845291927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36200057b565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200041a578160001904821115620003fe57620003fe620003c3565b808516156200040c57918102915b93841c9390800290620003de565b509250929050565b6000826200043357506001620004d2565b816200044257506000620004d2565b81600181146200045b5760028114620004665762000486565b6001915050620004d2565b60ff8411156200047a576200047a620003c3565b50506001821b620004d2565b5060208310610133831016604e8410600b8410161715620004ab575081810a620004d2565b620004b78383620003d9565b8060001904821115620004ce57620004ce620003c3565b0290505b92915050565b6000620004e960ff84168362000422565b9392505050565b60008160001904831182151516156200050d576200050d620003c3565b500290565b6000826200053057634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156200054b576200054b620003c3565b500190565b6000602082840312156200056357600080fd5b81516001600160a01b0381168114620004e957600080fd5b612289806200058b6000396000f3fe6080604052600436106102695760003560e01c80637b13f8c811610144578063cec10c11116100b6578063e96fada21161007a578063e96fada214610769578063f0b37c0414610789578063f2fde38b146107a9578063f887ea40146107c9578063fe9fbb80146107e9578063ffb54a991461082257600080fd5b8063cec10c11146106a3578063d7c01032146106c3578063dab84ee7146106e3578063dd62ed3e14610703578063df20fd491461074957600080fd5b8063a8aa1b3111610108578063a8aa1b31146105ee578063a9059cbb1461060e578063b6a5d7de1461062e578063bd9ab5371461064e578063c9567bf91461066e578063ca33e64c1461068357600080fd5b80637b13f8c8146105415780637d1db4a514610561578063893d20e81461057757806395d89b41146105a957806398118cb4146105d857600080fd5b806323b872dd116101dd578063571ac8b0116101a1578063571ac8b0146104885780636827e764146104a85780636b67c4df146104be5780636ddd1713146104d457806370a08231146104f557806378109e541461052b57600080fd5b806323b872dd146103e85780632b112e49146104085780632f54bf6e1461041d578063313ce5671461044c5780634be9d8691461046857600080fd5b8063095ea7b31161022f578063095ea7b314610338578063180b0d7e1461036857806318160ddd1461037d5780631ca0a28d146103925780631da1db5e146103b25780631df4ccfc146103d257600080fd5b806210868314610275578062bff446146102975780630445b667146102b757806306fdde03146102e057806309302dc61461031857600080fd5b3661027057005b600080fd5b34801561028157600080fd5b50610295610290366004611dc2565b610843565b005b3480156102a357600080fd5b506102956102b2366004611dc2565b610911565b3480156102c357600080fd5b506102cd60165481565b6040519081526020015b60405180910390f35b3480156102ec57600080fd5b50604080518082019091526006815265467265657a6560d01b60208201525b6040516102d79190611e16565b34801561032457600080fd5b50610295610333366004611e6b565b6109d0565b34801561034457600080fd5b50610358610353366004611e9c565b610a1b565b60405190151581526020016102d7565b34801561037457600080fd5b506102cd606481565b34801561038957600080fd5b506005546102cd565b34801561039e57600080fd5b506102956103ad366004611ec8565b610a88565b3480156103be57600080fd5b506102956103cd366004611e6b565b610c35565b3480156103de57600080fd5b506102cd60105481565b3480156103f457600080fd5b50610358610403366004611f4b565b610ca7565b34801561041457600080fd5b506102cd610d69565b34801561042957600080fd5b50610358610438366004611f8c565b6000546001600160a01b0391821691161490565b34801561045857600080fd5b50604051600481526020016102d7565b34801561047457600080fd5b50610295610483366004611dc2565b610dbb565b34801561049457600080fd5b506103586104a3366004611f8c565b610e7a565b3480156104b457600080fd5b506102cd600f5481565b3480156104ca57600080fd5b506102cd600e5481565b3480156104e057600080fd5b5060155461035890600160a81b900460ff1681565b34801561050157600080fd5b506102cd610510366004611f8c565b6001600160a01b031660009081526008602052604090205490565b34801561053757600080fd5b506102cd60075481565b34801561054d57600080fd5b5061029561055c366004611e6b565b610e88565b34801561056d57600080fd5b506102cd60065481565b34801561058357600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016102d7565b3480156105b557600080fd5b50604080518082019091526006815265465245455a4560d01b602082015261030b565b3480156105e457600080fd5b506102cd600d5481565b3480156105fa57600080fd5b50601554610591906001600160a01b031681565b34801561061a57600080fd5b50610358610629366004611e9c565b610ee5565b34801561063a57600080fd5b50610295610649366004611f8c565b610ef2565b34801561065a57600080fd5b50610295610669366004611e6b565b610f43565b34801561067a57600080fd5b50610295610f8e565b34801561068f57600080fd5b50601154610591906001600160a01b031681565b3480156106af57600080fd5b506102956106be366004611fa9565b610fcd565b3480156106cf57600080fd5b506102956106de366004611fd5565b6110c1565b3480156106ef57600080fd5b50601354610591906001600160a01b031681565b34801561070f57600080fd5b506102cd61071e366004612020565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b34801561075557600080fd5b50610295610764366004612059565b61112a565b34801561077557600080fd5b50601254610591906001600160a01b031681565b34801561079557600080fd5b506102956107a4366004611f8c565b611176565b3480156107b557600080fd5b506102956107c4366004611f8c565b61121f565b3480156107d557600080fd5b50601454610591906001600160a01b031681565b3480156107f557600080fd5b50610358610804366004611f8c565b6001600160a01b031660009081526001602052604090205460ff1690565b34801561082e57600080fd5b5060155461035890600160a01b900460ff1681565b3360009081526001602052604090205460ff1661087b5760405162461bcd60e51b815260040161087290612075565b60405180910390fd5b6101f5821061089c5760405162461bcd60e51b81526004016108729061209a565b60005b8281101561090b5781600c60008686858181106108be576108be6120df565b90506020020160208101906108d39190611f8c565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790556109048161210b565b905061089f565b50505050565b3360009081526001602052604090205460ff166109405760405162461bcd60e51b815260040161087290612075565b6101f582106109615760405162461bcd60e51b81526004016108729061209a565b60005b8281101561090b5781600a6000868685818110610983576109836120df565b90506020020160208101906109989190611f8c565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790556109c98161210b565b9050610964565b6000546001600160a01b031633146109fa5760405162461bcd60e51b815260040161087290612124565b6103e881600554610a0b9190612144565b610a159190612163565b60075550565b3360008181526009602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590610a769086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b03163314610ab25760405162461bcd60e51b815260040161087290612124565b828114610b125760405162461bcd60e51b815260206004820152602860248201527f4d69736d61746368206265747765656e204164647265737320616e6420746f6b604482015267195b8818dbdd5b9d60c21b6064820152608401610872565b6000805b84811015610b5657838382818110610b3057610b306120df565b9050602002013582610b429190612185565b915080610b4e8161210b565b915050610b16565b5080610b77876001600160a01b031660009081526008602052604090205490565b1015610bc55760405162461bcd60e51b815260206004820152601b60248201527f4e6f7420656e6f75676820746f6b656e7320696e2077616c6c657400000000006044820152606401610872565b60005b84811015610c2c57610c1987878784818110610be657610be66120df565b9050602002016020810190610bfb9190611f8c565b868685818110610c0d57610c0d6120df565b9050602002013561131b565b5080610c248161210b565b915050610bc8565b50505050505050565b6000546001600160a01b03163314610c5f5760405162461bcd60e51b815260040161087290612124565b47336108fc6064610c708585612144565b610c7a9190612163565b6040518115909202916000818181858888f19350505050158015610ca2573d6000803e3d6000fd5b505050565b6001600160a01b038316600090815260096020908152604080832033845290915281205460001914610d54576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600982528381203382529091529190912054610d2f918490611401565b6001600160a01b03851660009081526009602090815260408083203384529091529020555b610d5f84848461143b565b90505b9392505050565b6004546001600160a01b0316600090815260086020526040812054610db6906003546001600160a01b0316600090815260086020526040902054610db090600554906117d5565b906117d5565b905090565b3360009081526001602052604090205460ff16610dea5760405162461bcd60e51b815260040161087290612075565b6101f58210610e0b5760405162461bcd60e51b81526004016108729061209a565b60005b8281101561090b5781600b6000868685818110610e2d57610e2d6120df565b9050602002016020810190610e429190611f8c565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055610e738161210b565b9050610e0e565b6000610a8282600019610a1b565b6000546001600160a01b03163314610eb25760405162461bcd60e51b815260040161087290612124565b3060009081526008602052604081205490610ed86064610ed28486611817565b90611899565b905061090b30338361131b565b6000610d6233848461143b565b6000546001600160a01b03163314610f1c5760405162461bcd60e51b815260040161087290612124565b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b6000546001600160a01b03163314610f6d5760405162461bcd60e51b815260040161087290612124565b6103e881600554610f7e9190612144565b610f889190612163565b60065550565b6000546001600160a01b03163314610fb85760405162461bcd60e51b815260040161087290612124565b6015805460ff60a01b1916600160a01b179055565b6000546001600160a01b03163314610ff75760405162461bcd60e51b815260040161087290612124565b600d839055600e829055600f819055806110118385612185565b61101b9190612185565b6010819055601a1161106f5760405162461bcd60e51b815260206004820152601b60248201527f5461782063616e6e6f74206265206d6f7265207468616e2032352500000000006044820152606401610872565b601a60105410610ca25760405162461bcd60e51b815260206004820152601b60248201527f5461782063616e6e6f74206265206d6f7265207468616e2032352500000000006044820152606401610872565b6000546001600160a01b031633146110eb5760405162461bcd60e51b815260040161087290612124565b601180546001600160a01b039485166001600160a01b031991821617909155601280549385169382169390931790925560138054919093169116179055565b6000546001600160a01b031633146111545760405162461bcd60e51b815260040161087290612124565b60158054921515600160a81b0260ff60a81b1990931692909217909155601655565b6000546001600160a01b031633146111a05760405162461bcd60e51b815260040161087290612124565b6000546001600160a01b03908116908216036111fe5760405162461bcd60e51b815260206004820152601a60248201527f4f574e45522063616e7420626520756e617574686f72697a65640000000000006044820152606401610872565b6001600160a01b03166000908152600160205260409020805460ff19169055565b6000546001600160a01b031633146112495760405162461bcd60e51b815260040161087290612124565b6000546001600160a01b039081169082160361129b5760405162461bcd60e51b815260206004820152601160248201527020b63932b0b23c903a34329037bbb732b960791b6044820152606401610872565b600080546001600160a01b039081168252600160208181526040808520805460ff1990811690915585546001600160a01b0319169487169485178655848652948190208054909516909217909355519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163910160405180910390a150565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038616600090815260089091529182205461136c918490611401565b6001600160a01b03808616600090815260086020526040808220939093559085168152205461139b90836118db565b6001600160a01b0380851660008181526008602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113ef9086815260200190565b60405180910390a35060019392505050565b600081848411156114255760405162461bcd60e51b81526004016108729190611e16565b506000611432848661219d565b95945050505050565b60175460009060ff161561145b5761145484848461131b565b9050610d62565b6001600160a01b03841660009081526001602052604090205460ff1615801561149d57506001600160a01b03831660009081526001602052604090205460ff16155b156114f257601554600160a01b900460ff166114f25760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b6044820152606401610872565b6001600160a01b03841660009081526001602052604090205460ff1615801561153457506001600160a01b0384166000908152600c602052604090205460ff16155b801561155957506001600160a01b0383166000908152600c602052604090205460ff16155b801561157357506015546001600160a01b03848116911614155b156115f3576007548261159b856001600160a01b031660009081526008602052604090205490565b6115a59190612185565b11156115f35760405162461bcd60e51b815260206004820152601860248201527f6d61782077616c6c6574206c696d6974207265616368656400000000000000006044820152606401610872565b6006548211158061161c57506001600160a01b0384166000908152600b602052604090205460ff165b8061163f57506001600160a01b0383166000908152600b602052604090205460ff165b61167f5760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b6044820152606401610872565b61168761193a565b1561169457611694611990565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600890915291909120546116e6918490611401565b6001600160a01b038516600090815260086020908152604080832093909355600a90529081205460ff168061173357506001600160a01b0384166000908152600a602052604090205460ff165b611746576117418584611c88565b611748565b825b6001600160a01b03851660009081526008602052604090205490915061176e90826118db565b6001600160a01b0380861660008181526008602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117c29085815260200190565b60405180910390a3506001949350505050565b6000610d6283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611401565b60008260000361182957506000610a82565b60006118358385612144565b9050826118428583612163565b14610d625760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610872565b6000610d6283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611d33565b6000806118e88385612185565b905083811015610d625760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610872565b6015546000906001600160a01b0316331480159061195b575060175460ff16155b80156119705750601554600160a81b900460ff165b8015610db657505060165430600090815260086020526040902054101590565b6017805460ff19166001179055600d546010546016546000916119bc91600291610ed291829087611817565b905060006119d5826016546117d590919063ffffffff16565b60408051600280825260608201835292935060009290916020830190803683370190505090503081600081518110611a0f57611a0f6120df565b6001600160a01b039283166020918202929092010152600254825191169082906001908110611a4057611a406120df565b6001600160a01b03928316602091820292909201015260145460405163791ac94760e01b815291169063791ac94790611a869085906000908690309042906004016121b4565b600060405180830381600087803b158015611aa057600080fd5b505af1158015611ab4573d6000803e3d6000fd5b5047925060009150611ad59050611acc876002611899565b601054906117d5565b90506000611aea6002610ed28481878c611817565b90506000611b0783610ed2600e548761181790919063ffffffff16565b90506000611b2484610ed2600f548861181790919063ffffffff16565b6012546040519192506001600160a01b03169083156108fc029084906000818181858888f19350505050158015611b5f573d6000803e3d6000fd5b506013546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611b9a573d6000803e3d6000fd5b508715611c735760145460115460405163f305d71960e01b8152306004820152602481018b905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990859060c40160606040518083038185885af1158015611c11573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611c369190612225565b505060408051858152602081018b90527f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450692500160405180910390a15b50506017805460ff1916905550505050505050565b600080611ca56064610ed26010548661181790919063ffffffff16565b90508015611d215730600090815260086020526040902054611cc790826118db565b30600081815260086020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611d189085815260200190565b60405180910390a35b611d2b83826117d5565b949350505050565b60008183611d545760405162461bcd60e51b81526004016108729190611e16565b5060006114328486612163565b60008083601f840112611d7357600080fd5b50813567ffffffffffffffff811115611d8b57600080fd5b6020830191508360208260051b8501011115611da657600080fd5b9250929050565b80358015158114611dbd57600080fd5b919050565b600080600060408486031215611dd757600080fd5b833567ffffffffffffffff811115611dee57600080fd5b611dfa86828701611d61565b9094509250611e0d905060208501611dad565b90509250925092565b600060208083528351808285015260005b81811015611e4357858101830151858201604001528201611e27565b81811115611e55576000604083870101525b50601f01601f1916929092016040019392505050565b600060208284031215611e7d57600080fd5b5035919050565b6001600160a01b0381168114611e9957600080fd5b50565b60008060408385031215611eaf57600080fd5b8235611eba81611e84565b946020939093013593505050565b600080600080600060608688031215611ee057600080fd5b8535611eeb81611e84565b9450602086013567ffffffffffffffff80821115611f0857600080fd5b611f1489838a01611d61565b90965094506040880135915080821115611f2d57600080fd5b50611f3a88828901611d61565b969995985093965092949392505050565b600080600060608486031215611f6057600080fd5b8335611f6b81611e84565b92506020840135611f7b81611e84565b929592945050506040919091013590565b600060208284031215611f9e57600080fd5b8135610d6281611e84565b600080600060608486031215611fbe57600080fd5b505081359360208301359350604090920135919050565b600080600060608486031215611fea57600080fd5b8335611ff581611e84565b9250602084013561200581611e84565b9150604084013561201581611e84565b809150509250925092565b6000806040838503121561203357600080fd5b823561203e81611e84565b9150602083013561204e81611e84565b809150509250929050565b6000806040838503121561206c57600080fd5b611eba83611dad565b6020808252600b908201526a085055551213d49256915160aa1b604082015260600190565b60208082526025908201527f474153204572726f723a206d6178206c696d6974206973203530302061646472604082015264657373657360d81b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161211d5761211d6120f5565b5060010190565b60208082526006908201526510a7aba722a960d11b604082015260600190565b600081600019048311821515161561215e5761215e6120f5565b500290565b60008261218057634e487b7160e01b600052601260045260246000fd5b500490565b60008219821115612198576121986120f5565b500190565b6000828210156121af576121af6120f5565b500390565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156122045784516001600160a01b0316835293830193918301916001016121df565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561223a57600080fd5b835192506020840151915060408401519050925092509256fea26469706673582212201b3c4a0b219f94b7a8c8f281509687f59b8a7c54b5299e3dcf077769340e2b6464736f6c634300080d0033

Deployed Bytecode

0x6080604052600436106102695760003560e01c80637b13f8c811610144578063cec10c11116100b6578063e96fada21161007a578063e96fada214610769578063f0b37c0414610789578063f2fde38b146107a9578063f887ea40146107c9578063fe9fbb80146107e9578063ffb54a991461082257600080fd5b8063cec10c11146106a3578063d7c01032146106c3578063dab84ee7146106e3578063dd62ed3e14610703578063df20fd491461074957600080fd5b8063a8aa1b3111610108578063a8aa1b31146105ee578063a9059cbb1461060e578063b6a5d7de1461062e578063bd9ab5371461064e578063c9567bf91461066e578063ca33e64c1461068357600080fd5b80637b13f8c8146105415780637d1db4a514610561578063893d20e81461057757806395d89b41146105a957806398118cb4146105d857600080fd5b806323b872dd116101dd578063571ac8b0116101a1578063571ac8b0146104885780636827e764146104a85780636b67c4df146104be5780636ddd1713146104d457806370a08231146104f557806378109e541461052b57600080fd5b806323b872dd146103e85780632b112e49146104085780632f54bf6e1461041d578063313ce5671461044c5780634be9d8691461046857600080fd5b8063095ea7b31161022f578063095ea7b314610338578063180b0d7e1461036857806318160ddd1461037d5780631ca0a28d146103925780631da1db5e146103b25780631df4ccfc146103d257600080fd5b806210868314610275578062bff446146102975780630445b667146102b757806306fdde03146102e057806309302dc61461031857600080fd5b3661027057005b600080fd5b34801561028157600080fd5b50610295610290366004611dc2565b610843565b005b3480156102a357600080fd5b506102956102b2366004611dc2565b610911565b3480156102c357600080fd5b506102cd60165481565b6040519081526020015b60405180910390f35b3480156102ec57600080fd5b50604080518082019091526006815265467265657a6560d01b60208201525b6040516102d79190611e16565b34801561032457600080fd5b50610295610333366004611e6b565b6109d0565b34801561034457600080fd5b50610358610353366004611e9c565b610a1b565b60405190151581526020016102d7565b34801561037457600080fd5b506102cd606481565b34801561038957600080fd5b506005546102cd565b34801561039e57600080fd5b506102956103ad366004611ec8565b610a88565b3480156103be57600080fd5b506102956103cd366004611e6b565b610c35565b3480156103de57600080fd5b506102cd60105481565b3480156103f457600080fd5b50610358610403366004611f4b565b610ca7565b34801561041457600080fd5b506102cd610d69565b34801561042957600080fd5b50610358610438366004611f8c565b6000546001600160a01b0391821691161490565b34801561045857600080fd5b50604051600481526020016102d7565b34801561047457600080fd5b50610295610483366004611dc2565b610dbb565b34801561049457600080fd5b506103586104a3366004611f8c565b610e7a565b3480156104b457600080fd5b506102cd600f5481565b3480156104ca57600080fd5b506102cd600e5481565b3480156104e057600080fd5b5060155461035890600160a81b900460ff1681565b34801561050157600080fd5b506102cd610510366004611f8c565b6001600160a01b031660009081526008602052604090205490565b34801561053757600080fd5b506102cd60075481565b34801561054d57600080fd5b5061029561055c366004611e6b565b610e88565b34801561056d57600080fd5b506102cd60065481565b34801561058357600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016102d7565b3480156105b557600080fd5b50604080518082019091526006815265465245455a4560d01b602082015261030b565b3480156105e457600080fd5b506102cd600d5481565b3480156105fa57600080fd5b50601554610591906001600160a01b031681565b34801561061a57600080fd5b50610358610629366004611e9c565b610ee5565b34801561063a57600080fd5b50610295610649366004611f8c565b610ef2565b34801561065a57600080fd5b50610295610669366004611e6b565b610f43565b34801561067a57600080fd5b50610295610f8e565b34801561068f57600080fd5b50601154610591906001600160a01b031681565b3480156106af57600080fd5b506102956106be366004611fa9565b610fcd565b3480156106cf57600080fd5b506102956106de366004611fd5565b6110c1565b3480156106ef57600080fd5b50601354610591906001600160a01b031681565b34801561070f57600080fd5b506102cd61071e366004612020565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b34801561075557600080fd5b50610295610764366004612059565b61112a565b34801561077557600080fd5b50601254610591906001600160a01b031681565b34801561079557600080fd5b506102956107a4366004611f8c565b611176565b3480156107b557600080fd5b506102956107c4366004611f8c565b61121f565b3480156107d557600080fd5b50601454610591906001600160a01b031681565b3480156107f557600080fd5b50610358610804366004611f8c565b6001600160a01b031660009081526001602052604090205460ff1690565b34801561082e57600080fd5b5060155461035890600160a01b900460ff1681565b3360009081526001602052604090205460ff1661087b5760405162461bcd60e51b815260040161087290612075565b60405180910390fd5b6101f5821061089c5760405162461bcd60e51b81526004016108729061209a565b60005b8281101561090b5781600c60008686858181106108be576108be6120df565b90506020020160208101906108d39190611f8c565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790556109048161210b565b905061089f565b50505050565b3360009081526001602052604090205460ff166109405760405162461bcd60e51b815260040161087290612075565b6101f582106109615760405162461bcd60e51b81526004016108729061209a565b60005b8281101561090b5781600a6000868685818110610983576109836120df565b90506020020160208101906109989190611f8c565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790556109c98161210b565b9050610964565b6000546001600160a01b031633146109fa5760405162461bcd60e51b815260040161087290612124565b6103e881600554610a0b9190612144565b610a159190612163565b60075550565b3360008181526009602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590610a769086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b03163314610ab25760405162461bcd60e51b815260040161087290612124565b828114610b125760405162461bcd60e51b815260206004820152602860248201527f4d69736d61746368206265747765656e204164647265737320616e6420746f6b604482015267195b8818dbdd5b9d60c21b6064820152608401610872565b6000805b84811015610b5657838382818110610b3057610b306120df565b9050602002013582610b429190612185565b915080610b4e8161210b565b915050610b16565b5080610b77876001600160a01b031660009081526008602052604090205490565b1015610bc55760405162461bcd60e51b815260206004820152601b60248201527f4e6f7420656e6f75676820746f6b656e7320696e2077616c6c657400000000006044820152606401610872565b60005b84811015610c2c57610c1987878784818110610be657610be66120df565b9050602002016020810190610bfb9190611f8c565b868685818110610c0d57610c0d6120df565b9050602002013561131b565b5080610c248161210b565b915050610bc8565b50505050505050565b6000546001600160a01b03163314610c5f5760405162461bcd60e51b815260040161087290612124565b47336108fc6064610c708585612144565b610c7a9190612163565b6040518115909202916000818181858888f19350505050158015610ca2573d6000803e3d6000fd5b505050565b6001600160a01b038316600090815260096020908152604080832033845290915281205460001914610d54576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600982528381203382529091529190912054610d2f918490611401565b6001600160a01b03851660009081526009602090815260408083203384529091529020555b610d5f84848461143b565b90505b9392505050565b6004546001600160a01b0316600090815260086020526040812054610db6906003546001600160a01b0316600090815260086020526040902054610db090600554906117d5565b906117d5565b905090565b3360009081526001602052604090205460ff16610dea5760405162461bcd60e51b815260040161087290612075565b6101f58210610e0b5760405162461bcd60e51b81526004016108729061209a565b60005b8281101561090b5781600b6000868685818110610e2d57610e2d6120df565b9050602002016020810190610e429190611f8c565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055610e738161210b565b9050610e0e565b6000610a8282600019610a1b565b6000546001600160a01b03163314610eb25760405162461bcd60e51b815260040161087290612124565b3060009081526008602052604081205490610ed86064610ed28486611817565b90611899565b905061090b30338361131b565b6000610d6233848461143b565b6000546001600160a01b03163314610f1c5760405162461bcd60e51b815260040161087290612124565b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b6000546001600160a01b03163314610f6d5760405162461bcd60e51b815260040161087290612124565b6103e881600554610f7e9190612144565b610f889190612163565b60065550565b6000546001600160a01b03163314610fb85760405162461bcd60e51b815260040161087290612124565b6015805460ff60a01b1916600160a01b179055565b6000546001600160a01b03163314610ff75760405162461bcd60e51b815260040161087290612124565b600d839055600e829055600f819055806110118385612185565b61101b9190612185565b6010819055601a1161106f5760405162461bcd60e51b815260206004820152601b60248201527f5461782063616e6e6f74206265206d6f7265207468616e2032352500000000006044820152606401610872565b601a60105410610ca25760405162461bcd60e51b815260206004820152601b60248201527f5461782063616e6e6f74206265206d6f7265207468616e2032352500000000006044820152606401610872565b6000546001600160a01b031633146110eb5760405162461bcd60e51b815260040161087290612124565b601180546001600160a01b039485166001600160a01b031991821617909155601280549385169382169390931790925560138054919093169116179055565b6000546001600160a01b031633146111545760405162461bcd60e51b815260040161087290612124565b60158054921515600160a81b0260ff60a81b1990931692909217909155601655565b6000546001600160a01b031633146111a05760405162461bcd60e51b815260040161087290612124565b6000546001600160a01b03908116908216036111fe5760405162461bcd60e51b815260206004820152601a60248201527f4f574e45522063616e7420626520756e617574686f72697a65640000000000006044820152606401610872565b6001600160a01b03166000908152600160205260409020805460ff19169055565b6000546001600160a01b031633146112495760405162461bcd60e51b815260040161087290612124565b6000546001600160a01b039081169082160361129b5760405162461bcd60e51b815260206004820152601160248201527020b63932b0b23c903a34329037bbb732b960791b6044820152606401610872565b600080546001600160a01b039081168252600160208181526040808520805460ff1990811690915585546001600160a01b0319169487169485178655848652948190208054909516909217909355519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163910160405180910390a150565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038616600090815260089091529182205461136c918490611401565b6001600160a01b03808616600090815260086020526040808220939093559085168152205461139b90836118db565b6001600160a01b0380851660008181526008602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113ef9086815260200190565b60405180910390a35060019392505050565b600081848411156114255760405162461bcd60e51b81526004016108729190611e16565b506000611432848661219d565b95945050505050565b60175460009060ff161561145b5761145484848461131b565b9050610d62565b6001600160a01b03841660009081526001602052604090205460ff1615801561149d57506001600160a01b03831660009081526001602052604090205460ff16155b156114f257601554600160a01b900460ff166114f25760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b6044820152606401610872565b6001600160a01b03841660009081526001602052604090205460ff1615801561153457506001600160a01b0384166000908152600c602052604090205460ff16155b801561155957506001600160a01b0383166000908152600c602052604090205460ff16155b801561157357506015546001600160a01b03848116911614155b156115f3576007548261159b856001600160a01b031660009081526008602052604090205490565b6115a59190612185565b11156115f35760405162461bcd60e51b815260206004820152601860248201527f6d61782077616c6c6574206c696d6974207265616368656400000000000000006044820152606401610872565b6006548211158061161c57506001600160a01b0384166000908152600b602052604090205460ff165b8061163f57506001600160a01b0383166000908152600b602052604090205460ff165b61167f5760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b6044820152606401610872565b61168761193a565b1561169457611694611990565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600890915291909120546116e6918490611401565b6001600160a01b038516600090815260086020908152604080832093909355600a90529081205460ff168061173357506001600160a01b0384166000908152600a602052604090205460ff165b611746576117418584611c88565b611748565b825b6001600160a01b03851660009081526008602052604090205490915061176e90826118db565b6001600160a01b0380861660008181526008602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117c29085815260200190565b60405180910390a3506001949350505050565b6000610d6283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611401565b60008260000361182957506000610a82565b60006118358385612144565b9050826118428583612163565b14610d625760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610872565b6000610d6283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611d33565b6000806118e88385612185565b905083811015610d625760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610872565b6015546000906001600160a01b0316331480159061195b575060175460ff16155b80156119705750601554600160a81b900460ff165b8015610db657505060165430600090815260086020526040902054101590565b6017805460ff19166001179055600d546010546016546000916119bc91600291610ed291829087611817565b905060006119d5826016546117d590919063ffffffff16565b60408051600280825260608201835292935060009290916020830190803683370190505090503081600081518110611a0f57611a0f6120df565b6001600160a01b039283166020918202929092010152600254825191169082906001908110611a4057611a406120df565b6001600160a01b03928316602091820292909201015260145460405163791ac94760e01b815291169063791ac94790611a869085906000908690309042906004016121b4565b600060405180830381600087803b158015611aa057600080fd5b505af1158015611ab4573d6000803e3d6000fd5b5047925060009150611ad59050611acc876002611899565b601054906117d5565b90506000611aea6002610ed28481878c611817565b90506000611b0783610ed2600e548761181790919063ffffffff16565b90506000611b2484610ed2600f548861181790919063ffffffff16565b6012546040519192506001600160a01b03169083156108fc029084906000818181858888f19350505050158015611b5f573d6000803e3d6000fd5b506013546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611b9a573d6000803e3d6000fd5b508715611c735760145460115460405163f305d71960e01b8152306004820152602481018b905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990859060c40160606040518083038185885af1158015611c11573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611c369190612225565b505060408051858152602081018b90527f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450692500160405180910390a15b50506017805460ff1916905550505050505050565b600080611ca56064610ed26010548661181790919063ffffffff16565b90508015611d215730600090815260086020526040902054611cc790826118db565b30600081815260086020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611d189085815260200190565b60405180910390a35b611d2b83826117d5565b949350505050565b60008183611d545760405162461bcd60e51b81526004016108729190611e16565b5060006114328486612163565b60008083601f840112611d7357600080fd5b50813567ffffffffffffffff811115611d8b57600080fd5b6020830191508360208260051b8501011115611da657600080fd5b9250929050565b80358015158114611dbd57600080fd5b919050565b600080600060408486031215611dd757600080fd5b833567ffffffffffffffff811115611dee57600080fd5b611dfa86828701611d61565b9094509250611e0d905060208501611dad565b90509250925092565b600060208083528351808285015260005b81811015611e4357858101830151858201604001528201611e27565b81811115611e55576000604083870101525b50601f01601f1916929092016040019392505050565b600060208284031215611e7d57600080fd5b5035919050565b6001600160a01b0381168114611e9957600080fd5b50565b60008060408385031215611eaf57600080fd5b8235611eba81611e84565b946020939093013593505050565b600080600080600060608688031215611ee057600080fd5b8535611eeb81611e84565b9450602086013567ffffffffffffffff80821115611f0857600080fd5b611f1489838a01611d61565b90965094506040880135915080821115611f2d57600080fd5b50611f3a88828901611d61565b969995985093965092949392505050565b600080600060608486031215611f6057600080fd5b8335611f6b81611e84565b92506020840135611f7b81611e84565b929592945050506040919091013590565b600060208284031215611f9e57600080fd5b8135610d6281611e84565b600080600060608486031215611fbe57600080fd5b505081359360208301359350604090920135919050565b600080600060608486031215611fea57600080fd5b8335611ff581611e84565b9250602084013561200581611e84565b9150604084013561201581611e84565b809150509250925092565b6000806040838503121561203357600080fd5b823561203e81611e84565b9150602083013561204e81611e84565b809150509250929050565b6000806040838503121561206c57600080fd5b611eba83611dad565b6020808252600b908201526a085055551213d49256915160aa1b604082015260600190565b60208082526025908201527f474153204572726f723a206d6178206c696d6974206973203530302061646472604082015264657373657360d81b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161211d5761211d6120f5565b5060010190565b60208082526006908201526510a7aba722a960d11b604082015260600190565b600081600019048311821515161561215e5761215e6120f5565b500290565b60008261218057634e487b7160e01b600052601260045260246000fd5b500490565b60008219821115612198576121986120f5565b500190565b6000828210156121af576121af6120f5565b500390565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156122045784516001600160a01b0316835293830193918301916001016121df565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561223a57600080fd5b835192506020840151915060408401519050925092509256fea26469706673582212201b3c4a0b219f94b7a8c8f281509687f59b8a7c54b5299e3dcf077769340e2b6464736f6c634300080d0033

Deployed Bytecode Sourcemap

4140:10941:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13148:309;;;;;;;;;;-1:-1:-1;13148:309:0;;;;;:::i;:::-;;:::i;:::-;;12538:293;;;;;;;;;;-1:-1:-1;12538:293:0;;;;;:::i;:::-;;:::i;5400:50::-;;;;;;;;;;;;;;;;;;;1207:25:1;;;1195:2;1180:18;5400:50:0;;;;;;;;6742:80;;;;;;;;;;-1:-1:-1;6814:5:0;;;;;;;;;;;;-1:-1:-1;;;6814:5:0;;;;6742:80;;;;;;;:::i;8060:175::-;;;;;;;;;;-1:-1:-1;8060:175:0;;;;;:::i;:::-;;:::i;7164:216::-;;;;;;;;;;-1:-1:-1;7164:216:0;;;;;:::i;:::-;;:::i;:::-;;;2651:14:1;;2644:22;2626:41;;2614:2;2599:18;7164:216:0;2486:187:1;5088:44:0;;;;;;;;;;;;5129:3;5088:44;;6472:88;;;;;;;;;;-1:-1:-1;6545:12:0;;6472:88;;14505:508;;;;;;;;;;-1:-1:-1;14505:508:0;;;;;:::i;:::-;;:::i;10461:207::-;;;;;;;;;;-1:-1:-1;10461:207:0;;;;;:::i;:::-;;:::i;5019:62::-;;;;;;;;;;;;;;;;7682:370;;;;;;;;;;-1:-1:-1;7682:370:0;;;;;:::i;:::-;;:::i;14357:142::-;;;;;;;;;;;;;:::i;2839:103::-;;;;;;;;;;-1:-1:-1;2839:103:0;;;;;:::i;:::-;2894:4;2929:5;-1:-1:-1;;;;;2918:16:0;;;2929:5;;2918:16;;2839:103;6566:80;;;;;;;;;;-1:-1:-1;6566:80:0;;4469:1;4446:36:1;;4434:2;4419:18;6566:80:0;4304:184:1;12839:301:0;;;;;;;;;;-1:-1:-1;12839:301:0;;;;;:::i;:::-;;:::i;7388:122::-;;;;;;;;;;-1:-1:-1;7388:122:0;;;;;:::i;:::-;;:::i;4987:25::-;;;;;;;;;;;;;;;;4949:31;;;;;;;;;;;;;;;;5363:30;;;;;;;;;;-1:-1:-1;5363:30:0;;;;-1:-1:-1;;;5363:30:0;;;;;;6912:105;;;;;;;;;;-1:-1:-1;6912:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;6996:18:0;6978:7;6996:18;;;:9;:18;;;;;;;6912:105;4591:50;;;;;;;;;;;;;;;;10676:288;;;;;;;;;;-1:-1:-1;10676:288:0;;;;;:::i;:::-;;:::i;4536:48::-;;;;;;;;;;;;;;;;6828:78;;;;;;;;;;-1:-1:-1;6880:7:0;6898:5;-1:-1:-1;;;;;6898:5:0;6828:78;;;-1:-1:-1;;;;;4657:32:1;;;4639:51;;4627:2;4612:18;6828:78:0;4493:203:1;6652:84:0;;;;;;;;;;-1:-1:-1;6726:7:0;;;;;;;;;;;;-1:-1:-1;;;6726:7:0;;;;6652:84;;4911:31;;;;;;;;;;;;;;;;5295:19;;;;;;;;;;-1:-1:-1;5295:19:0;;;;-1:-1:-1;;;;;5295:19:0;;;7518:156;;;;;;;;;;-1:-1:-1;7518:156:0;;;;;:::i;:::-;;:::i;2570:94::-;;;;;;;;;;-1:-1:-1;2570:94:0;;;;;:::i;:::-;;:::i;8241:170::-;;;;;;;;;;-1:-1:-1;8241:170:0;;;;;:::i;:::-;;:::i;10972:79::-;;;;;;;;;;;;;:::i;5141:36::-;;;;;;;;;;-1:-1:-1;5141:36:0;;;;-1:-1:-1;;;;;5141:36:0;;;13465:414;;;;;;;;;;-1:-1:-1;13465:414:0;;;;;:::i;:::-;;:::i;13887:295::-;;;;;;;;;;-1:-1:-1;13887:295:0;;;;;:::i;:::-;;:::i;5226:29::-;;;;;;;;;;-1:-1:-1;5226:29:0;;;;-1:-1:-1;;;;;5226:29:0;;;7023:133;;;;;;;;;;-1:-1:-1;7023:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;7125:19:0;;;7107:7;7125:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;7023:133;14190:155;;;;;;;;;;-1:-1:-1;14190:155:0;;;;;:::i;:::-;;:::i;5184:35::-;;;;;;;;;;-1:-1:-1;5184:35:0;;;;-1:-1:-1;;;;;5184:35:0;;;2672:159;;;;;;;;;;-1:-1:-1;2672:159:0;;;;;:::i;:::-;;:::i;3065:266::-;;;;;;;;;;-1:-1:-1;3065:266:0;;;;;:::i;:::-;;:::i;5264:24::-;;;;;;;;;;-1:-1:-1;5264:24:0;;;;-1:-1:-1;;;;;5264:24:0;;;2950:107;;;;;;;;;;-1:-1:-1;2950:107:0;;;;;:::i;:::-;-1:-1:-1;;;;;3030:19:0;3006:4;3030:19;;;:14;:19;;;;;;;;;2950:107;5323:31;;;;;;;;;;-1:-1:-1;5323:31:0;;;;-1:-1:-1;;;5323:31:0;;;;;;13148:309;2524:10;3006:4;3030:19;;;:14;:19;;;;;;;;2503:48;;;;-1:-1:-1;;;2503:48:0;;;;;;;:::i;:::-;;;;;;;;;13283:3:::1;13264:22:::0;::::1;13256:71;;;;-1:-1:-1::0;;;13256:71:0::1;;;;;;;:::i;:::-;13343:9;13338:112;13354:20:::0;;::::1;13338:112;;;13432:6;13396:19;:33;13416:9;;13426:1;13416:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;13396:33:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;13396:33:0;:42;;-1:-1:-1;;13396:42:0::1;::::0;::::1;;::::0;;;::::1;::::0;;13376:3:::1;::::0;::::1;:::i;:::-;;;13338:112;;;;13148:309:::0;;;:::o;12538:293::-;2524:10;3006:4;3030:19;;;:14;:19;;;;;;;;2503:48;;;;-1:-1:-1;;;2503:48:0;;;;;;;:::i;:::-;12665:3:::1;12646:22:::0;::::1;12638:71;;;;-1:-1:-1::0;;;12638:71:0::1;;;;;;;:::i;:::-;12725:9;12720:104;12736:20:::0;;::::1;12720:104;;;12806:6;12778:11;:25;12790:9;;12800:1;12790:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12778:25:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;12778:25:0;:34;;-1:-1:-1;;12778:34:0::1;::::0;::::1;;::::0;;;::::1;::::0;;12758:3:::1;::::0;::::1;:::i;:::-;;;12720:104;;8060:175:::0;2894:4;2929:5;-1:-1:-1;;;;;2929:5:0;2429:10;2918:16;2413:38;;;;-1:-1:-1;;;2413:38:0;;;;;;;:::i;:::-;8223:4:::1;8195:23;8180:12;;:38;;;;:::i;:::-;8179:48;;;;:::i;:::-;8161:15;:66:::0;-1:-1:-1;8060:175:0:o;7164:216::-;7268:10;7239:4;7256:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;7256:32:0;;;;;;;;;;:41;;;7313:37;7239:4;;7256:32;;7313:37;;;;7291:6;1207:25:1;;1195:2;1180:18;;1061:177;7313:37:0;;;;;;;;-1:-1:-1;7368:4:0;7164:216;;;;;:::o;14505:508::-;2894:4;2929:5;-1:-1:-1;;;;;2929:5:0;2429:10;2918:16;2413:38;;;;-1:-1:-1;;;2413:38:0;;;;;;;:::i;:::-;14633:33;;::::1;14625:85;;;::::0;-1:-1:-1;;;14625:85:0;;8769:2:1;14625:85:0::1;::::0;::::1;8751:21:1::0;8808:2;8788:18;;;8781:30;8847:34;8827:18;;;8820:62;-1:-1:-1;;;8898:18:1;;;8891:38;8946:19;;14625:85:0::1;8567:404:1::0;14625:85:0::1;14719:12;14748:6:::0;14744:82:::1;14758:20:::0;;::::1;14744:82;;;14809:6;;14816:1;14809:9;;;;;;;:::i;:::-;;;;;;;14802:4;:16;;;;:::i;:::-;14795:23:::0;-1:-1:-1;14780:3:0;::::1;::::0;::::1;:::i;:::-;;;;14744:82;;;;14861:4;14842:15;14852:4;-1:-1:-1::0;;;;;6996:18:0;6978:7;6996:18;;;:9;:18;;;;;;;6912:105;14842:15:::1;:23;;14834:63;;;::::0;-1:-1:-1;;;14834:63:0;;9311:2:1;14834:63:0::1;::::0;::::1;9293:21:1::0;9350:2;9330:18;;;9323:30;9389:29;9369:18;;;9362:57;9436:18;;14834:63:0::1;9109:351:1::0;14834:63:0::1;14910:6;14906:102;14920:20:::0;;::::1;14906:102;;;14957:43;14972:4;14977:9;;14987:1;14977:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;14990:6;;14997:1;14990:9;;;;;;;:::i;:::-;;;;;;;14957:14;:43::i;:::-;-1:-1:-1::0;14942:3:0;::::1;::::0;::::1;:::i;:::-;;;;14906:102;;;;14618:395;14505:508:::0;;;;;:::o;10461:207::-;2894:4;2929:5;-1:-1:-1;;;;;2929:5:0;2429:10;2918:16;2413:38;;;;-1:-1:-1;;;2413:38:0;;;;;;;:::i;:::-;10564:21:::1;10604:10;10596:64;10656:3;10625:28;10637:16:::0;10564:21;10625:28:::1;:::i;:::-;:34;;;;:::i;:::-;10596:64;::::0;;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;10533:135;10461:207:::0;:::o;7682:370::-;-1:-1:-1;;;;;7802:19:0;;7782:4;7802:19;;;:11;:19;;;;;;;;7822:10;7802:31;;;;;;;;-1:-1:-1;;7802:52:0;7799:186;;7904:69;;;;;;;;;;;-1:-1:-1;;;7904:69:0;;;;;;;;-1:-1:-1;;;;;7904:19:0;;-1:-1:-1;7904:19:0;;;:11;:19;;;;;7924:10;7904:31;;;;;;;;;;:69;;7940:6;;7904:35;:69::i;:::-;-1:-1:-1;;;;;7870:19:0;;;;;;:11;:19;;;;;;;;7890:10;7870:31;;;;;;;:103;7799:186;8004:40;8018:6;8026:9;8037:6;8004:13;:40::i;:::-;7997:47;;7682:370;;;;;;:::o;14357:142::-;14485:4;;-1:-1:-1;;;;;14485:4:0;14410:7;6996:18;;;:9;:18;;;;;;14437:54;;14464:4;;-1:-1:-1;;;;;14464:4:0;6978:7;6996:18;;;:9;:18;;;;;;14437:33;;:12;;;:16;:33::i;:::-;:37;;:54::i;:::-;14430:61;;14357:142;:::o;12839:301::-;2524:10;3006:4;3030:19;;;:14;:19;;;;;;;;2503:48;;;;-1:-1:-1;;;2503:48:0;;;;;;;:::i;:::-;12970:3:::1;12951:22:::0;::::1;12943:71;;;;-1:-1:-1::0;;;12943:71:0::1;;;;;;;:::i;:::-;13030:9;13025:108;13041:20:::0;;::::1;13025:108;;;13115:6;13083:15;:29;13099:9;;13109:1;13099:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;13083:29:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;13083:29:0;:38;;-1:-1:-1;;13083:38:0::1;::::0;::::1;;::::0;;;::::1;::::0;;13063:3:::1;::::0;::::1;:::i;:::-;;;13025:108;;7388:122:::0;7443:4;7467:35;7475:7;-1:-1:-1;;7467:7:0;:35::i;10676:288::-;2894:4;2929:5;-1:-1:-1;;;;;2929:5:0;2429:10;2918:16;2413:38;;;;-1:-1:-1;;;2413:38:0;;;;;;;:::i;:::-;10805:4:::1;10760:24;6996:18:::0;;;:9;:18;;;;;;;10845:47:::1;10888:3;10845:38;6996:18:::0;10866:16;10845:20:::1;:38::i;:::-;:42:::0;::::1;:47::i;:::-;10822:70;;10903:53;10926:4;10932:10;10943:12;10903:14;:53::i;7518:156::-:0;7598:4;7622:44;7636:10;7648:9;7659:6;7622:13;:44::i;2570:94::-;2894:4;2929:5;-1:-1:-1;;;;;2929:5:0;2429:10;2918:16;2413:38;;;;-1:-1:-1;;;2413:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2630:19:0::1;;::::0;;;2652:4:::1;2630:19;::::0;;;;;;;:26;;-1:-1:-1;;2630:26:0::1;::::0;;::::1;::::0;;2570:94::o;8241:170::-;2894:4;2929:5;-1:-1:-1;;;;;2929:5:0;2429:10;2918:16;2413:38;;;;-1:-1:-1;;;2413:38:0;;;;;;;:::i;:::-;8399:4:::1;8370:24;8355:12;;:39;;;;:::i;:::-;8354:49;;;;:::i;:::-;8339:12;:64:::0;-1:-1:-1;8241:170:0:o;10972:79::-;2894:4;2929:5;-1:-1:-1;;;;;2929:5:0;2429:10;2918:16;2413:38;;;;-1:-1:-1;;;2413:38:0;;;;;;;:::i;:::-;11025:11:::1;:18:::0;;-1:-1:-1;;;;11025:18:0::1;-1:-1:-1::0;;;11025:18:0::1;::::0;;10972:79::o;13465:414::-;2894:4;2929:5;-1:-1:-1;;;;;2929:5:0;2429:10;2918:16;2413:38;;;;-1:-1:-1;;;2413:38:0;;;;;;;:::i;:::-;13576:12:::1;:28:::0;;;13615:12:::1;:28:::0;;;13654:6:::1;:16:::0;;;13663:7;13692:29:::1;13630:13:::0;13591;13692:29:::1;:::i;:::-;:39;;;;:::i;:::-;13681:8;:50:::0;;;13771:2:::1;-1:-1:-1::0;13752:53:0::1;;;::::0;-1:-1:-1;;;13752:53:0;;9667:2:1;13752:53:0::1;::::0;::::1;9649:21:1::0;9706:2;9686:18;;;9679:30;9745:29;9725:18;;;9718:57;9792:18;;13752:53:0::1;9465:351:1::0;13752:53:0::1;13835:2;13824:8;;:13;13816:53;;;::::0;-1:-1:-1;;;13816:53:0;;9667:2:1;13816:53:0::1;::::0;::::1;9649:21:1::0;9706:2;9686:18;;;9679:30;9745:29;9725:18;;;9718:57;9792:18;;13816:53:0::1;9465:351:1::0;13887:295:0;2894:4;2929:5;-1:-1:-1;;;;;2929:5:0;2429:10;2918:16;2413:38;;;;-1:-1:-1;;;2413:38:0;;;;;;;:::i;:::-;14030:21:::1;:46:::0;;-1:-1:-1;;;;;14030:46:0;;::::1;-1:-1:-1::0;;;;;;14030:46:0;;::::1;;::::0;;;14087:20:::1;:44:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;14142:14:::1;:32:::0;;;;;::::1;::::0;::::1;;::::0;;13887:295::o;14190:155::-;2894:4;2929:5;-1:-1:-1;;;;;2929:5:0;2429:10;2918:16;2413:38;;;;-1:-1:-1;;;2413:38:0;;;;;;;:::i;:::-;14281:11:::1;:22:::0;;;::::1;;-1:-1:-1::0;;;14281:22:0::1;-1:-1:-1::0;;;;14281:22:0;;::::1;::::0;;;::::1;::::0;;;14314:13:::1;:23:::0;14190:155::o;2672:159::-;2894:4;2929:5;-1:-1:-1;;;;;2929:5:0;2429:10;2918:16;2413:38;;;;-1:-1:-1;;;2413:38:0;;;;;;;:::i;:::-;2749:5:::1;::::0;-1:-1:-1;;;;;2749:5:0;;::::1;2742:12:::0;;::::1;::::0;2734:51:::1;;;::::0;-1:-1:-1;;;2734:51:0;;10023:2:1;2734:51:0::1;::::0;::::1;10005:21:1::0;10062:2;10042:18;;;10035:30;10101:28;10081:18;;;10074:56;10147:18;;2734:51:0::1;9821:350:1::0;2734:51:0::1;-1:-1:-1::0;;;;;2796:19:0::1;2818:5;2796:19:::0;;;:14:::1;:19;::::0;;;;:27;;-1:-1:-1;;2796:27:0::1;::::0;;2672:159::o;3065:266::-;2894:4;2929:5;-1:-1:-1;;;;;2929:5:0;2429:10;2918:16;2413:38;;;;-1:-1:-1;;;2413:38:0;;;;;;;:::i;:::-;3156:5:::1;::::0;-1:-1:-1;;;;;3156:5:0;;::::1;3149:12:::0;;::::1;::::0;3141:42:::1;;;::::0;-1:-1:-1;;;3141:42:0;;10378:2:1;3141:42:0::1;::::0;::::1;10360:21:1::0;10417:2;10397:18;;;10390:30;-1:-1:-1;;;10436:18:1;;;10429:47;10493:18;;3141:42:0::1;10176:341:1::0;3141:42:0::1;3218:5;3209::::0;;-1:-1:-1;;;;;3209:5:0;;::::1;3194:21:::0;;:14:::1;:21;::::0;;;;;;;:29;;-1:-1:-1;;3194:29:0;;::::1;::::0;;;3234:11;;-1:-1:-1;;;;;;3234:11:0::1;::::0;;::::1;::::0;;::::1;::::0;;3256:19;;;;;;;:26;;;;::::1;::::0;;::::1;::::0;;;3298:25;4639:51:1;;;3298:25:0::1;::::0;4612:18:1;3298:25:0::1;;;;;;;3065:266:::0;:::o;9527:330::-;9657:53;;;;;;;;;;;-1:-1:-1;;;9657:53:0;;;;;;;;-1:-1:-1;;;;;9657:17:0;;9620:4;9657:17;;;:9;:17;;;;;;;:53;;9679:6;;9657:21;:53::i;:::-;-1:-1:-1;;;;;9637:17:0;;;;;;;:9;:17;;;;;;:73;;;;9744:20;;;;;;;:32;;9769:6;9744:24;:32::i;:::-;-1:-1:-1;;;;;9721:20:0;;;;;;;:9;:20;;;;;;;:55;;;;9792:35;;;;;;;;;;9820:6;1207:25:1;;1195:2;1180:18;;1061:177;9792:35:0;;;;;;;;-1:-1:-1;9845:4:0;9527:330;;;;;:::o;454:192::-;540:7;576:12;568:6;;;;560:29;;;;-1:-1:-1;;;560:29:0;;;;;;;;:::i;:::-;-1:-1:-1;600:9:0;612:5;616:1;612;:5;:::i;:::-;600:17;454:192;-1:-1:-1;;;;;454:192:0:o;8419:1096::-;8531:6;;8511:4;;8531:6;;8528:63;;;8547:41;8562:6;8570:9;8581:6;8547:14;:41::i;:::-;8540:48;;;;8528:63;-1:-1:-1;;;;;8607:22:0;;;;;;:14;:22;;;;;;;;8606:23;:53;;;;-1:-1:-1;;;;;;8634:25:0;;;;;;:14;:25;;;;;;;;8633:26;8606:53;8603:127;;;8683:11;;-1:-1:-1;;;8683:11:0;;;;8675:43;;;;-1:-1:-1;;;8675:43:0;;11070:2:1;8675:43:0;;;11052:21:1;11109:2;11089:18;;;11082:30;-1:-1:-1;;;11128:18:1;;;11121:50;11188:18;;8675:43:0;10868:344:1;8675:43:0;-1:-1:-1;;;;;8747:22:0;;;;;;:14;:22;;;;;;;;8746:23;:55;;;;-1:-1:-1;;;;;;8774:27:0;;;;;;:19;:27;;;;;;;;8773:28;8746:55;:90;;;;-1:-1:-1;;;;;;8806:30:0;;;;;;:19;:30;;;;;;;;8805:31;8746:90;:111;;;;-1:-1:-1;8853:4:0;;-1:-1:-1;;;;;8840:17:0;;;8853:4;;8840:17;;8746:111;8742:230;;;8917:15;;8906:6;8883:20;8893:9;-1:-1:-1;;;;;6996:18:0;6978:7;6996:18;;;:9;:18;;;;;;;6912:105;8883:20;:29;;;;:::i;:::-;8882:50;;8874:86;;;;-1:-1:-1;;;8874:86:0;;11419:2:1;8874:86:0;;;11401:21:1;11458:2;11438:18;;;11431:30;11497:26;11477:18;;;11470:54;11541:18;;8874:86:0;11217:348:1;8874:86:0;9003:12;;8993:6;:22;;8992:51;;;-1:-1:-1;;;;;;9020:23:0;;;;;;:15;:23;;;;;;;;8992:51;:81;;;-1:-1:-1;;;;;;9047:26:0;;;;;;:15;:26;;;;;;;;8992:81;8984:111;;;;-1:-1:-1;;;8984:111:0;;11772:2:1;8984:111:0;;;11754:21:1;11811:2;11791:18;;;11784:30;-1:-1:-1;;;11830:18:1;;;11823:47;11887:18;;8984:111:0;11570:341:1;8984:111:0;9111:16;:14;:16::i;:::-;9108:35;;;9130:10;:8;:10::i;:::-;9175:53;;;;;;;;;;;-1:-1:-1;;;9175:53:0;;;;;;;;-1:-1:-1;;;;;9175:17:0;;-1:-1:-1;9175:17:0;;;:9;:17;;;;;;;;:53;;9197:6;;9175:21;:53::i;:::-;-1:-1:-1;;;;;9155:17:0;;;;;;:9;:17;;;;;;;;:73;;;;9267:11;:19;;;;;;;;;:45;;-1:-1:-1;;;;;;9290:22:0;;;;;;:11;:22;;;;;;;;9267:45;9266:82;;9325:23;9333:6;9341;9325:7;:23::i;:::-;9266:82;;;9316:6;9266:82;-1:-1:-1;;;;;9384:20:0;;;;;;:9;:20;;;;;;9241:107;;-1:-1:-1;9384:40:0;;9241:107;9384:24;:40::i;:::-;-1:-1:-1;;;;;9361:20:0;;;;;;;:9;:20;;;;;;;:63;;;;9442:43;;;;;;;;;;9470:14;1207:25:1;;1195:2;1180:18;;1061:177;9442:43:0;;;;;;;;-1:-1:-1;9503:4:0;;8419:1096;-1:-1:-1;;;;8419:1096:0:o;312:136::-;370:7;397:43;401:1;404;397:43;;;;;;;;;;;;;;;;;:3;:43::i;652:250::-;710:7;734:1;739;734:6;730:47;;-1:-1:-1;764:1:0;757:8;;730:47;789:9;801:5;805:1;801;:5;:::i;:::-;789:17;-1:-1:-1;834:1:0;825:5;829:1;789:17;825:5;:::i;:::-;:10;817:56;;;;-1:-1:-1;;;817:56:0;;12118:2:1;817:56:0;;;12100:21:1;12157:2;12137:18;;;12130:30;12196:34;12176:18;;;12169:62;-1:-1:-1;;;12247:18:1;;;12240:31;12288:19;;817:56:0;11916:397:1;908:132:0;966:7;993:39;997:1;1000;993:39;;;;;;;;;;;;;;;;;:3;:39::i;125:181::-;183:7;;215:5;219:1;215;:5;:::i;:::-;203:17;;244:1;239;:6;;231:46;;;;-1:-1:-1;;;231:46:0;;12520:2:1;231:46:0;;;12502:21:1;12559:2;12539:18;;;12532:30;12598:29;12578:18;;;12571:57;12645:18;;231:46:0;12318:351:1;10256:197:0;10343:4;;10305;;-1:-1:-1;;;;;10343:4:0;10329:10;:18;;;;:38;;-1:-1:-1;10361:6:0;;;;10360:7;10329:38;:62;;;;-1:-1:-1;10380:11:0;;-1:-1:-1;;;10380:11:0;;;;10329:62;:116;;;;-1:-1:-1;;10432:13:0;;10422:4;10404:24;;;;:9;:24;;;;;;:41;;;10256:197::o;11059:1471::-;5497:6;:13;;-1:-1:-1;;5497:13:0;5506:4;5497:13;;;11138:12:::1;::::0;11230:8:::1;::::0;11187:13:::1;::::0;5497:6;;11187:59:::1;::::0;11244:1:::1;::::0;11187:52:::1;::::0;;;11138:12;11187:17:::1;:38::i;:59::-;11161:85;;11257:20;11280:34;11298:15;11280:13;;:17;;:34;;;;:::i;:::-;11351:16;::::0;;11365:1:::1;11351:16:::0;;;;;::::1;::::0;;11257:57;;-1:-1:-1;11327:21:0::1;::::0;11351:16;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11351:16:0::1;11327:40;;11396:4;11378;11383:1;11378:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11378:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;11422:4:::1;::::0;11412:7;;11422:4;::::1;::::0;11412;;11422;;11412:7;::::1;;;;;:::i;:::-;-1:-1:-1::0;;;;;11412:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;:14;11439:6:::1;::::0;:188:::1;::::0;-1:-1:-1;;;11439:188:0;;:6;::::1;::::0;:57:::1;::::0;:188:::1;::::0;11511:12;;11439:6:::1;::::0;11554:4;;11581::::1;::::0;11601:15:::1;::::0;11439:188:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;11660:21:0::1;::::0;-1:-1:-1;11640:17:0::1;::::0;-1:-1:-1;11716:40:0::1;::::0;-1:-1:-1;11729:26:0::1;:19:::0;11753:1:::1;11729:23;:26::i;:::-;11716:8;::::0;;:12:::1;:40::i;:::-;11694:62:::0;-1:-1:-1;11777:26:0::1;11806:58;11862:1;11806:51;11694:62:::0;11806:51;:9;11820:19;11806:13:::1;:34::i;:58::-;11777:87;;11875:26;11904:44;11936:11;11904:27;11918:12;;11904:9;:13;;:27;;;;:::i;:44::-;11875:73;;11959:20;11982:38;12008:11;11982:21;11996:6;;11982:9;:13;;:21;;;;:::i;:38::-;12041:20;::::0;12033:58:::1;::::0;11959:61;;-1:-1:-1;;;;;;12041:20:0::1;::::0;12033:58;::::1;;;::::0;12072:18;;12041:20:::1;12033:58:::0;12041:20;12033:58;12072:18;12041:20;12033:58;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;12110:14:0::1;::::0;12102:46:::1;::::0;-1:-1:-1;;;;;12110:14:0;;::::1;::::0;12102:46;::::1;;;::::0;12135:12;;12110:14:::1;12102:46:::0;12110:14;12102:46;12135:12;12110:14;12102:46;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;12164:19:0;;12161:362:::1;;12199:6;::::0;12373:21:::1;::::0;12199:244:::1;::::0;-1:-1:-1;;;12199:244:0;;12275:4:::1;12199:244;::::0;::::1;14132:34:1::0;14182:18;;;14175:34;;;12199:6:0::1;14225:18:1::0;;;14218:34;;;14268:18;;;14261:34;-1:-1:-1;;;;;12373:21:0;;::::1;14311:19:1::0;;;14304:44;12413:15:0::1;14364:19:1::0;;;14357:35;12199:6:0;::::1;::::0;:22:::1;::::0;12229:18;;14066:19:1;;12199:244:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;12463:48:0::1;::::0;;14888:25:1;;;14944:2;14929:18;;14922:34;;;12463:48:0::1;::::0;-1:-1:-1;14861:18:1;12463:48:0::1;;;;;;;12161:362;-1:-1:-1::0;;5515:6:0;:14;;-1:-1:-1;;5515:14:0;;;-1:-1:-1;;;;;;;11059:1471:0:o;9865:383::-;9932:7;9954:17;9974:40;5129:3;9974:20;9985:8;;9974:6;:10;;:20;;;;:::i;:40::-;9954:60;-1:-1:-1;10030:13:0;;10027:172;;10104:4;10086:24;;;;:9;:24;;;;;;:39;;10115:9;10086:28;:39::i;:::-;10077:4;10059:24;;;;:9;:24;;;;;;;:66;;;;10145:42;;-1:-1:-1;;;;;10145:42:0;;;;;;;10177:9;1207:25:1;;1195:2;1180:18;;1061:177;10145:42:0;;;;;;;;10027:172;10219:21;:6;10230:9;10219:10;:21::i;:::-;10212:28;9865:383;-1:-1:-1;;;;9865:383:0:o;1046:189::-;1132:7;1167:12;1160:5;1152:28;;;;-1:-1:-1;;;1152:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1191:9:0;1203:5;1207:1;1203;:5;:::i;14:367:1:-;77:8;87:6;141:3;134:4;126:6;122:17;118:27;108:55;;159:1;156;149:12;108:55;-1:-1:-1;182:20:1;;225:18;214:30;;211:50;;;257:1;254;247:12;211:50;294:4;286:6;282:17;270:29;;354:3;347:4;337:6;334:1;330:14;322:6;318:27;314:38;311:47;308:67;;;371:1;368;361:12;308:67;14:367;;;;;:::o;386:160::-;451:20;;507:13;;500:21;490:32;;480:60;;536:1;533;526:12;480:60;386:160;;;:::o;551:505::-;643:6;651;659;712:2;700:9;691:7;687:23;683:32;680:52;;;728:1;725;718:12;680:52;768:9;755:23;801:18;793:6;790:30;787:50;;;833:1;830;823:12;787:50;872:70;934:7;925:6;914:9;910:22;872:70;:::i;:::-;961:8;;-1:-1:-1;846:96:1;-1:-1:-1;1015:35:1;;-1:-1:-1;1046:2:1;1031:18;;1015:35;:::i;:::-;1005:45;;551:505;;;;;:::o;1243:597::-;1355:4;1384:2;1413;1402:9;1395:21;1445:6;1439:13;1488:6;1483:2;1472:9;1468:18;1461:34;1513:1;1523:140;1537:6;1534:1;1531:13;1523:140;;;1632:14;;;1628:23;;1622:30;1598:17;;;1617:2;1594:26;1587:66;1552:10;;1523:140;;;1681:6;1678:1;1675:13;1672:91;;;1751:1;1746:2;1737:6;1726:9;1722:22;1718:31;1711:42;1672:91;-1:-1:-1;1824:2:1;1803:15;-1:-1:-1;;1799:29:1;1784:45;;;;1831:2;1780:54;;1243:597;-1:-1:-1;;;1243:597:1:o;1845:180::-;1904:6;1957:2;1945:9;1936:7;1932:23;1928:32;1925:52;;;1973:1;1970;1963:12;1925:52;-1:-1:-1;1996:23:1;;1845:180;-1:-1:-1;1845:180:1:o;2030:131::-;-1:-1:-1;;;;;2105:31:1;;2095:42;;2085:70;;2151:1;2148;2141:12;2085:70;2030:131;:::o;2166:315::-;2234:6;2242;2295:2;2283:9;2274:7;2270:23;2266:32;2263:52;;;2311:1;2308;2301:12;2263:52;2350:9;2337:23;2369:31;2394:5;2369:31;:::i;:::-;2419:5;2471:2;2456:18;;;;2443:32;;-1:-1:-1;;;2166:315:1:o;2678:908::-;2809:6;2817;2825;2833;2841;2894:2;2882:9;2873:7;2869:23;2865:32;2862:52;;;2910:1;2907;2900:12;2862:52;2949:9;2936:23;2968:31;2993:5;2968:31;:::i;:::-;3018:5;-1:-1:-1;3074:2:1;3059:18;;3046:32;3097:18;3127:14;;;3124:34;;;3154:1;3151;3144:12;3124:34;3193:70;3255:7;3246:6;3235:9;3231:22;3193:70;:::i;:::-;3282:8;;-1:-1:-1;3167:96:1;-1:-1:-1;3370:2:1;3355:18;;3342:32;;-1:-1:-1;3386:16:1;;;3383:36;;;3415:1;3412;3405:12;3383:36;;3454:72;3518:7;3507:8;3496:9;3492:24;3454:72;:::i;:::-;2678:908;;;;-1:-1:-1;2678:908:1;;-1:-1:-1;3545:8:1;;3428:98;2678:908;-1:-1:-1;;;2678:908:1:o;3591:456::-;3668:6;3676;3684;3737:2;3725:9;3716:7;3712:23;3708:32;3705:52;;;3753:1;3750;3743:12;3705:52;3792:9;3779:23;3811:31;3836:5;3811:31;:::i;:::-;3861:5;-1:-1:-1;3918:2:1;3903:18;;3890:32;3931:33;3890:32;3931:33;:::i;:::-;3591:456;;3983:7;;-1:-1:-1;;;4037:2:1;4022:18;;;;4009:32;;3591:456::o;4052:247::-;4111:6;4164:2;4152:9;4143:7;4139:23;4135:32;4132:52;;;4180:1;4177;4170:12;4132:52;4219:9;4206:23;4238:31;4263:5;4238:31;:::i;4701:316::-;4778:6;4786;4794;4847:2;4835:9;4826:7;4822:23;4818:32;4815:52;;;4863:1;4860;4853:12;4815:52;-1:-1:-1;;4886:23:1;;;4956:2;4941:18;;4928:32;;-1:-1:-1;5007:2:1;4992:18;;;4979:32;;4701:316;-1:-1:-1;4701:316:1:o;5022:529::-;5099:6;5107;5115;5168:2;5156:9;5147:7;5143:23;5139:32;5136:52;;;5184:1;5181;5174:12;5136:52;5223:9;5210:23;5242:31;5267:5;5242:31;:::i;:::-;5292:5;-1:-1:-1;5349:2:1;5334:18;;5321:32;5362:33;5321:32;5362:33;:::i;:::-;5414:7;-1:-1:-1;5473:2:1;5458:18;;5445:32;5486:33;5445:32;5486:33;:::i;:::-;5538:7;5528:17;;;5022:529;;;;;:::o;5556:388::-;5624:6;5632;5685:2;5673:9;5664:7;5660:23;5656:32;5653:52;;;5701:1;5698;5691:12;5653:52;5740:9;5727:23;5759:31;5784:5;5759:31;:::i;:::-;5809:5;-1:-1:-1;5866:2:1;5851:18;;5838:32;5879:33;5838:32;5879:33;:::i;:::-;5931:7;5921:17;;;5556:388;;;;;:::o;5949:248::-;6014:6;6022;6075:2;6063:9;6054:7;6050:23;6046:32;6043:52;;;6091:1;6088;6081:12;6043:52;6114:26;6130:9;6114:26;:::i;6688:335::-;6890:2;6872:21;;;6929:2;6909:18;;;6902:30;-1:-1:-1;;;6963:2:1;6948:18;;6941:41;7014:2;6999:18;;6688:335::o;7028:401::-;7230:2;7212:21;;;7269:2;7249:18;;;7242:30;7308:34;7303:2;7288:18;;7281:62;-1:-1:-1;;;7374:2:1;7359:18;;7352:35;7419:3;7404:19;;7028:401::o;7434:127::-;7495:10;7490:3;7486:20;7483:1;7476:31;7526:4;7523:1;7516:15;7550:4;7547:1;7540:15;7566:127;7627:10;7622:3;7618:20;7615:1;7608:31;7658:4;7655:1;7648:15;7682:4;7679:1;7672:15;7698:135;7737:3;7758:17;;;7755:43;;7778:18;;:::i;:::-;-1:-1:-1;7825:1:1;7814:13;;7698:135::o;7838:329::-;8040:2;8022:21;;;8079:1;8059:18;;;8052:29;-1:-1:-1;;;8112:2:1;8097:18;;8090:36;8158:2;8143:18;;7838:329::o;8172:168::-;8212:7;8278:1;8274;8270:6;8266:14;8263:1;8260:21;8255:1;8248:9;8241:17;8237:45;8234:71;;;8285:18;;:::i;:::-;-1:-1:-1;8325:9:1;;8172:168::o;8345:217::-;8385:1;8411;8401:132;;8455:10;8450:3;8446:20;8443:1;8436:31;8490:4;8487:1;8480:15;8518:4;8515:1;8508:15;8401:132;-1:-1:-1;8547:9:1;;8345:217::o;8976:128::-;9016:3;9047:1;9043:6;9040:1;9037:13;9034:39;;;9053:18;;:::i;:::-;-1:-1:-1;9089:9:1;;8976:128::o;10738:125::-;10778:4;10806:1;10803;10800:8;10797:34;;;10811:18;;:::i;:::-;-1:-1:-1;10848:9:1;;10738:125::o;12806:980::-;13068:4;13116:3;13105:9;13101:19;13147:6;13136:9;13129:25;13173:2;13211:6;13206:2;13195:9;13191:18;13184:34;13254:3;13249:2;13238:9;13234:18;13227:31;13278:6;13313;13307:13;13344:6;13336;13329:22;13382:3;13371:9;13367:19;13360:26;;13421:2;13413:6;13409:15;13395:29;;13442:1;13452:195;13466:6;13463:1;13460:13;13452:195;;;13531:13;;-1:-1:-1;;;;;13527:39:1;13515:52;;13622:15;;;;13587:12;;;;13563:1;13481:9;13452:195;;;-1:-1:-1;;;;;;;13703:32:1;;;;13698:2;13683:18;;13676:60;-1:-1:-1;;;13767:3:1;13752:19;13745:35;13664:3;12806:980;-1:-1:-1;;;12806:980:1:o;14403:306::-;14491:6;14499;14507;14560:2;14548:9;14539:7;14535:23;14531:32;14528:52;;;14576:1;14573;14566:12;14528:52;14605:9;14599:16;14589:26;;14655:2;14644:9;14640:18;14634:25;14624:35;;14699:2;14688:9;14684:18;14678:25;14668:35;;14403:306;;;;;:::o

Swarm Source

ipfs://1b3c4a0b219f94b7a8c8f281509687f59b8a7c54b5299e3dcf077769340e2b64

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.