ETH Price: $3,160.06 (-4.75%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve213541852024-12-08 0:27:3555 days ago1733617655IN
0x1FbC7311...3F42dD0E1
0 ETH0.000567512.1989993
Transfer211973462024-11-16 2:43:5977 days ago1731725039IN
0x1FbC7311...3F42dD0E1
0 ETH0.0013972817.95283929
Approve211340202024-11-07 6:35:2386 days ago1730961323IN
0x1FbC7311...3F42dD0E1
0 ETH0.0004716810.19966327
Approve211120982024-11-04 5:09:2389 days ago1730696963IN
0x1FbC7311...3F42dD0E1
0 ETH0.000296736.37020784
Approve210639342024-10-28 11:48:4796 days ago1730116127IN
0x1FbC7311...3F42dD0E1
0 ETH0.00059612.89135049
Approve210598562024-10-27 22:08:2396 days ago1730066903IN
0x1FbC7311...3F42dD0E1
0 ETH0.0003547.59976411
Approve210325742024-10-24 2:49:11100 days ago1729738151IN
0x1FbC7311...3F42dD0E1
0 ETH0.000437699.39645426
Approve210272792024-10-23 9:05:35101 days ago1729674335IN
0x1FbC7311...3F42dD0E1
0 ETH0.000439229.42918014
Approve210034652024-10-20 1:20:47104 days ago1729387247IN
0x1FbC7311...3F42dD0E1
0 ETH0.000181986.23123182
Approve209892042024-10-18 1:36:11106 days ago1729215371IN
0x1FbC7311...3F42dD0E1
0 ETH0.0006678414.35568856
Approve209863662024-10-17 16:05:35107 days ago1729181135IN
0x1FbC7311...3F42dD0E1
0 ETH0.001125324.34625098
Approve209802632024-10-16 19:38:11108 days ago1729107491IN
0x1FbC7311...3F42dD0E1
0 ETH0.0006731614.53768997
Approve209403152024-10-11 5:32:59113 days ago1728624779IN
0x1FbC7311...3F42dD0E1
0 ETH0.0005123710.99968732
Approve209346262024-10-10 10:31:23114 days ago1728556283IN
0x1FbC7311...3F42dD0E1
0 ETH0.000460519.88887318
Approve209346062024-10-10 10:26:59114 days ago1728556019IN
0x1FbC7311...3F42dD0E1
0 ETH0.000424029.10302281
Approve209314902024-10-10 0:01:35114 days ago1728518495IN
0x1FbC7311...3F42dD0E1
0 ETH0.0002610410.74371551
Approve209279642024-10-09 12:14:23115 days ago1728476063IN
0x1FbC7311...3F42dD0E1
0 ETH0.0008086817.36089008
Approve209272252024-10-09 9:45:35115 days ago1728467135IN
0x1FbC7311...3F42dD0E1
0 ETH0.0006125813.15105049
Approve209270322024-10-09 9:06:59115 days ago1728464819IN
0x1FbC7311...3F42dD0E1
0 ETH0.0005375711.54656553
Approve209264252024-10-09 7:05:11115 days ago1728457511IN
0x1FbC7311...3F42dD0E1
0 ETH0.0006679514.34335059
Approve209264252024-10-09 7:05:11115 days ago1728457511IN
0x1FbC7311...3F42dD0E1
0 ETH0.0006679514.34335059
Approve209264032024-10-09 7:00:47115 days ago1728457247IN
0x1FbC7311...3F42dD0E1
0 ETH0.0005363811.5150482
Approve209263482024-10-09 6:49:47115 days ago1728456587IN
0x1FbC7311...3F42dD0E1
0 ETH0.0005313411.40699714
Approve209262942024-10-09 6:38:47115 days ago1728455927IN
0x1FbC7311...3F42dD0E1
0 ETH0.0006049212.98646359
Approve209262772024-10-09 6:35:23115 days ago1728455723IN
0x1FbC7311...3F42dD0E1
0 ETH0.0005748512.34102397
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
210639392024-10-28 11:49:4796 days ago1730116187
0x1FbC7311...3F42dD0E1
0.00003218 ETH
210639392024-10-28 11:49:4796 days ago1730116187
0x1FbC7311...3F42dD0E1
0.0028968 ETH
210639392024-10-28 11:49:4796 days ago1730116187
0x1FbC7311...3F42dD0E1
0.00292899 ETH
209802682024-10-16 19:39:11108 days ago1729107551
0x1FbC7311...3F42dD0E1
0.00004067 ETH
209802682024-10-16 19:39:11108 days ago1729107551
0x1FbC7311...3F42dD0E1
0.0036603 ETH
209802682024-10-16 19:39:11108 days ago1729107551
0x1FbC7311...3F42dD0E1
0.00370097 ETH
209349892024-10-10 11:43:59114 days ago1728560639
0x1FbC7311...3F42dD0E1
0.00004444 ETH
209349892024-10-10 11:43:59114 days ago1728560639
0x1FbC7311...3F42dD0E1
0.00400022 ETH
209349892024-10-10 11:43:59114 days ago1728560639
0x1FbC7311...3F42dD0E1
0.00404467 ETH
209349892024-10-10 11:43:59114 days ago1728560639
0x1FbC7311...3F42dD0E1
0.00004444 ETH
209349892024-10-10 11:43:59114 days ago1728560639
0x1FbC7311...3F42dD0E1
0.00400022 ETH
209349892024-10-10 11:43:59114 days ago1728560639
0x1FbC7311...3F42dD0E1
0.00404467 ETH
209276082024-10-09 11:02:47115 days ago1728471767
0x1FbC7311...3F42dD0E1
0.00004811 ETH
209276082024-10-09 11:02:47115 days ago1728471767
0x1FbC7311...3F42dD0E1
0.00433007 ETH
209276082024-10-09 11:02:47115 days ago1728471767
0x1FbC7311...3F42dD0E1
0.00437818 ETH
209265282024-10-09 7:25:47115 days ago1728458747
0x1FbC7311...3F42dD0E1
0.00007101 ETH
209265282024-10-09 7:25:47115 days ago1728458747
0x1FbC7311...3F42dD0E1
0.00639091 ETH
209265282024-10-09 7:25:47115 days ago1728458747
0x1FbC7311...3F42dD0E1
0.00646192 ETH
209265232024-10-09 7:24:47115 days ago1728458687
0x1FbC7311...3F42dD0E1
0.00007765 ETH
209265232024-10-09 7:24:47115 days ago1728458687
0x1FbC7311...3F42dD0E1
0.00698921 ETH
209265232024-10-09 7:24:47115 days ago1728458687
0x1FbC7311...3F42dD0E1
0.00706687 ETH
209264402024-10-09 7:08:11115 days ago1728457691
0x1FbC7311...3F42dD0E1
0.00008118 ETH
209264402024-10-09 7:08:11115 days ago1728457691
0x1FbC7311...3F42dD0E1
0.0073064 ETH
209264402024-10-09 7:08:11115 days ago1728457691
0x1FbC7311...3F42dD0E1
0.00738758 ETH
209263352024-10-09 6:47:11115 days ago1728456431
0x1FbC7311...3F42dD0E1
0.00005602 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
DWOGE

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 2024-09-24
*/

/**
$DWOGE
Dwo only gwood evewyday

tg: https://t.me/dwogeportal
web: https://dwogecoin.com
x: https://x.com/dwogecoin
*/

// SPDX-License-Identifier: MIT

pragma solidity 0.8.19;


library SafeMath {

    function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            uint256 c = a + b;
            if (c < a) return (false, 0);
            return (true, c);
        }
    }

    function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b > a) return (false, 0);
            return (true, a - b);
        }
    }

    function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (a == 0) return (true, 0);
            uint256 c = a * b;
            if (c / a != b) return (false, 0);
            return (true, c);
        }
    }

    function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a / b);
        }
    }

    function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a % b);
        }
    }

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        return a + b;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return a - b;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        return a * b;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return a % b;
    }

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

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

    function mod(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a % b;
        }
    }
}

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

abstract contract Ownable {
    address internal owner;
    constructor(address _owner) {owner = _owner;}
    modifier onlyOwner() {require(isOwner(msg.sender), "!OWNER"); _;}
    function isOwner(address account) public view returns (bool) {return account == owner;}
    function  renounceOwnership() public onlyOwner {
        owner = address(0); 
        emit OwnershipTransferred(address(0));
    }
    event OwnershipTransferred(address owner);
}

interface IFactory{
        function createPair(address tokenA, address tokenB) external returns (address pair);
        function getPair(address tokenA, address tokenB) external view returns (address pair);
}

interface IRouter {
    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 DWOGE is IERC20, Ownable {
    using SafeMath for uint256;
    string private constant _name = 'Dwoge';
    string private constant _symbol = 'DWOGE';
    uint8 private constant _decimals = 12;
    uint256 private _totalSupply = 100000000000 * (10 ** _decimals);
    mapping (address => uint256) _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) public isFeeExempt;
    mapping (address => bool) private isBot;
    IRouter router;
    address public pair;
    bool private tradingAllowed = false;
    bool private swapEnabled = true;
    uint256 private swapTimes;
    bool private swapping;
    uint256 swapAmount = 1;
    uint256 private swapThreshold = ( _totalSupply * 1000 ) / 100000;
    uint256 private minTokenAmount = ( _totalSupply * 10 ) / 100000;
    modifier lockTheSwap {swapping = true; _; swapping = false;}
    uint256 private liquidityFee = 0;
    uint256 private marketingFee = 2000;
    uint256 private developmentFee = 0;
    uint256 private burnFee = 0;
    uint256 private totalFee = 2000;
    uint256 private sellFee = 2500;
    uint256 private transferFee = 0;
    uint256 private denominator = 10000;
    address internal constant DEAD = 0x000000000000000000000000000000000000dEaD;
    address internal development_receiver = 0x96Be653Ab7A6E525C8AE5ecb3CF5B17CF4055B10; 
    address internal marketing_receiver = 0x96Be653Ab7A6E525C8AE5ecb3CF5B17CF4055B10;
    address internal liquidity_receiver = 0x96Be653Ab7A6E525C8AE5ecb3CF5B17CF4055B10;
    uint256 public _maxTxAmount = ( _totalSupply * 150 ) / 10000;
    uint256 public _maxSellAmount = ( _totalSupply * 150 ) / 10000;
    uint256 public _maxWalletToken = ( _totalSupply * 150 ) / 10000;

