Contract 0xd42220de5f5260ccc4c80fe3b08dae0968688d13 1

 
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x712a2969c0a022460a99129d04921c1b9d852130a55fa1e99d7afe570f238104Approve132165782021-12-05 13:03:391 day 11 hrs ago0x77e6a7cec6884679cc782859f0269947b18dc81e IN  VONDER.finance: xVON Token0 BNB0.000222035
0x0cebe9ed02e82a09f683645b1eda393439dbfbf7473b8f7aa4725058ca0b819dTransfer131413162021-12-02 21:34:474 days 2 hrs ago0x8217a644c3a2016587a8663b5c63b19181985205 IN  VONDER.finance: xVON Token0 BNB0.000180865
0x51ef7d66919aa92aafdf13827f1ace74961c37674bab4bc6a77e4c1d9f1fbf28Transfer131411952021-12-02 21:28:444 days 2 hrs ago0x7ea12f655ff1892295fac8f34ec7fc2bfa0481c2 IN  VONDER.finance: xVON Token0 BNB0.000105745
0x103a3184a43b5fb1b5dc0c5c7014ac54ef52f2c97eeecb9062f5b4d22da44fdeApprove131193722021-12-02 2:45:024 days 21 hrs ago0x74bacf96e5529b9337fb2c87b4ad84f050688405 IN  VONDER.finance: xVON Token0 BNB0.00007256
0xdd01c0521603b6dfd81f9d49113a2169da4be0cfcda73671c79d16d6331e790fApprove130763392021-11-30 12:25:286 days 12 hrs ago0x74e459e5c7473d8c0bb2f3a4badace87a085e687 IN  VONDER.finance: xVON Token0 BNB0.000222035
0x4abe3c9249f3fa579c88bfd00e6e9016059fcdf6bd30dba9a7cab71b36e677f1Approve130671452021-11-30 4:10:096 days 20 hrs ago0xb3835ac3e4b00bfbc610ecde54ed7dd881ac4535 IN  VONDER.finance: xVON Token0 BNB0.000222035
0xb4b1be2e45f9f0e7efd43541e4f1fe0adb43a3680714f9b511a305e6f14781a8Approve130231472021-11-28 12:00:188 days 12 hrs ago0x74bacf96e5529b9337fb2c87b4ad84f050688405 IN  VONDER.finance: xVON Token0 BNB0.000222035
0x04446b0d8786006ac2b45f41c70cdb3bf91e8754e41e67c439a75395a85194e4Approve129684292021-11-26 10:59:5910 days 13 hrs ago0x78dfbb8e019e0787873f3a948c15c30bfbb8d4b2 IN  VONDER.finance: xVON Token0 BNB0.000220535
0xf5beb32da751cf73e8da36bd86c0e337870ed8ac8f0f1ee57597804f86196a9bApprove129683892021-11-26 10:57:3910 days 13 hrs ago0x7583e1324a35b4c528b4665f8f0177a6eb34fc3a IN  VONDER.finance: xVON Token0 BNB0.000220535
0x6e216a76b799ccfc4a36fd589b9f325c6eb752605df0bb2eb150dfd8f06c2dcbTransfer129683562021-11-26 10:55:4810 days 13 hrs ago0x7583e1324a35b4c528b4665f8f0177a6eb34fc3a IN  VONDER.finance: xVON Token0 BNB0.000255745
0x81253814e146c83b5af09dbda5a58b6fdbf32f03c54a13190847fff0c203c9d1Approve129679632021-11-26 10:33:1810 days 13 hrs ago0x7583e1324a35b4c528b4665f8f0177a6eb34fc3a IN  VONDER.finance: xVON Token0 BNB0.000222035
0x00a87dd49566a765716da508e8b6447f456071f6e36864c7e2d6fea42f2522a8Approve129634692021-11-26 6:19:0410 days 18 hrs ago0x7ea12f655ff1892295fac8f34ec7fc2bfa0481c2 IN  VONDER.finance: xVON Token0 BNB0.000220595
0x71f7eea6516b24afbab5903dbb6874d676fb2c9e54805d9b1898f698bcacbd1cApprove129473602021-11-25 15:05:3311 days 9 hrs ago0x22f45e683b2574efe3b2d82642e4176fa1967c42 IN  VONDER.finance: xVON Token0 BNB0.000266442
0x886607e3856c56e038f11135ee1b753050a47048c4bf3961ca46eeda40118918Transfer129083922021-11-24 4:39:4512 days 19 hrs ago0x64d3eb5b28c01e4aef5cd9b5b776c334ea06edef IN  VONDER.finance: xVON Token0 BNB0.000180745
0x3a11ed5b55835eb99da86f4c69fd7d8ce0ef92246fd81627b00d4829e8fc90f4Transfer128884802021-11-23 11:11:0713 days 13 hrs ago0x7583e1324a35b4c528b4665f8f0177a6eb34fc3a IN  VONDER.finance: xVON Token0 BNB0.000180745
0xbd88939a3f1bf3120f5b02e412c6a1a87c7d674c1bc59bdb81cc054b8b20ccecApprove128830992021-11-23 6:32:4713 days 17 hrs ago0x2d00599a54bf14a496233c94873fc3c50ddeae1c IN  VONDER.finance: xVON Token0 BNB0.000222035
0xe2aeb2e338ccf86079d08ddafe9e765dc37ce6a8aba5669d0f75e04fd345495dTransfer128496282021-11-22 1:54:2714 days 22 hrs ago0x3eab2665c467810cfe8c6b065c3c0899af0a9b07 IN  VONDER.finance: xVON Token0 BNB0.000105805
0x436dc8d2a9a41a7d33cda0d273600151848de672ce7166766008ecb2e53e3e4dApprove128150152021-11-20 20:29:1916 days 3 hrs ago0x8217a644c3a2016587a8663b5c63b19181985205 IN  VONDER.finance: xVON Token0 BNB0.000220595
0x133da27a8374b811c756a25801f890fa00c0b4990a995ed6016378cb733a3259Approve128147402021-11-20 20:15:3316 days 4 hrs ago0xbb05017e06e06f0e4b9341533b091adf0efb53d3 IN  VONDER.finance: xVON Token0 BNB0.000222035
0xd9f20234d09594d095586c81f91eeb9aec75cfeb8f6a3dd120767fe4f65573dfApprove128143262021-11-20 19:54:1516 days 4 hrs ago0x8217a644c3a2016587a8663b5c63b19181985205 IN  VONDER.finance: xVON Token0 BNB0.000222035
0xb9f84aa6e2eef48867f7613ea991a1912cf749bce3b22516e7a287497bd787f7Approve128142012021-11-20 19:47:5916 days 4 hrs ago0x8217a644c3a2016587a8663b5c63b19181985205 IN  VONDER.finance: xVON Token0 BNB0.000222035
0x475b975d7fdfa09eb40b87c09b22c7f236dc676a3e5012f36722955aa01dd6aaApprove127990492021-11-20 6:39:3416 days 17 hrs ago0x38df6bb9874e6b1636cfdfdedf09ce96f2c3b391 IN  VONDER.finance: xVON Token0 BNB0.000222035
0xd077f32924aba41a0c76de42573863323168a9899b1a172f411a7654a391ca9dTransfer127953762021-11-20 3:27:4516 days 21 hrs ago0x3eab2665c467810cfe8c6b065c3c0899af0a9b07 IN  VONDER.finance: xVON Token0 BNB0.000105805
0x678adabb19e729e63c98381e3e156dd27b4497f629472731036338afbe816c83Increase Allowan...127911202021-11-19 23:34:1917 days 53 mins ago0x4d2f9077f357c4296dab5fcd27db793ed6e0aeae IN  VONDER.finance: xVON Token0 BNB0.000151115
0x973991e2c7fc5f7dd89d6ab923c67d77ff5c0e6338a00e6e0dd8b2abbc876b50Transfer127910932021-11-19 23:32:5817 days 54 mins ago0x4d27d0c531bd634d5a26f219596b84f171002fb1 IN  VONDER.finance: xVON Token0 BNB0.000105925
[ Download CSV Export 

OVERVIEW

A digital asset launchpad aiming at sustainable yield farming.

Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
VonderToken

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-09-04
*/

// File: contracts/XVON.sol

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

library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `+` operator.
     *
     * Requirements:
     *
     * - Addition cannot overflow.
     */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `*` operator.
     *
     * Requirements:
     *
     * - Multiplication cannot overflow.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts with custom message on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be 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;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts with custom message when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

/*
 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with GSN meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.
 */
abstract contract Context {
    function _msgSender() internal view virtual returns (address payable) {
        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;
    }
}

/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
abstract 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 () internal {
        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");
        _;
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to 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;
    }
}

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

    /**
     * @dev Returns the token decimals.
     */
    function decimals() external view returns (uint8);

    /**
     * @dev Returns the token symbol.
     */
    function symbol() external view returns (string memory);

    /**
     * @dev Returns the token name.
     */
    function name() external view returns (string memory);

    /**
     * @dev Returns the bep token owner.
     */
    function getOwner() external view returns (address);

    /**
     * @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);
}

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

    mapping(address => uint256) private _balances;

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

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;
    uint8 private _decimals;
    
    // customize to lock reward 70% and release in 30days
    uint256 private _rewardLock = 7000; // lock 70%
    uint256 private _totalBlockRelease = 30 * 24 * 60 * 60 / 5; // BKC Blocktime 5 sec
    mapping(address => uint256) private _balancesLock;
    mapping(address => uint256) private _rewardPerBlock;
    mapping(address => uint256) private _lastClaimBlock;
    mapping(address => uint256) private _endClaimBlock;

    /**
     * @dev Sets the values for {name} and {symbol}, initializes {decimals} with
     * a default value of 18.
     *
     * To select a different value for {decimals}, use {_setupDecimals}.
     *
     * All three of these values are immutable: they can only be set once during
     * construction.
     */
    constructor(string memory name, string memory symbol) public {
        _name = name;
        _symbol = symbol;
        _decimals = 18;
    }

    /**
     * @dev Returns the bep token owner.
     */
    function getOwner() external override view returns (address) {
        return owner();
    }

    /**
     * @dev Returns the name of the token.
     */
    function name() public override view returns (string memory) {
        return _name;
    }

    /**
     * @dev Returns the symbol of the token, usually a shorter version of the
     * name.
     */
    function symbol() public override view returns (string memory) {
        return _symbol;
    }

    /**
    * @dev Returns the number of decimals used to get its user representation.
    */
    function decimals() public override view returns (uint8) {
        return _decimals;
    }

    /**
     * @dev See {BEP20-totalSupply}.
     */
    function totalSupply() public override view returns (uint256) {
        return _totalSupply;
    }

    /**
     * @dev See {BEP20-balanceOf}.
     */
    function balanceOf(address account) public override view returns (uint256) {
        return _balances[account];
    }

    /**
     * @dev See {BEP20-transfer}.
     *
     * Requirements:
     *
     * - `recipient` cannot be the zero address.
     * - the caller must have a balance of at least `amount`.
     */
    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    /**
     * @dev See {BEP20-allowance}.
     */
    function allowance(address owner, address spender) public override view returns (uint256) {
        return _allowances[owner][spender];
    }

    /**
     * @dev See {BEP20-approve}.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    /**
     * @dev See {BEP20-transferFrom}.
     *
     * Emits an {Approval} event indicating the updated allowance. This is not
     * required by the EIP. See the note at the beginning of {BEP20};
     *
     * Requirements:
     * - `sender` and `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `amount`.
     * - the caller must have allowance for `sender`'s tokens of at least
     * `amount`.
     */
    function transferFrom (address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(
            sender,
            _msgSender(),
            _allowances[sender][_msgSender()].sub(amount, 'BEP20: transfer amount exceeds allowance')
        );
        return true;
    }

    /**
     * @dev Atomically increases the allowance granted to `spender` by the caller.
     *
     * This is an alternative to {approve} that can be used as a mitigation for
     * problems described in {BEP20-approve}.
     *
     * Emits an {Approval} event indicating the updated allowance.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
        return true;
    }

    /**
     * @dev Atomically decreases the allowance granted to `spender` by the caller.
     *
     * This is an alternative to {approve} that can be used as a mitigation for
     * problems described in {BEP20-approve}.
     *
     * Emits an {Approval} event indicating the updated allowance.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     * - `spender` must have allowance for the caller of at least
     * `subtractedValue`.
     */
    function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, 'BEP20: decreased allowance below zero'));
        return true;
    }

    /**
     * @dev Creates `amount` tokens and assigns them to `msg.sender`, increasing
     * the total supply.
     *
     * Requirements
     *
     * - `msg.sender` must be the token owner
     */
    function mint(uint256 amount) public onlyOwner returns (bool) {
        _mint(_msgSender(), amount);
        return true;
    }

    /**
     * @dev Moves tokens `amount` from `sender` to `recipient`.
     *
     * This is internal function is equivalent to {transfer}, and can be used to
     * e.g. implement automatic token fees, slashing mechanisms, etc.
     *
     * Emits a {Transfer} event.
     *
     * Requirements:
     *
     * - `sender` cannot be the zero address.
     * - `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `amount`.
     */
    function _transfer (address sender, address recipient, uint256 amount) internal {
        require(sender != address(0), 'BEP20: transfer from the zero address');
        require(recipient != address(0), 'BEP20: transfer to the zero address');

        _balances[sender] = _balances[sender].sub(amount, 'BEP20: transfer amount exceeds balance');
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }

    /** @dev Creates `amount` tokens and assigns them to `account`, increasing
     * the total supply.
     *
     * Emits a {Transfer} event with `from` set to the zero address.
     *
     * Requirements
     *
     * - `to` cannot be the zero address.
     */
    function _mint(address account, uint256 amount) internal {
        require(account != address(0), 'BEP20: mint to the zero address');

        _totalSupply = _totalSupply.add(amount);
        _balances[account] = _balances[account].add(amount);
        emit Transfer(address(0), account, amount);
    }

    /**
     * @dev Destroys `amount` tokens from `account`, reducing the
     * total supply.
     *
     * Emits a {Transfer} event with `to` set to the zero address.
     *
     * Requirements
     *
     * - `account` cannot be the zero address.
     * - `account` must have at least `amount` tokens.
     */
    function _burn(address account, uint256 amount) internal {
        require(account != address(0), 'BEP20: burn from the zero address');

        _balances[account] = _balances[account].sub(amount, 'BEP20: burn amount exceeds balance');
        _totalSupply = _totalSupply.sub(amount);
        emit Transfer(account, address(0), amount);
    }

    /**
     * @dev Sets `amount` as the allowance of `spender` over the `owner`s tokens.
     *
     * This is internal function is equivalent to `approve`, and can be used to
     * e.g. set automatic allowances for certain subsystems, etc.
     *
     * Emits an {Approval} event.
     *
     * Requirements:
     *
     * - `owner` cannot be the zero address.
     * - `spender` cannot be the zero address.
     */
    function _approve (address owner, address spender, uint256 amount) internal {
        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);
    }

    /**
     * @dev Destroys `amount` tokens from `account`.`amount` is then deducted
     * from the caller's allowance.
     *
     * See {_burn} and {_approve}.
     */
    function _burnFrom(address account, uint256 amount) internal {
        _burn(account, amount);
        _approve(account, _msgSender(), _allowances[account][_msgSender()].sub(amount, 'BEP20: burn amount exceeds allowance'));
    }
    
    /**
     * Harvest reward holding system (Algorithm sarun release)
     * 
     * After Harvest, you will get the rewards as following:
     * - 30% of your rewards will return to your wallet immediately. 
     * - 70% of your remaining rewards must be divided by 7 days and remaining reward renew to 7 days everytime reward harvested again.
     */
     
    // onlyOwner is MasterChef can setRewardLock 
    function setRewardLock(uint256 lock) public onlyOwner {
        require(lock <= 10000, "lock: invalid reward lock");
        _rewardLock = lock;
    }
    
    // onlyOwner is MasterChef can setTotalBlockRelease
    function setTotalBlockRelease(uint256 totalBlockRelease) public onlyOwner {
        _totalBlockRelease = totalBlockRelease;
    }
    
    // onlyOwner is MasterChef to transferWithLock
    function transferWithLock(address recipient, uint256 amount) public onlyOwner returns (bool) {
        require(amount > 0, "amount: invalid amount");

        _transferWithLock(_msgSender(), recipient, amount);
        return true;
    }

    function _transferWithLock (address sender, address recipient, uint256 amount) internal {
        require(sender != address(0), 'BEP20: transfer from the zero address');
        require(recipient != address(0), 'BEP20: transfer to the zero address');
        
        // claim locked reward
         _claimRewardLock(recipient);
        
        uint256 _amountLock = amount.mul(_rewardLock).div(10000); // 70%
        uint256 _amount = amount.sub(_amountLock, 'BEP20: transfer amount exceeds balance'); // 30%

        _balances[sender] = _balances[sender].sub(amount, 'BEP20: transfer amount exceeds balance');
        _balances[recipient] = _balances[recipient].add(_amount);
        
        // update lock balance
        _balancesLock[recipient] = _balancesLock[recipient].add(_amountLock);
        _lastClaimBlock[recipient] = block.number;
        _endClaimBlock[recipient] = block.number.add(_totalBlockRelease); // renew last claim block
        _rewardPerBlock[recipient] = _balancesLock[recipient].mul(10000).div(_totalBlockRelease);
        
        emit Transfer(sender, recipient, amount);
    }
    
    function claimRewardLock() public {
        _claimRewardLock(_msgSender());
    }
    
    function _claimRewardLock(address account) internal {
        uint256 release = getRewardLockToClaim(account);
        if (release > 0) {
            uint256 remain = _balancesLock[account].sub(release);
            if (_endClaimBlock[account] < block.number) {
                _balances[account] = _balances[account].add(_balancesLock[account]);
                _balancesLock[account] = 0;
            } else {
                _balances[account] = _balances[account].add(release);
                _balancesLock[account] = remain;
            }
            
            // set last claim block
            _lastClaimBlock[account] = block.number;
        }
    }
    
    function getRewardLockToClaim(address account) public view returns (uint256) {
        if (block.number > _endClaimBlock[account]) {
            return _balancesLock[account];
        } else {
            return (block.number.sub(_lastClaimBlock[account])).mul(_rewardPerBlock[account]).div(10000);
        }
    }
    
    function getTotalRewardLock(address account) public view returns (uint256) {
        return _balancesLock[account];
    }
    
    function getLastClaimBlock(address account) public view returns (uint256) {
        return _lastClaimBlock[account];
    }
    
    function getEndClaimBlock(address account) public view returns (uint256) {
        return _endClaimBlock[account];
    }
}

