Contract 0xb90535f84dec1546069f51bbd099822fb17a9e0c

 
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xc2abe8a183cf64455ea915bb3d872e0163f60bd5be790599bfa2d91e93378268Approve136562272021-12-21 1:54:1831 days 2 hrs ago0x9a8c924e881c61517aefdf2daf85d05d4ac85a36 IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000124485
0x24c7424a4c3ace0faba69ae9b23795a172e8b73ac742f9db5858ed5eecf13f3eApprove136562242021-12-21 1:54:0931 days 2 hrs ago0x9a8c924e881c61517aefdf2daf85d05d4ac85a36 IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000124485
0xce3b3eede06507e144fbb6f97fbee248fd26238306271392a4ebdd1431b1b529Approve136562102021-12-21 1:53:2731 days 2 hrs ago0x9a8c924e881c61517aefdf2daf85d05d4ac85a36 IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000072745
0xa7b72369fb4fa4da99c99d3a659714b01eb52adab814f324f4cf67aafbb13f47Approve136360062021-12-20 9:01:5331 days 19 hrs ago0xb493f7827cd757f08d52313bfc9d4adb2c7d03dd IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
0xe69935479b452724fb2338dcf9595f0d94e0bb97b24ef1f63ee4027fcd4a19e1Approve135752742021-12-18 6:23:0633 days 22 hrs ago0xa3673f6855179363791b427db9b8312896a60f73 IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
0x27e2d10c4a38782e6372d0a0af0a649aae15b6c062c3e6126941aea60886ce7eApprove135662472021-12-17 22:51:3734 days 5 hrs ago0x7122890f4bae87333a81118f024095569b92b4aa IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000266886
0xe780ab16fbe2bfe3655b561aa8bd0cfbc8a850fb8bfd6973852a63ca6a4996d9Approve134979002021-12-15 13:42:4036 days 14 hrs ago0x219896848dfcd60aa0afdcc7a95d505724503d25 IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
0x0c05f088f78b9fda8648588df0de8af843e0f0f3963ed39697cac78c32a3cac1Approve134871072021-12-15 4:38:5636 days 23 hrs ago0x4ab529fb168ce4b0403d3ee33d50e5645e9667df IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
0x57357f4e061670b1f9b4ac27eb86197d1ef46cc5bfe0f32363da258a1602fbe5Approve134110152021-12-12 12:50:4039 days 15 hrs ago0xafc7bd74e5044d78e1601c83646b8a6e969c5910 IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
0xda52405bc687f4901672f1e287afa45fce6ec28d5ce4ef8a75bff0a1f03b0ba0Approve133395152021-12-10 0:58:2442 days 3 hrs ago0x7c8a195635a60453043b5ea900ea89384b524f7a IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000266886
0x0605c7dff3ec6bb985f8b0a14956bdba08109303f6fd5b82b35ce931aee7c846Manualsend133251902021-12-09 12:59:2642 days 15 hrs ago0xcd7469de67f56d9dc980776a59ad57869c78e86a IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000152425
0x83e89d74144996b5b225bd989ca3f56b4ffce94b9d4dfef64e66b77135ae9af4Manualswap133251782021-12-09 12:58:5042 days 15 hrs ago0xcd7469de67f56d9dc980776a59ad57869c78e86a IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.00099064
0xc6b63e4c8dba3259cb25df348fc8964e9ecea268a807f5a28c20b2d11e7ddcdcApprove133233132021-12-09 11:24:4042 days 17 hrs ago0x2bf845108c47256e68fe798cd79a0fbe5859d146 IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
0xe96373575e9e50e04a3279b6f90938bd280bf945012b42c2bc0e294193a60f18Approve132965292021-12-08 12:50:4843 days 15 hrs ago0xff512848f6938930af6953d61d389b1132987f9d IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
0xedb73c4215ad228c347be7aa53999268a4ff65fe9c20882de433199ebfe1af87Approve132765542021-12-07 17:15:2644 days 11 hrs ago0x3816b377b419cc13384f049247d4435149188e7c IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
0x3a0b70cf508bde705186d76cb3af575f71591bfccc58508109fed88f2746f808Approve132545662021-12-06 21:49:0445 days 6 hrs ago0x1e2fd0cb2081c62a04fc2a92abb92660dbb8aeab IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
0x8be4e108fb2760c41460f80a84fec40365d8e8183f21bffef2e3c1c27c8d2e0dApprove131068832021-12-01 15:51:5450 days 12 hrs ago0x9139544e3fd3c800fecc1240c4bfa2e851324d87 IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000072745
0x99447d7bde40a4194080ea4df5a17a78576a5817d5d93b77c08a59b333f91195Approve130938982021-12-01 3:42:3051 days 56 mins ago0x32161b3a15f0b885dce38adbb3213b8b4a1053bf IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
0xb98324c65a293a02e09fa54e92d1dd91bd476c04d81b56c014023ffe5c763939Approve130559122021-11-29 18:03:2952 days 10 hrs ago0x377fa7dff2fd44fa7668376502fee69c1dc84aeb IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000126405
0xd9aed4456a855034058c313eb4743276d2816797a88e54219b8da4c518fac895Approve130558892021-11-29 18:02:1652 days 10 hrs ago0x377fa7dff2fd44fa7668376502fee69c1dc84aeb IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
0xb3a493453a502b4440c7cc92d28b69a54b48ad2fbf152870865a600e939c743eApprove130136172021-11-28 3:33:4254 days 1 hr ago0x91e998e1fe97d82ed195d7bb94250f84ab7aff1b IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
0x3396a664b64bebfaee2d4948d1141d5079ce3cf4d3101ed4e98ebb9ea24f6a04Approve129999032021-11-27 15:21:3454 days 13 hrs ago0xfcd2180f5ed44f86ab5edf18fae67d6fc57edeaa IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
0x163f34a2b3d1e65b9377849c10efae22fc423d6a13b1a3ad32ebb2a5e8adb5fcApprove129536412021-11-25 20:44:4256 days 7 hrs ago0x0435baa3a34a0dfd25453e6e7e4e0e2b7e9e77fc IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
0x85f7a803e8953b363f1a95d44a44cef326f80e9899ccf75b4682a17493b5d572Approve129523082021-11-25 19:33:0156 days 9 hrs ago0x62303a8b9547e64a1bfb376b02e9aa6658345512 IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
0xfb276b8e7d3e736f854a34229a4934459fd1601481f2ec9cf2a9f0f50561ed01Approve129432922021-11-25 11:23:1356 days 17 hrs ago0x4b085c69f8048416d91df279854bf3f0a065d230 IN  0xb90535f84dec1546069f51bbd099822fb17a9e0c0 BNB0.000222405
[ Download CSV Export 
Latest 8 internal transactions
Parent Txn Hash Block From To Value
0x0605c7dff3ec6bb985f8b0a14956bdba08109303f6fd5b82b35ce931aee7c846133251902021-12-09 12:59:2642 days 15 hrs ago 0xb90535f84dec1546069f51bbd099822fb17a9e0c0xcd7469de67f56d9dc980776a59ad57869c78e86a0.022399059140561545 BNB
0x83e89d74144996b5b225bd989ca3f56b4ffce94b9d4dfef64e66b77135ae9af4133251782021-12-09 12:58:5042 days 15 hrs ago PancakeSwap: Router v2 0xb90535f84dec1546069f51bbd099822fb17a9e0c0.022399059140561545 BNB
0x31bc23f108d38174f088b298dcf1df7a67a3c0bb97ac2a14a77c00e08387fde4128971342021-11-23 18:51:4158 days 9 hrs ago 0xb90535f84dec1546069f51bbd099822fb17a9e0c0xcd7469de67f56d9dc980776a59ad57869c78e86a0.042529560601564303 BNB
0x66dabdb69e37f54cc038752ece11c7e9c61d3cd850343639e8372344a8feb695128971302021-11-23 18:51:2958 days 9 hrs ago PancakeSwap: Router v2 0xb90535f84dec1546069f51bbd099822fb17a9e0c0.042529560601564303 BNB
0x3991cb9f7dbbb95f8e8afb028f6a22120397ab0d727f7f80560d4c514ad95d64128788282021-11-23 2:57:4059 days 1 hr ago 0xb90535f84dec1546069f51bbd099822fb17a9e0c0xcd7469de67f56d9dc980776a59ad57869c78e86a0.209809993894261089 BNB
0x15f858bbd4e3decc86c980625af435e310f784bca0cd8028ca35c330b19a563c128788192021-11-23 2:57:1359 days 1 hr ago PancakeSwap: Router v2 0xb90535f84dec1546069f51bbd099822fb17a9e0c0.209809993894261089 BNB
0x303a0380fcba20e823e3933ea505d6c9d8fbd00e8ee4986e813a6c90d120dff0128638522021-11-22 14:04:0759 days 14 hrs ago 0xb90535f84dec1546069f51bbd099822fb17a9e0c0xcd7469de67f56d9dc980776a59ad57869c78e86a0.258139686351813085 BNB
0xe7f418beadb220e80ad4c01e8cbd196d0692553f35cf147c9cf0715589b2e362128638472021-11-22 14:03:5259 days 14 hrs ago PancakeSwap: Router v2 0xb90535f84dec1546069f51bbd099822fb17a9e0c0.258139686351813085 BNB
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
PhillBonk

Compiler Version
v0.8.9+commit.e5eed63a

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2021-11-22
*/

// SPDX-License-Identifier: Unlicensed

pragma solidity 0.8.9;

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

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

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

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

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

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

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

    event Transfer(address indexed from, address indexed to, uint value);
    event Approval(address indexed owner, address indexed spender, uint value);
}

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

