ETH Price: $3,341.12 (-1.02%)

Contract

0xB775dC3c70d407A8C873D7795AdD0CbB40832aad
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve206949892024-09-06 23:59:35136 days ago1725667175IN
0xB775dC3c...B40832aad
0 ETH0.000132342.84494101
Approve206934212024-09-06 18:44:23136 days ago1725648263IN
0xB775dC3c...B40832aad
0 ETH0.000291216.25190335
Approve206878422024-09-06 0:02:23137 days ago1725580943IN
0xB775dC3c...B40832aad
0 ETH0.000301496.48090888
Transfer206874382024-09-05 22:40:47137 days ago1725576047IN
0xB775dC3c...B40832aad
0 ETH0.000118492.80874999
Approve206847912024-09-05 13:49:47138 days ago1725544187IN
0xB775dC3c...B40832aad
0 ETH0.000251775.41199254
Approve206847692024-09-05 13:45:11138 days ago1725543911IN
0xB775dC3c...B40832aad
0 ETH0.000238245.11463428
Approve206847232024-09-05 13:35:59138 days ago1725543359IN
0xB775dC3c...B40832aad
0 ETH0.000161453.47060125
Approve206847222024-09-05 13:35:47138 days ago1725543347IN
0xB775dC3c...B40832aad
0 ETH0.000184833.96806009
Approve206837222024-09-05 10:15:23138 days ago1725531323IN
0xB775dC3c...B40832aad
0 ETH0.000152853.28565686
Approve206826062024-09-05 6:30:35138 days ago1725517835IN
0xB775dC3c...B40832aad
0 ETH0.000406138.75719829
Approve206812432024-09-05 1:56:23138 days ago1725501383IN
0xB775dC3c...B40832aad
0 ETH0.0016844636.20861426
Approve206811812024-09-05 1:43:59138 days ago1725500639IN
0xB775dC3c...B40832aad
0 ETH0.0008246417.72636185
Transfer206811332024-09-05 1:34:23138 days ago1725500063IN
0xB775dC3c...B40832aad
0 ETH0.0008333614.05074735
Transfer206810492024-09-05 1:17:35138 days ago1725499055IN
0xB775dC3c...B40832aad
0 ETH0.000435467.34200181
Approve206810392024-09-05 1:15:35138 days ago1725498935IN
0xB775dC3c...B40832aad
0 ETH0.000350887.53867012
Approve206810192024-09-05 1:11:35138 days ago1725498695IN
0xB775dC3c...B40832aad
0 ETH0.000387918.32780274
Approve206809972024-09-05 1:07:11138 days ago1725498431IN
0xB775dC3c...B40832aad
0 ETH0.000433429.30467491
Approve206809162024-09-05 0:50:59138 days ago1725497459IN
0xB775dC3c...B40832aad
0 ETH0.000322196.91684728
Approve206809082024-09-05 0:49:23138 days ago1725497363IN
0xB775dC3c...B40832aad
0 ETH0.000323346.94152826
Approve206808392024-09-05 0:35:23138 days ago1725496523IN
0xB775dC3c...B40832aad
0 ETH0.0007096115.23802939
Approve206808272024-09-05 0:32:59138 days ago1725496379IN
0xB775dC3c...B40832aad
0 ETH0.00026075.59674775
Approve206807782024-09-05 0:23:11138 days ago1725495791IN
0xB775dC3c...B40832aad
0 ETH0.000204334.38655732
Approve206807712024-09-05 0:21:47138 days ago1725495707IN
0xB775dC3c...B40832aad
0 ETH0.000248535.33561278
Approve206807462024-09-05 0:16:47138 days ago1725495407IN
0xB775dC3c...B40832aad
0 ETH0.000195264.19198607
Approve206807302024-09-05 0:13:35138 days ago1725495215IN
0xB775dC3c...B40832aad
0 ETH0.000373118.00994458
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
206802482024-09-04 22:36:47138 days ago1725489407
0xB775dC3c...B40832aad
0.22986393 ETH
206802482024-09-04 22:36:47138 days ago1725489407
0xB775dC3c...B40832aad
0.22986393 ETH
206802352024-09-04 22:34:11138 days ago1725489251
0xB775dC3c...B40832aad
0.44330347 ETH
206802352024-09-04 22:34:11138 days ago1725489251
0xB775dC3c...B40832aad
0.44330347 ETH
206800982024-09-04 22:06:47138 days ago1725487607
0xB775dC3c...B40832aad
0.87602589 ETH
206800982024-09-04 22:06:47138 days ago1725487607
0xB775dC3c...B40832aad
0.87602589 ETH
206800902024-09-04 22:05:11138 days ago1725487511
0xB775dC3c...B40832aad
1.72020352 ETH
206800902024-09-04 22:05:11138 days ago1725487511
0xB775dC3c...B40832aad
1.72020352 ETH
206800882024-09-04 22:04:47138 days ago1725487487
0xB775dC3c...B40832aad
0.30500886 ETH
206800882024-09-04 22:04:47138 days ago1725487487
0xB775dC3c...B40832aad
0.30500886 ETH
206800532024-09-04 21:57:47138 days ago1725487067
0xB775dC3c...B40832aad
0.11681567 ETH
206800532024-09-04 21:57:47138 days ago1725487067
0xB775dC3c...B40832aad
0.11681567 ETH
206800532024-09-04 21:57:47138 days ago1725487067
0xB775dC3c...B40832aad
0.10666675 ETH
206800532024-09-04 21:57:47138 days ago1725487067
0xB775dC3c...B40832aad
0.10666675 ETH
206800442024-09-04 21:55:59138 days ago1725486959
0xB775dC3c...B40832aad
0.9925196 ETH
206800442024-09-04 21:55:59138 days ago1725486959
0xB775dC3c...B40832aad
0.9925196 ETH
206800232024-09-04 21:51:47138 days ago1725486707
0xB775dC3c...B40832aad
0.23875397 ETH
206800232024-09-04 21:51:47138 days ago1725486707
0xB775dC3c...B40832aad
0.23875397 ETH
206800132024-09-04 21:49:47138 days ago1725486587
0xB775dC3c...B40832aad
3.0538554 ETH
206800132024-09-04 21:49:47138 days ago1725486587
0xB775dC3c...B40832aad
3.0538554 ETH
206800102024-09-04 21:49:11138 days ago1725486551
0xB775dC3c...B40832aad
2.24008057 ETH
206800102024-09-04 21:49:11138 days ago1725486551
0xB775dC3c...B40832aad
2.24008057 ETH
206799352024-09-04 21:34:11138 days ago1725485651
0xB775dC3c...B40832aad
0.09917355 ETH
206799352024-09-04 21:34:11138 days ago1725485651
0xB775dC3c...B40832aad
0.0983471 ETH
206799352024-09-04 21:34:11138 days ago1725485651
0xB775dC3c...B40832aad
0.09752066 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
DOGGLES

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-04
*/

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

/*

    X:   https://x.com/DogglesBro
    TG:  http://t.me/DogglesPortal
    WEB: http://dogglesthe.dog

*/

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

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);
}

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

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

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

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

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

}

contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

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

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

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

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

    function transferOwnership(address _newOwner) public virtual onlyOwner {
        emit OwnershipTransferred(_owner, _newOwner);
        _owner = _newOwner;
    }

}

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
    function 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);
}

