ETH Price: $2,445.24 (+3.85%)

Contract

0x1306C7d95E59CfCDFF7AE3C13Db7F56AcC543815
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve206545072024-09-01 8:23:5940 days ago1725179039IN
0x1306C7d9...AcC543815
0 ETH0.000030280.64220129
Transfer206533662024-09-01 4:35:2340 days ago1725165323IN
0x1306C7d9...AcC543815
0 ETH0.000344631.24756431
Approve205983202024-08-24 12:00:4748 days ago1724500847IN
0x1306C7d9...AcC543815
0 ETH0.000050821.07790824
Approve204444642024-08-03 0:33:5969 days ago1722645239IN
0x1306C7d9...AcC543815
0 ETH0.000109822.32903297
Approve203763632024-07-24 12:20:1179 days ago1721823611IN
0x1306C7d9...AcC543815
0 ETH0.000157723.34474877
Approve202897722024-07-12 10:17:4791 days ago1720779467IN
0x1306C7d9...AcC543815
0 ETH0.00017263.6602818
Approve197938772024-05-04 2:51:11160 days ago1714791071IN
0x1306C7d9...AcC543815
0 ETH0.000278615.90829336
Approve197801402024-05-02 4:45:35162 days ago1714625135IN
0x1306C7d9...AcC543815
0 ETH0.000229544.86769804
Approve187199352023-12-05 11:46:11311 days ago1701776771IN
0x1306C7d9...AcC543815
0 ETH0.0014165756.81742064
Approve186353832023-11-23 15:39:23323 days ago1700753963IN
0x1306C7d9...AcC543815
0 ETH0.0012511941.54581452
Approve186353832023-11-23 15:39:23323 days ago1700753963IN
0x1306C7d9...AcC543815
0 ETH0.0019496641.54581452
Approve184235692023-10-25 0:03:59352 days ago1698192239IN
0x1306C7d9...AcC543815
0 ETH0.0009109819.41248325
Approve184167792023-10-24 1:14:47353 days ago1698110087IN
0x1306C7d9...AcC543815
0 ETH0.0009611732.27598891
Approve182372552023-09-28 22:37:11378 days ago1695940631IN
0x1306C7d9...AcC543815
0 ETH0.00031986.78182969
Approve176678672023-07-11 4:01:35458 days ago1689048095IN
0x1306C7d9...AcC543815
0 ETH0.0007603716.1247
Approve176095962023-07-02 23:29:11466 days ago1688340551IN
0x1306C7d9...AcC543815
0 ETH0.0003750112.6029561
Approve176095872023-07-02 23:27:23466 days ago1688340443IN
0x1306C7d9...AcC543815
0 ETH0.0005883312.54973604
Transfer168924762023-03-23 20:00:47567 days ago1679601647IN
0x1306C7d9...AcC543815
0 ETH0.0007490532.93975828
Approve156589212022-10-02 7:19:11740 days ago1664695151IN
0x1306C7d9...AcC543815
0 ETH0.000224134.74705528
Approve153437242022-08-15 3:32:51788 days ago1660534371IN
0x1306C7d9...AcC543815
0 ETH0.0005352811.33691182
Transfer153437102022-08-15 3:30:08788 days ago1660534208IN
0x1306C7d9...AcC543815
0 ETH0.0130451346.88278267
Transfer151968052022-07-23 4:36:12811 days ago1658550972IN
0x1306C7d9...AcC543815
0 ETH0.001721035.94587134
Approve149950612022-06-20 6:17:27844 days ago1655705847IN
0x1306C7d9...AcC543815
0 ETH0.0016036933.96515888
Approve142426442022-02-20 11:23:38964 days ago1645356218IN
0x1306C7d9...AcC543815
0 ETH0.0009201236.90534683
Approve137280382021-12-02 15:11:471044 days ago1638457907IN
0x1306C7d9...AcC543815
0 ETH0.00602476127.6
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
206545132024-09-01 8:25:1140 days ago1725179111
0x1306C7d9...AcC543815
0.00003298 ETH
206545132024-09-01 8:25:1140 days ago1725179111
0x1306C7d9...AcC543815
0.00003298 ETH
206545132024-09-01 8:25:1140 days ago1725179111
0x1306C7d9...AcC543815
0.00006597 ETH
206533662024-09-01 4:35:2340 days ago1725165323
0x1306C7d9...AcC543815
0.00001218 ETH
206533662024-09-01 4:35:2340 days ago1725165323
0x1306C7d9...AcC543815
0.00001218 ETH
206533662024-09-01 4:35:2340 days ago1725165323
0x1306C7d9...AcC543815
0.00002436 ETH
205983322024-08-24 12:03:1148 days ago1724500991
0x1306C7d9...AcC543815
0.00084745 ETH
205983322024-08-24 12:03:1148 days ago1724500991
0x1306C7d9...AcC543815
0.00084745 ETH
205983322024-08-24 12:03:1148 days ago1724500991
0x1306C7d9...AcC543815
0.0016949 ETH
204444652024-08-03 0:34:1169 days ago1722645251
0x1306C7d9...AcC543815
0.00004683 ETH
204444652024-08-03 0:34:1169 days ago1722645251
0x1306C7d9...AcC543815
0.00004683 ETH
204444652024-08-03 0:34:1169 days ago1722645251
0x1306C7d9...AcC543815
0.00009367 ETH
203763722024-07-24 12:21:5979 days ago1721823719
0x1306C7d9...AcC543815
0.00062513 ETH
203763722024-07-24 12:21:5979 days ago1721823719
0x1306C7d9...AcC543815
0.00062513 ETH
203763722024-07-24 12:21:5979 days ago1721823719
0x1306C7d9...AcC543815
0.00125027 ETH
202897792024-07-12 10:19:1191 days ago1720779551
0x1306C7d9...AcC543815
0.00007145 ETH
202897792024-07-12 10:19:1191 days ago1720779551
0x1306C7d9...AcC543815
0.00007145 ETH
202897792024-07-12 10:19:1191 days ago1720779551
0x1306C7d9...AcC543815
0.0001429 ETH
197938792024-05-04 2:51:35160 days ago1714791095
0x1306C7d9...AcC543815
0.00016062 ETH
197938792024-05-04 2:51:35160 days ago1714791095
0x1306C7d9...AcC543815
0.00016062 ETH
197938792024-05-04 2:51:35160 days ago1714791095
0x1306C7d9...AcC543815
0.00032125 ETH
197801422024-05-02 4:45:59162 days ago1714625159
0x1306C7d9...AcC543815
0.01812231 ETH
197801422024-05-02 4:45:59162 days ago1714625159
0x1306C7d9...AcC543815
0.01812231 ETH
197801422024-05-02 4:45:59162 days ago1714625159
0x1306C7d9...AcC543815
0.03624463 ETH
184167932023-10-24 1:17:35353 days ago1698110255
0x1306C7d9...AcC543815
0.0003434 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
BCAKE

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-06-30
*/

/**
 *Submitted for verification at Etherscan.io on 2021-06-18
*/

/**
 * .______     ______     ___       __  ___  _______
 * |   _  \   /      |   /   \     |  |/  / |   ____|
 * |  |_)  | |  ,----'  /  ^  \    |  '  /  |  |__
 * |   _  <  |  |      /  /_\  \   |    <   |   __|
 * |  |_)  | |  `----./  _____  \  |  .  \  |  |____
 * |______/   \______/__/     \__\ |__|\__\ |_______|

 * Birthday Cake Inu
 * https://t.me/BirthdayCakeInu
 * birthdayinu.com
 *
 * BCAKE is a meme token with a twist!
 * BCAKE has no sale limitations, which benefits whales and minnows alike, and an innovative dynamic reflection tax rate which increases proportionate to the size of the sell.
 *
 * TOKENOMICS:
 * 1,000,000,000,000 token supply
 * FIRST TWO MINUTES: 3,000,000,000 max buy / 45-second buy cooldown (these limitations are lifted automatically two minutes post-launch)
 * 15-second cooldown to sell after a buy, in order to limit bot behavior. NO OTHER COOLDOWNS, NO COOLDOWNS BETWEEN SELLS
 * No buy or sell token limits. Whales are welcome!
 * 10% total tax on buy
 * Fee on sells is dynamic, relative to price impact, minimum of 10% fee and maximum of 40% fee, with NO SELL LIMIT.
 * No team tokens, no presale
 * A unique approach to resolving the huge dumps after long pumps that have plagued every NotInu fork
 *
 *
*/

// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.4;

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

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

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

