Contract 0xd4a66945c2167b2209031f78fb107ff0e1bbdd47

 
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xc232066cbf73abdc334ec094a7cc49662230456f6e1de6e84d08e1b213b4c474Approve111337012021-09-22 10:20:2035 days 21 hrs ago0xbed692751b5589c797bd98cbb0d7f12df35703a3 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0x81a1638eb666279c78e61360fd0c959cb8d2a5f5165db9c6ea4b49caf8166efeApprove109501272021-09-16 0:40:5642 days 7 hrs ago0xc494781445b40218f423c23821daabad88b28824 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0xe810cd286d6753ec9258957a16535a82eb52da7f1b40cd7b24b59ae000e06aacApprove109410252021-09-15 17:05:5042 days 15 hrs ago0xdb3de08e2a1affeb06863a78be19d051a86ae88e IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0x56f57ced6bb73450fac356237d471844caea1136884f8b7f4ab0bb35380483b4Approve109410032021-09-15 17:04:4442 days 15 hrs ago0xfad16a7a901c3120fd08612f9bf77b2e2e5aa51d IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0xcf0e3dd0d9aabc5f1b881c0db72c3868e93d715ba23be18e89d52030e2d37dfcApprove109405282021-09-15 16:40:5942 days 15 hrs ago0x2aa0c29266234985fd8c151e07348505fd6d7145 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0xe692452cc419f9376ad25a29b01af44e2367f63a4e6e3186499a602f2fe9f2c1Approve109375562021-09-15 14:12:2242 days 17 hrs ago0x3338a5ef29705ad56884cb45c5e03ac63fbb5ce2 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0x477dadbd922bf29494c2751592138855a547234f9b4415880d0680df77d30e5fApprove109360232021-09-15 12:55:4342 days 19 hrs ago0xff0a5b992dbf37de905682d81842d0b76016e0fa IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0xe3c368c52ec2029b2dde52a407ae28f5760bf0450de5d4506e462b6ae45564a9Approve109359872021-09-15 12:53:5542 days 19 hrs ago0xe0369aa2d7eb16874fffc7dc159c450a82a6ba5f IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0x98a505bb22fc48b589a9b633459a39af9bff3a79dbadb496750017f63a4857f9Approve109302762021-09-15 8:02:2343 days 4 mins ago0xb46f219f13039a567a8e626db7bcc7fb7fb498f7 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0x5cd579de84e01df00d8866d4aaa34f0004de8d15d3e6ca882b82a269bdc98a4aApprove109238502021-09-15 2:40:4143 days 5 hrs ago0xb30d4bafd4a9c576cbd6a7f5cb066f23ea1ec8cd IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0x7109cb62954b7300bbd196be24b3d04c66996d85470febb76e913bc9d53f62c0Approve109197092021-09-14 23:13:3843 days 8 hrs ago0xc186d02d3611604502db1ecf6f163f95836f45e8 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0xeb19091e3f76d40ce8a0f871cb434ba07dcc806fe904e773ef218033a25e53a6Approve109115762021-09-14 16:25:3743 days 15 hrs ago0x763d40d6cdadf27f0aed78abe28ed9f38cd9fe01 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0xcfe572863de0812906fded3473971931d65a1e4bd5ddcd904e63c87ef1684eb0Approve109077132021-09-14 13:11:3543 days 18 hrs ago0xeec1b076d27600c38f8e89b37699c50795232264 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0x1934e930cb1134f63eec5ff60631a68718448f36743072d926d6a17d53e2ef11Approve109073792021-09-14 12:54:5343 days 19 hrs ago0x5275df8921d08fb2617c8175954213664234acda IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0x2a9e1a8b5585ce3ab9a7d62ceaf47687f16ab9130a76666cfa66515b9953098bApprove109069482021-09-14 12:33:2043 days 19 hrs ago0x221116f554ddb4d6916a6860ffccf491af674245 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0x9bd658a5f076ca3414ac76fceff32d1a9dcbce69167c9ef635fb3db969a80c59Approve109064522021-09-14 12:08:3243 days 19 hrs ago0x41e9937e8f800aa8f2fbf9a326df89d7a3b3d16b IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.000311682
0xa876d59cf4be1b077cceddec067795599131e4b8901e67903a08acc33f0d6400Approve108963562021-09-14 3:42:2944 days 4 hrs ago0x67b840396c14b2b221b22cbf39456af8eeae6600 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0xc8de18ca446a2cd7bac6d7c43e4aae8db8507d5126d701b6778833817b558321Approve108957042021-09-14 3:09:5344 days 4 hrs ago0x747e253b946c92616d247da2490c74e3250fdd02 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.00022263
0xa85d61c0287a6675bfe0a9b607caf153ca5032348036e357be230d10ef12ce5eTransfer108939262021-09-14 1:40:5944 days 6 hrs ago0xafc36722dcc681975538f52cc9caa201ade1f0e8 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.000416445
0x12a2edd88d1a477b8701ad82d8c62e559139eaa57baaca0a986b56806330fb8dTransfer108939202021-09-14 1:40:4144 days 6 hrs ago0xafc36722dcc681975538f52cc9caa201ade1f0e8 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.000416445
0x59915368af5d402d49a495f9f407aade6a54af82e087806606c58cd751a25596Transfer108939162021-09-14 1:40:2944 days 6 hrs ago0xafc36722dcc681975538f52cc9caa201ade1f0e8 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.000416445
0xc8a2c1444fff2631ae072c711b8a0450b59e62655e1f113d1ee848bbc5da9fedTransfer108939122021-09-14 1:40:1744 days 6 hrs ago0xafc36722dcc681975538f52cc9caa201ade1f0e8 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.000491385
0xadd3a46f1fd4c31014cf021e44a69f47c3b5cfa40d393e728a64d42203fd969eTransfer108938872021-09-14 1:39:0244 days 6 hrs ago0xafc36722dcc681975538f52cc9caa201ade1f0e8 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.000491445
0xda28cbdbc3103453c7fc242af5dca3355021bd5a376fe948df4cf3b3e834d4abTransfer108938712021-09-14 1:38:1444 days 6 hrs ago0xafc36722dcc681975538f52cc9caa201ade1f0e8 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.000416445
0x44a343baa902fab0556fd1e9543aea594599e6ab4c6f64fb81de9ddf9a96100eTransfer108938672021-09-14 1:38:0244 days 6 hrs ago0xafc36722dcc681975538f52cc9caa201ade1f0e8 IN  0xd4a66945c2167b2209031f78fb107ff0e1bbdd470 BNB0.000491445
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
PurpleBabyDoge

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2021-09-12
*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.4;

/**

    Our aim is create partnerships with exchanges and platforms that support the development start-up crypto currencies in the NFT

    Whenever any transactions happen, a percentage of PBD tokens will be burned to LP in turn to increase the evaluation of the token
    
    Web: https://purplebabydoge.com
    
    Twitter : https://twitter.com/PurpleBabyDoge
    
    Telegram : https://t.me/PurpleBabyDoge
    
    TOKENOMICS
    
    Liquidity will be burnt forever. (I personnaly don't buy tokens which doesn't burns their liquidity.)
    
    Ownership will be renounced after launch.
    
    IN TRANSACTIONS TOKENS WILL BE REDISTRUBUTE AS

    3% HOLDERS
    
    3% LIQUIDT
    
    6% SLIPPAGE
    
*/

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

    function _msgData() internal view virtual returns (bytes calldata) {
        this; // silence state mutability warning without generating
//bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

interface IBEP20 {
    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;
        // assert(a == b * c + a % b); // There is no case in which
//this doesn't hold

        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;
    uint256 private _lockTime;

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

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor (address initialOwner) {
        _owner = initialOwner;
        emit OwnershipTransferred(address(0), initialOwner);
    }

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

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

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

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

    function getUnlockTime() public view returns (uint256) {
        return _lockTime;
    }

    function lock(uint256 time) public virtual onlyOwner {
        _previousOwner = _owner;
        _owner = address(0);
        _lockTime = block.timestamp + time;
        emit OwnershipTransferred(_owner, address(0));
    }

    function unlock() public virtual {
        require(_previousOwner == msg.sender, "You don't have permission to unlock");
        require(block.timestamp > _lockTime , "Contract is still locked");
        emit OwnershipTransferred(_owner, _previousOwner);
        _owner = _previousOwner;
    }
}

interface IUniswapV2Factory {
    event PairCreated(address indexed token0, address indexed token1,
address pair, uint);

    function feeTo() external view returns (address);
    function feeToSetter() external view returns (address);

    function getPair(address tokenA, address tokenB) external view
returns (address pair);
    function allPairs(uint) external view returns (address pair);
    function allPairsLength() external view returns (uint);

    function createPair(address tokenA, address tokenB) external
returns (address pair);

    function setFeeTo(address) external;
    function setFeeToSetter(address) external;
}

interface IUniswapV2Pair {
    event Approval(address indexed owner, address indexed spender, uint value);
    event Transfer(address indexed from, address indexed to, uint value);

    function name() external pure returns (string memory);
    function symbol() external pure returns (string memory);
    function decimals() external pure returns (uint8);
    function totalSupply() external view returns (uint);
    function balanceOf(address owner) external view returns (uint);
    function allowance(address owner, address spender) external view
returns (uint);

    function approve(address spender, uint value) external returns (bool);
    function transfer(address to, uint value) external returns (bool);
    function transferFrom(address from, address to, uint value)
external returns (bool);

    function DOMAIN_SEPARATOR() external view returns (bytes32);
    function PERMIT_TYPEHASH() external pure returns (bytes32);
    function nonces(address owner) external view returns (uint);

    function permit(address owner, address spender, uint value, uint
deadline, uint8 v, bytes32 r, bytes32 s) external;

    event Burn(address indexed sender, uint amount0, uint amount1,
address indexed to);
    event Swap(
        address indexed sender,
        uint amount0In,
        uint amount1In,
        uint amount0Out,
        uint amount1Out,
        address indexed to
    );
    event Sync(uint112 reserve0, uint112 reserve1);

    function MINIMUM_LIQUIDITY() external pure returns (uint);
    function factory() external view returns (address);
    function token0() external view returns (address);
    function token1() external view returns (address);
    function getReserves() external view returns (uint112 reserve0,
uint112 reserve1, uint32 blockTimestampLast);
    function price0CumulativeLast() external view returns (uint);
    function price1CumulativeLast() external view returns (uint);
    function kLast() external view returns (uint);

    function burn(address to) external returns (uint amount0, uint amount1);
    function swap(uint amount0Out, uint amount1Out, address to, bytes
calldata data) external;
    function skim(address to) external;
    function sync() external;

    function initialize(address, address) external;
}

interface IUniswapV2Router01 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint
liquidity);
    function removeLiquidity(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETH(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountToken, uint amountETH);
    function removeLiquidityWithPermit(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETHWithPermit(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountToken, uint amountETH);
    function swapExactTokensForTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapTokensForExactTokens(
        uint amountOut,
        uint amountInMax,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapExactETHForTokens(uint amountOutMin, address[]
calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);
    function swapTokensForExactETH(uint amountOut, uint amountInMax,
address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapExactTokensForETH(uint amountIn, uint amountOutMin,
address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapETHForExactTokens(uint amountOut, address[] calldata
path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);

    function quote(uint amountA, uint reserveA, uint reserveB)
external pure returns (uint amountB);
    function getAmountOut(uint amountIn, uint reserveIn, uint
reserveOut) external pure returns (uint amountOut);
    function getAmountIn(uint amountOut, uint reserveIn, uint
reserveOut) external pure returns (uint amountIn);
    function getAmountsOut(uint amountIn, address[] calldata path)
external view returns (uint[] memory amounts);
    function getAmountsIn(uint amountOut, address[] calldata path)
external view returns (uint[] memory amounts);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function removeLiquidityETHSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountETH);
    function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountETH);

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

contract PurpleBabyDoge is Context, IBEP20, Ownable {
    using SafeMath for uint256;

    mapping (address => uint256) private _rOwned;
    mapping (address => uint256) private _tOwned;
    mapping (address => bool)    private _isExcludedFromFee;
    mapping (address => bool)    private _isExcluded;
	mapping (address => bool) public _isBlacklisted;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) public _isExcludedFromAutoLiquidity;
    mapping (address => bool) public _isExcludedToAutoLiquidity;

    address[] private _excluded;
    address public _marketingWallet;

    uint256 private constant MAX = ~uint256(0);
    uint256 private _tTotal = 1000000000000000 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;

    string private constant _name     = "Purple Baby Doge";
    string private constant _symbol   = "PBD";
    uint8  private constant _decimals = 9;

    uint256 public _taxFee       = 0;
    uint256 public _liquidityFee = 0;
    uint256 public _marketingFee = 600;

    uint256 private _previousTaxFee       = _taxFee;
    uint256 private _previousLiquidityFee = _liquidityFee;
    uint256 private _previousMarketingFee = _marketingFee;

    uint256 public _maxTxAmount                   = 10000000000000 * 10**9;
    uint256 public _numTokensSellToAddToLiquidity = 1000000000000 * 10**9;

    // liquidity
    bool public  _swapAndLiquifyEnabled = true;
    bool private _inSwapAndLiquify;
    IUniswapV2Router02 public _uniswapV2Router;
    address            public _uniswapV2Pair;
    event MinTokensBeforeSwapUpdated(uint256 minTokensBeforeSwap);
    event SwapAndLiquifyEnabledUpdated(bool enabled);
    event SwapAndLiquify(
        uint256 tokensSwapped,
        uint256 bnbReceived,
        uint256 tokensIntoLiqudity
    );

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

    constructor (address cOwner, address marketingWallet) Ownable(cOwner) {
        _marketingWallet = marketingWallet;

        _rOwned[cOwner] = _rTotal;

        IUniswapV2Router02 uniswapV2Router =
IUniswapV2Router02(0x10ED43C718714eb63d5aA57B78B54704E256024E);
        _uniswapV2Pair =
IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this),
uniswapV2Router.WETH());
        _uniswapV2Router = uniswapV2Router;

        _isExcludedFromFee[owner()]          = true;
        _isExcludedFromFee[address(this)]    = true;
        _isExcludedFromFee[_marketingWallet] = true;

        _isExcludedFromAutoLiquidity[_uniswapV2Pair]            = true;
        _isExcludedFromAutoLiquidity[address(_uniswapV2Router)] = true;

        emit Transfer(address(0), cOwner, _tTotal);
    }

    receive() external payable {}

    // BEP20
    function name() public pure returns (string memory) {
        return _name;
    }
    function symbol() public pure returns (string memory) {
        return _symbol;
    }
    function decimals() public pure returns (uint8) {
        return _decimals;
    }
    function totalSupply() public view override returns (uint256) {
        return _tTotal;
    }
    function balanceOf(address account) public view override returns (uint256) {
        if (_isExcluded[account]) return _tOwned[account];
        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 _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "BEP20: approve from the zero address");
        require(spender != address(0), "BEP20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
    function transferFrom(address sender, address recipient, uint256
amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(),_allowances[sender][_msgSender()].sub(amount, "BEP20: transfer amount exceeds allowance"));
        return true;
    }
    function increaseAllowance(address spender, uint256 addedValue)
public virtual returns (bool) {
        _approve(_msgSender(), spender,
_allowances[_msgSender()][spender].add(addedValue));
        return true;
    }
    function decreaseAllowance(address spender, uint256
subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "BEP20:decreased allowance below zero"));
        return true;
    }

    //Remove from Blacklist
        function removeFromBlacklist(address account) external onlyOwner {
        _isBlacklisted[account] = false;
    }

    //adding multiple addresses to the blacklist - Used to manually block known bots and scammers
    function addToBlackList(address[] calldata addresses) external onlyOwner {
      for (uint256 i; i < addresses.length; ++i) {
        _isBlacklisted[addresses[i]] = true;
      }
    }

    // REFLECTION
    function deliver(uint256 tAmount) public {
        address sender = _msgSender();
        require(!_isExcluded[sender], "Excluded addresses cannot call this function");

        (, uint256 tFee, uint256 tLiquidity, uint256 tMarketing) =
_getTValues(tAmount);
        uint256 currentRate = _getRate();
        (uint256 rAmount,,) = _getRValues(tAmount, tFee, tLiquidity,
tMarketing, currentRate);

        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rTotal         = _rTotal.sub(rAmount);
        _tFeeTotal      = _tFeeTotal.add(tAmount);
    }
    function reflectionFromToken(uint256 tAmount, bool
deductTransferFee) public view returns(uint256) {
        require(tAmount <= _tTotal, "Amount must be less than supply");

        if (!deductTransferFee) {
            (, uint256 tFee, uint256 tLiquidity, uint256 tMarketing) =
_getTValues(tAmount);
            uint256 currentRate = _getRate();
            (uint256 rAmount,,) = _getRValues(tAmount, tFee,
tLiquidity, tMarketing, currentRate);

            return rAmount;

        } else {
            (, uint256 tFee, uint256 tLiquidity, uint256 tMarketing) =
_getTValues(tAmount);
            uint256 currentRate = _getRate();
            (, uint256 rTransferAmount,) = _getRValues(tAmount, tFee,
tLiquidity, tMarketing, currentRate);

            return rTransferAmount;
        }
    }
    function tokenFromReflection(uint256 rAmount) public view returns(uint256) {
        require(rAmount <= _rTotal, "Amount must be less than total reflections");

        uint256 currentRate = _getRate();
        return rAmount.div(currentRate);
    }
    function excludeFromReward(address account) public onlyOwner {
        require(!_isExcluded[account], "Account is already excluded");

        if (_rOwned[account] > 0) {
            _tOwned[account] = tokenFromReflection(_rOwned[account]);
        }
        _isExcluded[account] = true;
        _excluded.push(account);
    }
    function includeInReward(address account) external onlyOwner {
        require(_isExcluded[account], "Account is already excluded");

        for (uint256 i = 0; i < _excluded.length; i++) {
            if (_excluded[i] == account) {
                _excluded[i] = _excluded[_excluded.length - 1];
                _tOwned[account] = 0;
                _isExcluded[account] = false;
                _excluded.pop();
                break;
            }
        }
    }
    function totalFees() public view returns (uint256) {
        return _tFeeTotal;
    }
    function excludeFromFee(address account) public onlyOwner {
        _isExcludedFromFee[account] = true;
    }
    function includeInFee(address account) public onlyOwner {
        _isExcludedFromFee[account] = false;
    }
    function setTaxFeePercent(uint256 taxFee) external onlyOwner {
        _taxFee = taxFee;
        _previousTaxFee = taxFee;
    }
    function setLiquidityFeePercent(uint256 liquidityFee) external onlyOwner {
        _liquidityFee = liquidityFee;
        _previousLiquidityFee = liquidityFee;
    }
    function setMarketingFeePercent(uint256 marketingFee) external onlyOwner {
        _marketingFee = marketingFee;
        _previousMarketingFee = marketingFee;
    }
    function setMaxTxPercent(uint256 maxTxPercent) external onlyOwner {
        _maxTxAmount = _tTotal.mul(maxTxPercent).div(100);
    }
    function setMinLiquidityPercent(uint256 minLiquidityPercent)