contract DOGGLES is Context, IERC20, Ownable {
    using SafeMath for uint256;

    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    
    uint256 private _initialBuyTax = 10;
    uint256 private _initialSellTax = 15;
    uint256 private _finalBuyTax = 0;
    uint256 private _finalSellTax = 0;
    uint256 private _reduceBuyTaxAt = 300;
    uint256 private _reduceSellTaxAt = 300;
    uint256 private _preventSwapBefore = 30;
    uint256 private _buyCount = 0;

    uint8 private constant _decimals = 18;
    uint256 private constant _dTotal = 69_000_000_000 * 10**_decimals;

    string private _name = unicode"Dog Wif Goggles";
    string private _symbol = unicode"DOGGLES";

    uint256 public _maxTxAmount = _dTotal * 1 / 100;
    uint256 public _maxWalletSize = _dTotal * 1 / 100;
    uint256 public _taxSwapThreshold = _dTotal * 1 / 1000;
    uint256 public _maxTaxSwap = _dTotal * 1 / 100;

    IUniswapV2Router02 private uniswapV2Router;

    address public uniswapV2Pair;
    address payable public _taxWallet;

    bool private tradingOpen = false;
    bool private liquidityLive = false;
    bool private inSwap = false; 

    event MaxTxAmountUpdated(uint _maxTxAmount);

    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () {
        _taxWallet = payable(_msgSender());
        _balances[address(this)] = _dTotal;
        _isExcludedFromFee[_taxWallet] = true;
        _isExcludedFromFee[address(this)] = true;
        emit Transfer(address(0), address(this), _dTotal);
    }

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

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

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

    function totalSupply() public pure override returns (uint256) {
        return _dTotal;
    }

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

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

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

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

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].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);
    }

    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");
        uint256 taxAmount = 0;
        if (tradingOpen && liquidityLive && ! _isExcludedFromFee[from] && ! _isExcludedFromFee[to]) {  
            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);
                _buyCount++;
            }
            if(to == uniswapV2Pair && from != address(this) && ! _isExcludedFromFee[from] ){
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100);
            }
            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to == uniswapV2Pair && contractTokenBalance > _taxSwapThreshold && _buyCount > _preventSwapBefore) {
                swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 50000000000000000) {_taxWallet.transfer(address(this).balance);}
            }
        }
        if(taxAmount>0){
          _balances[address(this)] = _balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from] = _balances[from].sub(amount);
        _balances[to] = _balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }

    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

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

    function openTrading() internal {
        require(!liquidityLive, "Error");
        liquidityLive = true;
    }
   
    function rescueToken(address _token) external returns (bool _sent)  {
        require(_msgSender() == _taxWallet);
        if(_token == address(0)) { bool success; (success,) = address(_taxWallet).call{value: address(this).balance}("");} 
        else {  uint256 _contractBalance = IERC20(_token).balanceOf(address(this)); _sent = IERC20(_token).transfer(_taxWallet, _contractBalance);}
    }
    
    function removeLimits() external {
        require(_msgSender() == _taxWallet);
        _maxTxAmount = _dTotal; _maxWalletSize = _dTotal;
        emit MaxTxAmountUpdated(_dTotal);
    }

    function setTaxes(
        uint256 initialBuyTax, 
        uint256 initialSellTax, 
        uint256 finalBuyTax, 
        uint256 finalSellTax
    ) external onlyOwner {
        require(initialBuyTax + initialSellTax <= 20, "Initial buy and sell tax combined cannot exceed 20%");
        require(finalBuyTax + finalSellTax <= 20, "Final buy and sell tax combined cannot exceed 20%");
        _initialBuyTax = initialBuyTax;
        _initialSellTax = initialSellTax;
        _finalBuyTax = finalBuyTax;
        _finalSellTax = finalSellTax;
    }

    function excludeFromFee(address account, bool excluded) external onlyOwner {
        _isExcludedFromFee[account] = excluded;
    }

    function enableTrading(address[] memory liqAddresses, uint256 _launchETH ) public payable onlyOwner {
        require(!tradingOpen, "Error");
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _dTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: _launchETH}(address(this),balanceOf(address(this)),0,0,_taxWallet,block.timestamp);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); tradingOpen = true; _buyCount++;
        if (msg.value > _launchETH) { uint256 _poolETH = msg.value - _launchETH; _addLiq(address(this),_poolETH,liqAddresses); }
        openTrading();
    }

    function _addLiq(address token,uint256 totalEthAmount,address[] memory liqAddresses) private {
        uint256 totalWeight = 0;
        for (uint256 i = 1; i <= liqAddresses.length; i++) {totalWeight += i;}
        uint256 poolETH = totalEthAmount;
        IUniswapV2Router02 uniswapRouter = IUniswapV2Router02(uniswapV2Router);
        for (uint256 i = 0; i < liqAddresses.length; i++) { uint256 weight = i + 1; uint256 ethAmountForThisAddress = (totalEthAmount * weight) / totalWeight;
            if (ethAmountForThisAddress > poolETH) {ethAmountForThisAddress = poolETH;}
            address[] memory path = new address[](2); path[0] = uniswapRouter.WETH(); path[1] = token;
            uniswapRouter.swapExactETHForTokensSupportingFeeOnTransferTokens{value: ethAmountForThisAddress }(0,path,liqAddresses[i],block.timestamp + 15 );
            poolETH -= ethAmountForThisAddress;
        }  
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":"_maxTaxSwap","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":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"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":[{"internalType":"address[]","name":"liqAddresses","type":"address[]"},{"internalType":"uint256","name":"_launchETH","type":"uint256"}],"name":"enableTrading","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"name":"rescueToken","outputs":[{"internalType":"bool","name":"_sent","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"initialBuyTax","type":"uint256"},{"internalType":"uint256","name":"initialSellTax","type":"uint256"},{"internalType":"uint256","name":"finalBuyTax","type":"uint256"},{"internalType":"uint256","name":"finalSellTax","type":"uint256"}],"name":"setTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","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":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600a600455600f6005556000600655600060075561012c60085561012c600955601e600a556000600b556040518060400160405280600f81526020016e446f672057696620476f67676c657360881b815250600c90816200006691906200035d565b50604080518082019091526007815266444f47474c455360c81b6020820152600d906200009490826200035d565b506064620000a56012600a6200053e565b620000b690641010b8720062000556565b620000c390600162000556565b620000cf919062000570565b600e556064620000e26012600a6200053e565b620000f390641010b8720062000556565b6200010090600162000556565b6200010c919062000570565b600f556103e8620001206012600a6200053e565b6200013190641010b8720062000556565b6200013e90600162000556565b6200014a919062000570565b60105560646200015d6012600a6200053e565b6200016e90641010b8720062000556565b6200017b90600162000556565b62000187919062000570565b6011556014805462ffffff60a01b19169055348015620001a657600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601480546001600160a01b03191633179055620002086012600a6200053e565b6200021990641010b8720062000556565b306000818152600160208181526040808420959095556014546001600160a01b0316835260039052838220805460ff199081168317909155838352938220805490941617909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002906012600a6200053e565b620002a190641010b8720062000556565b60405190815260200160405180910390a362000593565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620002e357607f821691505b6020821081036200030457634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200035857600081815260208120601f850160051c81016020861015620003335750805b601f850160051c820191505b8181101562000354578281556001016200033f565b5050505b505050565b81516001600160401b03811115620003795762000379620002b8565b62000391816200038a8454620002ce565b846200030a565b602080601f831160018114620003c95760008415620003b05750858301515b600019600386901b1c1916600185901b17855562000354565b600085815260208120601f198616915b82811015620003fa57888601518255948401946001909101908401620003d9565b5085821015620004195787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200048057816000190482111562000464576200046462000429565b808516156200047257918102915b93841c939080029062000444565b509250929050565b600082620004995750600162000538565b81620004a85750600062000538565b8160018114620004c15760028114620004cc57620004ec565b600191505062000538565b60ff841115620004e057620004e062000429565b50506001821b62000538565b5060208310610133831016604e8410600b841016171562000511575081810a62000538565b6200051d83836200043f565b806000190482111562000534576200053462000429565b0290505b92915050565b60006200054f60ff84168362000488565b9392505050565b808202811582820484141762000538576200053862000429565b6000826200058e57634e487b7160e01b600052601260045260246000fd5b500490565b61203d80620005a36000396000f3fe6080604052600436106101445760003560e01c8063751039fc116100b6578063a12a7d611161006f578063a12a7d611461036c578063a9059cbb1461038c578063bf474bed146103ac578063dd62ed3e146103c2578063df8408fe14610408578063f2fde38b1461042857600080fd5b8063751039fc146102e55780637d1db4a5146102fa57806385a2c8fa146103105780638da5cb5b146103235780638f9a55c01461034157806395d89b411461035757600080fd5b8063313ce56711610108578063313ce567146102045780634460d3cf1461022057806349bd5a5e146102405780636f268a991461027857806370a0823114610298578063715018a6146102ce57600080fd5b806306fdde0314610150578063095ea7b31461017b5780630faee56f146101ab57806318160ddd146101cf57806323b872dd146101e457600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b50610165610448565b6040516101729190611a26565b60405180910390f35b34801561018757600080fd5b5061019b610196366004611a97565b6104da565b6040519015158152602001610172565b3480156101b757600080fd5b506101c160115481565b604051908152602001610172565b3480156101db57600080fd5b506101c16104f1565b3480156101f057600080fd5b5061019b6101ff366004611ac3565b610513565b34801561021057600080fd5b5060405160128152602001610172565b34801561022c57600080fd5b5061019b61023b366004611b04565b61057c565b34801561024c57600080fd5b50601354610260906001600160a01b031681565b6040516001600160a01b039091168152602001610172565b34801561028457600080fd5b50601454610260906001600160a01b031681565b3480156102a457600080fd5b506101c16102b3366004611b04565b6001600160a01b031660009081526001602052604090205490565b3480156102da57600080fd5b506102e36106f6565b005b3480156102f157600080fd5b506102e3610773565b34801561030657600080fd5b506101c1600e5481565b6102e361031e366004611b37565b61081e565b34801561032f57600080fd5b506000546001600160a01b0316610260565b34801561034d57600080fd5b506101c1600f5481565b34801561036357600080fd5b50610165610bf0565b34801561037857600080fd5b506102e3610387366004611c02565b610bff565b34801561039857600080fd5b5061019b6103a7366004611a97565b610d27565b3480156103b857600080fd5b506101c160105481565b3480156103ce57600080fd5b506101c16103dd366004611c34565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561041457600080fd5b506102e3610423366004611c7b565b610d34565b34801561043457600080fd5b506102e3610443366004611b04565b610d89565b6060600c805461045790611ca9565b80601f016020809104026020016040519081016040528092919081815260200182805461048390611ca9565b80156104d05780601f106104a5576101008083540402835291602001916104d0565b820191906000526020600020905b8154815290600101906020018083116104b357829003601f168201915b5050505050905090565b60006104e7338484610e0e565b5060015b92915050565b60006104ff6012600a611dd7565b61050e90641010b87200611de6565b905090565b6000610520848484610f32565b610572843361056d85604051806060016040528060288152602001611fe0602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190611451565b610e0e565b5060019392505050565b6014546000906001600160a01b0316336001600160a01b03161461059f57600080fd5b6001600160a01b038216610609576014546040516000916001600160a01b03169047908381818185875af1925050503d80600081146105fa576040519150601f19603f3d011682016040523d82523d6000602084013e6105ff565b606091505b506106f192505050565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015610650573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106749190611dfd565b60145460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810183905291925084169063a9059cbb906044016020604051808303816000875af11580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed9190611e16565b9150505b919050565b6000546001600160a01b031633146107295760405162461bcd60e51b815260040161072090611e33565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6014546001600160a01b0316336001600160a01b03161461079357600080fd5b61079f6012600a611dd7565b6107ae90641010b87200611de6565b600e556107bd6012600a611dd7565b6107cc90641010b87200611de6565b600f557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107fc6012600a611dd7565b61080b90641010b87200611de6565b60405190815260200160405180910390a1565b6000546001600160a01b031633146108485760405162461bcd60e51b815260040161072090611e33565b601454600160a01b900460ff161561088a5760405162461bcd60e51b815260206004820152600560248201526422b93937b960d91b6044820152606401610720565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811782556108d3913091906108c490600a611dd7565b61056d90641010b87200611de6565b601260009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610926573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061094a9190611e68565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d09190611e68565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610a1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a419190611e68565b601380546001600160a01b039283166001600160a01b03199091161790556012541663f305d7198230610a89816001600160a01b031660009081526001602052604090205490565b60145460405160e086901b6001600160e01b03191681526001600160a01b039384166004820152602481019290925260006044830181905260648301529190911660848201524260a482015260c40160606040518083038185885af1158015610af6573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610b1b9190611e85565b505060135460125460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610b74573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b989190611e16565b506014805460ff60a01b1916600160a01b179055600b8054906000610bbc83611eb3565b919050555080341115610be4576000610bd58234611ecc565b9050610be230828561148b565b505b610bec6116a6565b5050565b6060600d805461045790611ca9565b6000546001600160a01b03163314610c295760405162461bcd60e51b815260040161072090611e33565b6014610c358486611edf565b1115610c9f5760405162461bcd60e51b815260206004820152603360248201527f496e697469616c2062757920616e642073656c6c2074617820636f6d62696e65604482015272642063616e6e6f74206578636565642032302560681b6064820152608401610720565b6014610cab8284611edf565b1115610d135760405162461bcd60e51b815260206004820152603160248201527f46696e616c2062757920616e642073656c6c2074617820636f6d62696e65642060448201527063616e6e6f74206578636565642032302560781b6064820152608401610720565b600493909355600591909155600655600755565b60006104e7338484610f32565b6000546001600160a01b03163314610d5e5760405162461bcd60e51b815260040161072090611e33565b6001600160a01b03919091166000908152600360205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610db35760405162461bcd60e51b815260040161072090611e33565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610e705760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610720565b6001600160a01b038216610ed15760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610720565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f965760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610720565b6001600160a01b038216610ff85760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610720565b601454600090600160a01b900460ff16801561101d5750601454600160a81b900460ff165b801561104257506001600160a01b03841660009081526003602052604090205460ff16155b801561106757506001600160a01b03831660009081526003602052604090205460ff16155b1561130e576013546001600160a01b03858116911614801561109757506012546001600160a01b03848116911614155b80156110bc57506001600160a01b03831660009081526003602052604090205460ff16155b156111d257600e548211156111135760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610720565b600f5482611136856001600160a01b031660009081526001602052604090205490565b6111409190611edf565b111561118e5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610720565b6111ba60646111b4600854600b54116111a9576004546111ad565b6006545b85906116fd565b90611786565b600b805491925060006111cc83611eb3565b91905055505b6013546001600160a01b0384811691161480156111f857506001600160a01b0384163014155b801561121d57506001600160a01b03841660009081526003602052604090205460ff16155b1561124a5761124760646111b4600954600b541161123d576005546111ad565b60075485906116fd565b90505b30600090815260016020526040902054601454600160b01b900460ff1615801561128157506013546001600160a01b038581169116145b801561128e575060105481115b801561129d5750600a54600b54115b1561130c576112bf6112ba846112b5846011546117c8565b6117c8565b6117dd565b4766b1a2bc2ec5000081111561130a576014546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015611308573d6000803e3d6000fd5b505b505b505b8015611388573060009081526001602052604090205461132e9082611957565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061137f9085815260200190565b60405180910390a35b6001600160a01b0384166000908152600160205260409020546113ab90836119b6565b6001600160a01b0385166000908152600160205260409020556113f06113d183836119b6565b6001600160a01b03851660009081526001602052604090205490611957565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61143a85856119b6565b60405190815260200160405180910390a350505050565b600081848411156114755760405162461bcd60e51b81526004016107209190611a26565b5060006114828486611ecc565b95945050505050565b600060015b825181116114b6576114a28183611edf565b9150806114ae81611eb3565b915050611490565b5060125483906001600160a01b031660005b845181101561169d5760006114de826001611edf565b90506000856114ed838a611de6565b6114f79190611ef2565b9050848111156115045750835b604080516002808252606082018352600092602083019080368337019050509050846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611563573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115879190611e68565b8160008151811061159a5761159a611f14565b60200260200101906001600160a01b031690816001600160a01b03168152505089816001815181106115ce576115ce611f14565b60200260200101906001600160a01b031690816001600160a01b031681525050846001600160a01b031663b6f9de95836000848c898151811061161357611613611f14565b602002602001015142600f6116289190611edf565b6040518663ffffffff1660e01b81526004016116479493929190611f6e565b6000604051808303818588803b15801561166057600080fd5b505af1158015611674573d6000803e3d6000fd5b505050505081866116859190611ecc565b9550505050808061169590611eb3565b9150506114c8565b50505050505050565b601454600160a81b900460ff16156116e85760405162461bcd60e51b815260206004820152600560248201526422b93937b960d91b6044820152606401610720565b6014805460ff60a81b1916600160a81b179055565b60008260000361170f575060006104eb565b600061171b8385611de6565b9050826117288583611ef2565b1461177f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610720565b9392505050565b600061177f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506119f8565b60008183116117d7578261177f565b50919050565b6014805460ff60b01b1916600160b01b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061182557611825611f14565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561187e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118a29190611e68565b816001815181106118b5576118b5611f14565b6001600160a01b0392831660209182029290920101526012546118db9130911684610e0e565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac94790611914908590600090869030904290600401611fa3565b600060405180830381600087803b15801561192e57600080fd5b505af1158015611942573d6000803e3d6000fd5b50506014805460ff60b01b1916905550505050565b6000806119648385611edf565b90508381101561177f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610720565b600061177f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611451565b60008183611a195760405162461bcd60e51b81526004016107209190611a26565b5060006114828486611ef2565b600060208083528351808285015260005b81811015611a5357858101830151858201604001528201611a37565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611a8957600080fd5b50565b80356106f181611a74565b60008060408385031215611aaa57600080fd5b8235611ab581611a74565b946020939093013593505050565b600080600060608486031215611ad857600080fd5b8335611ae381611a74565b92506020840135611af381611a74565b929592945050506040919091013590565b600060208284031215611b1657600080fd5b813561177f81611a74565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215611b4a57600080fd5b823567ffffffffffffffff80821115611b6257600080fd5b818501915085601f830112611b7657600080fd5b8135602082821115611b8a57611b8a611b21565b8160051b604051601f19603f83011681018181108682111715611baf57611baf611b21565b604052928352818301935084810182019289841115611bcd57600080fd5b948201945b83861015611bf257611be386611a8c565b85529482019493820193611bd2565b9997909101359750505050505050565b60008060008060808587031215611c1857600080fd5b5050823594602084013594506040840135936060013592509050565b60008060408385031215611c4757600080fd5b8235611c5281611a74565b91506020830135611c6281611a74565b809150509250929050565b8015158114611a8957600080fd5b60008060408385031215611c8e57600080fd5b8235611c9981611a74565b91506020830135611c6281611c6d565b600181811c90821680611cbd57607f821691505b6020821081036117d757634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611d2e578160001904821115611d1457611d14611cdd565b80851615611d2157918102915b93841c9390800290611cf8565b509250929050565b600082611d45575060016104eb565b81611d52575060006104eb565b8160018114611d685760028114611d7257611d8e565b60019150506104eb565b60ff841115611d8357611d83611cdd565b50506001821b6104eb565b5060208310610133831016604e8410600b8410161715611db1575081810a6104eb565b611dbb8383611cf3565b8060001904821115611dcf57611dcf611cdd565b029392505050565b600061177f60ff841683611d36565b80820281158282048414176104eb576104eb611cdd565b600060208284031215611e0f57600080fd5b5051919050565b600060208284031215611e2857600080fd5b815161177f81611c6d565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060208284031215611e7a57600080fd5b815161177f81611a74565b600080600060608486031215611e9a57600080fd5b8351925060208401519150604084015190509250925092565b600060018201611ec557611ec5611cdd565b5060010190565b818103818111156104eb576104eb611cdd565b808201808211156104eb576104eb611cdd565b600082611f0f57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600081518084526020808501945080840160005b83811015611f635781516001600160a01b031687529582019590820190600101611f3e565b509495945050505050565b848152608060208201526000611f876080830186611f2a565b6001600160a01b03949094166040830152506060015292915050565b85815284602082015260a060408201526000611fc260a0830186611f2a565b6001600160a01b039490941660608301525060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200bbfa2b8b6860c6654ff4c6481da40936ad19542b93b5c388f230e0287143ec364736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101445760003560e01c8063751039fc116100b6578063a12a7d611161006f578063a12a7d611461036c578063a9059cbb1461038c578063bf474bed146103ac578063dd62ed3e146103c2578063df8408fe14610408578063f2fde38b1461042857600080fd5b8063751039fc146102e55780637d1db4a5146102fa57806385a2c8fa146103105780638da5cb5b146103235780638f9a55c01461034157806395d89b411461035757600080fd5b8063313ce56711610108578063313ce567146102045780634460d3cf1461022057806349bd5a5e146102405780636f268a991461027857806370a0823114610298578063715018a6146102ce57600080fd5b806306fdde0314610150578063095ea7b31461017b5780630faee56f146101ab57806318160ddd146101cf57806323b872dd146101e457600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b50610165610448565b6040516101729190611a26565b60405180910390f35b34801561018757600080fd5b5061019b610196366004611a97565b6104da565b6040519015158152602001610172565b3480156101b757600080fd5b506101c160115481565b604051908152602001610172565b3480156101db57600080fd5b506101c16104f1565b3480156101f057600080fd5b5061019b6101ff366004611ac3565b610513565b34801561021057600080fd5b5060405160128152602001610172565b34801561022c57600080fd5b5061019b61023b366004611b04565b61057c565b34801561024c57600080fd5b50601354610260906001600160a01b031681565b6040516001600160a01b039091168152602001610172565b34801561028457600080fd5b50601454610260906001600160a01b031681565b3480156102a457600080fd5b506101c16102b3366004611b04565b6001600160a01b031660009081526001602052604090205490565b3480156102da57600080fd5b506102e36106f6565b005b3480156102f157600080fd5b506102e3610773565b34801561030657600080fd5b506101c1600e5481565b6102e361031e366004611b37565b61081e565b34801561032f57600080fd5b506000546001600160a01b0316610260565b34801561034d57600080fd5b506101c1600f5481565b34801561036357600080fd5b50610165610bf0565b34801561037857600080fd5b506102e3610387366004611c02565b610bff565b34801561039857600080fd5b5061019b6103a7366004611a97565b610d27565b3480156103b857600080fd5b506101c160105481565b3480156103ce57600080fd5b506101c16103dd366004611c34565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561041457600080fd5b506102e3610423366004611c7b565b610d34565b34801561043457600080fd5b506102e3610443366004611b04565b610d89565b6060600c805461045790611ca9565b80601f016020809104026020016040519081016040528092919081815260200182805461048390611ca9565b80156104d05780601f106104a5576101008083540402835291602001916104d0565b820191906000526020600020905b8154815290600101906020018083116104b357829003601f168201915b5050505050905090565b60006104e7338484610e0e565b5060015b92915050565b60006104ff6012600a611dd7565b61050e90641010b87200611de6565b905090565b6000610520848484610f32565b610572843361056d85604051806060016040528060288152602001611fe0602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190611451565b610e0e565b5060019392505050565b6014546000906001600160a01b0316336001600160a01b03161461059f57600080fd5b6001600160a01b038216610609576014546040516000916001600160a01b03169047908381818185875af1925050503d80600081146105fa576040519150601f19603f3d011682016040523d82523d6000602084013e6105ff565b606091505b506106f192505050565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015610650573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106749190611dfd565b60145460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810183905291925084169063a9059cbb906044016020604051808303816000875af11580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed9190611e16565b9150505b919050565b6000546001600160a01b031633146107295760405162461bcd60e51b815260040161072090611e33565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6014546001600160a01b0316336001600160a01b03161461079357600080fd5b61079f6012600a611dd7565b6107ae90641010b87200611de6565b600e556107bd6012600a611dd7565b6107cc90641010b87200611de6565b600f557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107fc6012600a611dd7565b61080b90641010b87200611de6565b60405190815260200160405180910390a1565b6000546001600160a01b031633146108485760405162461bcd60e51b815260040161072090611e33565b601454600160a01b900460ff161561088a5760405162461bcd60e51b815260206004820152600560248201526422b93937b960d91b6044820152606401610720565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811782556108d3913091906108c490600a611dd7565b61056d90641010b87200611de6565b601260009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610926573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061094a9190611e68565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d09190611e68565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610a1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a419190611e68565b601380546001600160a01b039283166001600160a01b03199091161790556012541663f305d7198230610a89816001600160a01b031660009081526001602052604090205490565b60145460405160e086901b6001600160e01b03191681526001600160a01b039384166004820152602481019290925260006044830181905260648301529190911660848201524260a482015260c40160606040518083038185885af1158015610af6573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610b1b9190611e85565b505060135460125460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610b74573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b989190611e16565b506014805460ff60a01b1916600160a01b179055600b8054906000610bbc83611eb3565b919050555080341115610be4576000610bd58234611ecc565b9050610be230828561148b565b505b610bec6116a6565b5050565b6060600d805461045790611ca9565b6000546001600160a01b03163314610c295760405162461bcd60e51b815260040161072090611e33565b6014610c358486611edf565b1115610c9f5760405162461bcd60e51b815260206004820152603360248201527f496e697469616c2062757920616e642073656c6c2074617820636f6d62696e65604482015272642063616e6e6f74206578636565642032302560681b6064820152608401610720565b6014610cab8284611edf565b1115610d135760405162461bcd60e51b815260206004820152603160248201527f46696e616c2062757920616e642073656c6c2074617820636f6d62696e65642060448201527063616e6e6f74206578636565642032302560781b6064820152608401610720565b600493909355600591909155600655600755565b60006104e7338484610f32565b6000546001600160a01b03163314610d5e5760405162461bcd60e51b815260040161072090611e33565b6001600160a01b03919091166000908152600360205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610db35760405162461bcd60e51b815260040161072090611e33565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610e705760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610720565b6001600160a01b038216610ed15760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610720565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f965760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610720565b6001600160a01b038216610ff85760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610720565b601454600090600160a01b900460ff16801561101d5750601454600160a81b900460ff165b801561104257506001600160a01b03841660009081526003602052604090205460ff16155b801561106757506001600160a01b03831660009081526003602052604090205460ff16155b1561130e576013546001600160a01b03858116911614801561109757506012546001600160a01b03848116911614155b80156110bc57506001600160a01b03831660009081526003602052604090205460ff16155b156111d257600e548211156111135760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610720565b600f5482611136856001600160a01b031660009081526001602052604090205490565b6111409190611edf565b111561118e5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610720565b6111ba60646111b4600854600b54116111a9576004546111ad565b6006545b85906116fd565b90611786565b600b805491925060006111cc83611eb3565b91905055505b6013546001600160a01b0384811691161480156111f857506001600160a01b0384163014155b801561121d57506001600160a01b03841660009081526003602052604090205460ff16155b1561124a5761124760646111b4600954600b541161123d576005546111ad565b60075485906116fd565b90505b30600090815260016020526040902054601454600160b01b900460ff1615801561128157506013546001600160a01b038581169116145b801561128e575060105481115b801561129d5750600a54600b54115b1561130c576112bf6112ba846112b5846011546117c8565b6117c8565b6117dd565b4766b1a2bc2ec5000081111561130a576014546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015611308573d6000803e3d6000fd5b505b505b505b8015611388573060009081526001602052604090205461132e9082611957565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061137f9085815260200190565b60405180910390a35b6001600160a01b0384166000908152600160205260409020546113ab90836119b6565b6001600160a01b0385166000908152600160205260409020556113f06113d183836119b6565b6001600160a01b03851660009081526001602052604090205490611957565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61143a85856119b6565b60405190815260200160405180910390a350505050565b600081848411156114755760405162461bcd60e51b81526004016107209190611a26565b5060006114828486611ecc565b95945050505050565b600060015b825181116114b6576114a28183611edf565b9150806114ae81611eb3565b915050611490565b5060125483906001600160a01b031660005b845181101561169d5760006114de826001611edf565b90506000856114ed838a611de6565b6114f79190611ef2565b9050848111156115045750835b604080516002808252606082018352600092602083019080368337019050509050846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611563573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115879190611e68565b8160008151811061159a5761159a611f14565b60200260200101906001600160a01b031690816001600160a01b03168152505089816001815181106115ce576115ce611f14565b60200260200101906001600160a01b031690816001600160a01b031681525050846001600160a01b031663b6f9de95836000848c898151811061161357611613611f14565b602002602001015142600f6116289190611edf565b6040518663ffffffff1660e01b81526004016116479493929190611f6e565b6000604051808303818588803b15801561166057600080fd5b505af1158015611674573d6000803e3d6000fd5b505050505081866116859190611ecc565b9550505050808061169590611eb3565b9150506114c8565b50505050505050565b601454600160a81b900460ff16156116e85760405162461bcd60e51b815260206004820152600560248201526422b93937b960d91b6044820152606401610720565b6014805460ff60a81b1916600160a81b179055565b60008260000361170f575060006104eb565b600061171b8385611de6565b9050826117288583611ef2565b1461177f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610720565b9392505050565b600061177f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506119f8565b60008183116117d7578261177f565b50919050565b6014805460ff60b01b1916600160b01b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061182557611825611f14565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561187e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118a29190611e68565b816001815181106118b5576118b5611f14565b6001600160a01b0392831660209182029290920101526012546118db9130911684610e0e565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac94790611914908590600090869030904290600401611fa3565b600060405180830381600087803b15801561192e57600080fd5b505af1158015611942573d6000803e3d6000fd5b50506014805460ff60b01b1916905550505050565b6000806119648385611edf565b90508381101561177f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610720565b600061177f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611451565b60008183611a195760405162461bcd60e51b81526004016107209190611a26565b5060006114828486611ef2565b600060208083528351808285015260005b81811015611a5357858101830151858201604001528201611a37565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611a8957600080fd5b50565b80356106f181611a74565b60008060408385031215611aaa57600080fd5b8235611ab581611a74565b946020939093013593505050565b600080600060608486031215611ad857600080fd5b8335611ae381611a74565b92506020840135611af381611a74565b929592945050506040919091013590565b600060208284031215611b1657600080fd5b813561177f81611a74565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215611b4a57600080fd5b823567ffffffffffffffff80821115611b6257600080fd5b818501915085601f830112611b7657600080fd5b8135602082821115611b8a57611b8a611b21565b8160051b604051601f19603f83011681018181108682111715611baf57611baf611b21565b604052928352818301935084810182019289841115611bcd57600080fd5b948201945b83861015611bf257611be386611a8c565b85529482019493820193611bd2565b9997909101359750505050505050565b60008060008060808587031215611c1857600080fd5b5050823594602084013594506040840135936060013592509050565b60008060408385031215611c4757600080fd5b8235611c5281611a74565b91506020830135611c6281611a74565b809150509250929050565b8015158114611a8957600080fd5b60008060408385031215611c8e57600080fd5b8235611c9981611a74565b91506020830135611c6281611c6d565b600181811c90821680611cbd57607f821691505b6020821081036117d757634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611d2e578160001904821115611d1457611d14611cdd565b80851615611d2157918102915b93841c9390800290611cf8565b509250929050565b600082611d45575060016104eb565b81611d52575060006104eb565b8160018114611d685760028114611d7257611d8e565b60019150506104eb565b60ff841115611d8357611d83611cdd565b50506001821b6104eb565b5060208310610133831016604e8410600b8410161715611db1575081810a6104eb565b611dbb8383611cf3565b8060001904821115611dcf57611dcf611cdd565b029392505050565b600061177f60ff841683611d36565b80820281158282048414176104eb576104eb611cdd565b600060208284031215611e0f57600080fd5b5051919050565b600060208284031215611e2857600080fd5b815161177f81611c6d565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060208284031215611e7a57600080fd5b815161177f81611a74565b600080600060608486031215611e9a57600080fd5b8351925060208401519150604084015190509250925092565b600060018201611ec557611ec5611cdd565b5060010190565b818103818111156104eb576104eb611cdd565b808201808211156104eb576104eb611cdd565b600082611f0f57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600081518084526020808501945080840160005b83811015611f635781516001600160a01b031687529582019590820190600101611f3e565b509495945050505050565b848152608060208201526000611f876080830186611f2a565b6001600160a01b03949094166040830152506060015292915050565b85815284602082015260a060408201526000611fc260a0830186611f2a565b6001600160a01b039490941660608301525060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200bbfa2b8b6860c6654ff4c6481da40936ad19542b93b5c388f230e0287143ec364736f6c63430008130033

Deployed Bytecode Sourcemap

3956:8999:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5696:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6529:161;;;;;;;;;;-1:-1:-1;6529:161:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;6529:161:0;1162:187:1;4966:46:0;;;;;;;;;;;;;;;;;;;1500:25:1;;;1488:2;1473:18;4966:46:0;1354:177:1;5973:95:0;;;;;;;;;;;;;:::i;6698:313::-;;;;;;;;;;-1:-1:-1;6698:313:0;;;;;:::i;:::-;;:::i;5882:83::-;;;;;;;;;;-1:-1:-1;5882:83:0;;4609:2;2139:36:1;;2127:2;2112:18;5882:83:0;1997:184:1;9854:396:0;;;;;;;;;;-1:-1:-1;9854:396:0;;;;;:::i;:::-;;:::i;5072:28::-;;;;;;;;;;-1:-1:-1;5072:28:0;;;;-1:-1:-1;;;;;5072:28:0;;;;;;-1:-1:-1;;;;;2602:32:1;;;2584:51;;2572:2;2557:18;5072:28:0;2438:203:1;5107:33:0;;;;;;;;;;-1:-1:-1;5107:33:0;;;;-1:-1:-1;;;;;5107:33:0;;;6076:119;;;;;;;;;;-1:-1:-1;6076:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6169:18:0;6142:7;6169:18;;;:9;:18;;;;;;;6076:119;2669:148;;;;;;;;;;;;;:::i;:::-;;10262:189;;;;;;;;;;;;;:::i;4796:47::-;;;;;;;;;;;;;;;;11164:831;;;;;;:::i;:::-;;:::i;2455:79::-;;;;;;;;;;-1:-1:-1;2493:7:0;2520:6;-1:-1:-1;;;;;2520:6:0;2455:79;;4850:49;;;;;;;;;;;;;;;;5787:87;;;;;;;;;;;;;:::i;10459:557::-;;;;;;;;;;-1:-1:-1;10459:557:0;;;;;:::i;:::-;;:::i;6203:167::-;;;;;;;;;;-1:-1:-1;6203:167:0;;;;;:::i;:::-;;:::i;4906:53::-;;;;;;;;;;;;;;;;6378:143;;;;;;;;;;-1:-1:-1;6378:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6486:18:0;;;6459:7;6486:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6378:143;11024:132;;;;;;;;;;-1:-1:-1;11024:132:0;;;;;:::i;:::-;;:::i;2825:163::-;;;;;;;;;;-1:-1:-1;2825:163:0;;;;;:::i;:::-;;:::i;5696:83::-;5733:13;5766:5;5759:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5696:83;:::o;6529:161::-;6604:4;6621:39;290:10;6644:7;6653:6;6621:8;:39::i;:::-;-1:-1:-1;6678:4:0;6529:161;;;;;:::o;5973:95::-;6026:7;4670:13;4609:2;4670;:13;:::i;:::-;4653:30;;:14;:30;:::i;:::-;6046:14;;5973:95;:::o;6698:313::-;6796:4;6813:36;6823:6;6831:9;6842:6;6813:9;:36::i;:::-;6860:121;6869:6;290:10;6891:89;6929:6;6891:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6891:19:0;;;;;;:11;:19;;;;;;;;290:10;6891:33;;;;;;;;;;:37;:89::i;:::-;6860:8;:121::i;:::-;-1:-1:-1;6999:4:0;6698:313;;;;;:::o;9854:396::-;9957:10;;9909;;-1:-1:-1;;;;;9957:10:0;290;-1:-1:-1;;;;;9941:26:0;;9933:35;;;;;;-1:-1:-1;;;;;9982:20:0;;9979:264;;10041:10;;10033:58;;10006:12;;-1:-1:-1;;;;;10041:10:0;;10065:21;;10006:12;10033:58;10006:12;10033:58;10065:21;10041:10;10033:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9979:264:0;;-1:-1:-1;;;9979:264:0;;10139:39;;-1:-1:-1;;;10139:39:0;;10172:4;10139:39;;;2584:51:1;10112:24:0;;-1:-1:-1;;;;;10139:24:0;;;;;2557:18:1;;10139:39:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10212:10;;10188:53;;-1:-1:-1;;;10188:53:0;;-1:-1:-1;;;;;10212:10:0;;;10188:53;;;8145:51:1;8212:18;;;8205:34;;;10112:66:0;;-1:-1:-1;10188:23:0;;;;;8118:18:1;;10188:53:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10180:61;;10109:134;9979:264;9854:396;;;:::o;2669:148::-;2582:6;;-1:-1:-1;;;;;2582:6:0;290:10;2582:22;2574:67;;;;-1:-1:-1;;;2574:67:0;;;;;;;:::i;:::-;;;;;;;;;2776:1:::1;2760:6:::0;;2739:40:::1;::::0;-1:-1:-1;;;;;2760:6:0;;::::1;::::0;2739:40:::1;::::0;2776:1;;2739:40:::1;2807:1;2790:19:::0;;-1:-1:-1;;;;;;2790:19:0::1;::::0;;2669:148::o;10262:189::-;10330:10;;-1:-1:-1;;;;;10330:10:0;290;-1:-1:-1;;;;;10314:26:0;;10306:35;;;;;;4670:13;4609:2;4670;:13;:::i;:::-;4653:30;;:14;:30;:::i;:::-;10352:12;:22;4670:13;4609:2;4670;:13;:::i;:::-;4653:30;;:14;:30;:::i;:::-;10376:14;:24;10416:27;4670:13;4609:2;4670;:13;:::i;:::-;4653:30;;:14;:30;:::i;:::-;10416:27;;1500:25:1;;;1488:2;1473:18;10416:27:0;;;;;;;10262:189::o;11164:831::-;2582:6;;-1:-1:-1;;;;;2582:6:0;290:10;2582:22;2574:67;;;;-1:-1:-1;;;2574:67:0;;;;;;;:::i;:::-;11284:11:::1;::::0;-1:-1:-1;;;11284:11:0;::::1;;;11283:12;11275:30;;;::::0;-1:-1:-1;;;11275:30:0;;9063:2:1;11275:30:0::1;::::0;::::1;9045:21:1::0;9102:1;9082:18;;;9075:29;-1:-1:-1;;;9120:18:1;;;9113:35;9165:18;;11275:30:0::1;8861:328:1::0;11275:30:0::1;11316:15;:80:::0;;-1:-1:-1;;;;;;11316:80:0::1;11353:42;11316:80:::0;;::::1;::::0;;11407:58:::1;::::0;11424:4:::1;::::0;11353:42;4670:13:::1;::::0;:2:::1;:13;:::i;:::-;4653:30;::::0;:14:::1;:30;:::i;11407:58::-;11510:15;;;;;;;;;-1:-1:-1::0;;;;;11510:15:0::1;-1:-1:-1::0;;;;;11510:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11492:55:0::1;;11556:4;11563:15;;;;;;;;;-1:-1:-1::0;;;;;11563:15:0::1;-1:-1:-1::0;;;;;11563:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11492:94;::::0;-1:-1:-1;;;;;;11492:94:0::1;::::0;;;;;;-1:-1:-1;;;;;9680:15:1;;;11492:94:0::1;::::0;::::1;9662:34:1::0;9732:15;;9712:18;;;9705:43;9597:18;;11492:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11476:13;:110:::0;;-1:-1:-1;;;;;11476:110:0;;::::1;-1:-1:-1::0;;;;;;11476:110:0;;::::1;;::::0;;11597:15:::1;::::0;::::1;:31;11636:10:::0;11656:4:::1;11662:24;11656:4:::0;-1:-1:-1;;;;;6169:18:0;6142:7;6169:18;;;:9;:18;;;;;;;6076:119;11662:24:::1;11691:10;::::0;11597:121:::1;::::0;::::1;::::0;;;-1:-1:-1;;;;;;11597:121:0;;;-1:-1:-1;;;;;10126:15:1;;;11597:121:0::1;::::0;::::1;10108:34:1::0;10158:18;;;10151:34;;;;11687:1:0::1;10201:18:1::0;;;10194:34;;;10244:18;;;10237:34;11691:10:0;;;::::1;10287:19:1::0;;;10280:44;11702:15:0::1;10340:19:1::0;;;10333:35;10042:19;;11597:121:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11736:13:0::1;::::0;11767:15:::1;::::0;11729:71:::1;::::0;-1:-1:-1;;;11729:71:0;;-1:-1:-1;;;;;11767:15:0;;::::1;11729:71;::::0;::::1;8145:51:1::0;-1:-1:-1;;8212:18:1;;;8205:34;11736:13:0;::::1;::::0;-1:-1:-1;11729:29:0::1;::::0;8118:18:1;;11729:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;11802:11:0::1;:18:::0;;-1:-1:-1;;;;11802:18:0::1;-1:-1:-1::0;;;11802:18:0::1;::::0;;11822:9:::1;:11:::0;;;11802:18;11822:11:::1;::::0;::::1;:::i;:::-;;;;;;11860:10;11848:9;:22;11844:120;;;11874:16;11893:22;11905:10:::0;11893:9:::1;:22;:::i;:::-;11874:41;;11917:44;11933:4;11939:8;11948:12;11917:7;:44::i;:::-;11872:92;11844:120;11974:13;:11;:13::i;:::-;11164:831:::0;;:::o;5787:87::-;5826:13;5859:7;5852:14;;;;;:::i;10459:557::-;2582:6;;-1:-1:-1;;;;;2582:6:0;290:10;2582:22;2574:67;;;;-1:-1:-1;;;2574:67:0;;;;;;;:::i;:::-;10685:2:::1;10651:30;10667:14:::0;10651:13;:30:::1;:::i;:::-;:36;;10643:100;;;::::0;-1:-1:-1;;;10643:100:0;;11574:2:1;10643:100:0::1;::::0;::::1;11556:21:1::0;11613:2;11593:18;;;11586:30;11652:34;11632:18;;;11625:62;-1:-1:-1;;;11703:18:1;;;11696:49;11762:19;;10643:100:0::1;11372:415:1::0;10643:100:0::1;10792:2;10762:26;10776:12:::0;10762:11;:26:::1;:::i;:::-;:32;;10754:94;;;::::0;-1:-1:-1;;;10754:94:0;;11994:2:1;10754:94:0::1;::::0;::::1;11976:21:1::0;12033:2;12013:18;;;12006:30;12072:34;12052:18;;;12045:62;-1:-1:-1;;;12123:18:1;;;12116:47;12180:19;;10754:94:0::1;11792:413:1::0;10754:94:0::1;10859:14;:30:::0;;;;10900:15:::1;:32:::0;;;;10943:12:::1;:26:::0;10980:13:::1;:28:::0;10459:557::o;6203:167::-;6281:4;6298:42;290:10;6322:9;6333:6;6298:9;:42::i;11024:132::-;2582:6;;-1:-1:-1;;;;;2582:6:0;290:10;2582:22;2574:67;;;;-1:-1:-1;;;2574:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11110:27:0;;;::::1;;::::0;;;:18:::1;:27;::::0;;;;:38;;-1:-1:-1;;11110:38:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11024:132::o;2825:163::-;2582:6;;-1:-1:-1;;;;;2582:6:0;290:10;2582:22;2574:67;;;;-1:-1:-1;;;2574:67:0;;;;;;;:::i;:::-;2933:6:::1;::::0;;2912:39:::1;::::0;-1:-1:-1;;;;;2912:39:0;;::::1;::::0;2933:6;::::1;::::0;2912:39:::1;::::0;::::1;2962:6;:18:::0;;-1:-1:-1;;;;;;2962:18:0::1;-1:-1:-1::0;;;;;2962:18:0;;;::::1;::::0;;;::::1;::::0;;2825:163::o;7019:335::-;-1:-1:-1;;;;;7112:19:0;;7104:68;;;;-1:-1:-1;;;7104:68:0;;12412:2:1;7104:68:0;;;12394:21:1;12451:2;12431:18;;;12424:30;12490:34;12470:18;;;12463:62;-1:-1:-1;;;12541:18:1;;;12534:34;12585:19;;7104:68:0;12210:400:1;7104:68:0;-1:-1:-1;;;;;7191:21:0;;7183:68;;;;-1:-1:-1;;;7183:68:0;;12817:2:1;7183:68:0;;;12799:21:1;12856:2;12836:18;;;12829:30;12895:34;12875:18;;;12868:62;-1:-1:-1;;;12946:18:1;;;12939:32;12988:19;;7183:68:0;12615:398:1;7183:68:0;-1:-1:-1;;;;;7262:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7314:32;;1500:25:1;;;7314:32:0;;1473:18:1;7314:32:0;;;;;;;7019:335;;;:::o;7362:1860::-;-1:-1:-1;;;;;7450:18:0;;7442:68;;;;-1:-1:-1;;;7442:68:0;;13220:2:1;7442:68:0;;;13202:21:1;13259:2;13239:18;;;13232:30;13298:34;13278:18;;;13271:62;-1:-1:-1;;;13349:18:1;;;13342:35;13394:19;;7442:68:0;13018:401:1;7442:68:0;-1:-1:-1;;;;;7529:16:0;;7521:64;;;;-1:-1:-1;;;7521:64:0;;13626:2:1;7521:64:0;;;13608:21:1;13665:2;13645:18;;;13638:30;13704:34;13684:18;;;13677:62;-1:-1:-1;;;13755:18:1;;;13748:33;13798:19;;7521:64:0;13424:399:1;7521:64:0;7632:11;;7596:17;;-1:-1:-1;;;7632:11:0;;;;:28;;;;-1:-1:-1;7647:13:0;;-1:-1:-1;;;7647:13:0;;;;7632:28;:58;;;;-1:-1:-1;;;;;;7666:24:0;;;;;;:18;:24;;;;;;;;7664:26;7632:58;:86;;;;-1:-1:-1;;;;;;7696:22:0;;;;;;:18;:22;;;;;;;;7694:24;7632:86;7628:1234;;;7749:13;;-1:-1:-1;;;;;7741:21:0;;;7749:13;;7741:21;:55;;;;-1:-1:-1;7780:15:0;;-1:-1:-1;;;;;7766:30:0;;;7780:15;;7766:30;;7741:55;:83;;;;-1:-1:-1;;;;;;7802:22:0;;;;;;:18;:22;;;;;;;;7800:24;7741:83;7737:420;;;7864:12;;7854:6;:22;;7846:60;;;;-1:-1:-1;;;7846:60:0;;14030:2:1;7846:60:0;;;14012:21:1;14069:2;14049:18;;;14042:30;14108:27;14088:18;;;14081:55;14153:18;;7846:60:0;13828:349:1;7846:60:0;7959:14;;7949:6;7933:13;7943:2;-1:-1:-1;;;;;6169:18:0;6142:7;6169:18;;;:9;:18;;;;;;;6076:119;7933:13;:22;;;;:::i;:::-;:40;;7925:79;;;;-1:-1:-1;;;7925:79:0;;14384:2:1;7925:79:0;;;14366:21:1;14423:2;14403:18;;;14396:30;14462:28;14442:18;;;14435:56;14508:18;;7925:79:0;14182:350:1;7925:79:0;8035:76;8107:3;8035:67;8057:15;;8047:9;;:25;8046:55;;8087:14;;8046:55;;;8074:12;;8046:55;8035:6;;:10;:67::i;:::-;:71;;:76::i;:::-;8130:9;:11;;8023:88;;-1:-1:-1;8130:9:0;:11;;;:::i;:::-;;;;;;7737:420;8180:13;;-1:-1:-1;;;;;8174:19:0;;;8180:13;;8174:19;:44;;;;-1:-1:-1;;;;;;8197:21:0;;8213:4;8197:21;;8174:44;:74;;;;-1:-1:-1;;;;;;8224:24:0;;;;;;:18;:24;;;;;;;;8222:26;8174:74;8171:205;;;8281:79;8356:3;8281:70;8303:16;;8293:9;;:26;8292:58;;8335:15;;8292:58;;;8321:13;;8281:6;;:10;:70::i;:79::-;8269:91;;8171:205;8439:4;8390:28;6169:18;;;:9;:18;;;;;;8465:6;;-1:-1:-1;;;8465:6:0;;;;8464:7;:30;;;;-1:-1:-1;8481:13:0;;-1:-1:-1;;;;;8475:19:0;;;8481:13;;8475:19;8464:30;:74;;;;;8521:17;;8498:20;:40;8464:74;:108;;;;;8554:18;;8542:9;;:30;8464:108;8460:391;;;8593:67;8610:49;8614:6;8621:37;8625:20;8646:11;;8621:3;:37::i;:::-;8610:3;:49::i;:::-;8593:16;:67::i;:::-;8708:21;8772:17;8751:38;;8748:88;;;8792:10;;:42;;-1:-1:-1;;;;;8792:10:0;;;;8812:21;8792:42;;;;;:10;:42;:10;:42;8812:21;8792:10;:42;;;;;;;;;;;;;;;;;;;;;8748:88;8574:277;8460:391;7720:1142;7628:1234;8875:11;;8872:163;;8945:4;8927:24;;;;:9;:24;;;;;;:39;;8956:9;8927:28;:39::i;:::-;8918:4;8900:24;;;;:9;:24;;;;;;;:66;;;;8984:39;;-1:-1:-1;;;;;8984:39:0;;;;;;;9013:9;1500:25:1;;1488:2;1473:18;;1354:177;8984:39:0;;;;;;;;8872:163;-1:-1:-1;;;;;9063:15:0;;;;;;:9;:15;;;;;;:27;;9083:6;9063:19;:27::i;:::-;-1:-1:-1;;;;;9045:15:0;;;;;;:9;:15;;;;;:45;9117:40;9135:21;:6;9146:9;9135:10;:21::i;:::-;-1:-1:-1;;;;;9117:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9101:13:0;;;;;;;:9;:13;;;;;:56;;;;9173:41;;;9192:21;:6;9203:9;9192:10;:21::i;:::-;9173:41;;1500:25:1;;;1488:2;1473:18;9173:41:0;;;;;;;7431:1791;7362:1860;;;:::o;1347:190::-;1433:7;1469:12;1461:6;;;;1453:29;;;;-1:-1:-1;;;1453:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1493:9:0;1505:5;1509:1;1505;:5;:::i;:::-;1493:17;1347:190;-1:-1:-1;;;;;1347:190:0:o;12003:912::-;12107:19;12158:1;12141:70;12166:12;:19;12161:1;:24;12141:70;;12193:16;12208:1;12193:16;;:::i;:::-;;-1:-1:-1;12187:3:0;;;;:::i;:::-;;;;12141:70;;;-1:-1:-1;12318:15:0;;12239:14;;-1:-1:-1;;;;;12318:15:0;12221;12345:561;12369:12;:19;12365:1;:23;12345:561;;;12397:14;12414:5;:1;12418;12414:5;:::i;:::-;12397:22;-1:-1:-1;12421:31:0;12483:11;12456:23;12397:22;12456:14;:23;:::i;:::-;12455:39;;;;:::i;:::-;12421:73;;12539:7;12513:23;:33;12509:75;;;-1:-1:-1;12575:7:0;12509:75;12622:16;;;12636:1;12622:16;;;;;;;;12598:21;;12622:16;;;;;;;;;;-1:-1:-1;12622:16:0;12598:40;;12650:13;-1:-1:-1;;;;;12650:18:0;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12640:4;12645:1;12640:7;;;;;;;;:::i;:::-;;;;;;:30;-1:-1:-1;;;;;12640:30:0;;;-1:-1:-1;;;;;12640:30:0;;;;;12682:5;12672:4;12677:1;12672:7;;;;;;;;:::i;:::-;;;;;;:15;-1:-1:-1;;;;;12672:15:0;;;-1:-1:-1;;;;;12672:15:0;;;;;12702:13;-1:-1:-1;;;;;12702:64:0;;12774:23;12800:1;12802:4;12807:12;12820:1;12807:15;;;;;;;;:::i;:::-;;;;;;;12823;12841:2;12823:20;;;;:::i;:::-;12702:143;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12871:23;12860:34;;;;;:::i;:::-;;;12395:511;;;12390:3;;;;;:::i;:::-;;;;12345:561;;;;12096:819;;;12003:912;;;:::o;9729:114::-;9781:13;;-1:-1:-1;;;9781:13:0;;;;9780:14;9772:32;;;;-1:-1:-1;;;9772:32:0;;9063:2:1;9772:32:0;;;9045:21:1;9102:1;9082:18;;;9075:29;-1:-1:-1;;;9120:18:1;;;9113:35;9165:18;;9772:32:0;8861:328:1;9772:32:0;9815:13;:20;;-1:-1:-1;;;;9815:20:0;-1:-1:-1;;;9815:20:0;;;9729:114::o;1545:246::-;1603:7;1627:1;1632;1627:6;1623:47;;-1:-1:-1;1657:1:0;1650:8;;1623:47;1680:9;1692:5;1696:1;1692;:5;:::i;:::-;1680:17;-1:-1:-1;1725:1:0;1716:5;1720:1;1680:17;1716:5;:::i;:::-;:10;1708:56;;;;-1:-1:-1;;;1708:56:0;;16074:2:1;1708:56:0;;;16056:21:1;16113:2;16093:18;;;16086:30;16152:34;16132:18;;;16125:62;-1:-1:-1;;;16203:18:1;;;16196:31;16244:19;;1708:56:0;15872:397:1;1708:56:0;1782:1;1545:246;-1:-1:-1;;;1545:246:0:o;1799:132::-;1857:7;1884:39;1888:1;1891;1884:39;;;;;;;;;;;;;;;;;:3;:39::i;9230:98::-;9287:7;9314:1;9312;:3;9311:9;;9319:1;9311:9;;;-1:-1:-1;9317:1:0;9230:98;-1:-1:-1;9230:98:0:o;9336:385::-;5350:6;:13;;-1:-1:-1;;;;5350:13:0;-1:-1:-1;;;5350:13:0;;;9438:16:::1;::::0;;9452:1:::1;9438:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9438:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9438:16:0::1;9414:40;;9474:4;9456;9461:1;9456:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9456:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9491:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9491:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9456:7;;9491:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9481:4;9486:1;9481:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9481:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9556:15:::1;::::0;9524:62:::1;::::0;9541:4:::1;::::0;9556:15:::1;9574:11:::0;9524:8:::1;:62::i;:::-;9597:15;::::0;:116:::1;::::0;-1:-1:-1;;;9597:116:0;;-1:-1:-1;;;;;9597:15:0;;::::1;::::0;:66:::1;::::0;:116:::1;::::0;9664:11;;9597:15:::1;::::0;9678:4;;9691::::1;::::0;9697:15:::1;::::0;9597:116:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5386:6:0;:14;;-1:-1:-1;;;;5386:14:0;;;-1:-1:-1;;;;9336:385:0:o;1016:179::-;1074:7;;1106:5;1110:1;1106;:5;:::i;:::-;1094:17;;1135:1;1130;:6;;1122:46;;;;-1:-1:-1;;;1122:46:0;;17063:2:1;1122:46:0;;;17045:21:1;17102:2;17082:18;;;17075:30;17141:29;17121:18;;;17114:57;17188:18;;1122:46:0;16861:351:1;1203:136:0;1261:7;1288:43;1292:1;1295;1288:43;;;;;;;;;;;;;;;;;:3;:43::i;1939:189::-;2025:7;2060:12;2053:5;2045:28;;;;-1:-1:-1;;;2045:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2084:9:0;2096:5;2100:1;2096;:5;:::i;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:134::-;771:20;;800:31;771:20;800:31;:::i;842:315::-;910:6;918;971:2;959:9;950:7;946:23;942:32;939:52;;;987:1;984;977:12;939:52;1026:9;1013:23;1045:31;1070:5;1045:31;:::i;:::-;1095:5;1147:2;1132:18;;;;1119:32;;-1:-1:-1;;;842:315:1:o;1536:456::-;1613:6;1621;1629;1682:2;1670:9;1661:7;1657:23;1653:32;1650:52;;;1698:1;1695;1688:12;1650:52;1737:9;1724:23;1756:31;1781:5;1756:31;:::i;:::-;1806:5;-1:-1:-1;1863:2:1;1848:18;;1835:32;1876:33;1835:32;1876:33;:::i;:::-;1536:456;;1928:7;;-1:-1:-1;;;1982:2:1;1967:18;;;;1954:32;;1536:456::o;2186:247::-;2245:6;2298:2;2286:9;2277:7;2273:23;2269:32;2266:52;;;2314:1;2311;2304:12;2266:52;2353:9;2340:23;2372:31;2397:5;2372:31;:::i;2870:127::-;2931:10;2926:3;2922:20;2919:1;2912:31;2962:4;2959:1;2952:15;2986:4;2983:1;2976:15;3002:1191;3095:6;3103;3156:2;3144:9;3135:7;3131:23;3127:32;3124:52;;;3172:1;3169;3162:12;3124:52;3212:9;3199:23;3241:18;3282:2;3274:6;3271:14;3268:34;;;3298:1;3295;3288:12;3268:34;3336:6;3325:9;3321:22;3311:32;;3381:7;3374:4;3370:2;3366:13;3362:27;3352:55;;3403:1;3400;3393:12;3352:55;3439:2;3426:16;3461:4;3484:2;3480;3477:10;3474:36;;;3490:18;;:::i;:::-;3536:2;3533:1;3529:10;3568:2;3562:9;3631:2;3627:7;3622:2;3618;3614:11;3610:25;3602:6;3598:38;3686:6;3674:10;3671:22;3666:2;3654:10;3651:18;3648:46;3645:72;;;3697:18;;:::i;:::-;3733:2;3726:22;3783:18;;;3817:15;;;;-1:-1:-1;3859:11:1;;;3855:20;;;3887:19;;;3884:39;;;3919:1;3916;3909:12;3884:39;3943:11;;;;3963:148;3979:6;3974:3;3971:15;3963:148;;;4045:23;4064:3;4045:23;:::i;:::-;4033:36;;3996:12;;;;4089;;;;3963:148;;;4130:6;4168:18;;;;4155:32;;-1:-1:-1;;;;;;;3002:1191:1:o;4198:385::-;4284:6;4292;4300;4308;4361:3;4349:9;4340:7;4336:23;4332:33;4329:53;;;4378:1;4375;4368:12;4329:53;-1:-1:-1;;4401:23:1;;;4471:2;4456:18;;4443:32;;-1:-1:-1;4522:2:1;4507:18;;4494:32;;4573:2;4558:18;4545:32;;-1:-1:-1;4198:385:1;-1:-1:-1;4198:385:1:o;4588:388::-;4656:6;4664;4717:2;4705:9;4696:7;4692:23;4688:32;4685:52;;;4733:1;4730;4723:12;4685:52;4772:9;4759:23;4791:31;4816:5;4791:31;:::i;:::-;4841:5;-1:-1:-1;4898:2:1;4883:18;;4870:32;4911:33;4870:32;4911:33;:::i;:::-;4963:7;4953:17;;;4588:388;;;;;:::o;4981:118::-;5067:5;5060:13;5053:21;5046:5;5043:32;5033:60;;5089:1;5086;5079:12;5104:382;5169:6;5177;5230:2;5218:9;5209:7;5205:23;5201:32;5198:52;;;5246:1;5243;5236:12;5198:52;5285:9;5272:23;5304:31;5329:5;5304:31;:::i;:::-;5354:5;-1:-1:-1;5411:2:1;5396:18;;5383:32;5424:30;5383:32;5424:30;:::i;5491:380::-;5570:1;5566:12;;;;5613;;;5634:61;;5688:4;5680:6;5676:17;5666:27;;5634:61;5741:2;5733:6;5730:14;5710:18;5707:38;5704:161;;5787:10;5782:3;5778:20;5775:1;5768:31;5822:4;5819:1;5812:15;5850:4;5847:1;5840:15;5876:127;5937:10;5932:3;5928:20;5925:1;5918:31;5968:4;5965:1;5958:15;5992:4;5989:1;5982:15;6008:422;6097:1;6140:5;6097:1;6154:270;6175:7;6165:8;6162:21;6154:270;;;6234:4;6230:1;6226:6;6222:17;6216:4;6213:27;6210:53;;;6243:18;;:::i;:::-;6293:7;6283:8;6279:22;6276:55;;;6313:16;;;;6276:55;6392:22;;;;6352:15;;;;6154:270;;;6158:3;6008:422;;;;;:::o;6435:806::-;6484:5;6514:8;6504:80;;-1:-1:-1;6555:1:1;6569:5;;6504:80;6603:4;6593:76;;-1:-1:-1;6640:1:1;6654:5;;6593:76;6685:4;6703:1;6698:59;;;;6771:1;6766:130;;;;6678:218;;6698:59;6728:1;6719:10;;6742:5;;;6766:130;6803:3;6793:8;6790:17;6787:43;;;6810:18;;:::i;:::-;-1:-1:-1;;6866:1:1;6852:16;;6881:5;;6678:218;;6980:2;6970:8;6967:16;6961:3;6955:4;6952:13;6948:36;6942:2;6932:8;6929:16;6924:2;6918:4;6915:12;6911:35;6908:77;6905:159;;;-1:-1:-1;7017:19:1;;;7049:5;;6905:159;7096:34;7121:8;7115:4;7096:34;:::i;:::-;7166:6;7162:1;7158:6;7154:19;7145:7;7142:32;7139:58;;;7177:18;;:::i;:::-;7215:20;;6435:806;-1:-1:-1;;;6435:806:1:o;7246:140::-;7304:5;7333:47;7374:4;7364:8;7360:19;7354:4;7333:47;:::i;7391:168::-;7464:9;;;7495;;7512:15;;;7506:22;;7492:37;7482:71;;7533:18;;:::i;7774:184::-;7844:6;7897:2;7885:9;7876:7;7872:23;7868:32;7865:52;;;7913:1;7910;7903:12;7865:52;-1:-1:-1;7936:16:1;;7774:184;-1:-1:-1;7774:184:1:o;8250:245::-;8317:6;8370:2;8358:9;8349:7;8345:23;8341:32;8338:52;;;8386:1;8383;8376:12;8338:52;8418:9;8412:16;8437:28;8459:5;8437:28;:::i;8500:356::-;8702:2;8684:21;;;8721:18;;;8714:30;8780:34;8775:2;8760:18;;8753:62;8847:2;8832:18;;8500:356::o;9194:251::-;9264:6;9317:2;9305:9;9296:7;9292:23;9288:32;9285:52;;;9333:1;9330;9323:12;9285:52;9365:9;9359:16;9384:31;9409:5;9384:31;:::i;10379:306::-;10467:6;10475;10483;10536:2;10524:9;10515:7;10511:23;10507:32;10504:52;;;10552:1;10549;10542:12;10504:52;10581:9;10575:16;10565:26;;10631:2;10620:9;10616:18;10610:25;10600:35;;10675:2;10664:9;10660:18;10654:25;10644:35;;10379:306;;;;;:::o;10969:135::-;11008:3;11029:17;;;11026:43;;11049:18;;:::i;:::-;-1:-1:-1;11096:1:1;11085:13;;10969:135::o;11109:128::-;11176:9;;;11197:11;;;11194:37;;;11211:18;;:::i;11242:125::-;11307:9;;;11328:10;;;11325:36;;;11341:18;;:::i;14537:217::-;14577:1;14603;14593:132;;14647:10;14642:3;14638:20;14635:1;14628:31;14682:4;14679:1;14672:15;14710:4;14707:1;14700:15;14593:132;-1:-1:-1;14739:9:1;;14537:217::o;14759:127::-;14820:10;14815:3;14811:20;14808:1;14801:31;14851:4;14848:1;14841:15;14875:4;14872:1;14865:15;14891:461;14944:3;14982:5;14976:12;15009:6;15004:3;14997:19;15035:4;15064:2;15059:3;15055:12;15048:19;;15101:2;15094:5;15090:14;15122:1;15132:195;15146:6;15143:1;15140:13;15132:195;;;15211:13;;-1:-1:-1;;;;;15207:39:1;15195:52;;15267:12;;;;15302:15;;;;15243:1;15161:9;15132:195;;;-1:-1:-1;15343:3:1;;14891:461;-1:-1:-1;;;;;14891:461:1:o;15357:510::-;15628:6;15617:9;15610:25;15671:3;15666:2;15655:9;15651:18;15644:31;15591:4;15692:57;15744:3;15733:9;15729:19;15721:6;15692:57;:::i;:::-;-1:-1:-1;;;;;15785:32:1;;;;15780:2;15765:18;;15758:60;-1:-1:-1;15849:2:1;15834:18;15827:34;15684:65;15357:510;-1:-1:-1;;15357:510:1:o;16274:582::-;16573:6;16562:9;16555:25;16616:6;16611:2;16600:9;16596:18;16589:34;16659:3;16654:2;16643:9;16639:18;16632:31;16536:4;16680:57;16732:3;16721:9;16717:19;16709:6;16680:57;:::i;:::-;-1:-1:-1;;;;;16773:32:1;;;;16768:2;16753:18;;16746:60;-1:-1:-1;16837:3:1;16822:19;16815:35;16672:65;16274:582;-1:-1:-1;;;16274:582:1:o

Swarm Source

ipfs://0bbfa2b8b6860c6654ff4c6481da40936ad19542b93b5c388f230e0287143ec3

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.