contract Ownable is Context {
    address private _owner;
    address private _previousOwner;
    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);
    }

}

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 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 BCAKE is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _rOwned;
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => User) private cooldown;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 1e12 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    string private constant _name = unicode"Rapidly Reusable Rockets";
    string private constant _symbol = unicode"RRR";
    uint8 private constant _decimals = 9;
    uint256 private _taxFee = 6;
    uint256 private _teamFee = 4;
    uint256 private _feeRate = 5;
    uint256 private _feeMultiplier = 1000;
    uint256 private _launchTime;
    uint256 private _previousTaxFee = _taxFee;
    uint256 private _previousteamFee = _teamFee;
    uint256 private _maxBuyAmount;
    address payable private _FeeAddress;
    address payable private _marketingWalletAddress;
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private _cooldownEnabled = true;
    bool private inSwap = false;
    bool private _useImpactFeeSetter = true;
    uint256 private buyLimitEnd;
    struct User {
        uint256 buy;
        uint256 sell;
        bool exists;
    }

    event MaxBuyAmountUpdated(uint _maxBuyAmount);
    event CooldownEnabledUpdated(bool _cooldown);
    event FeeMultiplierUpdated(uint _multiplier);
    event FeeRateUpdated(uint _rate);

    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    constructor (address payable FeeAddress, address payable marketingWalletAddress) {
        _FeeAddress = FeeAddress;
        _marketingWalletAddress = marketingWalletAddress;
        _rOwned[_msgSender()] = _rTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[FeeAddress] = true;
        _isExcludedFromFee[marketingWalletAddress] = true;
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    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 pure override returns (uint256) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return tokenFromReflection(_rOwned[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 tokenFromReflection(uint256 rAmount) private view returns(uint256) {
        require(rAmount <= _rTotal, "Amount must be less than total reflections");
        uint256 currentRate =  _getRate();
        return rAmount.div(currentRate);
    }

    function removeAllFee() private {
        if(_taxFee == 0 && _teamFee == 0) return;
        _previousTaxFee = _taxFee;
        _previousteamFee = _teamFee;
        _taxFee = 0;
        _teamFee = 0;
    }

    function restoreAllFee() private {
        _taxFee = _previousTaxFee;
        _teamFee = _previousteamFee;
    }

    function setFee(uint256 impactFee) private {
        uint256 _impactFee = 10;
        if(impactFee < 10) {
            _impactFee = 10;
        } else if(impactFee > 40) {
            _impactFee = 40;
        } else {
            _impactFee = impactFee;
        }
        if(_impactFee.mod(2) != 0) {
            _impactFee++;
        }
        _taxFee = (_impactFee.mul(6)).div(10);
        _teamFee = (_impactFee.mul(4)).div(10);
    }

    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");
        require(amount > 0, "Transfer amount must be greater than zero");

        if(from != owner() && to != owner()) {
            if(_cooldownEnabled) {
                if(!cooldown[msg.sender].exists) {
                    cooldown[msg.sender] = User(0,0,true);
                }
            }

            // buy
            if(from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to]) {
                require(tradingOpen, "Trading not yet enabled.");
                _taxFee = 6;
                _teamFee = 4;
                if(_cooldownEnabled) {
                    if(buyLimitEnd > block.timestamp) {
                        require(amount <= _maxBuyAmount);
                        require(cooldown[to].buy < block.timestamp, "Your buy cooldown has not expired.");
                        cooldown[to].buy = block.timestamp + (45 seconds);
                    }
                }
                if(_cooldownEnabled) {
                    cooldown[to].sell = block.timestamp + (15 seconds);
                }
            }
            uint256 contractTokenBalance = balanceOf(address(this));

            // sell
            if(!inSwap && from != uniswapV2Pair && tradingOpen) {

                if(_cooldownEnabled) {
                    require(cooldown[from].sell < block.timestamp, "Your sell cooldown has not expired.");
                }

                if(_useImpactFeeSetter) {
                    uint256 feeBasis = amount.mul(_feeMultiplier);
                    feeBasis = feeBasis.div(balanceOf(uniswapV2Pair).add(amount));
                    setFee(feeBasis);
                }

                if(contractTokenBalance > 0) {
                    if(contractTokenBalance > balanceOf(uniswapV2Pair).mul(_feeRate).div(100)) {
                        contractTokenBalance = balanceOf(uniswapV2Pair).mul(_feeRate).div(100);
                    }
                    swapTokensForEth(contractTokenBalance);
                }
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }
        bool takeFee = true;

        if(_isExcludedFromFee[from] || _isExcludedFromFee[to]){
            takeFee = false;
        }

        _tokenTransfer(from,to,amount,takeFee);
    }

    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 sendETHToFee(uint256 amount) private {
        _FeeAddress.transfer(amount.div(2));
        _marketingWalletAddress.transfer(amount.div(2));
    }

    function _tokenTransfer(address sender, address recipient, uint256 amount, bool takeFee) private {
        if(!takeFee)
            removeAllFee();
        _transferStandard(sender, recipient, amount);
        if(!takeFee)
            restoreAllFee();
    }

    function _transferStandard(address sender, address recipient, uint256 tAmount) private {
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);

        _takeTeam(tTeam);
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256, uint256) {
        (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _taxFee, _teamFee);
        uint256 currentRate =  _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, tTeam, currentRate);
        return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam);
    }

    function _getTValues(uint256 tAmount, uint256 taxFee, uint256 TeamFee) private pure returns (uint256, uint256, uint256) {
        uint256 tFee = tAmount.mul(taxFee).div(100);
        uint256 tTeam = tAmount.mul(TeamFee).div(100);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam);
        return (tTransferAmount, tFee, tTeam);
    }

    function _getRate() private view returns(uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return rSupply.div(tSupply);
    }

    function _getCurrentSupply() private view returns(uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;
        if(rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }

    function _getRValues(uint256 tAmount, uint256 tFee, uint256 tTeam, uint256 currentRate) private pure returns (uint256, uint256, uint256) {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTeam = tTeam.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam);
        return (rAmount, rTransferAmount, rFee);
    }

    function _takeTeam(uint256 tTeam) private {
        uint256 currentRate =  _getRate();
        uint256 rTeam = tTeam.mul(currentRate);

        _rOwned[address(this)] = _rOwned[address(this)].add(rTeam);
    }

    function _reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);
    }

    receive() external payable {}

    function addLiquidity() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        _maxBuyAmount = 3000000000 * 10**9;
        _launchTime = block.timestamp;
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
    }

    function openTrading() public onlyOwner {
        tradingOpen = true;
        buyLimitEnd = block.timestamp + (120 seconds);
    }

    function manualswap() external {
        require(_msgSender() == _FeeAddress);
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }

    function manualsend() external {
        require(_msgSender() == _FeeAddress);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }

    // fallback in case contract is not releasing tokens fast enough
    function setFeeRate(uint256 rate) external {
        require(_msgSender() == _FeeAddress);
        require(rate < 51, "Rate can't exceed 50%");
        _feeRate = rate;
        emit FeeRateUpdated(_feeRate);
    }

    function setCooldownEnabled(bool onoff) external onlyOwner() {
        _cooldownEnabled = onoff;
        emit CooldownEnabledUpdated(_cooldownEnabled);
    }

    function thisBalance() public view returns (uint) {
        return balanceOf(address(this));
    }

    function cooldownEnabled() public view returns (bool) {
        return _cooldownEnabled;
    }

    function timeToBuy(address buyer) public view returns (uint) {
        return block.timestamp - cooldown[buyer].buy;
    }

    function timeToSell(address buyer) public view returns (uint) {
        return block.timestamp - cooldown[buyer].sell;
    }

    function amountInPool() public view returns (uint) {
        return balanceOf(uniswapV2Pair);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address payable","name":"FeeAddress","type":"address"},{"internalType":"address payable","name":"marketingWalletAddress","type":"address"}],"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":"bool","name":"_cooldown","type":"bool"}],"name":"CooldownEnabledUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_multiplier","type":"uint256"}],"name":"FeeMultiplierUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_rate","type":"uint256"}],"name":"FeeRateUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxBuyAmount","type":"uint256"}],"name":"MaxBuyAmountUpdated","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":"addLiquidity","outputs":[],"stateMutability":"nonpayable","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":[],"name":"amountInPool","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":"cooldownEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"setCooldownEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"rate","type":"uint256"}],"name":"setFeeRate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"thisBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"buyer","type":"address"}],"name":"timeToBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"buyer","type":"address"}],"name":"timeToSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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"},{"stateMutability":"payable","type":"receive"}]