// VonderToken without Governance.
contract VonderToken is BEP20('Extended VONDER', 'xVON') {
    uint256 private _cap = 101051200e18; //101,051,200

    function cap() public view returns (uint256) {
        return _cap;
    }

    // @notice Creates `_amount` token to `_to`. Must only be called by the owner (MasterChef).
    function mint(address _to, uint256 _amount) public onlyOwner {
        require(totalSupply().add(_amount) <= cap(), "cap exceeded");
        _mint(_to, _amount);
    }
}

Contract Security Audit

Contract ABI

[{"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":"cap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claimRewardLock","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":"address","name":"account","type":"address"}],"name":"getEndClaimBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"getLastClaimBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"getRewardLockToClaim","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"getTotalRewardLock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"lock","type":"uint256"}],"name":"setRewardLock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"totalBlockRelease","type":"uint256"}],"name":"setTotalBlockRelease","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"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":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferWithLock","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

6080604052611b586007556207e9006008556a53966c87533486a5000000600d553480156200002d57600080fd5b506040518060400160405280600f81526020016e22bc3a32b73232b2102b27a72222a960891b815250604051806040016040528060048152602001633c2b27a760e11b8152506000620000856200011060201b60201c565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508151620000e490600490602085019062000114565b508051620000fa90600590602084019062000114565b50506006805460ff1916601217905550620001b0565b3390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200015757805160ff191683800117855562000187565b8280016001018555821562000187579182015b82811115620001875782518255916020019190600101906200016a565b506200019592915062000199565b5090565b5b808211156200019557600081556001016200019a565b61182280620001c06000396000f3fe608060405234801561001057600080fd5b506004361061018e5760003560e01c806370a08231116100de578063a457c2d711610097578063c9ea4f9011610071578063c9ea4f90146104ba578063dd62ed3e146104e0578063e9a017841461050e578063f2fde38b1461052b5761018e565b8063a457c2d714610436578063a9059cbb14610462578063bfdc33a81461048e5761018e565b806370a08231146103b7578063715018a6146103dd578063893d20e8146103e55780638da5cb5b1461040957806395d89b4114610411578063a0712d68146104195761018e565b806323b872dd1161014b578063355274ea11610125578063355274ea1461034f578063395093511461035757806340c10f191461038357806352a44eef146103af5761018e565b806323b872dd146102d55780632ce6bd031461030b578063313ce567146103315761018e565b806306fdde0314610193578063095ea7b31461021057806310b1a5781461025057806318160ddd14610288578063192a1fb1146102905780631b33c2d0146102b6575b600080fd5b61019b610551565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101d55781810151838201526020016101bd565b50505050905090810190601f1680156102025780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61023c6004803603604081101561022657600080fd5b506001600160a01b0381351690602001356105e7565b604080519115158252519081900360200190f35b6102766004803603602081101561026657600080fd5b50356001600160a01b0316610605565b60408051918252519081900360200190f35b610276610624565b610276600480360360208110156102a657600080fd5b50356001600160a01b031661062a565b6102d3600480360360208110156102cc57600080fd5b5035610645565b005b61023c600480360360608110156102eb57600080fd5b506001600160a01b038135811691602081013590911690604001356106f9565b6102766004803603602081101561032157600080fd5b50356001600160a01b0316610780565b61033961080f565b6040805160ff9092168252519081900360200190f35b610276610818565b61023c6004803603604081101561036d57600080fd5b506001600160a01b03813516906020013561081e565b6102d36004803603604081101561039957600080fd5b506001600160a01b03813516906020013561086c565b6102d361092e565b610276600480360360208110156103cd57600080fd5b50356001600160a01b0316610940565b6102d361095b565b6103ed6109fd565b604080516001600160a01b039092168252519081900360200190f35b6103ed610a0c565b61019b610a1b565b61023c6004803603602081101561042f57600080fd5b5035610a7c565b61023c6004803603604081101561044c57600080fd5b506001600160a01b038135169060200135610aef565b61023c6004803603604081101561047857600080fd5b506001600160a01b038135169060200135610b57565b61023c600480360360408110156104a457600080fd5b506001600160a01b038135169060200135610b6b565b610276600480360360208110156104d057600080fd5b50356001600160a01b0316610c25565b610276600480360360408110156104f657600080fd5b506001600160a01b0381358116916020013516610c40565b6102d36004803603602081101561052457600080fd5b5035610c6b565b6102d36004803603602081101561054157600080fd5b50356001600160a01b0316610cc8565b60048054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105dd5780601f106105b2576101008083540402835291602001916105dd565b820191906000526020600020905b8154815290600101906020018083116105c057829003601f168201915b5050505050905090565b60006105fb6105f4610dc0565b8484610dc4565b5060015b92915050565b6001600160a01b0381166000908152600960205260409020545b919050565b60035490565b6001600160a01b03166000908152600b602052604090205490565b61064d610dc0565b6000546001600160a01b0390811691161461069d576040805162461bcd60e51b8152602060048201819052602482015260008051602061173d833981519152604482015290519081900360640190fd5b6127108111156106f4576040805162461bcd60e51b815260206004820152601960248201527f6c6f636b3a20696e76616c696420726577617264206c6f636b00000000000000604482015290519081900360640190fd5b600755565b6000610706848484610eb0565b61077684610712610dc0565b610771856040518060600160405280602881526020016116f4602891396001600160a01b038a16600090815260026020526040812090610750610dc0565b6001600160a01b031681526020810191909152604001600020549190611002565b610dc4565b5060019392505050565b6001600160a01b0381166000908152600c60205260408120544311156107bf57506001600160a01b03811660009081526009602052604090205461061f565b6001600160a01b0382166000908152600a6020908152604080832054600b90925290912054610808916127109161080291906107fc904390611099565b906110e2565b9061113b565b905061061f565b60065460ff1690565b600d5490565b60006105fb61082b610dc0565b84610771856002600061083c610dc0565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549061117d565b610874610dc0565b6000546001600160a01b039081169116146108c4576040805162461bcd60e51b8152602060048201819052602482015260008051602061173d833981519152604482015290519081900360640190fd5b6108cc610818565b6108de826108d8610624565b9061117d565b1115610920576040805162461bcd60e51b815260206004820152600c60248201526b18d85c08195e18d95959195960a21b604482015290519081900360640190fd5b61092a82826111d7565b5050565b61093e610939610dc0565b6112bd565b565b6001600160a01b031660009081526001602052604090205490565b610963610dc0565b6000546001600160a01b039081169116146109b3576040805162461bcd60e51b8152602060048201819052602482015260008051602061173d833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610a07610a0c565b905090565b6000546001600160a01b031690565b60058054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105dd5780601f106105b2576101008083540402835291602001916105dd565b6000610a86610dc0565b6000546001600160a01b03908116911614610ad6576040805162461bcd60e51b8152602060048201819052602482015260008051602061173d833981519152604482015290519081900360640190fd5b610ae7610ae1610dc0565b836111d7565b506001919050565b60006105fb610afc610dc0565b84610771856040518060600160405280602581526020016117a66025913960026000610b26610dc0565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190611002565b60006105fb610b64610dc0565b8484610eb0565b6000610b75610dc0565b6000546001600160a01b03908116911614610bc5576040805162461bcd60e51b8152602060048201819052602482015260008051602061173d833981519152604482015290519081900360640190fd5b60008211610c13576040805162461bcd60e51b8152602060048201526016602482015275185b5bdd5b9d0e881a5b9d985b1a5908185b5bdd5b9d60521b604482015290519081900360640190fd5b6105fb610c1e610dc0565b84846113d9565b6001600160a01b03166000908152600c602052604090205490565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b610c73610dc0565b6000546001600160a01b03908116911614610cc3576040805162461bcd60e51b8152602060048201819052602482015260008051602061173d833981519152604482015290519081900360640190fd5b600855565b610cd0610dc0565b6000546001600160a01b03908116911614610d20576040805162461bcd60e51b8152602060048201819052602482015260008051602061173d833981519152604482015290519081900360640190fd5b6001600160a01b038116610d655760405162461bcd60e51b81526004018080602001828103825260268152602001806116ce6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b6001600160a01b038316610e095760405162461bcd60e51b81526004018080602001828103825260248152602001806116aa6024913960400191505060405180910390fd5b6001600160a01b038216610e4e5760405162461bcd60e51b81526004018080602001828103825260228152602001806117cb6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610ef55760405162461bcd60e51b81526004018080602001828103825260258152602001806116856025913960400191505060405180910390fd5b6001600160a01b038216610f3a5760405162461bcd60e51b81526004018080602001828103825260238152602001806117836023913960400191505060405180910390fd5b610f778160405180606001604052806026815260200161175d602691396001600160a01b0386166000908152600160205260409020549190611002565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610fa6908261117d565b6001600160a01b0380841660008181526001602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600081848411156110915760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561105657818101518382015260200161103e565b50505050905090810190601f1680156110835780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60006110db83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611002565b9392505050565b6000826110f1575060006105ff565b828202828482816110fe57fe5b04146110db5760405162461bcd60e51b815260040180806020018281038252602181526020018061171c6021913960400191505060405180910390fd5b60006110db83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061161f565b6000828201838110156110db576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6001600160a01b038216611232576040805162461bcd60e51b815260206004820152601f60248201527f42455032303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b60035461123f908261117d565b6003556001600160a01b038216600090815260016020526040902054611265908261117d565b6001600160a01b03831660008181526001602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b60006112c882610780565b9050801561092a576001600160a01b0382166000908152600960205260408120546112f39083611099565b6001600160a01b0384166000908152600c6020526040902054909150431115611370576001600160a01b0383166000908152600960209081526040808320546001909252909120546113449161117d565b6001600160a01b03841660009081526001602090815260408083209390935560099052908120556113bb565b6001600160a01b038316600090815260016020526040902054611393908361117d565b6001600160a01b03841660009081526001602090815260408083209390935560099052208190555b50506001600160a01b03166000908152600b60205260409020439055565b6001600160a01b03831661141e5760405162461bcd60e51b81526004018080602001828103825260258152602001806116856025913960400191505060405180910390fd5b6001600160a01b0382166114635760405162461bcd60e51b81526004018080602001828103825260238152602001806117836023913960400191505060405180910390fd5b61146c826112bd565b6000611489612710610802600754856110e290919063ffffffff16565b905060006114b28260405180606001604052806026815260200161175d60269139859190611002565b90506114f18360405180606001604052806026815260200161175d602691396001600160a01b0388166000908152600160205260409020549190611002565b6001600160a01b038087166000908152600160205260408082209390935590861681522054611520908261117d565b6001600160a01b03851660009081526001602090815260408083209390935560099052205461154f908361117d565b6001600160a01b038516600090815260096020908152604080832093909355600b9052204390819055600854611585919061117d565b6001600160a01b0385166000908152600c60209081526040808320939093556008546009909152919020546115c19190610802906127106110e2565b6001600160a01b038086166000818152600a602090815260409182902094909455805187815290519193928916927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a35050505050565b6000818361166e5760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561105657818101518382015260200161103e565b50600083858161167a57fe5b049594505050505056fe42455032303a207472616e736665722066726f6d20746865207a65726f206164647265737342455032303a20617070726f76652066726f6d20746865207a65726f20616464726573734f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737342455032303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657242455032303a207472616e7366657220616d6f756e7420657863656564732062616c616e636542455032303a207472616e7366657220746f20746865207a65726f206164647265737342455032303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f42455032303a20617070726f766520746f20746865207a65726f2061646472657373a2646970667358221220d83feba9c5bdebe200d9b6f9a049b36b563101300ff0c66acf90202c887e093964736f6c634300060c0033