library SafeMath {
    function add(uint a1, uint b1) internal pure returns (uint) {
        uint c1 = a1 + b1;
        require(c1 >= a1, "SafeMath: addition overflow");
        return c1;
    }

    function sub(uint a1, uint b1) internal pure returns (uint) {
        return sub(a1, b1, "SafeMath: subtraction overflow");
    }

    function sub(
        uint a1,
        uint b1,
        string memory errorMessage
    ) internal pure returns (uint) {
        require(b1 <= a1, errorMessage);
        uint c1 = a1 - b1;
        return c1;
    }

    function mul(uint a1, uint b1) internal pure returns (uint) {
        if (a1 == 0) {
            return 0;
        }
        uint c1 = a1 * b1;
        require(c1 / a1 == b1, "SafeMath: multiplication overflow");
        return c1;
    }

    function div(uint a1, uint b1) internal pure returns (uint) {
        return div(a1, b1, "SafeMath: division by zero");
    }

    function div(
        uint a1,
        uint b1,
        string memory errorMessage
    ) internal pure returns (uint) {
        require(b1 > 0, errorMessage);
        uint c1 = a1 / b1;
        return c1;
    }
}

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 PhillBonk is Context, IERC20, Ownable {
    
    using SafeMath for uint;

    string private constant _name = "PhillBonk";
    string private constant _symbol = "PHIBO";
    uint8 private constant _decimals = 9;

    mapping(address => uint) private _rOwned;
    mapping(address => uint) private _tOwned;
    mapping(address => mapping(address => uint)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    uint private constant MAX = ~uint(0);
    uint private constant _tTotal = 1000000000000 * 10**9;
    uint private _rTotal = (MAX - (MAX % _tTotal));
    uint private _tFeeTotal;
    
    //Buy Fee
    uint private _redisFeeOnBuy = 5;
    uint private _taxFeeOnBuy = 2;
    
    //Sell Fee
    uint private _redisFeeOnSell = 5;
    uint private _taxFeeOnSell = 2;
    
    //Original Fee
    uint private _redisFee = _redisFeeOnSell;
    uint private _taxFee = _taxFeeOnSell;
    
    uint private _previousredisFee = _redisFee;
    uint private _previoustaxFee = _taxFee;
    
    mapping (address => bool) public preTrader;
    mapping(address => uint) private cooldown;
    
    address payable private _marketingAddress = payable(0xCD7469De67f56D9DC980776a59aD57869c78E86A);
    
    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
    
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = true;
    
    uint public _maxTxAmount = 1000000000000 * 10**9;
    uint public _maxWalletSize = 1000000000000 * 10**9;
    uint public _swapTokensAtAmount = 1000000000000 * 10**9;

    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor() {
        
        _rOwned[_msgSender()] = _rTotal;
        
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x10ED43C718714eb63d5aA57B78B54704E256024E);
        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_marketingAddress] = true;
        
        preTrader[owner()] = 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 (uint) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint) {
        return tokenFromReflection(_rOwned[account]);
    }

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

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

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

    function transferFrom(address sender, address recipient, uint 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(uint rAmount) private view returns (uint) {
        require(
            rAmount <= _rTotal,
            "Amount must be less than total reflections"
        );
        uint currentRate = _getRate();
        return rAmount.div(currentRate);
    }

    function removeAllFee() private {
        if (_redisFee == 0 && _taxFee == 0) return;
    
        _previousredisFee = _redisFee;
        _previoustaxFee = _taxFee;
        
        _redisFee = 0;
        _taxFee = 0;
    }

    function restoreAllFee() private {
        _redisFee = _previousredisFee;
        _taxFee = _previoustaxFee;
    }

    function _approve(address owner, address spender, uint 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, uint 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()) {
            
            //Trade start check
            if (!tradingOpen) {
                require(preTrader[from], "TOKEN: This account cannot send tokens until trading is enabled");
            }
              
            require(amount <= _maxTxAmount, "TOKEN: Max Transaction Limit");
            
            
            if(to != uniswapV2Pair) {
                require(balanceOf(to) + amount < _maxWalletSize, "TOKEN: Balance exceeds wallet size!");
            }
            
            uint contractTokenBalance = balanceOf(address(this));
            bool canSwap = contractTokenBalance >= _swapTokensAtAmount;

            if(contractTokenBalance >= _maxTxAmount)
            {
                contractTokenBalance = _maxTxAmount;
            }
            
            if (canSwap && !inSwap && from != uniswapV2Pair && swapEnabled) {
                swapTokensForEth(contractTokenBalance);
                uint contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }
        
        bool takeFee = true;

        //Transfer Tokens
        if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) {
            takeFee = false;
        } else {
            
            //Set Fee for Buys
            if(from == uniswapV2Pair && to != address(uniswapV2Router)) {
                _redisFee = _redisFeeOnBuy;
                _taxFee = _taxFeeOnBuy;
            }
    
            //Set Fee for Sells
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                _redisFee = _redisFeeOnSell;
                _taxFee = _taxFeeOnSell;
            }
            
        }

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

    function swapTokensForEth(uint 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(uint amount) private {
        _marketingAddress.transfer(amount);
    }

    function setTrading(bool _tradingOpen) public onlyOwner {
        tradingOpen = _tradingOpen;
    }

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

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

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

    function _transferStandard(address sender, address recipient, uint tAmount) private {
        (uint rAmount, uint rTransferAmount, uint rFee, uint tTransferAmount, uint tFee, uint 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 _takeTeam(uint tTeam) private {
        uint currentRate = _getRate();
        uint rTeam = tTeam.mul(currentRate);
        _rOwned[address(this)] = _rOwned[address(this)].add(rTeam);
    }

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

    receive() external payable {}

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

    function _getTValues(uint tAmount, uint redisFee, uint taxFee) private pure returns (uint, uint, uint) {
        uint tFee = tAmount.mul(redisFee).div(100);
        uint tTeam = tAmount.mul(taxFee).div(100);
        uint tTransferAmount = tAmount.sub(tFee).sub(tTeam);

        return (tTransferAmount, tFee, tTeam);
    }

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

        return (rAmount, rTransferAmount, rFee);
    }

    function _getRate() private view returns (uint) {
        (uint rSupply, uint tSupply) = _getCurrentSupply();

        return rSupply.div(tSupply);
    }

    function _getCurrentSupply() private view returns (uint, uint) {
        uint rSupply = _rTotal;
        uint tSupply = _tTotal;
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
    
        return (rSupply, tSupply);
    }
    
    function setFee(uint redisFeeOnBuy, uint redisFeeOnSell, uint taxFeeOnBuy, uint taxFeeOnSell) public onlyOwner {
        _redisFeeOnBuy = redisFeeOnBuy;
        _redisFeeOnSell = redisFeeOnSell;
        
        _taxFeeOnBuy = taxFeeOnBuy;
        _taxFeeOnSell = taxFeeOnSell;
    }

    //Set minimum tokens required to swap.
    function setMinSwapTokensThreshold(uint swapTokensAtAmount) external {
        _swapTokensAtAmount = swapTokensAtAmount;
    }
    
    //Set minimum tokens required to swap.
    function toggleSwap(bool _swapEnabled) public onlyOwner {
        swapEnabled = _swapEnabled;
    }
    
    //Set MAx transaction
    function setMaxTxnAmount(uint maxTxAmount) public onlyOwner {
        _maxTxAmount = maxTxAmount;
    }
    
    function setMaxWalletSize(uint maxWalletSize) public onlyOwner {
        _maxWalletSize = maxWalletSize;
    }
 
    function allowPreTrading(address account, bool allowed) public onlyOwner {
        require(preTrader[account] != allowed, "TOKEN: Already enabled.");
        preTrader[account] = allowed;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"allowed","type":"bool"}],"name":"allowPreTrading","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":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"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":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"preTrader","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"redisFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"redisFeeOnSell","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnSell","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"setMaxTxnAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletSize","type":"uint256"}],"name":"setMaxWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"swapTokensAtAmount","type":"uint256"}],"name":"setMinSwapTokensThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_tradingOpen","type":"bool"}],"name":"setTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"toggleSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526200001b683635c9adc5dea000006000196200036a565b62000029906000196200038d565b6006556005600881905560026009819055600a829055600b819055600c829055600d819055600e91909155600f55601280546001600160a01b03191673cd7469de67f56d9dc980776a59ad57869c78e86a1790556014805461ffff60a81b1916600160b01b179055683635c9adc5dea0000060158190556016819055601755348015620000b557600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506006543360009081526002602090815260409182902092909255601380546001600160a01b0319167310ed43c718714eb63d5aa57b78b54704e256024e908117909155815163c45a015560e01b815291519092839263c45a01559260048083019392829003018186803b1580156200016e57600080fd5b505afa15801562000183573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001a99190620003b3565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015620001f257600080fd5b505afa15801562000207573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200022d9190620003b3565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b1580156200027657600080fd5b505af11580156200028b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002b19190620003b3565b601480546001600160a01b0319166001600160a01b039283161790556000805482168152600560209081526040808320805460ff199081166001908117909255308552828520805482168317905560125486168552828520805482168317905584549095168452601083528184208054909516179093559151683635c9adc5dea00000815233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350620003e5565b6000826200038857634e487b7160e01b600052601260045260246000fd5b500690565b600082821015620003ae57634e487b7160e01b600052601160045260246000fd5b500390565b600060208284031215620003c657600080fd5b81516001600160a01b0381168114620003de57600080fd5b9392505050565b61190780620003f56000396000f3fe6080604052600436106101855760003560e01c806374010ece116100d157806398a5c3151161008a578063bdd795ef11610064578063bdd795ef14610479578063c3c8cd80146104a9578063dd62ed3e146104be578063ea1644d51461050457600080fd5b806398a5c31514610419578063a2a957bb14610439578063a9059cbb1461045957600080fd5b806374010ece146103615780637d1db4a5146103815780638da5cb5b146103975780638f70ccf7146103b55780638f9a55c0146103d557806395d89b41146103eb57600080fd5b80632fd689e31161013e5780636d8aa8f8116101185780636d8aa8f8146102f75780636fc3eaec1461031757806370a082311461032c578063715018a61461034c57600080fd5b80632fd689e3146102a5578063313ce567146102bb57806349bd5a5e146102d757600080fd5b806306fdde0314610191578063095ea7b3146101d55780631694505e1461020557806318160ddd1461023d57806323b872dd146102635780632f9c45691461028357600080fd5b3661018c57005b600080fd5b34801561019d57600080fd5b506040805180820190915260098152685068696c6c426f6e6b60b81b60208201525b6040516101cc919061156d565b60405180910390f35b3480156101e157600080fd5b506101f56101f03660046115d7565b610524565b60405190151581526020016101cc565b34801561021157600080fd5b50601354610225906001600160a01b031681565b6040516001600160a01b0390911681526020016101cc565b34801561024957600080fd5b50683635c9adc5dea000005b6040519081526020016101cc565b34801561026f57600080fd5b506101f561027e366004611603565b61053b565b34801561028f57600080fd5b506102a361029e366004611659565b6105a4565b005b3480156102b157600080fd5b5061025560175481565b3480156102c757600080fd5b50604051600981526020016101cc565b3480156102e357600080fd5b50601454610225906001600160a01b031681565b34801561030357600080fd5b506102a361031236600461168e565b610671565b34801561032357600080fd5b506102a36106b9565b34801561033857600080fd5b506102556103473660046116a9565b6106e6565b34801561035857600080fd5b506102a3610708565b34801561036d57600080fd5b506102a361037c3660046116c6565b61077c565b34801561038d57600080fd5b5061025560155481565b3480156103a357600080fd5b506000546001600160a01b0316610225565b3480156103c157600080fd5b506102a36103d036600461168e565b6107ab565b3480156103e157600080fd5b5061025560165481565b3480156103f757600080fd5b50604080518082019091526005815264504849424f60d81b60208201526101bf565b34801561042557600080fd5b506102a36104343660046116c6565b601755565b34801561044557600080fd5b506102a36104543660046116df565b6107f3565b34801561046557600080fd5b506101f56104743660046115d7565b610831565b34801561048557600080fd5b506101f56104943660046116a9565b60106020526000908152604090205460ff1681565b3480156104b557600080fd5b506102a361083e565b3480156104ca57600080fd5b506102556104d9366004611711565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561051057600080fd5b506102a361051f3660046116c6565b610874565b60006105313384846108a3565b5060015b92915050565b60006105488484846109c7565b61059a8433610595856040518060600160405280602881526020016118aa602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610e30565b6108a3565b5060019392505050565b6000546001600160a01b031633146105d75760405162461bcd60e51b81526004016105ce9061174a565b60405180910390fd5b6001600160a01b03821660009081526010602052604090205460ff16151581151514156106465760405162461bcd60e51b815260206004820152601760248201527f544f4b454e3a20416c726561647920656e61626c65642e00000000000000000060448201526064016105ce565b6001600160a01b03919091166000908152601060205260409020805460ff1916911515919091179055565b6000546001600160a01b0316331461069b5760405162461bcd60e51b81526004016105ce9061174a565b60148054911515600160b01b0260ff60b01b19909216919091179055565b6012546001600160a01b0316336001600160a01b0316146106d957600080fd5b476106e381610e6a565b50565b6001600160a01b03811660009081526002602052604081205461053590610ea8565b6000546001600160a01b031633146107325760405162461bcd60e51b81526004016105ce9061174a565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107a65760405162461bcd60e51b81526004016105ce9061174a565b601555565b6000546001600160a01b031633146107d55760405162461bcd60e51b81526004016105ce9061174a565b60148054911515600160a01b0260ff60a01b19909216919091179055565b6000546001600160a01b0316331461081d5760405162461bcd60e51b81526004016105ce9061174a565b600893909355600a91909155600955600b55565b60006105313384846109c7565b6012546001600160a01b0316336001600160a01b03161461085e57600080fd5b6000610869306106e6565b90506106e381610f2c565b6000546001600160a01b0316331461089e5760405162461bcd60e51b81526004016105ce9061174a565b601655565b6001600160a01b0383166109055760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105ce565b6001600160a01b0382166109665760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105ce565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a2b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105ce565b6001600160a01b038216610a8d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105ce565b60008111610aef5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016105ce565b6000546001600160a01b03848116911614801590610b1b57506000546001600160a01b03838116911614155b15610d2357601454600160a01b900460ff16610bbf576001600160a01b03831660009081526010602052604090205460ff16610bbf5760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c65640060648201526084016105ce565b601554811115610c115760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d69740000000060448201526064016105ce565b6014546001600160a01b03838116911614610c965760165481610c33846106e6565b610c3d9190611795565b10610c965760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b60648201526084016105ce565b6000610ca1306106e6565b601754601554919250821015908210610cba5760155491505b808015610cd15750601454600160a81b900460ff16155b8015610ceb57506014546001600160a01b03868116911614155b8015610d005750601454600160b01b900460ff165b15610d2057610d0e82610f2c565b478015610d1e57610d1e47610e6a565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff1680610d6557506001600160a01b03831660009081526005602052604090205460ff165b80610d9757506014546001600160a01b03858116911614801590610d9757506014546001600160a01b03848116911614155b15610da457506000610e1e565b6014546001600160a01b038581169116148015610dcf57506013546001600160a01b03848116911614155b15610de157600854600c55600954600d555b6014546001600160a01b038481169116148015610e0c57506013546001600160a01b03858116911614155b15610e1e57600a54600c55600b54600d555b610e2a848484846110b5565b50505050565b60008184841115610e545760405162461bcd60e51b81526004016105ce919061156d565b506000610e6184866117ad565b95945050505050565b6012546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610ea4573d6000803e3d6000fd5b5050565b6000600654821115610f0f5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016105ce565b6000610f196110e3565b9050610f258382611106565b9392505050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610f7457610f746117c4565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b158015610fc857600080fd5b505afa158015610fdc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100091906117da565b81600181518110611013576110136117c4565b6001600160a01b03928316602091820292909201015260135461103991309116846108a3565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906110729085906000908690309042906004016117f7565b600060405180830381600087803b15801561108c57600080fd5b505af11580156110a0573d6000803e3d6000fd5b50506014805460ff60a81b1916905550505050565b806110c2576110c2611148565b6110cd848484611176565b80610e2a57610e2a600e54600c55600f54600d55565b60008060006110f061126d565b90925090506110ff8282611106565b9250505090565b6000610f2583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506112af565b600c541580156111585750600d54155b1561115f57565b600c8054600e55600d8054600f5560009182905555565b600080600080600080611188876112dd565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506111ba908761133a565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546111e9908661137c565b6001600160a01b03891660009081526002602052604090205561120b816113db565b6112158483611425565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161125a91815260200190565b60405180910390a3505050505050505050565b6006546000908190683635c9adc5dea000006112898282611106565b8210156112a657505060065492683635c9adc5dea0000092509050565b90939092509050565b600081836112d05760405162461bcd60e51b81526004016105ce919061156d565b506000610e618486611868565b60008060008060008060008060006112fa8a600c54600d54611449565b925092509250600061130a6110e3565b9050600080600061131d8e87878761149e565b919e509c509a509598509396509194505050505091939550919395565b6000610f2583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e30565b6000806113898385611795565b905083811015610f255760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016105ce565b60006113e56110e3565b905060006113f383836114ee565b30600090815260026020526040902054909150611410908261137c565b30600090815260026020526040902055505050565b600654611432908361133a565b600655600754611442908261137c565b6007555050565b6000808080611463606461145d89896114ee565b90611106565b90506000611476606461145d8a896114ee565b9050600061148e826114888b8661133a565b9061133a565b9992985090965090945050505050565b60008080806114ad88866114ee565b905060006114bb88876114ee565b905060006114c988886114ee565b905060006114db82611488868661133a565b939b939a50919850919650505050505050565b6000826114fd57506000610535565b6000611509838561188a565b9050826115168583611868565b14610f255760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016105ce565b600060208083528351808285015260005b8181101561159a5785810183015185820160400152820161157e565b818111156115ac576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b03811681146106e357600080fd5b600080604083850312156115ea57600080fd5b82356115f5816115c2565b946020939093013593505050565b60008060006060848603121561161857600080fd5b8335611623816115c2565b92506020840135611633816115c2565b929592945050506040919091013590565b8035801515811461165457600080fd5b919050565b6000806040838503121561166c57600080fd5b8235611677816115c2565b915061168560208401611644565b90509250929050565b6000602082840312156116a057600080fd5b610f2582611644565b6000602082840312156116bb57600080fd5b8135610f25816115c2565b6000602082840312156116d857600080fd5b5035919050565b600080600080608085870312156116f557600080fd5b5050823594602084013594506040840135936060013592509050565b6000806040838503121561172457600080fd5b823561172f816115c2565b9150602083013561173f816115c2565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600082198211156117a8576117a861177f565b500190565b6000828210156117bf576117bf61177f565b500390565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156117ec57600080fd5b8151610f25816115c2565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156118475784516001600160a01b031683529383019391830191600101611822565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261188557634e487b7160e01b600052601260045260246000fd5b500490565b60008160001904831182151516156118a4576118a461177f565b50029056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122011d0957a7cf7a453276eb33166b3b10c1245e5e901dcd84ca55c3b66598ff15464736f6c63430008090033