6080604052683635c9adc5dea000006000196200001d919062000582565b6000196200002c919062000509565b60075560066009556004600a556005600b556103e8600c55600954600e55600a54600f556001601460156101000a81548160ff0219169083151502179055506000601460166101000a81548160ff0219169083151502179055506001601460176101000a81548160ff021916908315150217905550348015620000ae57600080fd5b50604051620040b2380380620040b28339818101604052810190620000d491906200049a565b6000620000e66200045260201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35081601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600754600260006200021d6200045260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160056000620002716200045a60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620003da6200045260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef683635c9adc5dea00000604051620004429190620004ec565b60405180910390a3505062000632565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081519050620004948162000618565b92915050565b60008060408385031215620004ae57600080fd5b6000620004be8582860162000483565b9250506020620004d18582860162000483565b9150509250929050565b620004e68162000578565b82525050565b6000602082019050620005036000830184620004db565b92915050565b6000620005168262000578565b9150620005238362000578565b925082821015620005395762000538620005ba565b5b828203905092915050565b6000620005518262000558565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60006200058f8262000578565b91506200059c8362000578565b925082620005af57620005ae620005e9565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b620006238162000544565b81146200062f57600080fd5b50565b613a7080620006426000396000f3fe6080604052600436106101395760003560e01c8063715018a6116100ab578063a9fc35a91161006f578063a9fc35a914610423578063c3c8cd8014610460578063c9567bf914610477578063db92dbb61461048e578063dd62ed3e146104b9578063e8078d94146104f657610140565b8063715018a61461034e5780638da5cb5b1461036557806395d89b4114610390578063a9059cbb146103bb578063a985ceef146103f857610140565b8063313ce567116100fd578063313ce5671461024057806345596e2e1461026b5780635932ead11461029457806368a3a6a5146102bd5780636fc3eaec146102fa57806370a082311461031157610140565b806306fdde0314610145578063095ea7b31461017057806318160ddd146101ad57806323b872dd146101d857806327f3a72a1461021557610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a61050d565b60405161016791906130da565b60405180910390f35b34801561017c57600080fd5b5061019760048036038101906101929190612bf8565b61054a565b6040516101a491906130bf565b60405180910390f35b3480156101b957600080fd5b506101c2610568565b6040516101cf91906132bc565b60405180910390f35b3480156101e457600080fd5b506101ff60048036038101906101fa9190612ba9565b610579565b60405161020c91906130bf565b60405180910390f35b34801561022157600080fd5b5061022a610652565b60405161023791906132bc565b60405180910390f35b34801561024c57600080fd5b50610255610662565b6040516102629190613331565b60405180910390f35b34801561027757600080fd5b50610292600480360381019061028d9190612c86565b61066b565b005b3480156102a057600080fd5b506102bb60048036038101906102b69190612c34565b610752565b005b3480156102c957600080fd5b506102e460048036038101906102df9190612b1b565b61084a565b6040516102f191906132bc565b60405180910390f35b34801561030657600080fd5b5061030f6108a1565b005b34801561031d57600080fd5b5061033860048036038101906103339190612b1b565b610913565b60405161034591906132bc565b60405180910390f35b34801561035a57600080fd5b50610363610964565b005b34801561037157600080fd5b5061037a610ab7565b6040516103879190612ff1565b60405180910390f35b34801561039c57600080fd5b506103a5610ae0565b6040516103b291906130da565b60405180910390f35b3480156103c757600080fd5b506103e260048036038101906103dd9190612bf8565b610b1d565b6040516103ef91906130bf565b60405180910390f35b34801561040457600080fd5b5061040d610b3b565b60405161041a91906130bf565b60405180910390f35b34801561042f57600080fd5b5061044a60048036038101906104459190612b1b565b610b52565b60405161045791906132bc565b60405180910390f35b34801561046c57600080fd5b50610475610ba9565b005b34801561048357600080fd5b5061048c610c23565b005b34801561049a57600080fd5b506104a3610ce7565b6040516104b091906132bc565b60405180910390f35b3480156104c557600080fd5b506104e060048036038101906104db9190612b6d565b610d19565b6040516104ed91906132bc565b60405180910390f35b34801561050257600080fd5b5061050b610da0565b005b60606040518060400160405280601881526020017f52617069646c79205265757361626c6520526f636b6574730000000000000000815250905090565b600061055e6105576112b0565b84846112b8565b6001905092915050565b6000683635c9adc5dea00000905090565b6000610586848484611483565b610647846105926112b0565b61064285604051806060016040528060288152602001613a1360289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006105f86112b0565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d4d9092919063ffffffff16565b6112b8565b600190509392505050565b600061065d30610913565b905090565b60006009905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166106ac6112b0565b73ffffffffffffffffffffffffffffffffffffffff16146106cc57600080fd5b6033811061070f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107069061319c565b60405180910390fd5b80600b819055507f208f1b468d3d61f0f085e975bd9d04367c930d599642faad06695229f3eadcd8600b5460405161074791906132bc565b60405180910390a150565b61075a6112b0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107de906131fc565b60405180910390fd5b80601460156101000a81548160ff0219169083151502179055507f0d63187a8abb5b4d1bb562e1163897386b0a88ee72e0799dd105bd0fd6f28706601460159054906101000a900460ff1660405161083f91906130bf565b60405180910390a150565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001544261089a9190613482565b9050919050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108e26112b0565b73ffffffffffffffffffffffffffffffffffffffff161461090257600080fd5b600047905061091081611db1565b50565b600061095d600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611eac565b9050919050565b61096c6112b0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109f0906131fc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600381526020017f5252520000000000000000000000000000000000000000000000000000000000815250905090565b6000610b31610b2a6112b0565b8484611483565b6001905092915050565b6000601460159054906101000a900460ff16905090565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015442610ba29190613482565b9050919050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610bea6112b0565b73ffffffffffffffffffffffffffffffffffffffff1614610c0a57600080fd5b6000610c1530610913565b9050610c2081611f1a565b50565b610c2b6112b0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610caf906131fc565b60405180910390fd5b60016014806101000a81548160ff021916908315150217905550607842610cdf91906133a1565b601581905550565b6000610d14601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610913565b905090565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610da86112b0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e2c906131fc565b60405180910390fd5b60148054906101000a900460ff1615610e83576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7a9061327c565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610f1330601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16683635c9adc5dea000006112b8565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610f5957600080fd5b505afa158015610f6d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f919190612b44565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610ff357600080fd5b505afa158015611007573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061102b9190612b44565b6040518363ffffffff1660e01b815260040161104892919061300c565b602060405180830381600087803b15801561106257600080fd5b505af1158015611076573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061109a9190612b44565b601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473061112330610913565b60008061112e610ab7565b426040518863ffffffff1660e01b81526004016111509695949392919061305e565b6060604051808303818588803b15801561116957600080fd5b505af115801561117d573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111a29190612caf565b5050506729a2241af62c000060108190555042600d81905550601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161125a929190613035565b602060405180830381600087803b15801561127457600080fd5b505af1158015611288573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112ac9190612c5d565b5050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611328576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131f9061325c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161138f9061313c565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161147691906132bc565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ea9061323c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611563576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155a906130fc565b60405180910390fd5b600081116115a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159d9061321c565b60405180910390fd5b6115ae610ab7565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561161c57506115ec610ab7565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611c8a57601460159054906101000a900460ff161561172257600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160009054906101000a900460ff16611721576040518060600160405280600081526020016000815260200160011515815250600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548160ff0219169083151502179055509050505b5b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156117cd5750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156118235750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156119f65760148054906101000a900460ff16611875576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161186c9061329c565b60405180910390fd5b60066009819055506004600a81905550601460159054906101000a900460ff161561198c5742601554111561198b576010548111156118b357600080fd5b42600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015410611937576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161192e9061315c565b60405180910390fd5b602d4261194491906133a1565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055505b5b601460159054906101000a900460ff16156119f557600f426119ae91906133a1565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055505b5b6000611a0130610913565b9050601460169054906101000a900460ff16158015611a6e5750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611a84575060148054906101000a900460ff165b15611c8857601460159054906101000a900460ff1615611b235742600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015410611b22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b19906131bc565b60405180910390fd5b5b601460179054906101000a900460ff1615611bad576000611b4f600c548461221490919063ffffffff16565b9050611ba0611b9184611b83601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610913565b61228f90919063ffffffff16565b826122ed90919063ffffffff16565b9050611bab81612337565b505b6000811115611c6e57611c086064611bfa600b54611bec601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610913565b61221490919063ffffffff16565b6122ed90919063ffffffff16565b811115611c6457611c616064611c53600b54611c45601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610913565b61221490919063ffffffff16565b6122ed90919063ffffffff16565b90505b611c6d81611f1a565b5b60004790506000811115611c8657611c8547611db1565b5b505b505b600060019050600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611d315750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15611d3b57600090505b611d47848484846123ee565b50505050565b6000838311158290611d95576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d8c91906130da565b60405180910390fd5b5060008385611da49190613482565b9050809150509392505050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611e016002846122ed90919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611e2c573d6000803e3d6000fd5b50601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611e7d6002846122ed90919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611ea8573d6000803e3d6000fd5b5050565b6000600754821115611ef3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eea9061311c565b60405180910390fd5b6000611efd61241b565b9050611f1281846122ed90919063ffffffff16565b915050919050565b6001601460166101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611f78577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051908082528060200260200182016040528015611fa65781602001602082028036833780820191505090505b5090503081600081518110611fe4577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561208657600080fd5b505afa15801561209a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120be9190612b44565b816001815181106120f8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061215f30601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846112b8565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016121c39594939291906132d7565b600060405180830381600087803b1580156121dd57600080fd5b505af11580156121f1573d6000803e3d6000fd5b50505050506000601460166101000a81548160ff02191690831515021790555050565b6000808314156122275760009050612289565b600082846122359190613428565b905082848261224491906133f7565b14612284576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161227b906131dc565b60405180910390fd5b809150505b92915050565b600080828461229e91906133a1565b9050838110156122e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122da9061317c565b60405180910390fd5b8091505092915050565b600061232f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612446565b905092915050565b6000600a9050600a82101561234f57600a9050612366565b60288211156123615760289050612365565b8190505b5b600061237c6002836124a990919063ffffffff16565b1461239057808061238c90613550565b9150505b6123b7600a6123a960068461221490919063ffffffff16565b6122ed90919063ffffffff16565b6009819055506123e4600a6123d660048461221490919063ffffffff16565b6122ed90919063ffffffff16565b600a819055505050565b806123fc576123fb6124f3565b5b612407848484612536565b8061241557612414612701565b5b50505050565b6000806000612428612715565b9150915061243f81836122ed90919063ffffffff16565b9250505090565b6000808311829061248d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161248491906130da565b60405180910390fd5b506000838561249c91906133f7565b9050809150509392505050565b60006124eb83836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f0000000000000000815250612777565b905092915050565b600060095414801561250757506000600a54145b1561251157612534565b600954600e81905550600a54600f8190555060006009819055506000600a819055505b565b600080600080600080612548876127d5565b9550955095509550955095506125a686600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461283d90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061263b85600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461228f90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061268781612887565b6126918483612944565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516126ee91906132bc565b60405180910390a3505050505050505050565b600e54600981905550600f54600a81905550565b600080600060075490506000683635c9adc5dea00000905061274b683635c9adc5dea000006007546122ed90919063ffffffff16565b82101561276a57600754683635c9adc5dea00000935093505050612773565b81819350935050505b9091565b60008083141582906127bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127b691906130da565b60405180910390fd5b5082846127cc9190613599565b90509392505050565b60008060008060008060008060006127f28a600954600a5461297e565b925092509250600061280261241b565b905060008060006128158e878787612a14565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600061287f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611d4d565b905092915050565b600061289161241b565b905060006128a8828461221490919063ffffffff16565b90506128fc81600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461228f90919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6129598260075461283d90919063ffffffff16565b6007819055506129748160085461228f90919063ffffffff16565b6008819055505050565b6000806000806129aa606461299c888a61221490919063ffffffff16565b6122ed90919063ffffffff16565b905060006129d460646129c6888b61221490919063ffffffff16565b6122ed90919063ffffffff16565b905060006129fd826129ef858c61283d90919063ffffffff16565b61283d90919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080612a2d858961221490919063ffffffff16565b90506000612a44868961221490919063ffffffff16565b90506000612a5b878961221490919063ffffffff16565b90506000612a8482612a76858761283d90919063ffffffff16565b61283d90919063ffffffff16565b9050838184965096509650505050509450945094915050565b600081359050612aac816139cd565b92915050565b600081519050612ac1816139cd565b92915050565b600081359050612ad6816139e4565b92915050565b600081519050612aeb816139e4565b92915050565b600081359050612b00816139fb565b92915050565b600081519050612b15816139fb565b92915050565b600060208284031215612b2d57600080fd5b6000612b3b84828501612a9d565b91505092915050565b600060208284031215612b5657600080fd5b6000612b6484828501612ab2565b91505092915050565b60008060408385031215612b8057600080fd5b6000612b8e85828601612a9d565b9250506020612b9f85828601612a9d565b9150509250929050565b600080600060608486031215612bbe57600080fd5b6000612bcc86828701612a9d565b9350506020612bdd86828701612a9d565b9250506040612bee86828701612af1565b9150509250925092565b60008060408385031215612c0b57600080fd5b6000612c1985828601612a9d565b9250506020612c2a85828601612af1565b9150509250929050565b600060208284031215612c4657600080fd5b6000612c5484828501612ac7565b91505092915050565b600060208284031215612c6f57600080fd5b6000612c7d84828501612adc565b91505092915050565b600060208284031215612c9857600080fd5b6000612ca684828501612af1565b91505092915050565b600080600060608486031215612cc457600080fd5b6000612cd286828701612b06565b9350506020612ce386828701612b06565b9250506040612cf486828701612b06565b9150509250925092565b6000612d0a8383612d16565b60208301905092915050565b612d1f816134b6565b82525050565b612d2e816134b6565b82525050565b6000612d3f8261335c565b612d49818561337f565b9350612d548361334c565b8060005b83811015612d85578151612d6c8882612cfe565b9750612d7783613372565b925050600181019050612d58565b5085935050505092915050565b612d9b816134c8565b82525050565b612daa8161350b565b82525050565b6000612dbb82613367565b612dc58185613390565b9350612dd581856020860161351d565b612dde81613628565b840191505092915050565b6000612df6602383613390565b9150612e0182613639565b604082019050919050565b6000612e19602a83613390565b9150612e2482613688565b604082019050919050565b6000612e3c602283613390565b9150612e47826136d7565b604082019050919050565b6000612e5f602283613390565b9150612e6a82613726565b604082019050919050565b6000612e82601b83613390565b9150612e8d82613775565b602082019050919050565b6000612ea5601583613390565b9150612eb08261379e565b602082019050919050565b6000612ec8602383613390565b9150612ed3826137c7565b604082019050919050565b6000612eeb602183613390565b9150612ef682613816565b604082019050919050565b6000612f0e602083613390565b9150612f1982613865565b602082019050919050565b6000612f31602983613390565b9150612f3c8261388e565b604082019050919050565b6000612f54602583613390565b9150612f5f826138dd565b604082019050919050565b6000612f77602483613390565b9150612f828261392c565b604082019050919050565b6000612f9a601783613390565b9150612fa58261397b565b602082019050919050565b6000612fbd601883613390565b9150612fc8826139a4565b602082019050919050565b612fdc816134f4565b82525050565b612feb816134fe565b82525050565b60006020820190506130066000830184612d25565b92915050565b60006040820190506130216000830185612d25565b61302e6020830184612d25565b9392505050565b600060408201905061304a6000830185612d25565b6130576020830184612fd3565b9392505050565b600060c0820190506130736000830189612d25565b6130806020830188612fd3565b61308d6040830187612da1565b61309a6060830186612da1565b6130a76080830185612d25565b6130b460a0830184612fd3565b979650505050505050565b60006020820190506130d46000830184612d92565b92915050565b600060208201905081810360008301526130f48184612db0565b905092915050565b6000602082019050818103600083015261311581612de9565b9050919050565b6000602082019050818103600083015261313581612e0c565b9050919050565b6000602082019050818103600083015261315581612e2f565b9050919050565b6000602082019050818103600083015261317581612e52565b9050919050565b6000602082019050818103600083015261319581612e75565b9050919050565b600060208201905081810360008301526131b581612e98565b9050919050565b600060208201905081810360008301526131d581612ebb565b9050919050565b600060208201905081810360008301526131f581612ede565b9050919050565b6000602082019050818103600083015261321581612f01565b9050919050565b6000602082019050818103600083015261323581612f24565b9050919050565b6000602082019050818103600083015261325581612f47565b9050919050565b6000602082019050818103600083015261327581612f6a565b9050919050565b6000602082019050818103600083015261329581612f8d565b9050919050565b600060208201905081810360008301526132b581612fb0565b9050919050565b60006020820190506132d16000830184612fd3565b92915050565b600060a0820190506132ec6000830188612fd3565b6132f96020830187612da1565b818103604083015261330b8186612d34565b905061331a6060830185612d25565b6133276080830184612fd3565b9695505050505050565b60006020820190506133466000830184612fe2565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006133ac826134f4565b91506133b7836134f4565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156133ec576133eb6135ca565b5b828201905092915050565b6000613402826134f4565b915061340d836134f4565b92508261341d5761341c6135f9565b5b828204905092915050565b6000613433826134f4565b915061343e836134f4565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613477576134766135ca565b5b828202905092915050565b600061348d826134f4565b9150613498836134f4565b9250828210156134ab576134aa6135ca565b5b828203905092915050565b60006134c1826134d4565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000613516826134f4565b9050919050565b60005b8381101561353b578082015181840152602081019050613520565b8381111561354a576000848401525b50505050565b600061355b826134f4565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561358e5761358d6135ca565b5b600182019050919050565b60006135a4826134f4565b91506135af836134f4565b9250826135bf576135be6135f9565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f596f75722062757920636f6f6c646f776e20686173206e6f742065787069726560008201527f642e000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f526174652063616e277420657863656564203530250000000000000000000000600082015250565b7f596f75722073656c6c20636f6f6c646f776e20686173206e6f7420657870697260008201527f65642e0000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b7f54726164696e67206e6f742079657420656e61626c65642e0000000000000000600082015250565b6139d6816134b6565b81146139e157600080fd5b50565b6139ed816134c8565b81146139f857600080fd5b50565b613a04816134f4565b8114613a0f57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220182547294dc22454f8876e4dc901d71cd53e7add01997f2e1aef16181086eb2964736f6c63430008040033000000000000000000000000f621cf6c7cc2c7f70fed048a52ab0e2596c995bc000000000000000000000000f621cf6c7cc2c7f70fed048a52ab0e2596c995bc

Deployed Bytecode

