Contract 0xd658de780cfd6398f9ad3a6914e8777a5b2cb580

 

Contract Overview

Balance:
0 BNB

BNB Value:
$0.00

Token:
 
Txn Hash
Block
From
To
Value [Txn Fee]
0x07334f0585a57034a9d7f84e98fa75c30c2b014f5aaeb04a47f1739ed8ea4a3c97350322021-08-04 7:11:059 hrs 3 mins ago0xa727663847e59a3836536029bfaf71c08d0f08f0 IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00022215
0x5550b54051a567480c55627b5171c2ff8ef3924beca2df70620021beaede130595192742021-07-27 10:19:188 days 5 hrs ago0x923abaa4a852944b80ad216adbfae1670bda6bb3 IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00040511
0xd494528b0274486d58083091231f2d0af1d35a6b81ffbf1ee254ab67e695cbc691314792021-07-13 21:38:0021 days 18 hrs ago0xe9374b54649ed9c4751383acd73414df5d49199a IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00022215
0x09440fa344ca62d1de04198f1fa055a9a1f07a46fcc81de723a6cd82f74b721188423712021-07-03 20:06:4931 days 20 hrs ago0x8e484d743cd7ebd4ce6b50b3713a2c0f8731f1d1 IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00022215
0xe6ba90996689b4b97466aa7f76c24d82a78a1d9826e777aadc2588c39dd4f42788423502021-07-03 20:05:4631 days 20 hrs ago0x97c71f7bfe6346990bce3bb6403bc8a605ba6207 IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00040529
0x7fc20f75db3352d1fa107d9e2257541c2b6b5b46dd4805be74e655609a64fa2c88423452021-07-03 20:05:3131 days 20 hrs ago0x97c71f7bfe6346990bce3bb6403bc8a605ba6207 IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00040529
0x10abbc93a0eb5e320192ccb3e775992bbe268207cde071ce0609fb5638e26abf88423352021-07-03 20:05:0131 days 20 hrs ago0x97c71f7bfe6346990bce3bb6403bc8a605ba6207 IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00048011
0x7d9f274651983a5df9d177575af71abaf265edd027387ef40ab08a82d3f028f488419612021-07-03 19:45:5531 days 20 hrs ago0xd7586e1ee01be2b35d7120fb05f3ebcc0df8769b IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00039675
0x54abe673cdcc4b8cdc20251d34185ef59998b3dfb114b44f39b550b740f5917888417962021-07-03 19:36:5331 days 20 hrs ago0x97c71f7bfe6346990bce3bb6403bc8a605ba6207 IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00022215
0x76dc66aa32f3540a90440b0cec742facda376112468753634f15d59510d6391787078102021-06-29 2:54:0436 days 13 hrs ago0xd7586e1ee01be2b35d7120fb05f3ebcc0df8769b IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00047139
0x8fdbfcb22432be6c9ede1b930173b6e0a0ddf1bbe83617901279d711c356811c87046242021-06-29 0:14:4036 days 16 hrs ago0xd7586e1ee01be2b35d7120fb05f3ebcc0df8769b IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00047145
0xd4d572b3e706624fc872c801d26ac57ef4fe8ae9c0b2e35b2b4459c47997a78286791412021-06-28 2:51:1337 days 13 hrs ago0x38c614caa1e0757e9d71aa95a126c8579be8ea49 IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00022215
0x3eeabfc9f26cbc2621392c3f0dce6fbcd3b73db47bbf3af86588efd0cf00e86f86790572021-06-28 2:47:0137 days 13 hrs ago0x43d4b4551bc9cd2f1770e5fc59b043043a80d167 IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.0004443
0xd9fcdd55f8980fd3f05d39ac4a4ccf4f02365602ad0fa369767883bd8d582d1286786012021-06-28 2:23:5437 days 13 hrs ago0xd7586e1ee01be2b35d7120fb05f3ebcc0df8769b IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00039645
0x1c5a38b353bcf3630b9cd50481864909c0842949c52eae25481cae3a8a6d5c9386785942021-06-28 2:23:3337 days 13 hrs ago0xd7586e1ee01be2b35d7120fb05f3ebcc0df8769b IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00039639
0xc80fb2c1fa78bdcc640077316057c54a78704183f44acb74bc99257100db534286785842021-06-28 2:23:0337 days 13 hrs ago0xd7586e1ee01be2b35d7120fb05f3ebcc0df8769b IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00039645
0x0aa128c488948444242d87a30f6d8fbad87c1241997d3424808c3dea5b3de8a286785792021-06-28 2:22:4837 days 13 hrs ago0xd7586e1ee01be2b35d7120fb05f3ebcc0df8769b IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00047145
0xa9bf739806d666b36257e0716ba01a4bfefb062c6795272ff48e13d0a5d1ce7986785722021-06-28 2:22:2737 days 13 hrs ago0xd7586e1ee01be2b35d7120fb05f3ebcc0df8769b IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00047145
0xc475601d5b2460bfd0bbf94ab6e4f931adfcb2fd12d26ba52292aed00b5a456186785652021-06-28 2:22:0637 days 13 hrs ago0xd7586e1ee01be2b35d7120fb05f3ebcc0df8769b IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00039645
0x73fb6b588e019987cc3a6e8761314ca3f41316efd9bfea2b4e8eb83fb018d9e186785572021-06-28 2:21:4237 days 13 hrs ago0xd7586e1ee01be2b35d7120fb05f3ebcc0df8769b IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00039645
0x153aad480dbb0d05498516c9d8d0446986dc060a296ff74d9ac81cd16d09a3fc86785502021-06-28 2:21:2137 days 13 hrs ago0xd7586e1ee01be2b35d7120fb05f3ebcc0df8769b IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00047145
0x999be8abdefedadabd0ba9e16a83ca7ed76721ef66017e84875638316939d58186785392021-06-28 2:20:4737 days 13 hrs ago0xd7586e1ee01be2b35d7120fb05f3ebcc0df8769b IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00047145
0x3e3c59fd5bca5ffb7dbd0e83c18e777b008c1004214c745dd6513083ba33e4f086785322021-06-28 2:20:2437 days 13 hrs ago0xd7586e1ee01be2b35d7120fb05f3ebcc0df8769b IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00047139
0xf14ea7b3074456fa6c1c09d56ccb2691e976e71b4b63bd12e62dfdf30ce0922386785222021-06-28 2:19:5437 days 13 hrs ago0xd7586e1ee01be2b35d7120fb05f3ebcc0df8769b IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00039645
0xd4961e86aa2712a4fcbc8c203838b6e64e64b527bac8d3bb5962d8273988847086785112021-06-28 2:19:2137 days 13 hrs ago0xd7586e1ee01be2b35d7120fb05f3ebcc0df8769b IN  0xd658de780cfd6398f9ad3a6914e8777a5b2cb5800 BNB0.00047145
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
StarFlight