external onlyOwner {
        _numTokensSellToAddToLiquidity =
_tTotal.mul(minLiquidityPercent).div(100);
    }
    function setSwapAndLiquifyEnabled(bool enabled) public onlyOwner {
        _swapAndLiquifyEnabled = enabled;
        emit SwapAndLiquifyEnabledUpdated(enabled);
    }
    function isExcludedFromFee(address account) public view returns(bool) {
        return _isExcludedFromFee[account];
    }
    function isExcludedFromReward(address account) public view returns (bool) {
        return _isExcluded[account];
    }
    function setExcludedFromAutoLiquidity(address a, bool b) external
onlyOwner {
        _isExcludedFromAutoLiquidity[a] = b;
    }
    function setExcludedToAutoLiquidity(address a, bool b) external onlyOwner {
        _isExcludedToAutoLiquidity[a] = b;
    }
    function setUniswapRouter(address r) external onlyOwner {
        IUniswapV2Router02 uniswapV2Router = IUniswapV2Router02(r);
        _uniswapV2Router = uniswapV2Router;
    }
    function setUniswapPair(address p) external onlyOwner {
        _uniswapV2Pair = p;
    }

    // TRANSFER
    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
	//blacklisted addreses can not buy! If you have ever used a bot, or scammed anybody, then you're wallet address will probably be blacklisted
        require(!_isBlacklisted[from] && !_isBlacklisted[to], "This address is blacklisted");
        require(from != address(0), "BEP20: transfer from the zero address");
        require(to != address(0), "BEP20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");

        if (from != owner() && to != owner()) {
            require(amount <= _maxTxAmount, "Transfer amount exceeds the maxTxAmount.");
        }

        /*
            - swapAndLiquify will be initiated when token balance of
this contract
            has accumulated enough over the minimum number of tokens required.
            - don't get caught in a circular liquidity event.
            - don't swapAndLiquify if sender is uniswap pair.
        */

        uint256 contractTokenBalance = balanceOf(address(this));

        if (contractTokenBalance >= _maxTxAmount) {
            contractTokenBalance = _maxTxAmount;
        }

        bool isOverMinTokenBalance = contractTokenBalance >=
_numTokensSellToAddToLiquidity;
        if (
            isOverMinTokenBalance &&
            !_inSwapAndLiquify &&
            !_isExcludedFromAutoLiquidity[from] &&
            !_isExcludedToAutoLiquidity[to] &&
            _swapAndLiquifyEnabled
        ) {
            contractTokenBalance = _numTokensSellToAddToLiquidity;
            swapAndLiquify(contractTokenBalance);
        }

        bool takeFee = true;
        // if sender or recipient is excluded from fees, remove fees
        if (_isExcludedFromFee[from] || _isExcludedFromFee[to]) {
            takeFee = false;
        }

        _tokenTransfer(from, to, amount, takeFee);
    }
    function swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap {
        // split contract balance into halves
        uint256 half      = contractTokenBalance.div(2);
        uint256 otherHalf = contractTokenBalance.sub(half);

        /*
            capture the contract's current BNB balance.
            this is so that we can capture exactly the amount of BNB that
            the swap creates, and not make the liquidity event include any BNB
            that has been manually sent to the contract.
        */
        uint256 initialBalance = address(this).balance;

        // swap tokens for BNB
        swapTokensForBnb(half);

        // this is the amount of BNB that we just swapped into
        uint256 newBalance = address(this).balance.sub(initialBalance);

        // add liquidity to uniswap
        addLiquidity(otherHalf, newBalance);

        emit SwapAndLiquify(half, newBalance, otherHalf);
    }
    function swapTokensForBnb(uint256 tokenAmount) private {
        // generate the uniswap pair path of token -> weth
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = _uniswapV2Router.WETH();

        _approve(address(this), address(_uniswapV2Router), tokenAmount);

        // make the swap
        _uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0, // accept any amount of BNB
            path,
            address(this),
            block.timestamp
        );
    }
    function addLiquidity(uint256 tokenAmount, uint256 bnbAmount) private {
        // approve token transfer to cover all possible scenarios
        _approve(address(this), address(_uniswapV2Router), tokenAmount);

        // add the liquidity
        _uniswapV2Router.addLiquidityETH{value: bnbAmount}(
            address(this),
            tokenAmount,
            0, // slippage is unavoidable
            0, // slippage is unavoidable
            owner(),
            block.timestamp
        );
    }

    function _tokenTransfer(address sender, address recipient, uint256
amount, bool takeFee) private {

		require(!_isBlacklisted[sender] && !_isBlacklisted[recipient], "To/from address is blacklisted!");
        if (!takeFee) {
            removeAllFee();
        }

        if (_isExcluded[sender] && !_isExcluded[recipient]) {
            _transferFromExcluded(sender, recipient, amount);

        } else if (!_isExcluded[sender] && _isExcluded[recipient]) {
            _transferToExcluded(sender, recipient, amount);

        } else if (!_isExcluded[sender] && !_isExcluded[recipient]) {
            _transferStandard(sender, recipient, amount);

        } else if (_isExcluded[sender] && _isExcluded[recipient]) {
            _transferBothExcluded(sender, recipient, amount);

        } else {
            _transferStandard(sender, recipient, amount);
        }

        if (!takeFee) {
            restoreAllFee();
        }
    }
    function _transferStandard(address sender, address recipient,
uint256 tAmount) private {
        (uint256 tTransferAmount, uint256 tFee, uint256 tLiquidity,
uint256 tMarketing) = _getTValues(tAmount);
        uint256 currentRate = _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) =
_getRValues(tAmount, tFee, tLiquidity, tMarketing, currentRate);

		require(!_isBlacklisted[sender] && !_isBlacklisted[recipient], "To/from address is blacklisted!");

        _rOwned[sender]    = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);

        takeTransactionFee(address(this), tLiquidity, currentRate);
        takeTransactionFee(address(_marketingWallet), tMarketing, currentRate);
        reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }
    function _transferBothExcluded(address sender, address recipient,
uint256 tAmount) private {
        (uint256 tTransferAmount, uint256 tFee, uint256 tLiquidity,
uint256 tMarketing) = _getTValues(tAmount);
        uint256 currentRate = _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) =
_getRValues(tAmount, tFee, tLiquidity, tMarketing, currentRate);

        _tOwned[sender] = _tOwned[sender].sub(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);

        takeTransactionFee(address(this), tLiquidity, currentRate);
        takeTransactionFee(address(_marketingWallet), tMarketing, currentRate);
        reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }
    function _transferToExcluded(address sender, address recipient,
uint256 tAmount) private {
        (uint256 tTransferAmount, uint256 tFee, uint256 tLiquidity,
uint256 tMarketing) = _getTValues(tAmount);
        uint256 currentRate = _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) =
_getRValues(tAmount, tFee, tLiquidity, tMarketing, currentRate);

		require(!_isBlacklisted[sender] && !_isBlacklisted[recipient], "To/from address is blacklisted!");

        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);

        takeTransactionFee(address(this), tLiquidity, currentRate);
        takeTransactionFee(address(_marketingWallet), tMarketing, currentRate);
        reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }
    function _transferFromExcluded(address sender, address recipient,
uint256 tAmount) private {
        (uint256 tTransferAmount, uint256 tFee, uint256 tLiquidity,
uint256 tMarketing) = _getTValues(tAmount);
        uint256 currentRate = _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) =
