Contract 0x78dac4cA20Caf623BF5E64f230C58DE13A0C96CC

 
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x36f3b1f94dc6eef30e7129d5b54e71101753f05fa9da6b10feefd942da819078Approve143971752022-01-15 20:58:592 days 13 hrs ago0xf55b8a730f414e743a3aa4d3331fc9ce3a6f95bc IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000222545
0x75cc7a1649f859beb38ca3423aa8016e1aad2b6f0a541909b0539284c3899b52Approve143814962022-01-15 7:52:053 days 2 hrs ago0x737688d5abd53cf3577d3ed3d8b1a5d811682a79 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000222545
0x7bf62eb984c67a33e0b27c8d0bc1626c812e3c069e55ef8ac336fd77287fdcc1Approve143813552022-01-15 7:45:023 days 3 hrs ago0x8deab566397d6b96e66b0b88c851f2f87726dc29 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000222545
0xeef495c7152270bb632eeb2ddcf6ea395f1f308a7de18f3d99ed9d6861124d83Approve143811852022-01-15 7:36:323 days 3 hrs ago0x7bfd276e94f6533ba994f2714e21d9c62e8a991f IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000311563
0x24c019ca732e760e0f73b479eb58b816b54a8fe2dd62e8591b9b56f8a945e469Approve143811682022-01-15 7:35:413 days 3 hrs ago0x04254f88f39d71761b4faff523ef2096637d3a52 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000222545
0xb3015dde7088acff59f239ee0025fd252f9f252944a29c6d63e962625ad985b3Approve143811292022-01-15 7:33:443 days 3 hrs ago0x449824c1f5edae5eefeb96e12ea7416282960c1d IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000222545
0x58ffb50c582bd9329907b6d9eb13d6b981455d0a7660e631e20417951499c420Approve143809892022-01-15 7:26:443 days 3 hrs ago0xeeb2f50b33d1ba0f2f305d78eda6b80416795466 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000238345695
0xd6da9e8f392c9e41d1a69e8ef52469c76e86d0f84cb1eea8a8fd2061da69e00bApprove143783722022-01-15 5:15:533 days 5 hrs ago0x54627e15dff2ace7833740e8aa14c488e7644ba0 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000222545
0x8c2969de24eea188a07c64fc8789e15ba1ada429e475a711ce51d4194f39a282Approve143771012022-01-15 4:12:043 days 6 hrs ago0xc6537b223b8045616ec0a24fe5b7ca5c6c17123b IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000238345695
0xb2fc724eb652268ab58e12a759bda15591c861be36f5c78cd0734cdae552f283Approve143769152022-01-15 4:02:463 days 6 hrs ago0x13faef11b7ad50c331c2015b8655f82f9e68f95b IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.0002447995
0xa8a86f804135f5c988f1ea0550450002b2f4372e3f34e2ffa30af4a1d992c6abApprove143767532022-01-15 3:54:403 days 6 hrs ago0xaea423be29af838ce528bd9b2625a4f99458934e IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000222545
0xf097b5330b6674c2711473ab561f047f87c9861111b70d4a95734ced15087311Approve143766642022-01-15 3:50:133 days 7 hrs ago0x87023b40395160b617968bd270380aa7e3210521 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000222545
0x639c525589ec72123a2b4e43625e0c7e5ebc3b451bd899b7c3859f037181ac32Approve143766592022-01-15 3:49:583 days 7 hrs ago0x116b864a9d456818e83cc846219748d16426ca15 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000222545
0x348bb854c4c581e4e4658df381c46085ea2d1d996501b84570c583ac4a50a53dApprove143766552022-01-15 3:49:463 days 7 hrs ago0x9685ffcfb6f31b077efabcc5900459fc2ce743b1 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000222545
0x92cf19b30fc1f783a1abbce17e3ad2a3b0924b06c757d7790194c7884555dd18Approve143766412022-01-15 3:49:043 days 7 hrs ago0xa5b0e879c0ec34ae40480e73fcf1f6fa5b850420 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000222545
0x8f560379c94c4d622d27b144383a78afecebebd760cf34e8ff40ffa7a6a7105bApprove143766342022-01-15 3:48:433 days 7 hrs ago0xda7a99774d32f98cc1c915b87709fcbb4e31ab89 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000222545
0x8ff33646276e0319dec8bcd3a7a067fa2822206f81a2485cf249b2963c309a46Approve143766192022-01-15 3:47:583 days 7 hrs ago0x13241edb9ed3e87eb4065bf08335c82b7a0f44b2 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000222545
0x37eac90d41c093b3f7dbacf597501d8735ac8e54ccfd5c2f970631590d7674aeApprove143766032022-01-15 3:47:103 days 7 hrs ago0xbcf29249f111707bad5e1af103b9bf7a68421473 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000311563
0x6e6e8b9353de967afd2fe6009d99619df7b9c3d67b278e3d7636c38809a2f49aApprove143766002022-01-15 3:47:013 days 7 hrs ago0xd757b7ff351da9f501daab78707378bbddecb918 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.0003160423
0x7d42b1191ec213b453f2dd755ddd6b53f205392f1da4ba37a2b2035b49c5f030Approve143765982022-01-15 3:46:553 days 7 hrs ago0x69b516ed75d419c5bba957baff02c07d8641ef28 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.0002492504
0xd837dddf6cc5d5157b4ee0831f2d343c278363892e3a04b59f345ae4c594e153Renounce Ownersh...143765962022-01-15 3:46:493 days 7 hrs ago0x23b4f05d961881898c3b62b015575496dd388f93 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.00007637
0x27531fd1d59d0e6bb3295d37db7f4ab0a6361c3edb937291277c57325ff93f7bApprove143765722022-01-15 3:45:373 days 7 hrs ago0x6667ad8e1dcdba114cb563bb468ddb72c2e19b4c IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000222545
0xd94e9e9a7ffc5589007cdcf9718890694f334b066a2fbcf2173b32842dbc2e53Transfer143765572022-01-15 3:44:523 days 7 hrs ago0x23b4f05d961881898c3b62b015575496dd388f93 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.00043984
0x93a55fb67f280a17aa0e6f45fdfb21cebc7ac53f27895e9052a0370464f929f5Approve143765512022-01-15 3:44:343 days 7 hrs ago0x23b4f05d961881898c3b62b015575496dd388f93 IN  0x78dac4ca20caf623bf5e64f230c58de13a0c96cc0 BNB0.000222545
0xf5d4f25dab9f8b77fa9ded89f99ab5d8b437453c72aac2179e20399676a6c1860x60806040143765422022-01-15 3:44:073 days 7 hrs ago0x23b4f05d961881898c3b62b015575496dd388f93 IN  Create: TopInu0 BNB0.007722965
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
TopInu