    constructor() Ownable(msg.sender) {
        IRouter _router = IRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        address _pair = IFactory(_router.factory()).createPair(address(this), _router.WETH());
        router = _router; pair = _pair;
        isFeeExempt[address(this)] = true;
        isFeeExempt[liquidity_receiver] = true;
        isFeeExempt[marketing_receiver] = true;
        isFeeExempt[development_receiver] = true;
        isFeeExempt[msg.sender] = true;
        _balances[msg.sender] = _totalSupply;
        emit Transfer(address(0), msg.sender, _totalSupply);
    }

    receive() external payable {}
    function name() public pure returns (string memory) {return _name;}
    function symbol() public pure returns (string memory) {return _symbol;}
    function decimals() public pure returns (uint8) {return _decimals;}
    function OpenTrading() external onlyOwner {tradingAllowed = true;}
    function getOwner() external view override returns (address) { return owner; }
    function balanceOf(address account) public view override returns (uint256) {return _balances[account];}
    function transfer(address recipient, uint256 amount) public override returns (bool) {_transfer(msg.sender, recipient, amount);return true;}
    function allowance(address owner, address spender) public view override returns (uint256) {return _allowances[owner][spender];}
    function setisExempt(address _address, bool _enabled) external onlyOwner {isFeeExempt[_address] = _enabled;}
    function approve(address spender, uint256 amount) public override returns (bool) {_approve(msg.sender, spender, amount);return true;}
    function totalSupply() public view override returns (uint256) {return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(address(0)));}

    function shouldContractSwap(address sender, address recipient, uint256 amount) internal view returns (bool) {
        bool aboveMin = amount >= minTokenAmount;
        bool aboveThreshold = balanceOf(address(this)) >= swapThreshold;
        return !swapping && swapEnabled && tradingAllowed && aboveMin && !isFeeExempt[sender] && recipient == pair && swapTimes >= swapAmount && aboveThreshold;
    }

    function setContractSwapB(uint256 _swapAmount, uint256 _swapThreshold, uint256 _minTokenAmount) external onlyOwner {
        swapAmount = _swapAmount; swapThreshold = _totalSupply.mul(_swapThreshold).div(uint256(100000)); 
        minTokenAmount = _totalSupply.mul(_minTokenAmount).div(uint256(100000));
    }

    function setTransactionRequireB(uint256 _liquidity, uint256 _marketing, uint256 _burn, uint256 _development, uint256 _total, uint256 _sell, uint256 _trans) external onlyOwner {
        liquidityFee = _liquidity; marketingFee = _marketing; burnFee = _burn; developmentFee = _development; totalFee = _total; sellFee = _sell; transferFee = _trans;
        require(totalFee <= denominator.div(1) && sellFee <= denominator.div(1) && transferFee <= denominator.div(1), "totalFee and sellFee cannot be more than 20%");
    }

    function setTransactionLimitB(uint256 _buy, uint256 _sell, uint256 _wallet) external onlyOwner {
        uint256 newTx = _totalSupply.mul(_buy).div(10000); uint256 newTransfer = _totalSupply.mul(_sell).div(10000); uint256 newWallet = _totalSupply.mul(_wallet).div(10000);
        _maxTxAmount = newTx; _maxSellAmount = newTransfer; _maxWalletToken = newWallet;
        uint256 limit = totalSupply().mul(5).div(1000);
        require(newTx >= limit && newTransfer >= limit && newWallet >= limit, "Max TXs and Max Wallet cannot be less than .5%");
    }

    function setInternalAddresses(address _marketing, address _liquidity, address _development) external onlyOwner {
        marketing_receiver = _marketing; liquidity_receiver = _liquidity; development_receiver = _development;
        isFeeExempt[_marketing] = true; isFeeExempt[_liquidity] = true; isFeeExempt[_development] = true;
    }

    function setBBot(address[] calldata addresses, bool _enabled) external onlyOwner {
        for(uint i=0; i < addresses.length; i++){
        isBot[addresses[i]] = _enabled; }
    }

    function manualSwap() external onlyOwner {
        swapAndLiquify(swapThreshold);
    }

    function rescueERC20(address _address, uint256 percent) external onlyOwner {
        uint256 _amount = IERC20(_address).balanceOf(address(this)).mul(percent).div(100);
        IERC20(_address).transfer(development_receiver, _amount);
    }

    function swapAndLiquify(uint256 tokens) private lockTheSwap {
        uint256 _denominator = (liquidityFee.add(1).add(marketingFee).add(developmentFee)).mul(2);
        uint256 tokensToAddLiquidityWith = tokens.mul(liquidityFee).div(_denominator);
        uint256 toSwap = tokens.sub(tokensToAddLiquidityWith);
        uint256 initialBalance = address(this).balance;
        swapTokensForETH(toSwap);
        uint256 deltaBalance = address(this).balance.sub(initialBalance);
        uint256 unitBalance= deltaBalance.div(_denominator.sub(liquidityFee));
        uint256 ETHToAddLiquidityWith = unitBalance.mul(liquidityFee);
        if(ETHToAddLiquidityWith > uint256(0)){addLiquidity(tokensToAddLiquidityWith, ETHToAddLiquidityWith); }
        uint256 marketingAmt = unitBalance.mul(2).mul(marketingFee);
        if(marketingAmt > 0){payable(marketing_receiver).transfer(marketingAmt);}
        uint256 contractBalance = address(this).balance;
        if(contractBalance > uint256(0)){payable(development_receiver).transfer(contractBalance);}
    }

    function addLiquidity(uint256 tokenAmount, uint256 ETHAmount) private {
        _approve(address(this), address(router), tokenAmount);
        router.addLiquidityETH{value: ETHAmount}(
            address(this),
            tokenAmount,
            0,
            0,
            liquidity_receiver,
            block.timestamp);
    }

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

    function shouldTakeFee(address sender, address recipient) internal view returns (bool) {
        return !isFeeExempt[sender] && !isFeeExempt[recipient];
    }

    function getTotalFee(address sender, address recipient) internal view returns (uint256) {
        if(isBot[sender] || isBot[recipient]){return denominator.sub(uint256(100));}
        if(recipient == pair){return sellFee;}
        if(sender == pair){return totalFee;}
        return transferFee;
    }

    function takeFee(address sender, address recipient, uint256 amount) internal returns (uint256) {
        if(getTotalFee(sender, recipient) > 0){
        uint256 feeAmount = amount.div(denominator).mul(getTotalFee(sender, recipient));
        _balances[address(this)] = _balances[address(this)].add(feeAmount);
        emit Transfer(sender, address(this), feeAmount);
        if(burnFee > uint256(0) && getTotalFee(sender, recipient) > burnFee){_transfer(address(this), address(DEAD), amount.div(denominator).mul(burnFee));}
        return amount.sub(feeAmount);} return amount;
    }

    function _transfer(address sender, address recipient, uint256 amount) private {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(amount <= balanceOf(sender),"You are trying to transfer more than your balance");
        if(!isFeeExempt[sender] && !isFeeExempt[recipient]){require(tradingAllowed, "tradingAllowed");}
        if(!isFeeExempt[sender] && !isFeeExempt[recipient] && recipient != address(pair) && recipient != address(DEAD)){
        require((_balances[recipient].add(amount)) <= _maxWalletToken, "Exceeds maximum wallet amount.");}
        if(sender != pair){require(amount <= _maxSellAmount || isFeeExempt[sender] || isFeeExempt[recipient], "TX Limit Exceeded");}
        require(amount <= _maxTxAmount || isFeeExempt[sender] || isFeeExempt[recipient], "TX Limit Exceeded"); 
        if(recipient == pair && !isFeeExempt[sender]){swapTimes += uint256(1);}
        if(shouldContractSwap(sender, recipient, amount)){swapAndLiquify(swapThreshold); swapTimes = uint256(0);}
        _balances[sender] = _balances[sender].sub(amount);
        uint256 amountReceived = shouldTakeFee(sender, recipient) ? takeFee(sender, recipient, amount) : amount;
        _balances[recipient] = _balances[recipient].add(amountReceived);
        emit Transfer(sender, recipient, amountReceived);
    }

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

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

}

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":"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":"OpenTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_maxSellAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","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":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"rescueERC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setBBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_swapAmount","type":"uint256"},{"internalType":"uint256","name":"_swapThreshold","type":"uint256"},{"internalType":"uint256","name":"_minTokenAmount","type":"uint256"}],"name":"setContractSwapB","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_marketing","type":"address"},{"internalType":"address","name":"_liquidity","type":"address"},{"internalType":"address","name":"_development","type":"address"}],"name":"setInternalAddresses","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buy","type":"uint256"},{"internalType":"uint256","name":"_sell","type":"uint256"},{"internalType":"uint256","name":"_wallet","type":"uint256"}],"name":"setTransactionLimitB","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidity","type":"uint256"},{"internalType":"uint256","name":"_marketing","type":"uint256"},{"internalType":"uint256","name":"_burn","type":"uint256"},{"internalType":"uint256","name":"_development","type":"uint256"},{"internalType":"uint256","name":"_total","type":"uint256"},{"internalType":"uint256","name":"_sell","type":"uint256"},{"internalType":"uint256","name":"_trans","type":"uint256"}],"name":"setTransactionRequireB","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setisExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"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"},{"stateMutability":"payable","type":"receive"}]