0x6080604052600436106101395760003560e01c8063715018a6116100ab578063a9fc35a91161006f578063a9fc35a914610423578063c3c8cd8014610460578063c9567bf914610477578063db92dbb61461048e578063dd62ed3e146104b9578063e8078d94146104f657610140565b8063715018a61461034e5780638da5cb5b1461036557806395d89b4114610390578063a9059cbb146103bb578063a985ceef146103f857610140565b8063313ce567116100fd578063313ce5671461024057806345596e2e1461026b5780635932ead11461029457806368a3a6a5146102bd5780636fc3eaec146102fa57806370a082311461031157610140565b806306fdde0314610145578063095ea7b31461017057806318160ddd146101ad57806323b872dd146101d857806327f3a72a1461021557610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a61050d565b60405161016791906130da565b60405180910390f35b34801561017c57600080fd5b5061019760048036038101906101929190612bf8565b61054a565b6040516101a491906130bf565b60405180910390f35b3480156101b957600080fd5b506101c2610568565b6040516101cf91906132bc565b60405180910390f35b3480156101e457600080fd5b506101ff60048036038101906101fa9190612ba9565b610579565b60405161020c91906130bf565b60405180910390f35b34801561022157600080fd5b5061022a610652565b60405161023791906132bc565b60405180910390f35b34801561024c57600080fd5b50610255610662565b6040516102629190613331565b60405180910390f35b34801561027757600080fd5b50610292600480360381019061028d9190612c86565b61066b565b005b3480156102a057600080fd5b506102bb60048036038101906102b69190612c34565b610752565b005b3480156102c957600080fd5b506102e460048036038101906102df9190612b1b565b61084a565b6040516102f191906132bc565b60405180910390f35b34801561030657600080fd5b5061030f6108a1565b005b34801561031d57600080fd5b5061033860048036038101906103339190612b1b565b610913565b60405161034591906132bc565b60405180910390f35b34801561035a57600080fd5b50610363610964565b005b34801561037157600080fd5b5061037a610ab7565b6040516103879190612ff1565b60405180910390f35b34801561039c57600080fd5b506103a5610ae0565b6040516103b291906130da565b60405180910390f35b3480156103c757600080fd5b506103e260048036038101906103dd9190612bf8565b610b1d565b6040516103ef91906130bf565b60405180910390f35b34801561040457600080fd5b5061040d610b3b565b60405161041a91906130bf565b60405180910390f35b34801561042f57600080fd5b5061044a60048036038101906104459190612b1b565b610b52565b60405161045791906132bc565b60405180910390f35b34801561046c57600080fd5b50610475610ba9565b005b34801561048357600080fd5b5061048c610c23565b005b34801561049a57600080fd5b506104a3610ce7565b6040516104b091906132bc565b60405180910390f35b3480156104c557600080fd5b506104e060048036038101906104db9190612b6d565b610d19565b6040516104ed91906132bc565b60405180910390f35b34801561050257600080fd5b5061050b610da0565b005b60606040518060400160405280601881526020017f52617069646c79205265757361626c6520526f636b6574730000000000000000815250905090565b600061055e6105576112b0565b84846112b8565b6001905092915050565b6000683635c9adc5dea00000905090565b6000610586848484611483565b610647846105926112b0565b61064285604051806060016040528060288152602001613a1360289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006105f86112b0565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d4d9092919063ffffffff16565b6112b8565b600190509392505050565b600061065d30610913565b905090565b60006009905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166106ac6112b0565b73ffffffffffffffffffffffffffffffffffffffff16146106cc57600080fd5b6033811061070f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107069061319c565b60405180910390fd5b80600b819055507f208f1b468d3d61f0f085e975bd9d04367c930d599642faad06695229f3eadcd8600b5460405161074791906132bc565b60405180910390a150565b61075a6112b0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107de906131fc565b60405180910390fd5b80601460156101000a81548160ff0219169083151502179055507f0d63187a8abb5b4d1bb562e1163897386b0a88ee72e0799dd105bd0fd6f28706601460159054906101000a900460ff1660405161083f91906130bf565b60405180910390a150565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001544261089a9190613482565b9050919050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108e26112b0565b73ffffffffffffffffffffffffffffffffffffffff161461090257600080fd5b600047905061091081611db1565b50565b600061095d600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611eac565b9050919050565b61096c6112b0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109f0906131fc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600381526020017f5252520000000000000000000000000000000000000000000000000000000000815250905090565b6000610b31610b2a6112b0565b8484611483565b6001905092915050565b6000601460159054906101000a900460ff16905090565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015442610ba29190613482565b9050919050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610bea6112b0565b73ffffffffffffffffffffffffffffffffffffffff1614610c0a57600080fd5b6000610c1530610913565b9050610c2081611f1a565b50565b610c2b6112b0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610caf906131fc565b60405180910390fd5b60016014806101000a81548160ff021916908315150217905550607842610cdf91906133a1565b601581905550565b6000610d14601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610913565b905090565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610da86112b0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e2c906131fc565b60405180910390fd5b60148054906101000a900460ff1615610e83576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7a9061327c565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610f1330601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16683635c9adc5dea000006112b8565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610f5957600080fd5b505afa158015610f6d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f919190612b44565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610ff357600080fd5b505afa158015611007573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061102b9190612b44565b6040518363ffffffff1660e01b815260040161104892919061300c565b602060405180830381600087803b15801561106257600080fd5b505af1158015611076573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061109a9190612b44565b601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473061112330610913565b60008061112e610ab7565b426040518863ffffffff1660e01b81526004016111509695949392919061305e565b6060604051808303818588803b15801561116957600080fd5b505af115801561117d573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111a29190612caf565b5050506729a2241af62c000060108190555042600d81905550601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161125a929190613035565b602060405180830381600087803b15801561127457600080fd5b505af1158015611288573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112ac9190612c5d565b5050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611328576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131f9061325c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161138f9061313c565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161147691906132bc565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ea9061323c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611563576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155a906130fc565b60405180910390fd5b600081116115a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159d9061321c565b60405180910390fd5b6115ae610ab7565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561161c57506115ec610ab7565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611c8a57601460159054906101000a900460ff161561172257600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160009054906101000a900460ff16611721576040518060600160405280600081526020016000815260200160011515815250600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548160ff0219169083151502179055509050505b5b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156117cd5750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156118235750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156119f65760148054906101000a900460ff16611875576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161186c9061329c565b60405180910390fd5b60066009819055506004600a81905550601460159054906101000a900460ff161561198c5742601554111561198b576010548111156118b357600080fd5b42600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015410611937576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161192e9061315c565b60405180910390fd5b602d4261194491906133a1565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055505b5b601460159054906101000a900460ff16156119f557600f426119ae91906133a1565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055505b5b6000611a0130610913565b9050601460169054906101000a900460ff16158015611a6e5750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611a84575060148054906101000a900460ff165b15611c8857601460159054906101000a900460ff1615611b235742600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015410611b22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b19906131bc565b60405180910390fd5b5b601460179054906101000a900460ff1615611bad576000611b4f600c548461221490919063ffffffff16565b9050611ba0611b9184611b83601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610913565b61228f90919063ffffffff16565b826122ed90919063ffffffff16565b9050611bab81612337565b505b6000811115611c6e57611c086064611bfa600b54611bec601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610913565b61221490919063ffffffff16565b6122ed90919063ffffffff16565b811115611c6457611c616064611c53600b54611c45601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610913565b61221490919063ffffffff16565b6122ed90919063ffffffff16565b90505b611c6d81611f1a565b5b60004790506000811115611c8657611c8547611db1565b5b505b505b600060019050600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611d315750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15611d3b57600090505b611d47848484846123ee565b50505050565b6000838311158290611d95576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d8c91906130da565b60405180910390fd5b5060008385611da49190613482565b9050809150509392505050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611e016002846122ed90919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611e2c573d6000803e3d6000fd5b50601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611e7d6002846122ed90919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611ea8573d6000803e3d6000fd5b5050565b6000600754821115611ef3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eea9061311c565b60405180910390fd5b6000611efd61241b565b9050611f1281846122ed90919063ffffffff16565b915050919050565b6001601460166101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611f78577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051908082528060200260200182016040528015611fa65781602001602082028036833780820191505090505b5090503081600081518110611fe4577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561208657600080fd5b505afa15801561209a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120be9190612b44565b816001815181106120f8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061215f30601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846112b8565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016121c39594939291906132d7565b600060405180830381600087803b1580156121dd57600080fd5b505af11580156121f1573d6000803e3d6000fd5b50505050506000601460166101000a81548160ff02191690831515021790555050565b6000808314156122275760009050612289565b600082846122359190613428565b905082848261224491906133f7565b14612284576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161227b906131dc565b60405180910390fd5b809150505b92915050565b600080828461229e91906133a1565b9050838110156122e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122da9061317c565b60405180910390fd5b8091505092915050565b600061232f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612446565b905092915050565b6000600a9050600a82101561234f57600a9050612366565b60288211156123615760289050612365565b8190505b5b600061237c6002836124a990919063ffffffff16565b1461239057808061238c90613550565b9150505b6123b7600a6123a960068461221490919063ffffffff16565b6122ed90919063ffffffff16565b6009819055506123e4600a6123d660048461221490919063ffffffff16565b6122ed90919063ffffffff16565b600a819055505050565b806123fc576123fb6124f3565b5b612407848484612536565b8061241557612414612701565b5b50505050565b6000806000612428612715565b9150915061243f81836122ed90919063ffffffff16565b9250505090565b6000808311829061248d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161248491906130da565b60405180910390fd5b506000838561249c91906133f7565b9050809150509392505050565b60006124eb83836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f0000000000000000815250612777565b905092915050565b600060095414801561250757506000600a54145b1561251157612534565b600954600e81905550600a54600f8190555060006009819055506000600a819055505b565b600080600080600080612548876127d5565b9550955095509550955095506125a686600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461283d90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061263b85600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461228f90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061268781612887565b6126918483612944565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516126ee91906132bc565b60405180910390a3505050505050505050565b600e54600981905550600f54600a81905550565b600080600060075490506000683635c9adc5dea00000905061274b683635c9adc5dea000006007546122ed90919063ffffffff16565b82101561276a57600754683635c9adc5dea00000935093505050612773565b81819350935050505b9091565b60008083141582906127bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127b691906130da565b60405180910390fd5b5082846127cc9190613599565b90509392505050565b60008060008060008060008060006127f28a600954600a5461297e565b925092509250600061280261241b565b905060008060006128158e878787612a14565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600061287f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611d4d565b905092915050565b600061289161241b565b905060006128a8828461221490919063ffffffff16565b90506128fc81600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461228f90919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6129598260075461283d90919063ffffffff16565b6007819055506129748160085461228f90919063ffffffff16565b6008819055505050565b6000806000806129aa606461299c888a61221490919063ffffffff16565b6122ed90919063ffffffff16565b905060006129d460646129c6888b61221490919063ffffffff16565b6122ed90919063ffffffff16565b905060006129fd826129ef858c61283d90919063ffffffff16565b61283d90919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080612a2d858961221490919063ffffffff16565b90506000612a44868961221490919063ffffffff16565b90506000612a5b878961221490919063ffffffff16565b90506000612a8482612a76858761283d90919063ffffffff16565b61283d90919063ffffffff16565b9050838184965096509650505050509450945094915050565b600081359050612aac816139cd565b92915050565b600081519050612ac1816139cd565b92915050565b600081359050612ad6816139e4565b92915050565b600081519050612aeb816139e4565b92915050565b600081359050612b00816139fb565b92915050565b600081519050612b15816139fb565b92915050565b600060208284031215612b2d57600080fd5b6000612b3b84828501612a9d565b91505092915050565b600060208284031215612b5657600080fd5b6000612b6484828501612ab2565b91505092915050565b60008060408385031215612b8057600080fd5b6000612b8e85828601612a9d565b9250506020612b9f85828601612a9d565b9150509250929050565b600080600060608486031215612bbe57600080fd5b6000612bcc86828701612a9d565b9350506020612bdd86828701612a9d565b9250506040612bee86828701612af1565b9150509250925092565b60008060408385031215612c0b57600080fd5b6000612c1985828601612a9d565b9250506020612c2a85828601612af1565b9150509250929050565b600060208284031215612c4657600080fd5b6000612c5484828501612ac7565b91505092915050565b600060208284031215612c6f57600080fd5b6000612c7d84828501612adc565b91505092915050565b600060208284031215612c9857600080fd5b6000612ca684828501612af1565b91505092915050565b600080600060608486031215612cc457600080fd5b6000612cd286828701612b06565b9350506020612ce386828701612b06565b9250506040612cf486828701612b06565b9150509250925092565b6000612d0a8383612d16565b60208301905092915050565b612d1f816134b6565b82525050565b612d2e816134b6565b82525050565b6000612d3f8261335c565b612d49818561337f565b9350612d548361334c565b8060005b83811015612d85578151612d6c8882612cfe565b9750612d7783613372565b925050600181019050612d58565b5085935050505092915050565b612d9b816134c8565b82525050565b612daa8161350b565b82525050565b6000612dbb82613367565b612dc58185613390565b9350612dd581856020860161351d565b612dde81613628565b840191505092915050565b6000612df6602383613390565b9150612e0182613639565b604082019050919050565b6000612e19602a83613390565b9150612e2482613688565b604082019050919050565b6000612e3c602283613390565b9150612e47826136d7565b604082019050919050565b6000612e5f602283613390565b9150612e6a82613726565b604082019050919050565b6000612e82601b83613390565b9150612e8d82613775565b602082019050919050565b6000612ea5601583613390565b9150612eb08261379e565b602082019050919050565b6000612ec8602383613390565b9150612ed3826137c7565b604082019050919050565b6000612eeb602183613390565b9150612ef682613816565b604082019050919050565b6000612f0e602083613390565b9150612f1982613865565b602082019050919050565b6000612f31602983613390565b9150612f3c8261388e565b604082019050919050565b6000612f54602583613390565b9150612f5f826138dd565b604082019050919050565b6000612f77602483613390565b9150612f828261392c565b604082019050919050565b6000612f9a601783613390565b9150612fa58261397b565b602082019050919050565b6000612fbd601883613390565b9150612fc8826139a4565b602082019050919050565b612fdc816134f4565b82525050565b612feb816134fe565b82525050565b60006020820190506130066000830184612d25565b92915050565b60006040820190506130216000830185612d25565b61302e6020830184612d25565b9392505050565b600060408201905061304a6000830185612d25565b6130576020830184612fd3565b9392505050565b600060c0820190506130736000830189612d25565b6130806020830188612fd3565b61308d6040830187612da1565b61309a6060830186612da1565b6130a76080830185612d25565b6130b460a0830184612fd3565b979650505050505050565b60006020820190506130d46000830184612d92565b92915050565b600060208201905081810360008301526130f48184612db0565b905092915050565b6000602082019050818103600083015261311581612de9565b9050919050565b6000602082019050818103600083015261313581612e0c565b9050919050565b6000602082019050818103600083015261315581612e2f565b9050919050565b6000602082019050818103600083015261317581612e52565b9050919050565b6000602082019050818103600083015261319581612e75565b9050919050565b600060208201905081810360008301526131b581612e98565b9050919050565b600060208201905081810360008301526131d581612ebb565b9050919050565b600060208201905081810360008301526131f581612ede565b9050919050565b6000602082019050818103600083015261321581612f01565b9050919050565b6000602082019050818103600083015261323581612f24565b9050919050565b6000602082019050818103600083015261325581612f47565b9050919050565b6000602082019050818103600083015261327581612f6a565b9050919050565b6000602082019050818103600083015261329581612f8d565b9050919050565b600060208201905081810360008301526132b581612fb0565b9050919050565b60006020820190506132d16000830184612fd3565b92915050565b600060a0820190506132ec6000830188612fd3565b6132f96020830187612da1565b818103604083015261330b8186612d34565b905061331a6060830185612d25565b6133276080830184612fd3565b9695505050505050565b60006020820190506133466000830184612fe2565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006133ac826134f4565b91506133b7836134f4565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156133ec576133eb6135ca565b5b828201905092915050565b6000613402826134f4565b915061340d836134f4565b92508261341d5761341c6135f9565b5b828204905092915050565b6000613433826134f4565b915061343e836134f4565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613477576134766135ca565b5b828202905092915050565b600061348d826134f4565b9150613498836134f4565b9250828210156134ab576134aa6135ca565b5b828203905092915050565b60006134c1826134d4565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000613516826134f4565b9050919050565b60005b8381101561353b578082015181840152602081019050613520565b8381111561354a576000848401525b50505050565b600061355b826134f4565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561358e5761358d6135ca565b5b600182019050919050565b60006135a4826134f4565b91506135af836134f4565b9250826135bf576135be6135f9565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f596f75722062757920636f6f6c646f776e20686173206e6f742065787069726560008201527f642e000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f526174652063616e277420657863656564203530250000000000000000000000600082015250565b7f596f75722073656c6c20636f6f6c646f776e20686173206e6f7420657870697260008201527f65642e0000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b7f54726164696e67206e6f742079657420656e61626c65642e0000000000000000600082015250565b6139d6816134b6565b81146139e157600080fd5b50565b6139ed816134c8565b81146139f857600080fd5b50565b613a04816134f4565b8114613a0f57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220182547294dc22454f8876e4dc901d71cd53e7add01997f2e1aef16181086eb2964736f6c63430008040033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000f621cf6c7cc2c7f70fed048a52ab0e2596c995bc000000000000000000000000f621cf6c7cc2c7f70fed048a52ab0e2596c995bc