Compiler Version
v0.6.12+commit.27d51765

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2021-06-08
*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.6.12;

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

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

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

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

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

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

        return c;
    }

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

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

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

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

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 Address {
    function isContract(address account) internal view returns (bool) {
        uint256 size;
        assembly {
            size := extcodesize(account)
        }
        return size > 0;
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");
        (bool success, ) = recipient.call{value: amount}("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }

    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionCall(target, data, "Address: low-level call failed");
    }

    function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        return _functionCallWithValue(target, data, 0, errorMessage);
    }

    function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
    }

    function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) {
        require(address(this).balance >= value, "Address: insufficient balance for call");
        return _functionCallWithValue(target, data, value, errorMessage);
    }

    function _functionCallWithValue(address target, bytes memory data, uint256 weiValue, string memory errorMessage) private returns (bytes memory) {
        require(isContract(target), "Address: call to non-contract");
        (bool success, bytes memory returndata) = target.call{value: weiValue}(data);
        if (success) {
            return returndata;
        } else {
            if (returndata.length > 0) {
                assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}

contract Ownable is Context {
    address private _owner;
    address private _previousOwner;
    uint256 private _lockTime;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    constructor () internal {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

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

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

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

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

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

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

contract StarFlight is Context, IBEP20, Ownable {
    using SafeMath for uint256;
    using Address for address;

    mapping (address => uint256) private _rOwned;
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;

    mapping (address => bool) private _isExcluded;
    address[] private _excluded;

    string  private _NAME = 'Star Flight';
    string  private _SYMBOL = 'STRFL';
    uint8   private _DECIMALS = 18;

    uint256 private constant _MAX = ~uint256(0);
    uint256 private _DECIMALFACTOR = 10 ** uint256(_DECIMALS);
    uint256 private constant _GRANULARITY = 100;

    uint256 private _tTotal = 1000000000000 * _DECIMALFACTOR;
    uint256 private _rTotal = (_MAX - (_MAX % _tTotal));

    uint256 private _tFeeTotal;
    uint256 private _tBurnTotal;

    uint256 private _TAX_FEE = 500;
    uint256 private _BURN_FEE = 100;
    uint256 private _MAX_TX_SIZE = 1000000000000 * _DECIMALFACTOR;

    constructor () public {
        _rOwned[_msgSender()] = _rTotal;
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

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

    function decimals() public view 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 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;
    }

    function isExcluded(address account) public view returns (bool) {
        return _isExcluded[account];
    }

    function totalFees() public view returns (uint256) {
        return _tFeeTotal;
    }

    function totalBurn() public view returns (uint256) {
        return _tBurnTotal;
    }

    function deliver(uint256 tAmount) public {
        address sender = _msgSender();
        require(!_isExcluded[sender], "Excluded addresses cannot call this function");
        (uint256 rAmount,,,,,) = _getValues(tAmount);
        _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 rAmount,,,,,) = _getValues(tAmount);
            return rAmount;
        } else {
            (,uint256 rTransferAmount,,,,) = _getValues(tAmount);
            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 excludeAccount(address account) external onlyOwner() {
        require(account != 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D, 'We can not exclude Uniswap router.');
        require(!_isExcluded[account], "Account is already excluded");
        if(_rOwned[account] > 0) {
            _tOwned[account] = tokenFromReflection(_rOwned[account]);
        }
        _isExcluded[account] = true;
        _excluded.push(account);
    }

    function includeAccount(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 _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 _transfer(address sender, address recipient, uint256 amount) private {
        require(sender != address(0), "BEP20: transfer from the zero address");
        require(recipient != address(0), "BEP20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");

        if(sender != owner() && recipient != owner())
            require(amount <= _MAX_TX_SIZE, "Transfer amount exceeds the maxTxAmount.");

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

    function _transferStandard(address sender, address recipient, uint256 tAmount) private {
        uint256 currentRate =  _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tBurn) = _getValues(tAmount);
        uint256 rBurn =  tBurn.mul(currentRate);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
        _reflectFee(rFee, rBurn, tFee, tBurn);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _transferToExcluded(address sender, address recipient, uint256 tAmount) private {
        uint256 currentRate =  _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tBurn) = _getValues(tAmount);
        uint256 rBurn =  tBurn.mul(currentRate);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
        _reflectFee(rFee, rBurn, tFee, tBurn);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _transferFromExcluded(address sender, address recipient, uint256 tAmount) private {
        uint256 currentRate =  _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tBurn) = _getValues(tAmount);
        uint256 rBurn =  tBurn.mul(currentRate);
        _tOwned[sender] = _tOwned[sender].sub(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
        _reflectFee(rFee, rBurn, tFee, tBurn);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _transferBothExcluded(address sender, address recipient, uint256 tAmount) private {
        uint256 currentRate =  _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tBurn) = _getValues(tAmount);
        uint256 rBurn =  tBurn.mul(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);
        _reflectFee(rFee, rBurn, tFee, tBurn);
        emit Transfer(sender, recipient, tTransferAmount);
    }

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

    function setMaxTxPercent(uint256 maxTxPercent, uint256 maxTxDecimals) external onlyOwner() {
        _MAX_TX_SIZE = _tTotal.mul(maxTxPercent).div(
            10**(uint256(maxTxDecimals) + 2)
        );
    }

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

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

    function _getRValues(uint256 tAmount, uint256 tFee, uint256 tBurn, uint256 currentRate) private pure returns (uint256, uint256, uint256) {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rBurn = tBurn.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rBurn);
        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 _getTaxFee() private view returns(uint256) {
        return _TAX_FEE;
    }

    function _getMaxTxAmount() private view returns(uint256) {
        return _MAX_TX_SIZE;
    }
    
    function TAXFEE(uint256 taxFee) external onlyOwner() {
        _TAX_FEE = taxFee;
    }
    
    function BURNFEE(uint256 burnFee) external onlyOwner() {
        _BURN_FEE = burnFee;
    }

    function burn(uint256 amount) public {
        _burn(_msgSender(), amount);
    }

    function _burn(address account, uint256 amount) internal {
        require(account != address(0), 'BEP20: burn from the zero address');
        _rOwned[account] = _rOwned[account].sub(amount, 'BEP20: burn amount exceeds balance');
        _tTotal = _tTotal.sub(amount);
        emit Transfer(account, address(0), amount);
    }
    
    function _setMaxTxAmount(uint256 maxTxAmount) external onlyOwner() {
        require(maxTxAmount >= 0 , 'maxTxAmount should be greater than 0');
        _MAX_TX_SIZE = maxTxAmount;
    }

    function _burnFrom(address account, uint256 amount) internal {
        _burn(account, amount);
        _approve(
            account,
            _msgSender(),
            _allowances[account][_msgSender()].sub(amount, 'BEP20: burn amount exceeds allowance')
        );
    }
}

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"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":"uint256","name":"burnFee","type":"uint256"}],"name":"BURNFEE","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"taxFee","type":"uint256"}],"name":"TAXFEE","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"_setMaxTxAmount","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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","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":"excludeAccount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"geUnlockTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeAccount","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":"isExcluded","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":"view","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":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxPercent","type":"uint256"},{"internalType":"uint256","name":"maxTxDecimals","type":"uint256"}],"name":"setMaxTxPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"rAmount","type":"uint256"}],"name":"tokenFromReflection","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalBurn","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"}]

60c0604052600b60808190526a14dd185c88119b1a59da1d60aa1b60a09081526200002e91600891906200019a565b506040805180820190915260058082526414d514919360da1b60209092019182526200005d916009916200019a565b50600a805460ff191660121780825560ff16900a600b81905564e8d4a5100002600c819055600019816200008d57fe5b0619600d556101f46010556064601155600b5464e8d4a5100002601255348015620000b757600080fd5b506000620000c462000196565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600d54600360006200011f62000196565b6001600160a01b031681526020810191909152604001600020556200014362000196565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600c546040518082815260200191505060405180910390a362000236565b3390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001dd57805160ff19168380011785556200020d565b828001600101855582156200020d579182015b828111156200020d578251825591602001919060010190620001f0565b506200021b9291506200021f565b5090565b5b808211156200021b576000815560010162000220565b6122ac80620002466000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c8063715018a611610104578063cba0e996116100a2578063f2cc0c1811610071578063f2cc0c1814610554578063f2fde38b1461057a578063f84354f1146105a0578063f90100cd146105c6576101da565b8063cba0e996146104c6578063d4111a10146104ec578063dd46706414610509578063dd62ed3e14610526576101da565b8063a457c2d7116100de578063a457c2d71461045e578063a69df4b51461048a578063a9059cbb14610492578063b6c52324146104be576101da565b8063715018a61461042a5780638da5cb5b1461043257806395d89b4114610456576101da565b8063313ce5671161017c5780633f3cf56c1161014b5780633f3cf56c1461039f57806342966c68146103c25780634549b039146103df57806370a0823114610404576101da565b8063313ce56714610330578063395093511461034e5780633bd5d1731461037a5780633c9f861d14610397576101da565b806318160ddd116101b857806318160ddd146102b65780631bbae6e0146102be57806323b872dd146102dd5780632d83811914610313576101da565b806306fdde03146101df578063095ea7b31461025c57806313114a9d1461029c575b600080fd5b6101e76105e3565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610221578181015183820152602001610209565b50505050905090810190601f16801561024e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102886004803603604081101561027257600080fd5b506001600160a01b038135169060200135610679565b604080519115158252519081900360200190f35b6102a4610697565b60408051918252519081900360200190f35b6102a461069d565b6102db600480360360208110156102d457600080fd5b50356106a3565b005b610288600480360360608110156102f357600080fd5b506001600160a01b03813581169160208101359091169060400135610700565b6102a46004803603602081101561032957600080fd5b5035610787565b6103386107e9565b6040805160ff9092168252519081900360200190f35b6102886004803603604081101561036457600080fd5b506001600160a01b0381351690602001356107f2565b6102db6004803603602081101561039057600080fd5b5035610840565b6102a461091a565b6102db600480360360408110156103b557600080fd5b5080359060200135610920565b6102db600480360360208110156103d857600080fd5b50356109a4565b6102a4600480360360408110156103f557600080fd5b508035906020013515156109b8565b6102a46004803603602081101561041a57600080fd5b50356001600160a01b0316610a4a565b6102db610aac565b61043a610b3c565b604080516001600160a01b039092168252519081900360200190f35b6101e7610b4b565b6102886004803603604081101561047457600080fd5b506001600160a01b038135169060200135610bac565b6102db610c14565b610288600480360360408110156104a857600080fd5b506001600160a01b038135169060200135610d02565b6102a4610d16565b610288600480360360208110156104dc57600080fd5b50356001600160a01b0316610d1c565b6102db6004803603602081101561050257600080fd5b5035610d3a565b6102db6004803603602081101561051f57600080fd5b5035610d97565b6102a46004803603604081101561053c57600080fd5b506001600160a01b0381358116916020013516610e35565b6102db6004803603602081101561056a57600080fd5b50356001600160a01b0316610e60565b6102db6004803603602081101561059057600080fd5b50356001600160a01b0316611042565b6102db600480360360208110156105b657600080fd5b50356001600160a01b0316611128565b6102db600480360360208110156105dc57600080fd5b50356112e9565b60088054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561066f5780601f106106445761010080835404028352916020019161066f565b820191906000526020600020905b81548152906001019060200180831161065257829003601f168201915b5050505050905090565b600061068d610686611346565b848461134a565b5060015b92915050565b600e5490565b600c5490565b6106ab611346565b6000546001600160a01b039081169116146106fb576040805162461bcd60e51b815260206004820181905260248201526000805160206120f0833981519152604482015290519081900360640190fd5b601255565b600061070d848484611436565b61077d84610719611346565b6107788560405180606001604052806028815260200161207f602891396001600160a01b038a16600090815260056020526040812090610757611346565b6001600160a01b0316815260208101919091526040016000205491906116e0565b61134a565b5060019392505050565b6000600d548211156107ca5760405162461bcd60e51b815260040180806020018281038252602a81526020018061202f602a913960400191505060405180910390fd5b60006107d4611777565b90506107e0838261179a565b9150505b919050565b600a5460ff1690565b600061068d6107ff611346565b846107788560056000610810611346565b6001600160a01b03908116825260208083019390935260409182016000908120918c1681529252902054906117e3565b600061084a611346565b6001600160a01b03811660009081526006602052604090205490915060ff16156108a55760405162461bcd60e51b815260040180806020018281038252602c815260200180612206602c913960400191505060405180910390fd5b60006108b08361183d565b505050506001600160a01b0384166000908152600360205260409020549192506108dc9190508261189a565b6001600160a01b038316600090815260036020526040902055600d54610902908261189a565b600d55600e5461091290846117e3565b600e55505050565b600f5490565b610928611346565b6000546001600160a01b03908116911614610978576040805162461bcd60e51b815260206004820181905260248201526000805160206120f0833981519152604482015290519081900360640190fd5b61099d81600201600a0a61099784600c546118dc90919063ffffffff16565b9061179a565b6012555050565b6109b56109af611346565b82611935565b50565b6000600c54831115610a11576040805162461bcd60e51b815260206004820152601f60248201527f416d6f756e74206d757374206265206c657373207468616e20737570706c7900604482015290519081900360640190fd5b81610a30576000610a218461183d565b50939550610691945050505050565b6000610a3b8461183d565b50929550610691945050505050565b6001600160a01b03811660009081526006602052604081205460ff1615610a8a57506001600160a01b0381166000908152600460205260409020546107e4565b6001600160a01b03821660009081526003602052604090205461069190610787565b610ab4611346565b6000546001600160a01b03908116911614610b04576040805162461bcd60e51b815260206004820181905260248201526000805160206120f0833981519152604482015290519081900360640190fd5b600080546040516001600160a01b0390911690600080516020612110833981519152908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b60098054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561066f5780601f106106445761010080835404028352916020019161066f565b600061068d610bb9611346565b846107788560405180606001604052806025815260200161217c6025913960056000610be3611346565b6001600160a01b03908116825260208083019390935260409182016000908120918d168152925290205491906116e0565b6001546001600160a01b03163314610c5d5760405162461bcd60e51b81526004018080602001828103825260238152602001806122546023913960400191505060405180910390fd5b6002544211610cb3576040805162461bcd60e51b815260206004820152601f60248201527f436f6e7472616374206973206c6f636b656420756e74696c2037206461797300604482015290519081900360640190fd5b600154600080546040516001600160a01b03938416939091169160008051602061211083398151915291a3600154600080546001600160a01b0319166001600160a01b03909216919091179055565b600061068d610d0f611346565b8484611436565b60025490565b6001600160a01b031660009081526006602052604090205460ff1690565b610d42611346565b6000546001600160a01b03908116911614610d92576040805162461bcd60e51b815260206004820181905260248201526000805160206120f0833981519152604482015290519081900360640190fd5b601155565b610d9f611346565b6000546001600160a01b03908116911614610def576040805162461bcd60e51b815260206004820181905260248201526000805160206120f0833981519152604482015290519081900360640190fd5b60008054600180546001600160a01b03199081166001600160a01b038416179091551681554282016002556040518190600080516020612110833981519152908290a350565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b610e68611346565b6000546001600160a01b03908116911614610eb8576040805162461bcd60e51b815260206004820181905260248201526000805160206120f0833981519152604482015290519081900360640190fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b0382161415610f145760405162461bcd60e51b81526004018080602001828103825260228152602001806121e46022913960400191505060405180910390fd5b6001600160a01b03811660009081526006602052604090205460ff1615610f82576040805162461bcd60e51b815260206004820152601b60248201527f4163636f756e7420697320616c7265616479206578636c756465640000000000604482015290519081900360640190fd5b6001600160a01b03811660009081526003602052604090205415610fdc576001600160a01b038116600090815260036020526040902054610fc290610787565b6001600160a01b0382166000908152600460205260409020555b6001600160a01b03166000818152600660205260408120805460ff191660019081179091556007805491820181559091527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880180546001600160a01b0319169091179055565b61104a611346565b6000546001600160a01b0390811691161461109a576040805162461bcd60e51b815260206004820181905260248201526000805160206120f0833981519152604482015290519081900360640190fd5b6001600160a01b0381166110df5760405162461bcd60e51b81526004018080602001828103825260268152602001806120596026913960400191505060405180910390fd5b600080546040516001600160a01b038085169392169160008051602061211083398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b611130611346565b6000546001600160a01b03908116911614611180576040805162461bcd60e51b815260206004820181905260248201526000805160206120f0833981519152604482015290519081900360640190fd5b6001600160a01b03811660009081526006602052604090205460ff166111ed576040805162461bcd60e51b815260206004820152601b60248201527f4163636f756e7420697320616c7265616479206578636c756465640000000000604482015290519081900360640190fd5b60005b6007548110156112e557816001600160a01b03166007828154811061121157fe5b6000918252602090912001546001600160a01b031614156112dd5760078054600019810190811061123e57fe5b600091825260209091200154600780546001600160a01b03909216918390811061126457fe5b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559184168152600482526040808220829055600690925220805460ff1916905560078054806112b657fe5b600082815260209020810160001990810180546001600160a01b03191690550190556112e5565b6001016111f0565b5050565b6112f1611346565b6000546001600160a01b03908116911614611341576040805162461bcd60e51b815260206004820181905260248201526000805160206120f0833981519152604482015290519081900360640190fd5b601055565b3390565b6001600160a01b03831661138f5760405162461bcd60e51b815260040180806020018281038252602481526020018061200b6024913960400191505060405180910390fd5b6001600160a01b0382166113d45760405162461bcd60e51b81526004018080602001828103825260228152602001806122326022913960400191505060405180910390fd5b6001600160a01b03808416600081815260056020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b03831661147b5760405162461bcd60e51b8152600401808060200182810382526025815260200180611fe66025913960400191505060405180910390fd5b6001600160a01b0382166114c05760405162461bcd60e51b81526004018080602001828103825260238152602001806121596023913960400191505060405180910390fd5b600081116114ff5760405162461bcd60e51b81526004018080602001828103825260298152602001806121306029913960400191505060405180910390fd5b611507610b3c565b6001600160a01b0316836001600160a01b031614158015611541575061152b610b3c565b6001600160a01b0316826001600160a01b031614155b15611587576012548111156115875760405162461bcd60e51b81526004018080602001828103825260288152602001806120a76028913960400191505060405180910390fd5b6001600160a01b03831660009081526006602052604090205460ff1680156115c857506001600160a01b03821660009081526006602052604090205460ff16155b156115dd576115d8838383611a25565b6116db565b6001600160a01b03831660009081526006602052604090205460ff1615801561161e57506001600160a01b03821660009081526006602052604090205460ff165b1561162e576115d8838383611b65565b6001600160a01b03831660009081526006602052604090205460ff1615801561167057506001600160a01b03821660009081526006602052604090205460ff16155b15611680576115d8838383611c2f565b6001600160a01b03831660009081526006602052604090205460ff1680156116c057506001600160a01b03821660009081526006602052604090205460ff165b156116d0576115d8838383611c94565b6116db838383611c2f565b505050565b6000818484111561176f5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561173457818101518382015260200161171c565b50505050905090810190601f1680156117615780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000806000611784611d28565b9092509050611793828261179a565b9250505090565b60006117dc83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e8b565b9392505050565b6000828201838110156117dc576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080600080600080600080600061185a8a601054601154611ef0565b925092509250600061186a611777565b9050600080600061187d8e878787611f43565b919e509c509a509598509396509194505050505091939550919395565b60006117dc83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506116e0565b6000826118eb57506000610691565b828202828482816118f857fe5b04146117dc5760405162461bcd60e51b81526004018080602001828103825260218152602001806120cf6021913960400191505060405180910390fd5b6001600160a01b03821661197a5760405162461bcd60e51b81526004018080602001828103825260218152602001806121a16021913960400191505060405180910390fd5b6119b7816040518060600160405280602281526020016121c2602291396001600160a01b03851660009081526003602052604090205491906116e0565b6001600160a01b038316600090815260036020526040902055600c546119dd908261189a565b600c556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6000611a2f611777565b9050600080600080600080611a438861183d565b9550955095509550955095506000611a6488836118dc90919063ffffffff16565b6001600160a01b038c16600090815260046020526040902054909150611a8a908a61189a565b6001600160a01b038c16600090815260046020908152604080832093909355600390522054611ab9908861189a565b6001600160a01b03808d1660009081526003602052604080822093909355908c1681522054611ae890876117e3565b6001600160a01b038b16600090815260036020526040902055611b0d85828585611f93565b896001600160a01b03168b6001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a35050505050505050505050565b6000611b6f611777565b9050600080600080600080611b838861183d565b9550955095509550955095506000611ba488836118dc90919063ffffffff16565b6001600160a01b038c16600090815260036020526040902054909150611bca908861189a565b6001600160a01b03808d16600090815260036020908152604080832094909455918d16815260049091522054611c0090856117e3565b6001600160a01b038b16600090815260046020908152604080832093909355600390522054611ae890876117e3565b6000611c39611777565b9050600080600080600080611c4d8861183d565b9550955095509550955095506000611c6e88836118dc90919063ffffffff16565b6001600160a01b038c16600090815260036020526040902054909150611ab9908861189a565b6000611c9e611777565b9050600080600080600080611cb28861183d565b9550955095509550955095506000611cd388836118dc90919063ffffffff16565b6001600160a01b038c16600090815260046020526040902054909150611cf9908a61189a565b6001600160a01b038c16600090815260046020908152604080832093909355600390522054611bca908861189a565b600d54600c546000918291825b600754811015611e5957826003600060078481548110611d5157fe5b60009182526020808320909101546001600160a01b031683528201929092526040019020541180611db65750816004600060078481548110611d8f57fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902054115b15611dcd57600d54600c5494509450505050611e87565b611e0d6003600060078481548110611de157fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902054849061189a565b9250611e4f6004600060078481548110611e2357fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902054839061189a565b9150600101611d35565b50600c54600d54611e699161179a565b821015611e8157600d54600c54935093505050611e87565b90925090505b9091565b60008183611eda5760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561173457818101518382015260200161171c565b506000838581611ee657fe5b0495945050505050565b6000808080611f06606461099781818b8b6118dc565b90506000611f1b606461099781818c8b6118dc565b90506000611f3382611f2d8b8661189a565b9061189a565b9992985090965090945050505050565b6000808080611f5288866118dc565b90506000611f6088876118dc565b90506000611f6e88886118dc565b90506000611f8082611f2d868661189a565b939b939a50919850919650505050505050565b611fac83611f2d86600d5461189a90919063ffffffff16565b600d55600e54611fbc90836117e3565b600e55600f54611fcc90826117e3565b600f55600c54611fdc908261189a565b600c555050505056fe42455032303a207472616e736665722066726f6d20746865207a65726f206164647265737342455032303a20617070726f76652066726f6d20746865207a65726f2061646472657373416d6f756e74206d757374206265206c657373207468616e20746f74616c207265666c656374696f6e734f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737342455032303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63655472616e7366657220616d6f756e74206578636565647320746865206d61785478416d6f756e742e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65728be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05472616e7366657220616d6f756e74206d7573742062652067726561746572207468616e207a65726f42455032303a207472616e7366657220746f20746865207a65726f206164647265737342455032303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f42455032303a206275726e2066726f6d20746865207a65726f206164647265737342455032303a206275726e20616d6f756e7420657863656564732062616c616e636557652063616e206e6f74206578636c75646520556e697377617020726f757465722e4578636c75646564206164647265737365732063616e6e6f742063616c6c20746869732066756e6374696f6e42455032303a20617070726f766520746f20746865207a65726f2061646472657373596f7520646f6e27742068617665207065726d697373696f6e20746f20756e6c6f636ba2646970667358221220fa02573230c26f18cd2e49caf527d0c75463a66ca0fda09086ca1d07f9080fb864736f6c634300060c0033

Deployed ByteCode Sourcemap

6288:13253:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7443:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8355:161;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8355:161:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;9466:87;;;:::i;:::-;;;;;;;;;;;;;;;;7720:95;;;:::i;19059:189::-;;;;;;;;;;;;;;;;-1:-1:-1;19059:189:0;;:::i;:::-;;8524:313;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8524:313:0;;;;;;;;;;;;;;;;;:::i;10486:253::-;;;;;;;;;;;;;;;;-1:-1:-1;10486:253:0;;:::i;7629:83::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8845:218;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8845:218:0;;;;;;;;:::i;9657:377::-;;;;;;;;;;;;;;;;-1:-1:-1;9657:377:0;;:::i;9561:88::-;;;:::i;15969:212::-;;;;;;;;;;;;;;;;-1:-1:-1;15969:212:0;;;;;;;:::i;18624:83::-;;;;;;;;;;;;;;;;-1:-1:-1;18624:83:0;;:::i;10042:436::-;;;;;;;;;;;;;;;;-1:-1:-1;10042:436:0;;;;;;;;;:::i;7823:198::-;;;;;;;;;;;;;;;;-1:-1:-1;7823:198:0;-1:-1:-1;;;;;7823:198:0;;:::i;5261:148::-;;;:::i;5047:79::-;;;:::i;:::-;;;;-1:-1:-1;;;;;5047:79:0;;;;;;;;;;;;;;7534:87;;;:::i;9071:269::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;9071:269:0;;;;;;;;:::i;5988:293::-;;;:::i;8029:167::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8029:167:0;;;;;;;;:::i;5669:89::-;;;:::i;9348:110::-;;;;;;;;;;;;;;;;-1:-1:-1;9348:110:0;-1:-1:-1;;;;;9348:110:0;;:::i;18523:93::-;;;;;;;;;;;;;;;;-1:-1:-1;18523:93:0;;:::i;5766:214::-;;;;;;;;;;;;;;;;-1:-1:-1;5766:214:0;;:::i;8204:143::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8204:143:0;;;;;;;;;;:::i;10747:443::-;;;;;;;;;;;;;;;;-1:-1:-1;10747:443:0;-1:-1:-1;;;;;10747:443:0;;:::i;5417:244::-;;;;;;;;;;;;;;;;-1:-1:-1;5417:244:0;-1:-1:-1;;;;;5417:244:0;;:::i;11198:478::-;;;;;;;;;;;;;;;;-1:-1:-1;11198:478:0;-1:-1:-1;;;;;11198:478:0;;:::i;18422:89::-;;;;;;;;;;;;;;;;-1:-1:-1;18422:89:0;;:::i;7443:83::-;7513:5;7506:12;;;;;;;;-1:-1:-1;;7506:12:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7480:13;;7506:12;;7513:5;;7506:12;;7513:5;7506:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7443:83;:::o;8355:161::-;8430:4;8447:39;8456:12;:10;:12::i;:::-;8470:7;8479:6;8447:8;:39::i;:::-;-1:-1:-1;8504:4:0;8355:161;;;;;:::o;9466:87::-;9535:10;;9466:87;:::o;7720:95::-;7800:7;;7720:95;:::o;19059:189::-;5184:12;:10;:12::i;:::-;5174:6;;-1:-1:-1;;;;;5174:6:0;;;:22;;;5166:67;;;;;-1:-1:-1;;;5166:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;5166:67:0;;;;;;;;;;;;;;;19214:12:::1;:26:::0;19059:189::o;8524:313::-;8622:4;8639:36;8649:6;8657:9;8668:6;8639:9;:36::i;:::-;8686:121;8695:6;8703:12;:10;:12::i;:::-;8717:89;8755:6;8717:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8717:19:0;;;;;;:11;:19;;;;;;8737:12;:10;:12::i;:::-;-1:-1:-1;;;;;8717:33:0;;;;;;;;;;;;-1:-1:-1;8717:33:0;;;:89;:37;:89::i;:::-;8686:8;:121::i;:::-;-1:-1:-1;8825:4:0;8524:313;;;;;:::o;10486:253::-;10552:7;10591;;10580;:18;;10572:73;;;;-1:-1:-1;;;10572:73:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10656:19;10679:10;:8;:10::i;:::-;10656:33;-1:-1:-1;10707:24:0;:7;10656:33;10707:11;:24::i;:::-;10700:31;;;10486:253;;;;:::o;7629:83::-;7695:9;;;;7629:83;:::o;8845:218::-;8933:4;8950:83;8959:12;:10;:12::i;:::-;8973:7;8982:50;9021:10;8982:11;:25;8994:12;:10;:12::i;:::-;-1:-1:-1;;;;;8982:25:0;;;;;;;;;;;;;;;;;-1:-1:-1;8982:25:0;;;:34;;;;;;;;;;;:38;:50::i;9657:377::-;9709:14;9726:12;:10;:12::i;:::-;-1:-1:-1;;;;;9758:19:0;;;;;;:11;:19;;;;;;9709:29;;-1:-1:-1;9758:19:0;;9757:20;9749:77;;;;-1:-1:-1;;;9749:77:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9838:15;9862:19;9873:7;9862:10;:19::i;:::-;-1:-1:-1;;;;;;;;;9910:15:0;;;;;;:7;:15;;;;;;9837:44;;-1:-1:-1;9910:28:0;;:15;-1:-1:-1;9837:44:0;9910:19;:28::i;:::-;-1:-1:-1;;;;;9892:15:0;;;;;;:7;:15;;;;;:46;9959:7;;:20;;9971:7;9959:11;:20::i;:::-;9949:7;:30;10003:10;;:23;;10018:7;10003:14;:23::i;:::-;9990:10;:36;-1:-1:-1;;;9657:377:0:o;9561:88::-;9630:11;;9561:88;:::o;15969:212::-;5184:12;:10;:12::i;:::-;5174:6;;-1:-1:-1;;;;;5174:6:0;;;:22;;;5166:67;;;;;-1:-1:-1;;;5166:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;5166:67:0;;;;;;;;;;;;;;;16086:87:::1;16143:13;16160:1;16135:26;16130:2;:32;16086:25;16098:12;16086:7;;:11;;:25;;;;:::i;:::-;:29:::0;::::1;:87::i;:::-;16071:12;:102:::0;-1:-1:-1;;15969:212:0:o;18624:83::-;18672:27;18678:12;:10;:12::i;:::-;18692:6;18672:5;:27::i;:::-;18624:83;:::o;10042:436::-;10132:7;10171;;10160;:18;;10152:62;;;;;-1:-1:-1;;;10152:62:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;10230:17;10225:246;;10265:15;10289:19;10300:7;10289:10;:19::i;:::-;-1:-1:-1;10264:44:0;;-1:-1:-1;10323:14:0;;-1:-1:-1;;;;;10323:14:0;10225:246;10372:23;10403:19;10414:7;10403:10;:19::i;:::-;-1:-1:-1;10370:52:0;;-1:-1:-1;10437:22:0;;-1:-1:-1;;;;;10437:22:0;7823:198;-1:-1:-1;;;;;7913:20:0;;7889:7;7913:20;;;:11;:20;;;;;;;;7909:49;;;-1:-1:-1;;;;;;7942:16:0;;;;;;:7;:16;;;;;;7935:23;;7909:49;-1:-1:-1;;;;;7996:16:0;;;;;;:7;:16;;;;;;7976:37;;:19;:37::i;5261:148::-;5184:12;:10;:12::i;:::-;5174:6;;-1:-1:-1;;;;;5174:6:0;;;:22;;;5166:67;;;;;-1:-1:-1;;;5166:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;5166:67:0;;;;;;;;;;;;;;;5368:1:::1;5352:6:::0;;5331:40:::1;::::0;-1:-1:-1;;;;;5352:6:0;;::::1;::::0;-1:-1:-1;;;;;;;;;;;5331:40:0;5368:1;;5331:40:::1;5399:1;5382:19:::0;;-1:-1:-1;;;;;;5382:19:0::1;::::0;;5261:148::o;5047:79::-;5085:7;5112:6;-1:-1:-1;;;;;5112:6:0;5047:79;:::o;7534:87::-;7606:7;7599:14;;;;;;;;-1:-1:-1;;7599:14:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7573:13;;7599:14;;7606:7;;7599:14;;7606:7;7599:14;;;;;;;;;;;;;;;;;;;;;;;;9071:269;9164:4;9181:129;9190:12;:10;:12::i;:::-;9204:7;9213:96;9252:15;9213:96;;;;;;;;;;;;;;;;;:11;:25;9225:12;:10;:12::i;:::-;-1:-1:-1;;;;;9213:25:0;;;;;;;;;;;;;;;;;-1:-1:-1;9213:25:0;;;:34;;;;;;;;;;;:96;:38;:96::i;5988:293::-;6040:14;;-1:-1:-1;;;;;6040:14:0;6058:10;6040:28;6032:76;;;;-1:-1:-1;;;6032:76:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6133:9;;6127:3;:15;6119:60;;;;;-1:-1:-1;;;6119:60:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;6224:14;;;6216:6;;6195:44;;-1:-1:-1;;;;;6224:14:0;;;;6216:6;;;;-1:-1:-1;;;;;;;;;;;6195:44:0;;6259:14;;;6250:23;;-1:-1:-1;;;;;;6250:23:0;-1:-1:-1;;;;;6259:14:0;;;6250:23;;;;;;5988:293::o;8029:167::-;8107:4;8124:42;8134:12;:10;:12::i;:::-;8148:9;8159:6;8124:9;:42::i;5669:89::-;5741:9;;5669:89;:::o;9348:110::-;-1:-1:-1;;;;;9430:20:0;9406:4;9430:20;;;:11;:20;;;;;;;;;9348:110::o;18523:93::-;5184:12;:10;:12::i;:::-;5174:6;;-1:-1:-1;;;;;5174:6:0;;;:22;;;5166:67;;;;;-1:-1:-1;;;5166:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;5166:67:0;;;;;;;;;;;;;;;18589:9:::1;:19:::0;18523:93::o;5766:214::-;5184:12;:10;:12::i;:::-;5174:6;;-1:-1:-1;;;;;5174:6:0;;;:22;;;5166:67;;;;;-1:-1:-1;;;5166:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;5166:67:0;;;;;;;;;;;;;;;5847:6:::1;::::0;;;5830:23;;-1:-1:-1;;;;;;5830:23:0;;::::1;-1:-1:-1::0;;;;;5847:6:0;::::1;5830:23;::::0;;;5864:19:::1;::::0;;5906:3:::1;:10:::0;::::1;5894:9;:22:::0;5932:40:::1;::::0;5847:6;;-1:-1:-1;;;;;;;;;;;5932:40:0;5847:6;;5932:40:::1;5766:214:::0;:::o;8204:143::-;-1:-1:-1;;;;;8312:18:0;;;8285:7;8312:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;8204:143::o;10747:443::-;5184:12;:10;:12::i;:::-;5174:6;;-1:-1:-1;;;;;5174:6:0;;;:22;;;5166:67;;;;;-1:-1:-1;;;5166:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;5166:67:0;;;;;;;;;;;;;;;10839:42:::1;-1:-1:-1::0;;;;;10828:53:0;::::1;;;10820:100;;;;-1:-1:-1::0;;;10820:100:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;10940:20:0;::::1;;::::0;;;:11:::1;:20;::::0;;;;;::::1;;10939:21;10931:61;;;::::0;;-1:-1:-1;;;10931:61:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;-1:-1:-1::0;;;;;11006:16:0;::::1;11025:1;11006:16:::0;;;:7:::1;:16;::::0;;;;;:20;11003:108:::1;;-1:-1:-1::0;;;;;11082:16:0;::::1;;::::0;;;:7:::1;:16;::::0;;;;;11062:37:::1;::::0;:19:::1;:37::i;:::-;-1:-1:-1::0;;;;;11043:16:0;::::1;;::::0;;;:7:::1;:16;::::0;;;;:56;11003:108:::1;-1:-1:-1::0;;;;;11121:20:0::1;;::::0;;;:11:::1;:20;::::0;;;;:27;;-1:-1:-1;;11121:27:0::1;11144:4;11121:27:::0;;::::1;::::0;;;11159:9:::1;:23:::0;;;;::::1;::::0;;;;;;::::1;::::0;;-1:-1:-1;;;;;;11159:23:0::1;::::0;;::::1;::::0;;10747:443::o;5417:244::-;5184:12;:10;:12::i;:::-;5174:6;;-1:-1:-1;;;;;5174:6:0;;;:22;;;5166:67;;;;;-1:-1:-1;;;5166:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;5166:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;5506:22:0;::::1;5498:73;;;;-1:-1:-1::0;;;5498:73:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5608:6;::::0;;5587:38:::1;::::0;-1:-1:-1;;;;;5587:38:0;;::::1;::::0;5608:6;::::1;::::0;-1:-1:-1;;;;;;;;;;;5587:38:0;::::1;5636:6;:17:::0;;-1:-1:-1;;;;;;5636:17:0::1;-1:-1:-1::0;;;;;5636:17:0;;;::::1;::::0;;;::::1;::::0;;5417:244::o;11198:478::-;5184:12;:10;:12::i;:::-;5174:6;;-1:-1:-1;;;;;5174:6:0;;;:22;;;5166:67;;;;;-1:-1:-1;;;5166:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;5166:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;11279:20:0;::::1;;::::0;;;:11:::1;:20;::::0;;;;;::::1;;11271:60;;;::::0;;-1:-1:-1;;;11271:60:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;11347:9;11342:327;11366:9;:16:::0;11362:20;::::1;11342:327;;;11424:7;-1:-1:-1::0;;;;;11408:23:0::1;:9;11418:1;11408:12;;;;;;;;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;11408:12:0::1;:23;11404:254;;;11467:9;11477:16:::0;;-1:-1:-1;;11477:20:0;;;11467:31;::::1;;;;;;::::0;;;::::1;::::0;;;::::1;::::0;11452:9:::1;:12:::0;;-1:-1:-1;;;;;11467:31:0;;::::1;::::0;11462:1;;11452:12;::::1;;;;;;::::0;;;::::1;::::0;;;;;;::::1;:46:::0;;-1:-1:-1;;;;;;11452:46:0::1;-1:-1:-1::0;;;;;11452:46:0;;::::1;;::::0;;11517:16;;::::1;::::0;;:7:::1;:16:::0;;;;;;:20;;;11556:11:::1;:20:::0;;;;:28;;-1:-1:-1;;11556:28:0::1;::::0;;11603:9:::1;:15:::0;;;::::1;;;;;::::0;;;::::1;::::0;;;;-1:-1:-1;;11603:15:0;;;;;-1:-1:-1;;;;;;11603:15:0::1;::::0;;;;;11637:5:::1;;11404:254;11384:3;;11342:327;;;;11198:478:::0;:::o;18422:89::-;5184:12;:10;:12::i;:::-;5174:6;;-1:-1:-1;;;;;5174:6:0;;;:22;;;5166:67;;;;;-1:-1:-1;;;5166:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;5166:67:0;;;;;;;;;;;;;;;18486:8:::1;:17:::0;18422:89::o;94:106::-;182:10;94:106;:::o;11684:337::-;-1:-1:-1;;;;;11777:19:0;;11769:68;;;;-1:-1:-1;;;11769:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11856:21:0;;11848:68;;;;-1:-1:-1;;;11848:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11929:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;11981:32;;;;;;;;;;;;;;;;;11684:337;;;:::o;12029:1080::-;-1:-1:-1;;;;;12126:20:0;;12118:70;;;;-1:-1:-1;;;12118:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;12207:23:0;;12199:71;;;;-1:-1:-1;;;12199:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12298:1;12289:6;:10;12281:64;;;;-1:-1:-1;;;12281:64:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12371:7;:5;:7::i;:::-;-1:-1:-1;;;;;12361:17:0;:6;-1:-1:-1;;;;;12361:17:0;;;:41;;;;;12395:7;:5;:7::i;:::-;-1:-1:-1;;;;;12382:20:0;:9;-1:-1:-1;;;;;12382:20:0;;;12361:41;12358:134;;;12435:12;;12425:6;:22;;12417:75;;;;-1:-1:-1;;;12417:75:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;12509:19:0;;;;;;:11;:19;;;;;;;;:46;;;;-1:-1:-1;;;;;;12533:22:0;;;;;;:11;:22;;;;;;;;12532:23;12509:46;12505:597;;;12572:48;12594:6;12602:9;12613:6;12572:21;:48::i;:::-;12505:597;;;-1:-1:-1;;;;;12643:19:0;;;;;;:11;:19;;;;;;;;12642:20;:46;;;;-1:-1:-1;;;;;;12666:22:0;;;;;;:11;:22;;;;;;;;12642:46;12638:464;;;12705:46;12725:6;12733:9;12744:6;12705:19;:46::i;12638:464::-;-1:-1:-1;;;;;12774:19:0;;;;;;:11;:19;;;;;;;;12773:20;:47;;;;-1:-1:-1;;;;;;12798:22:0;;;;;;:11;:22;;;;;;;;12797:23;12773:47;12769:333;;;12837:44;12855:6;12863:9;12874:6;12837:17;:44::i;12769:333::-;-1:-1:-1;;;;;12903:19:0;;;;;;:11;:19;;;;;;;;:45;;;;-1:-1:-1;;;;;;12926:22:0;;;;;;:11;:22;;;;;;;;12903:45;12899:203;;;12965:48;12987:6;12995:9;13006:6;12965:21;:48::i;12899:203::-;13046:44;13064:6;13072:9;13083:6;13046:17;:44::i;:::-;12029:1080;;;:::o;684:190::-;770:7;806:12;798:6;;;;790:29;;;;-1:-1:-1;;;790:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;842:5:0;;;684:190::o;17487:163::-;17528:7;17549:15;17566;17585:19;:17;:19::i;:::-;17548:56;;-1:-1:-1;17548:56:0;-1:-1:-1;17622:20:0;17548:56;;17622:11;:20::i;:::-;17615:27;;;;17487:163;:::o;1138:132::-;1196:7;1223:39;1227:1;1230;1223:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1216:46;1138:132;-1:-1:-1;;;1138:132:0:o;353:179::-;411:7;443:5;;;467:6;;;;459:46;;;;;-1:-1:-1;;;459:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;16189:470;16248:7;16257;16266;16275;16284;16293;16314:23;16339:12;16353:13;16370:41;16382:7;16391:8;;16401:9;;16370:11;:41::i;:::-;16313:98;;;;;;16422:19;16445:10;:8;:10::i;:::-;16422:33;;16467:15;16484:23;16509:12;16525:46;16537:7;16546:4;16552:5;16559:11;16525;:46::i;:::-;16466:105;;-1:-1:-1;16466:105:0;-1:-1:-1;16466:105:0;-1:-1:-1;16622:15:0;;-1:-1:-1;16639:4:0;;-1:-1:-1;16645:5:0;;-1:-1:-1;;;;;16189:470:0;;;;;;;:::o;540:136::-;598:7;625:43;629:1;632;625:43;;;;;;;;;;;;;;;;;:3;:43::i;882:248::-;940:7;964:6;960:47;;-1:-1:-1;994:1:0;987:8;;960:47;1029:5;;;1033:1;1029;:5;:1;1053:5;;;;;:10;1045:56;;;;-1:-1:-1;;;1045:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18715:332;-1:-1:-1;;;;;18791:21:0;;18783:67;;;;-1:-1:-1;;;18783:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18880:66;18901:6;18880:66;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;18880:16:0;;;;;;:7;:16;;;;;;;:66;:20;:66::i;:::-;-1:-1:-1;;;;;18861:16:0;;;;;;:7;:16;;;;;:85;18967:7;;:19;;18979:6;18967:11;:19::i;:::-;18957:7;:29;19002:37;;;;;;;;19028:1;;-1:-1:-1;;;;;19002:37:0;;;;;;;;;;;;18715:332;;:::o;14342:629::-;14444:19;14467:10;:8;:10::i;:::-;14444:33;;14489:15;14506:23;14531:12;14545:23;14570:12;14584:13;14601:19;14612:7;14601:10;:19::i;:::-;14488:132;;;;;;;;;;;;14631:13;14648:22;14658:11;14648:5;:9;;:22;;;;:::i;:::-;-1:-1:-1;;;;;14699:15:0;;;;;;:7;:15;;;;;;14631:39;;-1:-1:-1;14699:28:0;;14719:7;14699:19;:28::i;:::-;-1:-1:-1;;;;;14681:15:0;;;;;;:7;:15;;;;;;;;:46;;;;14756:7;:15;;;;:28;;14776:7;14756:19;:28::i;:::-;-1:-1:-1;;;;;14738:15:0;;;;;;;:7;:15;;;;;;:46;;;;14816:18;;;;;;;:39;;14839:15;14816:22;:39::i;:::-;-1:-1:-1;;;;;14795:18:0;;;;;;:7;:18;;;;;:60;14866:37;14878:4;14884:5;14891:4;14897:5;14866:11;:37::i;:::-;14936:9;-1:-1:-1;;;;;14919:44:0;14928:6;-1:-1:-1;;;;;14919:44:0;;14947:15;14919:44;;;;;;;;;;;;;;;;;;14342:629;;;;;;;;;;;:::o;13693:641::-;13793:19;13816:10;:8;:10::i;:::-;13793:33;;13838:15;13855:23;13880:12;13894:23;13919:12;13933:13;13950:19;13961:7;13950:10;:19::i;:::-;13837:132;;;;;;;;;;;;13980:13;13997:22;14007:11;13997:5;:9;;:22;;;;:::i;:::-;-1:-1:-1;;;;;14048:15:0;;;;;;:7;:15;;;;;;13980:39;;-1:-1:-1;14048:28:0;;14068:7;14048:19;:28::i;:::-;-1:-1:-1;;;;;14030:15:0;;;;;;;:7;:15;;;;;;;;:46;;;;14108:18;;;;;:7;:18;;;;;:39;;14131:15;14108:22;:39::i;:::-;-1:-1:-1;;;;;14087:18:0;;;;;;:7;:18;;;;;;;;:60;;;;14179:7;:18;;;;:39;;14202:15;14179:22;:39::i;13117:568::-;13215:19;13238:10;:8;:10::i;:::-;13215:33;;13260:15;13277:23;13302:12;13316:23;13341:12;13355:13;13372:19;13383:7;13372:10;:19::i;:::-;13259:132;;;;;;;;;;;;13402:13;13419:22;13429:11;13419:5;:9;;:22;;;;:::i;:::-;-1:-1:-1;;;;;13470:15:0;;;;;;:7;:15;;;;;;13402:39;;-1:-1:-1;13470:28:0;;13490:7;13470:19;:28::i;14979:700::-;15081:19;15104:10;:8;:10::i;:::-;15081:33;;15126:15;15143:23;15168:12;15182:23;15207:12;15221:13;15238:19;15249:7;15238:10;:19::i;:::-;15125:132;;;;;;;;;;;;15268:13;15285:22;15295:11;15285:5;:9;;:22;;;;:::i;:::-;-1:-1:-1;;;;;15336:15:0;;;;;;:7;:15;;;;;;15268:39;;-1:-1:-1;15336:28:0;;15356:7;15336:19;:28::i;:::-;-1:-1:-1;;;;;15318:15:0;;;;;;:7;:15;;;;;;;;:46;;;;15393:7;:15;;;;:28;;15413:7;15393:19;:28::i;17658:555::-;17755:7;;17791;;17708;;;;;17809:289;17833:9;:16;17829:20;;17809:289;;;17899:7;17875;:21;17883:9;17893:1;17883:12;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17883:12:0;17875:21;;;;;;;;;;;;;:31;;:66;;;17934:7;17910;:21;17918:9;17928:1;17918:12;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17918:12:0;17910:21;;;;;;;;;;;;;:31;17875:66;17871:97;;;17951:7;;17960;;17943:25;;;;;;;;;17871:97;17993:34;18005:7;:21;18013:9;18023:1;18013:12;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;18013:12:0;18005:21;;;;;;;;;;;;;17993:7;;:11;:34::i;:::-;17983:44;;18052:34;18064:7;:21;18072:9;18082:1;18072:12;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;18072:12:0;18064:21;;;;;;;;;;;;;18052:7;;:11;:34::i;:::-;18042:44;-1:-1:-1;17851:3:0;;17809:289;;;-1:-1:-1;18134:7:0;;18122;;:20;;:11;:20::i;:::-;18112:7;:30;18108:61;;;18152:7;;18161;;18144:25;;;;;;;;18108:61;18188:7;;-1:-1:-1;18197:7:0;-1:-1:-1;17658:555:0;;;:::o;1278:189::-;1364:7;1399:12;1392:5;1384:28;;;;-1:-1:-1;;;1384:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1423:9;1439:1;1435;:5;;;;;;;1278:189;-1:-1:-1;;;;;1278:189:0:o;16667:395::-;16760:7;;;;16813:50;16859:3;16814:39;16859:3;16814:39;16815:7;16827:6;16815:11;:19::i;16813:50::-;16798:65;-1:-1:-1;16874:13:0;16890:51;16937:3;16891:40;16937:3;16891:40;16892:7;16904;16892:11;:20::i;16890:51::-;16874:67;-1:-1:-1;16952:23:0;16978:28;16874:67;16978:17;:7;16990:4;16978:11;:17::i;:::-;:21;;:28::i;:::-;16952:54;17042:4;;-1:-1:-1;17048:5:0;;-1:-1:-1;16667:395:0;;-1:-1:-1;;;;;16667:395:0:o;17070:409::-;17180:7;;;;17236:24;:7;17248:11;17236;:24::i;:::-;17218:42;-1:-1:-1;17271:12:0;17286:21;:4;17295:11;17286:8;:21::i;:::-;17271:36;-1:-1:-1;17318:13:0;17334:22;:5;17344:11;17334:9;:22::i;:::-;17318:38;-1:-1:-1;17367:23:0;17393:28;17318:38;17393:17;:7;17405:4;17393:11;:17::i;:28::-;17440:7;;;;-1:-1:-1;17466:4:0;;-1:-1:-1;17070:409:0;;-1:-1:-1;;;;;;;17070:409:0:o;15687:274::-;15795:28;15817:5;15795:17;15807:4;15795:7;;:11;;:17;;;;:::i;:28::-;15785:7;:38;15847:10;;:20;;15862:4;15847:14;:20::i;:::-;15834:10;:33;15892:11;;:22;;15908:5;15892:15;:22::i;:::-;15878:11;:36;15935:7;;:18;;15947:5;15935:11;:18::i;:::-;15925:7;:28;-1:-1:-1;;;;15687:274:0:o

Swarm Source

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