_getRValues(tAmount, tFee, tLiquidity, tMarketing, currentRate);

		require(!_isBlacklisted[sender] && !_isBlacklisted[recipient], "To/from address is blacklisted!");
		
        _tOwned[sender] = _tOwned[sender].sub(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);

        takeTransactionFee(address(this), tLiquidity, currentRate);
        takeTransactionFee(address(_marketingWallet), tMarketing, currentRate);
        reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }
    function reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal    = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);
    }
    function removeAllFee() private {
        if (_taxFee == 0 && _liquidityFee == 0 && _marketingFee == 0) return;

        _previousTaxFee       = _taxFee;
        _previousLiquidityFee = _liquidityFee;
        _previousMarketingFee = _marketingFee;

        _taxFee       = 0;
        _liquidityFee = 0;
        _marketingFee = 0;
    }
    function restoreAllFee() private {
        _taxFee       = _previousTaxFee;
        _liquidityFee = _previousLiquidityFee;
        _marketingFee = _previousMarketingFee;
    }
    function _getTValues(uint256 tAmount) private view returns
(uint256, uint256, uint256, uint256) {
        uint256 tFee       = tAmount.mul(_taxFee).div(10000);
        uint256 tLiquidity = tAmount.mul(_liquidityFee).div(10000);
        uint256 tMarketing = tAmount.mul(_marketingFee).div(10000);
        uint256 tTransferAmount = tAmount.sub(tFee);
        tTransferAmount = tTransferAmount.sub(tLiquidity);
        tTransferAmount = tTransferAmount.sub(tMarketing);
        return (tTransferAmount, tFee, tLiquidity, tMarketing);
    }
    function _getRValues(uint256 tAmount, uint256 tFee, uint256
tLiquidity, uint256 tMarketing, uint256 currentRate) private pure
returns (uint256, uint256, uint256) {
        uint256 rAmount     = tAmount.mul(currentRate);
        uint256 rFee        = tFee.mul(currentRate);
        uint256 rLiquidity  = tLiquidity.mul(currentRate);
        uint256 rMarketing  = tMarketing.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee);
        rTransferAmount = rTransferAmount.sub(rLiquidity);
        rTransferAmount = rTransferAmount.sub(rMarketing);
        return (rAmount, rTransferAmount, rFee);
    }
    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;
        for (uint256 i = 0; i < _excluded.length; i++) {
            if (_rOwned[_excluded[i]] > rSupply ||
_tOwned[_excluded[i]] > tSupply) return (_rTotal, _tTotal);
            rSupply = rSupply.sub(_rOwned[_excluded[i]]);
            tSupply = tSupply.sub(_tOwned[_excluded[i]]);
        }
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }
    function takeTransactionFee(address to, uint256 tAmount, uint256
currentRate) private {
        if (tAmount <= 0) { return; }

        uint256 rAmount = tAmount.mul(currentRate);
        _rOwned[to] = _rOwned[to].add(rAmount);
        if (_isExcluded[to]) {
            _tOwned[to] = _tOwned[to].add(tAmount);
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"cOwner","type":"address"},{"internalType":"address","name":"marketingWallet","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":"uint256","name":"minTokensBeforeSwap","type":"uint256"}],"name":"MinTokensBeforeSwapUpdated","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":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"bnbReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"SwapAndLiquifyEnabledUpdated","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":[{"internalType":"address","name":"","type":"address"}],"name":"_isBlacklisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludedFromAutoLiquidity","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludedToAutoLiquidity","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_liquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_marketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_numTokensSellToAddToLiquidity","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"}],"name":"addToBlackList","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":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"}],"name":"deliver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getUnlockTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromReward","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"time","type":"uint256"}],"name":"lock","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":"uint256","name":"tAmount","type":"uint256"},{"internalType":"bool","name":"deductTransferFee","type":"bool"}],"name":"reflectionFromToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"removeFromBlacklist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"},{"internalType":"bool","name":"b","type":"bool"}],"name":"setExcludedFromAutoLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"},{"internalType":"bool","name":"b","type":"bool"}],"name":"setExcludedToAutoLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"liquidityFee","type":"uint256"}],"name":"setLiquidityFeePercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"marketingFee","type":"uint256"}],"name":"setMarketingFeePercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxPercent","type":"uint256"}],"name":"setMaxTxPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"minLiquidityPercent","type":"uint256"}],"name":"setMinLiquidityPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enabled","type":"bool"}],"name":"setSwapAndLiquifyEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"taxFee","type":"uint256"}],"name":"setTaxFeePercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"p","type":"address"}],"name":"setUniswapPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"r","type":"address"}],"name":"setUniswapRouter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"rAmount","type":"uint256"}],"name":"tokenFromReflection","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unlock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405269d3c21bcecceda1000000600d819055620000229060001962000447565b620000309060001962000423565b600e556000601081905560118190556102586012819055601382905560149190915560155569021e19e0c9bab2400000601655683635c9adc5dea000006017556018805460ff191660011790553480156200008a57600080fd5b50604051620034d3380380620034d3833981016040819052620000ad91620003ec565b600080546001600160a01b0319166001600160a01b03841690811782556040518492907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600c80546001600160a01b0319166001600160a01b0383811691909117909155600e5490831660009081526003602090815260409182902092909255805163c45a015560e01b815290517310ed43c718714eb63d5aa57b78b54704e256024e92839263c45a01559260048083019392829003018186803b1580156200017a57600080fd5b505afa1580156200018f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001b59190620003c8565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015620001fe57600080fd5b505afa15801562000213573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002399190620003c8565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b1580156200028257600080fd5b505af115801562000297573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002bd9190620003c8565b601980546001600160a01b0319166001600160a01b039283161781556018805462010000600160b01b0319166201000085851681029190911782556000805485168152600560209081526040808320805460ff1990811660019081179092553085528285208054821683179055600c54891685528285208054821683179055965488168452600983528184208054881682179055945493909304861682528282208054909516909317909355600d5481519081529051938716937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a350505062000468565b80516001600160a01b0381168114620003c357600080fd5b919050565b600060208284031215620003da578081fd5b620003e582620003ab565b9392505050565b60008060408385031215620003ff578081fd5b6200040a83620003ab565b91506200041a60208401620003ab565b90509250929050565b6000828210156200044257634e487b7160e01b81526011600452602481fd5b500390565b6000826200046357634e487b7160e01b81526012600452602481fd5b500690565b61305b80620004786000396000f3fe6080604052600436106102e85760003560e01c806370a0823111610190578063b3f22ce3116100dc578063d543dbeb11610095578063dd62ed3e1161006f578063dd62ed3e14610932578063ea2f0b3714610978578063f2fde38b14610998578063ff897570146109b857600080fd5b8063d543dbeb146108d2578063d5aed6bf146108f2578063dd4670641461091257600080fd5b8063b3f22ce314610812578063baa0439814610828578063bc612bc814610858578063bea9849e14610878578063c49b9a8014610898578063cbecede0146108b857600080fd5b806395d89b4111610149578063a457c2d711610123578063a457c2d71461078d578063a69df4b5146107ad578063a9059cbb146107c2578063aebcdedc146107e257600080fd5b806395d89b4114610721578063962dfc751461074d5780639c74daf01461076d57600080fd5b806370a082311461065f578063715018a61461067f5780637d1db4a51461069457806388f82020146106aa5780638da5cb5b146106e35780638ee88c531461070157600080fd5b8063395093511161024f57806352390c0211610208578063583e0568116101e2578063583e0568146105d65780635d83b45414610614578063602bc62b146106345780636bc87c3a1461064957600080fd5b806352390c021461055d5780635342acb41461057d578063537df3b6146105b657600080fd5b806339509351146104a75780633b124fe7146104c75780633bd5d173146104dd578063437823ec146104fd5780634549b0391461051d578063457c194c1461053d57600080fd5b806322976e0d116102a157806322976e0d146103f557806323b872dd1461040b5780632a9319cb1461042b5780632d8381191461044b578063313ce5671461046b5780633685d4191461048757600080fd5b8063061c82d0146102f457806306fdde0314610316578063095ea7b31461036157806313114a9d1461039157806318160ddd146103b05780631cdd3be3146103c557600080fd5b366102ef57005b600080fd5b34801561030057600080fd5b5061031461030f366004612d6c565b6109d8565b005b34801561032257600080fd5b5060408051808201909152601081526f507572706c65204261627920446f676560801b60208201525b6040516103589190612dd3565b60405180910390f35b34801561036d57600080fd5b5061038161037c366004612cb7565b610a15565b6040519015158152602001610358565b34801561039d57600080fd5b50600f545b604051908152602001610358565b3480156103bc57600080fd5b50600d546103a2565b3480156103d157600080fd5b506103816103e0366004612bd3565b60076020526000908152604090205460ff1681565b34801561040157600080fd5b506103a260125481565b34801561041757600080fd5b50610381610426366004612c43565b610a2c565b34801561043757600080fd5b50610314610446366004612d6c565b610a95565b34801561045757600080fd5b506103a2610466366004612d6c565b610ae5565b34801561047757600080fd5b5060405160098152602001610358565b34801561049357600080fd5b506103146104a2366004612bd3565b610b69565b3480156104b357600080fd5b506103816104c2366004612cb7565b610d58565b3480156104d357600080fd5b506103a260105481565b3480156104e957600080fd5b506103146104f8366004612d6c565b610d8e565b34801561050957600080fd5b50610314610518366004612bd3565b610e9d565b34801561052957600080fd5b506103a2610538366004612d84565b610eeb565b34801561054957600080fd5b50610314610558366004612d6c565b610fc3565b34801561056957600080fd5b50610314610578366004612bd3565b610ff7565b34801561058957600080fd5b50610381610598366004612bd3565b6001600160a01b031660009081526005602052604090205460ff1690565b3480156105c257600080fd5b506103146105d1366004612bd3565b61114a565b3480156105e257600080fd5b506018546105fc906201000090046001600160a01b031681565b6040516001600160a01b039091168152602001610358565b34801561062057600080fd5b5061031461062f366004612c83565b611195565b34801561064057600080fd5b506002546103a2565b34801561065557600080fd5b506103a260115481565b34801561066b57600080fd5b506103a261067a366004612bd3565b6111ea565b34801561068b57600080fd5b50610314611249565b3480156106a057600080fd5b506103a260165481565b3480156106b657600080fd5b506103816106c5366004612bd3565b6001600160a01b031660009081526006602052604090205460ff1690565b3480156106ef57600080fd5b506000546001600160a01b03166105fc565b34801561070d57600080fd5b5061031461071c366004612d6c565b6112ab565b34801561072d57600080fd5b5060408051808201909152600381526214109160ea1b602082015261034b565b34801561075957600080fd5b50600c546105fc906001600160a01b031681565b34801561077957600080fd5b506019546105fc906001600160a01b031681565b34801561079957600080fd5b506103816107a8366004612cb7565b6112df565b3480156107b957600080fd5b5061031461132e565b3480156107ce57600080fd5b506103816107dd366004612cb7565b611434565b3480156107ee57600080fd5b506103816107fd366004612bd3565b600a6020526000908152604090205460ff1681565b34801561081e57600080fd5b506103a260175481565b34801561083457600080fd5b50610381610843366004612bd3565b60096020526000908152604090205460ff1681565b34801561086457600080fd5b50610314610873366004612c83565b611441565b34801561088457600080fd5b50610314610893366004612bd3565b611496565b3480156108a457600080fd5b506103146108b3366004612d52565b6114ea565b3480156108c457600080fd5b506018546103819060ff1681565b3480156108de57600080fd5b506103146108ed366004612d6c565b61155b565b3480156108fe57600080fd5b5061031461090d366004612bd3565b6115a5565b34801561091e57600080fd5b5061031461092d366004612d6c565b6115f1565b34801561093e57600080fd5b506103a261094d366004612c0b565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b34801561098457600080fd5b50610314610993366004612bd3565b611676565b3480156109a457600080fd5b506103146109b3366004612bd3565b6116c1565b3480156109c457600080fd5b506103146109d3366004612ce2565b611799565b6000546001600160a01b03163314610a0b5760405162461bcd60e51b8152600401610a0290612e5d565b60405180910390fd5b6010819055601355565b6000610a22338484611846565b5060015b92915050565b6000610a3984848461196a565b610a8b8433610a8685604051806060016040528060288152602001612fde602891396001600160a01b038a1660009081526008602090815260408083203384529091529020549190611cb5565b611846565b5060019392505050565b6000546001600160a01b03163314610abf5760405162461bcd60e51b8152600401610a0290612e5d565b610adf6064610ad983600d54611cef90919063ffffffff16565b90611d6e565b60175550565b6000600e54821115610b4c5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b6064820152608401610a02565b6000610b56611db0565b9050610b628382611d6e565b9392505050565b6000546001600160a01b03163314610b935760405162461bcd60e51b8152600401610a0290612e5d565b6001600160a01b03811660009081526006602052604090205460ff16610bfb5760405162461bcd60e51b815260206004820152601b60248201527f4163636f756e7420697320616c7265616479206578636c7564656400000000006044820152606401610a02565b60005b600b54811015610d5457816001600160a01b0316600b8281548110610c3357634e487b7160e01b600052603260045260246000fd5b6000918252602090912001546001600160a01b03161415610d4257600b8054610c5e90600190612f59565b81548110610c7c57634e487b7160e01b600052603260045260246000fd5b600091825260209091200154600b80546001600160a01b039092169183908110610cb657634e487b7160e01b600052603260045260246000fd5b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559184168152600482526040808220829055600690925220805460ff19169055600b805480610d1c57634e487b7160e01b600052603160045260246000fd5b600082815260209020810160001990810180546001600160a01b03191690550190555050565b80610d4c81612f70565b915050610bfe565b5050565b3360008181526008602090815260408083206001600160a01b03871684529091528120549091610a22918590610a869086611dd3565b3360008181526006602052604090205460ff1615610e035760405162461bcd60e51b815260206004820152602c60248201527f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460448201526b3434b990333ab731ba34b7b760a11b6064820152608401610a02565b6000806000610e1185611e32565b935093509350506000610e22611db0565b90506000610e338786868686611ec9565b50506001600160a01b038716600090815260036020526040902054909150610e5b9082611f3d565b6001600160a01b038716600090815260036020526040902055600e54610e819082611f3d565b600e55600f54610e919088611dd3565b600f5550505050505050565b6000546001600160a01b03163314610ec75760405162461bcd60e51b8152600401610a0290612e5d565b6001600160a01b03166000908152600560205260409020805460ff19166001179055565b6000600d54831115610f3f5760405162461bcd60e51b815260206004820152601f60248201527f416d6f756e74206d757374206265206c657373207468616e20737570706c79006044820152606401610a02565b81610f84576000806000610f5286611e32565b935093509350506000610f63611db0565b90506000610f748886868686611ec9565b50909650610a2695505050505050565b6000806000610f9286611e32565b935093509350506000610fa3611db0565b90506000610fb48886868686611ec9565b509650610a2695505050505050565b6000546001600160a01b03163314610fed5760405162461bcd60e51b8152600401610a0290612e5d565b6012819055601555565b6000546001600160a01b031633146110215760405162461bcd60e51b8152600401610a0290612e5d565b6001600160a01b03811660009081526006602052604090205460ff161561108a5760405162461bcd60e51b815260206004820152601b60248201527f4163636f756e7420697320616c7265616479206578636c7564656400000000006044820152606401610a02565b6001600160a01b038116600090815260036020526040902054156110e4576001600160a01b0381166000908152600360205260409020546110ca90610ae5565b6001600160a01b0382166000908152600460205260409020555b6001600160a01b03166000818152600660205260408120805460ff19166001908117909155600b805491820181559091527f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db90180546001600160a01b0319169091179055565b6000546001600160a01b031633146111745760405162461bcd60e51b8152600401610a0290612e5d565b6001600160a01b03166000908152600760205260409020805460ff19169055565b6000546001600160a01b031633146111bf5760405162461bcd60e51b8152600401610a0290612e5d565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6001600160a01b03811660009081526006602052604081205460ff161561122757506001600160a01b031660009081526004602052604090205490565b6001600160a01b038216600090815260036020526040902054610a2690610ae5565b6000546001600160a01b031633146112735760405162461bcd60e51b8152600401610a0290612e5d565b600080546040516001600160a01b0390911690600080516020613006833981519152908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146112d55760405162461bcd60e51b8152600401610a0290612e5d565b6011819055601455565b6000610a223384610a8685604051806060016040528060248152602001612fba602491393360009081526008602090815260408083206001600160a01b038d1684529091529020549190611cb5565b6001546001600160a01b031633146113945760405162461bcd60e51b815260206004820152602360248201527f596f7520646f6e27742068617665207065726d697373696f6e20746f20756e6c6044820152626f636b60e81b6064820152608401610a02565b60025442116113e55760405162461bcd60e51b815260206004820152601860248201527f436f6e7472616374206973207374696c6c206c6f636b656400000000000000006044820152606401610a02565b600154600080546040516001600160a01b03938416939091169160008051602061300683398151915291a3600154600080546001600160a01b0319166001600160a01b03909216919091179055565b6000610a2233848461196a565b6000546001600160a01b0316331461146b5760405162461bcd60e51b8152600401610a0290612e5d565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b6000546001600160a01b031633146114c05760405162461bcd60e51b8152600401610a0290612e5d565b601880546001600160a01b03909216620100000262010000600160b01b0319909216919091179055565b6000546001600160a01b031633146115145760405162461bcd60e51b8152600401610a0290612e5d565b6018805460ff19168215159081179091556040519081527f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc1599060200160405180910390a150565b6000546001600160a01b031633146115855760405162461bcd60e51b8152600401610a0290612e5d565b61159f6064610ad983600d54611cef90919063ffffffff16565b60165550565b6000546001600160a01b031633146115cf5760405162461bcd60e51b8152600401610a0290612e5d565b601980546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b0316331461161b5760405162461bcd60e51b8152600401610a0290612e5d565b60008054600180546001600160a01b03199081166001600160a01b0384161790915516905561164a8142612f02565b600255600080546040516001600160a01b0390911690600080516020613006833981519152908390a350565b6000546001600160a01b031633146116a05760405162461bcd60e51b8152600401610a0290612e5d565b6001600160a01b03166000908152600560205260409020805460ff19169055565b6000546001600160a01b031633146116eb5760405162461bcd60e51b8152600401610a0290612e5d565b6001600160a01b0381166117505760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a02565b600080546040516001600160a01b038085169392169160008051602061300683398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146117c35760405162461bcd60e51b8152600401610a0290612e5d565b60005b81811015611841576001600760008585858181106117f457634e487b7160e01b600052603260045260246000fd5b90506020020160208101906118099190612bd3565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905561183a81612f70565b90506117c6565b505050565b6001600160a01b0383166118a85760405162461bcd60e51b8152602060048201526024808201527f42455032303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a02565b6001600160a01b0382166119095760405162461bcd60e51b815260206004820152602260248201527f42455032303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a02565b6001600160a01b0383811660008181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526007602052604090205460ff161580156119ac57506001600160a01b03821660009081526007602052604090205460ff16155b6119f85760405162461bcd60e51b815260206004820152601b60248201527f54686973206164647265737320697320626c61636b6c697374656400000000006044820152606401610a02565b6001600160a01b038316611a5c5760405162461bcd60e51b815260206004820152602560248201527f42455032303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a02565b6001600160a01b038216611abe5760405162461bcd60e51b815260206004820152602360248201527f42455032303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a02565b60008111611b205760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610a02565b6000546001600160a01b03848116911614801590611b4c57506000546001600160a01b03838116911614155b15611bb457601654811115611bb45760405162461bcd60e51b815260206004820152602860248201527f5472616e7366657220616d6f756e74206578636565647320746865206d6178546044820152673c20b6b7bab73a1760c11b6064820152608401610a02565b6000611bbf306111ea565b90506016548110611bcf57506016545b60175481108015908190611beb5750601854610100900460ff16155b8015611c1057506001600160a01b03851660009081526009602052604090205460ff16155b8015611c3557506001600160a01b0384166000908152600a602052604090205460ff16155b8015611c43575060185460ff165b15611c56576017549150611c5682611f7f565b6001600160a01b03851660009081526005602052604090205460019060ff1680611c9857506001600160a01b03851660009081526005602052604090205460ff165b15611ca1575060005b611cad86868684612020565b505050505050565b60008184841115611cd95760405162461bcd60e51b8152600401610a029190612dd3565b506000611ce68486612f59565b95945050505050565b600082611cfe57506000610a26565b6000611d0a8385612f3a565b905082611d178583612f1a565b14610b625760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610a02565b6000610b6283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612201565b6000806000611dbd61222f565b9092509050611dcc8282611d6e565b9250505090565b600080611de08385612f02565b905083811015610b625760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610a02565b6000806000806000611e55612710610ad960105489611cef90919063ffffffff16565b90506000611e74612710610ad96011548a611cef90919063ffffffff16565b90506000611e93612710610ad96012548b611cef90919063ffffffff16565b90506000611ea18985611f3d565b9050611ead8184611f3d565b9050611eb98183611f3d565b9993985091965094509092505050565b6000808080611ed88986611cef565b90506000611ee68987611cef565b90506000611ef48988611cef565b90506000611f028989611cef565b90506000611f108585611f3d565b9050611f1c8184611f3d565b9050611f288183611f3d565b949d949c50929a509298505050505050505050565b6000610b6283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611cb5565b6018805461ff0019166101001790556000611f9b826002611d6e565b90506000611fa98383611f3d565b905047611fb5836123e9565b6000611fc14783611f3d565b9050611fcd838261258b565b60408051858152602081018390529081018490527f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5619060600160405180910390a150506018805461ff0019169055505050565b6001600160a01b03841660009081526007602052604090205460ff1615801561206257506001600160a01b03831660009081526007602052604090205460ff16155b61207e5760405162461bcd60e51b8152600401610a0290612e26565b8061208b5761208b61267c565b6001600160a01b03841660009081526006602052604090205460ff1680156120cc57506001600160a01b03831660009081526006602052604090205460ff16155b156120e1576120dc8484846126c1565b6121df565b6001600160a01b03841660009081526006602052604090205460ff1615801561212257506001600160a01b03831660009081526006602052604090205460ff165b15612132576120dc84848461287c565b6001600160a01b03841660009081526006602052604090205460ff1615801561217457506001600160a01b03831660009081526006602052604090205460ff16155b15612184576120dc84848461299f565b6001600160a01b03841660009081526006602052604090205460ff1680156121c457506001600160a01b03831660009081526006602052604090205460ff165b156121d4576120dc848484612a5d565b6121df84848461299f565b806121fb576121fb601354601055601454601155601554601255565b50505050565b600081836122225760405162461bcd60e51b8152600401610a029190612dd3565b506000611ce68486612f1a565b600e54600d546000918291825b600b548110156123b9578260036000600b848154811061226c57634e487b7160e01b600052603260045260246000fd5b60009182526020808320909101546001600160a01b0316835282019290925260400190205411806122e557508160046000600b84815481106122be57634e487b7160e01b600052603260045260246000fd5b60009182526020808320909101546001600160a01b03168352820192909252604001902054115b156122fb57600e54600d54945094505050509091565b61234f60036000600b848154811061232357634e487b7160e01b600052603260045260246000fd5b60009182526020808320909101546001600160a01b031683528201929092526040019020548490611f3d565b92506123a560046000600b848154811061237957634e487b7160e01b600052603260045260246000fd5b60009182526020808320909101546001600160a01b031683528201929092526040019020548390611f3d565b9150806123b181612f70565b91505061223c565b50600d54600e546123c991611d6e565b8210156123e057600e54600d549350935050509091565b90939092509050565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061242c57634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b031681525050601860029054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561249a57600080fd5b505afa1580156124ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124d29190612bef565b816001815181106124f357634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201015260185461251f9130916201000090041684611846565b60185460405163791ac94760e01b8152620100009091046001600160a01b03169063791ac9479061255d908590600090869030904290600401612e92565b600060405180830381600087803b15801561257757600080fd5b505af1158015611cad573d6000803e3d6000fd5b6018546125a99030906201000090046001600160a01b031684611846565b6018546001600160a01b03620100009091041663f305d7198230856000806125d96000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b15801561263c57600080fd5b505af1158015612650573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906126759190612da6565b5050505050565b60105415801561268c5750601154155b80156126985750601254155b1561269f57565b6010805460135560118054601455601280546015556000928390559082905555565b6000806000806126d085611e32565b935093509350935060006126e2611db0565b905060008060006126f68988888888611ec9565b6001600160a01b038e16600090815260076020526040902054929550909350915060ff1615801561274057506001600160a01b038a1660009081526007602052604090205460ff16155b61275c5760405162461bcd60e51b8152600401610a0290612e26565b6001600160a01b038b1660009081526004602052604090205461277f908a611f3d565b6001600160a01b038c166000908152600460209081526040808320939093556003905220546127ae9084611f3d565b6001600160a01b03808d1660009081526003602052604080822093909355908c16815220546127dd9083611dd3565b6001600160a01b038b16600090815260036020526040902055612801308786612aec565b600c54612818906001600160a01b03168686612aec565b6128228188612b9a565b896001600160a01b03168b6001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8a60405161286791815260200190565b60405180910390a35050505050505050505050565b60008060008061288b85611e32565b9350935093509350600061289d611db0565b905060008060006128b18988888888611ec9565b6001600160a01b038e16600090815260076020526040902054929550909350915060ff161580156128fb57506001600160a01b038a1660009081526007602052604090205460ff16155b6129175760405162461bcd60e51b8152600401610a0290612e26565b6001600160a01b038b1660009081526003602052604090205461293a9084611f3d565b6001600160a01b03808d16600090815260036020908152604080832094909455918d168152600490915220546129709089611dd3565b6001600160a01b038b166000908152600460209081526040808320939093556003905220546127dd9083611dd3565b6000806000806129ae85611e32565b935093509350935060006129c0611db0565b905060008060006129d48988888888611ec9565b6001600160a01b038e16600090815260076020526040902054929550909350915060ff16158015612a1e57506001600160a01b038a1660009081526007602052604090205460ff16155b612a3a5760405162461bcd60e51b8152600401610a0290612e26565b6001600160a01b038b166000908152600360205260409020546127ae9084611f3d565b600080600080612a6c85611e32565b93509350935093506000612a7e611db0565b90506000806000612a928988888888611ec9565b6001600160a01b038e166000908152600460205260409020549295509093509150612abd908a611f3d565b6001600160a01b038c1660009081526004602090815260408083209390935560039052205461293a9084611f3d565b60008211612af957505050565b6000612b058383611cef565b6001600160a01b038516600090815260036020526040902054909150612b2b9082611dd3565b6001600160a01b03851660009081526003602090815260408083209390935560069052205460ff16156121fb576001600160a01b038416600090815260046020526040902054612b7b9084611dd3565b6001600160a01b03851660009081526004602052604090205550505050565b600e54612ba79083611f3d565b600e55600f54612bb79082611dd3565b600f555050565b80358015158114612bce57600080fd5b919050565b600060208284031215612be4578081fd5b8135610b6281612fa1565b600060208284031215612c00578081fd5b8151610b6281612fa1565b60008060408385031215612c1d578081fd5b8235612c2881612fa1565b91506020830135612c3881612fa1565b809150509250929050565b600080600060608486031215612c57578081fd5b8335612c6281612fa1565b92506020840135612c7281612fa1565b929592945050506040919091013590565b60008060408385031215612c95578182fd5b8235612ca081612fa1565b9150612cae60208401612bbe565b90509250929050565b60008060408385031215612cc9578182fd5b8235612cd481612fa1565b946020939093013593505050565b60008060208385031215612cf4578182fd5b823567ffffffffffffffff80821115612d0b578384fd5b818501915085601f830112612d1e578384fd5b813581811115612d2c578485fd5b8660208260051b8501011115612d40578485fd5b60209290920196919550909350505050565b600060208284031215612d63578081fd5b610b6282612bbe565b600060208284031215612d7d578081fd5b5035919050565b60008060408385031215612d96578182fd5b82359150612cae60208401612bbe565b600080600060608486031215612dba578283fd5b8351925060208401519150604084015190509250925092565b6000602080835283518082850152825b81811015612dff57858101830151858201604001528201612de3565b81811115612e105783604083870101525b50601f01601f1916929092016040019392505050565b6020808252601f908201527f546f2f66726f6d206164647265737320697320626c61636b6c69737465642100604082015260600190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b81811015612ee15784516001600160a01b031683529383019391830191600101612ebc565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115612f1557612f15612f8b565b500190565b600082612f3557634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615612f5457612f54612f8b565b500290565b600082821015612f6b57612f6b612f8b565b500390565b6000600019821415612f8457612f84612f8b565b5060010190565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b0381168114612fb657600080fd5b5056fe42455032303a64656372656173656420616c6c6f77616e63652062656c6f77207a65726f42455032303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63658be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0a2646970667358221220e307a9ec2fe5e85a6367f0284b28b0e1254336b3b0c2ff17b69e2292f6011dcb64736f6c63430008040033000000000000000000000000bda873df1af1e79524953aa82f2f5d4157015886000000000000000000000000bda873df1af1e79524953aa82f2f5d4157015886

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