-----Decoded View---------------
Arg [0] : FeeAddress (address): 0xF621Cf6c7cC2c7F70FEd048a52Ab0E2596c995Bc
Arg [1] : marketingWalletAddress (address): 0xF621Cf6c7cC2c7F70FEd048a52Ab0E2596c995Bc

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000f621cf6c7cc2c7f70fed048a52ab0e2596c995bc
Arg [1] : 000000000000000000000000f621cf6c7cc2c7f70fed048a52ab0e2596c995bc


Deployed Bytecode Sourcemap

5182:13592:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7478:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8330:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7755:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8499:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18192:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7664:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17798:218;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18024:160;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18404:124;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17530:190;;;;;;;;;;;;;:::i;:::-;;7858:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4263:148;;;;;;;;;;;;;:::i;:::-;;4049:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7569:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8004:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18300:96;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18536:126;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17331:191;;;;;;;;;;;;;:::i;:::-;;17190:133;;;;;;;;;;;;;:::i;:::-;;18670:101;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8179:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16416:766;;;;;;;;;;;;;:::i;:::-;;7478:83;7515:13;7548:5;;;;;;;;;;;;;;;;;7541:12;;7478:83;:::o;8330:161::-;8405:4;8422:39;8431:12;:10;:12::i;:::-;8445:7;8454:6;8422:8;:39::i;:::-;8479:4;8472:11;;8330:161;;;;:::o;7755:95::-;7808:7;5635:12;7828:14;;7755:95;:::o;8499:313::-;8597:4;8614:36;8624:6;8632:9;8643:6;8614:9;:36::i;:::-;8661:121;8670:6;8678:12;:10;:12::i;:::-;8692:89;8730:6;8692:89;;;;;;;;;;;;;;;;;:11;:19;8704:6;8692:19;;;;;;;;;;;;;;;:33;8712:12;:10;:12::i;:::-;8692:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;8661:8;:121::i;:::-;8800:4;8793:11;;8499:313;;;;;:::o;18192:100::-;18236:4;18260:24;18278:4;18260:9;:24::i;:::-;18253:31;;18192:100;:::o;7664:83::-;7705:5;5903:1;7723:16;;7664:83;:::o;17798:218::-;17876:11;;;;;;;;;;;17860:27;;:12;:10;:12::i;:::-;:27;;;17852:36;;;;;;17914:2;17907:4;:9;17899:43;;;;;;;;;;;;:::i;:::-;;;;;;;;;17964:4;17953:8;:15;;;;17984:24;17999:8;;17984:24;;;;;;:::i;:::-;;;;;;;;17798:218;:::o;18024:160::-;4186:12;:10;:12::i;:::-;4176:22;;:6;;;;;;;;;;:22;;;4168:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;18115:5:::1;18096:16;;:24;;;;;;;;;;;;;;;;;;18136:40;18159:16;;;;;;;;;;;18136:40;;;;;;:::i;:::-;;;;;;;;18024:160:::0;:::o;18404:124::-;18459:4;18501:8;:15;18510:5;18501:15;;;;;;;;;;;;;;;:19;;;18483:15;:37;;;;:::i;:::-;18476:44;;18404:124;;;:::o;17530:190::-;17596:11;;;;;;;;;;;17580:27;;:12;:10;:12::i;:::-;:27;;;17572:36;;;;;;17619:26;17648:21;17619:50;;17680:32;17693:18;17680:12;:32::i;:::-;17530:190;:::o;7858:138::-;7924:7;7951:37;7971:7;:16;7979:7;7971:16;;;;;;;;;;;;;;;;7951:19;:37::i;:::-;7944:44;;7858:138;;;:::o;4263:148::-;4186:12;:10;:12::i;:::-;4176:22;;:6;;;;;;;;;;:22;;;4168:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4370:1:::1;4333:40;;4354:6;::::0;::::1;;;;;;;;4333:40;;;;;;;;;;;;4401:1;4384:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;4263:148::o:0;4049:79::-;4087:7;4114:6;;;;;;;;;;;4107:13;;4049:79;:::o;7569:87::-;7608:13;7641:7;;;;;;;;;;;;;;;;;7634:14;;7569:87;:::o;8004:167::-;8082:4;8099:42;8109:12;:10;:12::i;:::-;8123:9;8134:6;8099:9;:42::i;:::-;8159:4;8152:11;;8004:167;;;;:::o;18300:96::-;18348:4;18372:16;;;;;;;;;;;18365:23;;18300:96;:::o;18536:126::-;18592:4;18634:8;:15;18643:5;18634:15;;;;;;;;;;;;;;;:20;;;18616:15;:38;;;;:::i;:::-;18609:45;;18536:126;;;:::o;17331:191::-;17397:11;;;;;;;;;;;17381:27;;:12;:10;:12::i;:::-;:27;;;17373:36;;;;;;17420:23;17446:24;17464:4;17446:9;:24::i;:::-;17420:50;;17481:33;17498:15;17481:16;:33::i;:::-;17331:191;:::o;17190:133::-;4186:12;:10;:12::i;:::-;4176:22;;:6;;;;;;;;;;:22;;;4168:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;17255:4:::1;17241:11;::::0;:18:::1;;;;;;;;;;;;;;;;;;17303:11;17284:15;:31;;;;:::i;:::-;17270:11;:45;;;;17190:133::o:0;18670:101::-;18715:4;18739:24;18749:13;;;;;;;;;;;18739:9;:24::i;:::-;18732:31;;18670:101;:::o;8179:143::-;8260:7;8287:11;:18;8299:5;8287:18;;;;;;;;;;;;;;;:27;8306:7;8287:27;;;;;;;;;;;;;;;;8280:34;;8179:143;;;;:::o;16416:766::-;4186:12;:10;:12::i;:::-;4176:22;;:6;;;;;;;;;;:22;;;4168:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;16481:11:::1;::::0;::::1;;;;;;;;16480:12;16472:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;16530:35;16587:42;16530:100;;16659:16;16641:15;;:34;;;;;;;;;;;;;;;;;;16686:58;16703:4;16718:15;;;;;;;;;;;5635:12;16686:8;:58::i;:::-;16789:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16771:56;;;16836:4;16843:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16771:96;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16755:13;;:112;;;;;;;;;;;;;;;;;;16878:15;;;;;;;;;;;:31;;;16917:21;16948:4;16954:24;16972:4;16954:9;:24::i;:::-;16979:1;16981::::0;16983:7:::1;:5;:7::i;:::-;16991:15;16878:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;17034:18;17018:13;:34;;;;17077:15;17063:11;:29;;;;17110:13;;;;;;;;;;;17103:29;;;17141:15;;;;;;;;;;;17159:14;17103:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4246:1;16416:766::o:0;1458:98::-;1511:7;1538:10;1531:17;;1458:98;:::o;9882:335::-;9992:1;9975:19;;:5;:19;;;;9967:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10073:1;10054:21;;:7;:21;;;;10046:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10155:6;10125:11;:18;10137:5;10125:18;;;;;;;;;;;;;;;:27;10144:7;10125:27;;;;;;;;;;;;;;;:36;;;;10193:7;10177:32;;10186:5;10177:32;;;10202:6;10177:32;;;;;;:::i;:::-;;;;;;;;9882:335;;;:::o;10225:2658::-;10329:1;10313:18;;:4;:18;;;;10305:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10406:1;10392:16;;:2;:16;;;;10384:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;10476:1;10467:6;:10;10459:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;10547:7;:5;:7::i;:::-;10539:15;;:4;:15;;;;:32;;;;;10564:7;:5;:7::i;:::-;10558:13;;:2;:13;;;;10539:32;10536:2151;;;10591:16;;;;;;;;;;;10588:168;;;10632:8;:20;10641:10;10632:20;;;;;;;;;;;;;;;:27;;;;;;;;;;;;10628:113;;10707:14;;;;;;;;10712:1;10707:14;;;;10714:1;10707:14;;;;10716:4;10707:14;;;;;10684:8;:20;10693:10;10684:20;;;;;;;;;;;;;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10628:113;10588:168;10803:13;;;;;;;;;;;10795:21;;:4;:21;;;:55;;;;;10834:15;;;;;;;;;;;10820:30;;:2;:30;;;;10795:55;:82;;;;;10855:18;:22;10874:2;10855:22;;;;;;;;;;;;;;;;;;;;;;;;;10854:23;10795:82;10792:745;;;10906:11;;;;;;;;;;10898:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;10975:1;10965:7;:11;;;;11006:1;10995:8;:12;;;;11029:16;;;;;;;;;;;11026:364;;;11087:15;11073:11;;:29;11070:301;;;11149:13;;11139:6;:23;;11131:32;;;;;;11217:15;11198:8;:12;11207:2;11198:12;;;;;;;;;;;;;;;:16;;;:34;11190:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;11336:10;11317:15;:30;;;;:::i;:::-;11298:8;:12;11307:2;11298:12;;;;;;;;;;;;;;;:16;;:49;;;;11070:301;11026:364;11411:16;;;;;;;;;;;11408:114;;;11491:10;11472:15;:30;;;;:::i;:::-;11452:8;:12;11461:2;11452:12;;;;;;;;;;;;;;;:17;;:50;;;;11408:114;10792:745;11551:28;11582:24;11600:4;11582:9;:24::i;:::-;11551:55;;11648:6;;;;;;;;;;;11647:7;:32;;;;;11666:13;;;;;;;;;;;11658:21;;:4;:21;;;;11647:32;:47;;;;;11683:11;;;;;;;;;;11647:47;11644:1032;;;11720:16;;;;;;;;;;;11717:149;;;11791:15;11769:8;:14;11778:4;11769:14;;;;;;;;;;;;;;;:19;;;:37;11761:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;11717:149;11889:19;;;;;;;;;;;11886:235;;;11933:16;11952:26;11963:14;;11952:6;:10;;:26;;;;:::i;:::-;11933:45;;12012:50;12025:36;12054:6;12025:24;12035:13;;;;;;;;;;;12025:9;:24::i;:::-;:28;;:36;;;;:::i;:::-;12012:8;:12;;:50;;;;:::i;:::-;12001:61;;12085:16;12092:8;12085:6;:16::i;:::-;11886:235;;12167:1;12144:20;:24;12141:328;;;12219:47;12262:3;12219:38;12248:8;;12219:24;12229:13;;;;;;;;;;;12219:9;:24::i;:::-;:28;;:38;;;;:::i;:::-;:42;;:47;;;;:::i;:::-;12196:20;:70;12193:196;;;12318:47;12361:3;12318:38;12347:8;;12318:24;12328:13;;;;;;;;;;;12318:9;:24::i;:::-;:28;;:38;;;;:::i;:::-;:42;;:47;;;;:::i;:::-;12295:70;;12193:196;12411:38;12428:20;12411:16;:38::i;:::-;12141:328;12487:26;12516:21;12487:50;;12580:1;12559:18;:22;12556:105;;;12606:35;12619:21;12606:12;:35::i;:::-;12556:105;11644:1032;;10536:2151;;12697:12;12712:4;12697:19;;12732:18;:24;12751:4;12732:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;12760:18;:22;12779:2;12760:22;;;;;;;;;;;;;;;;;;;;;;;;;12732:50;12729:96;;;12808:5;12798:15;;12729:96;12837:38;12852:4;12857:2;12860:6;12867:7;12837:14;:38::i;:::-;10225:2658;;;;:::o;2595:190::-;2681:7;2714:1;2709;:6;;2717:12;2701:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2741:9;2757:1;2753;:5;;;;:::i;:::-;2741:17;;2776:1;2769:8;;;2595:190;;;;;:::o;13382:158::-;13439:11;;;;;;;;;;;:20;;:35;13460:13;13471:1;13460:6;:10;;:13;;;;:::i;:::-;13439:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13485:23;;;;;;;;;;;:32;;:47;13518:13;13529:1;13518:6;:10;;:13;;;;:::i;:::-;13485:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13382:158;:::o;8820:254::-;8887:7;8926;;8915;:18;;8907:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;8991:19;9014:10;:8;:10::i;:::-;8991:33;;9042:24;9054:11;9042:7;:11;;:24;;;;:::i;:::-;9035:31;;;8820:254;;;:::o;12891:483::-;6927:4;6918:6;;:13;;;;;;;;;;;;;;;;;;12969:21:::1;13007:1;12993:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12969:40;;13038:4;13020;13025:1;13020:7;;;;;;;;;;;;;;;;;;;;;:23;;;;;;;;;::::0;::::1;13064:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13054:4;13059:1;13054:7;;;;;;;;;;;;;;;;;;;;;:32;;;;;;;;;::::0;::::1;13097:62;13114:4;13129:15;;;;;;;;;;;13147:11;13097:8;:62::i;:::-;13170:15;;;;;;;;;;;:66;;;13251:11;13277:1;13293:4;13320;13340:15;13170:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;6942:1;6963:5:::0;6954:6;;:14;;;;;;;;;;;;;;;;;;12891:483;:::o;2793:245::-;2851:7;2879:1;2874;:6;2871:46;;;2904:1;2897:8;;;;2871:46;2927:9;2943:1;2939;:5;;;;:::i;:::-;2927:17;;2972:1;2967;2963;:5;;;;:::i;:::-;:10;2955:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;3029:1;3022:8;;;2793:245;;;;;:::o;2264:179::-;2322:7;2342:9;2358:1;2354;:5;;;;:::i;:::-;2342:17;;2383:1;2378;:6;;2370:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;2434:1;2427:8;;;2264:179;;;;:::o;3046:132::-;3104:7;3131:39;3135:1;3138;3131:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;3124:46;;3046:132;;;;:::o;9423:451::-;9477:18;9498:2;9477:23;;9526:2;9514:9;:14;9511:183;;;9558:2;9545:15;;9511:183;;;9593:2;9581:9;:14;9578:116;;;9625:2;9612:15;;9578:116;;;9673:9;9660:22;;9578:116;9511:183;9728:1;9707:17;9722:1;9707:10;:14;;:17;;;;:::i;:::-;:22;9704:66;;9746:12;;;;;:::i;:::-;;;;9704:66;9790:27;9814:2;9791:17;9806:1;9791:10;:14;;:17;;;;:::i;:::-;9790:23;;:27;;;;:::i;:::-;9780:7;:37;;;;9839:27;9863:2;9840:17;9855:1;9840:10;:14;;:17;;;;:::i;:::-;9839:23;;:27;;;;:::i;:::-;9828:8;:38;;;;9423:451;;:::o;13548:263::-;13660:7;13656:40;;13682:14;:12;:14::i;:::-;13656:40;13707:44;13725:6;13733:9;13744:6;13707:17;:44::i;:::-;13766:7;13762:41;;13788:15;:13;:15::i;:::-;13762:41;13548:263;;;;:::o;15151:163::-;15192:7;15213:15;15230;15249:19;:17;:19::i;:::-;15212:56;;;;15286:20;15298:7;15286;:11;;:20;;;;:::i;:::-;15279:27;;;;15151:163;:::o;3186:189::-;3272:7;3304:1;3300;:5;3307:12;3292:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;3331:9;3347:1;3343;:5;;;;:::i;:::-;3331:17;;3366:1;3359:8;;;3186:189;;;;;:::o;3383:130::-;3441:7;3468:37;3472:1;3475;3468:37;;;;;;;;;;;;;;;;;:3;:37::i;:::-;3461:44;;3383:130;;;;:::o;9082:210::-;9139:1;9128:7;;:12;:29;;;;;9156:1;9144:8;;:13;9128:29;9125:41;;;9159:7;;9125:41;9194:7;;9176:15;:25;;;;9231:8;;9212:16;:27;;;;9260:1;9250:7;:11;;;;9283:1;9272:8;:12;;;;9082:210;:::o;13819:489::-;13918:15;13935:23;13960:12;13974:23;13999:12;14013:13;14030:19;14041:7;14030:10;:19::i;:::-;13917:132;;;;;;;;;;;;14078:28;14098:7;14078;:15;14086:6;14078:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;14060:7;:15;14068:6;14060:15;;;;;;;;;;;;;;;:46;;;;14138:39;14161:15;14138:7;:18;14146:9;14138:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;14117:7;:18;14125:9;14117:18;;;;;;;;;;;;;;;:60;;;;14190:16;14200:5;14190:9;:16::i;:::-;14217:23;14229:4;14235;14217:11;:23::i;:::-;14273:9;14256:44;;14265:6;14256:44;;;14284:15;14256:44;;;;;;:::i;:::-;;;;;;;;13819:489;;;;;;;;;:::o;9300:115::-;9354:15;;9344:7;:25;;;;9391:16;;9380:8;:27;;;;9300:115::o;15322:255::-;15372:7;15381;15401:15;15419:7;;15401:25;;15437:15;5635:12;15437:25;;15486:20;5635:12;15486:7;;:11;;:20;;;;:::i;:::-;15476:7;:30;15473:60;;;15516:7;;5635:12;15508:25;;;;;;;;15473:60;15552:7;15561;15544:25;;;;;;15322:255;;;:::o;3521:166::-;3607:7;3640:1;3635;:6;;3643:12;3627:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;3678:1;3674;:5;;;;:::i;:::-;3667:12;;3521:166;;;;;:::o;14316:468::-;14375:7;14384;14393;14402;14411;14420;14441:23;14466:12;14480:13;14497:39;14509:7;14518;;14527:8;;14497:11;:39::i;:::-;14440:96;;;;;;14547:19;14570:10;:8;:10::i;:::-;14547:33;;14592:15;14609:23;14634:12;14650:46;14662:7;14671:4;14677:5;14684:11;14650;:46::i;:::-;14591:105;;;;;;14715:7;14724:15;14741:4;14747:15;14764:4;14770:5;14707:69;;;;;;;;;;;;;;;;;;;14316:468;;;;;;;:::o;2451:136::-;2509:7;2536:43;2540:1;2543;2536:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;2529:50;;2451:136;;;;:::o;16002:214::-;16055:19;16078:10;:8;:10::i;:::-;16055:33;;16099:13;16115:22;16125:11;16115:5;:9;;:22;;;;:::i;:::-;16099:38;;16175:33;16202:5;16175:7;:22;16191:4;16175:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;16150:7;:22;16166:4;16150:22;;;;;;;;;;;;;;;:58;;;;16002:214;;;:::o;16224:147::-;16302:17;16314:4;16302:7;;:11;;:17;;;;:::i;:::-;16292:7;:27;;;;16343:20;16358:4;16343:10;;:14;;:20;;;;:::i;:::-;16330:10;:33;;;;16224:147;;:::o;14792:351::-;14885:7;14894;14903;14923:12;14938:28;14962:3;14938:19;14950:6;14938:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;14923:43;;14977:13;14993:29;15018:3;14993:20;15005:7;14993;:11;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;14977:45;;15033:23;15059:28;15081:5;15059:17;15071:4;15059:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;15033:54;;15106:15;15123:4;15129:5;15098:37;;;;;;;;;14792:351;;;;;;;:::o;15585:409::-;15695:7;15704;15713;15733:15;15751:24;15763:11;15751:7;:11;;:24;;;;:::i;:::-;15733:42;;15786:12;15801:21;15810:11;15801:4;:8;;:21;;;;:::i;:::-;15786:36;;15833:13;15849:22;15859:11;15849:5;:9;;:22;;;;:::i;:::-;15833:38;;15882:23;15908:28;15930:5;15908:17;15920:4;15908:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;15882:54;;15955:7;15964:15;15981:4;15947:39;;;;;;;;;;15585:409;;;;;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:143::-;209:5;240:6;234:13;225:22;;256:33;283:5;256:33;:::i;:::-;215:80;;;;:::o;301:133::-;344:5;382:6;369:20;360:29;;398:30;422:5;398:30;:::i;:::-;350:84;;;;:::o;440:137::-;494:5;525:6;519:13;510:22;;541:30;565:5;541:30;:::i;:::-;500:77;;;;:::o;583:139::-;629:5;667:6;654:20;645:29;;683:33;710:5;683:33;:::i;:::-;635:87;;;;:::o;728:143::-;785:5;816:6;810:13;801:22;;832:33;859:5;832:33;:::i;:::-;791:80;;;;:::o;877:262::-;936:6;985:2;973:9;964:7;960:23;956:32;953:2;;;1001:1;998;991:12;953:2;1044:1;1069:53;1114:7;1105:6;1094:9;1090:22;1069:53;:::i;:::-;1059:63;;1015:117;943:196;;;;:::o;1145:284::-;1215:6;1264:2;1252:9;1243:7;1239:23;1235:32;1232:2;;;1280:1;1277;1270:12;1232:2;1323:1;1348:64;1404:7;1395:6;1384:9;1380:22;1348:64;:::i;:::-;1338:74;;1294:128;1222:207;;;;:::o;1435:407::-;1503:6;1511;1560:2;1548:9;1539:7;1535:23;1531:32;1528:2;;;1576:1;1573;1566:12;1528:2;1619:1;1644:53;1689:7;1680:6;1669:9;1665:22;1644:53;:::i;:::-;1634:63;;1590:117;1746:2;1772:53;1817:7;1808:6;1797:9;1793:22;1772:53;:::i;:::-;1762:63;;1717:118;1518:324;;;;;:::o;1848:552::-;1925:6;1933;1941;1990:2;1978:9;1969:7;1965:23;1961:32;1958:2;;;2006:1;2003;1996:12;1958:2;2049:1;2074:53;2119:7;2110:6;2099:9;2095:22;2074:53;:::i;:::-;2064:63;;2020:117;2176:2;2202:53;2247:7;2238:6;2227:9;2223:22;2202:53;:::i;:::-;2192:63;;2147:118;2304:2;2330:53;2375:7;2366:6;2355:9;2351:22;2330:53;:::i;:::-;2320:63;;2275:118;1948:452;;;;;:::o;2406:407::-;2474:6;2482;2531:2;2519:9;2510:7;2506:23;2502:32;2499:2;;;2547:1;2544;2537:12;2499:2;2590:1;2615:53;2660:7;2651:6;2640:9;2636:22;2615:53;:::i;:::-;2605:63;;2561:117;2717:2;2743:53;2788:7;2779:6;2768:9;2764:22;2743:53;:::i;:::-;2733:63;;2688:118;2489:324;;;;;:::o;2819:256::-;2875:6;2924:2;2912:9;2903:7;2899:23;2895:32;2892:2;;;2940:1;2937;2930:12;2892:2;2983:1;3008:50;3050:7;3041:6;3030:9;3026:22;3008:50;:::i;:::-;2998:60;;2954:114;2882:193;;;;:::o;3081:278::-;3148:6;3197:2;3185:9;3176:7;3172:23;3168:32;3165:2;;;3213:1;3210;3203:12;3165:2;3256:1;3281:61;3334:7;3325:6;3314:9;3310:22;3281:61;:::i;:::-;3271:71;;3227:125;3155:204;;;;:::o;3365:262::-;3424:6;3473:2;3461:9;3452:7;3448:23;3444:32;3441:2;;;3489:1;3486;3479:12;3441:2;3532:1;3557:53;3602:7;3593:6;3582:9;3578:22;3557:53;:::i;:::-;3547:63;;3503:117;3431:196;;;;:::o;3633:596::-;3721:6;3729;3737;3786:2;3774:9;3765:7;3761:23;3757:32;3754:2;;;3802:1;3799;3792:12;3754:2;3845:1;3870:64;3926:7;3917:6;3906:9;3902:22;3870:64;:::i;:::-;3860:74;;3816:128;3983:2;4009:64;4065:7;4056:6;4045:9;4041:22;4009:64;:::i;:::-;3999:74;;3954:129;4122:2;4148:64;4204:7;4195:6;4184:9;4180:22;4148:64;:::i;:::-;4138:74;;4093:129;3744:485;;;;;:::o;4235:179::-;4304:10;4325:46;4367:3;4359:6;4325:46;:::i;:::-;4403:4;4398:3;4394:14;4380:28;;4315:99;;;;:::o;4420:108::-;4497:24;4515:5;4497:24;:::i;:::-;4492:3;4485:37;4475:53;;:::o;4534:118::-;4621:24;4639:5;4621:24;:::i;:::-;4616:3;4609:37;4599:53;;:::o;4688:732::-;4807:3;4836:54;4884:5;4836:54;:::i;:::-;4906:86;4985:6;4980:3;4906:86;:::i;:::-;4899:93;;5016:56;5066:5;5016:56;:::i;:::-;5095:7;5126:1;5111:284;5136:6;5133:1;5130:13;5111:284;;;5212:6;5206:13;5239:63;5298:3;5283:13;5239:63;:::i;:::-;5232:70;;5325:60;5378:6;5325:60;:::i;:::-;5315:70;;5171:224;5158:1;5155;5151:9;5146:14;;5111:284;;;5115:14;5411:3;5404:10;;4812:608;;;;;;;:::o;5426:109::-;5507:21;5522:5;5507:21;:::i;:::-;5502:3;5495:34;5485:50;;:::o;5541:147::-;5636:45;5675:5;5636:45;:::i;:::-;5631:3;5624:58;5614:74;;:::o;5694:364::-;5782:3;5810:39;5843:5;5810:39;:::i;:::-;5865:71;5929:6;5924:3;5865:71;:::i;:::-;5858:78;;5945:52;5990:6;5985:3;5978:4;5971:5;5967:16;5945:52;:::i;:::-;6022:29;6044:6;6022:29;:::i;:::-;6017:3;6013:39;6006:46;;5786:272;;;;;:::o;6064:366::-;6206:3;6227:67;6291:2;6286:3;6227:67;:::i;:::-;6220:74;;6303:93;6392:3;6303:93;:::i;:::-;6421:2;6416:3;6412:12;6405:19;;6210:220;;;:::o;6436:366::-;6578:3;6599:67;6663:2;6658:3;6599:67;:::i;:::-;6592:74;;6675:93;6764:3;6675:93;:::i;:::-;6793:2;6788:3;6784:12;6777:19;;6582:220;;;:::o;6808:366::-;6950:3;6971:67;7035:2;7030:3;6971:67;:::i;:::-;6964:74;;7047:93;7136:3;7047:93;:::i;:::-;7165:2;7160:3;7156:12;7149:19;;6954:220;;;:::o;7180:366::-;7322:3;7343:67;7407:2;7402:3;7343:67;:::i;:::-;7336:74;;7419:93;7508:3;7419:93;:::i;:::-;7537:2;7532:3;7528:12;7521:19;;7326:220;;;:::o;7552:366::-;7694:3;7715:67;7779:2;7774:3;7715:67;:::i;:::-;7708:74;;7791:93;7880:3;7791:93;:::i;:::-;7909:2;7904:3;7900:12;7893:19;;7698:220;;;:::o;7924:366::-;8066:3;8087:67;8151:2;8146:3;8087:67;:::i;:::-;8080:74;;8163:93;8252:3;8163:93;:::i;:::-;8281:2;8276:3;8272:12;8265:19;;8070:220;;;:::o;8296:366::-;8438:3;8459:67;8523:2;8518:3;8459:67;:::i;:::-;8452:74;;8535:93;8624:3;8535:93;:::i;:::-;8653:2;8648:3;8644:12;8637:19;;8442:220;;;:::o;8668:366::-;8810:3;8831:67;8895:2;8890:3;8831:67;:::i;:::-;8824:74;;8907:93;8996:3;8907:93;:::i;:::-;9025:2;9020:3;9016:12;9009:19;;8814:220;;;:::o;9040:366::-;9182:3;9203:67;9267:2;9262:3;9203:67;:::i;:::-;9196:74;;9279:93;9368:3;9279:93;:::i;:::-;9397:2;9392:3;9388:12;9381:19;;9186:220;;;:::o;9412:366::-;9554:3;9575:67;9639:2;9634:3;9575:67;:::i;:::-;9568:74;;9651:93;9740:3;9651:93;:::i;:::-;9769:2;9764:3;9760:12;9753:19;;9558:220;;;:::o;9784:366::-;9926:3;9947:67;10011:2;10006:3;9947:67;:::i;:::-;9940:74;;10023:93;10112:3;10023:93;:::i;:::-;10141:2;10136:3;10132:12;10125:19;;9930:220;;;:::o;10156:366::-;10298:3;10319:67;10383:2;10378:3;10319:67;:::i;:::-;10312:74;;10395:93;10484:3;10395:93;:::i;:::-;10513:2;10508:3;10504:12;10497:19;;10302:220;;;:::o;10528:366::-;10670:3;10691:67;10755:2;10750:3;10691:67;:::i;:::-;10684:74;;10767:93;10856:3;10767:93;:::i;:::-;10885:2;10880:3;10876:12;10869:19;;10674:220;;;:::o;10900:366::-;11042:3;11063:67;11127:2;11122:3;11063:67;:::i;:::-;11056:74;;11139:93;11228:3;11139:93;:::i;:::-;11257:2;11252:3;11248:12;11241:19;;11046:220;;;:::o;11272:118::-;11359:24;11377:5;11359:24;:::i;:::-;11354:3;11347:37;11337:53;;:::o;11396:112::-;11479:22;11495:5;11479:22;:::i;:::-;11474:3;11467:35;11457:51;;:::o;11514:222::-;11607:4;11645:2;11634:9;11630:18;11622:26;;11658:71;11726:1;11715:9;11711:17;11702:6;11658:71;:::i;:::-;11612:124;;;;:::o;11742:332::-;11863:4;11901:2;11890:9;11886:18;11878:26;;11914:71;11982:1;11971:9;11967:17;11958:6;11914:71;:::i;:::-;11995:72;12063:2;12052:9;12048:18;12039:6;11995:72;:::i;:::-;11868:206;;;;;:::o;12080:332::-;12201:4;12239:2;12228:9;12224:18;12216:26;;12252:71;12320:1;12309:9;12305:17;12296:6;12252:71;:::i;:::-;12333:72;12401:2;12390:9;12386:18;12377:6;12333:72;:::i;:::-;12206:206;;;;;:::o;12418:807::-;12667:4;12705:3;12694:9;12690:19;12682:27;;12719:71;12787:1;12776:9;12772:17;12763:6;12719:71;:::i;:::-;12800:72;12868:2;12857:9;12853:18;12844:6;12800:72;:::i;:::-;12882:80;12958:2;12947:9;12943:18;12934:6;12882:80;:::i;:::-;12972;13048:2;13037:9;13033:18;13024:6;12972:80;:::i;:::-;13062:73;13130:3;13119:9;13115:19;13106:6;13062:73;:::i;:::-;13145;13213:3;13202:9;13198:19;13189:6;13145:73;:::i;:::-;12672:553;;;;;;;;;:::o;13231:210::-;13318:4;13356:2;13345:9;13341:18;13333:26;;13369:65;13431:1;13420:9;13416:17;13407:6;13369:65;:::i;:::-;13323:118;;;;:::o;13447:313::-;13560:4;13598:2;13587:9;13583:18;13575:26;;13647:9;13641:4;13637:20;13633:1;13622:9;13618:17;13611:47;13675:78;13748:4;13739:6;13675:78;:::i;:::-;13667:86;;13565:195;;;;:::o;13766:419::-;13932:4;13970:2;13959:9;13955:18;13947:26;;14019:9;14013:4;14009:20;14005:1;13994:9;13990:17;13983:47;14047:131;14173:4;14047:131;:::i;:::-;14039:139;;13937:248;;;:::o;14191:419::-;14357:4;14395:2;14384:9;14380:18;14372:26;;14444:9;14438:4;14434:20;14430:1;14419:9;14415:17;14408:47;14472:131;14598:4;14472:131;:::i;:::-;14464:139;;14362:248;;;:::o;14616:419::-;14782:4;14820:2;14809:9;14805:18;14797:26;;14869:9;14863:4;14859:20;14855:1;14844:9;14840:17;14833:47;14897:131;15023:4;14897:131;:::i;:::-;14889:139;;14787:248;;;:::o;15041:419::-;15207:4;15245:2;15234:9;15230:18;15222:26;;15294:9;15288:4;15284:20;15280:1;15269:9;15265:17;15258:47;15322:131;15448:4;15322:131;:::i;:::-;15314:139;;15212:248;;;:::o;15466:419::-;15632:4;15670:2;15659:9;15655:18;15647:26;;15719:9;15713:4;15709:20;15705:1;15694:9;15690:17;15683:47;15747:131;15873:4;15747:131;:::i;:::-;15739:139;;15637:248;;;:::o;15891:419::-;16057:4;16095:2;16084:9;16080:18;16072:26;;16144:9;16138:4;16134:20;16130:1;16119:9;16115:17;16108:47;16172:131;16298:4;16172:131;:::i;:::-;16164:139;;16062:248;;;:::o;16316:419::-;16482:4;16520:2;16509:9;16505:18;16497:26;;16569:9;16563:4;16559:20;16555:1;16544:9;16540:17;16533:47;16597:131;16723:4;16597:131;:::i;:::-;16589:139;;16487:248;;;:::o;16741:419::-;16907:4;16945:2;16934:9;16930:18;16922:26;;16994:9;16988:4;16984:20;16980:1;16969:9;16965:17;16958:47;17022:131;17148:4;17022:131;:::i;:::-;17014:139;;16912:248;;;:::o;17166:419::-;17332:4;17370:2;17359:9;17355:18;17347:26;;17419:9;17413:4;17409:20;17405:1;17394:9;17390:17;17383:47;17447:131;17573:4;17447:131;:::i;:::-;17439:139;;17337:248;;;:::o;17591:419::-;17757:4;17795:2;17784:9;17780:18;17772:26;;17844:9;17838:4;17834:20;17830:1;17819:9;17815:17;17808:47;17872:131;17998:4;17872:131;:::i;:::-;17864:139;;17762:248;;;:::o;18016:419::-;18182:4;18220:2;18209:9;18205:18;18197:26;;18269:9;18263:4;18259:20;18255:1;18244:9;18240:17;18233:47;18297:131;18423:4;18297:131;:::i;:::-;18289:139;;18187:248;;;:::o;18441:419::-;18607:4;18645:2;18634:9;18630:18;18622:26;;18694:9;18688:4;18684:20;18680:1;18669:9;18665:17;18658:47;18722:131;18848:4;18722:131;:::i;:::-;18714:139;;18612:248;;;:::o;18866:419::-;19032:4;19070:2;19059:9;19055:18;19047:26;;19119:9;19113:4;19109:20;19105:1;19094:9;19090:17;19083:47;19147:131;19273:4;19147:131;:::i;:::-;19139:139;;19037:248;;;:::o;19291:419::-;19457:4;19495:2;19484:9;19480:18;19472:26;;19544:9;19538:4;19534:20;19530:1;19519:9;19515:17;19508:47;19572:131;19698:4;19572:131;:::i;:::-;19564:139;;19462:248;;;:::o;19716:222::-;19809:4;19847:2;19836:9;19832:18;19824:26;;19860:71;19928:1;19917:9;19913:17;19904:6;19860:71;:::i;:::-;19814:124;;;;:::o;19944:831::-;20207:4;20245:3;20234:9;20230:19;20222:27;;20259:71;20327:1;20316:9;20312:17;20303:6;20259:71;:::i;:::-;20340:80;20416:2;20405:9;20401:18;20392:6;20340:80;:::i;:::-;20467:9;20461:4;20457:20;20452:2;20441:9;20437:18;20430:48;20495:108;20598:4;20589:6;20495:108;:::i;:::-;20487:116;;20613:72;20681:2;20670:9;20666:18;20657:6;20613:72;:::i;:::-;20695:73;20763:3;20752:9;20748:19;20739:6;20695:73;:::i;:::-;20212:563;;;;;;;;:::o;20781:214::-;20870:4;20908:2;20897:9;20893:18;20885:26;;20921:67;20985:1;20974:9;20970:17;20961:6;20921:67;:::i;:::-;20875:120;;;;:::o;21001:132::-;21068:4;21091:3;21083:11;;21121:4;21116:3;21112:14;21104:22;;21073:60;;;:::o;21139:114::-;21206:6;21240:5;21234:12;21224:22;;21213:40;;;:::o;21259:99::-;21311:6;21345:5;21339:12;21329:22;;21318:40;;;:::o;21364:113::-;21434:4;21466;21461:3;21457:14;21449:22;;21439:38;;;:::o;21483:184::-;21582:11;21616:6;21611:3;21604:19;21656:4;21651:3;21647:14;21632:29;;21594:73;;;;:::o;21673:169::-;21757:11;21791:6;21786:3;21779:19;21831:4;21826:3;21822:14;21807:29;;21769:73;;;;:::o;21848:305::-;21888:3;21907:20;21925:1;21907:20;:::i;:::-;21902:25;;21941:20;21959:1;21941:20;:::i;:::-;21936:25;;22095:1;22027:66;22023:74;22020:1;22017:81;22014:2;;;22101:18;;:::i;:::-;22014:2;22145:1;22142;22138:9;22131:16;;21892:261;;;;:::o;22159:185::-;22199:1;22216:20;22234:1;22216:20;:::i;:::-;22211:25;;22250:20;22268:1;22250:20;:::i;:::-;22245:25;;22289:1;22279:2;;22294:18;;:::i;:::-;22279:2;22336:1;22333;22329:9;22324:14;;22201:143;;;;:::o;22350:348::-;22390:7;22413:20;22431:1;22413:20;:::i;:::-;22408:25;;22447:20;22465:1;22447:20;:::i;:::-;22442:25;;22635:1;22567:66;22563:74;22560:1;22557:81;22552:1;22545:9;22538:17;22534:105;22531:2;;;22642:18;;:::i;:::-;22531:2;22690:1;22687;22683:9;22672:20;;22398:300;;;;:::o;22704:191::-;22744:4;22764:20;22782:1;22764:20;:::i;:::-;22759:25;;22798:20;22816:1;22798:20;:::i;:::-;22793:25;;22837:1;22834;22831:8;22828:2;;;22842:18;;:::i;:::-;22828:2;22887:1;22884;22880:9;22872:17;;22749:146;;;;:::o;22901:96::-;22938:7;22967:24;22985:5;22967:24;:::i;:::-;22956:35;;22946:51;;;:::o;23003:90::-;23037:7;23080:5;23073:13;23066:21;23055:32;;23045:48;;;:::o;23099:126::-;23136:7;23176:42;23169:5;23165:54;23154:65;;23144:81;;;:::o;23231:77::-;23268:7;23297:5;23286:16;;23276:32;;;:::o;23314:86::-;23349:7;23389:4;23382:5;23378:16;23367:27;;23357:43;;;:::o;23406:121::-;23464:9;23497:24;23515:5;23497:24;:::i;:::-;23484:37;;23474:53;;;:::o;23533:307::-;23601:1;23611:113;23625:6;23622:1;23619:13;23611:113;;;23710:1;23705:3;23701:11;23695:18;23691:1;23686:3;23682:11;23675:39;23647:2;23644:1;23640:10;23635:15;;23611:113;;;23742:6;23739:1;23736:13;23733:2;;;23822:1;23813:6;23808:3;23804:16;23797:27;23733:2;23582:258;;;;:::o;23846:233::-;23885:3;23908:24;23926:5;23908:24;:::i;:::-;23899:33;;23954:66;23947:5;23944:77;23941:2;;;24024:18;;:::i;:::-;23941:2;24071:1;24064:5;24060:13;24053:20;;23889:190;;;:::o;24085:176::-;24117:1;24134:20;24152:1;24134:20;:::i;:::-;24129:25;;24168:20;24186:1;24168:20;:::i;:::-;24163:25;;24207:1;24197:2;;24212:18;;:::i;:::-;24197:2;24253:1;24250;24246:9;24241:14;;24119:142;;;;:::o;24267:180::-;24315:77;24312:1;24305:88;24412:4;24409:1;24402:15;24436:4;24433:1;24426:15;24453:180;24501:77;24498:1;24491:88;24598:4;24595:1;24588:15;24622:4;24619:1;24612:15;24639:102;24680:6;24731:2;24727:7;24722:2;24715:5;24711:14;24707:28;24697:38;;24687:54;;;:::o;24747:222::-;24887:34;24883:1;24875:6;24871:14;24864:58;24956:5;24951:2;24943:6;24939:15;24932:30;24853:116;:::o;24975:229::-;25115:34;25111:1;25103:6;25099:14;25092:58;25184:12;25179:2;25171:6;25167:15;25160:37;25081:123;:::o;25210:221::-;25350:34;25346:1;25338:6;25334:14;25327:58;25419:4;25414:2;25406:6;25402:15;25395:29;25316:115;:::o;25437:221::-;25577:34;25573:1;25565:6;25561:14;25554:58;25646:4;25641:2;25633:6;25629:15;25622:29;25543:115;:::o;25664:177::-;25804:29;25800:1;25792:6;25788:14;25781:53;25770:71;:::o;25847:171::-;25987:23;25983:1;25975:6;25971:14;25964:47;25953:65;:::o;26024:222::-;26164:34;26160:1;26152:6;26148:14;26141:58;26233:5;26228:2;26220:6;26216:15;26209:30;26130:116;:::o;26252:220::-;26392:34;26388:1;26380:6;26376:14;26369:58;26461:3;26456:2;26448:6;26444:15;26437:28;26358:114;:::o;26478:182::-;26618:34;26614:1;26606:6;26602:14;26595:58;26584:76;:::o;26666:228::-;26806:34;26802:1;26794:6;26790:14;26783:58;26875:11;26870:2;26862:6;26858:15;26851:36;26772:122;:::o;26900:224::-;27040:34;27036:1;27028:6;27024:14;27017:58;27109:7;27104:2;27096:6;27092:15;27085:32;27006:118;:::o;27130:223::-;27270:34;27266:1;27258:6;27254:14;27247:58;27339:6;27334:2;27326:6;27322:15;27315:31;27236:117;:::o;27359:173::-;27499:25;27495:1;27487:6;27483:14;27476:49;27465:67;:::o;27538:174::-;27678:26;27674:1;27666:6;27662:14;27655:50;27644:68;:::o;27718:122::-;27791:24;27809:5;27791:24;:::i;:::-;27784:5;27781:35;27771:2;;27830:1;27827;27820:12;27771:2;27761:79;:::o;27846:116::-;27916:21;27931:5;27916:21;:::i;:::-;27909:5;27906:32;27896:2;;27952:1;27949;27942:12;27896:2;27886:76;:::o;27968:122::-;28041:24;28059:5;28041:24;:::i;:::-;28034:5;28031:35;28021:2;;28080:1;28077;28070:12;28021:2;28011:79;:::o

Swarm Source

ipfs://182547294dc22454f8876e4dc901d71cd53e7add01997f2e1aef16181086eb29

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.