ETH Price: $2,432.77 (-1.71%)

Contract

0x249cA82617eC3DfB2589c4c17ab7EC9765350a18
 
Transaction Hash
Method
Block
From
To
Transfer209200122024-10-08 9:38:231 hr ago1728380303IN
Bitcoin.com: VERSE Token
0 ETH0.0004738213.80159218
Transfer209197152024-10-08 8:38:352 hrs ago1728376715IN
Bitcoin.com: VERSE Token
0 ETH0.0006235713.37607604
Transfer209195952024-10-08 8:14:353 hrs ago1728375275IN
Bitcoin.com: VERSE Token
0 ETH0.0006063513
Transfer209155552024-10-07 18:44:1116 hrs ago1728326651IN
Bitcoin.com: VERSE Token
0 ETH0.0034428666.97259482
Transfer209140732024-10-07 13:46:2321 hrs ago1728308783IN
Bitcoin.com: VERSE Token
0 ETH0.0018267635.52708983
Transfer209127032024-10-07 9:11:4726 hrs ago1728292307IN
Bitcoin.com: VERSE Token
0 ETH0.000274748
Transfer209118242024-10-07 6:15:2329 hrs ago1728281723IN
Bitcoin.com: VERSE Token
0 ETH0.000296036.35017561
Approve209106252024-10-07 2:14:3533 hrs ago1728267275IN
Bitcoin.com: VERSE Token
0 ETH0.0005313211.42191119
Transfer209078882024-10-06 17:05:1142 hrs ago1728234311IN
Bitcoin.com: VERSE Token
0 ETH0.0005091810.91673564
Transfer209069792024-10-06 14:02:3545 hrs ago1728223355IN
Bitcoin.com: VERSE Token
0 ETH0.0006171712
Transfer209065332024-10-06 12:33:1146 hrs ago1728217991IN
Bitcoin.com: VERSE Token
0 ETH0.0005581710.85041933
Transfer209058992024-10-06 10:25:232 days ago1728210323IN
Bitcoin.com: VERSE Token
0 ETH0.000213948
Approve209038812024-10-06 3:39:592 days ago1728185999IN
Bitcoin.com: VERSE Token
0 ETH0.000281896.05997177
Approve209032442024-10-06 1:31:592 days ago1728178319IN
Bitcoin.com: VERSE Token
0 ETH0.0004886610.56476927
Approve209023512024-10-05 22:33:232 days ago1728167603IN
Bitcoin.com: VERSE Token
0 ETH0.000262325.6713047
Approve209023402024-10-05 22:31:112 days ago1728167471IN
Bitcoin.com: VERSE Token
0 ETH0.000355517.64257189
Transfer209016752024-10-05 20:17:592 days ago1728159479IN
Bitcoin.com: VERSE Token
0 ETH0.0001495.04780845
Transfer209014152024-10-05 19:25:352 days ago1728156335IN
Bitcoin.com: VERSE Token
0 ETH0.0006636912.90460664
Transfer209005932024-10-05 16:40:592 days ago1728146459IN
Bitcoin.com: VERSE Token
0 ETH0.000294838.58809643
Transfer209003862024-10-05 15:59:352 days ago1728143975IN
Bitcoin.com: VERSE Token
0 ETH0.000360017
Transfer208999962024-10-05 14:40:472 days ago1728139247IN
Bitcoin.com: VERSE Token
0 ETH0.000447978.70812696
Transfer208969422024-10-05 4:28:113 days ago1728102491IN
Bitcoin.com: VERSE Token
0 ETH0.000150875.10701072
Approve208964182024-10-05 2:43:113 days ago1728096191IN
Bitcoin.com: VERSE Token
0 ETH0.000174493.77249552
Transfer208954852024-10-04 23:35:353 days ago1728084935IN
Bitcoin.com: VERSE Token
0 ETH0.000176243.42600341
Transfer208953262024-10-04 23:03:353 days ago1728083015IN
Bitcoin.com: VERSE Token
0 ETH0.000268725.76283874
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block From To
161292402022-12-07 0:09:11671 days ago1670371751
Bitcoin.com: VERSE Token
 Contract Creation0 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
VerseToken

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity Multiple files format)

File 1 of 4: VerseToken.sol
// SPDX-License-Identifier: --BCOM--

pragma solidity =0.8.17;

import "./VerseClaimer.sol";