000000000000000000000000bda873df1af1e79524953aa82f2f5d4157015886000000000000000000000000bda873df1af1e79524953aa82f2f5d4157015886

-----Decoded View---------------
Arg [0] : cOwner (address): 0xbda873df1af1e79524953aa82f2f5d4157015886
Arg [1] : marketingWallet (address): 0xbda873df1af1e79524953aa82f2f5d4157015886

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


Deployed ByteCode Sourcemap

12987:21822:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21398:131;;;;;;;;;;-1:-1:-1;21398:131:0;;;;;:::i;:::-;;:::i;:::-;;15888:83;;;;;;;;;;-1:-1:-1;15958:5:0;;;;;;;;;;;;-1:-1:-1;;;15958:5:0;;;;15888:83;;;;;;;:::i;:::-;;;;;;;;16788:162;;;;;;;;;;-1:-1:-1;16788:162:0;;;;;:::i;:::-;;:::i;:::-;;;4870:14:1;;4863:22;4845:41;;4833:2;4818:18;16788:162:0;4800:92:1;21072:87:0;;;;;;;;;;-1:-1:-1;21141:10:0;;21072:87;;;12862:25:1;;;12850:2;12835:18;21072:87:0;12817:76:1;16159:95:0;;;;;;;;;;-1:-1:-1;16239:7:0;;16159:95;;13297:47;;;;;;;;;;-1:-1:-1;13297:47:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;14067:34;;;;;;;;;;;;;;;;17299:313;;;;;;;;;;-1:-1:-1;17299:313:0;;;;;:::i;:::-;;:::i;22021:175::-;;;;;;;;;;-1:-1:-1;22021:175:0;;;;;:::i;:::-;;:::i;19987:254::-;;;;;;;;;;-1:-1:-1;19987:254:0;;;;;:::i;:::-;;:::i;16070:83::-;;;;;;;;;;-1:-1:-1;16070:83:0;;13979:1;14352:36:1;;14340:2;14325:18;16070:83:0;14307:87:1;20587:479:0;;;;;;;;;;-1:-1:-1;20587:479:0;;;;;:::i;:::-;;:::i;17618:220::-;;;;;;;;;;-1:-1:-1;17618:220:0;;;;;:::i;:::-;;:::i;13989:32::-;;;;;;;;;;;;;;;;18591:570;;;;;;;;;;-1:-1:-1;18591:570:0;;;;;:::i;:::-;;:::i;21165:111::-;;;;;;;;;;-1:-1:-1;21165:111:0;;;;;:::i;:::-;;:::i;19167:814::-;;;;;;;;;;-1:-1:-1;19167:814:0;;;;;:::i;:::-;;:::i;21708:167::-;;;;;;;;;;-1:-1:-1;21708:167:0;;;;;:::i;:::-;;:::i;20247:334::-;;;;;;;;;;-1:-1:-1;20247:334:0;;;;;:::i;:::-;;:::i;22377:123::-;;;;;;;;;;-1:-1:-1;22377:123:0;;;;;:::i;:::-;-1:-1:-1;;;;;22465:27:0;22441:4;22465:27;;;:18;:27;;;;;;;;;22377:123;18154:115;;;;;;;;;;-1:-1:-1;18154:115:0;;;;;:::i;:::-;;:::i;14545:42::-;;;;;;;;;;-1:-1:-1;14545:42:0;;;;;;;-1:-1:-1;;;;;14545:42:0;;;;;;-1:-1:-1;;;;;4049:32:1;;;4031:51;;4019:2;4004:18;14545:42:0;3986:102:1;22632:131:0;;;;;;;;;;-1:-1:-1;22632:131:0;;;;;:::i;:::-;;:::i;4503:90::-;;;;;;;;;;-1:-1:-1;4576:9:0;;4503:90;;14028:32;;;;;;;;;;;;;;;;16260:198;;;;;;;;;;-1:-1:-1;16260:198:0;;;;;:::i;:::-;;:::i;4095:148::-;;;;;;;;;;;;;:::i;14286:70::-;;;;;;;;;;;;;;;;22506:120;;;;;;;;;;-1:-1:-1;22506:120:0;;;;;:::i;:::-;-1:-1:-1;;;;;22598:20:0;22574:4;22598:20;;;:11;:20;;;;;;;;;22506:120;3881:79;;;;;;;;;;-1:-1:-1;3919:7:0;3946:6;-1:-1:-1;;;;;3946:6:0;3881:79;;21535:167;;;;;;;;;;-1:-1:-1;21535:167:0;;;;;:::i;:::-;;:::i;15977:87::-;;;;;;;;;;-1:-1:-1;16049:7:0;;;;;;;;;;;;-1:-1:-1;;;16049:7:0;;;;15977:87;;13597:31;;;;;;;;;;-1:-1:-1;13597:31:0;;;;-1:-1:-1;;;;;13597:31:0;;;14594:40;;;;;;;;;;-1:-1:-1;14594:40:0;;;;-1:-1:-1;;;;;14594:40:0;;;17844:269;;;;;;;;;;-1:-1:-1;17844:269:0;;;;;:::i;:::-;;:::i;4835:298::-;;;;;;;;;;;;;:::i;16464:168::-;;;;;;;;;;-1:-1:-1;16464:168:0;;;;;:::i;:::-;;:::i;13495:59::-;;;;;;;;;;-1:-1:-1;13495:59:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;14363:69;;;;;;;;;;;;;;;;13427:61;;;;;;;;;;-1:-1:-1;13427:61:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;22769:126;;;;;;;;;;-1:-1:-1;22769:126:0;;;;;:::i;:::-;;:::i;22901:178::-;;;;;;;;;;-1:-1:-1;22901:178:0;;;;;:::i;:::-;;:::i;22202:169::-;;;;;;;;;;-1:-1:-1;22202:169:0;;;;;:::i;:::-;;:::i;14459:42::-;;;;;;;;;;-1:-1:-1;14459:42:0;;;;;;;;21881:134;;;;;;;;;;-1:-1:-1;21881:134:0;;;;;:::i;:::-;;:::i;23085:91::-;;;;;;;;;;-1:-1:-1;23085:91:0;;;;;:::i;:::-;;:::i;4601:226::-;;;;;;;;;;-1:-1:-1;4601:226:0;;;;;:::i;:::-;;:::i;16638:144::-;;;;;;;;;;-1:-1:-1;16638:144:0;;;;;:::i;:::-;-1:-1:-1;;;;;16747:18:0;;;16720:7;16747:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;16638:144;21282:110;;;;;;;;;;-1:-1:-1;21282:110:0;;;;;:::i;:::-;;:::i;4251:244::-;;;;;;;;;;-1:-1:-1;4251:244:0;;;;;:::i;:::-;;:::i;18376:188::-;;;;;;;;;;-1:-1:-1;18376:188:0;;;;;:::i;:::-;;:::i;21398:131::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;;;;;;;;;21470:7:::1;:16:::0;;;21497:15:::1;:24:::0;21398:131::o;16788:162::-;16864:4;16881:39;921:10;16904:7;16913:6;16881:8;:39::i;:::-;-1:-1:-1;16938:4:0;16788:162;;;;;:::o;17299:313::-;17398:4;17415:36;17425:6;17433:9;17444:6;17415:9;:36::i;:::-;17462:120;17471:6;921:10;17492:89;17530:6;17492:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17492:19:0;;;;;;:11;:19;;;;;;;;921:10;17492:33;;;;;;;;;;:37;:89::i;:::-;17462:8;:120::i;:::-;-1:-1:-1;17600:4:0;17299:313;;;;;:::o;22021:175::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;22147:41:::1;22184:3;22147:32;22159:19;22147:7;;:11;;:32;;;;:::i;:::-;:36:::0;::::1;:41::i;:::-;22113:30;:75:::0;-1:-1:-1;22021:175:0:o;19987:254::-;20053:7;20092;;20081;:18;;20073:73;;;;-1:-1:-1;;;20073:73:0;;7106:2:1;20073:73:0;;;7088:21:1;7145:2;7125:18;;;7118:30;7184:34;7164:18;;;7157:62;-1:-1:-1;;;7235:18:1;;;7228:40;7285:19;;20073:73:0;7078:232:1;20073:73:0;20159:19;20181:10;:8;:10::i;:::-;20159:32;-1:-1:-1;20209:24:0;:7;20159:32;20209:11;:24::i;:::-;20202:31;19987:254;-1:-1:-1;;;19987:254:0:o;20587:479::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;20667:20:0;::::1;;::::0;;;:11:::1;:20;::::0;;;;;::::1;;20659:60;;;::::0;-1:-1:-1;;;20659:60:0;;8640:2:1;20659:60:0::1;::::0;::::1;8622:21:1::0;8679:2;8659:18;;;8652:30;8718:29;8698:18;;;8691:57;8765:18;;20659:60:0::1;8612:177:1::0;20659:60:0::1;20737:9;20732:327;20756:9;:16:::0;20752:20;::::1;20732:327;;;20814:7;-1:-1:-1::0;;;;;20798:23:0::1;:9;20808:1;20798:12;;;;;;-1:-1:-1::0;;;20798:12:0::1;;;;;;;;;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;20798:12:0::1;:23;20794:254;;;20857:9;20867:16:::0;;:20:::1;::::0;20886:1:::1;::::0;20867:20:::1;:::i;:::-;20857:31;;;;;;-1:-1:-1::0;;;20857:31:0::1;;;;;;;;;;::::0;;;::::1;::::0;;;::::1;::::0;20842:9:::1;:12:::0;;-1:-1:-1;;;;;20857:31:0;;::::1;::::0;20852:1;;20842:12;::::1;;;-1:-1:-1::0;;;20842:12:0::1;;;;;;;;;;::::0;;;::::1;::::0;;;;;;::::1;:46:::0;;-1:-1:-1;;;;;;20842:46:0::1;-1:-1:-1::0;;;;;20842:46:0;;::::1;;::::0;;20907:16;;::::1;::::0;;:7:::1;:16:::0;;;;;;:20;;;20946:11:::1;:20:::0;;;;:28;;-1:-1:-1;;20946:28:0::1;::::0;;20993:9:::1;:15:::0;;;::::1;;-1:-1:-1::0;;;20993:15:0::1;;;;;;;;;;::::0;;;::::1;::::0;;;;-1:-1:-1;;20993:15:0;;;;;-1:-1:-1;;;;;;20993:15:0::1;::::0;;;;;20732:327:::1;20587:479:::0;:::o;20794:254::-:1;20774:3:::0;::::1;::::0;::::1;:::i;:::-;;;;20732:327;;;;20587:479:::0;:::o;17618:220::-;921:10;17707:4;17757:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;17757:34:0;;;;;;;;;;17707:4;;17724:84;;17747:7;;17757:50;;17796:10;17757:38;:50::i;18591:570::-;921:10;18643:14;18692:19;;;:11;:19;;;;;;;;18691:20;18683:77;;;;-1:-1:-1;;;18683:77:0;;11698:2:1;18683:77:0;;;11680:21:1;11737:2;11717:18;;;11710:30;11776:34;11756:18;;;11749:62;-1:-1:-1;;;11827:18:1;;;11820:42;11879:19;;18683:77:0;11670:234:1;18683:77:0;18776:12;18790:18;18810;18833:20;18845:7;18833:11;:20::i;:::-;18773:80;;;;;;;18864:19;18886:10;:8;:10::i;:::-;18864:32;;18908:15;18929:64;18941:7;18950:4;18956:10;18969;18981:11;18929;:64::i;:::-;-1:-1:-1;;;;;;;19024:15:0;;;;;;:7;:15;;;;;;18907:86;;-1:-1:-1;19024:28:0;;18907:86;19024:19;:28::i;:::-;-1:-1:-1;;;;;19006:15:0;;;;;;:7;:15;;;;;:46;19081:7;;:20;;19093:7;19081:11;:20::i;:::-;19063:7;:38;19130:10;;:23;;19145:7;19130:14;:23::i;:::-;19112:10;:41;-1:-1:-1;;;;;;;18591:570:0:o;21165:111::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;21234:27:0::1;;::::0;;;:18:::1;:27;::::0;;;;:34;;-1:-1:-1;;21234:34:0::1;21264:4;21234:34;::::0;;21165:111::o;19167:814::-;19258:7;19297;;19286;:18;;19278:62;;;;-1:-1:-1;;;19278:62:0;;9352:2:1;19278:62:0;;;9334:21:1;9391:2;9371:18;;;9364:30;9430:33;9410:18;;;9403:61;9481:18;;19278:62:0;9324:181:1;19278:62:0;19358:17;19353:621;;19395:12;19409:18;19429;19452:20;19464:7;19452:11;:20::i;:::-;19392:80;;;;;;;19487:19;19509:10;:8;:10::i;:::-;19487:32;;19535:15;19556:64;19568:7;19577:4;19584:10;19596;19608:11;19556;:64::i;:::-;-1:-1:-1;19534:86:0;;-1:-1:-1;19637:14:0;;-1:-1:-1;;;;;;19637:14:0;19353:621;19689:12;19703:18;19723;19746:20;19758:7;19746:11;:20::i;:::-;19686:80;;;;;;;19781:19;19803:10;:8;:10::i;:::-;19781:32;;19831:23;19859:64;19871:7;19880:4;19887:10;19899;19911:11;19859;:64::i;:::-;-1:-1:-1;19828:95:0;-1:-1:-1;19940:22:0;;-1:-1:-1;;;;;;19940:22:0;21708:167;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;21792:13:::1;:28:::0;;;21831:21:::1;:36:::0;21708:167::o;20247:334::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;20328:20:0;::::1;;::::0;;;:11:::1;:20;::::0;;;;;::::1;;20327:21;20319:61;;;::::0;-1:-1:-1;;;20319:61:0;;8640:2:1;20319:61:0::1;::::0;::::1;8622:21:1::0;8679:2;8659:18;;;8652:30;8718:29;8698:18;;;8691:57;8765:18;;20319:61:0::1;8612:177:1::0;20319:61:0::1;-1:-1:-1::0;;;;;20397:16:0;::::1;20416:1;20397:16:::0;;;:7:::1;:16;::::0;;;;;:20;20393:109:::1;;-1:-1:-1::0;;;;;20473:16:0;::::1;;::::0;;;:7:::1;:16;::::0;;;;;20453:37:::1;::::0;:19:::1;:37::i;:::-;-1:-1:-1::0;;;;;20434:16:0;::::1;;::::0;;;:7:::1;:16;::::0;;;;:56;20393:109:::1;-1:-1:-1::0;;;;;20512:20:0::1;;::::0;;;:11:::1;:20;::::0;;;;:27;;-1:-1:-1;;20512:27:0::1;20535:4;20512:27:::0;;::::1;::::0;;;20550:9:::1;:23:::0;;;;::::1;::::0;;;;;;::::1;::::0;;-1:-1:-1;;;;;;20550:23:0::1;::::0;;::::1;::::0;;20247:334::o;18154:115::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;18230:23:0::1;18256:5;18230:23:::0;;;:14:::1;:23;::::0;;;;:31;;-1:-1:-1;;18230:31:0::1;::::0;;18154:115::o;22632:131::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;22720:31:0;;;::::1;;::::0;;;:28:::1;:31;::::0;;;;:35;;-1:-1:-1;;22720:35:0::1;::::0;::::1;;::::0;;;::::1;::::0;;22632:131::o;16260:198::-;-1:-1:-1;;;;;16350:20:0;;16326:7;16350:20;;;:11;:20;;;;;;;;16346:49;;;-1:-1:-1;;;;;;16379:16:0;;;;;:7;:16;;;;;;;16260:198::o;16346:49::-;-1:-1:-1;;;;;16433:16:0;;;;;;:7;:16;;;;;;16413:37;;:19;:37::i;4095:148::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;4202:1:::1;4186:6:::0;;4165:40:::1;::::0;-1:-1:-1;;;;;4186:6:0;;::::1;::::0;-1:-1:-1;;;;;;;;;;;4165:40:0;4202:1;;4165:40:::1;4233:1;4216:19:::0;;-1:-1:-1;;;;;;4216:19:0::1;::::0;;4095:148::o;21535:167::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;21619:13:::1;:28:::0;;;21658:21:::1;:36:::0;21535:167::o;17844:269::-;17938:4;17955:128;921:10;17978:7;17987:95;18026:15;17987:95;;;;;;;;;;;;;;;;;921:10;17987:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;17987:34:0;;;;;;;;;;;;:38;:95::i;4835:298::-;4887:14;;-1:-1:-1;;;;;4887:14:0;4905:10;4887:28;4879:76;;;;-1:-1:-1;;;4879:76:0;;12514:2:1;4879:76:0;;;12496:21:1;12553:2;12533:18;;;12526:30;12592:34;12572:18;;;12565:62;-1:-1:-1;;;12643:18:1;;;12636:33;12686:19;;4879:76:0;12486:225:1;4879:76:0;4992:9;;4974:15;:27;4966:65;;;;-1:-1:-1;;;4966:65:0;;6348:2:1;4966:65:0;;;6330:21:1;6387:2;6367:18;;;6360:30;6426:26;6406:18;;;6399:54;6470:18;;4966:65:0;6320:174:1;4966:65:0;5076:14;;;5068:6;;5047:44;;-1:-1:-1;;;;;5076:14:0;;;;5068:6;;;;-1:-1:-1;;;;;;;;;;;5047:44:0;;5111:14;;;5102:23;;-1:-1:-1;;;;;;5102:23:0;-1:-1:-1;;;;;5111:14:0;;;5102:23;;;;;;4835:298::o;16464:168::-;16543:4;16560:42;921:10;16584:9;16595:6;16560:9;:42::i;22769:126::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;22854:29:0;;;::::1;;::::0;;;:26:::1;:29;::::0;;;;:33;;-1:-1:-1;;22854:33:0::1;::::0;::::1;;::::0;;;::::1;::::0;;22769:126::o;22901:178::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;23037:16:::1;:34:::0;;-1:-1:-1;;;;;23037:34:0;;::::1;::::0;::::1;-1:-1:-1::0;;;;;;23037:34:0;;::::1;::::0;;;::::1;::::0;;22901:178::o;22202:169::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;22278:22:::1;:32:::0;;-1:-1:-1;;22278:32:0::1;::::0;::::1;;::::0;;::::1;::::0;;;22326:37:::1;::::0;4845:41:1;;;22326:37:0::1;::::0;4833:2:1;4818:18;22326:37:0::1;;;;;;;22202:169:::0;:::o;21881:134::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;21973:34:::1;22003:3;21973:25;21985:12;21973:7;;:11;;:25;;;;:::i;:34::-;21958:12;:49:::0;-1:-1:-1;21881:134:0:o;23085:91::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;23150:14:::1;:18:::0;;-1:-1:-1;;;;;;23150:18:0::1;-1:-1:-1::0;;;;;23150:18:0;;;::::1;::::0;;;::::1;::::0;;23085:91::o;4601:226::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;4682:6:::1;::::0;;;4665:23;;-1:-1:-1;;;;;;4665:23:0;;::::1;-1:-1:-1::0;;;;;4682:6:0;::::1;4665:23;::::0;;;4699:19:::1;::::0;;4741:22:::1;4759:4:::0;4741:15:::1;:22;:::i;:::-;4729:9;:34:::0;4816:1:::1;4800:6:::0;;4779:40:::1;::::0;-1:-1:-1;;;;;4800:6:0;;::::1;::::0;-1:-1:-1;;;;;;;;;;;4779:40:0;4816:1;;4779:40:::1;4601:226:::0;:::o;21282:110::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;21349:27:0::1;21379:5;21349:27:::0;;;:18:::1;:27;::::0;;;;:35;;-1:-1:-1;;21349:35:0::1;::::0;;21282:110::o;4251:244::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;4340:22:0;::::1;4332:73;;;::::0;-1:-1:-1;;;4332:73:0;;7517:2:1;4332:73:0::1;::::0;::::1;7499:21:1::0;7556:2;7536:18;;;7529:30;7595:34;7575:18;;;7568:62;-1:-1:-1;;;7646:18:1;;;7639:36;7692:19;;4332:73:0::1;7489:228:1::0;4332:73:0::1;4442:6;::::0;;4421:38:::1;::::0;-1:-1:-1;;;;;4421:38:0;;::::1;::::0;4442:6;::::1;::::0;-1:-1:-1;;;;;;;;;;;4421:38:0;::::1;4470:6;:17:::0;;-1:-1:-1;;;;;;4470:17:0::1;-1:-1:-1::0;;;;;4470:17:0;;;::::1;::::0;;;::::1;::::0;;4251:244::o;18376:188::-;4008:6;;-1:-1:-1;;;;;4008:6:0;921:10;4008:22;4000:67;;;;-1:-1:-1;;;4000:67:0;;;;;;;:::i;:::-;18463:9:::1;18458:99;18474:20:::0;;::::1;18458:99;;;18543:4;18512:14;:28;18527:9;;18537:1;18527:12;;;;;-1:-1:-1::0;;;18527:12:0::1;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;18512:28:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;18512:28:0;:35;;-1:-1:-1;;18512:35:0::1;::::0;::::1;;::::0;;;::::1;::::0;;18496:3:::1;::::0;::::1;:::i;:::-;;;18458:99;;;;18376:188:::0;;:::o;16956:337::-;-1:-1:-1;;;;;17049:19:0;;17041:68;;;;-1:-1:-1;;;17041:68:0;;6701:2:1;17041:68:0;;;6683:21:1;6740:2;6720:18;;;6713:30;6779:34;6759:18;;;6752:62;-1:-1:-1;;;6830:18:1;;;6823:34;6874:19;;17041:68:0;6673:226:1;17041:68:0;-1:-1:-1;;;;;17128:21:0;;17120:68;;;;-1:-1:-1;;;17120:68:0;;12111:2:1;17120:68:0;;;12093:21:1;12150:2;12130:18;;;12123:30;12189:34;12169:18;;;12162:62;-1:-1:-1;;;12240:18:1;;;12233:32;12282:19;;17120:68:0;12083:224:1;17120:68:0;-1:-1:-1;;;;;17201:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;17253:32;;12862:25:1;;;17253:32:0;;12835:18:1;17253:32:0;;;;;;;16956:337;;;:::o;23201:1958::-;-1:-1:-1;;;;;23467:20:0;;;;;;:14;:20;;;;;;;;23466:21;:44;;;;-1:-1:-1;;;;;;23492:18:0;;;;;;:14;:18;;;;;;;;23491:19;23466:44;23458:84;;;;-1:-1:-1;;;23458:84:0;;8996:2:1;23458:84:0;;;8978:21:1;9035:2;9015:18;;;9008:30;9074:29;9054:18;;;9047:57;9121:18;;23458:84:0;8968:177:1;23458:84:0;-1:-1:-1;;;;;23561:18:0;;23553:68;;;;-1:-1:-1;;;23553:68:0;;5942:2:1;23553:68:0;;;5924:21:1;5981:2;5961:18;;;5954:30;6020:34;6000:18;;;5993:62;-1:-1:-1;;;6071:18:1;;;6064:35;6116:19;;23553:68:0;5914:227:1;23553:68:0;-1:-1:-1;;;;;23640:16:0;;23632:64;;;;-1:-1:-1;;;23632:64:0;;11294:2:1;23632:64:0;;;11276:21:1;11333:2;11313:18;;;11306:30;11372:34;11352:18;;;11345:62;-1:-1:-1;;;11423:18:1;;;11416:33;11466:19;;23632:64:0;11266:225:1;23632:64:0;23724:1;23715:6;:10;23707:64;;;;-1:-1:-1;;;23707:64:0;;10884:2:1;23707:64:0;;;10866:21:1;10923:2;10903:18;;;10896:30;10962:34;10942:18;;;10935:62;-1:-1:-1;;;11013:18:1;;;11006:39;11062:19;;23707:64:0;10856:231:1;23707:64:0;3919:7;3946:6;-1:-1:-1;;;;;23788:15:0;;;3946:6;;23788:15;;;;:32;;-1:-1:-1;3919:7:0;3946:6;-1:-1:-1;;;;;23807:13:0;;;3946:6;;23807:13;;23788:32;23784:140;;;23855:12;;23845:6;:22;;23837:75;;;;-1:-1:-1;;;23837:75:0;;9712:2:1;23837:75:0;;;9694:21:1;9751:2;9731:18;;;9724:30;9790:34;9770:18;;;9763:62;-1:-1:-1;;;9841:18:1;;;9834:38;9889:19;;23837:75:0;9684:230:1;23837:75:0;24253:28;24284:24;24302:4;24284:9;:24::i;:::-;24253:55;;24349:12;;24325:20;:36;24321:104;;-1:-1:-1;24401:12:0;;24321:104;24491:30;;24466:55;;;;;;;24550:56;;-1:-1:-1;24589:17:0;;;;;;;24588:18;24550:56;:108;;;;-1:-1:-1;;;;;;24624:34:0;;;;;;:28;:34;;;;;;;;24623:35;24550:108;:156;;;;-1:-1:-1;;;;;;24676:30:0;;;;;;:26;:30;;;;;;;;24675:31;24550:156;:195;;;;-1:-1:-1;24723:22:0;;;;24550:195;24532:356;;;24795:30;;24772:53;;24840:36;24855:20;24840:14;:36::i;:::-;-1:-1:-1;;;;;25004:24:0;;24900:12;25004:24;;;:18;:24;;;;;;24915:4;;25004:24;;;:50;;-1:-1:-1;;;;;;25032:22:0;;;;;;:18;:22;;;;;;;;25004:50;25000:98;;;-1:-1:-1;25081:5:0;25000:98;25110:41;25125:4;25131:2;25135:6;25143:7;25110:14;:41::i;:::-;23201:1958;;;;;;:::o;2230:193::-;2317:7;2353:12;2345:6;;;;2337:29;;;;-1:-1:-1;;;2337:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2377:9:0;2389:5;2393:1;2389;:5;:::i;:::-;2377:17;2230:193;-1:-1:-1;;;;;2230:193:0:o;2431:228::-;2489:7;2513:6;2509:25;;-1:-1:-1;2530:1:0;2523:8;;2509:25;2546:9;2558:5;2562:1;2558;:5;:::i;:::-;2546:17;-1:-1:-1;2591:1:0;2582:5;2586:1;2546:17;2582:5;:::i;:::-;:10;2574:56;;;;-1:-1:-1;;;2574:56:0;;10121:2:1;2574:56:0;;;10103:21:1;10160:2;10140:18;;;10133:30;10199:34;10179:18;;;10172:62;-1:-1:-1;;;10250:18:1;;;10243:31;10291:19;;2574:56:0;10093:223:1;2667:132:0;2725:7;2752:39;2756:1;2759;2752:39;;;;;;;;;;;;;;;;;:3;:39::i;33741:163::-;33782:7;33803:15;33820;33839:19;:17;:19::i;:::-;33802:56;;-1:-1:-1;33802:56:0;-1:-1:-1;33876:20:0;33802:56;;33876:11;:20::i;:::-;33869:27;;;;33741:163;:::o;1897:181::-;1955:7;;1987:5;1991:1;1987;:5;:::i;:::-;1975:17;;2016:1;2011;:6;;2003:46;;;;-1:-1:-1;;;2003:46:0;;7924:2:1;2003:46:0;;;7906:21:1;7963:2;7943:18;;;7936:30;8002:29;7982:18;;;7975:57;8049:18;;2003:46:0;7896:177:1;32557:545:0;32618:7;32627;32636;32645;32665:12;32686:31;32711:5;32686:20;32698:7;;32686;:11;;:20;;;;:::i;:31::-;32665:52;;32728:18;32749:37;32780:5;32749:26;32761:13;;32749:7;:11;;:26;;;;:::i;:37::-;32728:58;;32797:18;32818:37;32849:5;32818:26;32830:13;;32818:7;:11;;:26;;;;:::i;:37::-;32797:58;-1:-1:-1;32866:23:0;32892:17;:7;32904:4;32892:11;:17::i;:::-;32866:43;-1:-1:-1;32938:31:0;32866:43;32958:10;32938:19;:31::i;:::-;32920:49;-1:-1:-1;32998:31:0;32920:49;33018:10;32998:19;:31::i;:::-;32980:49;33065:4;;-1:-1:-1;33071:10:0;;-1:-1:-1;33071:10:0;-1:-1:-1;32557:545:0;;-1:-1:-1;;;32557:545:0:o;33108:627::-;33245:7;;;;33305:24;:7;33317:11;33305;:24::i;:::-;33283:46;-1:-1:-1;33340:12:0;33362:21;:4;33371:11;33362:8;:21::i;:::-;33340:43;-1:-1:-1;33394:18:0;33416:27;:10;33431:11;33416:14;:27::i;:::-;33394:49;-1:-1:-1;33454:18:0;33476:27;:10;33491:11;33476:14;:27::i;:::-;33454:49;-1:-1:-1;33514:23:0;33540:17;:7;33552:4;33540:11;:17::i;:::-;33514:43;-1:-1:-1;33586:31:0;33514:43;33606:10;33586:19;:31::i;:::-;33568:49;-1:-1:-1;33646:31:0;33568:49;33666:10;33646:19;:31::i;:::-;33696:7;;;;-1:-1:-1;33722:4:0;;-1:-1:-1;33108:627:0;;-1:-1:-1;;;;;;;;;33108:627:0:o;2086:136::-;2144:7;2171:43;2175:1;2178;2171:43;;;;;;;;;;;;;;;;;:3;:43::i;25165:953::-;14931:17;:24;;-1:-1:-1;;14931:24:0;;;;;;25317:27:::1;:20:::0;25342:1:::1;25317:24;:27::i;:::-;25297:47:::0;-1:-1:-1;25355:17:0::1;25375:30;:20:::0;25297:47;25375:24:::1;:30::i;:::-;25355:50:::0;-1:-1:-1;25737:21:0::1;25803:22;25820:4:::0;25803:16:::1;:22::i;:::-;25902:18;25923:41;:21;25949:14:::0;25923:25:::1;:41::i;:::-;25902:62;;26014:35;26027:9;26038:10;26014:12;:35::i;:::-;26067:43;::::0;;14088:25:1;;;14144:2;14129:18;;14122:34;;;14172:18;;;14165:34;;;26067:43:0::1;::::0;14076:2:1;14061:18;26067:43:0::1;;;;;;;-1:-1:-1::0;;14978:17:0;:25;;-1:-1:-1;;14978:25:0;;;-1:-1:-1;;;25165:953:0:o;27245:960::-;-1:-1:-1;;;;;27359:22:0;;;;;;:14;:22;;;;;;;;27358:23;:53;;;;-1:-1:-1;;;;;;27386:25:0;;;;;;:14;:25;;;;;;;;27385:26;27358:53;27350:97;;;;-1:-1:-1;;;27350:97:0;;;;;;;:::i;:::-;27463:7;27458:55;;27487:14;:12;:14::i;:::-;-1:-1:-1;;;;;27529:19:0;;;;;;:11;:19;;;;;;;;:46;;;;-1:-1:-1;;;;;;27553:22:0;;;;;;:11;:22;;;;;;;;27552:23;27529:46;27525:605;;;27592:48;27614:6;27622:9;27633:6;27592:21;:48::i;:::-;27525:605;;;-1:-1:-1;;;;;27665:19:0;;;;;;:11;:19;;;;;;;;27664:20;:46;;;;-1:-1:-1;;;;;;27688:22:0;;;;;;:11;:22;;;;;;;;27664:46;27660:470;;;27727:46;27747:6;27755:9;27766:6;27727:19;:46::i;27660:470::-;-1:-1:-1;;;;;27798:19:0;;;;;;:11;:19;;;;;;;;27797:20;:47;;;;-1:-1:-1;;;;;;27822:22:0;;;;;;:11;:22;;;;;;;;27821:23;27797:47;27793:337;;;27861:44;27879:6;27887:9;27898:6;27861:17;:44::i;27793:337::-;-1:-1:-1;;;;;27929:19:0;;;;;;:11;:19;;;;;;;;:45;;;;-1:-1:-1;;;;;;27952:22:0;;;;;;:11;:22;;;;;;;;27929:45;27925:205;;;27991:48;28013:6;28021:9;28032:6;27991:21;:48::i;27925:205::-;28074:44;28092:6;28100:9;28111:6;28074:17;:44::i;:::-;28147:7;28142:56;;28171:15;32432;;32416:7;:31;32474:21;;32458:13;:37;32522:21;;32506:13;:37;32372:179;28171:15;27245:960;;;;:::o;2807:282::-;2894:7;2929:12;2922:5;2914:28;;;;-1:-1:-1;;;2914:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2953:9:0;2965:5;2969:1;2965;:5;:::i;33910:556::-;34007:7;;34043;;33960;;;;;34061:290;34085:9;:16;34081:20;;34061:290;;;34151:7;34127;:21;34135:9;34145:1;34135:12;;;;;;-1:-1:-1;;;34135:12:0;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;34135:12:0;34127:21;;;;;;;;;;;;;:31;;:67;;;34187:7;34163;:21;34171:9;34181:1;34171:12;;;;;;-1:-1:-1;;;34171:12:0;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;34171:12:0;34163:21;;;;;;;;;;;;;:31;34127:67;34123:98;;;34204:7;;34213;;34196:25;;;;;;;33910:556;;:::o;34123:98::-;34246:34;34258:7;:21;34266:9;34276:1;34266:12;;;;;;-1:-1:-1;;;34266:12:0;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;34266:12:0;34258:21;;;;;;;;;;;;;34246:7;;:11;:34::i;:::-;34236:44;;34305:34;34317:7;:21;34325:9;34335:1;34325:12;;;;;;-1:-1:-1;;;34325:12:0;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;34325:12:0;34317:21;;;;;;;;;;;;;34305:7;;:11;:34::i;:::-;34295:44;-1:-1:-1;34103:3:0;;;;:::i;:::-;;;;34061:290;;;-1:-1:-1;34387:7:0;;34375;;:20;;:11;:20::i;:::-;34365:7;:30;34361:61;;;34405:7;;34414;;34397:25;;;;;;33910:556;;:::o;34361:61::-;34441:7;;34450;;-1:-1:-1;33910:556:0;-1:-1:-1;33910:556:0:o;26124:592::-;26274:16;;;26288:1;26274:16;;;;;;;;26250:21;;26274:16;;;;;;;;;;-1:-1:-1;26274:16:0;26250:40;;26319:4;26301;26306:1;26301:7;;;;;;-1:-1:-1;;;26301:7:0;;;;;;;;;;;;;;:23;-1:-1:-1;;;;;26301:23:0;;;-1:-1:-1;;;;;26301:23:0;;;;;26345:16;;;;;;;;;-1:-1:-1;;;;;26345:16:0;-1:-1:-1;;;;;26345:21:0;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;26335:4;26340:1;26335:7;;;;;;-1:-1:-1;;;26335:7:0;;;;;;;;;-1:-1:-1;;;;;26335:33:0;;;:7;;;;;;;;;:33;26413:16;;26381:63;;26398:4;;26413:16;;;;26432:11;26381:8;:63::i;:::-;26483:16;;:225;;-1:-1:-1;;;26483:225:0;;:16;;;;-1:-1:-1;;;;;26483:16:0;;:67;;:225;;26565:11;;26591:1;;26635:4;;26662;;26682:15;;26483:225;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26722:515;26902:16;;26870:63;;26887:4;;26902:16;;;-1:-1:-1;;;;;26902:16:0;26921:11;26870:8;:63::i;:::-;26976:16;;-1:-1:-1;;;;;26976:16:0;;;;;:32;27016:9;27049:4;27069:11;27095:1;;27181:7;3919;3946:6;-1:-1:-1;;;;;3946:6:0;;3881:79;27181:7;26976:253;;;;;;-1:-1:-1;;;;;;26976:253:0;;;-1:-1:-1;;;;;4452:15:1;;;26976:253:0;;;4434:34:1;4484:18;;;4477:34;;;;4527:18;;;4520:34;;;;4570:18;;;4563:34;4634:15;;;4613:19;;;4606:44;27203:15:0;4666:19:1;;;4659:35;4368:19;;26976:253:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;26722:515;;:::o;32021:345::-;32068:7;;:12;:34;;;;-1:-1:-1;32084:13:0;;:18;32068:34;:56;;;;-1:-1:-1;32106:13:0;;:18;32068:56;32064:69;;;32021:345::o;32064:69::-;32169:7;;;32145:15;:31;32211:13;;;32187:21;:37;32259:13;;;32235:21;:37;-1:-1:-1;32285:17:0;;;;32313;;;;32341;32021:345::o;30931:929::-;31035:23;31060:12;31074:18;31095;31117:20;31129:7;31117:11;:20::i;:::-;31034:103;;;;;;;;31148:19;31170:10;:8;:10::i;:::-;31148:32;;31192:15;31209:23;31234:12;31251:63;31263:7;31272:4;31278:10;31290;31302:11;31251;:63::i;:::-;-1:-1:-1;;;;;31330:22:0;;;;;;:14;:22;;;;;;31191:123;;-1:-1:-1;31191:123:0;;-1:-1:-1;31191:123:0;-1:-1:-1;31330:22:0;;31329:23;:53;;;;-1:-1:-1;;;;;;31357:25:0;;;;;;:14;:25;;;;;;;;31356:26;31329:53;31321:97;;;;-1:-1:-1;;;31321:97:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;31451:15:0;;;;;;:7;:15;;;;;;:28;;31471:7;31451:19;:28::i;:::-;-1:-1:-1;;;;;31433:15:0;;;;;;:7;:15;;;;;;;;:46;;;;31508:7;:15;;;;:28;;31528:7;31508:19;:28::i;:::-;-1:-1:-1;;;;;31490:15:0;;;;;;;:7;:15;;;;;;:46;;;;31568:18;;;;;;;:39;;31591:15;31568:22;:39::i;:::-;-1:-1:-1;;;;;31547:18:0;;;;;;:7;:18;;;;;:60;31620:58;31647:4;31654:10;31666:11;31620:18;:58::i;:::-;31716:16;;31689:70;;-1:-1:-1;;;;;31716:16:0;31735:10;31747:11;31689:18;:70::i;:::-;31770:22;31781:4;31787;31770:10;:22::i;:::-;31825:9;-1:-1:-1;;;;;31808:44:0;31817:6;-1:-1:-1;;;;;31808:44:0;;31836:15;31808:44;;;;12862:25:1;;12850:2;12835:18;;12817:76;31808:44:0;;;;;;;;30931:929;;;;;;;;;;;:::o;29986:939::-;30088:23;30113:12;30127:18;30148;30170:20;30182:7;30170:11;:20::i;:::-;30087:103;;;;;;;;30201:19;30223:10;:8;:10::i;:::-;30201:32;;30245:15;30262:23;30287:12;30304:63;30316:7;30325:4;30331:10;30343;30355:11;30304;:63::i;:::-;-1:-1:-1;;;;;30383:22:0;;;;;;:14;:22;;;;;;30244:123;;-1:-1:-1;30244:123:0;;-1:-1:-1;30244:123:0;-1:-1:-1;30383:22:0;;30382:23;:53;;;;-1:-1:-1;;;;;;30410:25:0;;;;;;:14;:25;;;;;;;;30409:26;30382:53;30374:97;;;;-1:-1:-1;;;30374:97:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;30502:15:0;;;;;;:7;:15;;;;;;:28;;30522:7;30502:19;:28::i;:::-;-1:-1:-1;;;;;30484:15:0;;;;;;;:7;:15;;;;;;;;:46;;;;30562:18;;;;;:7;:18;;;;;:39;;30585:15;30562:22;:39::i;:::-;-1:-1:-1;;;;;30541:18:0;;;;;;:7;:18;;;;;;;;:60;;;;30633:7;:18;;;;:39;;30656:15;30633:22;:39::i;28211:869::-;28311:23;28336:12;28350:18;28371;28393:20;28405:7;28393:11;:20::i;:::-;28310:103;;;;;;;;28424:19;28446:10;:8;:10::i;:::-;28424:32;;28468:15;28485:23;28510:12;28527:63;28539:7;28548:4;28554:10;28566;28578:11;28527;:63::i;:::-;-1:-1:-1;;;;;28606:22:0;;;;;;:14;:22;;;;;;28467:123;;-1:-1:-1;28467:123:0;;-1:-1:-1;28467:123:0;-1:-1:-1;28606:22:0;;28605:23;:53;;;;-1:-1:-1;;;;;;28633:25:0;;;;;;:14;:25;;;;;;;;28632:26;28605:53;28597:97;;;;-1:-1:-1;;;28597:97:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;28728:15:0;;;;;;:7;:15;;;;;;:28;;28748:7;28728:19;:28::i;29086:894::-;29190:23;29215:12;29229:18;29250;29272:20;29284:7;29272:11;:20::i;:::-;29189:103;;;;;;;;29303:19;29325:10;:8;:10::i;:::-;29303:32;;29347:15;29364:23;29389:12;29406:63;29418:7;29427:4;29433:10;29445;29457:11;29406;:63::i;:::-;-1:-1:-1;;;;;29500:15:0;;;;;;:7;:15;;;;;;29346:123;;-1:-1:-1;29346:123:0;;-1:-1:-1;29346:123:0;-1:-1:-1;29500:28:0;;29520:7;29500:19;:28::i;:::-;-1:-1:-1;;;;;29482:15:0;;;;;;:7;:15;;;;;;;;:46;;;;29557:7;:15;;;;:28;;29577:7;29557:19;:28::i;34472:334::-;34585:1;34574:7;:12;34570:29;;34472:334;;;:::o;34570:29::-;34611:15;34629:24;:7;34641:11;34629;:24::i;:::-;-1:-1:-1;;;;;34678:11:0;;;;;;:7;:11;;;;;;34611:42;;-1:-1:-1;34678:24:0;;34611:42;34678:15;:24::i;:::-;-1:-1:-1;;;;;34664:11:0;;;;;;:7;:11;;;;;;;;:38;;;;34717:11;:15;;;;;;34713:86;;;-1:-1:-1;;;;;34763:11:0;;;;;;:7;:11;;;;;;:24;;34779:7;34763:15;:24::i;:::-;-1:-1:-1;;;;;34749:11:0;;;;;;:7;:11;;;;;:38;34472:334;;;;:::o;31866:149::-;31946:7;;:17;;31958:4;31946:11;:17::i;:::-;31933:7;:30;31987:10;;:20;;32002:4;31987:14;:20::i;:::-;31974:10;:33;-1:-1:-1;;31866:149:0:o;14:160:1:-;79:20;;135:13;;128:21;118:32;;108:2;;164:1;161;154:12;108:2;60:114;;;:::o;179:257::-;238:6;291:2;279:9;270:7;266:23;262:32;259:2;;;312:6;304;297:22;259:2;356:9;343:23;375:31;400:5;375:31;:::i;441:261::-;511:6;564:2;552:9;543:7;539:23;535:32;532:2;;;585:6;577;570:22;532:2;622:9;616:16;641:31;666:5;641:31;:::i;707:398::-;775:6;783;836:2;824:9;815:7;811:23;807:32;804:2;;;857:6;849;842:22;804:2;901:9;888:23;920:31;945:5;920:31;:::i;:::-;970:5;-1:-1:-1;1027:2:1;1012:18;;999:32;1040:33;999:32;1040:33;:::i;:::-;1092:7;1082:17;;;794:311;;;;;:::o;1110:466::-;1187:6;1195;1203;1256:2;1244:9;1235:7;1231:23;1227:32;1224:2;;;1277:6;1269;1262:22;1224:2;1321:9;1308:23;1340:31;1365:5;1340:31;:::i;:::-;1390:5;-1:-1:-1;1447:2:1;1432:18;;1419:32;1460:33;1419:32;1460:33;:::i;:::-;1214:362;;1512:7;;-1:-1:-1;;;1566:2:1;1551:18;;;;1538:32;;1214:362::o;1581:325::-;1646:6;1654;1707:2;1695:9;1686:7;1682:23;1678:32;1675:2;;;1728:6;1720;1713:22;1675:2;1772:9;1759:23;1791:31;1816:5;1791:31;:::i;:::-;1841:5;-1:-1:-1;1865:35:1;1896:2;1881:18;;1865:35;:::i;:::-;1855:45;;1665:241;;;;;:::o;1911:325::-;1979:6;1987;2040:2;2028:9;2019:7;2015:23;2011:32;2008:2;;;2061:6;2053;2046:22;2008:2;2105:9;2092:23;2124:31;2149:5;2124:31;:::i;:::-;2174:5;2226:2;2211:18;;;;2198:32;;-1:-1:-1;;;1998:238:1:o;2241:665::-;2327:6;2335;2388:2;2376:9;2367:7;2363:23;2359:32;2356:2;;;2409:6;2401;2394:22;2356:2;2454:9;2441:23;2483:18;2524:2;2516:6;2513:14;2510:2;;;2545:6;2537;2530:22;2510:2;2588:6;2577:9;2573:22;2563:32;;2633:7;2626:4;2622:2;2618:13;2614:27;2604:2;;2660:6;2652;2645:22;2604:2;2705;2692:16;2731:2;2723:6;2720:14;2717:2;;;2752:6;2744;2737:22;2717:2;2810:7;2805:2;2795:6;2792:1;2788:14;2784:2;2780:23;2776:32;2773:45;2770:2;;;2836:6;2828;2821:22;2770:2;2872;2864:11;;;;;2894:6;;-1:-1:-1;2346:560:1;;-1:-1:-1;;;;2346:560:1:o;2911:190::-;2967:6;3020:2;3008:9;2999:7;2995:23;2991:32;2988:2;;;3041:6;3033;3026:22;2988:2;3069:26;3085:9;3069:26;:::i;3106:190::-;3165:6;3218:2;3206:9;3197:7;3193:23;3189:32;3186:2;;;3239:6;3231;3224:22;3186:2;-1:-1:-1;3267:23:1;;3176:120;-1:-1:-1;3176:120:1:o;3301:258::-;3366:6;3374;3427:2;3415:9;3406:7;3402:23;3398:32;3395:2;;;3448:6;3440;3433:22;3395:2;3489:9;3476:23;3466:33;;3518:35;3549:2;3538:9;3534:18;3518:35;:::i;3564:316::-;3652:6;3660;3668;3721:2;3709:9;3700:7;3696:23;3692:32;3689:2;;;3742:6;3734;3727:22;3689:2;3776:9;3770:16;3760:26;;3826:2;3815:9;3811:18;3805:25;3795:35;;3870:2;3859:9;3855:18;3849:25;3839:35;;3679:201;;;;;:::o;5132:603::-;5244:4;5273:2;5302;5291:9;5284:21;5334:6;5328:13;5377:6;5372:2;5361:9;5357:18;5350:34;5402:4;5415:140;5429:6;5426:1;5423:13;5415:140;;;5524:14;;;5520:23;;5514:30;5490:17;;;5509:2;5486:26;5479:66;5444:10;;5415:140;;;5573:6;5570:1;5567:13;5564:2;;;5643:4;5638:2;5629:6;5618:9;5614:22;5610:31;5603:45;5564:2;-1:-1:-1;5719:2:1;5698:15;-1:-1:-1;;5694:29:1;5679:45;;;;5726:2;5675:54;;5253:482;-1:-1:-1;;;5253:482:1:o;8078:355::-;8280:2;8262:21;;;8319:2;8299:18;;;8292:30;8358:33;8353:2;8338:18;;8331:61;8424:2;8409:18;;8252:181::o;10321:356::-;10523:2;10505:21;;;10542:18;;;10535:30;10601:34;10596:2;10581:18;;10574:62;10668:2;10653:18;;10495:182::o;12898:983::-;13160:4;13208:3;13197:9;13193:19;13239:6;13228:9;13221:25;13265:2;13303:6;13298:2;13287:9;13283:18;13276:34;13346:3;13341:2;13330:9;13326:18;13319:31;13370:6;13405;13399:13;13436:6;13428;13421:22;13474:3;13463:9;13459:19;13452:26;;13513:2;13505:6;13501:15;13487:29;;13534:4;13547:195;13561:6;13558:1;13555:13;13547:195;;;13626:13;;-1:-1:-1;;;;;13622:39:1;13610:52;;13717:15;;;;13682:12;;;;13658:1;13576:9;13547:195;;;-1:-1:-1;;;;;;;13798:32:1;;;;13793:2;13778:18;;13771:60;-1:-1:-1;;;13862:3:1;13847:19;13840:35;13759:3;13169:712;-1:-1:-1;;;13169:712:1:o;14399:128::-;14439:3;14470:1;14466:6;14463:1;14460:13;14457:2;;;14476:18;;:::i;:::-;-1:-1:-1;14512:9:1;;14447:80::o;14532:217::-;14572:1;14598;14588:2;;-1:-1:-1;;;14623:31:1;;14677:4;14674:1;14667:15;14705:4;14630:1;14695:15;14588:2;-1:-1:-1;14734:9:1;;14578:171::o;14754:168::-;14794:7;14860:1;14856;14852:6;14848:14;14845:1;14842:21;14837:1;14830:9;14823:17;14819:45;14816:2;;;14867:18;;:::i;:::-;-1:-1:-1;14907:9:1;;14806:116::o;14927:125::-;14967:4;14995:1;14992;14989:8;14986:2;;;15000:18;;:::i;:::-;-1:-1:-1;15037:9:1;;14976:76::o;15057:135::-;15096:3;-1:-1:-1;;15117:17:1;;15114:2;;;15137:18;;:::i;:::-;-1:-1:-1;15184:1:1;15173:13;;15104:88::o;15197:127::-;15258:10;15253:3;15249:20;15246:1;15239:31;15289:4;15286:1;15279:15;15313:4;15310:1;15303:15;15329:131;-1:-1:-1;;;;;15404:31:1;;15394:42;;15384:2;;15450:1;15447;15440:12;15384:2;15374:86;:::o

Swarm Source

ipfs://e307a9ec2fe5e85a6367f0284b28b0e1254336b3b0c2ff17b69e2292f6011dcb
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.