ETH Price: $3,134.35 (+0.69%)
Gas: 1.75 Gwei
 

Overview

ETH Balance

0.038565083446232305 ETH

Eth Value

$120.88 (@ $3,134.35/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve211579702024-11-10 14:48:5980 days ago1731250139IN
0x67372b64...fDA26C9D3
0 ETH0.0017651837.90712312
Approve202545662024-07-07 12:14:47206 days ago1720354487IN
0x67372b64...fDA26C9D3
0 ETH0.000078981.69627784
Transfer202507562024-07-06 23:28:35207 days ago1720308515IN
0x67372b64...fDA26C9D3
0 ETH0.000139171.65123758
Approve197416642024-04-26 19:39:59278 days ago1714160399IN
0x67372b64...fDA26C9D3
0 ETH0.000359967.73022135
Approve196757542024-04-17 14:21:11287 days ago1713363671IN
0x67372b64...fDA26C9D3
0 ETH0.0020190743.35939807
Approve196544022024-04-14 14:34:47290 days ago1713105287IN
0x67372b64...fDA26C9D3
0 ETH0.0005414611.6128545
Approve196479902024-04-13 16:58:35291 days ago1713027515IN
0x67372b64...fDA26C9D3
0 ETH0.000923619.80871785
Approve196479752024-04-13 16:55:35291 days ago1713027335IN
0x67372b64...fDA26C9D3
0 ETH0.0007394615.85943905
Approve196368142024-04-12 3:22:11292 days ago1712892131IN
0x67372b64...fDA26C9D3
0 ETH0.0006245713.41259544
Approve196367682024-04-12 3:12:47292 days ago1712891567IN
0x67372b64...fDA26C9D3
0 ETH0.0007112615.25460991
Approve196367542024-04-12 3:09:59292 days ago1712891399IN
0x67372b64...fDA26C9D3
0 ETH0.0006231313.47212716
Approve196367292024-04-12 3:04:59292 days ago1712891099IN
0x67372b64...fDA26C9D3
0 ETH0.0008096517.36485059
Approve196367112024-04-12 3:01:23292 days ago1712890883IN
0x67372b64...fDA26C9D3
0 ETH0.0006478513.89478911
Approve196365552024-04-12 2:30:11292 days ago1712889011IN
0x67372b64...fDA26C9D3
0 ETH0.0006252713.41045301
Approve171568722023-04-30 5:46:11640 days ago1682833571IN
0x67372b64...fDA26C9D3
0 ETH0.0016686735.78843211
Approve170953232023-04-21 14:21:59649 days ago1682086919IN
0x67372b64...fDA26C9D3
0 ETH0.0020630244.24621856
Approve170947532023-04-21 12:25:35649 days ago1682079935IN
0x67372b64...fDA26C9D3
0 ETH0.0016399935.2187081
Approve170946112023-04-21 11:57:11649 days ago1682078231IN
0x67372b64...fDA26C9D3
0 ETH0.0016091134.5556601
Approve170936822023-04-21 8:48:11649 days ago1682066891IN
0x67372b64...fDA26C9D3
0 ETH0.001732837.16397954
Approve170925532023-04-21 4:59:47649 days ago1682053187IN
0x67372b64...fDA26C9D3
0 ETH0.001820239.08863865
Approve170923422023-04-21 4:17:11649 days ago1682050631IN
0x67372b64...fDA26C9D3
0 ETH0.0021342945.83373544
Approve170923412023-04-21 4:16:59649 days ago1682050619IN
0x67372b64...fDA26C9D3
0 ETH0.0021265345.60838145
Approve170922912023-04-21 4:06:35649 days ago1682049995IN
0x67372b64...fDA26C9D3
0 ETH0.0018461539.64597366
Approve170921452023-04-21 3:36:59649 days ago1682048219IN
0x67372b64...fDA26C9D3
0 ETH0.0023912951.35276765
Approve170920712023-04-21 3:21:59649 days ago1682047319IN
0x67372b64...fDA26C9D3
0 ETH0.0020365443.67835837
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
196479672024-04-13 16:53:59291 days ago1713027239
0x67372b64...fDA26C9D3
0.0158212 ETH
196479672024-04-13 16:53:59291 days ago1713027239
0x67372b64...fDA26C9D3
0.0158212 ETH
196367362024-04-12 3:06:23292 days ago1712891183
0x67372b64...fDA26C9D3
0.01402392 ETH
196367362024-04-12 3:06:23292 days ago1712891183
0x67372b64...fDA26C9D3
0.01402392 ETH
171009192023-04-22 9:13:59648 days ago1682154839
0x67372b64...fDA26C9D3
0.00814963 ETH
171009192023-04-22 9:13:59648 days ago1682154839
0x67372b64...fDA26C9D3
0.00814963 ETH
170920072023-04-21 3:08:47649 days ago1682046527
0x67372b64...fDA26C9D3
0.02745212 ETH
170920072023-04-21 3:08:47649 days ago1682046527
0x67372b64...fDA26C9D3
0.02745212 ETH
170915422023-04-21 1:34:35650 days ago1682040875
0x67372b64...fDA26C9D3
0.04966439 ETH
170915422023-04-21 1:34:35650 days ago1682040875
0x67372b64...fDA26C9D3
0.04966439 ETH
170913542023-04-21 0:56:35650 days ago1682038595
0x67372b64...fDA26C9D3
0.12451689 ETH
170913542023-04-21 0:56:35650 days ago1682038595
0x67372b64...fDA26C9D3
0.12451689 ETH
170910422023-04-20 23:53:35650 days ago1682034815
0x67372b64...fDA26C9D3
0.14532543 ETH
170910422023-04-20 23:53:35650 days ago1682034815
0x67372b64...fDA26C9D3
0.14532543 ETH
170908972023-04-20 23:23:35650 days ago1682033015
0x67372b64...fDA26C9D3
0.00155799 ETH
170908972023-04-20 23:23:35650 days ago1682033015
0x67372b64...fDA26C9D3
0.00155799 ETH
170908972023-04-20 23:23:35650 days ago1682033015
0x67372b64...fDA26C9D3
0.16892482 ETH
170908972023-04-20 23:23:35650 days ago1682033015
0x67372b64...fDA26C9D3
0.16892482 ETH
170907832023-04-20 23:00:35650 days ago1682031635
0x67372b64...fDA26C9D3
0.0000078 ETH
170907832023-04-20 23:00:35650 days ago1682031635
0x67372b64...fDA26C9D3
0.0000078 ETH
170907832023-04-20 23:00:35650 days ago1682031635
0x67372b64...fDA26C9D3
0.00888414 ETH
170907832023-04-20 23:00:35650 days ago1682031635
0x67372b64...fDA26C9D3
0.00888414 ETH
170907832023-04-20 23:00:35650 days ago1682031635
0x67372b64...fDA26C9D3
0.55365851 ETH
170907832023-04-20 23:00:35650 days ago1682031635
0x67372b64...fDA26C9D3
0.55365851 ETH
170907352023-04-20 22:50:11650 days ago1682031011
0x67372b64...fDA26C9D3
0.00000188 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
wope

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-04-20
*/

// SPDX-License-Identifier: MIT

/*
TG: https://t.me/WojakPepeeth
WEB: https://wojakpepe.online/
TWITTER: https://twitter.com/wojakpepeeth
MEDIUM: https://medium.com/@wojakpepeeth

*/

pragma solidity ^0.8.17;

library Address{
    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        (bool success, ) = recipient.call{value: amount}("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }
}

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

    function _msgData() internal view virtual returns (bytes memory) {
        this;
        return msg.data;
    }
}

abstract contract Ownable is Context {
    address private _owner;

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

    constructor() {
        _setOwner(_msgSender());
    }

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

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

    function renounceOwnership() public virtual onlyOwner {
        _setOwner(address(0));
    }

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

    function _setOwner(address newOwner) private {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, 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 IFactory{
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IRouter {
    function factory() external pure returns (address);
    function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts);
    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 wope is Context, IERC20, Ownable {

    using Address for address payable;

    IRouter public router;
    address public pair;
    
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;

    mapping (address => bool) public _isExcludedFromFee;
    mapping (address => bool) public _isExcludedFromMaxBalance;
    mapping (address => bool) public _isBlacklisted;
    mapping (address => uint256) public _dogSellTime;

    uint256 private _dogSellTimeOffset = 3;
    bool public watchdogMode = true;
    uint256 public _caughtDogs;

    uint8 private constant _decimals = 9; 
    uint256 private _tTotal = 1_000_000 * (10**_decimals);
    uint256 public swapThreshold = 5_000 * (10**_decimals); 
    uint256 public maxTxAmount = 20_000 * (10**_decimals);
    uint256 public maxWallet =  20_000 * (10**_decimals);

    string private constant _name = "Wojak Pepe"; 
    string private constant _symbol = "WOPE";

    struct Tax{
        uint8 marketingTax;
        uint8 lpTax;
    }

    struct TokensFromTax{
        uint marketingTokens;
        uint lpTokens;
    }
    TokensFromTax public totalTokensFromTax;

    Tax public buyTax = Tax(25,1);
    Tax public sellTax = Tax(75,1);
    
    address public marketingWallet = 0xdA3389a58057136F121a48E119Beb679702aEb2e;
    
    bool private swapping;
    uint private _swapCooldown = 5; 
    uint private _lastSwap;
    modifier lockTheSwap {
        swapping = true;
        _;
        swapping = false;
    }

    constructor () {
        _tOwned[_msgSender()] = _tTotal;
        IRouter _router = IRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        address _pair = IFactory(_router.factory()).createPair(address(this), _router.WETH());
        router = _router;
        pair = _pair;
        _approve(owner(), address(router), ~uint256(0));
        
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[marketingWallet] = true;

        _isExcludedFromMaxBalance[owner()] = true;
        _isExcludedFromMaxBalance[address(this)] = true;
        _isExcludedFromMaxBalance[pair] = true;
        _isExcludedFromMaxBalance[marketingWallet] = true;
        
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

// ================= ERC20 =============== //
    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 totalSupply() public view override returns (uint256) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _tOwned[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 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 _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);
    }
    
    receive() external payable {}
// ========================================== //

//============== Owner Functions ===========//
   
    function owner_setBlacklisted(address account, bool isBlacklisted) public onlyOwner{
        _isBlacklisted[account] = isBlacklisted;
    }
    
    function owner_setBulkIsBlacklisted(address[] memory accounts, bool state) external onlyOwner{
        for(uint256 i =0; i < accounts.length; i++){
            _isBlacklisted[accounts[i]] = state;
        }
    }

    function owner_setBuyTaxes(uint8 marketingTax, uint8 lpTax) external onlyOwner{
        uint tTax =  marketingTax + lpTax;
        require(tTax <= 30, "Can't set tax too high");
        buyTax = Tax(marketingTax,lpTax);
        emit TaxesChanged();
    }

    function owner_setSellTaxes(uint8 marketingTax, uint8 lpTax) external onlyOwner{
        uint tTax = marketingTax + lpTax;
        require(tTax <= 80, "Can't set tax too high");
        sellTax = Tax(marketingTax,lpTax);
        emit TaxesChanged();
    }
    
    function owner_setTransferMaxes(uint maxTX_EXACT, uint maxWallet_EXACT) public onlyOwner{
        uint pointFiveSupply = (_tTotal * 5 / 1000) / (10**_decimals);
        require(maxTX_EXACT >= pointFiveSupply && maxWallet_EXACT >= pointFiveSupply, "Invalid Settings");
        maxTxAmount = maxTX_EXACT * (10**_decimals);
        maxWallet = maxWallet_EXACT * (10**_decimals);
    }

    function owner_rescueETH(uint256 weiAmount) public onlyOwner{
        require(address(this).balance >= weiAmount, "Insufficient ETH balance");
        payable(msg.sender).transfer(weiAmount);
    }

    function owner_rescueTokens() public{
        // Make sure ca doesn't withdraw the pending taxes to be swapped.
        // Sends excess tokens / accidentally sent tokens back to marketing wallet.
        uint pendingTaxTokens = totalTokensFromTax.lpTokens + totalTokensFromTax.marketingTokens;
        require(balanceOf(address(this)) >  pendingTaxTokens);
        uint excessTokens = balanceOf(address(this)) - pendingTaxTokens;
        _transfer(address(this), marketingWallet, excessTokens);
    }
    
    function owner_setWatchDogg(bool status_) external onlyOwner{
        watchdogMode = status_;
    }

    function owner_setDogSellTimeForAddress(address holder, uint dTime) external onlyOwner{
        _dogSellTime[holder] = block.timestamp + dTime;
    }

// ========================================//
    
    function _getTaxValues(uint amount, address from, bool isSell) private returns(uint256){
        Tax memory tmpTaxes = buyTax;
        if (isSell){
            tmpTaxes = sellTax;
        }

        uint tokensForMarketing = amount * tmpTaxes.marketingTax / 100;
        uint tokensForLP = amount * tmpTaxes.lpTax / 100;

        if(tokensForMarketing > 0)
            totalTokensFromTax.marketingTokens += tokensForMarketing;

        if(tokensForLP > 0)
            totalTokensFromTax.lpTokens += tokensForLP;

        uint totalTaxedTokens = tokensForMarketing + tokensForLP;

        _tOwned[address(this)] += totalTaxedTokens;
        if(totalTaxedTokens > 0)
            emit Transfer (from, address(this), totalTaxedTokens);
            
        return (amount - totalTaxedTokens);
    }

    function _transfer(address from,address to,uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        require(amount <= maxTxAmount || _isExcludedFromMaxBalance[from], "Transfer amount exceeds the _maxTxAmount.");
        require(!_isBlacklisted[from] && !_isBlacklisted[to], "Blacklisted, can't trade");

        if(!_isExcludedFromMaxBalance[to])
            require(balanceOf(to) + amount <= maxWallet, "Transfer amount exceeds the maxWallet.");
        
        if (balanceOf(address(this)) >= swapThreshold && block.timestamp >= (_lastSwap + _swapCooldown) && !swapping && from != pair && from != owner() && to != owner())
            swapAndLiquify();
          
        _tOwned[from] -= amount;
        uint256 transferAmount = amount;
        
        if(!_isExcludedFromFee[from] && !_isExcludedFromFee[to]){
            transferAmount = _getTaxValues(amount, from, to == pair);
            if (from == pair){
                if(watchdogMode){
                    _caughtDogs++;
                    _dogSellTime[to] = block.timestamp + _dogSellTimeOffset;
                }
            }else{
                if (_dogSellTime[from] != 0)
                    require(block.timestamp < _dogSellTime[from]); 
            }
        }

        _tOwned[to] += transferAmount;
        emit Transfer(from, to, transferAmount);
    }

    function swapAndLiquify() private lockTheSwap{
        
        if(totalTokensFromTax.marketingTokens > 0){
            uint256 ethSwapped = swapTokensForETH(totalTokensFromTax.marketingTokens);
            if(ethSwapped > 0){
                payable(marketingWallet).transfer(ethSwapped);
                totalTokensFromTax.marketingTokens = 0;
            }
        }   

        if(totalTokensFromTax.lpTokens > 0){
            uint half = totalTokensFromTax.lpTokens / 2;
            uint otherHalf = totalTokensFromTax.lpTokens - half;
            uint balAutoLP = swapTokensForETH(half);
            if (balAutoLP > 0)
                addLiquidity(otherHalf, balAutoLP);
            totalTokensFromTax.lpTokens = 0;
        }

        emit SwapAndLiquify();

        _lastSwap = block.timestamp;
    }

    function swapTokensForETH(uint256 tokenAmount) private returns (uint256) {
        uint256 initialBalance = address(this).balance;
        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
        );
        return (address(this).balance - initialBalance);
    }

    function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private {
        _approve(address(this), address(router), tokenAmount);

        (,uint256 ethFromLiquidity,) = router.addLiquidityETH {value: ethAmount} (
            address(this),
            tokenAmount,
            0,
            0,
            owner(),
            block.timestamp
        );
        
        if (ethAmount - ethFromLiquidity > 0)
            payable(marketingWallet).sendValue (ethAmount - ethFromLiquidity);
    }

    event SwapAndLiquify();
    event TaxesChanged();

}

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":[],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[],"name":"TaxesChanged","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":"_caughtDogs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_dogSellTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isBlacklisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"_isExcludedFromMaxBalance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"buyTax","outputs":[{"internalType":"uint8","name":"marketingTax","type":"uint8"},{"internalType":"uint8","name":"lpTax","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","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":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTxAmount","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":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"weiAmount","type":"uint256"}],"name":"owner_rescueETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner_rescueTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"isBlacklisted","type":"bool"}],"name":"owner_setBlacklisted","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"state","type":"bool"}],"name":"owner_setBulkIsBlacklisted","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"marketingTax","type":"uint8"},{"internalType":"uint8","name":"lpTax","type":"uint8"}],"name":"owner_setBuyTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"uint256","name":"dTime","type":"uint256"}],"name":"owner_setDogSellTimeForAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"marketingTax","type":"uint8"},{"internalType":"uint8","name":"lpTax","type":"uint8"}],"name":"owner_setSellTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTX_EXACT","type":"uint256"},{"internalType":"uint256","name":"maxWallet_EXACT","type":"uint256"}],"name":"owner_setTransferMaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"status_","type":"bool"}],"name":"owner_setWatchDogg","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint8","name":"marketingTax","type":"uint8"},{"internalType":"uint8","name":"lpTax","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalTokensFromTax","outputs":[{"internalType":"uint256","name":"marketingTokens","type":"uint256"},{"internalType":"uint256","name":"lpTokens","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"watchdogMode","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405260036009908155600a805460ff19166001178155620000249190620006c5565b6200003390620f4240620006dd565b600c55620000446009600a620006c5565b6200005290611388620006dd565b600d55620000636009600a620006c5565b6200007190614e20620006dd565b600e55620000826009600a620006c5565b6200009090614e20620006dd565b600f5560408051808201825260198152600160209182018190526012805461011961ffff19918216179091558351808501909452604b845292909101526013805461014b9216919091179055601480546001600160a01b03191673da3389a58057136f121a48e119beb679702aeb2e17905560056015553480156200011457600080fd5b50620001203362000434565b600c5433600090815260036020908152604080832093909355825163c45a015560e01b81529251737a250d5630b4cf539739df2c5dacb4c659f2488d93849263c45a0155926004808401938290030181865afa15801562000185573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001ab9190620006f7565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021f9190620006f7565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200026d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002939190620006f7565b600180546001600160a01b038581166001600160a01b031992831617909255600280548484169216919091179055600054919250620002e291166001546001600160a01b031660001962000484565b600160056000620002fb6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260059093528183208054851660019081179091556014549091168352908220805490931681179092556006906200036b6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526006909352818320805485166001908117909155600254821684528284208054861682179055601454909116835291208054909216179055620003dc3390565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600c546040516200042491815260200190565b60405180910390a3505062000722565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038316620004ec5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b0382166200054f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401620004e3565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000607578160001904821115620005eb57620005eb620005b0565b80851615620005f957918102915b93841c9390800290620005cb565b509250929050565b6000826200062057506001620006bf565b816200062f57506000620006bf565b8160018114620006485760028114620006535762000673565b6001915050620006bf565b60ff841115620006675762000667620005b0565b50506001821b620006bf565b5060208310610133831016604e8410600b841016171562000698575081810a620006bf565b620006a48383620005c6565b8060001904821115620006bb57620006bb620005b0565b0290505b92915050565b6000620006d660ff8416836200060f565b9392505050565b8082028115828204841417620006bf57620006bf620005b0565b6000602082840312156200070a57600080fd5b81516001600160a01b0381168114620006d657600080fd5b61213080620007326000396000f3fe6080604052600436106102295760003560e01c8063768dc71011610123578063cfe9dde0116100ab578063f2fde38b1161006f578063f2fde38b14610709578063f837ae0714610729578063f887ea4014610749578063f8b45b0514610769578063f9d0ee941461077f57600080fd5b8063cfe9dde014610646578063dd62ed3e14610666578063e0a877c8146106ac578063ee9a5d82146106c6578063ef07a182146106f357600080fd5b8063a457c2d7116100f2578063a457c2d7146105a3578063a8aa1b31146105c3578063a9059cbb146105e3578063cb0e6f7b14610603578063cc1776d31461062357600080fd5b8063768dc710146105125780638c0b5e22146105425780638da5cb5b1461055857806395d89b411461057657600080fd5b806339509351116101b15780635966c81e116101755780635966c81e1461045a5780635e278da61461047a57806370a082311461048f578063715018a6146104c557806375f0a874146104da57600080fd5b8063395093511461039d57806343c39364146103bd5780634ba422bc146103dd5780634cf27997146103fd5780634f7041a51461041d57600080fd5b80631b0f9381116101f85780631b0f9381146102df5780631cdd3be31461030157806323b872dd1461033157806328c61f4114610351578063313ce5671461038157600080fd5b80630445b6671461023557806306fdde031461025e578063095ea7b31461029a57806318160ddd146102ca57600080fd5b3661023057005b600080fd5b34801561024157600080fd5b5061024b600d5481565b6040519081526020015b60405180910390f35b34801561026a57600080fd5b5060408051808201909152600a815269576f6a616b205065706560b01b60208201525b6040516102559190611b59565b3480156102a657600080fd5b506102ba6102b5366004611bcc565b6107af565b6040519015158152602001610255565b3480156102d657600080fd5b50600c5461024b565b3480156102eb57600080fd5b506102ff6102fa366004611c09565b6107c6565b005b34801561030d57600080fd5b506102ba61031c366004611c3c565b60076020526000908152604090205460ff1681565b34801561033d57600080fd5b506102ba61034c366004611c60565b6108b4565b34801561035d57600080fd5b506102ba61036c366004611c3c565b60066020526000908152604090205460ff1681565b34801561038d57600080fd5b5060405160098152602001610255565b3480156103a957600080fd5b506102ba6103b8366004611bcc565b610906565b3480156103c957600080fd5b506102ff6103d8366004611cb1565b61093d565b3480156103e957600080fd5b506102ff6103f8366004611ccc565b61097a565b34801561040957600080fd5b506102ff610418366004611bcc565b610a60565b34801561042957600080fd5b506012546104409060ff8082169161010090041682565b6040805160ff938416815292909116602083015201610255565b34801561046657600080fd5b506102ff610475366004611cee565b610ab4565b34801561048657600080fd5b506102ff610b5f565b34801561049b57600080fd5b5061024b6104aa366004611c3c565b6001600160a01b031660009081526003602052604090205490565b3480156104d157600080fd5b506102ff610bc5565b3480156104e657600080fd5b506014546104fa906001600160a01b031681565b6040516001600160a01b039091168152602001610255565b34801561051e57600080fd5b506102ba61052d366004611c3c565b60056020526000908152604090205460ff1681565b34801561054e57600080fd5b5061024b600e5481565b34801561056457600080fd5b506000546001600160a01b03166104fa565b34801561058257600080fd5b50604080518082019091526004815263574f504560e01b602082015261028d565b3480156105af57600080fd5b506102ba6105be366004611bcc565b610bfb565b3480156105cf57600080fd5b506002546104fa906001600160a01b031681565b3480156105ef57600080fd5b506102ba6105fe366004611bcc565b610c32565b34801561060f57600080fd5b506102ff61061e366004611c09565b610c3f565b34801561062f57600080fd5b506013546104409060ff8082169161010090041682565b34801561065257600080fd5b506102ff610661366004611d1d565b610d24565b34801561067257600080fd5b5061024b610681366004611df4565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156106b857600080fd5b50600a546102ba9060ff1681565b3480156106d257600080fd5b5061024b6106e1366004611c3c565b60086020526000908152604090205481565b3480156106ff57600080fd5b5061024b600b5481565b34801561071557600080fd5b506102ff610724366004611c3c565b610dba565b34801561073557600080fd5b506102ff610744366004611e2d565b610e55565b34801561075557600080fd5b506001546104fa906001600160a01b031681565b34801561077557600080fd5b5061024b600f5481565b34801561078b57600080fd5b5060105460115461079a919082565b60408051928352602083019190915201610255565b60006107bc338484610eaa565b5060015b92915050565b6000546001600160a01b031633146107f95760405162461bcd60e51b81526004016107f090611e59565b60405180910390fd5b60006108058284611ea4565b60ff169050601e8111156108545760405162461bcd60e51b8152602060048201526016602482015275086c2dc4ee840e6cae840e8c2f040e8dede40d0d2ced60531b60448201526064016107f0565b60408051808201825260ff85811680835290851660209092018290526012805461ffff1916909117610100909202919091179055517ff305e997be174eb1fbb444c89b9f4089de693e9b3b40486accc62ae99885e48090600090a1505050565b60006108c1848484610fce565b6001600160a01b0384166000908152600460209081526040808320338085529252909120546108fc9186916108f7908690611ebd565b610eaa565b5060019392505050565b3360008181526004602090815260408083206001600160a01b038716845290915281205490916107bc9185906108f7908690611ed0565b6000546001600160a01b031633146109675760405162461bcd60e51b81526004016107f090611e59565b600a805460ff1916911515919091179055565b6000546001600160a01b031633146109a45760405162461bcd60e51b81526004016107f090611e59565b60006109b26009600a611fc7565b6103e8600c5460056109c49190611fd6565b6109ce9190611fed565b6109d89190611fed565b90508083101580156109ea5750808210155b610a295760405162461bcd60e51b815260206004820152601060248201526f496e76616c69642053657474696e677360801b60448201526064016107f0565b610a356009600a611fc7565b610a3f9084611fd6565b600e55610a4e6009600a611fc7565b610a589083611fd6565b600f55505050565b6000546001600160a01b03163314610a8a5760405162461bcd60e51b81526004016107f090611e59565b610a948142611ed0565b6001600160a01b0390921660009081526008602052604090209190915550565b6000546001600160a01b03163314610ade5760405162461bcd60e51b81526004016107f090611e59565b80471015610b2e5760405162461bcd60e51b815260206004820152601860248201527f496e73756666696369656e74204554482062616c616e6365000000000000000060448201526064016107f0565b604051339082156108fc029083906000818181858888f19350505050158015610b5b573d6000803e3d6000fd5b5050565b601054601154600091610b7191611ed0565b306000908152600360205260409020549091508110610b8f57600080fd5b30600090815260036020526040812054610baa908390611ebd565b601454909150610b5b9030906001600160a01b031683610fce565b6000546001600160a01b03163314610bef5760405162461bcd60e51b81526004016107f090611e59565b610bf96000611513565b565b3360008181526004602090815260408083206001600160a01b038716845290915281205490916107bc9185906108f7908690611ebd565b60006107bc338484610fce565b6000546001600160a01b03163314610c695760405162461bcd60e51b81526004016107f090611e59565b6000610c758284611ea4565b60ff1690506050811115610cc45760405162461bcd60e51b8152602060048201526016602482015275086c2dc4ee840e6cae840e8c2f040e8dede40d0d2ced60531b60448201526064016107f0565b60408051808201825260ff85811680835290851660209092018290526013805461ffff1916909117610100909202919091179055517ff305e997be174eb1fbb444c89b9f4089de693e9b3b40486accc62ae99885e48090600090a1505050565b6000546001600160a01b03163314610d4e5760405162461bcd60e51b81526004016107f090611e59565b60005b8251811015610db5578160076000858481518110610d7157610d7161200f565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610dad81612025565b915050610d51565b505050565b6000546001600160a01b03163314610de45760405162461bcd60e51b81526004016107f090611e59565b6001600160a01b038116610e495760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107f0565b610e5281611513565b50565b6000546001600160a01b03163314610e7f5760405162461bcd60e51b81526004016107f090611e59565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6001600160a01b038316610f0c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107f0565b6001600160a01b038216610f6d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107f0565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166110325760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016107f0565b6001600160a01b0382166110945760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016107f0565b600081116110f65760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016107f0565b600e548111158061111f57506001600160a01b03831660009081526006602052604090205460ff165b61117d5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206578636565647320746865205f6d61786044820152682a3c20b6b7bab73a1760b91b60648201526084016107f0565b6001600160a01b03831660009081526007602052604090205460ff161580156111bf57506001600160a01b03821660009081526007602052604090205460ff16155b61120b5760405162461bcd60e51b815260206004820152601860248201527f426c61636b6c69737465642c2063616e2774207472616465000000000000000060448201526064016107f0565b6001600160a01b03821660009081526006602052604090205460ff166112b557600f548161124e846001600160a01b031660009081526003602052604090205490565b6112589190611ed0565b11156112b55760405162461bcd60e51b815260206004820152602660248201527f5472616e7366657220616d6f756e74206578636565647320746865206d61785760448201526530b63632ba1760d11b60648201526084016107f0565b600d5430600090815260036020526040902054101580156112e557506015546016546112e19190611ed0565b4210155b80156112fb5750601454600160a01b900460ff16155b801561131557506002546001600160a01b03848116911614155b801561132f57506000546001600160a01b03848116911614155b801561134957506000546001600160a01b03838116911614155b1561135657611356611563565b6001600160a01b0383166000908152600360205260408120805483929061137e908490611ebd565b90915550506001600160a01b038316600090815260056020526040902054819060ff161580156113c757506001600160a01b03831660009081526005602052604090205460ff16155b15611491576002546113ea90839086906001600160a01b0387811691161461166c565b6002549091506001600160a01b039081169085160361144f57600a5460ff161561144a57600b805490600061141e83612025565b90915550506009546114309042611ed0565b6001600160a01b0384166000908152600860205260409020555b611491565b6001600160a01b03841660009081526008602052604090205415611491576001600160a01b038416600090815260086020526040902054421061149157600080fd5b6001600160a01b038316600090815260036020526040812080548392906114b9908490611ed0565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161150591815260200190565b60405180910390a350505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6014805460ff60a01b1916600160a01b179055601054156115d957600061158e6010600001546117cf565b905080156115d7576014546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156115d0573d6000803e3d6000fd5b5060006010555b505b60115415611630576011546000906115f390600290611fed565b90506000816010600101546116089190611ebd565b90506000611615836117cf565b9050801561162757611627828261193f565b50506000601155505b6040517fd9f20192eafa060dc85f5f8b3b0a5b9c106b02d5d1503335b857e50c2bb7003090600090a1426016556014805460ff60a01b19169055565b6040805180820190915260125460ff808216835261010090910416602082015260009082156116b757506040805180820190915260135460ff80821683526101009091041660208201525b80516000906064906116cc9060ff1688611fd6565b6116d69190611fed565b905060006064836020015160ff16886116ef9190611fd6565b6116f99190611fed565b9050811561171c5781601060000160008282546117169190611ed0565b90915550505b801561173d5780601060010160008282546117379190611ed0565b90915550505b60006117498284611ed0565b3060009081526003602052604081208054929350839290919061176d908490611ed0565b909155505080156117b95760405181815230906001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b6117c38189611ebd565b98975050505050505050565b604080516002808252606082018352600092479284929091602083019080368337019050509050308160008151811061180a5761180a61200f565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611863573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611887919061203e565b8160018151811061189a5761189a61200f565b6001600160a01b0392831660209182029290920101526001546118c09130911686610eaa565b60015460405163791ac94760e01b81526001600160a01b039091169063791ac947906118f990879060009086903090429060040161205b565b600060405180830381600087803b15801561191357600080fd5b505af1158015611927573d6000803e3d6000fd5b5050505081476119379190611ebd565b949350505050565b6001546119579030906001600160a01b031684610eaa565b6001546000906001600160a01b031663f305d71983308685806119826000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156119ea573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611a0f91906120cc565b50915060009050611a208284611ebd565b1115610db557610db5611a338284611ebd565b6014546001600160a01b03169080471015611a905760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016107f0565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114611add576040519150601f19603f3d011682016040523d82523d6000602084013e611ae2565b606091505b5050905080610db55760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d6179206861766520726576657274656400000000000060648201526084016107f0565b600060208083528351808285015260005b81811015611b8657858101830151858201604001528201611b6a565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610e5257600080fd5b8035611bc781611ba7565b919050565b60008060408385031215611bdf57600080fd5b8235611bea81611ba7565b946020939093013593505050565b803560ff81168114611bc757600080fd5b60008060408385031215611c1c57600080fd5b611c2583611bf8565b9150611c3360208401611bf8565b90509250929050565b600060208284031215611c4e57600080fd5b8135611c5981611ba7565b9392505050565b600080600060608486031215611c7557600080fd5b8335611c8081611ba7565b92506020840135611c9081611ba7565b929592945050506040919091013590565b80358015158114611bc757600080fd5b600060208284031215611cc357600080fd5b611c5982611ca1565b60008060408385031215611cdf57600080fd5b50508035926020909101359150565b600060208284031215611d0057600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215611d3057600080fd5b823567ffffffffffffffff80821115611d4857600080fd5b818501915085601f830112611d5c57600080fd5b8135602082821115611d7057611d70611d07565b8160051b604051601f19603f83011681018181108682111715611d9557611d95611d07565b604052928352818301935084810182019289841115611db357600080fd5b948201945b83861015611dd857611dc986611bbc565b85529482019493820193611db8565b9650611de79050878201611ca1565b9450505050509250929050565b60008060408385031215611e0757600080fd5b8235611e1281611ba7565b91506020830135611e2281611ba7565b809150509250929050565b60008060408385031215611e4057600080fd5b8235611e4b81611ba7565b9150611c3360208401611ca1565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60ff81811683821601908111156107c0576107c0611e8e565b818103818111156107c0576107c0611e8e565b808201808211156107c0576107c0611e8e565b600181815b80851115611f1e578160001904821115611f0457611f04611e8e565b80851615611f1157918102915b93841c9390800290611ee8565b509250929050565b600082611f35575060016107c0565b81611f42575060006107c0565b8160018114611f585760028114611f6257611f7e565b60019150506107c0565b60ff841115611f7357611f73611e8e565b50506001821b6107c0565b5060208310610133831016604e8410600b8410161715611fa1575081810a6107c0565b611fab8383611ee3565b8060001904821115611fbf57611fbf611e8e565b029392505050565b6000611c5960ff841683611f26565b80820281158282048414176107c0576107c0611e8e565b60008261200a57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b60006001820161203757612037611e8e565b5060010190565b60006020828403121561205057600080fd5b8151611c5981611ba7565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156120ab5784516001600160a01b031683529383019391830191600101612086565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156120e157600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220dab7bc63412898fabb042521a61680b0e0a9962eabb6fff5788d9ff720c8eff864736f6c63430008110033

Deployed Bytecode

0x6080604052600436106102295760003560e01c8063768dc71011610123578063cfe9dde0116100ab578063f2fde38b1161006f578063f2fde38b14610709578063f837ae0714610729578063f887ea4014610749578063f8b45b0514610769578063f9d0ee941461077f57600080fd5b8063cfe9dde014610646578063dd62ed3e14610666578063e0a877c8146106ac578063ee9a5d82146106c6578063ef07a182146106f357600080fd5b8063a457c2d7116100f2578063a457c2d7146105a3578063a8aa1b31146105c3578063a9059cbb146105e3578063cb0e6f7b14610603578063cc1776d31461062357600080fd5b8063768dc710146105125780638c0b5e22146105425780638da5cb5b1461055857806395d89b411461057657600080fd5b806339509351116101b15780635966c81e116101755780635966c81e1461045a5780635e278da61461047a57806370a082311461048f578063715018a6146104c557806375f0a874146104da57600080fd5b8063395093511461039d57806343c39364146103bd5780634ba422bc146103dd5780634cf27997146103fd5780634f7041a51461041d57600080fd5b80631b0f9381116101f85780631b0f9381146102df5780631cdd3be31461030157806323b872dd1461033157806328c61f4114610351578063313ce5671461038157600080fd5b80630445b6671461023557806306fdde031461025e578063095ea7b31461029a57806318160ddd146102ca57600080fd5b3661023057005b600080fd5b34801561024157600080fd5b5061024b600d5481565b6040519081526020015b60405180910390f35b34801561026a57600080fd5b5060408051808201909152600a815269576f6a616b205065706560b01b60208201525b6040516102559190611b59565b3480156102a657600080fd5b506102ba6102b5366004611bcc565b6107af565b6040519015158152602001610255565b3480156102d657600080fd5b50600c5461024b565b3480156102eb57600080fd5b506102ff6102fa366004611c09565b6107c6565b005b34801561030d57600080fd5b506102ba61031c366004611c3c565b60076020526000908152604090205460ff1681565b34801561033d57600080fd5b506102ba61034c366004611c60565b6108b4565b34801561035d57600080fd5b506102ba61036c366004611c3c565b60066020526000908152604090205460ff1681565b34801561038d57600080fd5b5060405160098152602001610255565b3480156103a957600080fd5b506102ba6103b8366004611bcc565b610906565b3480156103c957600080fd5b506102ff6103d8366004611cb1565b61093d565b3480156103e957600080fd5b506102ff6103f8366004611ccc565b61097a565b34801561040957600080fd5b506102ff610418366004611bcc565b610a60565b34801561042957600080fd5b506012546104409060ff8082169161010090041682565b6040805160ff938416815292909116602083015201610255565b34801561046657600080fd5b506102ff610475366004611cee565b610ab4565b34801561048657600080fd5b506102ff610b5f565b34801561049b57600080fd5b5061024b6104aa366004611c3c565b6001600160a01b031660009081526003602052604090205490565b3480156104d157600080fd5b506102ff610bc5565b3480156104e657600080fd5b506014546104fa906001600160a01b031681565b6040516001600160a01b039091168152602001610255565b34801561051e57600080fd5b506102ba61052d366004611c3c565b60056020526000908152604090205460ff1681565b34801561054e57600080fd5b5061024b600e5481565b34801561056457600080fd5b506000546001600160a01b03166104fa565b34801561058257600080fd5b50604080518082019091526004815263574f504560e01b602082015261028d565b3480156105af57600080fd5b506102ba6105be366004611bcc565b610bfb565b3480156105cf57600080fd5b506002546104fa906001600160a01b031681565b3480156105ef57600080fd5b506102ba6105fe366004611bcc565b610c32565b34801561060f57600080fd5b506102ff61061e366004611c09565b610c3f565b34801561062f57600080fd5b506013546104409060ff8082169161010090041682565b34801561065257600080fd5b506102ff610661366004611d1d565b610d24565b34801561067257600080fd5b5061024b610681366004611df4565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156106b857600080fd5b50600a546102ba9060ff1681565b3480156106d257600080fd5b5061024b6106e1366004611c3c565b60086020526000908152604090205481565b3480156106ff57600080fd5b5061024b600b5481565b34801561071557600080fd5b506102ff610724366004611c3c565b610dba565b34801561073557600080fd5b506102ff610744366004611e2d565b610e55565b34801561075557600080fd5b506001546104fa906001600160a01b031681565b34801561077557600080fd5b5061024b600f5481565b34801561078b57600080fd5b5060105460115461079a919082565b60408051928352602083019190915201610255565b60006107bc338484610eaa565b5060015b92915050565b6000546001600160a01b031633146107f95760405162461bcd60e51b81526004016107f090611e59565b60405180910390fd5b60006108058284611ea4565b60ff169050601e8111156108545760405162461bcd60e51b8152602060048201526016602482015275086c2dc4ee840e6cae840e8c2f040e8dede40d0d2ced60531b60448201526064016107f0565b60408051808201825260ff85811680835290851660209092018290526012805461ffff1916909117610100909202919091179055517ff305e997be174eb1fbb444c89b9f4089de693e9b3b40486accc62ae99885e48090600090a1505050565b60006108c1848484610fce565b6001600160a01b0384166000908152600460209081526040808320338085529252909120546108fc9186916108f7908690611ebd565b610eaa565b5060019392505050565b3360008181526004602090815260408083206001600160a01b038716845290915281205490916107bc9185906108f7908690611ed0565b6000546001600160a01b031633146109675760405162461bcd60e51b81526004016107f090611e59565b600a805460ff1916911515919091179055565b6000546001600160a01b031633146109a45760405162461bcd60e51b81526004016107f090611e59565b60006109b26009600a611fc7565b6103e8600c5460056109c49190611fd6565b6109ce9190611fed565b6109d89190611fed565b90508083101580156109ea5750808210155b610a295760405162461bcd60e51b815260206004820152601060248201526f496e76616c69642053657474696e677360801b60448201526064016107f0565b610a356009600a611fc7565b610a3f9084611fd6565b600e55610a4e6009600a611fc7565b610a589083611fd6565b600f55505050565b6000546001600160a01b03163314610a8a5760405162461bcd60e51b81526004016107f090611e59565b610a948142611ed0565b6001600160a01b0390921660009081526008602052604090209190915550565b6000546001600160a01b03163314610ade5760405162461bcd60e51b81526004016107f090611e59565b80471015610b2e5760405162461bcd60e51b815260206004820152601860248201527f496e73756666696369656e74204554482062616c616e6365000000000000000060448201526064016107f0565b604051339082156108fc029083906000818181858888f19350505050158015610b5b573d6000803e3d6000fd5b5050565b601054601154600091610b7191611ed0565b306000908152600360205260409020549091508110610b8f57600080fd5b30600090815260036020526040812054610baa908390611ebd565b601454909150610b5b9030906001600160a01b031683610fce565b6000546001600160a01b03163314610bef5760405162461bcd60e51b81526004016107f090611e59565b610bf96000611513565b565b3360008181526004602090815260408083206001600160a01b038716845290915281205490916107bc9185906108f7908690611ebd565b60006107bc338484610fce565b6000546001600160a01b03163314610c695760405162461bcd60e51b81526004016107f090611e59565b6000610c758284611ea4565b60ff1690506050811115610cc45760405162461bcd60e51b8152602060048201526016602482015275086c2dc4ee840e6cae840e8c2f040e8dede40d0d2ced60531b60448201526064016107f0565b60408051808201825260ff85811680835290851660209092018290526013805461ffff1916909117610100909202919091179055517ff305e997be174eb1fbb444c89b9f4089de693e9b3b40486accc62ae99885e48090600090a1505050565b6000546001600160a01b03163314610d4e5760405162461bcd60e51b81526004016107f090611e59565b60005b8251811015610db5578160076000858481518110610d7157610d7161200f565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610dad81612025565b915050610d51565b505050565b6000546001600160a01b03163314610de45760405162461bcd60e51b81526004016107f090611e59565b6001600160a01b038116610e495760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107f0565b610e5281611513565b50565b6000546001600160a01b03163314610e7f5760405162461bcd60e51b81526004016107f090611e59565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6001600160a01b038316610f0c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107f0565b6001600160a01b038216610f6d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107f0565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166110325760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016107f0565b6001600160a01b0382166110945760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016107f0565b600081116110f65760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016107f0565b600e548111158061111f57506001600160a01b03831660009081526006602052604090205460ff165b61117d5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206578636565647320746865205f6d61786044820152682a3c20b6b7bab73a1760b91b60648201526084016107f0565b6001600160a01b03831660009081526007602052604090205460ff161580156111bf57506001600160a01b03821660009081526007602052604090205460ff16155b61120b5760405162461bcd60e51b815260206004820152601860248201527f426c61636b6c69737465642c2063616e2774207472616465000000000000000060448201526064016107f0565b6001600160a01b03821660009081526006602052604090205460ff166112b557600f548161124e846001600160a01b031660009081526003602052604090205490565b6112589190611ed0565b11156112b55760405162461bcd60e51b815260206004820152602660248201527f5472616e7366657220616d6f756e74206578636565647320746865206d61785760448201526530b63632ba1760d11b60648201526084016107f0565b600d5430600090815260036020526040902054101580156112e557506015546016546112e19190611ed0565b4210155b80156112fb5750601454600160a01b900460ff16155b801561131557506002546001600160a01b03848116911614155b801561132f57506000546001600160a01b03848116911614155b801561134957506000546001600160a01b03838116911614155b1561135657611356611563565b6001600160a01b0383166000908152600360205260408120805483929061137e908490611ebd565b90915550506001600160a01b038316600090815260056020526040902054819060ff161580156113c757506001600160a01b03831660009081526005602052604090205460ff16155b15611491576002546113ea90839086906001600160a01b0387811691161461166c565b6002549091506001600160a01b039081169085160361144f57600a5460ff161561144a57600b805490600061141e83612025565b90915550506009546114309042611ed0565b6001600160a01b0384166000908152600860205260409020555b611491565b6001600160a01b03841660009081526008602052604090205415611491576001600160a01b038416600090815260086020526040902054421061149157600080fd5b6001600160a01b038316600090815260036020526040812080548392906114b9908490611ed0565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161150591815260200190565b60405180910390a350505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6014805460ff60a01b1916600160a01b179055601054156115d957600061158e6010600001546117cf565b905080156115d7576014546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156115d0573d6000803e3d6000fd5b5060006010555b505b60115415611630576011546000906115f390600290611fed565b90506000816010600101546116089190611ebd565b90506000611615836117cf565b9050801561162757611627828261193f565b50506000601155505b6040517fd9f20192eafa060dc85f5f8b3b0a5b9c106b02d5d1503335b857e50c2bb7003090600090a1426016556014805460ff60a01b19169055565b6040805180820190915260125460ff808216835261010090910416602082015260009082156116b757506040805180820190915260135460ff80821683526101009091041660208201525b80516000906064906116cc9060ff1688611fd6565b6116d69190611fed565b905060006064836020015160ff16886116ef9190611fd6565b6116f99190611fed565b9050811561171c5781601060000160008282546117169190611ed0565b90915550505b801561173d5780601060010160008282546117379190611ed0565b90915550505b60006117498284611ed0565b3060009081526003602052604081208054929350839290919061176d908490611ed0565b909155505080156117b95760405181815230906001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b6117c38189611ebd565b98975050505050505050565b604080516002808252606082018352600092479284929091602083019080368337019050509050308160008151811061180a5761180a61200f565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611863573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611887919061203e565b8160018151811061189a5761189a61200f565b6001600160a01b0392831660209182029290920101526001546118c09130911686610eaa565b60015460405163791ac94760e01b81526001600160a01b039091169063791ac947906118f990879060009086903090429060040161205b565b600060405180830381600087803b15801561191357600080fd5b505af1158015611927573d6000803e3d6000fd5b5050505081476119379190611ebd565b949350505050565b6001546119579030906001600160a01b031684610eaa565b6001546000906001600160a01b031663f305d71983308685806119826000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156119ea573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611a0f91906120cc565b50915060009050611a208284611ebd565b1115610db557610db5611a338284611ebd565b6014546001600160a01b03169080471015611a905760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016107f0565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114611add576040519150601f19603f3d011682016040523d82523d6000602084013e611ae2565b606091505b5050905080610db55760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d6179206861766520726576657274656400000000000060648201526084016107f0565b600060208083528351808285015260005b81811015611b8657858101830151858201604001528201611b6a565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610e5257600080fd5b8035611bc781611ba7565b919050565b60008060408385031215611bdf57600080fd5b8235611bea81611ba7565b946020939093013593505050565b803560ff81168114611bc757600080fd5b60008060408385031215611c1c57600080fd5b611c2583611bf8565b9150611c3360208401611bf8565b90509250929050565b600060208284031215611c4e57600080fd5b8135611c5981611ba7565b9392505050565b600080600060608486031215611c7557600080fd5b8335611c8081611ba7565b92506020840135611c9081611ba7565b929592945050506040919091013590565b80358015158114611bc757600080fd5b600060208284031215611cc357600080fd5b611c5982611ca1565b60008060408385031215611cdf57600080fd5b50508035926020909101359150565b600060208284031215611d0057600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215611d3057600080fd5b823567ffffffffffffffff80821115611d4857600080fd5b818501915085601f830112611d5c57600080fd5b8135602082821115611d7057611d70611d07565b8160051b604051601f19603f83011681018181108682111715611d9557611d95611d07565b604052928352818301935084810182019289841115611db357600080fd5b948201945b83861015611dd857611dc986611bbc565b85529482019493820193611db8565b9650611de79050878201611ca1565b9450505050509250929050565b60008060408385031215611e0757600080fd5b8235611e1281611ba7565b91506020830135611e2281611ba7565b809150509250929050565b60008060408385031215611e4057600080fd5b8235611e4b81611ba7565b9150611c3360208401611ca1565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60ff81811683821601908111156107c0576107c0611e8e565b818103818111156107c0576107c0611e8e565b808201808211156107c0576107c0611e8e565b600181815b80851115611f1e578160001904821115611f0457611f04611e8e565b80851615611f1157918102915b93841c9390800290611ee8565b509250929050565b600082611f35575060016107c0565b81611f42575060006107c0565b8160018114611f585760028114611f6257611f7e565b60019150506107c0565b60ff841115611f7357611f73611e8e565b50506001821b6107c0565b5060208310610133831016604e8410600b8410161715611fa1575081810a6107c0565b611fab8383611ee3565b8060001904821115611fbf57611fbf611e8e565b029392505050565b6000611c5960ff841683611f26565b80820281158282048414176107c0576107c0611e8e565b60008261200a57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b60006001820161203757612037611e8e565b5060010190565b60006020828403121561205057600080fd5b8151611c5981611ba7565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156120ab5784516001600160a01b031683529383019391830191600101612086565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156120e157600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220dab7bc63412898fabb042521a61680b0e0a9962eabb6fff5788d9ff720c8eff864736f6c63430008110033

Deployed Bytecode Sourcemap

3313:11428:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4051:54;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;4051:54:0;;;;;;;;5766:83;;;;;;;;;;-1:-1:-1;5836:5:0;;;;;;;;;;;;-1:-1:-1;;;5836:5:0;;;;5766:83;;;;;;;:::i;6597:161::-;;;;;;;;;;-1:-1:-1;6597:161:0;;;;;:::i;:::-;;:::i;:::-;;;1509:14:1;;1502:22;1484:41;;1472:2;1457:18;6597:161:0;1344:187:1;6043:95:0;;;;;;;;;;-1:-1:-1;6123:7:0;;6043:95;;8360:259;;;;;;;;;;-1:-1:-1;8360:259:0;;;;;:::i;:::-;;:::i;:::-;;3718:47;;;;;;;;;;-1:-1:-1;3718:47:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;6766:266;;;;;;;;;;-1:-1:-1;6766:266:0;;;;;:::i;:::-;;:::i;3653:58::-;;;;;;;;;;-1:-1:-1;3653:58:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;5952:83;;;;;;;;;;-1:-1:-1;5952:83:0;;3982:1;2809:36:1;;2797:2;2782:18;5952:83:0;2667:184:1;7040:215:0;;;;;;;;;;-1:-1:-1;7040:215:0;;;;;:::i;:::-;;:::i;10020:101::-;;;;;;;;;;-1:-1:-1;10020:101:0;;;;;:::i;:::-;;:::i;8899:386::-;;;;;;;;;;-1:-1:-1;8899:386:0;;;;;:::i;:::-;;:::i;10129:151::-;;;;;;;;;;-1:-1:-1;10129:151:0;;;;;:::i;:::-;;:::i;4549:29::-;;;;;;;;;;-1:-1:-1;4549:29:0;;;;;;;;;;;;;;;;;;;3655:4:1;3643:17;;;3625:36;;3697:17;;;;3692:2;3677:18;;3670:45;3598:18;4549:29:0;3459:262:1;9293:200:0;;;;;;;;;;-1:-1:-1;9293:200:0;;;;;:::i;:::-;;:::i;9501:507::-;;;;;;;;;;;;;:::i;6146:117::-;;;;;;;;;;-1:-1:-1;6146:117:0;;;;;:::i;:::-;-1:-1:-1;;;;;6239:16:0;6212:7;6239:16;;;:7;:16;;;;;;;6146:117;1300:94;;;;;;;;;;;;;:::i;4628:75::-;;;;;;;;;;-1:-1:-1;4628:75:0;;;;-1:-1:-1;;;;;4628:75:0;;;;;;-1:-1:-1;;;;;4075:32:1;;;4057:51;;4045:2;4030:18;4628:75:0;3911:203:1;3595:51:0;;;;;;;;;;-1:-1:-1;3595:51:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;4113:53;;;;;;;;;;;;;;;;1077:87;;;;;;;;;;-1:-1:-1;1123:7:0;1150:6;-1:-1:-1;;;;;1150:6:0;1077:87;;5857;;;;;;;;;;-1:-1:-1;5929:7:0;;;;;;;;;;;;-1:-1:-1;;;5929:7:0;;;;5857:87;;7263:225;;;;;;;;;;-1:-1:-1;7263:225:0;;;;;:::i;:::-;;:::i;3434:19::-;;;;;;;;;;-1:-1:-1;3434:19:0;;;;-1:-1:-1;;;;;3434:19:0;;;6271:167;;;;;;;;;;-1:-1:-1;6271:167:0;;;;;:::i;:::-;;:::i;8627:260::-;;;;;;;;;;-1:-1:-1;8627:260:0;;;;;:::i;:::-;;:::i;4585:30::-;;;;;;;;;;-1:-1:-1;4585:30:0;;;;;;;;;;;;;;;8136:216;;;;;;;;;;-1:-1:-1;8136:216:0;;;;;:::i;:::-;;:::i;6446:143::-;;;;;;;;;;-1:-1:-1;6446:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6554:18:0;;;6527:7;6554:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6446:143;3874:31;;;;;;;;;;-1:-1:-1;3874:31:0;;;;;;;;3772:48;;;;;;;;;;-1:-1:-1;3772:48:0;;;;;:::i;:::-;;;;;;;;;;;;;;3912:26;;;;;;;;;;;;;;;;1402:192;;;;;;;;;;-1:-1:-1;1402:192:0;;;;;:::i;:::-;;:::i;7983:141::-;;;;;;;;;;-1:-1:-1;7983:141:0;;;;;:::i;:::-;;:::i;3406:21::-;;;;;;;;;;-1:-1:-1;3406:21:0;;;;-1:-1:-1;;;;;3406:21:0;;;4173:52;;;;;;;;;;;;;;;;4501:39;;;;;;;;;;-1:-1:-1;4501:39:0;;;;;;;;;;;;;6557:25:1;;;6613:2;6598:18;;6591:34;;;;6530:18;4501:39:0;6383:248:1;6597:161:0;6672:4;6689:39;698:10;6712:7;6721:6;6689:8;:39::i;:::-;-1:-1:-1;6746:4:0;6597:161;;;;;:::o;8360:259::-;1123:7;1150:6;-1:-1:-1;;;;;1150:6:0;698:10;1212:23;1204:68;;;;-1:-1:-1;;;1204:68:0;;;;;;;:::i;:::-;;;;;;;;;8449:9:::1;8462:20;8477:5:::0;8462:12;:20:::1;:::i;:::-;8449:33;;;;8509:2;8501:4;:10;;8493:45;;;::::0;-1:-1:-1;;;8493:45:0;;7484:2:1;8493:45:0::1;::::0;::::1;7466:21:1::0;7523:2;7503:18;;;7496:30;-1:-1:-1;;;7542:18:1;;;7535:52;7604:18;;8493:45:0::1;7282:346:1::0;8493:45:0::1;8558:23;::::0;;;;::::1;::::0;;::::1;::::0;;::::1;::::0;;;;;::::1;;::::0;;::::1;::::0;;;8549:6:::1;:32:::0;;-1:-1:-1;;8549:32:0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;8597:14;::::1;::::0;-1:-1:-1;;8597:14:0::1;8438:181;8360:259:::0;;:::o;6766:266::-;6864:4;6881:36;6891:6;6899:9;6910:6;6881:9;:36::i;:::-;-1:-1:-1;;;;;6959:19:0;;;;;;:11;:19;;;;;;;;698:10;6959:33;;;;;;;;;6928:74;;6937:6;;6959:42;;6995:6;;6959:42;:::i;:::-;6928:8;:74::i;:::-;-1:-1:-1;7020:4:0;6766:266;;;;;:::o;7040:215::-;698:10;7128:4;7177:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;7177:34:0;;;;;;;;;;7128:4;;7145:80;;7168:7;;7177:47;;7214:10;;7177:47;:::i;10020:101::-;1123:7;1150:6;-1:-1:-1;;;;;1150:6:0;698:10;1212:23;1204:68;;;;-1:-1:-1;;;1204:68:0;;;;;;;:::i;:::-;10091:12:::1;:22:::0;;-1:-1:-1;;10091:22:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10020:101::o;8899:386::-;1123:7;1150:6;-1:-1:-1;;;;;1150:6:0;698:10;1212:23;1204:68;;;;-1:-1:-1;;;1204:68:0;;;;;;;:::i;:::-;8998:20:::1;9045:13;3982:1;9045:2;:13;:::i;:::-;9036:4;9022:7;;9032:1;9022:11;;;;:::i;:::-;:18;;;;:::i;:::-;9021:38;;;;:::i;:::-;8998:61;;9093:15;9078:11;:30;;:68;;;;;9131:15;9112;:34;;9078:68;9070:97;;;::::0;-1:-1:-1;;;9070:97:0;;9876:2:1;9070:97:0::1;::::0;::::1;9858:21:1::0;9915:2;9895:18;;;9888:30;-1:-1:-1;;;9934:18:1;;;9927:46;9990:18;;9070:97:0::1;9674:340:1::0;9070:97:0::1;9207:13;3982:1;9207:2;:13;:::i;:::-;9192:29;::::0;:11;:29:::1;:::i;:::-;9178:11;:43:::0;9263:13:::1;3982:1;9263:2;:13;:::i;:::-;9244:33;::::0;:15;:33:::1;:::i;:::-;9232:9;:45:::0;-1:-1:-1;;;8899:386:0:o;10129:151::-;1123:7;1150:6;-1:-1:-1;;;;;1150:6:0;698:10;1212:23;1204:68;;;;-1:-1:-1;;;1204:68:0;;;;;;;:::i;:::-;10249:23:::1;10267:5:::0;10249:15:::1;:23;:::i;:::-;-1:-1:-1::0;;;;;10226:20:0;;::::1;;::::0;;;:12:::1;:20;::::0;;;;:46;;;;-1:-1:-1;10129:151:0:o;9293:200::-;1123:7;1150:6;-1:-1:-1;;;;;1150:6:0;698:10;1212:23;1204:68;;;;-1:-1:-1;;;1204:68:0;;;;;;;:::i;:::-;9397:9:::1;9372:21;:34;;9364:71;;;::::0;-1:-1:-1;;;9364:71:0;;10221:2:1;9364:71:0::1;::::0;::::1;10203:21:1::0;10260:2;10240:18;;;10233:30;10299:26;10279:18;;;10272:54;10343:18;;9364:71:0::1;10019:348:1::0;9364:71:0::1;9446:39;::::0;9454:10:::1;::::0;9446:39;::::1;;;::::0;9475:9;;9446:39:::1;::::0;;;9475:9;9454:10;9446:39;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;9293:200:::0;:::o;9501:507::-;9762:18;:34;9732:27;;9708:21;;9732:64;;;:::i;:::-;9833:4;6212:7;6239:16;;;:7;:16;;;;;;9708:88;;-1:-1:-1;9708:88:0;-1:-1:-1;9807:53:0;;;;;;9909:4;9871:17;6239:16;;;:7;:16;;;;;;9891:43;;9918:16;;9891:43;:::i;:::-;9970:15;;9871:63;;-1:-1:-1;9945:55:0;;9963:4;;-1:-1:-1;;;;;9970:15:0;9871:63;9945:9;:55::i;1300:94::-;1123:7;1150:6;-1:-1:-1;;;;;1150:6:0;698:10;1212:23;1204:68;;;;-1:-1:-1;;;1204:68:0;;;;;;;:::i;:::-;1365:21:::1;1383:1;1365:9;:21::i;:::-;1300:94::o:0;7263:225::-;698:10;7356:4;7405:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;7405:34:0;;;;;;;;;;7356:4;;7373:85;;7396:7;;7405:52;;7442:15;;7405:52;:::i;6271:167::-;6349:4;6366:42;698:10;6390:9;6401:6;6366:9;:42::i;8627:260::-;1123:7;1150:6;-1:-1:-1;;;;;1150:6:0;698:10;1212:23;1204:68;;;;-1:-1:-1;;;1204:68:0;;;;;;;:::i;:::-;8717:9:::1;8729:20;8744:5:::0;8729:12;:20:::1;:::i;:::-;8717:32;;;;8776:2;8768:4;:10;;8760:45;;;::::0;-1:-1:-1;;;8760:45:0;;7484:2:1;8760:45:0::1;::::0;::::1;7466:21:1::0;7523:2;7503:18;;;7496:30;-1:-1:-1;;;7542:18:1;;;7535:52;7604:18;;8760:45:0::1;7282:346:1::0;8760:45:0::1;8826:23;::::0;;;;::::1;::::0;;::::1;::::0;;::::1;::::0;;;;;::::1;;::::0;;::::1;::::0;;;8816:7:::1;:33:::0;;-1:-1:-1;;8816:33:0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;8865:14;::::1;::::0;-1:-1:-1;;8865:14:0::1;8706:181;8627:260:::0;;:::o;8136:216::-;1123:7;1150:6;-1:-1:-1;;;;;1150:6:0;698:10;1212:23;1204:68;;;;-1:-1:-1;;;1204:68:0;;;;;;;:::i;:::-;8244:9:::1;8240:105;8262:8;:15;8258:1;:19;8240:105;;;8328:5;8298:14;:27;8313:8;8322:1;8313:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;8298:27:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;8298:27:0;:35;;-1:-1:-1;;8298:35:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8279:3;::::1;::::0;::::1;:::i;:::-;;;;8240:105;;;;8136:216:::0;;:::o;1402:192::-;1123:7;1150:6;-1:-1:-1;;;;;1150:6:0;698:10;1212:23;1204:68;;;;-1:-1:-1;;;1204:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1491:22:0;::::1;1483:73;;;::::0;-1:-1:-1;;;1483:73:0;;10846:2:1;1483:73:0::1;::::0;::::1;10828:21:1::0;10885:2;10865:18;;;10858:30;10924:34;10904:18;;;10897:62;-1:-1:-1;;;10975:18:1;;;10968:36;11021:19;;1483:73:0::1;10644:402:1::0;1483:73:0::1;1567:19;1577:8;1567:9;:19::i;:::-;1402:192:::0;:::o;7983:141::-;1123:7;1150:6;-1:-1:-1;;;;;1150:6:0;698:10;1212:23;1204:68;;;;-1:-1:-1;;;1204:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8077:23:0;;;::::1;;::::0;;;:14:::1;:23;::::0;;;;:39;;-1:-1:-1;;8077:39:0::1;::::0;::::1;;::::0;;;::::1;::::0;;7983:141::o;7496:335::-;-1:-1:-1;;;;;7589:19:0;;7581:68;;;;-1:-1:-1;;;7581:68:0;;11253:2:1;7581:68:0;;;11235:21:1;11292:2;11272:18;;;11265:30;11331:34;11311:18;;;11304:62;-1:-1:-1;;;11382:18:1;;;11375:34;11426:19;;7581:68:0;11051:400:1;7581:68:0;-1:-1:-1;;;;;7668:21:0;;7660:68;;;;-1:-1:-1;;;7660:68:0;;11658:2:1;7660:68:0;;;11640:21:1;11697:2;11677:18;;;11670:30;11736:34;11716:18;;;11709:62;-1:-1:-1;;;11787:18:1;;;11780:32;11829:19;;7660:68:0;11456:398:1;7660:68:0;-1:-1:-1;;;;;7739:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7791:32;;160:25:1;;;7791:32:0;;133:18:1;7791:32:0;;;;;;;7496:335;;;:::o;11165:1565::-;-1:-1:-1;;;;;11251:18:0;;11243:68;;;;-1:-1:-1;;;11243:68:0;;12061:2:1;11243:68:0;;;12043:21:1;12100:2;12080:18;;;12073:30;12139:34;12119:18;;;12112:62;-1:-1:-1;;;12190:18:1;;;12183:35;12235:19;;11243:68:0;11859:401:1;11243:68:0;-1:-1:-1;;;;;11330:16:0;;11322:64;;;;-1:-1:-1;;;11322:64:0;;12467:2:1;11322:64:0;;;12449:21:1;12506:2;12486:18;;;12479:30;12545:34;12525:18;;;12518:62;-1:-1:-1;;;12596:18:1;;;12589:33;12639:19;;11322:64:0;12265:399:1;11322:64:0;11414:1;11405:6;:10;11397:64;;;;-1:-1:-1;;;11397:64:0;;12871:2:1;11397:64:0;;;12853:21:1;12910:2;12890:18;;;12883:30;12949:34;12929:18;;;12922:62;-1:-1:-1;;;13000:18:1;;;12993:39;13049:19;;11397:64:0;12669:405:1;11397:64:0;11490:11;;11480:6;:21;;:56;;;-1:-1:-1;;;;;;11505:31:0;;;;;;:25;:31;;;;;;;;11480:56;11472:110;;;;-1:-1:-1;;;11472:110:0;;13281:2:1;11472:110:0;;;13263:21:1;13320:2;13300:18;;;13293:30;13359:34;13339:18;;;13332:62;-1:-1:-1;;;13410:18:1;;;13403:39;13459:19;;11472:110:0;13079:405:1;11472:110:0;-1:-1:-1;;;;;11602:20:0;;;;;;:14;:20;;;;;;;;11601:21;:44;;;;-1:-1:-1;;;;;;11627:18:0;;;;;;:14;:18;;;;;;;;11626:19;11601:44;11593:81;;;;-1:-1:-1;;;11593:81:0;;13691:2:1;11593:81:0;;;13673:21:1;13730:2;13710:18;;;13703:30;13769:26;13749:18;;;13742:54;13813:18;;11593:81:0;13489:348:1;11593:81:0;-1:-1:-1;;;;;11691:29:0;;;;;;:25;:29;;;;;;;;11687:134;;11769:9;;11759:6;11743:13;11753:2;-1:-1:-1;;;;;6239:16:0;6212:7;6239:16;;;:7;:16;;;;;;;6146:117;11743:13;:22;;;;:::i;:::-;:35;;11735:86;;;;-1:-1:-1;;;11735:86:0;;14044:2:1;11735:86:0;;;14026:21:1;14083:2;14063:18;;;14056:30;14122:34;14102:18;;;14095:62;-1:-1:-1;;;14173:18:1;;;14166:36;14219:19;;11735:86:0;13842:402:1;11735:86:0;11874:13;;11864:4;6212:7;6239:16;;;:7;:16;;;;;;11846:41;;:91;;;;;11923:13;;11911:9;;:25;;;;:::i;:::-;11891:15;:46;;11846:91;:104;;;;-1:-1:-1;11942:8:0;;-1:-1:-1;;;11942:8:0;;;;11941:9;11846:104;:120;;;;-1:-1:-1;11962:4:0;;-1:-1:-1;;;;;11954:12:0;;;11962:4;;11954:12;;11846:120;:139;;;;-1:-1:-1;1123:7:0;1150:6;-1:-1:-1;;;;;11970:15:0;;;1150:6;;11970:15;;11846:139;:156;;;;-1:-1:-1;1123:7:0;1150:6;-1:-1:-1;;;;;11989:13:0;;;1150:6;;11989:13;;11846:156;11842:191;;;12017:16;:14;:16::i;:::-;-1:-1:-1;;;;;12056:13:0;;;;;;:7;:13;;;;;:23;;12073:6;;12056:13;:23;;12073:6;;12056:23;:::i;:::-;;;;-1:-1:-1;;;;;;;12146:24:0;;12090:22;12146:24;;;:18;:24;;;;;;12115:6;;12146:24;;12145:25;:52;;;;-1:-1:-1;;;;;;12175:22:0;;;;;;:18;:22;;;;;;;;12174:23;12145:52;12142:489;;;12264:4;;12230:39;;12244:6;;12252:4;;-1:-1:-1;;;;;12258:10:0;;;12264:4;;12258:10;12230:13;:39::i;:::-;12296:4;;12213:56;;-1:-1:-1;;;;;;12296:4:0;;;12288:12;;;;12284:336;;12323:12;;;;12320:150;;;12359:11;:13;;;:11;:13;;;:::i;:::-;;;;-1:-1:-1;;12432:18:0;;12414:36;;:15;:36;:::i;:::-;-1:-1:-1;;;;;12395:16:0;;;;;;:12;:16;;;;;:55;12320:150;12284:336;;;-1:-1:-1;;;;;12512:18:0;;;;;;:12;:18;;;;;;:23;12508:95;;-1:-1:-1;;;;;12584:18:0;;;;;;:12;:18;;;;;;12566:15;:36;12558:45;;;;;;-1:-1:-1;;;;;12643:11:0;;;;;;:7;:11;;;;;:29;;12658:14;;12643:11;:29;;12658:14;;12643:29;:::i;:::-;;;;;;;;12703:2;-1:-1:-1;;;;;12688:34:0;12697:4;-1:-1:-1;;;;;12688:34:0;;12707:14;12688:34;;;;160:25:1;;148:2;133:18;;14:177;12688:34:0;;;;;;;;11232:1498;11165:1565;;;:::o;1602:173::-;1658:16;1677:6;;-1:-1:-1;;;;;1694:17:0;;;-1:-1:-1;;;;;;1694:17:0;;;;;;1727:40;;1677:6;;;;;;;1727:40;;1658:16;1727:40;1647:128;1602:173;:::o;12738:829::-;4843:8;:15;;-1:-1:-1;;;;4843:15:0;-1:-1:-1;;;4843:15:0;;;12807:18:::1;:34:::0;:38;12804:311:::1;;12861:18;12882:52;12899:18;:34;;;12882:16;:52::i;:::-;12861:73:::0;-1:-1:-1;12952:14:0;;12949:155:::1;;12994:15;::::0;12986:45:::1;::::0;-1:-1:-1;;;;;12994:15:0;;::::1;::::0;12986:45;::::1;;;::::0;13020:10;;12994:15:::1;12986:45:::0;12994:15;12986:45;13020:10;12994:15;12986:45;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;13087:1:0::1;13050:18;:38:::0;12949:155:::1;12846:269;12804:311;13133:27:::0;;:31;13130:356:::1;;13192:27:::0;;13180:9:::1;::::0;13192:31:::1;::::0;13222:1:::1;::::0;13192:31:::1;:::i;:::-;13180:43;;13238:14;13285:4;13255:18;:27;;;:34;;;;:::i;:::-;13238:51;;13304:14;13321:22;13338:4;13321:16;:22::i;:::-;13304:39:::0;-1:-1:-1;13362:13:0;;13358:70:::1;;13394:34;13407:9;13418;13394:12;:34::i;:::-;-1:-1:-1::0;;13473:1:0::1;13443:27:::0;:31;-1:-1:-1;13130:356:0::1;13503:16;::::0;::::1;::::0;;;::::1;13544:15;13532:9;:27:::0;4881:8;:16;;-1:-1:-1;;;;4881:16:0;;;12738:829::o;10341:816::-;10439:28;;;;;;;;;10461:6;10439:28;;;;;;;;;;;;;;;;10420:7;;10478:56;;;;-1:-1:-1;10504:18:0;;;;;;;;;10515:7;10504:18;;;;;;;;;;;;;;;;10478:56;10581:21;;10546:23;;10605:3;;10572:30;;;;:6;:30;:::i;:::-;:36;;;;:::i;:::-;10546:62;;10619:16;10664:3;10647:8;:14;;;10638:23;;:6;:23;;;;:::i;:::-;:29;;;;:::i;:::-;10619:48;-1:-1:-1;10683:22:0;;10680:96;;10758:18;10720;:34;;;:56;;;;;;;:::i;:::-;;;;-1:-1:-1;;10680:96:0;10792:15;;10789:75;;10853:11;10822:18;:27;;;:42;;;;;;;:::i;:::-;;;;-1:-1:-1;;10789:75:0;10877:21;10901:32;10922:11;10901:18;:32;:::i;:::-;10962:4;10946:22;;;;:7;:22;;;;;:42;;10877:56;;-1:-1:-1;10877:56:0;;10946:22;;;:42;;10877:56;;10946:42;:::i;:::-;;;;-1:-1:-1;;11002:20:0;;10999:91;;11042:48;;160:25:1;;;11066:4:0;;-1:-1:-1;;;;;11042:48:0;;;;;148:2:1;133:18;11042:48:0;;;;;;;10999:91;11123:25;11132:16;11123:6;:25;:::i;:::-;11115:34;10341:816;-1:-1:-1;;;;;;;;10341:816:0:o;13575:581::-;13740:16;;;13754:1;13740:16;;;;;;;;13639:7;;13684:21;;13639:7;;13740:16;;;;;;;;;;;;-1:-1:-1;13740:16:0;13716:40;;13785:4;13767;13772:1;13767:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;13767:23:0;;;:7;;;;;;;;;;:23;;;;13811:6;;:13;;;-1:-1:-1;;;13811:13:0;;;;:6;;;;;:11;;:13;;;;;13767:7;;13811:13;;;;;:6;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13801:4;13806:1;13801:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;13801:23:0;;;:7;;;;;;;;;:23;13869:6;;13837:53;;13854:4;;13869:6;13878:11;13837:8;:53::i;:::-;13903:6;;:187;;-1:-1:-1;;;13903:187:0;;-1:-1:-1;;;;;13903:6:0;;;;:57;;:187;;13975:11;;13903:6;;14017:4;;14044;;14064:15;;13903:187;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14133:14;14109:21;:38;;;;:::i;:::-;14101:47;13575:581;-1:-1:-1;;;;13575:581:0:o;14164:514::-;14277:6;;14245:53;;14262:4;;-1:-1:-1;;;;;14277:6:0;14286:11;14245:8;:53::i;:::-;14342:6;;14313:24;;-1:-1:-1;;;;;14342:6:0;:22;14373:9;14407:4;14427:11;14313:24;;14485:7;1123;1150:6;-1:-1:-1;;;;;1150:6:0;;1077:87;14485:7;14342:191;;;;;;-1:-1:-1;;;;;;14342:191:0;;;-1:-1:-1;;;;;15849:15:1;;;14342:191:0;;;15831:34:1;15881:18;;;15874:34;;;;15924:18;;;15917:34;;;;15967:18;;;15960:34;16031:15;;;16010:19;;;16003:44;14507:15:0;16063:19:1;;;16056:35;15765:19;;14342:191:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;14311:222:0;-1:-1:-1;14589:1:0;;-1:-1:-1;14558:28:0;14311:222;14558:9;:28;:::i;:::-;:32;14554:116;;;14605:65;14641:28;14653:16;14641:9;:28;:::i;:::-;14613:15;;-1:-1:-1;;;;;14613:15:0;;360:6;335:21;:31;;327:73;;;;-1:-1:-1;;;327:73:0;;16615:2:1;327:73:0;;;16597:21:1;16654:2;16634:18;;;16627:30;16693:31;16673:18;;;16666:59;16742:18;;327:73:0;16413:353:1;327:73:0;414:12;432:9;-1:-1:-1;;;;;432:14:0;454:6;432:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;413:52;;;484:7;476:78;;;;-1:-1:-1;;;476:78:0;;17183:2:1;476:78:0;;;17165:21:1;17222:2;17202:18;;;17195:30;17261:34;17241:18;;;17234:62;17332:28;17312:18;;;17305:56;17378:19;;476:78:0;16981:422:1;196:548;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;480:3;665:1;660:2;651:6;640:9;636:22;632:31;625:42;735:2;728;724:7;719:2;711:6;707:15;703:29;692:9;688:45;684:54;676:62;;;;196:548;;;;:::o;749:131::-;-1:-1:-1;;;;;824:31:1;;814:42;;804:70;;870:1;867;860:12;885:134;953:20;;982:31;953:20;982:31;:::i;:::-;885:134;;;:::o;1024:315::-;1092:6;1100;1153:2;1141:9;1132:7;1128:23;1124:32;1121:52;;;1169:1;1166;1159:12;1121:52;1208:9;1195:23;1227:31;1252:5;1227:31;:::i;:::-;1277:5;1329:2;1314:18;;;;1301:32;;-1:-1:-1;;;1024:315:1:o;1536:156::-;1602:20;;1662:4;1651:16;;1641:27;;1631:55;;1682:1;1679;1672:12;1697:252;1761:6;1769;1822:2;1810:9;1801:7;1797:23;1793:32;1790:52;;;1838:1;1835;1828:12;1790:52;1861:27;1878:9;1861:27;:::i;:::-;1851:37;;1907:36;1939:2;1928:9;1924:18;1907:36;:::i;:::-;1897:46;;1697:252;;;;;:::o;1954:247::-;2013:6;2066:2;2054:9;2045:7;2041:23;2037:32;2034:52;;;2082:1;2079;2072:12;2034:52;2121:9;2108:23;2140:31;2165:5;2140:31;:::i;:::-;2190:5;1954:247;-1:-1:-1;;;1954:247:1:o;2206:456::-;2283:6;2291;2299;2352:2;2340:9;2331:7;2327:23;2323:32;2320:52;;;2368:1;2365;2358:12;2320:52;2407:9;2394:23;2426:31;2451:5;2426:31;:::i;:::-;2476:5;-1:-1:-1;2533:2:1;2518:18;;2505:32;2546:33;2505:32;2546:33;:::i;:::-;2206:456;;2598:7;;-1:-1:-1;;;2652:2:1;2637:18;;;;2624:32;;2206:456::o;2856:160::-;2921:20;;2977:13;;2970:21;2960:32;;2950:60;;3006:1;3003;2996:12;3021:180;3077:6;3130:2;3118:9;3109:7;3105:23;3101:32;3098:52;;;3146:1;3143;3136:12;3098:52;3169:26;3185:9;3169:26;:::i;3206:248::-;3274:6;3282;3335:2;3323:9;3314:7;3310:23;3306:32;3303:52;;;3351:1;3348;3341:12;3303:52;-1:-1:-1;;3374:23:1;;;3444:2;3429:18;;;3416:32;;-1:-1:-1;3206:248:1:o;3726:180::-;3785:6;3838:2;3826:9;3817:7;3813:23;3809:32;3806:52;;;3854:1;3851;3844:12;3806:52;-1:-1:-1;3877:23:1;;3726:180;-1:-1:-1;3726:180:1:o;4119:127::-;4180:10;4175:3;4171:20;4168:1;4161:31;4211:4;4208:1;4201:15;4235:4;4232:1;4225:15;4251:1191;4341:6;4349;4402:2;4390:9;4381:7;4377:23;4373:32;4370:52;;;4418:1;4415;4408:12;4370:52;4458:9;4445:23;4487:18;4528:2;4520:6;4517:14;4514:34;;;4544:1;4541;4534:12;4514:34;4582:6;4571:9;4567:22;4557:32;;4627:7;4620:4;4616:2;4612:13;4608:27;4598:55;;4649:1;4646;4639:12;4598:55;4685:2;4672:16;4707:4;4730:2;4726;4723:10;4720:36;;;4736:18;;:::i;:::-;4782:2;4779:1;4775:10;4814:2;4808:9;4877:2;4873:7;4868:2;4864;4860:11;4856:25;4848:6;4844:38;4932:6;4920:10;4917:22;4912:2;4900:10;4897:18;4894:46;4891:72;;;4943:18;;:::i;:::-;4979:2;4972:22;5029:18;;;5063:15;;;;-1:-1:-1;5105:11:1;;;5101:20;;;5133:19;;;5130:39;;;5165:1;5162;5155:12;5130:39;5189:11;;;;5209:148;5225:6;5220:3;5217:15;5209:148;;;5291:23;5310:3;5291:23;:::i;:::-;5279:36;;5242:12;;;;5335;;;;5209:148;;;5376:6;-1:-1:-1;5401:35:1;;-1:-1:-1;5417:18:1;;;5401:35;:::i;:::-;5391:45;;;;;;4251:1191;;;;;:::o;5447:388::-;5515:6;5523;5576:2;5564:9;5555:7;5551:23;5547:32;5544:52;;;5592:1;5589;5582:12;5544:52;5631:9;5618:23;5650:31;5675:5;5650:31;:::i;:::-;5700:5;-1:-1:-1;5757:2:1;5742:18;;5729:32;5770:33;5729:32;5770:33;:::i;:::-;5822:7;5812:17;;;5447:388;;;;;:::o;5840:315::-;5905:6;5913;5966:2;5954:9;5945:7;5941:23;5937:32;5934:52;;;5982:1;5979;5972:12;5934:52;6021:9;6008:23;6040:31;6065:5;6040:31;:::i;:::-;6090:5;-1:-1:-1;6114:35:1;6145:2;6130:18;;6114:35;:::i;6636:356::-;6838:2;6820:21;;;6857:18;;;6850:30;6916:34;6911:2;6896:18;;6889:62;6983:2;6968:18;;6636:356::o;6997:127::-;7058:10;7053:3;7049:20;7046:1;7039:31;7089:4;7086:1;7079:15;7113:4;7110:1;7103:15;7129:148;7217:4;7196:12;;;7210;;;7192:31;;7235:13;;7232:39;;;7251:18;;:::i;7633:128::-;7700:9;;;7721:11;;;7718:37;;;7735:18;;:::i;7766:125::-;7831:9;;;7852:10;;;7849:36;;;7865:18;;:::i;7896:422::-;7985:1;8028:5;7985:1;8042:270;8063:7;8053:8;8050:21;8042:270;;;8122:4;8118:1;8114:6;8110:17;8104:4;8101:27;8098:53;;;8131:18;;:::i;:::-;8181:7;8171:8;8167:22;8164:55;;;8201:16;;;;8164:55;8280:22;;;;8240:15;;;;8042:270;;;8046:3;7896:422;;;;;:::o;8323:806::-;8372:5;8402:8;8392:80;;-1:-1:-1;8443:1:1;8457:5;;8392:80;8491:4;8481:76;;-1:-1:-1;8528:1:1;8542:5;;8481:76;8573:4;8591:1;8586:59;;;;8659:1;8654:130;;;;8566:218;;8586:59;8616:1;8607:10;;8630:5;;;8654:130;8691:3;8681:8;8678:17;8675:43;;;8698:18;;:::i;:::-;-1:-1:-1;;8754:1:1;8740:16;;8769:5;;8566:218;;8868:2;8858:8;8855:16;8849:3;8843:4;8840:13;8836:36;8830:2;8820:8;8817:16;8812:2;8806:4;8803:12;8799:35;8796:77;8793:159;;;-1:-1:-1;8905:19:1;;;8937:5;;8793:159;8984:34;9009:8;9003:4;8984:34;:::i;:::-;9054:6;9050:1;9046:6;9042:19;9033:7;9030:32;9027:58;;;9065:18;;:::i;:::-;9103:20;;8323:806;-1:-1:-1;;;8323:806:1:o;9134:140::-;9192:5;9221:47;9262:4;9252:8;9248:19;9242:4;9221:47;:::i;9279:168::-;9352:9;;;9383;;9400:15;;;9394:22;;9380:37;9370:71;;9421:18;;:::i;9452:217::-;9492:1;9518;9508:132;;9562:10;9557:3;9553:20;9550:1;9543:31;9597:4;9594:1;9587:15;9625:4;9622:1;9615:15;9508:132;-1:-1:-1;9654:9:1;;9452:217::o;10372:127::-;10433:10;10428:3;10424:20;10421:1;10414:31;10464:4;10461:1;10454:15;10488:4;10485:1;10478:15;10504:135;10543:3;10564:17;;;10561:43;;10584:18;;:::i;:::-;-1:-1:-1;10631:1:1;10620:13;;10504:135::o;14249:251::-;14319:6;14372:2;14360:9;14351:7;14347:23;14343:32;14340:52;;;14388:1;14385;14378:12;14340:52;14420:9;14414:16;14439:31;14464:5;14439:31;:::i;14505:980::-;14767:4;14815:3;14804:9;14800:19;14846:6;14835:9;14828:25;14872:2;14910:6;14905:2;14894:9;14890:18;14883:34;14953:3;14948:2;14937:9;14933:18;14926:31;14977:6;15012;15006:13;15043:6;15035;15028:22;15081:3;15070:9;15066:19;15059:26;;15120:2;15112:6;15108:15;15094:29;;15141:1;15151:195;15165:6;15162:1;15159:13;15151:195;;;15230:13;;-1:-1:-1;;;;;15226:39:1;15214:52;;15321:15;;;;15286:12;;;;15262:1;15180:9;15151:195;;;-1:-1:-1;;;;;;;15402:32:1;;;;15397:2;15382:18;;15375:60;-1:-1:-1;;;15466:3:1;15451:19;15444:35;15363:3;14505:980;-1:-1:-1;;;14505:980:1:o;16102:306::-;16190:6;16198;16206;16259:2;16247:9;16238:7;16234:23;16230:32;16227:52;;;16275:1;16272;16265:12;16227:52;16304:9;16298:16;16288:26;;16354:2;16343:9;16339:18;16333:25;16323:35;;16398:2;16387:9;16383:18;16377:25;16367:35;;16102:306;;;;;:::o

Swarm Source

ipfs://dab7bc63412898fabb042521a61680b0e0a9962eabb6fff5788d9ff720c8eff8

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.