contract VerseToken {

    string public constant name = "Verse";
    string public constant symbol = "VERSE";
    uint8 public constant decimals = 18;

    VerseClaimer public immutable claimer;

    address constant ZERO_ADDRESS = address(0);
    uint256 constant UINT256_MAX = type(uint256).max;

    uint256 public totalSupply;

    mapping(address => uint256) public balanceOf;
    mapping(address => mapping(address => uint256)) public allowance;
    mapping(address => uint256) public nonces;

    bytes32 public immutable DOMAIN_SEPARATOR;
    bytes32 public constant PERMIT_TYPEHASH = keccak256(
        "Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)"
    );

    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );

    event Transfer(
        address indexed from,
        address indexed to,
        uint256 value
    );

    constructor(
        uint256 _initialSupply,
        uint256 _minimumTimeFrame,
        bytes32 _merkleRoot
    ) {
        DOMAIN_SEPARATOR = keccak256(
            abi.encode(
                keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)"),
                keccak256(bytes(name)),
                keccak256(bytes("1")),
                block.chainid,
                address(this)
            )
        );

        claimer = new VerseClaimer(
            _merkleRoot,
            _minimumTimeFrame,
            address(this)
        );

        _mint(
            address(claimer),
            _initialSupply
        );
    }

    function _mint(
        address _to,
        uint256 _value
    )
        internal
    {
        totalSupply =
        totalSupply + _value;

        unchecked {
            balanceOf[_to] =
            balanceOf[_to] + _value;
        }

        emit Transfer(
            ZERO_ADDRESS,
            _to,
            _value
        );
    }

    function burn(
        uint256 _value
    )
        external
    {
        _burn(
            msg.sender,
            _value
        );
    }

    function _burn(
        address _from,
        uint256 _value
    )
        internal
    {
        unchecked {
            totalSupply =
            totalSupply - _value;
        }

        balanceOf[_from] =
        balanceOf[_from] - _value;

        emit Transfer(
            _from,
            ZERO_ADDRESS,
            _value
        );
    }

    function _approve(
        address _owner,
        address _spender,
        uint256 _value
    )
        private
    {
        allowance[_owner][_spender] = _value;

        emit Approval(
            _owner,
            _spender,
            _value
        );
    }

    function _transfer(
        address _from,
        address _to,
        uint256 _value
    )
        private
    {
        balanceOf[_from] =
        balanceOf[_from] - _value;

        unchecked {
            balanceOf[_to] =
            balanceOf[_to] + _value;
        }

        emit Transfer(
            _from,
            _to,
            _value
        );
    }

    function approve(
        address _spender,
        uint256 _value
    )
        external
        returns (bool)
    {
        _approve(
            msg.sender,
            _spender,
            _value
        );

        return true;
    }

    function increaseAllowance(
        address _spender,
        uint256 _addedValue
    )
        external
        returns (bool)
    {
        _approve(
            msg.sender,
            _spender,
            allowance[msg.sender][_spender] + _addedValue
        );

        return true;
    }

    function decreaseAllowance(
        address _spender,
        uint256 _subtractedValue
    )
        external
        returns (bool)
    {
        _approve(
            msg.sender,
            _spender,
            allowance[msg.sender][_spender] - _subtractedValue
        );

        return true;
    }

    function transfer(
        address _to,
        uint256 _value
    )
        external
        returns (bool)
    {
        _transfer(
            msg.sender,
            _to,
            _value
        );

        return true;
    }

    function transferFrom(
        address _from,
        address _to,
        uint256 _value
    )
        external
        returns (bool)
    {
        if (allowance[_from][msg.sender] != UINT256_MAX) {
            allowance[_from][msg.sender] -= _value;
        }

        _transfer(
            _from,
            _to,
            _value
        );

        return true;
    }

    function permit(
        address _owner,
        address _spender,
        uint256 _value,
        uint256 _deadline,
        uint8 _v,
        bytes32 _r,
        bytes32 _s
    )
        external
    {
        require(
            _deadline >= block.timestamp,
            "VerseToken: PERMIT_CALL_EXPIRED"
        );

        bytes32 digest = keccak256(
            abi.encodePacked(
                "\x19\x01",
                DOMAIN_SEPARATOR,
                keccak256(
                    abi.encode(
                        PERMIT_TYPEHASH,
                        _owner,
                        _spender,
                        _value,
                        nonces[_owner]++,
                        _deadline
                    )
                )
            )
        );

        if (uint256(_s) > 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0) {
            revert("VerseToken: INVALID_SIGNATURE");
        }

        address recoveredAddress = ecrecover(
            digest,
            _v,
            _r,
            _s
        );

        require(
            recoveredAddress != ZERO_ADDRESS &&
            recoveredAddress == _owner,
            "VerseToken: INVALID_SIGNATURE"
        );

        _approve(
            _owner,
            _spender,
            _value
        );
    }
}

File 2 of 4: MerkleProof.sol
// SPDX-License-Identifier: --BCOM--

pragma solidity =0.8.17;

library MerkleProof {

    function verify(
        bytes32[] memory proof,
        bytes32 root,
        bytes32 leaf
    )
        internal
        pure
        returns (bool)
    {
        bytes32 computedHash = leaf;

        for (uint256 i = 0; i < proof.length; i++) {

            bytes32 proofElement = proof[i];

            computedHash = computedHash <= proofElement
                ? keccak256(abi.encodePacked(computedHash, proofElement))
                : keccak256(abi.encodePacked(proofElement, computedHash));
        }

        return computedHash == root;
    }
}

File 3 of 4: VerseClaimer.sol
// SPDX-License-Identifier: --BCOM--

pragma solidity =0.8.17;

import "./MerkleProof.sol";
import "./VerseHelper.sol";