608060405262000012600c600a620004d1565b620000239064174876e800620004e9565b60018181556007805461ffff60a01b1916600160a81b179055600a55620186a09062000052906103e8620004e9565b6200005e919062000503565b600b55620186a0600154600a620000769190620004e9565b62000082919062000503565b600c556000600d8190556107d0600e819055600f82905560108290556011556109c46012556013556127106014819055601580547396be653ab7a6e525c8ae5ecb3cf5b17cf4055b106001600160a01b031991821681179092556016805482168317905560178054909116909117905560015462000102906096620004e9565b6200010e919062000503565b6018556127106001546096620001259190620004e9565b62000131919062000503565b6019556127106001546096620001489190620004e9565b62000154919062000503565b601a553480156200016457600080fd5b50600080546001600160a01b031916331781556040805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d9291839163c45a0155916004808201926020929091908290030181865afa158015620001cc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001f2919062000526565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000240573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000266919062000526565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002b4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002da919062000526565b600680546001600160a01b038581166001600160a01b031992831617909255600780548484169216919091179055306000908152600460209081526040808320805460ff19908116600190811790925560175486168552828520805482168317905560165486168552828520805482168317905560155490951684528184208054861682179055338085528285208054909616821790955554600283528184208190559051908152939450919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505062000551565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000413578160001904821115620003f757620003f7620003bc565b808516156200040557918102915b93841c9390800290620003d7565b509250929050565b6000826200042c57506001620004cb565b816200043b57506000620004cb565b81600181146200045457600281146200045f576200047f565b6001915050620004cb565b60ff841115620004735762000473620003bc565b50506001821b620004cb565b5060208310610133831016604e8410600b8410161715620004a4575081810a620004cb565b620004b08383620003d2565b8060001904821115620004c757620004c7620003bc565b0290505b92915050565b6000620004e260ff8416836200041b565b9392505050565b8082028115828204841417620004cb57620004cb620003bc565b6000826200052157634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200053957600080fd5b81516001600160a01b0381168114620004e257600080fd5b611e3780620005616000396000f3fe6080604052600436106101855760003560e01c806370a08231116100d15780638cd4426d1161008a578063a8aa1b3111610064578063a8aa1b3114610498578063a9059cbb146104b8578063b9119fd1146104d8578063dd62ed3e146104f857600080fd5b80638cd4426d1461042a5780639213c3581461044a57806395d89b411461046a57600080fd5b806370a082311461036b578063715018a6146103a157806378109e54146103b65780637cca52fe146103cc5780637d1db4a5146103e2578063893d20e8146103f857600080fd5b80632f54bf6e1161013e57806348ff2b8b1161011857806348ff2b8b146103015780635104db771461032157806351bc3c851461034157806351cd7cc31461035657600080fd5b80632f54bf6e14610286578063313ce567146102b55780633f4218e0146102d157600080fd5b806306fdde0314610191578063095ea7b3146101d15780630edc39d81461020157806318160ddd146102235780632373b42b1461024657806323b872dd1461026657600080fd5b3661018c57005b600080fd5b34801561019d57600080fd5b5060408051808201909152600581526444776f676560d81b60208201525b6040516101c89190611980565b60405180910390f35b3480156101dd57600080fd5b506101f16101ec3660046119e6565b61053e565b60405190151581526020016101c8565b34801561020d57600080fd5b5061022161021c366004611a20565b610555565b005b34801561022f57600080fd5b506102386105ff565b6040519081526020016101c8565b34801561025257600080fd5b50610221610261366004611aa6565b610670565b34801561027257600080fd5b506101f1610281366004611ad2565b6106dc565b34801561029257600080fd5b506101f16102a1366004611b13565b6000546001600160a01b0391821691161490565b3480156102c157600080fd5b50604051600c81526020016101c8565b3480156102dd57600080fd5b506101f16102ec366004611b13565b60046020526000908152604090205460ff1681565b34801561030d57600080fd5b5061022161031c366004611b30565b610746565b34801561032d57600080fd5b5061022161033c366004611aa6565b61079b565b34801561034d57600080fd5b506102216108d6565b34801561036257600080fd5b5061022161090d565b34801561037757600080fd5b50610238610386366004611b13565b6001600160a01b031660009081526002602052604090205490565b3480156103ad57600080fd5b5061022161094c565b3480156103c257600080fd5b50610238601a5481565b3480156103d857600080fd5b5061023860195481565b3480156103ee57600080fd5b5061023860185481565b34801561040457600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101c8565b34801561043657600080fd5b506102216104453660046119e6565b6109bb565b34801561045657600080fd5b50610221610465366004611b69565b610ad6565b34801561047657600080fd5b5060408051808201909152600581526444574f474560d81b60208201526101bb565b3480156104a457600080fd5b50600754610412906001600160a01b031681565b3480156104c457600080fd5b506101f16104d33660046119e6565b610b7c565b3480156104e457600080fd5b506102216104f3366004611ba9565b610b89565b34801561050457600080fd5b50610238610513366004611bf5565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b600061054b338484610c80565b5060015b92915050565b6000546001600160a01b031633146105885760405162461bcd60e51b815260040161057f90611c23565b60405180910390fd5b60005b828110156105f95781600560008686858181106105aa576105aa611c43565b90506020020160208101906105bf9190611b13565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055806105f181611c6f565b91505061058b565b50505050565b60026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b5461dead60009081527f6a9609baa168169acaea398c4407efea4be641bb08e21e88806d9836fd9333cc54600154919261066b9290916106659190610da4565b90610da4565b905090565b6000546001600160a01b0316331461069a5760405162461bcd60e51b815260040161057f90611c23565b600a8390556001546106bb90620186a0906106b59085610db0565b90610dbc565b600b556001546106d490620186a0906106b59084610db0565b600c55505050565b60006106e9848484610dc8565b61073b843361073685604051806060016040528060288152602001611dda602891396001600160a01b038a1660009081526003602090815260408083203384529091529020549190611315565b610c80565b5060015b9392505050565b6000546001600160a01b031633146107705760405162461bcd60e51b815260040161057f90611c23565b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b031633146107c55760405162461bcd60e51b815260040161057f90611c23565b60006107e26127106106b586600154610db090919063ffffffff16565b905060006108016127106106b586600154610db090919063ffffffff16565b905060006108206127106106b586600154610db090919063ffffffff16565b60188490556019839055601a8190559050600061084c6103e86106b560056108466105ff565b90610db0565b905080841015801561085e5750808310155b801561086a5750808210155b6108cd5760405162461bcd60e51b815260206004820152602e60248201527f4d61782054587320616e64204d61782057616c6c65742063616e6e6f7420626560448201526d206c657373207468616e202e352560901b606482015260840161057f565b50505050505050565b6000546001600160a01b031633146109005760405162461bcd60e51b815260040161057f90611c23565b61090b600b54611341565b565b6000546001600160a01b031633146109375760405162461bcd60e51b815260040161057f90611c23565b6007805460ff60a01b1916600160a01b179055565b6000546001600160a01b031633146109765760405162461bcd60e51b815260040161057f90611c23565b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b6000546001600160a01b031633146109e55760405162461bcd60e51b815260040161057f90611c23565b6040516370a0823160e01b8152306004820152600090610a5d906064906106b59085906001600160a01b038816906370a0823190602401602060405180830381865afa158015610a39573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108469190611c88565b60155460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810183905291925084169063a9059cbb906044016020604051808303816000875af1158015610ab2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f99190611ca1565b6000546001600160a01b03163314610b005760405162461bcd60e51b815260040161057f90611c23565b601680546001600160a01b039485166001600160a01b031991821681179092556017805494861694821685179055601580549390951692168217909355600092835260046020526040808420805460ff199081166001908117909255938552818520805485168217905591845290922080549091169091179055565b600061054b338484610dc8565b6000546001600160a01b03163314610bb35760405162461bcd60e51b815260040161057f90611c23565b600d879055600e8690556010859055600f849055601183905560128290556013819055601454610be4906001610dbc565b60115411158015610c045750601454610bfe906001610dbc565b60125411155b8015610c1f5750601454610c19906001610dbc565b60135411155b6108cd5760405162461bcd60e51b815260206004820152602c60248201527f746f74616c46656520616e642073656c6c4665652063616e6e6f74206265206d60448201526b6f7265207468616e2032302560a01b606482015260840161057f565b6001600160a01b038316610ce25760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161057f565b6001600160a01b038216610d435760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161057f565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061073f8284611cbe565b600061073f8284611cd1565b600061073f8284611ce8565b6001600160a01b038316610e2c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161057f565b6001600160a01b038216610e8e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161057f565b6001600160a01b038316600090815260026020526040902054811115610f105760405162461bcd60e51b815260206004820152603160248201527f596f752061726520747279696e6720746f207472616e73666572206d6f7265206044820152707468616e20796f75722062616c616e636560781b606482015260840161057f565b6001600160a01b03831660009081526004602052604090205460ff16158015610f5257506001600160a01b03821660009081526004602052604090205460ff16155b15610fa157600754600160a01b900460ff16610fa15760405162461bcd60e51b815260206004820152600e60248201526d1d1c98591a5b99d05b1b1bddd95960921b604482015260640161057f565b6001600160a01b03831660009081526004602052604090205460ff16158015610fe357506001600160a01b03821660009081526004602052604090205460ff16155b8015610ffd57506007546001600160a01b03838116911614155b801561101457506001600160a01b03821661dead14155b1561108d57601a546001600160a01b03831660009081526002602052604090205461103f90836114be565b111561108d5760405162461bcd60e51b815260206004820152601e60248201527f45786365656473206d6178696d756d2077616c6c657420616d6f756e742e0000604482015260640161057f565b6007546001600160a01b0384811691161461112e57601954811115806110cb57506001600160a01b03831660009081526004602052604090205460ff165b806110ee57506001600160a01b03821660009081526004602052604090205460ff165b61112e5760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015260640161057f565b6018548111158061115757506001600160a01b03831660009081526004602052604090205460ff165b8061117a57506001600160a01b03821660009081526004602052604090205460ff165b6111ba5760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015260640161057f565b6007546001600160a01b0383811691161480156111f057506001600160a01b03831660009081526004602052604090205460ff16155b1561120e576001600860008282546112089190611d0a565b90915550505b6112198383836114ca565b1561122f57611229600b54611341565b60006008555b6001600160a01b0383166000908152600260205260409020546112529082610da4565b6001600160a01b0384166000908152600260205260408120919091556112788484611584565b611282578161128d565b61128d8484846115ca565b6001600160a01b0384166000908152600260205260409020549091506112b390826114be565b6001600160a01b0380851660008181526002602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113079085815260200190565b60405180910390a350505050565b600081848411156113395760405162461bcd60e51b815260040161057f9190611980565b505050900390565b6009805460ff19166001908117909155600f54600e54600d5460009361137b936002936108469391926113759283916114be565b906114be565b90506000611398826106b5600d5486610db090919063ffffffff16565b905060006113a68483610da4565b9050476113b2826116d1565b60006113be4783610da4565b905060006113e16113da600d5488610da490919063ffffffff16565b8390610dbc565b905060006113fa600d5483610db090919063ffffffff16565b9050801561140c5761140c868261182b565b600e5460009061142190610846856002610db0565b90508015611465576016546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611463573d6000803e3d6000fd5b505b4780156114a8576015546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156114a6573d6000803e3d6000fd5b505b50506009805460ff191690555050505050505050565b600061073f8284611d0a565b600c54600b543060009081526002602052604081205460095491938510159211159060ff161580156115055750600754600160a81b900460ff165b801561151a5750600754600160a01b900460ff165b80156115235750815b801561154857506001600160a01b03861660009081526004602052604090205460ff16155b801561156157506007546001600160a01b038681169116145b80156115715750600a5460085410155b801561157a5750805b9695505050505050565b6001600160a01b03821660009081526004602052604081205460ff1615801561073f5750506001600160a01b031660009081526004602052604090205460ff1615919050565b6000806115d785856118df565b11156116ca5760006115fa6115ec86866118df565b601454610846908690610dbc565b3060009081526002602052604090205490915061161790826114be565b30600081815260026020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906116689085815260200190565b60405180910390a3600060105411801561168c575060105461168a86866118df565b115b156116b8576116b83061dead6116b360105461084660145489610dbc90919063ffffffff16565b610dc8565b6116c28382610da4565b91505061073f565b5092915050565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061170657611706611c43565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561175f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117839190611d1d565b8160018151811061179657611796611c43565b6001600160a01b0392831660209182029290920101526006546117bc9130911684610c80565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac947906117f5908590600090869030904290600401611d3a565b600060405180830381600087803b15801561180f57600080fd5b505af1158015611823573d6000803e3d6000fd5b505050505050565b6006546118439030906001600160a01b031684610c80565b60065460175460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af11580156118b3573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118d89190611dab565b5050505050565b6001600160a01b03821660009081526005602052604081205460ff168061191e57506001600160a01b03821660009081526005602052604090205460ff165b1561193857601454611931906064610da4565b905061054f565b6007546001600160a01b0390811690831603611957575060125461054f565b6007546001600160a01b0390811690841603611976575060115461054f565b5060135492915050565b600060208083528351808285015260005b818110156119ad57858101830151858201604001528201611991565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146119e357600080fd5b50565b600080604083850312156119f957600080fd5b8235611a04816119ce565b946020939093013593505050565b80151581146119e357600080fd5b600080600060408486031215611a3557600080fd5b833567ffffffffffffffff80821115611a4d57600080fd5b818601915086601f830112611a6157600080fd5b813581811115611a7057600080fd5b8760208260051b8501011115611a8557600080fd5b60209283019550935050840135611a9b81611a12565b809150509250925092565b600080600060608486031215611abb57600080fd5b505081359360208301359350604090920135919050565b600080600060608486031215611ae757600080fd5b8335611af2816119ce565b92506020840135611b02816119ce565b929592945050506040919091013590565b600060208284031215611b2557600080fd5b813561073f816119ce565b60008060408385031215611b4357600080fd5b8235611b4e816119ce565b91506020830135611b5e81611a12565b809150509250929050565b600080600060608486031215611b7e57600080fd5b8335611b89816119ce565b92506020840135611b99816119ce565b91506040840135611a9b816119ce565b600080600080600080600060e0888a031215611bc457600080fd5b505085359760208701359750604087013596606081013596506080810135955060a0810135945060c0013592509050565b60008060408385031215611c0857600080fd5b8235611c13816119ce565b91506020830135611b5e816119ce565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611c8157611c81611c59565b5060010190565b600060208284031215611c9a57600080fd5b5051919050565b600060208284031215611cb357600080fd5b815161073f81611a12565b8181038181111561054f5761054f611c59565b808202811582820484141761054f5761054f611c59565b600082611d0557634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111561054f5761054f611c59565b600060208284031215611d2f57600080fd5b815161073f816119ce565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611d8a5784516001600160a01b031683529383019391830191600101611d65565b50506001600160a01b03969096166060850152505050608001529392505050565b600080600060608486031215611dc057600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200e8298e17dbb936bb9edc77c639c449a4341448b17a614fba07f5c91741b254e64736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101855760003560e01c806370a08231116100d15780638cd4426d1161008a578063a8aa1b3111610064578063a8aa1b3114610498578063a9059cbb146104b8578063b9119fd1146104d8578063dd62ed3e146104f857600080fd5b80638cd4426d1461042a5780639213c3581461044a57806395d89b411461046a57600080fd5b806370a082311461036b578063715018a6146103a157806378109e54146103b65780637cca52fe146103cc5780637d1db4a5146103e2578063893d20e8146103f857600080fd5b80632f54bf6e1161013e57806348ff2b8b1161011857806348ff2b8b146103015780635104db771461032157806351bc3c851461034157806351cd7cc31461035657600080fd5b80632f54bf6e14610286578063313ce567146102b55780633f4218e0146102d157600080fd5b806306fdde0314610191578063095ea7b3146101d15780630edc39d81461020157806318160ddd146102235780632373b42b1461024657806323b872dd1461026657600080fd5b3661018c57005b600080fd5b34801561019d57600080fd5b5060408051808201909152600581526444776f676560d81b60208201525b6040516101c89190611980565b60405180910390f35b3480156101dd57600080fd5b506101f16101ec3660046119e6565b61053e565b60405190151581526020016101c8565b34801561020d57600080fd5b5061022161021c366004611a20565b610555565b005b34801561022f57600080fd5b506102386105ff565b6040519081526020016101c8565b34801561025257600080fd5b50610221610261366004611aa6565b610670565b34801561027257600080fd5b506101f1610281366004611ad2565b6106dc565b34801561029257600080fd5b506101f16102a1366004611b13565b6000546001600160a01b0391821691161490565b3480156102c157600080fd5b50604051600c81526020016101c8565b3480156102dd57600080fd5b506101f16102ec366004611b13565b60046020526000908152604090205460ff1681565b34801561030d57600080fd5b5061022161031c366004611b30565b610746565b34801561032d57600080fd5b5061022161033c366004611aa6565b61079b565b34801561034d57600080fd5b506102216108d6565b34801561036257600080fd5b5061022161090d565b34801561037757600080fd5b50610238610386366004611b13565b6001600160a01b031660009081526002602052604090205490565b3480156103ad57600080fd5b5061022161094c565b3480156103c257600080fd5b50610238601a5481565b3480156103d857600080fd5b5061023860195481565b3480156103ee57600080fd5b5061023860185481565b34801561040457600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101c8565b34801561043657600080fd5b506102216104453660046119e6565b6109bb565b34801561045657600080fd5b50610221610465366004611b69565b610ad6565b34801561047657600080fd5b5060408051808201909152600581526444574f474560d81b60208201526101bb565b3480156104a457600080fd5b50600754610412906001600160a01b031681565b3480156104c457600080fd5b506101f16104d33660046119e6565b610b7c565b3480156104e457600080fd5b506102216104f3366004611ba9565b610b89565b34801561050457600080fd5b50610238610513366004611bf5565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b600061054b338484610c80565b5060015b92915050565b6000546001600160a01b031633146105885760405162461bcd60e51b815260040161057f90611c23565b60405180910390fd5b60005b828110156105f95781600560008686858181106105aa576105aa611c43565b90506020020160208101906105bf9190611b13565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055806105f181611c6f565b91505061058b565b50505050565b60026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b5461dead60009081527f6a9609baa168169acaea398c4407efea4be641bb08e21e88806d9836fd9333cc54600154919261066b9290916106659190610da4565b90610da4565b905090565b6000546001600160a01b0316331461069a5760405162461bcd60e51b815260040161057f90611c23565b600a8390556001546106bb90620186a0906106b59085610db0565b90610dbc565b600b556001546106d490620186a0906106b59084610db0565b600c55505050565b60006106e9848484610dc8565b61073b843361073685604051806060016040528060288152602001611dda602891396001600160a01b038a1660009081526003602090815260408083203384529091529020549190611315565b610c80565b5060015b9392505050565b6000546001600160a01b031633146107705760405162461bcd60e51b815260040161057f90611c23565b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b031633146107c55760405162461bcd60e51b815260040161057f90611c23565b60006107e26127106106b586600154610db090919063ffffffff16565b905060006108016127106106b586600154610db090919063ffffffff16565b905060006108206127106106b586600154610db090919063ffffffff16565b60188490556019839055601a8190559050600061084c6103e86106b560056108466105ff565b90610db0565b905080841015801561085e5750808310155b801561086a5750808210155b6108cd5760405162461bcd60e51b815260206004820152602e60248201527f4d61782054587320616e64204d61782057616c6c65742063616e6e6f7420626560448201526d206c657373207468616e202e352560901b606482015260840161057f565b50505050505050565b6000546001600160a01b031633146109005760405162461bcd60e51b815260040161057f90611c23565b61090b600b54611341565b565b6000546001600160a01b031633146109375760405162461bcd60e51b815260040161057f90611c23565b6007805460ff60a01b1916600160a01b179055565b6000546001600160a01b031633146109765760405162461bcd60e51b815260040161057f90611c23565b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b6000546001600160a01b031633146109e55760405162461bcd60e51b815260040161057f90611c23565b6040516370a0823160e01b8152306004820152600090610a5d906064906106b59085906001600160a01b038816906370a0823190602401602060405180830381865afa158015610a39573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108469190611c88565b60155460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810183905291925084169063a9059cbb906044016020604051808303816000875af1158015610ab2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f99190611ca1565b6000546001600160a01b03163314610b005760405162461bcd60e51b815260040161057f90611c23565b601680546001600160a01b039485166001600160a01b031991821681179092556017805494861694821685179055601580549390951692168217909355600092835260046020526040808420805460ff199081166001908117909255938552818520805485168217905591845290922080549091169091179055565b600061054b338484610dc8565b6000546001600160a01b03163314610bb35760405162461bcd60e51b815260040161057f90611c23565b600d879055600e8690556010859055600f849055601183905560128290556013819055601454610be4906001610dbc565b60115411158015610c045750601454610bfe906001610dbc565b60125411155b8015610c1f5750601454610c19906001610dbc565b60135411155b6108cd5760405162461bcd60e51b815260206004820152602c60248201527f746f74616c46656520616e642073656c6c4665652063616e6e6f74206265206d60448201526b6f7265207468616e2032302560a01b606482015260840161057f565b6001600160a01b038316610ce25760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161057f565b6001600160a01b038216610d435760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161057f565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061073f8284611cbe565b600061073f8284611cd1565b600061073f8284611ce8565b6001600160a01b038316610e2c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161057f565b6001600160a01b038216610e8e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161057f565b6001600160a01b038316600090815260026020526040902054811115610f105760405162461bcd60e51b815260206004820152603160248201527f596f752061726520747279696e6720746f207472616e73666572206d6f7265206044820152707468616e20796f75722062616c616e636560781b606482015260840161057f565b6001600160a01b03831660009081526004602052604090205460ff16158015610f5257506001600160a01b03821660009081526004602052604090205460ff16155b15610fa157600754600160a01b900460ff16610fa15760405162461bcd60e51b815260206004820152600e60248201526d1d1c98591a5b99d05b1b1bddd95960921b604482015260640161057f565b6001600160a01b03831660009081526004602052604090205460ff16158015610fe357506001600160a01b03821660009081526004602052604090205460ff16155b8015610ffd57506007546001600160a01b03838116911614155b801561101457506001600160a01b03821661dead14155b1561108d57601a546001600160a01b03831660009081526002602052604090205461103f90836114be565b111561108d5760405162461bcd60e51b815260206004820152601e60248201527f45786365656473206d6178696d756d2077616c6c657420616d6f756e742e0000604482015260640161057f565b6007546001600160a01b0384811691161461112e57601954811115806110cb57506001600160a01b03831660009081526004602052604090205460ff165b806110ee57506001600160a01b03821660009081526004602052604090205460ff165b61112e5760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015260640161057f565b6018548111158061115757506001600160a01b03831660009081526004602052604090205460ff165b8061117a57506001600160a01b03821660009081526004602052604090205460ff165b6111ba5760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015260640161057f565b6007546001600160a01b0383811691161480156111f057506001600160a01b03831660009081526004602052604090205460ff16155b1561120e576001600860008282546112089190611d0a565b90915550505b6112198383836114ca565b1561122f57611229600b54611341565b60006008555b6001600160a01b0383166000908152600260205260409020546112529082610da4565b6001600160a01b0384166000908152600260205260408120919091556112788484611584565b611282578161128d565b61128d8484846115ca565b6001600160a01b0384166000908152600260205260409020549091506112b390826114be565b6001600160a01b0380851660008181526002602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113079085815260200190565b60405180910390a350505050565b600081848411156113395760405162461bcd60e51b815260040161057f9190611980565b505050900390565b6009805460ff19166001908117909155600f54600e54600d5460009361137b936002936108469391926113759283916114be565b906114be565b90506000611398826106b5600d5486610db090919063ffffffff16565b905060006113a68483610da4565b9050476113b2826116d1565b60006113be4783610da4565b905060006113e16113da600d5488610da490919063ffffffff16565b8390610dbc565b905060006113fa600d5483610db090919063ffffffff16565b9050801561140c5761140c868261182b565b600e5460009061142190610846856002610db0565b90508015611465576016546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611463573d6000803e3d6000fd5b505b4780156114a8576015546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156114a6573d6000803e3d6000fd5b505b50506009805460ff191690555050505050505050565b600061073f8284611d0a565b600c54600b543060009081526002602052604081205460095491938510159211159060ff161580156115055750600754600160a81b900460ff165b801561151a5750600754600160a01b900460ff165b80156115235750815b801561154857506001600160a01b03861660009081526004602052604090205460ff16155b801561156157506007546001600160a01b038681169116145b80156115715750600a5460085410155b801561157a5750805b9695505050505050565b6001600160a01b03821660009081526004602052604081205460ff1615801561073f5750506001600160a01b031660009081526004602052604090205460ff1615919050565b6000806115d785856118df565b11156116ca5760006115fa6115ec86866118df565b601454610846908690610dbc565b3060009081526002602052604090205490915061161790826114be565b30600081815260026020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906116689085815260200190565b60405180910390a3600060105411801561168c575060105461168a86866118df565b115b156116b8576116b83061dead6116b360105461084660145489610dbc90919063ffffffff16565b610dc8565b6116c28382610da4565b91505061073f565b5092915050565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061170657611706611c43565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561175f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117839190611d1d565b8160018151811061179657611796611c43565b6001600160a01b0392831660209182029290920101526006546117bc9130911684610c80565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac947906117f5908590600090869030904290600401611d3a565b600060405180830381600087803b15801561180f57600080fd5b505af1158015611823573d6000803e3d6000fd5b505050505050565b6006546118439030906001600160a01b031684610c80565b60065460175460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af11580156118b3573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118d89190611dab565b5050505050565b6001600160a01b03821660009081526005602052604081205460ff168061191e57506001600160a01b03821660009081526005602052604090205460ff165b1561193857601454611931906064610da4565b905061054f565b6007546001600160a01b0390811690831603611957575060125461054f565b6007546001600160a01b0390811690841603611976575060115461054f565b5060135492915050565b600060208083528351808285015260005b818110156119ad57858101830151858201604001528201611991565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146119e357600080fd5b50565b600080604083850312156119f957600080fd5b8235611a04816119ce565b946020939093013593505050565b80151581146119e357600080fd5b600080600060408486031215611a3557600080fd5b833567ffffffffffffffff80821115611a4d57600080fd5b818601915086601f830112611a6157600080fd5b813581811115611a7057600080fd5b8760208260051b8501011115611a8557600080fd5b60209283019550935050840135611a9b81611a12565b809150509250925092565b600080600060608486031215611abb57600080fd5b505081359360208301359350604090920135919050565b600080600060608486031215611ae757600080fd5b8335611af2816119ce565b92506020840135611b02816119ce565b929592945050506040919091013590565b600060208284031215611b2557600080fd5b813561073f816119ce565b60008060408385031215611b4357600080fd5b8235611b4e816119ce565b91506020830135611b5e81611a12565b809150509250929050565b600080600060608486031215611b7e57600080fd5b8335611b89816119ce565b92506020840135611b99816119ce565b91506040840135611a9b816119ce565b600080600080600080600060e0888a031215611bc457600080fd5b505085359760208701359750604087013596606081013596506080810135955060a0810135945060c0013592509050565b60008060408385031215611c0857600080fd5b8235611c13816119ce565b91506020830135611b5e816119ce565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611c8157611c81611c59565b5060010190565b600060208284031215611c9a57600080fd5b5051919050565b600060208284031215611cb357600080fd5b815161073f81611a12565b8181038181111561054f5761054f611c59565b808202811582820484141761054f5761054f611c59565b600082611d0557634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111561054f5761054f611c59565b600060208284031215611d2f57600080fd5b815161073f816119ce565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611d8a5784516001600160a01b031683529383019391830191600101611d65565b50506001600160a01b03969096166060850152505050608001529392505050565b600080600060608486031215611dc057600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200e8298e17dbb936bb9edc77c639c449a4341448b17a614fba07f5c91741b254e64736f6c63430008130033