Compiler Version
v0.8.11+commit.d7f03943

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2022-01-15
*/

// SPDX-License-Identifier: Unlicensed
pragma solidity ^0.8.9;

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

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

interface DeployerCERTIK {
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves `amount` tokens from the caller's account to `recipient`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(address owner, address spender) external view returns (uint256);

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `sender` to `recipient` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    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;
    }
}

library Address {
    function isContract(address account) internal view returns (bool) {
        uint256 size;
        // solhint-disable-next-line no-inline-assembly
        assembly { size := extcodesize(account) }
        return size > 0;
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        // solhint-disable-next-line avoid-low-level-calls, avoid-call-value
        (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");

        // solhint-disable-next-line avoid-low-level-calls
        (bool success, bytes memory returndata) = target.call{ value: weiValue }(data);
        if (success) {
            return returndata;
        } else {
            // Look for revert reason and bubble it up if present
            if (returndata.length > 0) {
                // The easiest way to bubble the revert reason is using memory via assembly

                // solhint-disable-next-line no-inline-assembly
                assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}

contract Ownable is Context {
    address private _owner;

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

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

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if called by any account other than the 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);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

contract TopInu is Context, DeployerCERTIK, 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;
   
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _allTotalSupply = 100000000000 * 10**6 * 10**9;
    uint256 private _rTotalSupply = (MAX - (MAX % _allTotalSupply));
    uint256 private _tFeeTotal;

    string private _name = 'TopInu';
    string private _symbol = 'TopInu';
    uint8 private _decimals = 9;

    constructor () {
        _rOwned[_msgSender()] = _rTotalSupply;
        emit Transfer(address(0), _msgSender(), _allTotalSupply);
    }

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

    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, "ERC20: 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, "ERC20: 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 reflect(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);
        _rTotalSupply = _rTotalSupply.sub(rAmount);
        _tFeeTotal = _tFeeTotal.add(tAmount);
    }

    function reflectionFromToken(uint256 tAmount, bool deductTransferFee) public view returns(uint256) {
        require(tAmount <= _allTotalSupply, "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 <= _rTotalSupply, "Amount must be less than total reflections");
        uint256 currentRate =  _getRate();
        return rAmount.div(currentRate);
    }

    function excludeAccount(address account) external onlyOwner() {
        require(!_isExcluded[account], "Account is not 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 not 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), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

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

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

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

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

    function _transferBothExcluded(address sender, address recipient, uint256 tAmount) private {
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee) = _getValues(tAmount);
        _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, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

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

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

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

    function _getRValues(uint256 tAmount, uint256 tFee, uint256 currentRate) private pure returns (uint256, uint256, uint256) {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee);
        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 = _rTotalSupply;
        uint256 tSupply = _allTotalSupply;      
        for (uint256 i = 0; i < _excluded.length; i++) {
            if (_rOwned[_excluded[i]] > rSupply || _tOwned[_excluded[i]] > tSupply) return (_rTotalSupply, _allTotalSupply);
            rSupply = rSupply.sub(_rOwned[_excluded[i]]);
            tSupply = tSupply.sub(_tOwned[_excluded[i]]);
        }
        if (rSupply < _rTotalSupply.div(_allTotalSupply)) return (_rTotalSupply, _allTotalSupply);
        return (rSupply, tSupply);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":"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":"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":"address","name":"account","type":"address"}],"name":"excludeAccount","outputs":[],"stateMutability":"nonpayable","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":[],"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"}],"name":"reflect","outputs":[],"stateMutability":"nonpayable","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":[],"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":"totalFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040526200001d6a52b7d2dcc80cd2e4000000600019620001ef565b6200002b9060001962000212565b60069081556040805180820190915281815265546f70496e7560d01b60209091019081526200005e916008919062000149565b5060408051808201909152600680825265546f70496e7560d01b60209092019182526200008e9160099162000149565b50600a805460ff19166009179055348015620000a957600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506006543360008181526001602090815260408083209490945592516a52b7d2dcc80cd2e40000008152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a362000275565b828054620001579062000238565b90600052602060002090601f0160209004810192826200017b5760008555620001c6565b82601f106200019657805160ff1916838001178555620001c6565b82800160010185558215620001c6579182015b82811115620001c6578251825591602001919060010190620001a9565b50620001d4929150620001d8565b5090565b5b80821115620001d45760008155600101620001d9565b6000826200020d57634e487b7160e01b600052601260045260246000fd5b500690565b6000828210156200023357634e487b7160e01b600052601160045260246000fd5b500390565b600181811c908216806200024d57607f821691505b602082108114156200026f57634e487b7160e01b600052602260045260246000fd5b50919050565b61187e80620002856000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c806370a08231116100b8578063a9059cbb1161007c578063a9059cbb14610267578063cba0e9961461027a578063dd62ed3e146102a6578063f2cc0c18146102df578063f2fde38b146102f2578063f84354f11461030557600080fd5b806370a0823114610216578063715018a6146102295780638da5cb5b1461023157806395d89b411461024c578063a457c2d71461025457600080fd5b806323b872dd116100ff57806323b872dd146101b55780632d838119146101c8578063313ce567146101db57806339509351146101f05780634549b0391461020357600080fd5b8063053ab1821461013c57806306fdde0314610151578063095ea7b31461016f57806313114a9d1461019257806318160ddd146101a4575b600080fd5b61014f61014a36600461154b565b610318565b005b610159610405565b6040516101669190611564565b60405180910390f35b61018261017d3660046115d5565b610497565b6040519015158152602001610166565b6007545b604051908152602001610166565b6a52b7d2dcc80cd2e4000000610196565b6101826101c33660046115ff565b6104ae565b6101966101d636600461154b565b610517565b600a5460405160ff9091168152602001610166565b6101826101fe3660046115d5565b61059b565b61019661021136600461163b565b6105d1565b610196610224366004611670565b610665565b61014f6106c4565b6000546040516001600160a01b039091168152602001610166565b610159610738565b6101826102623660046115d5565b610747565b6101826102753660046115d5565b610796565b610182610288366004611670565b6001600160a01b031660009081526004602052604090205460ff1690565b6101966102b436600461168b565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b61014f6102ed366004611670565b6107a3565b61014f610300366004611670565b6108f0565b61014f610313366004611670565b6109da565b3360008181526004602052604090205460ff16156103925760405162461bcd60e51b815260206004820152602c60248201527f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460448201526b3434b990333ab731ba34b7b760a11b60648201526084015b60405180910390fd5b600061039d83610b8b565b505050506001600160a01b0383166000908152600160205260409020549091506103c79082610bd7565b6001600160a01b0383166000908152600160205260409020556006546103ed9082610bd7565b6006556007546103fd9084610c19565b600755505050565b606060088054610414906116be565b80601f0160208091040260200160405190810160405280929190818152602001828054610440906116be565b801561048d5780601f106104625761010080835404028352916020019161048d565b820191906000526020600020905b81548152906001019060200180831161047057829003601f168201915b5050505050905090565b60006104a4338484610c78565b5060015b92915050565b60006104bb848484610d9c565b61050d8433610508856040518060600160405280602881526020016117fc602891396001600160a01b038a1660009081526003602090815260408083203384529091529020549190610fc8565b610c78565b5060019392505050565b600060065482111561057e5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b6064820152608401610389565b6000610588611002565b90506105948382611025565b9392505050565b3360008181526003602090815260408083206001600160a01b038716845290915281205490916104a49185906105089086610c19565b60006a52b7d2dcc80cd2e400000083111561062e5760405162461bcd60e51b815260206004820152601f60248201527f416d6f756e74206d757374206265206c657373207468616e20737570706c79006044820152606401610389565b8161064c57600061063e84610b8b565b509294506104a89350505050565b600061065784610b8b565b509194506104a89350505050565b6001600160a01b03811660009081526004602052604081205460ff16156106a257506001600160a01b031660009081526002602052604090205490565b6001600160a01b0382166000908152600160205260409020546104a890610517565b6000546001600160a01b031633146106ee5760405162461bcd60e51b8152600401610389906116f9565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b606060098054610414906116be565b60006104a4338461050885604051806060016040528060258152602001611824602591393360009081526003602090815260408083206001600160a01b038d1684529091529020549190610fc8565b60006104a4338484610d9c565b6000546001600160a01b031633146107cd5760405162461bcd60e51b8152600401610389906116f9565b6001600160a01b03811660009081526004602052604090205460ff16156108305760405162461bcd60e51b81526020600482015260176024820152761058d8dbdd5b9d081a5cc81b9bdd08195e18db1d591959604a1b6044820152606401610389565b6001600160a01b0381166000908152600160205260409020541561088a576001600160a01b03811660009081526001602052604090205461087090610517565b6001600160a01b0382166000908152600260205260409020555b6001600160a01b03166000818152600460205260408120805460ff191660019081179091556005805491820181559091527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db00180546001600160a01b0319169091179055565b6000546001600160a01b0316331461091a5760405162461bcd60e51b8152600401610389906116f9565b6001600160a01b03811661097f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610389565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610a045760405162461bcd60e51b8152600401610389906116f9565b6001600160a01b03811660009081526004602052604090205460ff16610a665760405162461bcd60e51b81526020600482015260176024820152761058d8dbdd5b9d081a5cc81b9bdd08195e18db1d591959604a1b6044820152606401610389565b60005b600554811015610b8757816001600160a01b031660058281548110610a9057610a9061172e565b6000918252602090912001546001600160a01b03161415610b755760058054610abb9060019061175a565b81548110610acb57610acb61172e565b600091825260209091200154600580546001600160a01b039092169183908110610af757610af761172e565b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559184168152600282526040808220829055600490925220805460ff191690556005805480610b4f57610b4f611771565b600082815260209020810160001990810180546001600160a01b03191690550190555050565b80610b7f81611787565b915050610a69565b5050565b6000806000806000806000610b9f88611067565b915091506000610bad611002565b90506000806000610bbf8c868661109a565b919e909d50909b509599509397509395505050505050565b600061059483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610fc8565b600080610c2683856117a2565b9050838110156105945760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610389565b6001600160a01b038316610cda5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610389565b6001600160a01b038216610d3b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610389565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610e005760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610389565b6001600160a01b038216610e625760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610389565b60008111610ec45760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610389565b6001600160a01b03831660009081526004602052604090205460ff168015610f0557506001600160a01b03821660009081526004602052604090205460ff16155b15610f1a57610f158383836110d6565b505050565b6001600160a01b03831660009081526004602052604090205460ff16158015610f5b57506001600160a01b03821660009081526004602052604090205460ff165b15610f6b57610f158383836111ef565b6001600160a01b03831660009081526004602052604090205460ff16158015610fad57506001600160a01b03821660009081526004602052604090205460ff16155b15610fbd57610f15838383611295565b610f15838383611295565b60008184841115610fec5760405162461bcd60e51b81526004016103899190611564565b506000610ff9848661175a565b95945050505050565b600080600061100f6112d6565b909250905061101e8282611025565b9250505090565b600061059483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061147a565b60008080611081600561107b866064611025565b906114a8565b9050600061108f8583610bd7565b959194509092505050565b60008080806110a987866114a8565b905060006110b787876114a8565b905060006110c58383610bd7565b929992985090965090945050505050565b60008060008060006110e786610b8b565b6001600160a01b038d16600090815260026020526040902054949950929750909550935091506111179087610bd7565b6001600160a01b0389166000908152600260209081526040808320939093556001905220546111469086610bd7565b6001600160a01b03808a1660009081526001602052604080822093909355908916815220546111759085610c19565b6001600160a01b0388166000908152600160205260409020556111988382611527565b866001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516111dd91815260200190565b60405180910390a35050505050505050565b600080600080600061120086610b8b565b6001600160a01b038d16600090815260016020526040902054949950929750909550935091506112309086610bd7565b6001600160a01b03808a16600090815260016020908152604080832094909455918a168152600290915220546112669083610c19565b6001600160a01b0388166000908152600260209081526040808320939093556001905220546111759085610c19565b60008060008060006112a686610b8b565b6001600160a01b038d16600090815260016020526040902054949950929750909550935091506111469086610bd7565b60065460009081906a52b7d2dcc80cd2e4000000825b6005548110156114395782600160006005848154811061130e5761130e61172e565b60009182526020808320909101546001600160a01b03168352820192909252604001902054118061137957508160026000600584815481106113525761135261172e565b60009182526020808320909101546001600160a01b03168352820192909252604001902054115b15611397575050600654936a52b7d2dcc80cd2e40000009350915050565b6113dd60016000600584815481106113b1576113b161172e565b60009182526020808320909101546001600160a01b031683528201929092526040019020548490610bd7565b925061142560026000600584815481106113f9576113f961172e565b60009182526020808320909101546001600160a01b031683528201929092526040019020548390610bd7565b91508061143181611787565b9150506112ec565b50600654611452906a52b7d2dcc80cd2e4000000611025565b821015611471575050600654926a52b7d2dcc80cd2e400000092509050565b90939092509050565b6000818361149b5760405162461bcd60e51b81526004016103899190611564565b506000610ff984866117ba565b6000826114b7575060006104a8565b60006114c383856117dc565b9050826114d085836117ba565b146105945760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610389565b6006546115349083610bd7565b6006556007546115449082610c19565b6007555050565b60006020828403121561155d57600080fd5b5035919050565b600060208083528351808285015260005b8181101561159157858101830151858201604001528201611575565b818111156115a3576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146115d057600080fd5b919050565b600080604083850312156115e857600080fd5b6115f1836115b9565b946020939093013593505050565b60008060006060848603121561161457600080fd5b61161d846115b9565b925061162b602085016115b9565b9150604084013590509250925092565b6000806040838503121561164e57600080fd5b823591506020830135801515811461166557600080fd5b809150509250929050565b60006020828403121561168257600080fd5b610594826115b9565b6000806040838503121561169e57600080fd5b6116a7836115b9565b91506116b5602084016115b9565b90509250929050565b600181811c908216806116d257607f821691505b602082108114156116f357634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60008282101561176c5761176c611744565b500390565b634e487b7160e01b600052603160045260246000fd5b600060001982141561179b5761179b611744565b5060010190565b600082198211156117b5576117b5611744565b500190565b6000826117d757634e487b7160e01b600052601260045260246000fd5b500490565b60008160001904831182151516156117f6576117f6611744565b50029056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220fd7a6c848682e83f212b0f8bc8c6d5bba0fc7de9b0078bb28b0d492a17d2216464736f6c634300080b0033

Deployed ByteCode Sourcemap

8590:10162:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11605:388;;;;;;:::i;:::-;;:::i;:::-;;9479:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10399:161;;;;;;:::i;:::-;;:::i;:::-;;;1403:14:1;;1396:22;1378:41;;1366:2;1351:18;10399:161:0;1238:187:1;11510:87:0;11579:10;;11510:87;;;1576:25:1;;;1564:2;1549:18;11510:87:0;1430:177:1;9756:103:0;9079:28;9756:103;;10568:313;;;;;;:::i;:::-;;:::i;12451:259::-;;;;;;:::i;:::-;;:::i;9665:83::-;9731:9;;9665:83;;9731:9;;;;2087:36:1;;2075:2;2060:18;9665:83:0;1945:184:1;10889:218:0;;;;;;:::i;:::-;;:::i;12001:442::-;;;;;;:::i;:::-;;:::i;9867:198::-;;;;;;:::i;:::-;;:::i;8036:148::-;;;:::i;7734:79::-;7772:7;7799:6;7734:79;;-1:-1:-1;;;;;7799:6:0;;;2817:51:1;;2805:2;2790:18;7734:79:0;2671:203:1;9570:87:0;;;:::i;11115:269::-;;;;;;:::i;:::-;;:::i;10073:167::-;;;;;;:::i;:::-;;:::i;11392:110::-;;;;;;:::i;:::-;-1:-1:-1;;;;;11474:20:0;11450:4;11474:20;;;:11;:20;;;;;;;;;11392:110;10248:143;;;;;;:::i;:::-;-1:-1:-1;;;;;10356:18:0;;;10329:7;10356:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;10248:143;12718:328;;;;;;:::i;:::-;;:::i;8339:244::-;;;;;;:::i;:::-;;:::i;13054:474::-;;;;;;:::i;:::-;;:::i;11605:388::-;181:10;11657:14;11706:19;;;:11;:19;;;;;;;;11705:20;11697:77;;;;-1:-1:-1;;;11697:77:0;;3346:2:1;11697:77:0;;;3328:21:1;3385:2;3365:18;;;3358:30;3424:34;3404:18;;;3397:62;-1:-1:-1;;;3475:18:1;;;3468:42;3527:19;;11697:77:0;;;;;;;;;11786:15;11809:19;11820:7;11809:10;:19::i;:::-;-1:-1:-1;;;;;;;;;11857:15:0;;;;;;:7;:15;;;;;;11785:43;;-1:-1:-1;11857:28:0;;11785:43;11857:19;:28::i;:::-;-1:-1:-1;;;;;11839:15:0;;;;;;:7;:15;;;;;:46;11912:13;;:26;;11930:7;11912:17;:26::i;:::-;11896:13;:42;11962:10;;:23;;11977:7;11962:14;:23::i;:::-;11949:10;:36;-1:-1:-1;;;11605:388:0:o;9479:83::-;9516:13;9549:5;9542:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9479:83;:::o;10399:161::-;10474:4;10491:39;181:10;10514:7;10523:6;10491:8;:39::i;:::-;-1:-1:-1;10548:4:0;10399:161;;;;;:::o;10568:313::-;10666:4;10683:36;10693:6;10701:9;10712:6;10683:9;:36::i;:::-;10730:121;10739:6;181:10;10761:89;10799:6;10761:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10761:19:0;;;;;;:11;:19;;;;;;;;181:10;10761:33;;;;;;;;;;:37;:89::i;:::-;10730:8;:121::i;:::-;-1:-1:-1;10869:4:0;10568:313;;;;;:::o;12451:259::-;12517:7;12556:13;;12545:7;:24;;12537:79;;;;-1:-1:-1;;;12537:79:0;;4144:2:1;12537:79:0;;;4126:21:1;4183:2;4163:18;;;4156:30;4222:34;4202:18;;;4195:62;-1:-1:-1;;;4273:18:1;;;4266:40;4323:19;;12537:79:0;3942:406:1;12537:79:0;12627:19;12650:10;:8;:10::i;:::-;12627:33;-1:-1:-1;12678:24:0;:7;12627:33;12678:11;:24::i;:::-;12671:31;12451:259;-1:-1:-1;;;12451:259:0:o;10889:218::-;181:10;10977:4;11026:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;11026:34:0;;;;;;;;;;10977:4;;10994:83;;11017:7;;11026:50;;11065:10;11026:38;:50::i;12001:442::-;12091:7;9079:28;12119:7;:26;;12111:70;;;;-1:-1:-1;;;12111:70:0;;4555:2:1;12111:70:0;;;4537:21:1;4594:2;4574:18;;;4567:30;4633:33;4613:18;;;4606:61;4684:18;;12111:70:0;4353:355:1;12111:70:0;12197:17;12192:244;;12232:15;12255:19;12266:7;12255:10;:19::i;:::-;-1:-1:-1;12231:43:0;;-1:-1:-1;12289:14:0;;-1:-1:-1;;;;12289:14:0;12192:244;12338:23;12368:19;12379:7;12368:10;:19::i;:::-;-1:-1:-1;12336:51:0;;-1:-1:-1;12402:22:0;;-1:-1:-1;;;;12402:22:0;9867:198;-1:-1:-1;;;;;9957:20:0;;9933:7;9957:20;;;:11;:20;;;;;;;;9953:49;;;-1:-1:-1;;;;;;9986:16:0;;;;;:7;:16;;;;;;;9867:198::o;9953:49::-;-1:-1:-1;;;;;10040:16:0;;;;;;:7;:16;;;;;;10020:37;;:19;:37::i;8036:148::-;7946:6;;-1:-1:-1;;;;;7946:6:0;181:10;7946:22;7938:67;;;;-1:-1:-1;;;7938:67:0;;;;;;;:::i;:::-;8143:1:::1;8127:6:::0;;8106:40:::1;::::0;-1:-1:-1;;;;;8127:6:0;;::::1;::::0;8106:40:::1;::::0;8143:1;;8106:40:::1;8174:1;8157:19:::0;;-1:-1:-1;;;;;;8157:19:0::1;::::0;;8036:148::o;9570:87::-;9609:13;9642:7;9635:14;;;;;:::i;11115:269::-;11208:4;11225:129;181:10;11248:7;11257:96;11296:15;11257:96;;;;;;;;;;;;;;;;;181:10;11257:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;11257:34:0;;;;;;;;;;;;:38;:96::i;10073:167::-;10151:4;10168:42;181:10;10192:9;10203:6;10168:9;:42::i;12718:328::-;7946:6;;-1:-1:-1;;;;;7946:6:0;181:10;7946:22;7938:67;;;;-1:-1:-1;;;7938:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12800:20:0;::::1;;::::0;;;:11:::1;:20;::::0;;;;;::::1;;12799:21;12791:57;;;::::0;-1:-1:-1;;;12791:57:0;;5276:2:1;12791:57:0::1;::::0;::::1;5258:21:1::0;5315:2;5295:18;;;5288:30;-1:-1:-1;;;5334:18:1;;;5327:53;5397:18;;12791:57:0::1;5074:347:1::0;12791:57:0::1;-1:-1:-1::0;;;;;12862:16:0;::::1;12881:1;12862:16:::0;;;:7:::1;:16;::::0;;;;;:20;12859:108:::1;;-1:-1:-1::0;;;;;12938:16:0;::::1;;::::0;;;:7:::1;:16;::::0;;;;;12918:37:::1;::::0;:19:::1;:37::i;:::-;-1:-1:-1::0;;;;;12899:16:0;::::1;;::::0;;;:7:::1;:16;::::0;;;;:56;12859:108:::1;-1:-1:-1::0;;;;;12977:20:0::1;;::::0;;;:11:::1;:20;::::0;;;;:27;;-1:-1:-1;;12977:27:0::1;13000:4;12977:27:::0;;::::1;::::0;;;13015:9:::1;:23:::0;;;;::::1;::::0;;;;;;::::1;::::0;;-1:-1:-1;;;;;;13015:23:0::1;::::0;;::::1;::::0;;12718:328::o;8339:244::-;7946:6;;-1:-1:-1;;;;;7946:6:0;181:10;7946:22;7938:67;;;;-1:-1:-1;;;7938:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8428:22:0;::::1;8420:73;;;::::0;-1:-1:-1;;;8420:73:0;;5628:2:1;8420:73:0::1;::::0;::::1;5610:21:1::0;5667:2;5647:18;;;5640:30;5706:34;5686:18;;;5679:62;-1:-1:-1;;;5757:18:1;;;5750:36;5803:19;;8420:73:0::1;5426:402:1::0;8420:73:0::1;8530:6;::::0;;8509:38:::1;::::0;-1:-1:-1;;;;;8509:38:0;;::::1;::::0;8530:6;::::1;::::0;8509:38:::1;::::0;::::1;8558:6;:17:::0;;-1:-1:-1;;;;;;8558:17:0::1;-1:-1:-1::0;;;;;8558:17:0;;;::::1;::::0;;;::::1;::::0;;8339:244::o;13054:474::-;7946:6;;-1:-1:-1;;;;;7946:6:0;181:10;7946:22;7938:67;;;;-1:-1:-1;;;7938:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;13135:20:0;::::1;;::::0;;;:11:::1;:20;::::0;;;;;::::1;;13127:56;;;::::0;-1:-1:-1;;;13127:56:0;;5276:2:1;13127:56:0::1;::::0;::::1;5258:21:1::0;5315:2;5295:18;;;5288:30;-1:-1:-1;;;5334:18:1;;;5327:53;5397:18;;13127:56:0::1;5074:347:1::0;13127:56:0::1;13199:9;13194:327;13218:9;:16:::0;13214:20;::::1;13194:327;;;13276:7;-1:-1:-1::0;;;;;13260:23:0::1;:9;13270:1;13260:12;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;13260:12:0::1;:23;13256:254;;;13319:9;13329:16:::0;;:20:::1;::::0;13348:1:::1;::::0;13329:20:::1;:::i;:::-;13319:31;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;13304:9:::1;:12:::0;;-1:-1:-1;;;;;13319:31:0;;::::1;::::0;13314:1;;13304:12;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;;::::1;:46:::0;;-1:-1:-1;;;;;;13304:46:0::1;-1:-1:-1::0;;;;;13304:46:0;;::::1;;::::0;;13369:16;;::::1;::::0;;:7:::1;:16:::0;;;;;;:20;;;13408:11:::1;:20:::0;;;;:28;;-1:-1:-1;;13408:28:0::1;::::0;;13455:9:::1;:15:::0;;;::::1;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;-1:-1:-1;;13455:15:0;;;;;-1:-1:-1;;;;;;13455:15:0::1;::::0;;;;;13194:327:::1;13054:474:::0;:::o;13256:254::-:1;13236:3:::0;::::1;::::0;::::1;:::i;:::-;;;;13194:327;;;;13054:474:::0;:::o;16962:411::-;17021:7;17030;17039;17048;17057;17078:23;17103:12;17119:20;17131:7;17119:11;:20::i;:::-;17077:62;;;;17150:19;17173:10;:8;:10::i;:::-;17150:33;;17195:15;17212:23;17237:12;17253:39;17265:7;17274:4;17280:11;17253;:39::i;:::-;17194:98;;;;-1:-1:-1;17194:98:0;;-1:-1:-1;17343:15:0;;-1:-1:-1;17360:4:0;;-1:-1:-1;16962:411:0;;-1:-1:-1;;;;;;16962:411:0:o;3307:136::-;3365:7;3392:43;3396:1;3399;3392:43;;;;;;;;;;;;;;;;;:3;:43::i;3118:181::-;3176:7;;3208:5;3212:1;3208;:5;:::i;:::-;3196:17;;3237:1;3232;:6;;3224:46;;;;-1:-1:-1;;;3224:46:0;;6834:2:1;3224:46:0;;;6816:21:1;6873:2;6853:18;;;6846:30;6912:29;6892:18;;;6885:57;6959:18;;3224:46:0;6632:351:1;13536:337:0;-1:-1:-1;;;;;13629:19:0;;13621:68;;;;-1:-1:-1;;;13621:68:0;;7190:2:1;13621:68:0;;;7172:21:1;7229:2;7209:18;;;7202:30;7268:34;7248:18;;;7241:62;-1:-1:-1;;;7319:18:1;;;7312:34;7363:19;;13621:68:0;6988:400:1;13621:68:0;-1:-1:-1;;;;;13708:21:0;;13700:68;;;;-1:-1:-1;;;13700:68:0;;7595:2:1;13700:68:0;;;7577:21:1;7634:2;7614:18;;;7607:30;7673:34;7653:18;;;7646:62;-1:-1:-1;;;7724:18:1;;;7717:32;7766:19;;13700:68:0;7393:398:1;13700:68:0;-1:-1:-1;;;;;13781:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;13833:32;;1576:25:1;;;13833:32:0;;1549:18:1;13833:32:0;;;;;;;13536:337;;;:::o;13881:799::-;-1:-1:-1;;;;;13978:20:0;;13970:70;;;;-1:-1:-1;;;13970:70:0;;7998:2:1;13970:70:0;;;7980:21:1;8037:2;8017:18;;;8010:30;8076:34;8056:18;;;8049:62;-1:-1:-1;;;8127:18:1;;;8120:35;8172:19;;13970:70:0;7796:401:1;13970:70:0;-1:-1:-1;;;;;14059:23:0;;14051:71;;;;-1:-1:-1;;;14051:71:0;;8404:2:1;14051:71:0;;;8386:21:1;8443:2;8423:18;;;8416:30;8482:34;8462:18;;;8455:62;-1:-1:-1;;;8533:18:1;;;8526:33;8576:19;;14051:71:0;8202:399:1;14051:71:0;14150:1;14141:6;:10;14133:64;;;;-1:-1:-1;;;14133:64:0;;8808:2:1;14133:64:0;;;8790:21:1;8847:2;8827:18;;;8820:30;8886:34;8866:18;;;8859:62;-1:-1:-1;;;8937:18:1;;;8930:39;8986:19;;14133:64:0;8606:405:1;14133:64:0;-1:-1:-1;;;;;14212:19:0;;;;;;:11;:19;;;;;;;;:46;;;;-1:-1:-1;;;;;;14236:22:0;;;;;;:11;:22;;;;;;;;14235:23;14212:46;14208:465;;;14275:48;14297:6;14305:9;14316:6;14275:21;:48::i;:::-;13881:799;;;:::o;14208:465::-;-1:-1:-1;;;;;14346:19:0;;;;;;:11;:19;;;;;;;;14345:20;:46;;;;-1:-1:-1;;;;;;14369:22:0;;;;;;:11;:22;;;;;;;;14345:46;14341:332;;;14408:46;14428:6;14436:9;14447:6;14408:19;:46::i;14341:332::-;-1:-1:-1;;;;;14477:19:0;;;;;;:11;:19;;;;;;;;14476:20;:47;;;;-1:-1:-1;;;;;;14501:22:0;;;;;;:11;:22;;;;;;;;14500:23;14476:47;14472:201;;;14540:44;14558:6;14566:9;14577:6;14540:17;:44::i;14472:201::-;14617:44;14635:6;14643:9;14654:6;14617:17;:44::i;3451:192::-;3537:7;3573:12;3565:6;;;;3557:29;;;;-1:-1:-1;;;3557:29:0;;;;;;;;:::i;:::-;-1:-1:-1;3597:9:0;3609:5;3613:1;3609;:5;:::i;:::-;3597:17;3451:192;-1:-1:-1;;;;;3451:192:0:o;17961:163::-;18002:7;18023:15;18040;18059:19;:17;:19::i;:::-;18022:56;;-1:-1:-1;18022:56:0;-1:-1:-1;18096:20:0;18022:56;;18096:11;:20::i;:::-;18089:27;;;;17961:163;:::o;3909:132::-;3967:7;3994:39;3998:1;4001;3994:39;;;;;;;;;;;;;;;;;:3;:39::i;17381:230::-;17441:7;;;17485:23;17506:1;17485:16;:7;17497:3;17485:11;:16::i;:::-;:20;;:23::i;:::-;17470:38;-1:-1:-1;17519:23:0;17545:17;:7;17470:38;17545:11;:17::i;:::-;17519:43;17598:4;;-1:-1:-1;17381:230:0;;-1:-1:-1;;;17381:230:0:o;17619:334::-;17714:7;;;;17770:24;:7;17782:11;17770;:24::i;:::-;17752:42;-1:-1:-1;17805:12:0;17820:21;:4;17829:11;17820:8;:21::i;:::-;17805:36;-1:-1:-1;17852:23:0;17878:17;:7;17805:36;17878:11;:17::i;:::-;17914:7;;;;-1:-1:-1;17940:4:0;;-1:-1:-1;17619:334:0;;-1:-1:-1;;;;;17619:334:0:o;15685:509::-;15788:15;15805:23;15830:12;15844:23;15869:12;15885:19;15896:7;15885:10;:19::i;:::-;-1:-1:-1;;;;;15933:15:0;;;;;;:7;:15;;;;;;15787:117;;-1:-1:-1;15787:117:0;;-1:-1:-1;15787:117:0;;-1:-1:-1;15787:117:0;-1:-1:-1;15787:117:0;-1:-1:-1;15933:28:0;;15953:7;15933:19;:28::i;:::-;-1:-1:-1;;;;;15915:15:0;;;;;;:7;:15;;;;;;;;:46;;;;15990:7;:15;;;;:28;;16010:7;15990:19;:28::i;:::-;-1:-1:-1;;;;;15972:15:0;;;;;;;:7;:15;;;;;;:46;;;;16050:18;;;;;;;:39;;16073:15;16050:22;:39::i;:::-;-1:-1:-1;;;;;16029:18:0;;;;;;:7;:18;;;;;:60;16103:23;16115:4;16121;16103:11;:23::i;:::-;16159:9;-1:-1:-1;;;;;16142:44:0;16151:6;-1:-1:-1;;;;;16142:44:0;;16170:15;16142:44;;;;1576:25:1;;1564:2;1549:18;;1430:177;16142:44:0;;;;;;;;15776:418;;;;;15685:509;;;:::o;15148:529::-;15249:15;15266:23;15291:12;15305:23;15330:12;15346:19;15357:7;15346:10;:19::i;:::-;-1:-1:-1;;;;;15394:15:0;;;;;;:7;:15;;;;;;15248:117;;-1:-1:-1;15248:117:0;;-1:-1:-1;15248:117:0;;-1:-1:-1;15248:117:0;-1:-1:-1;15248:117:0;-1:-1:-1;15394:28:0;;15248:117;15394:19;:28::i;:::-;-1:-1:-1;;;;;15376:15:0;;;;;;;:7;:15;;;;;;;;:46;;;;15454:18;;;;;:7;:18;;;;;:39;;15477:15;15454:22;:39::i;:::-;-1:-1:-1;;;;;15433:18:0;;;;;;:7;:18;;;;;;;;:60;;;;15525:7;:18;;;;:39;;15548:15;15525:22;:39::i;14688:452::-;14787:15;14804:23;14829:12;14843:23;14868:12;14884:19;14895:7;14884:10;:19::i;:::-;-1:-1:-1;;;;;14932:15:0;;;;;;:7;:15;;;;;;14786:117;;-1:-1:-1;14786:117:0;;-1:-1:-1;14786:117:0;;-1:-1:-1;14786:117:0;-1:-1:-1;14786:117:0;-1:-1:-1;14932:28:0;;14786:117;14932:19;:28::i;18132:617::-;18229:13;;18182:7;;;;9079:28;18182:7;18303:303;18327:9;:16;18323:20;;18303:303;;;18393:7;18369;:21;18377:9;18387:1;18377:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;18377:12:0;18369:21;;;;;;;;;;;;;:31;;:66;;;18428:7;18404;:21;18412:9;18422:1;18412:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;18412:12:0;18404:21;;;;;;;;;;;;;:31;18369:66;18365:111;;;-1:-1:-1;;18445:13:0;;;9079:28;;-1:-1:-1;18132:617:0;-1:-1:-1;;18132:617:0:o;18365:111::-;18501:34;18513:7;:21;18521:9;18531:1;18521:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;18521:12:0;18513:21;;;;;;;;;;;;;18501:7;;:11;:34::i;:::-;18491:44;;18560:34;18572:7;:21;18580:9;18590:1;18580:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;18580:12:0;18572:21;;;;;;;;;;;;;18560:7;;:11;:34::i;:::-;18550:44;-1:-1:-1;18345:3:0;;;;:::i;:::-;;;;18303:303;;;-1:-1:-1;18630:13:0;;:34;;9079:28;18630:17;:34::i;:::-;18620:7;:44;18616:89;;;-1:-1:-1;;18674:13:0;;;9079:28;;-1:-1:-1;18132:617:0;-1:-1:-1;18132:617:0:o;18616:89::-;18724:7;;18733;;-1:-1:-1;18132:617:0;-1:-1:-1;18132:617:0:o;4049:278::-;4135:7;4170:12;4163:5;4155:28;;;;-1:-1:-1;;;4155:28:0;;;;;;;;:::i;:::-;-1:-1:-1;4194:9:0;4206:5;4210:1;4206;:5;:::i;3651:250::-;3709:7;3733:6;3729:47;;-1:-1:-1;3763:1:0;3756:8;;3729:47;3788:9;3800:5;3804:1;3800;:5;:::i;:::-;3788:17;-1:-1:-1;3833:1:0;3824:5;3828:1;3788:17;3824:5;:::i;:::-;:10;3816:56;;;;-1:-1:-1;;;3816:56:0;;9613:2:1;3816:56:0;;;9595:21:1;9652:2;9632:18;;;9625:30;9691:34;9671:18;;;9664:62;-1:-1:-1;;;9742:18:1;;;9735:31;9783:19;;3816:56:0;9411:397:1;16795:159:0;16879:13;;:23;;16897:4;16879:17;:23::i;:::-;16863:13;:39;16926:10;;:20;;16941:4;16926:14;:20::i;:::-;16913:10;:33;-1:-1:-1;;16795:159:0:o;14:180:1:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:1;;14:180;-1:-1:-1;14:180:1:o;199:597::-;311:4;340:2;369;358:9;351:21;401:6;395:13;444:6;439:2;428:9;424:18;417:34;469:1;479:140;493:6;490:1;487:13;479:140;;;588:14;;;584:23;;578:30;554:17;;;573:2;550:26;543:66;508:10;;479:140;;;637:6;634:1;631:13;628:91;;;707:1;702:2;693:6;682:9;678:22;674:31;667:42;628:91;-1:-1:-1;780:2:1;759:15;-1:-1:-1;;755:29:1;740:45;;;;787:2;736:54;;199:597;-1:-1:-1;;;199:597:1:o;801:173::-;869:20;;-1:-1:-1;;;;;918:31:1;;908:42;;898:70;;964:1;961;954:12;898:70;801:173;;;:::o;979:254::-;1047:6;1055;1108:2;1096:9;1087:7;1083:23;1079:32;1076:52;;;1124:1;1121;1114:12;1076:52;1147:29;1166:9;1147:29;:::i;:::-;1137:39;1223:2;1208:18;;;;1195:32;;-1:-1:-1;;;979:254:1:o;1612:328::-;1689:6;1697;1705;1758:2;1746:9;1737:7;1733:23;1729:32;1726:52;;;1774:1;1771;1764:12;1726:52;1797:29;1816:9;1797:29;:::i;:::-;1787:39;;1845:38;1879:2;1868:9;1864:18;1845:38;:::i;:::-;1835:48;;1930:2;1919:9;1915:18;1902:32;1892:42;;1612:328;;;;;:::o;2134:341::-;2199:6;2207;2260:2;2248:9;2239:7;2235:23;2231:32;2228:52;;;2276:1;2273;2266:12;2228:52;2312:9;2299:23;2289:33;;2372:2;2361:9;2357:18;2344:32;2419:5;2412:13;2405:21;2398:5;2395:32;2385:60;;2441:1;2438;2431:12;2385:60;2464:5;2454:15;;;2134:341;;;;;:::o;2480:186::-;2539:6;2592:2;2580:9;2571:7;2567:23;2563:32;2560:52;;;2608:1;2605;2598:12;2560:52;2631:29;2650:9;2631:29;:::i;2879:260::-;2947:6;2955;3008:2;2996:9;2987:7;2983:23;2979:32;2976:52;;;3024:1;3021;3014:12;2976:52;3047:29;3066:9;3047:29;:::i;:::-;3037:39;;3095:38;3129:2;3118:9;3114:18;3095:38;:::i;:::-;3085:48;;2879:260;;;;;:::o;3557:380::-;3636:1;3632:12;;;;3679;;;3700:61;;3754:4;3746:6;3742:17;3732:27;;3700:61;3807:2;3799:6;3796:14;3776:18;3773:38;3770:161;;;3853:10;3848:3;3844:20;3841:1;3834:31;3888:4;3885:1;3878:15;3916:4;3913:1;3906:15;3770:161;;3557:380;;;:::o;4713:356::-;4915:2;4897:21;;;4934:18;;;4927:30;4993:34;4988:2;4973:18;;4966:62;5060:2;5045:18;;4713:356::o;5833:127::-;5894:10;5889:3;5885:20;5882:1;5875:31;5925:4;5922:1;5915:15;5949:4;5946:1;5939:15;5965:127;6026:10;6021:3;6017:20;6014:1;6007:31;6057:4;6054:1;6047:15;6081:4;6078:1;6071:15;6097:125;6137:4;6165:1;6162;6159:8;6156:34;;;6170:18;;:::i;:::-;-1:-1:-1;6207:9:1;;6097:125::o;6227:127::-;6288:10;6283:3;6279:20;6276:1;6269:31;6319:4;6316:1;6309:15;6343:4;6340:1;6333:15;6359:135;6398:3;-1:-1:-1;;6419:17:1;;6416:43;;;6439:18;;:::i;:::-;-1:-1:-1;6486:1:1;6475:13;;6359:135::o;6499:128::-;6539:3;6570:1;6566:6;6563:1;6560:13;6557:39;;;6576:18;;:::i;:::-;-1:-1:-1;6612:9:1;;6499:128::o;9016:217::-;9056:1;9082;9072:132;;9126:10;9121:3;9117:20;9114:1;9107:31;9161:4;9158:1;9151:15;9189:4;9186:1;9179:15;9072:132;-1:-1:-1;9218:9:1;;9016:217::o;9238:168::-;9278:7;9344:1;9340;9336:6;9332:14;9329:1;9326:21;9321:1;9314:9;9307:17;9303:45;9300:71;;;9351:18;;:::i;:::-;-1:-1:-1;9391:9:1;;9238:168::o

Swarm Source

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