Deployed ByteCode Sourcemap

24039:475:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12515:92;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14094:161;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;14094:161:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;23603:123;;;;;;;;;;;;;;;;-1:-1:-1;23603:123:0;-1:-1:-1;;;;;23603:123:0;;:::i;:::-;;;;;;;;;;;;;;;;13083:100;;;:::i;23738:124::-;;;;;;;;;;;;;;;;-1:-1:-1;23738:124:0;-1:-1:-1;;;;;23738:124:0;;:::i;20678:153::-;;;;;;;;;;;;;;;;-1:-1:-1;20678:153:0;;:::i;:::-;;14726:364;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;14726:364:0;;;;;;;;;;;;;;;;;:::i;23271:320::-;;;;;;;;;;;;;;;;-1:-1:-1;23271:320:0;-1:-1:-1;;;;;23271:320:0;;:::i;12927:92::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;24161:75;;;:::i;15498:210::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;15498:210:0;;;;;;;;:::i;24341:170::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;24341:170:0;;;;;;;;:::i;22487:83::-;;;:::i;13245:119::-;;;;;;;;;;;;;;;;-1:-1:-1;13245:119:0;-1:-1:-1;;;;;13245:119:0;;:::i;7370:148::-;;;:::i;12351:94::-;;;:::i;:::-;;;;-1:-1:-1;;;;;12351:94:0;;;;;;;;;;;;;;6728:79;;;:::i;12726:96::-;;;:::i;16689:130::-;;;;;;;;;;;;;;;;-1:-1:-1;16689:130:0;;:::i;16210:261::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;16210:261:0;;;;;;;;:::i;13576:167::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;13576:167:0;;;;;;;;:::i;21095:242::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;21095:242:0;;;;;;;;:::i;23874:122::-;;;;;;;;;;;;;;;;-1:-1:-1;23874:122:0;-1:-1:-1;;;;;23874:122:0;;:::i;13805:143::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;13805:143:0;;;;;;;;;;:::i;20900:131::-;;;;;;;;;;;;;;;;-1:-1:-1;20900:131:0;;:::i;7673:244::-;;;;;;;;;;;;;;;;-1:-1:-1;7673:244:0;-1:-1:-1;;;;;7673:244:0;;:::i;12515:92::-;12594:5;12587:12;;;;;;;;-1:-1:-1;;12587:12:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12561:13;;12587:12;;12594:5;;12587:12;;12594:5;12587:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12515:92;:::o;14094:161::-;14169:4;14186:39;14195:12;:10;:12::i;:::-;14209:7;14218:6;14186:8;:39::i;:::-;-1:-1:-1;14243:4:0;14094:161;;;;;:::o;23603:123::-;-1:-1:-1;;;;;23696:22:0;;23669:7;23696:22;;;:13;:22;;;;;;23603:123;;;;:::o;13083:100::-;13163:12;;13083:100;:::o;23738:124::-;-1:-1:-1;;;;;23830:24:0;23803:7;23830:24;;;:15;:24;;;;;;;23738:124::o;20678:153::-;6950:12;:10;:12::i;:::-;6940:6;;-1:-1:-1;;;;;6940:6:0;;;:22;;;6932:67;;;;;-1:-1:-1;;;6932:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;6932:67:0;;;;;;;;;;;;;;;20759:5:::1;20751:4;:13;;20743:51;;;::::0;;-1:-1:-1;;;20743:51:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;20805:11;:18:::0;20678:153::o;14726:364::-;14825:4;14842:36;14852:6;14860:9;14871:6;14842:9;:36::i;:::-;14889:171;14912:6;14933:12;:10;:12::i;:::-;14960:89;14998:6;14960:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;14960:19:0;;;;;;:11;:19;;;;;;14980:12;:10;:12::i;:::-;-1:-1:-1;;;;;14960:33:0;;;;;;;;;;;;-1:-1:-1;14960:33:0;;;:89;:37;:89::i;:::-;14889:8;:171::i;:::-;-1:-1:-1;15078:4:0;14726:364;;;;;:::o;23271:320::-;-1:-1:-1;;;;;23378:23:0;;23339:7;23378:23;;;:14;:23;;;;;;23363:12;:38;23359:225;;;-1:-1:-1;;;;;;23425:22:0;;;;;;:13;:22;;;;;;23418:29;;23359:225;-1:-1:-1;;;;;23536:24:0;;;;;;:15;:24;;;;;;;;;23505:15;:24;;;;;;;23487:85;;23566:5;;23487:74;;23536:24;23488:42;;:12;;:16;:42::i;:::-;23487:48;;:74::i;:::-;:78;;:85::i;:::-;23480:92;;;;12927;13002:9;;;;12927:92;:::o;24161:75::-;24224:4;;24161:75;:::o;15498:210::-;15578:4;15595:83;15604:12;:10;:12::i;:::-;15618:7;15627:50;15666:10;15627:11;:25;15639:12;:10;:12::i;:::-;-1:-1:-1;;;;;15627:25:0;;;;;;;;;;;;;;;;;-1:-1:-1;15627:25:0;;;:34;;;;;;;;;;;:38;:50::i;24341:170::-;6950:12;:10;:12::i;:::-;6940:6;;-1:-1:-1;;;;;6940:6:0;;;:22;;;6932:67;;;;;-1:-1:-1;;;6932:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;6932:67:0;;;;;;;;;;;;;;;24451:5:::1;:3;:5::i;:::-;24421:26;24439:7;24421:13;:11;:13::i;:::-;:17:::0;::::1;:26::i;:::-;:35;;24413:60;;;::::0;;-1:-1:-1;;;24413:60:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;24413:60:0;;;;;;;;;;;;;::::1;;24484:19;24490:3;24495:7;24484:5;:19::i;:::-;24341:170:::0;;:::o;22487:83::-;22532:30;22549:12;:10;:12::i;:::-;22532:16;:30::i;:::-;22487:83::o;13245:119::-;-1:-1:-1;;;;;13338:18:0;13311:7;13338:18;;;:9;:18;;;;;;;13245:119::o;7370:148::-;6950:12;:10;:12::i;:::-;6940:6;;-1:-1:-1;;;;;6940:6:0;;;:22;;;6932:67;;;;;-1:-1:-1;;;6932:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;6932:67:0;;;;;;;;;;;;;;;7477:1:::1;7461:6:::0;;7440:40:::1;::::0;-1:-1:-1;;;;;7461:6:0;;::::1;::::0;7440:40:::1;::::0;7477:1;;7440:40:::1;7508:1;7491:19:::0;;-1:-1:-1;;;;;;7491:19:0::1;::::0;;7370:148::o;12351:94::-;12403:7;12430;:5;:7::i;:::-;12423:14;;12351:94;:::o;6728:79::-;6766:7;6793:6;-1:-1:-1;;;;;6793:6:0;6728:79;:::o;12726:96::-;12807:7;12800:14;;;;;;;;-1:-1:-1;;12800:14:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12774:13;;12800:14;;12807:7;;12800:14;;12807:7;12800:14;;;;;;;;;;;;;;;;;;;;;;;;16689:130;16745:4;6950:12;:10;:12::i;:::-;6940:6;;-1:-1:-1;;;;;6940:6:0;;;:22;;;6932:67;;;;;-1:-1:-1;;;6932:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;6932:67:0;;;;;;;;;;;;;;;16762:27:::1;16768:12;:10;:12::i;:::-;16782:6;16762:5;:27::i;:::-;-1:-1:-1::0;16807:4:0::1;16689:130:::0;;;:::o;16210:261::-;16295:4;16312:129;16321:12;:10;:12::i;:::-;16335:7;16344:96;16383:15;16344:96;;;;;;;;;;;;;;;;;:11;:25;16356:12;:10;:12::i;:::-;-1:-1:-1;;;;;16344:25:0;;;;;;;;;;;;;;;;;-1:-1:-1;16344:25:0;;;:34;;;;;;;;;;;:96;:38;:96::i;13576:167::-;13654:4;13671:42;13681:12;:10;:12::i;:::-;13695:9;13706:6;13671:9;:42::i;21095:242::-;21182:4;6950:12;:10;:12::i;:::-;6940:6;;-1:-1:-1;;;;;6940:6:0;;;:22;;;6932:67;;;;;-1:-1:-1;;;6932:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;6932:67:0;;;;;;;;;;;;;;;21216:1:::1;21207:6;:10;21199:45;;;::::0;;-1:-1:-1;;;21199:45:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;21199:45:0;;;;;;;;;;;;;::::1;;21257:50;21275:12;:10;:12::i;:::-;21289:9;21300:6;21257:17;:50::i;23874:122::-:0;-1:-1:-1;;;;;23965:23:0;23938:7;23965:23;;;:14;:23;;;;;;;23874:122::o;13805:143::-;-1:-1:-1;;;;;13913:18:0;;;13886:7;13913:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;13805:143::o;20900:131::-;6950:12;:10;:12::i;:::-;6940:6;;-1:-1:-1;;;;;6940:6:0;;;:22;;;6932:67;;;;;-1:-1:-1;;;6932:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;6932:67:0;;;;;;;;;;;;;;;20985:18:::1;:38:::0;20900:131::o;7673:244::-;6950:12;:10;:12::i;:::-;6940:6;;-1:-1:-1;;;;;6940:6:0;;;:22;;;6932:67;;;;;-1:-1:-1;;;6932:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;6932:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;7762:22:0;::::1;7754:73;;;;-1:-1:-1::0;;;7754:73:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7864:6;::::0;;7843:38:::1;::::0;-1:-1:-1;;;;;7843:38:0;;::::1;::::0;7864:6;::::1;::::0;7843:38:::1;::::0;::::1;7892:6;:17:::0;;-1:-1:-1;;;;;;7892:17:0::1;-1:-1:-1::0;;;;;7892:17:0;;;::::1;::::0;;;::::1;::::0;;7673:244::o;5357:106::-;5445:10;5357:106;:::o;19490:339::-;-1:-1:-1;;;;;19585:19:0;;19577:68;;;;-1:-1:-1;;;19577:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;19664:21:0;;19656:68;;;;-1:-1:-1;;;19656:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;19737:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;19789:32;;;;;;;;;;;;;;;;;19490:339;;;:::o;17309:472::-;-1:-1:-1;;;;;17408:20:0;;17400:70;;;;-1:-1:-1;;;17400:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17489:23:0;;17481:71;;;;-1:-1:-1;;;17481:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17585;17607:6;17585:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17585:17:0;;;;;;:9;:17;;;;;;;:71;:21;:71::i;:::-;-1:-1:-1;;;;;17565:17:0;;;;;;;:9;:17;;;;;;:91;;;;17690:20;;;;;;;:32;;17715:6;17690:24;:32::i;:::-;-1:-1:-1;;;;;17667:20:0;;;;;;;:9;:20;;;;;;;;;:55;;;;17738:35;;;;;;;17667:20;;17738:35;;;;;;;;;;;;;17309:472;;;:::o;1257:192::-;1343:7;1379:12;1371:6;;;;1363:29;;;;-1:-1:-1;;;1363:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1415:5:0;;;1257:192::o;818:136::-;876:7;903:43;907:1;910;903:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;896:50;818:136;-1:-1:-1;;;818:136:0:o;1708:471::-;1766:7;2011:6;2007:47;;-1:-1:-1;2041:1:0;2034:8;;2007:47;2078:5;;;2082:1;2078;:5;:1;2102:5;;;;;:10;2094:56;;;;-1:-1:-1;;;2094:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2655:132;2713:7;2740:39;2744:1;2747;2740:39;;;;;;;;;;;;;;;;;:3;:39::i;354:181::-;412:7;444:5;;;468:6;;;;460:46;;;;;-1:-1:-1;;;460:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;18062:308;-1:-1:-1;;;;;18138:21:0;;18130:65;;;;;-1:-1:-1;;;18130:65:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;18223:12;;:24;;18240:6;18223:16;:24::i;:::-;18208:12;:39;-1:-1:-1;;;;;18279:18:0;;;;;;:9;:18;;;;;;:30;;18302:6;18279:22;:30::i;:::-;-1:-1:-1;;;;;18258:18:0;;;;;;:9;:18;;;;;;;;:51;;;;18325:37;;;;;;;18258:18;;;;18325:37;;;;;;;;;;18062:308;;:::o;22582:677::-;22645:15;22663:29;22684:7;22663:20;:29::i;:::-;22645:47;-1:-1:-1;22707:11:0;;22703:549;;-1:-1:-1;;;;;22752:22:0;;22735:14;22752:22;;;:13;:22;;;;;;:35;;22779:7;22752:26;:35::i;:::-;-1:-1:-1;;;;;22806:23:0;;;;;;:14;:23;;;;;;22735:52;;-1:-1:-1;22832:12:0;-1:-1:-1;22802:334:0;;;-1:-1:-1;;;;;22909:22:0;;;;;;:13;:22;;;;;;;;;22886:9;:18;;;;;;;:46;;:22;:46::i;:::-;-1:-1:-1;;;;;22865:18:0;;;;;;:9;:18;;;;;;;;:67;;;;22951:13;:22;;;;;:26;22802:334;;;-1:-1:-1;;;;;23039:18:0;;;;;;:9;:18;;;;;;:31;;23062:7;23039:22;:31::i;:::-;-1:-1:-1;;;;;23018:18:0;;;;;;:9;:18;;;;;;;;:52;;;;23089:13;:22;;;:31;;;22802:334;-1:-1:-1;;;;;;;23201:24:0;;;;;:15;:24;;;;;23228:12;23201:39;;22582:677::o;21345:1130::-;-1:-1:-1;;;;;21452:20:0;;21444:70;;;;-1:-1:-1;;;21444:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;21533:23:0;;21525:71;;;;-1:-1:-1;;;21525:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21650:27;21667:9;21650:16;:27::i;:::-;21698:19;21720:34;21748:5;21720:23;21731:11;;21720:6;:10;;:23;;;;:::i;:34::-;21698:56;;21772:15;21790:65;21801:11;21790:65;;;;;;;;;;;;;;;;;:6;;:65;:10;:65::i;:::-;21772:83;;21895:71;21917:6;21895:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;21895:17:0;;;;;;:9;:17;;;;;;;:71;:21;:71::i;:::-;-1:-1:-1;;;;;21875:17:0;;;;;;;:9;:17;;;;;;:91;;;;22000:20;;;;;;;:33;;22025:7;22000:24;:33::i;:::-;-1:-1:-1;;;;;21977:20:0;;;;;;:9;:20;;;;;;;;:56;;;;22113:13;:24;;;;:41;;22142:11;22113:28;:41::i;:::-;-1:-1:-1;;;;;22086:24:0;;;;;;:13;:24;;;;;;;;:68;;;;22165:15;:26;;;22194:12;22165:41;;;;22262:18;;22245:36;;22194:12;22245:16;:36::i;:::-;-1:-1:-1;;;;;22217:25:0;;;;;;:14;:25;;;;;;;;:64;;;;22387:18;;22347:13;:24;;;;;;;:59;;22387:18;22347:35;;22376:5;22347:28;:35::i;:59::-;-1:-1:-1;;;;;22318:26:0;;;;;;;:15;:26;;;;;;;;;:88;;;;22432:35;;;;;;;22318:26;;22432:35;;;;;;;;;;;;;21345:1130;;;;;:::o;3283:278::-;3369:7;3404:12;3397:5;3389:28;;;;-1:-1:-1;;;3389:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3428:9;3444:1;3440;:5;;;;;;;3283:278;-1:-1:-1;;;;;3283:278:0:o

Swarm Source

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