contract VerseClaimer is VerseHelper {

    bytes32 public immutable merkleRoot;
    uint256 public immutable createTime;

    uint256 immutable minimumTimeFrame;

    struct KeeperInfo {
        uint256 keeperRate;
        uint256 keeperTill;
        uint256 keeperInstant;
        uint256 keeperPayouts;
    }

    mapping(address => KeeperInfo) public keeperList;

    constructor(
        bytes32 _merkleRoot,
        uint256 _minimumTimeFrame,
        address _verseTokenAddress
    )
        VerseHelper(_verseTokenAddress)
    {
        require(
            _minimumTimeFrame > 0,
            "VerseClaimer: INVALID_TIMEFRAME"
        );

        require(
            _merkleRoot > 0,
            "VerseClaimer: INVALID_MERKLE_ROOT"
        );

        createTime = getNow();
        merkleRoot = _merkleRoot;
        minimumTimeFrame = _minimumTimeFrame;
    }

    function enrollRecipient(
        uint256 _index,
        address _recipient,
        uint256 _tokensLocked,
        uint256 _tokensOpened,
        uint256 _timeFrame,
        bytes32[] calldata _merkleProof
    )
        external
    {
        _enrollRecipient(
            _index,
            _recipient,
            _tokensLocked,
            _tokensOpened,
            _timeFrame,
            _merkleProof
        );
    }

    function enrollRecipientBulk(
        uint256 _index,
        address[] calldata _recipient,
        uint256[] calldata _tokensLocked,
        uint256[] calldata _tokensOpened,
        uint256[] calldata _timeFrame,
        bytes32[][] calldata _merkleProof
    )
        external
    {
        require(
            _recipient.length < 10,
            "VerseClaimer: TOO_MANY"
        );

        for (uint256 i = 0; i < _recipient.length; i++) {
            _enrollRecipient(
                _index + i,
                _recipient[i],
                _tokensLocked[i],
                _tokensOpened[i],
                _timeFrame[i],
                _merkleProof[i]
            );
        }
    }

    function _enrollRecipient(
        uint256 _index,
        address _recipient,
        uint256 _tokensLocked,
        uint256 _tokensOpened,
        uint256 _timeFrame,
        bytes32[] memory _merkleProof
    )
        private
    {
        require(
            keeperList[_recipient].keeperTill == 0,
            "VerseClaimer: RECIPIENT_ALREADY_ENROLLED"
        );

        bytes32 node = keccak256(
            abi.encodePacked(
                _index,
                _recipient,
                _tokensLocked,
                _tokensOpened,
                _timeFrame
            )
        );

        require(
            MerkleProof.verify(
                _merkleProof,
                merkleRoot,
                node
            ),
            "VerseClaimer: INVALID_PROOF"
        );

        _allocateTokens(
            _recipient,
            _tokensLocked,
            _tokensOpened,
            _timeFrame
        );
    }

    function _allocateTokens(
        address _recipient,
        uint256 _tokensLocked,
        uint256 _tokensOpened,
        uint256 _timeFrame
    )
        private
    {
        require(
            _timeFrame >= minimumTimeFrame,
            "VerseClaimer: INVALID_TIME_FRAME"
        );

        totalRequired = totalRequired
            + _tokensOpened
            + _tokensLocked;

        keeperList[_recipient].keeperTill = createTime
            + _timeFrame;

        keeperList[_recipient].keeperRate = _tokensLocked
            / _timeFrame;

        keeperList[_recipient].keeperInstant = _tokensLocked
            % _timeFrame
            + _tokensOpened;

        _checkVerseBalance(
            totalRequired
        );

        emit recipientEnrolled(
            _recipient,
            _timeFrame,
            _tokensLocked,
            _tokensOpened
        );
    }

    function enrollAndScrape(
        uint256 _index,
        uint256 _tokensLocked,
        uint256 _tokensOpened,
        uint256 _timeFrame,
        bytes32[] calldata _merkleProof
    )
        external
    {
        _enrollRecipient(
            _index,
            msg.sender,
            _tokensLocked,
            _tokensOpened,
            _timeFrame,
            _merkleProof
        );

        _scrapeTokens(
            msg.sender
        );
    }

    function scrapeMyTokens()
        external
    {
        _scrapeTokens(
            msg.sender
        );
    }

    function _scrapeTokens(
        address _recipient
    )
        private
    {
        uint256 scrapeAmount = availableBalance(
            _recipient
        );

        keeperList[_recipient].keeperPayouts += scrapeAmount;

        _safeVerseScrape(
            _recipient,
            scrapeAmount
        );

        emit tokensScraped(
            _recipient,
            scrapeAmount,
            getNow()
        );
    }

    function availableBalance(
        address _recipient
    )
        public
        view
        returns (uint256 balance)
    {
        uint256 timeNow = getNow();
        uint256 timeMax = keeperList[_recipient].keeperTill;

        if (timeMax == 0) return 0;

        uint256 timePassed = timeNow > timeMax
            ? timeMax - createTime
            : timeNow - createTime;

        balance = keeperList[_recipient].keeperRate
            * timePassed
            + keeperList[_recipient].keeperInstant
            - keeperList[_recipient].keeperPayouts;
    }

    function lockedBalance(
        address _recipient
    )
        external
        view
        returns (uint256 balance)
    {
        uint256 timeNow = getNow();

        uint256 timeRemaining =
            keeperList[_recipient].keeperTill > timeNow ?
            keeperList[_recipient].keeperTill - timeNow : 0;

        balance = keeperList[_recipient].keeperRate
            * timeRemaining;
    }
}

File 4 of 4: VerseHelper.sol
// SPDX-License-Identifier: --BCOM--

pragma solidity =0.8.17;

contract VerseHelper {

    uint256 public totalRequired;
    address public immutable verseToken;

    event recipientEnrolled(
        address indexed recipient,
        uint256 timeFrame,
        uint256 tokensLocked,
        uint256 tokensOpened
    );

    event tokensScraped(
        address indexed scraper,
        uint256 scrapedAmount,
        uint256 timestamp
    );

    constructor(
        address _verseTokenAddress
    ) {
        if (_verseTokenAddress == address(0x0)) {
            revert("VerseHelper: INVALID_VERSE_TOKEN");
        }

        verseToken = _verseTokenAddress;
    }

    bytes4 private constant TRANSFER = bytes4(
        keccak256(
            bytes(
                "transfer(address,uint256)"
            )
        )
    );

    bytes4 private constant BALANCEOF = bytes4(
        keccak256(
            bytes(
                "balanceOf(address)"
            )
        )
    );

    function _safeVerseScrape(
        address _to,
        uint256 _scrapeAmount
    )
        internal
    {
        totalRequired -= _scrapeAmount;

        (bool success, bytes memory data) = verseToken.call(
            abi.encodeWithSelector(
                TRANSFER,
                _to,
                _scrapeAmount
            )
        );

        require(
            success && (
                abi.decode(
                    data, (bool)
                )
            ),
            "VerseHelper: TRANSFER_FAILED"
        );
    }

    function _checkVerseBalance(
        uint256 _required
    )
        internal
    {
        (bool success, bytes memory data) = verseToken.call(
            abi.encodeWithSelector(
                BALANCEOF,
                address(this)
            )
        );

        require(
            success && abi.decode(
                data, (uint256)
            ) >= _required,
            "VerseHelper: BALANCE_CHECK_FAILED"
        );
    }

    function getNow()
        public
        view
        returns (uint256 time)
    {
        time = block.timestamp;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"uint256","name":"_initialSupply","type":"uint256"},{"internalType":"uint256","name":"_minimumTimeFrame","type":"uint256"},{"internalType":"bytes32","name":"_merkleRoot","type":"bytes32"}],"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":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PERMIT_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimer","outputs":[{"internalType":"contract VerseClaimer","name":"","type":"address"}],"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":"_spender","type":"address"},{"internalType":"uint256","name":"_addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"},{"internalType":"uint256","name":"_deadline","type":"uint256"},{"internalType":"uint8","name":"_v","type":"uint8"},{"internalType":"bytes32","name":"_r","type":"bytes32"},{"internalType":"bytes32","name":"_s","type":"bytes32"}],"name":"permit","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":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