Deployed ByteCode Sourcemap

3512:12058:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5949:83;;;;;;;;;;-1:-1:-1;6019:5:0;;;;;;;;;;;;-1:-1:-1;;;6019:5:0;;;;5949:83;;;;;;;:::i;:::-;;;;;;;;6789:158;;;;;;;;;;-1:-1:-1;6789:158:0;;;;;:::i;:::-;;:::i;:::-;;;1237:14:1;;1230:22;1212:41;;1200:2;1185:18;6789:158:0;1072:187:1;4782:41:0;;;;;;;;;;-1:-1:-1;4782:41:0;;;;-1:-1:-1;;;;;4782:41:0;;;;;;-1:-1:-1;;;;;1454:32:1;;;1436:51;;1424:2;1409:18;4782:41:0;1264:229:1;6226:92:0;;;;;;;;;;-1:-1:-1;4045:21:0;6226:92;;;1644:25:1;;;1632:2;1617:18;6226:92:0;1498:177:1;6955:409:0;;;;;;;;;;-1:-1:-1;6955:409:0;;;;;:::i;:::-;;:::i;15371:196::-;;;;;;;;;;-1:-1:-1;15371:196:0;;;;;:::i;:::-;;:::i;:::-;;5092:55;;;;;;;;;;;;;;;;6135:83;;;;;;;;;;-1:-1:-1;6135:83:0;;3737:1;2768:36:1;;2756:2;2741:18;6135:83:0;2626:184:1;4830:28:0;;;;;;;;;;-1:-1:-1;4830:28:0;;;;-1:-1:-1;;;;;4830:28:0;;;14993:101;;;;;;;;;;-1:-1:-1;14993:101:0;;;;;:::i;:::-;;:::i;11533:193::-;;;;;;;;;;;;;:::i;6326:135::-;;;;;;;;;;-1:-1:-1;6326:135:0;;;;;:::i;:::-;;:::i;1498:148::-;;;;;;;;;;;;;:::i;15133:105::-;;;;;;;;;;-1:-1:-1;15133:105:0;;;;;:::i;:::-;;:::i;4980:48::-;;;;;;;;;;;;;;;;1284:79;;;;;;;;;;-1:-1:-1;1322:7:0;1349:6;-1:-1:-1;;;;;1349:6:0;1284:79;;11222:101;;;;;;;;;;-1:-1:-1;11222:101:0;;;;;:::i;:::-;;:::i;5035:50::-;;;;;;;;;;;;;;;;6040:87;;;;;;;;;;-1:-1:-1;6112:7:0;;;;;;;;;;;;-1:-1:-1;;;6112:7:0;;;;6040:87;;14809:128;;;;;;;;;;-1:-1:-1;14809:128:0;;;;;:::i;:::-;14889:19;:40;14809:128;14468:289;;;;;;;;;;-1:-1:-1;14468:289:0;;;;;:::i;:::-;;:::i;6469:164::-;;;;;;;;;;-1:-1:-1;6469:164:0;;;;;:::i;:::-;;:::i;4571:42::-;;;;;;;;;;-1:-1:-1;4571:42:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;11331:194;;;;;;;;;;;;;:::i;6641:140::-;;;;;;;;;;-1:-1:-1;6641:140:0;;;;;:::i;:::-;-1:-1:-1;;;;;6746:18:0;;;6722:4;6746:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6641:140;15250:112;;;;;;;;;;-1:-1:-1;15250:112:0;;;;;:::i;:::-;;:::i;6789:158::-;6861:4;6878:39;181:10;6901:7;6910:6;6878:8;:39::i;:::-;-1:-1:-1;6935:4:0;6789:158;;;;;:::o;6955:409::-;7050:4;7067:36;7077:6;7085:9;7096:6;7067:9;:36::i;:::-;7114:220;7137:6;181:10;7185:138;7241:6;7185:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7185:19:0;;;;;;:11;:19;;;;;;;;181:10;7185:33;;;;;;;;;;:37;:138::i;:::-;7114:8;:220::i;:::-;-1:-1:-1;7352:4:0;6955:409;;;;;:::o;15371:196::-;1411:6;;-1:-1:-1;;;;;1411:6:0;181:10;1411:22;1403:67;;;;-1:-1:-1;;;1403:67:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;15463:18:0;::::1;;::::0;;;:9:::1;:18;::::0;;;;;::::1;;:29;;::::0;::::1;;;;15455:65;;;::::0;-1:-1:-1;;;15455:65:0;;4991:2:1;15455:65:0::1;::::0;::::1;4973:21:1::0;5030:2;5010:18;;;5003:30;5069:25;5049:18;;;5042:53;5112:18;;15455:65:0::1;4789:347:1::0;15455:65:0::1;-1:-1:-1::0;;;;;15531:18:0;;;::::1;;::::0;;;:9:::1;:18;::::0;;;;:28;;-1:-1:-1;;15531:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;15371:196::o;14993:101::-;1411:6;;-1:-1:-1;;;;;1411:6:0;181:10;1411:22;1403:67;;;;-1:-1:-1;;;1403:67:0;;;;;;;:::i;:::-;15060:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;15060:26:0::1;-1:-1:-1::0;;;;15060:26:0;;::::1;::::0;;;::::1;::::0;;14993:101::o;11533:193::-;11599:17;;-1:-1:-1;;;;;11599:17:0;181:10;-1:-1:-1;;;;;11583:33:0;;11575:42;;;;;;11654:21;11686:32;11654:21;11686:12;:32::i;:::-;11564:162;11533:193::o;6326:135::-;-1:-1:-1;;;;;6436:16:0;;6392:4;6436:16;;;:7;:16;;;;;;6416:37;;:19;:37::i;1498:148::-;1411:6;;-1:-1:-1;;;;;1411:6:0;181:10;1411:22;1403:67;;;;-1:-1:-1;;;1403:67:0;;;;;;;:::i;:::-;1605:1:::1;1589:6:::0;;1568:40:::1;::::0;-1:-1:-1;;;;;1589:6:0;;::::1;::::0;1568:40:::1;::::0;1605:1;;1568:40:::1;1636:1;1619:19:::0;;-1:-1:-1;;;;;;1619:19:0::1;::::0;;1498:148::o;15133:105::-;1411:6;;-1:-1:-1;;;;;1411:6:0;181:10;1411:22;1403:67;;;;-1:-1:-1;;;1403:67:0;;;;;;;:::i;:::-;15204:12:::1;:26:::0;15133:105::o;11222:101::-;1411:6;;-1:-1:-1;;;;;1411:6:0;181:10;1411:22;1403:67;;;;-1:-1:-1;;;1403:67:0;;;;;;;:::i;:::-;11289:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;11289:26:0::1;-1:-1:-1::0;;;;11289:26:0;;::::1;::::0;;;::::1;::::0;;11222:101::o;14468:289::-;1411:6;;-1:-1:-1;;;;;1411:6:0;181:10;1411:22;1403:67;;;;-1:-1:-1;;;1403:67:0;;;;;;;:::i;:::-;14590:14:::1;:30:::0;;;;14631:15:::1;:32:::0;;;;14684:12:::1;:26:::0;14721:13:::1;:28:::0;14468:289::o;6469:164::-;6544:4;6561:42;181:10;6585:9;6596:6;6561:9;:42::i;11331:194::-;11397:17;;-1:-1:-1;;;;;11397:17:0;181:10;-1:-1:-1;;;;;11381:33:0;;11373:42;;;;;;11426:20;11449:24;11467:4;11449:9;:24::i;:::-;11426:47;;11484:33;11501:15;11484:16;:33::i;15250:112::-;1411:6;;-1:-1:-1;;;;;1411:6:0;181:10;1411:22;1403:67;;;;-1:-1:-1;;;1403:67:0;;;;;;;:::i;:::-;15324:14:::1;:30:::0;15250:112::o;8026:332::-;-1:-1:-1;;;;;8116:19:0;;8108:68;;;;-1:-1:-1;;;8108:68:0;;5343:2:1;8108:68:0;;;5325:21:1;5382:2;5362:18;;;5355:30;5421:34;5401:18;;;5394:62;-1:-1:-1;;;5472:18:1;;;5465:34;5516:19;;8108:68:0;5141:400:1;8108:68:0;-1:-1:-1;;;;;8195:21:0;;8187:68;;;;-1:-1:-1;;;8187:68:0;;5748:2:1;8187:68:0;;;5730:21:1;5787:2;5767:18;;;5760:30;5826:34;5806:18;;;5799:62;-1:-1:-1;;;5877:18:1;;;5870:32;5919:19;;8187:68:0;5546:398:1;8187:68:0;-1:-1:-1;;;;;8266:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8318:32;;1644:25:1;;;8318:32:0;;1617:18:1;8318:32:0;;;;;;;8026:332;;;:::o;8366:2256::-;-1:-1:-1;;;;;8451:18:0;;8443:68;;;;-1:-1:-1;;;8443:68:0;;6151:2:1;8443:68:0;;;6133:21:1;6190:2;6170:18;;;6163:30;6229:34;6209:18;;;6202:62;-1:-1:-1;;;6280:18:1;;;6273:35;6325:19;;8443:68:0;5949:401:1;8443:68:0;-1:-1:-1;;;;;8530:16:0;;8522:64;;;;-1:-1:-1;;;8522:64:0;;6557:2:1;8522:64:0;;;6539:21:1;6596:2;6576:18;;;6569:30;6635:34;6615:18;;;6608:62;-1:-1:-1;;;6686:18:1;;;6679:33;6729:19;;8522:64:0;6355:399:1;8522:64:0;8614:1;8605:6;:10;8597:64;;;;-1:-1:-1;;;8597:64:0;;6961:2:1;8597:64:0;;;6943:21:1;7000:2;6980:18;;;6973:30;7039:34;7019:18;;;7012:62;-1:-1:-1;;;7090:18:1;;;7083:39;7139:19;;8597:64:0;6759:405:1;8597:64:0;1322:7;1349:6;-1:-1:-1;;;;;8678:15:0;;;1349:6;;8678:15;;;;:32;;-1:-1:-1;1322:7:0;1349:6;-1:-1:-1;;;;;8697:13:0;;;1349:6;;8697:13;;8678:32;8674:1186;;;8779:11;;-1:-1:-1;;;8779:11:0;;;;8774:144;;-1:-1:-1;;;;;8819:15:0;;;;;;:9;:15;;;;;;;;8811:91;;;;-1:-1:-1;;;8811:91:0;;7371:2:1;8811:91:0;;;7353:21:1;7410:2;7390:18;;;7383:30;7449:34;7429:18;;;7422:62;7520:33;7500:18;;;7493:61;7571:19;;8811:91:0;7169:427:1;8811:91:0;8966:12;;8956:6;:22;;8948:63;;;;-1:-1:-1;;;8948:63:0;;7803:2:1;8948:63:0;;;7785:21:1;7842:2;7822:18;;;7815:30;7881;7861:18;;;7854:58;7929:18;;8948:63:0;7601:352:1;8948:63:0;9063:13;;-1:-1:-1;;;;;9057:19:0;;;9063:13;;9057:19;9054:146;;9130:14;;9121:6;9105:13;9115:2;9105:9;:13::i;:::-;:22;;;;:::i;:::-;:39;9097:87;;;;-1:-1:-1;;;9097:87:0;;8425:2:1;9097:87:0;;;8407:21:1;8464:2;8444:18;;;8437:30;8503:34;8483:18;;;8476:62;-1:-1:-1;;;8554:18:1;;;8547:33;8597:19;;9097:87:0;8223:399:1;9097:87:0;9228:25;9256:24;9274:4;9256:9;:24::i;:::-;9334:19;;9397:12;;9228:52;;-1:-1:-1;9310:43:0;;;;9373:36;;9370:124;;9466:12;;9443:35;;9370:124;9526:7;:18;;;;-1:-1:-1;9538:6:0;;-1:-1:-1;;;9538:6:0;;;;9537:7;9526:18;:43;;;;-1:-1:-1;9556:13:0;;-1:-1:-1;;;;;9548:21:0;;;9556:13;;9548:21;;9526:43;:58;;;;-1:-1:-1;9573:11:0;;-1:-1:-1;;;9573:11:0;;;;9526:58;9522:327;;;9605:38;9622:20;9605:16;:38::i;:::-;9688:21;9732:22;;9728:106;;9779:35;9792:21;9779:12;:35::i;:::-;9586:263;9522:327;8712:1148;;8674:1186;-1:-1:-1;;;;;9944:24:0;;9880:12;9944:24;;;:18;:24;;;;;;9895:4;;9944:24;;;:50;;-1:-1:-1;;;;;;9972:22:0;;;;;;:18;:22;;;;;;;;9944:50;9943:102;;;-1:-1:-1;10008:13:0;;-1:-1:-1;;;;;10000:21:0;;;10008:13;;10000:21;;;;:44;;-1:-1:-1;10031:13:0;;-1:-1:-1;;;;;10025:19:0;;;10031:13;;10025:19;;10000:44;9939:622;;;-1:-1:-1;10072:5:0;9939:622;;;10167:13;;-1:-1:-1;;;;;10159:21:0;;;10167:13;;10159:21;:55;;;;-1:-1:-1;10198:15:0;;-1:-1:-1;;;;;10184:30:0;;;10198:15;;10184:30;;10159:55;10156:162;;;10247:14;;10235:9;:26;10290:12;;10280:7;:22;10156:162;10381:13;;-1:-1:-1;;;;;10375:19:0;;;10381:13;;10375:19;:55;;;;-1:-1:-1;10414:15:0;;-1:-1:-1;;;;;10398:32:0;;;10414:15;;10398:32;;10375:55;10371:165;;;10463:15;;10451:9;:27;10507:13;;10497:7;:23;10371:165;10573:41;10588:4;10594:2;10598:6;10606:7;10573:14;:41::i;:::-;8432:2190;8366:2256;;;:::o;1999:220::-;2115:4;2150:12;2140:8;;;;2132:31;;;;-1:-1:-1;;;2132:31:0;;;;;;;;:::i;:::-;-1:-1:-1;2174:7:0;2184;2189:2;2184;:7;:::i;:::-;2174:17;1999:220;-1:-1:-1;;;;;1999:220:0:o;11118:96::-;11172:17;;:34;;-1:-1:-1;;;;;11172:17:0;;;;:34;;;;;11199:6;;11172:17;:34;:17;:34;11199:6;11172:17;:34;;;;;;;;;;;;;;;;;;;;;11118:96;:::o;7372:282::-;7437:4;7487:7;;7476;:18;;7454:110;;;;-1:-1:-1;;;7454:110:0;;8959:2:1;7454:110:0;;;8941:21:1;8998:2;8978:18;;;8971:30;9037:34;9017:18;;;9010:62;-1:-1:-1;;;9088:18:1;;;9081:40;9138:19;;7454:110:0;8757:406:1;7454:110:0;7575:16;7594:10;:8;:10::i;:::-;7575:29;-1:-1:-1;7622:24:0;:7;7575:29;7622:11;:24::i;:::-;7615:31;7372:282;-1:-1:-1;;;7372:282:0:o;10630:480::-;5238:6;:13;;-1:-1:-1;;;;5238:13:0;-1:-1:-1;;;5238:13:0;;;10729:16:::1;::::0;;10743:1:::1;10729:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10729:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10729:16:0::1;10705:40;;10774:4;10756;10761:1;10756:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10756:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10800:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10800:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10756:7;;10800:22;;;;;:15;:22;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10790:4;10795:1;10790:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10790:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10865:15:::1;::::0;10833:62:::1;::::0;10850:4:::1;::::0;10865:15:::1;10883:11:::0;10833:8:::1;:62::i;:::-;10906:15;::::0;:196:::1;::::0;-1:-1:-1;;;10906:196:0;;-1:-1:-1;;;;;10906:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10987:11;;10906:15:::1;::::0;11029:4;;11056::::1;::::0;11076:15:::1;::::0;10906:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5274:6:0;:14;;-1:-1:-1;;;;5274:14:0;;;-1:-1:-1;;;;10630:480:0:o;11734:236::-;11844:7;11839:28;;11853:14;:12;:14::i;:::-;11878:44;11896:6;11904:9;11915:6;11878:17;:44::i;:::-;11938:7;11933:29;;11947:15;7957:17;;7945:9;:29;7995:15;;7985:7;:25;7901:117;14040:157;14082:4;14100:12;14114;14130:19;:17;:19::i;:::-;14099:50;;-1:-1:-1;14099:50:0;-1:-1:-1;14169:20:0;14099:50;;14169:11;:20::i;:::-;14162:27;;;;14040:157;:::o;2479:127::-;2533:4;2557:41;2561:2;2565;2557:41;;;;;;;;;;;;;;;;;:3;:41::i;7662:231::-;7709:9;;:14;:30;;;;-1:-1:-1;7727:7:0;;:12;7709:30;7705:43;;;7662:231::o;7705:43::-;7784:9;;;7764:17;:29;7822:7;;;7804:15;:25;-1:-1:-1;7850:13:0;;;;7874:11;7662:231::o;11978:466::-;12074:12;12088:20;12110:9;12121:20;12143:9;12154:10;12168:19;12179:7;12168:10;:19::i;:::-;-1:-1:-1;;;;;12216:15:0;;;;;;:7;:15;;;;;;12073:114;;-1:-1:-1;12073:114:0;;-1:-1:-1;12073:114:0;;-1:-1:-1;12073:114:0;-1:-1:-1;12073:114:0;-1:-1:-1;12073:114:0;-1:-1:-1;12216:28:0;;12073:114;12216:19;:28::i;:::-;-1:-1:-1;;;;;12198:15:0;;;;;;;:7;:15;;;;;;:46;;;;12276:18;;;;;;;:39;;12299:15;12276:22;:39::i;:::-;-1:-1:-1;;;;;12255:18:0;;;;;;:7;:18;;;;;:60;12326:16;12336:5;12326:9;:16::i;:::-;12353:23;12365:4;12371;12353:11;:23::i;:::-;12409:9;-1:-1:-1;;;;;12392:44:0;12401:6;-1:-1:-1;;;;;12392:44:0;;12420:15;12392:44;;;;1644:25:1;;1632:2;1617:18;;1498:177;12392:44:0;;;;;;;;12062:382;;;;;;11978:466;;;:::o;14205:251::-;14294:7;;14256:4;;;;4045:21;14359:20;14294:7;4045:21;14359:11;:20::i;:::-;14349:7;:30;14345:61;;;-1:-1:-1;;14389:7:0;;;4045:21;;-1:-1:-1;14205:251:0;-1:-1:-1;14205:251:0:o;14345:61::-;14431:7;;14440;;-1:-1:-1;14205:251:0;-1:-1:-1;14205:251:0:o;2614:218::-;2730:4;2763:12;2755:6;2747:29;;;;-1:-1:-1;;;2747:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2787:7:0;2797;2802:2;2797;:7;:::i;12848:462::-;12904:4;12910;12916;12922;12928;12934;12952:20;12974:9;12985:10;13012:40;13024:7;13033:9;;13044:7;;13012:11;:40::i;:::-;12951:101;;;;;;13063:16;13082:10;:8;:10::i;:::-;13063:29;;13104:12;13118:20;13140:9;13166:46;13178:7;13187:4;13193:5;13200:11;13166;:46::i;:::-;13103:109;;-1:-1:-1;13103:109:0;-1:-1:-1;13103:109:0;-1:-1:-1;13273:15:0;;-1:-1:-1;13290:4:0;;-1:-1:-1;13296:5:0;;-1:-1:-1;;;;;12848:462:0;;;;;;;:::o;1860:131::-;1914:4;1938:45;1942:2;1946;1938:45;;;;;;;;;;;;;;;;;:3;:45::i;1677:175::-;1731:4;;1758:7;1763:2;1758;:7;:::i;:::-;1748:17;;1790:2;1784;:8;;1776:48;;;;-1:-1:-1;;;1776:48:0;;11097:2:1;1776:48:0;;;11079:21:1;11136:2;11116:18;;;11109:30;11175:29;11155:18;;;11148:57;11222:18;;1776:48:0;10895:351:1;12452:202:0;12502:16;12521:10;:8;:10::i;:::-;12502:29;-1:-1:-1;12542:10:0;12555:22;:5;12502:29;12555:9;:22::i;:::-;12629:4;12613:22;;;;:7;:22;;;;;;12542:35;;-1:-1:-1;12613:33:0;;12542:35;12613:26;:33::i;:::-;12604:4;12588:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;12452:202:0:o;12662:141::-;12734:7;;:17;;12746:4;12734:11;:17::i;:::-;12724:7;:27;12775:10;;:20;;12790:4;12775:14;:20::i;:::-;12762:10;:33;-1:-1:-1;;12662:141:0:o;13318:328::-;13403:4;;;;13444:30;13470:3;13444:21;:7;13456:8;13444:11;:21::i;:::-;:25;;:30::i;:::-;13432:42;-1:-1:-1;13485:10:0;13498:28;13522:3;13498:19;:7;13510:6;13498:11;:19::i;:28::-;13485:41;-1:-1:-1;13537:20:0;13560:28;13485:41;13560:17;:7;13572:4;13560:11;:17::i;:::-;:21;;:28::i;:::-;13537:51;13626:4;;-1:-1:-1;13632:5:0;;-1:-1:-1;13318:328:0;;-1:-1:-1;;;;;13318:328:0:o;13654:378::-;13752:4;;;;13796:24;:7;13808:11;13796;:24::i;:::-;13781:39;-1:-1:-1;13831:9:0;13843:21;:4;13852:11;13843:8;:21::i;:::-;13831:33;-1:-1:-1;13875:10:0;13888:22;:5;13898:11;13888:9;:22::i;:::-;13875:35;-1:-1:-1;13921:20:0;13944:28;13875:35;13944:17;:7;13956:4;13944:11;:17::i;:28::-;13993:7;;;;-1:-1:-1;14019:4:0;;-1:-1:-1;13654:378:0;;-1:-1:-1;;;;;;;13654:378:0:o;2227:244::-;2281:4;2302:7;2298:48;;-1:-1:-1;2333:1:0;2326:8;;2298:48;2356:7;2366;2371:2;2366;:7;:::i;:::-;2356:17;-1:-1:-1;2403:2:0;2392:7;2397:2;2356:17;2392:7;:::i;:::-;:13;2384:59;;;;-1:-1:-1;;;2384:59:0;;11626:2:1;2384:59:0;;;11608:21:1;11665:2;11645:18;;;11638:30;11704:34;11684:18;;;11677:62;-1:-1:-1;;;11755:18:1;;;11748:31;11796:19;;2384:59:0;11424:397:1;14:597;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:131::-;-1:-1:-1;;;;;691:31:1;;681:42;;671:70;;737:1;734;727:12;752:315;820:6;828;881:2;869:9;860:7;856:23;852:32;849:52;;;897:1;894;887:12;849:52;936:9;923:23;955:31;980:5;955:31;:::i;:::-;1005:5;1057:2;1042:18;;;;1029:32;;-1:-1:-1;;;752:315:1:o;1680:456::-;1757:6;1765;1773;1826:2;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1881:9;1868:23;1900:31;1925:5;1900:31;:::i;:::-;1950:5;-1:-1:-1;2007:2:1;1992:18;;1979:32;2020:33;1979:32;2020:33;:::i;:::-;1680:456;;2072:7;;-1:-1:-1;;;2126:2:1;2111:18;;;;2098:32;;1680:456::o;2141:160::-;2206:20;;2262:13;;2255:21;2245:32;;2235:60;;2291:1;2288;2281:12;2235:60;2141:160;;;:::o;2306:315::-;2371:6;2379;2432:2;2420:9;2411:7;2407:23;2403:32;2400:52;;;2448:1;2445;2438:12;2400:52;2487:9;2474:23;2506:31;2531:5;2506:31;:::i;:::-;2556:5;-1:-1:-1;2580:35:1;2611:2;2596:18;;2580:35;:::i;:::-;2570:45;;2306:315;;;;;:::o;3023:180::-;3079:6;3132:2;3120:9;3111:7;3107:23;3103:32;3100:52;;;3148:1;3145;3138:12;3100:52;3171:26;3187:9;3171:26;:::i;3208:247::-;3267:6;3320:2;3308:9;3299:7;3295:23;3291:32;3288:52;;;3336:1;3333;3326:12;3288:52;3375:9;3362:23;3394:31;3419:5;3394:31;:::i;3460:180::-;3519:6;3572:2;3560:9;3551:7;3547:23;3543:32;3540:52;;;3588:1;3585;3578:12;3540:52;-1:-1:-1;3611:23:1;;3460:180;-1:-1:-1;3460:180:1:o;3645:385::-;3731:6;3739;3747;3755;3808:3;3796:9;3787:7;3783:23;3779:33;3776:53;;;3825:1;3822;3815:12;3776:53;-1:-1:-1;;3848:23:1;;;3918:2;3903:18;;3890:32;;-1:-1:-1;3969:2:1;3954:18;;3941:32;;4020:2;4005:18;3992:32;;-1:-1:-1;3645:385:1;-1:-1:-1;3645:385:1:o;4035:388::-;4103:6;4111;4164:2;4152:9;4143:7;4139:23;4135:32;4132:52;;;4180:1;4177;4170:12;4132:52;4219:9;4206:23;4238:31;4263:5;4238:31;:::i;:::-;4288:5;-1:-1:-1;4345:2:1;4330:18;;4317:32;4358:33;4317:32;4358:33;:::i;:::-;4410:7;4400:17;;;4035:388;;;;;:::o;4428:356::-;4630:2;4612:21;;;4649:18;;;4642:30;4708:34;4703:2;4688:18;;4681:62;4775:2;4760:18;;4428:356::o;7958:127::-;8019:10;8014:3;8010:20;8007:1;8000:31;8050:4;8047:1;8040:15;8074:4;8071:1;8064:15;8090:128;8130:3;8161:1;8157:6;8154:1;8151:13;8148:39;;;8167:18;;:::i;:::-;-1:-1:-1;8203:9:1;;8090:128::o;8627:125::-;8667:4;8695:1;8692;8689:8;8686:34;;;8700:18;;:::i;:::-;-1:-1:-1;8737:9:1;;8627:125::o;9300:127::-;9361:10;9356:3;9352:20;9349:1;9342:31;9392:4;9389:1;9382:15;9416:4;9413:1;9406:15;9432:251;9502:6;9555:2;9543:9;9534:7;9530:23;9526:32;9523:52;;;9571:1;9568;9561:12;9523:52;9603:9;9597:16;9622:31;9647:5;9622:31;:::i;9688:980::-;9950:4;9998:3;9987:9;9983:19;10029:6;10018:9;10011:25;10055:2;10093:6;10088:2;10077:9;10073:18;10066:34;10136:3;10131:2;10120:9;10116:18;10109:31;10160:6;10195;10189:13;10226:6;10218;10211:22;10264:3;10253:9;10249:19;10242:26;;10303:2;10295:6;10291:15;10277:29;;10324:1;10334:195;10348:6;10345:1;10342:13;10334:195;;;10413:13;;-1:-1:-1;;;;;10409:39:1;10397:52;;10504:15;;;;10469:12;;;;10445:1;10363:9;10334:195;;;-1:-1:-1;;;;;;;10585:32:1;;;;10580:2;10565:18;;10558:60;-1:-1:-1;;;10649:3:1;10634:19;10627:35;10546:3;9688:980;-1:-1:-1;;;9688:980:1:o;10673:217::-;10713:1;10739;10729:132;;10783:10;10778:3;10774:20;10771:1;10764:31;10818:4;10815:1;10808:15;10846:4;10843:1;10836:15;10729:132;-1:-1:-1;10875:9:1;;10673:217::o;11251:168::-;11291:7;11357:1;11353;11349:6;11345:14;11342:1;11339:21;11334:1;11327:9;11320:17;11316:45;11313:71;;;11364:18;;:::i;:::-;-1:-1:-1;11404:9:1;;11251:168::o

Swarm Source

ipfs://11d0957a7cf7a453276eb33166b3b10c1245e5e901dcd84ca55c3b66598ff154
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.