Deployed Bytecode Sourcemap

4823:11340:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7256:67;;;;;;;;;;-1:-1:-1;7316:5:0;;;;;;;;;;;;-1:-1:-1;;;7316:5:0;;;;7256:67;;;;;;;:::i;:::-;;;;;;;;8136:133;;;;;;;;;;-1:-1:-1;8136:133:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;8136:133:0;1023:187:1;10584:183:0;;;;;;;;;;-1:-1:-1;10584:183:0;;;;;:::i;:::-;;:::i;:::-;;8275:132;;;;;;;;;;;;;:::i;:::-;;;2239:25:1;;;2227:2;2212:18;8275:132:0;2093:177:1;8826:312:0;;;;;;;;;;-1:-1:-1;8826:312:0;;;;;:::i;:::-;;:::i;15506:309::-;;;;;;;;;;-1:-1:-1;15506:309:0;;;;;:::i;:::-;;:::i;3705:87::-;;;;;;;;;;-1:-1:-1;3705:87:0;;;;;:::i;:::-;3760:4;3785:5;-1:-1:-1;;;;;3774:16:0;;;3785:5;;3774:16;;3705:87;7406:67;;;;;;;;;;-1:-1:-1;7406:67:0;;5026:2;3451:36:1;;3439:2;3424:18;7406:67:0;3309:184:1;5226:44:0;;;;;;;;;;-1:-1:-1;5226:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;8022:108;;;;;;;;;;-1:-1:-1;8022:108:0;;;;;:::i;:::-;;:::i;9674:556::-;;;;;;;;;;-1:-1:-1;9674:556:0;;;;;:::i;:::-;;:::i;10775:89::-;;;;;;;;;;;;;:::i;7479:66::-;;;;;;;;;;;;;:::i;7635:103::-;;;;;;;;;;-1:-1:-1;7635:103:0;;;;;:::i;:::-;-1:-1:-1;;;;;7718:18:0;7701:7;7718:18;;;:9;:18;;;;;;;7635:103;3798:133;;;;;;;;;;;;;:::i;6539:63::-;;;;;;;;;;;;;;;;6470:62;;;;;;;;;;;;;;;;6403:60;;;;;;;;;;;;;;;;7551:78;;;;;;;;;;-1:-1:-1;7603:7:0;7621:5;-1:-1:-1;;;;;7621:5:0;7551:78;;;-1:-1:-1;;;;;4049:32:1;;;4031:51;;4019:2;4004:18;7551:78:0;3885:203:1;10872:242:0;;;;;;;;;;-1:-1:-1;10872:242:0;;;;;:::i;:::-;;:::i;10238:338::-;;;;;;;;;;-1:-1:-1;10238:338:0;;;;;:::i;:::-;;:::i;7329:71::-;;;;;;;;;;-1:-1:-1;7391:7:0;;;;;;;;;;;;-1:-1:-1;;;7391:7:0;;;;7329:71;;5344:19;;;;;;;;;;-1:-1:-1;5344:19:0;;;;-1:-1:-1;;;;;5344:19:0;;;7744:139;;;;;;;;;;-1:-1:-1;7744:139:0;;;;;:::i;:::-;;:::i;9146:520::-;;;;;;;;;;-1:-1:-1;9146:520:0;;;;;:::i;:::-;;:::i;7889:127::-;;;;;;;;;;-1:-1:-1;7889:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;7987:18:0;;;7970:7;7987:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7889:127;8136:133;8211:4;8218:37;8227:10;8239:7;8248:6;8218:8;:37::i;:::-;-1:-1:-1;8263:4:0;8136:133;;;;;:::o;10584:183::-;3760:4;3785:5;-1:-1:-1;;;;;3785:5:0;3672:10;3774:16;3656:38;;;;-1:-1:-1;;;3656:38:0;;;;;;;:::i;:::-;;;;;;;;;10680:6:::1;10676:84;10690:20:::0;;::::1;10676:84;;;10749:8;10727:5;:19;10733:9;;10743:1;10733:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10727:19:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;10727:19:0;:30;;-1:-1:-1;;10727:30:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10712:3;::::1;::::0;::::1;:::i;:::-;;;;10676:84;;;;10584:183:::0;;;:::o;8275:132::-;7718:9;:18;;;;6090:42;8328:7;7718:18;;;;;8345:12;;8328:7;;8345:60;;7718:18;;8345:33;;:12;:16;:33::i;:::-;:37;;:60::i;:::-;8338:67;;8275:132;:::o;8826:312::-;3760:4;3785:5;-1:-1:-1;;;;;3785:5:0;3672:10;3774:16;3656:38;;;;-1:-1:-1;;;3656:38:0;;;;;;;:::i;:::-;8952:10:::1;:24:::0;;;8994:12:::1;::::0;:53:::1;::::0;9039:6:::1;::::0;8994:32:::1;::::0;9011:14;8994:16:::1;:32::i;:::-;:36:::0;::::1;:53::i;:::-;8978:13;:69:::0;9076:12:::1;::::0;:54:::1;::::0;9122:6:::1;::::0;9076:33:::1;::::0;9093:15;9076:16:::1;:33::i;:54::-;9059:14;:71:::0;-1:-1:-1;;;8826:312:0:o;15506:309::-;15604:4;15621:36;15631:6;15639:9;15650:6;15621:9;:36::i;:::-;15668:117;15677:6;15685:10;15697:87;15733:6;15697:87;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15697:19:0;;;;;;:11;:19;;;;;;;;15717:10;15697:31;;;;;;;;;:87;:35;:87::i;:::-;15668:8;:117::i;:::-;-1:-1:-1;15803:4:0;15506:309;;;;;;:::o;8022:108::-;3760:4;3785:5;-1:-1:-1;;;;;3785:5:0;3672:10;3774:16;3656:38;;;;-1:-1:-1;;;3656:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8096:21:0;;;::::1;;::::0;;;:11:::1;:21;::::0;;;;:32;;-1:-1:-1;;8096:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8022:108::o;9674:556::-;3760:4;3785:5;-1:-1:-1;;;;;3785:5:0;3672:10;3774:16;3656:38;;;;-1:-1:-1;;;3656:38:0;;;;;;;:::i;:::-;9780:13:::1;9796:33;9823:5;9796:22;9813:4;9796:12;;:16;;:22;;;;:::i;:33::-;9780:49;;9831:19;9853:34;9881:5;9853:23;9870:5;9853:12;;:16;;:23;;;;:::i;:34::-;9831:56;;9889:17;9909:36;9939:5;9909:25;9926:7;9909:12;;:16;;:25;;;;:::i;:36::-;9956:12;:20:::0;;;9978:14:::1;:28:::0;;;10008:15:::1;:27:::0;;;9889:56;-1:-1:-1;;10062:30:0::1;10087:4;10062:20;10080:1;10062:13;:11;:13::i;:::-;:17:::0;::::1;:20::i;:30::-;10046:46;;10120:5;10111;:14;;:38;;;;;10144:5;10129:11;:20;;10111:38;:60;;;;;10166:5;10153:9;:18;;10111:60;10103:119;;;::::0;-1:-1:-1;;;10103:119:0;;6557:2:1;10103:119:0::1;::::0;::::1;6539:21:1::0;6596:2;6576:18;;;6569:30;6635:34;6615:18;;;6608:62;-1:-1:-1;;;6686:18:1;;;6679:44;6740:19;;10103:119:0::1;6355:410:1::0;10103:119:0::1;9769:461;;;;9674:556:::0;;;:::o;10775:89::-;3760:4;3785:5;-1:-1:-1;;;;;3785:5:0;3672:10;3774:16;3656:38;;;;-1:-1:-1;;;3656:38:0;;;;;;;:::i;:::-;10827:29:::1;10842:13;;10827:14;:29::i;:::-;10775:89::o:0;7479:66::-;3760:4;3785:5;-1:-1:-1;;;;;3785:5:0;3672:10;3774:16;3656:38;;;;-1:-1:-1;;;3656:38:0;;;;;;;:::i;:::-;7522:14:::1;:21:::0;;-1:-1:-1;;;;7522:21:0::1;-1:-1:-1::0;;;7522:21:0::1;::::0;;7479:66::o;3798:133::-;3760:4;3785:5;-1:-1:-1;;;;;3785:5:0;3672:10;3774:16;3656:38;;;;-1:-1:-1;;;3656:38:0;;;;;;;:::i;:::-;3872:1:::1;3856:18:::0;;-1:-1:-1;;;;;;3856:18:0::1;::::0;;3891:32:::1;::::0;4031:51:1;;;3891:32:0::1;::::0;4019:2:1;4004:18;3891:32:0::1;;;;;;;3798:133::o:0;10872:242::-;3760:4;3785:5;-1:-1:-1;;;;;3785:5:0;3672:10;3774:16;3656:38;;;;-1:-1:-1;;;3656:38:0;;;;;;;:::i;:::-;10976:41:::1;::::0;-1:-1:-1;;;10976:41:0;;11011:4:::1;10976:41;::::0;::::1;4031:51:1::0;10958:15:0::1;::::0;10976:63:::1;::::0;11035:3:::1;::::0;10976:54:::1;::::0;11022:7;;-1:-1:-1;;;;;10976:26:0;::::1;::::0;::::1;::::0;4004:18:1;;10976:41:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:63::-;11076:20;::::0;11050:56:::1;::::0;-1:-1:-1;;;11050:56:0;;-1:-1:-1;;;;;11076:20:0;;::::1;11050:56;::::0;::::1;7133:51:1::0;7200:18;;;7193:34;;;10958:81:0;;-1:-1:-1;11050:25:0;::::1;::::0;::::1;::::0;7106:18:1;;11050:56:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;10238:338::-:0;3760:4;3785:5;-1:-1:-1;;;;;3785:5:0;3672:10;3774:16;3656:38;;;;-1:-1:-1;;;3656:38:0;;;;;;;:::i;:::-;10360:18:::1;:31:::0;;-1:-1:-1;;;;;10360:31:0;;::::1;-1:-1:-1::0;;;;;;10360:31:0;;::::1;::::0;::::1;::::0;;;10393:18:::1;:31:::0;;;;::::1;::::0;;::::1;::::0;::::1;::::0;;10426:20:::1;:35:::0;;;;;::::1;::::0;::::1;::::0;::::1;::::0;;;10360:18:::1;10472:23:::0;;;:11:::1;:23;::::0;;;;;:30;;-1:-1:-1;;10472:30:0;;::::1;10360:31:::0;10472:30;;::::1;::::0;;;10504:23;;;;;;:30;;;::::1;::::0;::::1;::::0;;10536:25;;;;;;:32;;;;::::1;::::0;;::::1;::::0;;10238:338::o;7744:139::-;7822:4;7829:40;7839:10;7851:9;7862:6;7829:9;:40::i;9146:520::-;3760:4;3785:5;-1:-1:-1;;;;;3785:5:0;3672:10;3774:16;3656:38;;;;-1:-1:-1;;;3656:38:0;;;;;;;:::i;:::-;9332:12:::1;:25:::0;;;9359:12:::1;:25:::0;;;9386:7:::1;:15:::0;;;9403:14:::1;:29:::0;;;9434:8:::1;:17:::0;;;9453:7:::1;:15:::0;;;9470:11:::1;:20:::0;;;9521:11:::1;::::0;:18:::1;::::0;-1:-1:-1;9521:15:0::1;:18::i;:::-;9509:8;;:30;;:63;;;;-1:-1:-1::0;9554:11:0::1;::::0;:18:::1;::::0;9570:1:::1;9554:15;:18::i;:::-;9543:7;;:29;;9509:63;:100;;;;-1:-1:-1::0;9591:11:0::1;::::0;:18:::1;::::0;9607:1:::1;9591:15;:18::i;:::-;9576:11;;:33;;9509:100;9501:157;;;::::0;-1:-1:-1;;;9501:157:0;;7690:2:1;9501:157:0::1;::::0;::::1;7672:21:1::0;7729:2;7709:18;;;7702:30;7768:34;7748:18;;;7741:62;-1:-1:-1;;;7819:18:1;;;7812:42;7871:19;;9501:157:0::1;7488:408:1::0;15823:335:0;-1:-1:-1;;;;;15916:19:0;;15908:68;;;;-1:-1:-1;;;15908:68:0;;8103:2:1;15908:68:0;;;8085:21:1;8142:2;8122:18;;;8115:30;8181:34;8161:18;;;8154:62;-1:-1:-1;;;8232:18:1;;;8225:34;8276:19;;15908:68:0;7901:400:1;15908:68:0;-1:-1:-1;;;;;15995:21:0;;15987:68;;;;-1:-1:-1;;;15987:68:0;;8508:2:1;15987:68:0;;;8490:21:1;8547:2;8527:18;;;8520:30;8586:34;8566:18;;;8559:62;-1:-1:-1;;;8637:18:1;;;8630:32;8679:19;;15987:68:0;8306:398:1;15987:68:0;-1:-1:-1;;;;;16066:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;16118:32;;2239:25:1;;;16118:32:0;;2212:18:1;16118:32:0;;;;;;;15823:335;;;:::o;1444:98::-;1502:7;1529:5;1533:1;1529;:5;:::i;1550:98::-;1608:7;1635:5;1639:1;1635;:5;:::i;1656:98::-;1714:7;1741:5;1745:1;1741;:5;:::i;14065:1433::-;-1:-1:-1;;;;;14162:20:0;;14154:70;;;;-1:-1:-1;;;14154:70:0;;9439:2:1;14154:70:0;;;9421:21:1;9478:2;9458:18;;;9451:30;9517:34;9497:18;;;9490:62;-1:-1:-1;;;9568:18:1;;;9561:35;9613:19;;14154:70:0;9237:401:1;14154:70:0;-1:-1:-1;;;;;14243:23:0;;14235:71;;;;-1:-1:-1;;;14235:71:0;;9845:2:1;14235:71:0;;;9827:21:1;9884:2;9864:18;;;9857:30;9923:34;9903:18;;;9896:62;-1:-1:-1;;;9974:18:1;;;9967:33;10017:19;;14235:71:0;9643:399:1;14235:71:0;-1:-1:-1;;;;;7718:18:0;;7701:7;7718:18;;;:9;:18;;;;;;14325:6;:27;;14317:88;;;;-1:-1:-1;;;14317:88:0;;10249:2:1;14317:88:0;;;10231:21:1;10288:2;10268:18;;;10261:30;10327:34;10307:18;;;10300:62;-1:-1:-1;;;10378:18:1;;;10371:47;10435:19;;14317:88:0;10047:413:1;14317:88:0;-1:-1:-1;;;;;14420:19:0;;;;;;:11;:19;;;;;;;;14419:20;:47;;;;-1:-1:-1;;;;;;14444:22:0;;;;;;:11;:22;;;;;;;;14443:23;14419:47;14416:95;;;14476:14;;-1:-1:-1;;;14476:14:0;;;;14468:41;;;;-1:-1:-1;;;14468:41:0;;10667:2:1;14468:41:0;;;10649:21:1;10706:2;10686:18;;;10679:30;-1:-1:-1;;;10725:18:1;;;10718:44;10779:18;;14468:41:0;10465:338:1;14468:41:0;-1:-1:-1;;;;;14525:19:0;;;;;;:11;:19;;;;;;;;14524:20;:47;;;;-1:-1:-1;;;;;;14549:22:0;;;;;;:11;:22;;;;;;;;14548:23;14524:47;:77;;;;-1:-1:-1;14596:4:0;;-1:-1:-1;;;;;14575:26:0;;;14596:4;;14575:26;;14524:77;:107;;;;-1:-1:-1;;;;;;14605:26:0;;6090:42;14605:26;;14524:107;14521:220;;;14689:15;;-1:-1:-1;;;;;14652:20:0;;;;;;:9;:20;;;;;;:32;;14677:6;14652:24;:32::i;:::-;14651:53;;14643:96;;;;-1:-1:-1;;;14643:96:0;;11010:2:1;14643:96:0;;;10992:21:1;11049:2;11029:18;;;11022:30;11088:32;11068:18;;;11061:60;11138:18;;14643:96:0;10808:354:1;14643:96:0;14764:4;;-1:-1:-1;;;;;14754:14:0;;;14764:4;;14754:14;14751:124;;14788:14;;14778:6;:24;;:47;;;-1:-1:-1;;;;;;14806:19:0;;;;;;:11;:19;;;;;;;;14778:47;:73;;;-1:-1:-1;;;;;;14829:22:0;;;;;;:11;:22;;;;;;;;14778:73;14770:103;;;;-1:-1:-1;;;14770:103:0;;11369:2:1;14770:103:0;;;11351:21:1;11408:2;11388:18;;;11381:30;-1:-1:-1;;;11427:18:1;;;11420:47;11484:18;;14770:103:0;11167:341:1;14770:103:0;14903:12;;14893:6;:22;;:45;;;-1:-1:-1;;;;;;14919:19:0;;;;;;:11;:19;;;;;;;;14893:45;:71;;;-1:-1:-1;;;;;;14942:22:0;;;;;;:11;:22;;;;;;;;14893:71;14885:101;;;;-1:-1:-1;;;14885:101:0;;11369:2:1;14885:101:0;;;11351:21:1;11408:2;11388:18;;;11381:30;-1:-1:-1;;;11427:18:1;;;11420:47;11484:18;;14885:101:0;11167:341:1;14885:101:0;15014:4;;-1:-1:-1;;;;;15001:17:0;;;15014:4;;15001:17;:41;;;;-1:-1:-1;;;;;;15023:19:0;;;;;;:11;:19;;;;;;;;15022:20;15001:41;14998:71;;;15065:1;15044:9;;:23;;;;;;;:::i;:::-;;;;-1:-1:-1;;14998:71:0;15082:45;15101:6;15109:9;15120:6;15082:18;:45::i;:::-;15079:105;;;15129:29;15144:13;;15129:14;:29::i;:::-;15180:1;15160:9;:22;15079:105;-1:-1:-1;;;;;15214:17:0;;;;;;:9;:17;;;;;;:29;;15236:6;15214:21;:29::i;:::-;-1:-1:-1;;;;;15194:17:0;;;;;;:9;:17;;;;;:49;;;;15279:32;15204:6;15301:9;15279:13;:32::i;:::-;:78;;15351:6;15279:78;;;15314:34;15322:6;15330:9;15341:6;15314:7;:34::i;:::-;-1:-1:-1;;;;;15391:20:0;;;;;;:9;:20;;;;;;15254:103;;-1:-1:-1;15391:40:0;;15254:103;15391:24;:40::i;:::-;-1:-1:-1;;;;;15368:20:0;;;;;;;:9;:20;;;;;;;:63;;;;15447:43;;;;;;;;;;15475:14;2239:25:1;;2227:2;2212:18;;2093:177;15447:43:0;;;;;;;;14143:1355;14065:1433;;;:::o;1868:240::-;1988:7;2049:12;2041:6;;;;2033:29;;;;-1:-1:-1;;;2033:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;2084:5:0;;;1868:240::o;11122:1063::-;5702:8;:15;;-1:-1:-1;;5702:15:0;5713:4;5702:15;;;;;;11259:14:::1;::::0;11241:12:::1;::::0;11217::::1;::::0;5702:8;;11216:66:::1;::::0;11280:1:::1;::::0;11217:57:::1;::::0;11259:14;;11217:37:::1;::::0;;;:16:::1;:19::i;:::-;:23:::0;::::1;:37::i;11216:66::-;11193:89;;11293:32;11328:42;11357:12;11328:24;11339:12;;11328:6;:10;;:24;;;;:::i;:42::-;11293:77:::0;-1:-1:-1;11381:14:0::1;11398:36;:6:::0;11293:77;11398:10:::1;:36::i;:::-;11381:53:::0;-1:-1:-1;11470:21:0::1;11502:24;11381:53:::0;11502:16:::1;:24::i;:::-;11537:20;11560:41;:21;11586:14:::0;11560:25:::1;:41::i;:::-;11537:64;;11612:19;11633:48;11650:30;11667:12;;11650;:16;;:30;;;;:::i;:::-;11633:12:::0;;:16:::1;:48::i;:::-;11612:69;;11692:29;11724;11740:12;;11724:11;:15;;:29;;;;:::i;:::-;11692:61:::0;-1:-1:-1;11767:34:0;;11764:103:::1;;11803:61;11816:24;11842:21;11803:12;:61::i;:::-;11923:12;::::0;11877:20:::1;::::0;11900:36:::1;::::0;:18:::1;:11:::0;11916:1:::1;11900:15;:18::i;:36::-;11877:59:::0;-1:-1:-1;11950:16:0;;11947:73:::1;;11976:18;::::0;11968:50:::1;::::0;-1:-1:-1;;;;;11976:18:0;;::::1;::::0;11968:50;::::1;;;::::0;12005:12;;11976:18:::1;11968:50:::0;11976:18;11968:50;12005:12;11976:18;11968:50;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;11947:73;12056:21;12091:28:::0;;12088:90:::1;;12129:20;::::0;12121:55:::1;::::0;-1:-1:-1;;;;;12129:20:0;;::::1;::::0;12121:55;::::1;;;::::0;12160:15;;12129:20:::1;12121:55:::0;12129:20;12121:55;12160:15;12129:20;12121:55;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;12088:90;-1:-1:-1::0;;5722:8:0;:16;;-1:-1:-1;;5722:16:0;;;-1:-1:-1;;;;;;;;11122:1063:0:o;1338:98::-;1396:7;1423:5;1427:1;1423;:5;:::i;8415:403::-;8560:14;;8635:13;;8625:4;8517;7718:18;;;:9;:18;;;;;;8667:8;;8517:4;;8550:24;;;;-1:-1:-1;8607:41:0;;8667:8;;8666:9;:24;;;;-1:-1:-1;8679:11:0;;-1:-1:-1;;;8679:11:0;;;;8666:24;:42;;;;-1:-1:-1;8694:14:0;;-1:-1:-1;;;8694:14:0;;;;8666:42;:54;;;;;8712:8;8666:54;:78;;;;-1:-1:-1;;;;;;8725:19:0;;;;;;:11;:19;;;;;;;;8724:20;8666:78;:99;;;;-1:-1:-1;8761:4:0;;-1:-1:-1;;;;;8748:17:0;;;8761:4;;8748:17;8666:99;:126;;;;;8782:10;;8769:9;;:23;;8666:126;:144;;;;;8796:14;8666:144;8659:151;8415:403;-1:-1:-1;;;;;;8415:403:0:o;12986:160::-;-1:-1:-1;;;;;13092:19:0;;13067:4;13092:19;;;:11;:19;;;;;;;;13091:20;:47;;;;-1:-1:-1;;;;;;;13116:22:0;;;;;:11;:22;;;;;;;;13115:23;;12986:160;-1:-1:-1;12986:160:0:o;13467:590::-;13553:7;13609:1;13576:30;13588:6;13596:9;13576:11;:30::i;:::-;:34;13573:462;;;13622:17;13642:59;13670:30;13682:6;13690:9;13670:11;:30::i;:::-;13653:11;;13642:23;;:6;;:10;:23::i;:59::-;13757:4;13739:24;;;;:9;:24;;;;;;13622:79;;-1:-1:-1;13739:39:0;;13622:79;13739:28;:39::i;:::-;13730:4;13712:24;;;;:9;:24;;;;;;;:66;;;;13794:42;;-1:-1:-1;;;;;13794:42:0;;;;;;;13826:9;2239:25:1;;2227:2;2212:18;;2093:177;13794:42:0;;;;;;;;13868:1;13850:7;;:20;:64;;;;;13907:7;;13874:30;13886:6;13894:9;13874:11;:30::i;:::-;:40;13850:64;13847:148;;;13916:77;13934:4;6090:42;13956:36;13984:7;;13956:23;13967:11;;13956:6;:10;;:23;;;;:::i;:36::-;13916:9;:77::i;:::-;14012:21;:6;14023:9;14012:10;:21::i;:::-;14005:28;;;;;13573:462;-1:-1:-1;14043:6:0;13467:590;-1:-1:-1;;13467:590:0:o;12544:434::-;12634:16;;;12648:1;12634:16;;;;;;;;12610:21;;12634:16;;;;;;;;;;-1:-1:-1;12634:16:0;12610:40;;12679:4;12661;12666:1;12661:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12661:23:0;;;:7;;;;;;;;;;:23;;;;12705:6;;:13;;;-1:-1:-1;;;12705:13:0;;;;:6;;;;;:11;;:13;;;;;12661:7;;12705:13;;;;;:6;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12695:4;12700:1;12695:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12695:23:0;;;:7;;;;;;;;;:23;12761:6;;12729:53;;12746:4;;12761:6;12770:11;12729:8;:53::i;:::-;12793:6;;:177;;-1:-1:-1;;;12793:177:0;;-1:-1:-1;;;;;12793:6:0;;;;:57;;:177;;12865:11;;12793:6;;12907:4;;12934;;12954:15;;12793:177;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12599:379;12544:434;:::o;12193:343::-;12306:6;;12274:53;;12291:4;;-1:-1:-1;;;;;12306:6:0;12315:11;12274:8;:53::i;:::-;12338:6;;12479:18;;12338:190;;-1:-1:-1;;;12338:190:0;;12401:4;12338:190;;;13357:34:1;13407:18;;;13400:34;;;12338:6:0;13450:18:1;;;13443:34;;;13493:18;;;13486:34;-1:-1:-1;;;;;12479:18:0;;;13536:19:1;;;13529:44;12512:15:0;13589:19:1;;;13582:35;12338:6:0;;;:22;;12368:9;;13291:19:1;;12338:190:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;12193:343;;:::o;13154:305::-;-1:-1:-1;;;;;13256:13:0;;13233:7;13256:13;;;:5;:13;;;;;;;;;:33;;-1:-1:-1;;;;;;13273:16:0;;;;;;:5;:16;;;;;;;;13256:33;13253:76;;;13298:11;;:29;;13322:3;13298:15;:29::i;:::-;13291:36;;;;13253:76;13355:4;;-1:-1:-1;;;;;13355:4:0;;;13342:17;;;;13339:38;;-1:-1:-1;13368:7:0;;13361:14;;13339:38;13400:4;;-1:-1:-1;;;;;13400:4:0;;;13390:14;;;;13387:36;;-1:-1:-1;13413:8:0;;13406:15;;13387:36;-1:-1:-1;13440:11:0;;13154:305;;;;:::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;1215:118::-;1301:5;1294:13;1287:21;1280:5;1277:32;1267:60;;1323:1;1320;1313:12;1338:750;1430:6;1438;1446;1499:2;1487:9;1478:7;1474:23;1470:32;1467:52;;;1515:1;1512;1505:12;1467:52;1555:9;1542:23;1584:18;1625:2;1617:6;1614:14;1611:34;;;1641:1;1638;1631:12;1611:34;1679:6;1668:9;1664:22;1654:32;;1724:7;1717:4;1713:2;1709:13;1705:27;1695:55;;1746:1;1743;1736:12;1695:55;1786:2;1773:16;1812:2;1804:6;1801:14;1798:34;;;1828:1;1825;1818:12;1798:34;1883:7;1876:4;1866:6;1863:1;1859:14;1855:2;1851:23;1847:34;1844:47;1841:67;;;1904:1;1901;1894:12;1841:67;1935:4;1927:13;;;;-1:-1:-1;1959:6:1;-1:-1:-1;;2000:20:1;;1987:34;2030:28;1987:34;2030:28;:::i;:::-;2077:5;2067:15;;;1338:750;;;;;:::o;2275:316::-;2352:6;2360;2368;2421:2;2409:9;2400:7;2396:23;2392:32;2389:52;;;2437:1;2434;2427:12;2389:52;-1:-1:-1;;2460:23:1;;;2530:2;2515:18;;2502:32;;-1:-1:-1;2581:2:1;2566:18;;;2553:32;;2275:316;-1:-1:-1;2275:316:1:o;2596:456::-;2673:6;2681;2689;2742:2;2730:9;2721:7;2717:23;2713:32;2710:52;;;2758:1;2755;2748:12;2710:52;2797:9;2784:23;2816:31;2841:5;2816:31;:::i;:::-;2866:5;-1:-1:-1;2923:2:1;2908:18;;2895:32;2936:33;2895:32;2936:33;:::i;:::-;2596:456;;2988:7;;-1:-1:-1;;;3042:2:1;3027:18;;;;3014:32;;2596:456::o;3057:247::-;3116:6;3169:2;3157:9;3148:7;3144:23;3140:32;3137:52;;;3185:1;3182;3175:12;3137:52;3224:9;3211:23;3243:31;3268:5;3243:31;:::i;3498:382::-;3563:6;3571;3624:2;3612:9;3603:7;3599:23;3595:32;3592:52;;;3640:1;3637;3630:12;3592:52;3679:9;3666:23;3698:31;3723:5;3698:31;:::i;:::-;3748:5;-1:-1:-1;3805:2:1;3790:18;;3777:32;3818:30;3777:32;3818:30;:::i;:::-;3867:7;3857:17;;;3498:382;;;;;:::o;4093:529::-;4170:6;4178;4186;4239:2;4227:9;4218:7;4214:23;4210:32;4207:52;;;4255:1;4252;4245:12;4207:52;4294:9;4281:23;4313:31;4338:5;4313:31;:::i;:::-;4363:5;-1:-1:-1;4420:2:1;4405:18;;4392:32;4433:33;4392:32;4433:33;:::i;:::-;4485:7;-1:-1:-1;4544:2:1;4529:18;;4516:32;4557:33;4516:32;4557:33;:::i;4627:592::-;4740:6;4748;4756;4764;4772;4780;4788;4841:3;4829:9;4820:7;4816:23;4812:33;4809:53;;;4858:1;4855;4848:12;4809:53;-1:-1:-1;;4881:23:1;;;4951:2;4936:18;;4923:32;;-1:-1:-1;5002:2:1;4987:18;;4974:32;;5053:2;5038:18;;5025:32;;-1:-1:-1;5104:3:1;5089:19;;5076:33;;-1:-1:-1;5156:3:1;5141:19;;5128:33;;-1:-1:-1;5208:3:1;5193:19;5180:33;;-1:-1:-1;4627:592:1;-1:-1:-1;4627:592:1:o;5224:388::-;5292:6;5300;5353:2;5341:9;5332:7;5328:23;5324:32;5321:52;;;5369:1;5366;5359:12;5321:52;5408:9;5395:23;5427:31;5452:5;5427:31;:::i;:::-;5477:5;-1:-1:-1;5534:2:1;5519:18;;5506:32;5547:33;5506:32;5547:33;:::i;5617:329::-;5819:2;5801:21;;;5858:1;5838:18;;;5831:29;-1:-1:-1;;;5891:2:1;5876:18;;5869:36;5937:2;5922:18;;5617:329::o;5951:127::-;6012:10;6007:3;6003:20;6000:1;5993:31;6043:4;6040:1;6033:15;6067:4;6064:1;6057:15;6083:127;6144:10;6139:3;6135:20;6132:1;6125:31;6175:4;6172:1;6165:15;6199:4;6196:1;6189:15;6215:135;6254:3;6275:17;;;6272:43;;6295:18;;:::i;:::-;-1:-1:-1;6342:1:1;6331:13;;6215:135::o;6770:184::-;6840:6;6893:2;6881:9;6872:7;6868:23;6864:32;6861:52;;;6909:1;6906;6899:12;6861:52;-1:-1:-1;6932:16:1;;6770:184;-1:-1:-1;6770:184:1:o;7238:245::-;7305:6;7358:2;7346:9;7337:7;7333:23;7329:32;7326:52;;;7374:1;7371;7364:12;7326:52;7406:9;7400:16;7425:28;7447:5;7425:28;:::i;8709:128::-;8776:9;;;8797:11;;;8794:37;;;8811:18;;:::i;8842:168::-;8915:9;;;8946;;8963:15;;;8957:22;;8943:37;8933:71;;8984:18;;:::i;9015:217::-;9055:1;9081;9071:132;;9125:10;9120:3;9116:20;9113:1;9106:31;9160:4;9157:1;9150:15;9188:4;9185:1;9178:15;9071:132;-1:-1:-1;9217:9:1;;9015:217::o;11513:125::-;11578:9;;;11599:10;;;11596:36;;;11612:18;;:::i;11775:251::-;11845:6;11898:2;11886:9;11877:7;11873:23;11869:32;11866:52;;;11914:1;11911;11904:12;11866:52;11946:9;11940:16;11965:31;11990:5;11965:31;:::i;12031:980::-;12293:4;12341:3;12330:9;12326:19;12372:6;12361:9;12354:25;12398:2;12436:6;12431:2;12420:9;12416:18;12409:34;12479:3;12474:2;12463:9;12459:18;12452:31;12503:6;12538;12532:13;12569:6;12561;12554:22;12607:3;12596:9;12592:19;12585:26;;12646:2;12638:6;12634:15;12620:29;;12667:1;12677:195;12691:6;12688:1;12685:13;12677:195;;;12756:13;;-1:-1:-1;;;;;12752:39:1;12740:52;;12847:15;;;;12812:12;;;;12788:1;12706:9;12677:195;;;-1:-1:-1;;;;;;;12928:32:1;;;;12923:2;12908:18;;12901:60;-1:-1:-1;;;12992:3:1;12977:19;12970:35;12889:3;12031:980;-1:-1:-1;;;12031:980:1:o;13628:306::-;13716:6;13724;13732;13785:2;13773:9;13764:7;13760:23;13756:32;13753:52;;;13801:1;13798;13791:12;13753:52;13830:9;13824:16;13814:26;;13880:2;13869:9;13865:18;13859:25;13849:35;;13924:2;13913:9;13909:18;13903:25;13893:35;;13628:306;;;;;:::o

Swarm Source

ipfs://0e8298e17dbb936bb9edc77c639c449a4341448b17a614fba07f5c91741b254e

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.