60c060405234801561001057600080fd5b50604051611f89380380611f8983398101604081905261002f916101e0565b6040805180820182526005815264566572736560d81b6020918201528151808301835260018152603160f81b9082015281517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f918101919091527f6407b9a2f7ca9789c9366042780be252d3b29744da8aab9d1558ccd820a82bce918101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c0016040516020818303038152906040528051906020012060a08181525050808230604051610112906101d3565b92835260208301919091526001600160a01b03166040820152606001604051809103906000f08015801561014a573d6000803e3d6000fd5b506001600160a01b03166080819052610163908461016b565b505050610235565b80600054610179919061020e565b60009081556001600160a01b038316808252600160209081526040808420805486019055518481529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b61128480610d0583390190565b6000806000606084860312156101f557600080fd5b8351925060208401519150604084015190509250925092565b8082018082111561022f57634e487b7160e01b600052601160045260246000fd5b92915050565b60805160a051610aa4610261600039600081816101dd01526104bd015260006102b60152610aa46000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806342966c68116100a2578063a457c2d711610071578063a457c2d71461028b578063a9059cbb1461029e578063d379be23146102b1578063d505accf146102f0578063dd62ed3e1461030357600080fd5b806342966c681461021257806370a08231146102275780637ecebe001461024757806395d89b411461026757600080fd5b806330adf81f116100de57806330adf81f14610197578063313ce567146101be5780633644e515146101d857806339509351146101ff57600080fd5b806306fdde0314610110578063095ea7b31461014a57806318160ddd1461016d57806323b872dd14610184575b600080fd5b61013460405180604001604052806005815260200164566572736560d81b81525081565b6040516101419190610868565b60405180910390f35b61015d6101583660046108d2565b61032e565b6040519015158152602001610141565b61017660005481565b604051908152602001610141565b61015d6101923660046108fc565b610345565b6101767f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b6101c6601281565b60405160ff9091168152602001610141565b6101767f000000000000000000000000000000000000000000000000000000000000000081565b61015d61020d3660046108d2565b6103bf565b610225610220366004610938565b6103fb565b005b610176610235366004610951565b60016020526000908152604090205481565b610176610255366004610951565b60036020526000908152604090205481565b61013460405180604001604052806005815260200164564552534560d81b81525081565b61015d6102993660046108d2565b610408565b61015d6102ac3660046108d2565b61043f565b6102d87f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610141565b6102256102fe366004610973565b61044c565b6101766103113660046109e6565b600260209081526000928352604080842090915290825290205481565b600061033b3384846106ff565b5060015b92915050565b6001600160a01b0383166000908152600260209081526040808320338452909152812054600019146103aa576001600160a01b0384166000908152600260209081526040808320338452909152812080548492906103a4908490610a2f565b90915550505b6103b5848484610761565b5060019392505050565b3360008181526002602090815260408083206001600160a01b0387168452909152812054909161033b9185906103f6908690610a42565b6106ff565b61040533826107e4565b50565b3360008181526002602090815260408083206001600160a01b0387168452909152812054909161033b9185906103f6908690610a2f565b600061033b338484610761565b428410156104a15760405162461bcd60e51b815260206004820152601f60248201527f5665727365546f6b656e3a205045524d49545f43414c4c5f455850495245440060448201526064015b60405180910390fd5b6001600160a01b038716600090815260036020526040812080547f0000000000000000000000000000000000000000000000000000000000000000917f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9918b918b918b918761050f83610a55565b909155506040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810187905260e0016040516020818303038152906040528051906020012060405160200161058892919061190160f01b81526002810192909252602282015260420190565b6040516020818303038152906040528051906020012090507f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08260001c11156106135760405162461bcd60e51b815260206004820152601d60248201527f5665727365546f6b656e3a20494e56414c49445f5349474e41545552450000006044820152606401610498565b6040805160008082526020820180845284905260ff871692820192909252606081018590526080810184905260019060a0016020604051602081039080840390855afa158015610667573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381161580159061069d5750886001600160a01b0316816001600160a01b0316145b6106e95760405162461bcd60e51b815260206004820152601d60248201527f5665727365546f6b656e3a20494e56414c49445f5349474e41545552450000006044820152606401610498565b6106f48989896106ff565b505050505050505050565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316600090815260016020526040902054610785908290610a2f565b6001600160a01b0384811660008181526001602090815260408083209590955592861680825290849020805486019055925184815290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9101610754565b6000805482900381556001600160a01b03831681526001602052604090205461080e908290610a2f565b6001600160a01b0383166000818152600160205260408082209390935591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061085c9085815260200190565b60405180910390a35050565b600060208083528351808285015260005b8181101561089557858101830151858201604001528201610879565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146108cd57600080fd5b919050565b600080604083850312156108e557600080fd5b6108ee836108b6565b946020939093013593505050565b60008060006060848603121561091157600080fd5b61091a846108b6565b9250610928602085016108b6565b9150604084013590509250925092565b60006020828403121561094a57600080fd5b5035919050565b60006020828403121561096357600080fd5b61096c826108b6565b9392505050565b600080600080600080600060e0888a03121561098e57600080fd5b610997886108b6565b96506109a5602089016108b6565b95506040880135945060608801359350608088013560ff811681146109c957600080fd5b9699959850939692959460a0840135945060c09093013592915050565b600080604083850312156109f957600080fd5b610a02836108b6565b9150610a10602084016108b6565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561033f5761033f610a19565b8082018082111561033f5761033f610a19565b600060018201610a6757610a67610a19565b506001019056fea2646970667358221220934ddcf9779e5d045164e9c83335aeb41d9c16d1d018bc1ad1783067e92d899e64736f6c6343000811003361010060405234801561001157600080fd5b506040516112843803806112848339810160408190526100309161014f565b806001600160a01b03811661008c5760405162461bcd60e51b815260206004820181905260248201527f566572736548656c7065723a20494e56414c49445f56455253455f544f4b454e60448201526064015b60405180910390fd5b6001600160a01b0316608052816100e55760405162461bcd60e51b815260206004820152601f60248201527f5665727365436c61696d65723a20494e56414c49445f54494d454652414d45006044820152606401610083565b8261013c5760405162461bcd60e51b815260206004820152602160248201527f5665727365436c61696d65723a20494e56414c49445f4d45524b4c455f524f4f6044820152601560fa1b6064820152608401610083565b4260c0525060a09190915260e052610195565b60008060006060848603121561016457600080fd5b83516020850151604086015191945092506001600160a01b038116811461018a57600080fd5b809150509250925092565b60805160a05160c05160e05161108d6101f7600039600061081701526000818161017f015281816104d70152818161050601526108a701526000818160be01526106580152600081816101b901528181610a320152610b7a015261108d6000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c8063681a992111610071578063681a9921146101a157806395025926146101b45780639ae697bf146101f3578063a0821be314610206578063b5609be414610219578063bbe4fd501461022157600080fd5b80632eb4a7ab146100b957806334354068146100f3578063374e0241146100fc57806346c81436146101115780635e192de61461012457806361dcd7ab1461017a575b600080fd5b6100e07f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020015b60405180910390f35b6100e060005481565b61010f61010a366004610cba565b610227565b005b61010f61011f366004610dba565b61037a565b61015a610132366004610e40565b6001602081905260009182526040909120805491810154600282015460039092015490919084565b6040805194855260208501939093529183015260608201526080016100ea565b6100e07f000000000000000000000000000000000000000000000000000000000000000081565b61010f6101af366004610e62565b6103cc565b6101db7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100ea565b6100e0610201366004610e40565b610416565b6100e0610214366004610e40565b61049a565b61010f61057b565b426100e0565b600a89106102755760405162461bcd60e51b81526020600482015260166024820152755665727365436c61696d65723a20544f4f5f4d414e5960501b60448201526064015b60405180910390fd5b60005b8981101561036c5761035a61028d828e610ef3565b8c8c8481811061029f5761029f610f0c565b90506020020160208101906102b49190610e40565b8b8b858181106102c6576102c6610f0c565b905060200201358a8a868181106102df576102df610f0c565b905060200201358989878181106102f8576102f8610f0c565b9050602002013588888881811061031157610311610f0c565b90506020028101906103239190610f22565b8080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525061058692505050565b8061036481610f6c565b915050610278565b505050505050505050505050565b6103bb863387878787878080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525061058692505050565b6103c4336106d5565b505050505050565b61040d878787878787878080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525061058692505050565b50505050505050565b6001600160a01b03811660009081526001602081905260408220015442908290821061044357600061046b565b6001600160a01b0384166000908152600160208190526040909120015461046b908390610f85565b6001600160a01b038516600090815260016020526040902054909150610492908290610f98565b949350505050565b6001600160a01b03811660009081526001602081905260408220015442908083036104c9575060009392505050565b6000818311610501576104fc7f000000000000000000000000000000000000000000000000000000000000000084610f85565b61052b565b61052b7f000000000000000000000000000000000000000000000000000000000000000083610f85565b6001600160a01b03861660009081526001602052604090206003810154600282015491549293509161055e908490610f98565b6105689190610ef3565b6105729190610f85565b95945050505050565b610584336106d5565b565b6001600160a01b03851660009081526001602081905260409091200154156106015760405162461bcd60e51b815260206004820152602860248201527f5665727365436c61696d65723a20524543495049454e545f414c52454144595f60448201526711539493d313115160c21b606482015260840161026c565b604080516020808201899052606088901b6bffffffffffffffffffffffff191682840152605482018790526074820186905260948083018690528351808403909101815260b4909201909252805191012061067d827f000000000000000000000000000000000000000000000000000000000000000083610766565b6106c95760405162461bcd60e51b815260206004820152601b60248201527f5665727365436c61696d65723a20494e56414c49445f50524f4f460000000000604482015260640161026c565b61040d86868686610815565b60006106e08261049a565b6001600160a01b038316600090815260016020526040812060030180549293508392909190610710908490610ef3565b909155506107209050828261099b565b6040805182815242602082015281516001600160a01b038516927ff4c6297f72d4e746c679dde16c732ea9af03893c22fe2ca98037465dd6a3bb2b928290030190a25050565b600081815b855181101561080a57600086828151811061078857610788610f0c565b60200260200101519050808311156107c9576040805160208101839052908101849052606001604051602081830303815290604052805190602001206107f4565b6040805160208101859052908101829052606001604051602081830303815290604052805190602001205b925050808061080290610f6c565b91505061076b565b509092149392505050565b7f00000000000000000000000000000000000000000000000000000000000000008110156108855760405162461bcd60e51b815260206004820181905260248201527f5665727365436c61696d65723a20494e56414c49445f54494d455f4652414d45604482015260640161026c565b82826000546108949190610ef3565b61089e9190610ef3565b6000556108cb817f0000000000000000000000000000000000000000000000000000000000000000610ef3565b6001600160a01b038516600090815260016020819052604090912001556108f28184610fc5565b6001600160a01b038516600090815260016020526040902055816109168285610fd9565b6109209190610ef3565b6001600160a01b0385166000908152600160205260408120600201919091555461094990610b12565b60408051828152602081018590529081018390526001600160a01b038516907f8ceefb1ee30c963bc99d8216add67b76190bb2d0403a4e8f0e321ae3e41d7fbe9060600160405180910390a250505050565b806000808282546109ac9190610f85565b9091555050604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b179052915160009283927f00000000000000000000000000000000000000000000000000000000000000001691610a5d9190610fed565b6000604051808303816000865af19150503d8060008114610a9a576040519150601f19603f3d011682016040523d82523d6000602084013e610a9f565b606091505b5091509150818015610ac0575080806020019051810190610ac0919061101c565b610b0c5760405162461bcd60e51b815260206004820152601c60248201527f566572736548656c7065723a205452414e534645525f4641494c454400000000604482015260640161026c565b50505050565b604080518082018252601281527162616c616e63654f6628616464726573732960701b602091820152815130602480830191909152835180830390910181526044909101835290810180516001600160e01b03166370a0823160e01b179052905160009182917f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031691610bac91610fed565b6000604051808303816000865af19150503d8060008114610be9576040519150601f19603f3d011682016040523d82523d6000602084013e610bee565b606091505b5091509150818015610c1357508281806020019051810190610c10919061103e565b10155b610c695760405162461bcd60e51b815260206004820152602160248201527f566572736548656c7065723a2042414c414e43455f434845434b5f4641494c456044820152601160fa1b606482015260840161026c565b505050565b60008083601f840112610c8057600080fd5b50813567ffffffffffffffff811115610c9857600080fd5b6020830191508360208260051b8501011115610cb357600080fd5b9250929050565b600080600080600080600080600080600060c08c8e031215610cdb57600080fd5b8b359a5067ffffffffffffffff8060208e01351115610cf957600080fd5b610d098e60208f01358f01610c6e565b909b50995060408d0135811015610d1f57600080fd5b610d2f8e60408f01358f01610c6e565b909950975060608d0135811015610d4557600080fd5b610d558e60608f01358f01610c6e565b909750955060808d0135811015610d6b57600080fd5b610d7b8e60808f01358f01610c6e565b909550935060a08d0135811015610d9157600080fd5b50610da28d60a08e01358e01610c6e565b81935080925050509295989b509295989b9093969950565b60008060008060008060a08789031215610dd357600080fd5b86359550602087013594506040870135935060608701359250608087013567ffffffffffffffff811115610e0657600080fd5b610e1289828a01610c6e565b979a9699509497509295939492505050565b80356001600160a01b0381168114610e3b57600080fd5b919050565b600060208284031215610e5257600080fd5b610e5b82610e24565b9392505050565b600080600080600080600060c0888a031215610e7d57600080fd5b87359650610e8d60208901610e24565b955060408801359450606088013593506080880135925060a088013567ffffffffffffffff811115610ebe57600080fd5b610eca8a828b01610c6e565b989b979a50959850939692959293505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610f0657610f06610edd565b92915050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112610f3957600080fd5b83018035915067ffffffffffffffff821115610f5457600080fd5b6020019150600581901b3603821315610cb357600080fd5b600060018201610f7e57610f7e610edd565b5060010190565b81810381811115610f0657610f06610edd565b8082028115828204841417610f0657610f06610edd565b634e487b7160e01b600052601260045260246000fd5b600082610fd457610fd4610faf565b500490565b600082610fe857610fe8610faf565b500690565b6000825160005b8181101561100e5760208186018101518583015201610ff4565b506000920191825250919050565b60006020828403121561102e57600080fd5b81518015158114610e5b57600080fd5b60006020828403121561105057600080fd5b505191905056fea26469706673582212204954ce87625480e8867f55b5adc0d4f8031ef2e6976573c38b677338be82cdca64736f6c634300081100330000000000000000000000000000000000000002a68bedbb190931f6500000000000000000000000000000000000000000000000000000000000000001e16a30208f34053f93e6e263cbc7ed2a289b6607ec98dd67d4163ec3011a5d768c68e5

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806342966c68116100a2578063a457c2d711610071578063a457c2d71461028b578063a9059cbb1461029e578063d379be23146102b1578063d505accf146102f0578063dd62ed3e1461030357600080fd5b806342966c681461021257806370a08231146102275780637ecebe001461024757806395d89b411461026757600080fd5b806330adf81f116100de57806330adf81f14610197578063313ce567146101be5780633644e515146101d857806339509351146101ff57600080fd5b806306fdde0314610110578063095ea7b31461014a57806318160ddd1461016d57806323b872dd14610184575b600080fd5b61013460405180604001604052806005815260200164566572736560d81b81525081565b6040516101419190610868565b60405180910390f35b61015d6101583660046108d2565b61032e565b6040519015158152602001610141565b61017660005481565b604051908152602001610141565b61015d6101923660046108fc565b610345565b6101767f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b6101c6601281565b60405160ff9091168152602001610141565b6101767f1d2df9c8e3422bf9ca691e736d999c2cdd4f150dfaceea19721be0ddba100cb781565b61015d61020d3660046108d2565b6103bf565b610225610220366004610938565b6103fb565b005b610176610235366004610951565b60016020526000908152604090205481565b610176610255366004610951565b60036020526000908152604090205481565b61013460405180604001604052806005815260200164564552534560d81b81525081565b61015d6102993660046108d2565b610408565b61015d6102ac3660046108d2565b61043f565b6102d87f000000000000000000000000e5ac5142bde69cfa722662d9c3e4c8111f60b8d581565b6040516001600160a01b039091168152602001610141565b6102256102fe366004610973565b61044c565b6101766103113660046109e6565b600260209081526000928352604080842090915290825290205481565b600061033b3384846106ff565b5060015b92915050565b6001600160a01b0383166000908152600260209081526040808320338452909152812054600019146103aa576001600160a01b0384166000908152600260209081526040808320338452909152812080548492906103a4908490610a2f565b90915550505b6103b5848484610761565b5060019392505050565b3360008181526002602090815260408083206001600160a01b0387168452909152812054909161033b9185906103f6908690610a42565b6106ff565b61040533826107e4565b50565b3360008181526002602090815260408083206001600160a01b0387168452909152812054909161033b9185906103f6908690610a2f565b600061033b338484610761565b428410156104a15760405162461bcd60e51b815260206004820152601f60248201527f5665727365546f6b656e3a205045524d49545f43414c4c5f455850495245440060448201526064015b60405180910390fd5b6001600160a01b038716600090815260036020526040812080547f1d2df9c8e3422bf9ca691e736d999c2cdd4f150dfaceea19721be0ddba100cb7917f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9918b918b918b918761050f83610a55565b909155506040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810187905260e0016040516020818303038152906040528051906020012060405160200161058892919061190160f01b81526002810192909252602282015260420190565b6040516020818303038152906040528051906020012090507f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08260001c11156106135760405162461bcd60e51b815260206004820152601d60248201527f5665727365546f6b656e3a20494e56414c49445f5349474e41545552450000006044820152606401610498565b6040805160008082526020820180845284905260ff871692820192909252606081018590526080810184905260019060a0016020604051602081039080840390855afa158015610667573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381161580159061069d5750886001600160a01b0316816001600160a01b0316145b6106e95760405162461bcd60e51b815260206004820152601d60248201527f5665727365546f6b656e3a20494e56414c49445f5349474e41545552450000006044820152606401610498565b6106f48989896106ff565b505050505050505050565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316600090815260016020526040902054610785908290610a2f565b6001600160a01b0384811660008181526001602090815260408083209590955592861680825290849020805486019055925184815290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9101610754565b6000805482900381556001600160a01b03831681526001602052604090205461080e908290610a2f565b6001600160a01b0383166000818152600160205260408082209390935591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061085c9085815260200190565b60405180910390a35050565b600060208083528351808285015260005b8181101561089557858101830151858201604001528201610879565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146108cd57600080fd5b919050565b600080604083850312156108e557600080fd5b6108ee836108b6565b946020939093013593505050565b60008060006060848603121561091157600080fd5b61091a846108b6565b9250610928602085016108b6565b9150604084013590509250925092565b60006020828403121561094a57600080fd5b5035919050565b60006020828403121561096357600080fd5b61096c826108b6565b9392505050565b600080600080600080600060e0888a03121561098e57600080fd5b610997886108b6565b96506109a5602089016108b6565b95506040880135945060608801359350608088013560ff811681146109c957600080fd5b9699959850939692959460a0840135945060c09093013592915050565b600080604083850312156109f957600080fd5b610a02836108b6565b9150610a10602084016108b6565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561033f5761033f610a19565b8082018082111561033f5761033f610a19565b600060018201610a6757610a67610a19565b506001019056fea2646970667358221220934ddcf9779e5d045164e9c83335aeb41d9c16d1d018bc1ad1783067e92d899e64736f6c63430008110033

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

0000000000000000000000000000000000000002a68bedbb190931f6500000000000000000000000000000000000000000000000000000000000000001e16a30208f34053f93e6e263cbc7ed2a289b6607ec98dd67d4163ec3011a5d768c68e5

-----Decoded View---------------
Arg [0] : _initialSupply (uint256): 210000000000000000000000000000
Arg [1] : _minimumTimeFrame (uint256): 31550000
Arg [2] : _merkleRoot (bytes32): 0x208f34053f93e6e263cbc7ed2a289b6607ec98dd67d4163ec3011a5d768c68e5

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000002a68bedbb190931f650000000
Arg [1] : 0000000000000000000000000000000000000000000000000000000001e16a30
Arg [2] : 208f34053f93e6e263cbc7ed2a289b6607ec98dd67d4163ec3011a5d768c68e5


Deployed Bytecode Sourcemap

94:5916:3:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;121:37;;;;;;;;;;;;;;;-1:-1:-1;;;121:37:3;;;;;;;;;;;;:::i;:::-;;;;;;;;3202:240;;;;;;:::i;:::-;;:::i;:::-;;;1169:14:4;;1162:22;1144:41;;1132:2;1117:18;3202:240:3;1004:187:4;398:26:3;;;;;;;;;1342:25:4;;;1330:2;1315:18;398:26:3;1196:177:4;4296:376:3;;;;;;:::i;:::-;;:::i;646:151::-;;688:109;646:151;;209:35;;242:2;209:35;;;;;2065:4:4;2053:17;;;2035:36;;2023:2;2008:18;209:35:3;1893:184:4;599:41:3;;;;;3448:294;;;;;;:::i;:::-;;:::i;2053:141::-;;;;;;:::i;:::-;;:::i;:::-;;431:44;;;;;;:::i;:::-;;;;;;;;;;;;;;551:41;;;;;;:::i;:::-;;;;;;;;;;;;;;164:39;;;;;;;;;;;;;;;-1:-1:-1;;;164:39:3;;;;;3748:304;;;;;;:::i;:::-;;:::i;4058:232::-;;;;;;:::i;:::-;;:::i;251:37::-;;;;;;;;-1:-1:-1;;;;;2642:32:4;;;2624:51;;2612:2;2597:18;251:37:3;2458:223:4;4678:1330:3;;;;;;:::i;:::-;;:::i;481:64::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;3202:240;3309:4;3329:84;3351:10;3375:8;3397:6;3329:8;:84::i;:::-;-1:-1:-1;3431:4:3;3202:240;;;;;:::o;4296:376::-;-1:-1:-1;;;;;4450:16:3;;4426:4;4450:16;;;:9;:16;;;;;;;;4467:10;4450:28;;;;;;;;-1:-1:-1;;4450:43:3;4446:112;;-1:-1:-1;;;;;4509:16:3;;;;;;:9;:16;;;;;;;;4526:10;4509:28;;;;;;;:38;;4541:6;;4509:16;:38;;4541:6;;4509:38;:::i;:::-;;;;-1:-1:-1;;4446:112:3;4568:75;4591:5;4610:3;4627:6;4568:9;:75::i;:::-;-1:-1:-1;4661:4:3;4296:376;;;;;:::o;3448:294::-;3612:10;3570:4;3658:21;;;:9;:21;;;;;;;;-1:-1:-1;;;;;3658:31:3;;;;;;;;;;3570:4;;3590:123;;3636:8;;3658:45;;3692:11;;3658:45;:::i;:::-;3590:8;:123::i;2053:141::-;2128:59;2147:10;2171:6;2128:5;:59::i;:::-;2053:141;:::o;3748:304::-;3917:10;3875:4;3963:21;;;:9;:21;;;;;;;;-1:-1:-1;;;;;3963:31:3;;;;;;;;;;3875:4;;3895:128;;3941:8;;3963:50;;3997:16;;3963:50;:::i;4058:232::-;4161:4;4181:80;4204:10;4228:3;4245:6;4181:9;:80::i;4678:1330::-;4924:15;4911:9;:28;;4890:106;;;;-1:-1:-1;;;4890:106:3;;4246:2:4;4890:106:3;;;4228:21:4;4285:2;4265:18;;;4258:30;4324:33;4304:18;;;4297:61;4375:18;;4890:106:3;;;;;;;;;-1:-1:-1;;;;;5349:14:3;;5007;5349;;;:6;:14;;;;;:16;;5109;;688:109;;5251:6;;5283:8;;5317:6;;5007:14;5349:16;;;:::i;:::-;;;;-1:-1:-1;5174:248:3;;;;;;4831:25:4;;;;-1:-1:-1;;;;;4930:15:4;;;4910:18;;;4903:43;4982:15;;;;4962:18;;;4955:43;5014:18;;;5007:34;5057:19;;;5050:35;5101:19;;;5094:35;;;4803:19;;5174:248:3;;;;;;;;;;;;5143:297;;;;;;5047:407;;;;;;;;-1:-1:-1;;;5398:27:4;;5450:1;5441:11;;5434:27;;;;5486:2;5477:12;;5470:28;5523:2;5514:12;;5140:392;5047:407:3;;;;;;;;;;;;;5024:440;;;;;;5007:457;;5493:66;5487:2;5479:11;;:80;5475:150;;;5575:39;;-1:-1:-1;;;5575:39:3;;5739:2:4;5575:39:3;;;5721:21:4;5778:2;5758:18;;;5751:30;5817:31;5797:18;;;5790:59;5866:18;;5575:39:3;5537:353:4;5475:150:3;5662:87;;;5635:24;5662:87;;;;;;;;;6122:25:4;;;6195:4;6183:17;;6163:18;;;6156:45;;;;6217:18;;;6210:34;;;6260:18;;;6253:34;;;5662:87:3;;6094:19:4;;5662:87:3;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5662:87:3;;-1:-1:-1;;5662:87:3;;;-1:-1:-1;;;;;;;5781:32:3;;;;;;:74;;;5849:6;-1:-1:-1;;;;;5829:26:3;:16;-1:-1:-1;;;;;5829:26:3;;5781:74;5760:150;;;;-1:-1:-1;;;5760:150:3;;5739:2:4;5760:150:3;;;5721:21:4;5778:2;5758:18;;;5751:30;5817:31;5797:18;;;5790:59;5866:18;;5760:150:3;5537:353:4;5760:150:3;5921:80;5943:6;5963:8;5985:6;5921:8;:80::i;:::-;4880:1128;;4678:1330;;;;;;;:::o;2554:267::-;-1:-1:-1;;;;;2682:17:3;;;;;;;:9;:17;;;;;;;;:27;;;;;;;;;;;;;:36;;;2734:80;;1342:25:4;;;2734:80:3;;1315:18:4;2734:80:3;;;;;;;;2554:267;;;:::o;2827:369::-;-1:-1:-1;;;;;2977:16:3;;;;;;:9;:16;;;;;;:25;;2996:6;;2977:25;:::i;:::-;-1:-1:-1;;;;;2950:16:3;;;;;;;:9;:16;;;;;;;;:52;;;;3066:14;;;;;;;;;;;;:23;;3037:52;;3115:74;;1342:25:4;;;2950:16:3;;3115:74;;1315:18:4;3115:74:3;1196:177:4;2200:348:3;2349:11;;;:20;;;2323:46;;-1:-1:-1;;;;;2417:16:3;;;;-1:-1:-1;2417:16:3;;;;;;:25;;2363:6;;2417:25;:::i;:::-;-1:-1:-1;;;;;2390:16:3;;;;;;:9;:16;;;;;;:52;;;;2458:83;;;;;;2525:6;1342:25:4;;1330:2;1315:18;;1196:177;2458:83:3;;;;;;;;2200:348;;:::o;14:548:4:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:173::-;635:20;;-1:-1:-1;;;;;684:31:4;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:4:o;1378:328::-;1455:6;1463;1471;1524:2;1512:9;1503:7;1499:23;1495:32;1492:52;;;1540:1;1537;1530:12;1492:52;1563:29;1582:9;1563:29;:::i;:::-;1553:39;;1611:38;1645:2;1634:9;1630:18;1611:38;:::i;:::-;1601:48;;1696:2;1685:9;1681:18;1668:32;1658:42;;1378:328;;;;;:::o;2082:180::-;2141:6;2194:2;2182:9;2173:7;2169:23;2165:32;2162:52;;;2210:1;2207;2200:12;2162:52;-1:-1:-1;2233:23:4;;2082:180;-1:-1:-1;2082:180:4:o;2267:186::-;2326:6;2379:2;2367:9;2358:7;2354:23;2350:32;2347:52;;;2395:1;2392;2385:12;2347:52;2418:29;2437:9;2418:29;:::i;:::-;2408:39;2267:186;-1:-1:-1;;;2267:186:4:o;2686:693::-;2797:6;2805;2813;2821;2829;2837;2845;2898:3;2886:9;2877:7;2873:23;2869:33;2866:53;;;2915:1;2912;2905:12;2866:53;2938:29;2957:9;2938:29;:::i;:::-;2928:39;;2986:38;3020:2;3009:9;3005:18;2986:38;:::i;:::-;2976:48;;3071:2;3060:9;3056:18;3043:32;3033:42;;3122:2;3111:9;3107:18;3094:32;3084:42;;3176:3;3165:9;3161:19;3148:33;3221:4;3214:5;3210:16;3203:5;3200:27;3190:55;;3241:1;3238;3231:12;3190:55;2686:693;;;;-1:-1:-1;2686:693:4;;;;3264:5;3316:3;3301:19;;3288:33;;-1:-1:-1;3368:3:4;3353:19;;;3340:33;;2686:693;-1:-1:-1;;2686:693:4:o;3384:260::-;3452:6;3460;3513:2;3501:9;3492:7;3488:23;3484:32;3481:52;;;3529:1;3526;3519:12;3481:52;3552:29;3571:9;3552:29;:::i;:::-;3542:39;;3600:38;3634:2;3623:9;3619:18;3600:38;:::i;:::-;3590:48;;3384:260;;;;;:::o;3649:127::-;3710:10;3705:3;3701:20;3698:1;3691:31;3741:4;3738:1;3731:15;3765:4;3762:1;3755:15;3781:128;3848:9;;;3869:11;;;3866:37;;;3883:18;;:::i;3914:125::-;3979:9;;;4000:10;;;3997:36;;;4013:18;;:::i;4404:135::-;4443:3;4464:17;;;4461:43;;4484:18;;:::i;:::-;-1:-1:-1;4531:1:4;4520:13;;4404:135::o

Swarm Source

ipfs://4954ce87625480e8867f55b5adc0d4f8031ef2e6976573c38b677338be82cdca

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

OVERVIEW

VERSE is Bitcoin.com’s ecosystem token. It provides utility and rewards to users of Bitcoin.com’s products and services which include the multichain self-custodial Bitcoin.com Wallet, a decentralized exchange (Verse DEX), an award-winning news network and more.

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.