Contract 0x6e0fa1dC8E3e6510aeBF14fCa3d83C77a9780ecB 15

Contract Overview

MoonBeans: Marketplace Dividends
Balance:
103.785459429670285942 MOVR

MOVR Value:
$691.37 (@ $6.66/MOVR)

Token:
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xa45b26af952f52756e923ca4c8f655f640ecabea780d6da2615ba20d130ce2b7Claim For All55846322023-11-22 2:18:489 days 15 hrs ago0xb401320df5487b3c6a88bc18706eccbaf4c64f6c IN  MoonBeans: Marketplace Dividends0 MOVR0.000342809572
0x23a8c9e3044df2b20644531478149e739776c1645b3f0fa730a6fd4af86cc62aClaim For All54997242023-11-09 16:50:0022 days 33 mins ago0xe15be2c6771713077500d29634eb19d20bbb8bb1 IN  MoonBeans: Marketplace Dividends0 MOVR0.000342396067
0x64f944614223cbc3d1fd29986d95bbe1d5636e1874e5949c72af7d7cae5a0e03Claim For All54893332023-11-08 3:57:5423 days 13 hrs ago0x8dabe201994b28dd51d06ab7a4440f5d42060399 IN  MoonBeans: Marketplace Dividends0 MOVR0.00035011584
0x2f72c8fd341522edd6cee4574ae9300736b19dd035e68c5e469a32b1c725dbdbClaim For All54856072023-11-07 14:44:3024 days 2 hrs ago0xfc9dcdcf250d1cb2e38c6df09cfa357568d4145e IN  MoonBeans: Marketplace Dividends0 MOVR0.00033522507
0x8d057ae268a250ffe1294dab786585c8fc39167a54587c9ee4e3f150449f68d9Claim For All54240482023-10-29 13:41:4833 days 3 hrs ago0x1ab89de00f039d9de0e17cd1f1a5e7372c475ac3 IN  MoonBeans: Marketplace Dividends0 MOVR0.00033522507
0xdcc6fc4535b20b899298d835355e25cefd78eadfb8066b0ad1db19430870f793Claim For All52496192023-10-04 10:11:3658 days 7 hrs ago0x89da3dee47f5af1e53a57514b0b35137822fd1d6 IN  MoonBeans: Marketplace Dividends0 MOVR0.00035011584
0xc73e2af842e8eb541eaf492492fd5fc5329198d0914b072a09d1da8eec7fa5c9Claim For All52464012023-10-03 23:09:0058 days 18 hrs ago0x23dcb391ce9c3aa92e3c43ad6fb84dba5bb0f04d IN  MoonBeans: Marketplace Dividends0 MOVR0.00036770652
0xbda9d7add599ef9978cd84aa2aa68f7c80de7e4daadcee771ad77532c2e1cbb9Claim For All52311512023-10-01 18:33:0060 days 22 hrs ago0x4e3f601db69aa0b01745ee05ace50527daaa052a IN  MoonBeans: Marketplace Dividends0 MOVR0.00035011584
0x989d3a3fb5f86d1c31d17d30476cb7717f1a8f60883f212827662da0fedc7c60Claim For All51159422023-09-15 14:15:0677 days 3 hrs ago0x71d5311dd00ea6e46b035822890a63220dd18934 IN  MoonBeans: Marketplace Dividends0 MOVR0.00033399891
0x77089524694be81913fd485b9693fce89966f8a02d5821b595052b85920a5f7dClaim For All50288582023-09-03 9:35:5489 days 7 hrs ago0x0c39296c0bf6d92c3bf878a2393c378611122bcb IN  MoonBeans: Marketplace Dividends0 MOVR0.000400348
0x382bfb7df7d250b99c90a0801963c745aa6d8fb45f955cffa07946c4463cceddClaim For All50286972023-09-03 9:03:0789 days 8 hrs ago0x16556c03ff395758c84eafa691bd92b9b562f3a1 IN  MoonBeans: Marketplace Dividends0 MOVR0.000391898
0x5e48fceb6bcb86ca1d72e19abccfa0aa9eeb57d08f670dbbc880526bc45ec616Claim For All50118842023-08-31 12:42:2492 days 4 hrs ago0x9d0837da742f8efa92cc8566f975ab359d3c4591 IN  MoonBeans: Marketplace Dividends0 MOVR0.00033399891
0x74cb51bb134455d128eaa927d7dc095807787fdb65436315733c2f13995d28afClaim For All50118822023-08-31 12:41:5492 days 4 hrs ago0x9d0837da742f8efa92cc8566f975ab359d3c4591 IN  MoonBeans: Marketplace Dividends0 MOVR0.00033399891
0x133bc4606bcc6c680d816bf55704966a59b166d7808ba4b641e173cf009152cdClaim For All50040382023-08-30 10:22:0693 days 7 hrs ago0xb0944bfc924e42d7f609b7f89fe84b807afb53e7 IN  MoonBeans: Marketplace Dividends0 MOVR0.00034775784
0x9b10b3fa64f040c70a3fa9047b75ed441269daddf54689b47e4a685e9618ac98Claim For All49926192023-08-28 19:44:0094 days 21 hrs ago0x905a89d4409f262323f1593608402a6bdb8c3986 IN  MoonBeans: Marketplace Dividends0 MOVR0.000311619
0xb3355524072bfb98ae4b4287c0c77cbc6da4275ad787f8ad036e998eb1a09d3bClaim For All49818532023-08-27 7:21:4896 days 10 hrs ago0x23dcb391ce9c3aa92e3c43ad6fb84dba5bb0f04d IN  MoonBeans: Marketplace Dividends0 MOVR0.000346128725
0x79cc69639001fcc843868da67e6ca4c784594aeef4a3c5ca48236db6b9fbb5a9Claim For All49452362023-08-22 3:41:36101 days 13 hrs ago0x77aaa14f0c7473d34097382e345101003dade318 IN  MoonBeans: Marketplace Dividends0 MOVR0.000347446337
0x013f26c8a42c24dd767222ea54c9294c953130e3dd8fd89c9910078432a11e35Claim For All48992262023-08-15 16:58:54108 days 24 mins ago0xfc60750c91fd4090151ed42c5e88ff94e25e3f40 IN  MoonBeans: Marketplace Dividends0 MOVR0.000492264922
0x828f48bb0943a1da040e3279545087ae5518e20d8230a8a55fb9be494dd13b8fClaim For All48463532023-08-08 7:03:12115 days 10 hrs ago0xc2c068cc7038facb80173f52a1f2d817d9bb2d13 IN  MoonBeans: Marketplace Dividends0 MOVR0.000162064896
0xb3dc8ad7a03831698a46c6591bae56f1e008976cdda8d4507b490cccdbe5f856Claim For All47634172023-07-27 15:54:00127 days 1 hr ago0xf4ef0a06664fe4cd3091a775434de4c5b5508515 IN  MoonBeans: Marketplace Dividends0 MOVR0.00034775784
0x1ae8160ec3a207a6471addb27d598dc6d5877378cc43e21054c1872ab1b4cfe9Claim For All47607222023-07-27 6:46:24127 days 10 hrs ago0x0c39296c0bf6d92c3bf878a2393c378611122bcb IN  MoonBeans: Marketplace Dividends0 MOVR0.000400348
0x8659300c41e377d3f14316ba262943cf07729a43cf21be90078109383811baa5Claim For All46404132023-07-10 8:18:12144 days 9 hrs ago0xca345a15925c14e3deb0aeda5ebe5b772986dcb4 IN  MoonBeans: Marketplace Dividends0 MOVR0.000230677439
0xf25335f329c4b6df37de2cd3a9f500e7d783bdb4e9c401a7f01ec625b6f9e027Claim For All46370432023-07-09 20:57:30144 days 20 hrs ago0x5264f5112ba20ca4bb7668a198e6169697c86f4b IN  MoonBeans: Marketplace Dividends0 MOVR0.000159166907
0xe00674d8258e51e6edd6ab53572ded5d81897a100137532779f2e2dcb3849300Claim For All46068522023-07-05 15:01:12149 days 2 hrs ago0x77aaa14f0c7473d34097382e345101003dade318 IN  MoonBeans: Marketplace Dividends0 MOVR0.000299115247
0x9db3fa2a9b02af001dc83d297192152a3ef797bf7cfd3d3ca501670cace7fc82Claim For All46002852023-07-04 16:53:06150 days 30 mins ago0x0df08d20b6cfc9abeb01c93eec8ca60d638f4a8b IN  MoonBeans: Marketplace Dividends0 MOVR0.000234733005
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x23a8c9e3044df2b20644531478149e739776c1645b3f0fa730a6fd4af86cc62a54997242023-11-09 16:50:0022 days 33 mins ago MoonBeans: Marketplace Dividends0xe15be2c6771713077500d29634eb19d20bbb8bb10.015376417748917749 MOVR
0x64f944614223cbc3d1fd29986d95bbe1d5636e1874e5949c72af7d7cae5a0e0354893332023-11-08 3:57:5423 days 13 hrs ago MoonBeans: Marketplace Dividends0x8dabe201994b28dd51d06ab7a4440f5d420603990.015376417748917749 MOVR
0xf7ff522e21dda86872561be7eb4dad9c9e9f1b46785395f46b997601c9e2579753893852023-10-24 13:25:4838 days 3 hrs ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.12 MOVR
0xc8ee654bc2401868ddaf4fa0931cb3c746094196692951afd3fb60d8711ed6fe52961102023-10-11 3:02:5451 days 14 hrs ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.009 MOVR
0xdcc6fc4535b20b899298d835355e25cefd78eadfb8066b0ad1db19430870f79352496192023-10-04 10:11:3658 days 7 hrs ago MoonBeans: Marketplace Dividends0x89da3dee47f5af1e53a57514b0b35137822fd1d60.209715933116883117 MOVR
0xc73e2af842e8eb541eaf492492fd5fc5329198d0914b072a09d1da8eec7fa5c952464012023-10-03 23:09:0058 days 18 hrs ago MoonBeans: Marketplace Dividends0x23dcb391ce9c3aa92e3c43ad6fb84dba5bb0f04d0.000569588744588745 MOVR
0xc73e2af842e8eb541eaf492492fd5fc5329198d0914b072a09d1da8eec7fa5c952464012023-10-03 23:09:0058 days 18 hrs ago MoonBeans: Marketplace Dividends0x23dcb391ce9c3aa92e3c43ad6fb84dba5bb0f04d0.000569588744588745 MOVR
0xc73e2af842e8eb541eaf492492fd5fc5329198d0914b072a09d1da8eec7fa5c952464012023-10-03 23:09:0058 days 18 hrs ago MoonBeans: Marketplace Dividends0x23dcb391ce9c3aa92e3c43ad6fb84dba5bb0f04d0.000569588744588745 MOVR
0xbda9d7add599ef9978cd84aa2aa68f7c80de7e4daadcee771ad77532c2e1cbb952311512023-10-01 18:33:0060 days 22 hrs ago MoonBeans: Marketplace Dividends0x4e3f601db69aa0b01745ee05ace50527daaa052a0.196221474242424243 MOVR
0x4840d4f96628450aa10ef33d01f140991e8e3d8e522396cb392f4c360acf1ca952097762023-09-28 17:17:1264 days 6 mins ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.00029 MOVR
0xd265156304d5cad099978bc6dc3e8ccb39d2d264c228100ad0fe86799eb8f6d452097712023-09-28 17:16:1264 days 7 mins ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.00027 MOVR
0xd03dd16b2a1805d7d346b4eb797a6a8d4d916cfad09d503b695655cdd71279d750687812023-09-08 23:33:3683 days 17 hrs ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.02 MOVR
0xd943be231cdd59b223e10673ef3573eee4bb709a32d2b7c5ea48ed5d3d365b2650687762023-09-08 23:32:3683 days 17 hrs ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.01 MOVR
0x71288c6ae6adf537473f222f6000dec27e0713f737bf233127b673e3290403e250687702023-09-08 23:31:2583 days 17 hrs ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.003 MOVR
0x2cbe7bef916e8e6f8bb713cddba7f933597b613672cedfffb0d091e89284e57b50678662023-09-08 20:29:1883 days 20 hrs ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.003 MOVR
0x0cc799c3f60e2d1107f8438f394c40f825581bbd6446651e8589428a0b45187950678522023-09-08 20:26:3083 days 20 hrs ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.005 MOVR
0xf0413f3854ab6ee024f18711c6f75a129afb670199702910f106308cdd436c5b50678452023-09-08 20:25:0683 days 20 hrs ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.003 MOVR
0xfc07bf86491b46a018c3be61506d996620d3c14761ff5d5c1f6feda9deb4434c50678142023-09-08 20:18:5583 days 21 hrs ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.0015 MOVR
0x1285304a90be1f3f25d3528fffd99eba2894bdd9fd27f71a8ddb5e664b2ad0fa50678042023-09-08 20:16:5483 days 21 hrs ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.0045 MOVR
0x63af397a34a33391ba6ca9d3759ddee0e843b4eb44f353d1f43d23e469b09e5450678002023-09-08 20:16:0683 days 21 hrs ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.0029 MOVR
0xbf61e36b7686d0f066bcbd31231ae13f0daa982793c1acb18cfbb2888540e10e50677972023-09-08 20:15:3083 days 21 hrs ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.0015 MOVR
0xfe8bb2b06afd943f22a04ac26347eb415f3035ebd6fb5e5581f2e87abd8df4c250619182023-09-08 0:33:0684 days 16 hrs ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.179 MOVR
0x77089524694be81913fd485b9693fce89966f8a02d5821b595052b85920a5f7d50288582023-09-03 9:35:5489 days 7 hrs ago MoonBeans: Marketplace Dividends0x0c39296c0bf6d92c3bf878a2393c378611122bcb0.003036991341991342 MOVR
0x77089524694be81913fd485b9693fce89966f8a02d5821b595052b85920a5f7d50288582023-09-03 9:35:5489 days 7 hrs ago MoonBeans: Marketplace Dividends0x0c39296c0bf6d92c3bf878a2393c378611122bcb0.003036991341991342 MOVR
0x77089524694be81913fd485b9693fce89966f8a02d5821b595052b85920a5f7d50288582023-09-03 9:35:5489 days 7 hrs ago MoonBeans: Marketplace Dividends0x0c39296c0bf6d92c3bf878a2393c378611122bcb0.003036991341991342 MOVR
[ Download CSV Export 
Index Block
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
MarketplaceDividends

Compiler Version
v0.8.9+commit.e5eed63a

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at moonriver.moonscan.io on 2021-10-26
*/

//Custom contract allowing beanie NFT holders to claim accumulated rewards.

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

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

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

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() {
        _setOwner(_msgSender());
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view virtual 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 {
        _setOwner(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");
        _setOwner(newOwner);
    }

    function _setOwner(address newOwner) private {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

interface IERC165 {
    /**
     * @dev Returns true if this contract implements the interface defined by
     * `interfaceId`. See the corresponding
     * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]
     * to learn more about how these ids are created.
     *
     * This function call must use less than 30 000 gas.
     */
    function supportsInterface(bytes4 interfaceId) external view returns (bool);
}

interface IERC721 is IERC165 {
    /**
     * @dev Emitted when `tokenId` token is transferred from `from` to `to`.
     */
    event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);

    /**
     * @dev Emitted when `owner` enables `approved` to manage the `tokenId` token.
     */
    event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);

    /**
     * @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.
     */
    event ApprovalForAll(address indexed owner, address indexed operator, bool approved);

    /**
     * @dev Returns the number of tokens in ``owner``'s account.
     */
    function balanceOf(address owner) external view returns (uint256 balance);

    /**
     * @dev Returns the owner of the `tokenId` token.
     *
     * Requirements:
     *
     * - `tokenId` must exist.
     */
    function ownerOf(uint256 tokenId) external view returns (address owner);

    /**
     * @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients
     * are aware of the ERC721 protocol to prevent tokens from being forever locked.
     *
     * Requirements:
     *
     * - `from` cannot be the zero address.
     * - `to` cannot be the zero address.
     * - `tokenId` token must exist and be owned by `from`.
     * - If the caller is not `from`, it must be have been allowed to move this token by either {approve} or {setApprovalForAll}.
     * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.
     *
     * Emits a {Transfer} event.
     */
    function safeTransferFrom(
        address from,
        address to,
        uint256 tokenId
    ) external;

    /**
     * @dev Transfers `tokenId` token from `from` to `to`.
     *
     * WARNING: Usage of this method is discouraged, use {safeTransferFrom} whenever possible.
     *
     * Requirements:
     *
     * - `from` cannot be the zero address.
     * - `to` cannot be the zero address.
     * - `tokenId` token must be owned by `from`.
     * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(
        address from,
        address to,
        uint256 tokenId
    ) external;

    /**
     * @dev Gives permission to `to` to transfer `tokenId` token to another account.
     * The approval is cleared when the token is transferred.
     *
     * Only a single account can be approved at a time, so approving the zero address clears previous approvals.
     *
     * Requirements:
     *
     * - The caller must own the token or be an approved operator.
     * - `tokenId` must exist.
     *
     * Emits an {Approval} event.
     */
    function approve(address to, uint256 tokenId) external;

    /**
     * @dev Returns the account approved for `tokenId` token.
     *
     * Requirements:
     *
     * - `tokenId` must exist.
     */
    function getApproved(uint256 tokenId) external view returns (address operator);

    /**
     * @dev Approve or remove `operator` as an operator for the caller.
     * Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller.
     *
     * Requirements:
     *
     * - The `operator` cannot be the caller.
     *
     * Emits an {ApprovalForAll} event.
     */
    function setApprovalForAll(address operator, bool _approved) external;

    /**
     * @dev Returns if the `operator` is allowed to manage all of the assets of `owner`.
     *
     * See {setApprovalForAll}
     */
    function isApprovedForAll(address owner, address operator) external view returns (bool);

    /**
     * @dev Safely transfers `tokenId` token from `from` to `to`.
     *
     * Requirements:
     *
     * - `from` cannot be the zero address.
     * - `to` cannot be the zero address.
     * - `tokenId` token must exist and be owned by `from`.
     * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.
     * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.
     *
     * Emits a {Transfer} event.
     */
    function safeTransferFrom(
        address from,
        address to,
        uint256 tokenId,
        bytes calldata data
    ) external;
}

interface IAdvTokenNFT is IERC721 {
  function tokensOfOwner(address _owner) external view returns(uint256[] memory );
}

interface IERC721Receiver {
    /**
     * @dev Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom}
     * by `operator` from `from`, this function is called.
     *
     * It must return its Solidity selector to confirm the token transfer.
     * If any other value is returned or the interface is not implemented by the recipient, the transfer will be reverted.
     *
     * The selector can be obtained in Solidity with `IERC721.onERC721Received.selector`.
     */
    function onERC721Received(
        address operator,
        address from,
        uint256 tokenId,
        bytes calldata data
    ) external returns (bytes4);
}

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

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

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

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

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

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

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

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

abstract contract ReentrancyGuard {
    // Booleans are more expensive than uint256 or any type that takes up a full
    // word because each write operation emits an extra SLOAD to first read the
    // slot's contents, replace the bits taken up by the boolean, and then write
    // back. This is the compiler's defense against contract upgrades and
    // pointer aliasing, and it cannot be disabled.

    // The values being non-zero value makes deployment a bit more expensive,
    // but in exchange the refund on every call to nonReentrant will be lower in
    // amount. Since refunds are capped to a percentage of the total
    // transaction's gas, it is best to keep them low in cases like this one, to
    // increase the likelihood of the full refund coming into effect.
    uint256 private constant _NOT_ENTERED = 1;
    uint256 private constant _ENTERED = 2;

    uint256 private _status;

    constructor() {
        _status = _NOT_ENTERED;
    }

    /**
     * @dev Prevents a contract from calling itself, directly or indirectly.
     * Calling a `nonReentrant` function from another `nonReentrant`
     * function is not supported. It is possible to prevent this from happening
     * by making the `nonReentrant` function external, and make it call a
     * `private` function that does the actual work.
     */
    modifier nonReentrant() {
        // On the first call to nonReentrant, _notEntered will be true
        require(_status != _ENTERED, "ReentrancyGuard: reentrant call");

        // Any calls to nonReentrant after this point will fail
        _status = _ENTERED;

        _;

        // By storing the original value once again, a refund is triggered (see
        // https://eips.ethereum.org/EIPS/eip-2200)
        _status = _NOT_ENTERED;
    }
}

contract MarketplaceDividends is IERC721Receiver, ReentrancyGuard, Ownable {

  address public beanieCA = 0xd3A9c48Df4d9342dc1A0EE2c185CE50588729Fa9;
  address public TOKEN = 0x98878B06940aE243284CA214f92Bb71a2b032B8A; //WMOVR
  uint256 public allTimeBalance = 0;
  uint256 tokenAllTimeBalance = 0;
  uint256 lastTokenBalance = 0;
  mapping(uint256 => uint256) claimed;
  mapping(uint256 => uint256) tokenClaimed;

  receive() external payable {
    allTimeBalance += msg.value;
    uint256 currentTokenBalance = IERC20(TOKEN).balanceOf(msg.sender);
    if (currentTokenBalance > lastTokenBalance) {
      tokenAllTimeBalance += (currentTokenBalance - lastTokenBalance);
    }
    lastTokenBalance = currentTokenBalance;
  }

  // Required in order to receive ERC 721's.
  function onERC721Received(address, address, uint256, bytes memory) public virtual override returns (bytes4) {
    return this.onERC721Received.selector;
  }

  function getClaimable(uint256 tokenId) public view returns (uint256) {
    uint256 allTimeShare = allTimeBalance / 462;
    return allTimeShare - claimed[tokenId];
  }

  function getClaimableForAll(address user) public view returns (uint256) {
    uint256[] memory owned = IAdvTokenNFT(beanieCA).tokensOfOwner(user);
    uint256 total = 0;
    for (uint i = 0; i < owned.length; i++) {
      total += getClaimable(owned[i]);
    }
    return total;
  }

  function claim(uint256 tokenId) public nonReentrant {
    uint256 claimable = getClaimable(tokenId);
    claimed[tokenId] += claimable;
    payable(IERC721(beanieCA).ownerOf(tokenId)).transfer(claimable);
  }

  function claimForAll() external {
    uint256[] memory owned = IAdvTokenNFT(beanieCA).tokensOfOwner(msg.sender);
    for (uint i = 0; i < owned.length; i++) {
      claim(owned[i]);
    }
  }

  function getClaimableToken(uint256 tokenId) public view returns (uint256) {
    uint256 allTimeShare = tokenAllTimeBalance / 462;
    return allTimeShare - tokenClaimed[tokenId];
  }

  function claimToken(uint256 tokenId) public nonReentrant {
    uint256 claimable = getClaimableToken(tokenId);
    tokenClaimed[tokenId] += claimable;
    IERC20(TOKEN).transferFrom(address(this), IERC721(beanieCA).ownerOf(tokenId), claimable);
  }

  function claimTokenForAll() external {
    uint256[] memory owned = IAdvTokenNFT(beanieCA).tokensOfOwner(msg.sender);
    for (uint i = 0; i < owned.length; i++) {
      claim(owned[i]);
    }
  }

  function unclaimedBalance() external view returns (uint256) {
    return address(this).balance;
  }

  function unclaimedTokenBalance() external view returns (uint256) {
    return IERC20(TOKEN).balanceOf(address(this));
  }

  // Emergency only - Recover Tokens
  function recoverToken(address _token, uint256 amount) external onlyOwner {
    IERC20(_token).transfer(owner(), amount);
  }

  // Emergency only - Recover NFTs
  function recoverNFT(address _token, uint256 tokenId) external onlyOwner {
    IERC721(_token).transferFrom(address(this), owner(), tokenId);
  }

  // Emergency only - Recover MOVR
  function RecoverMOVR(address to, uint256 amount) external onlyOwner {
    payable(to).transfer(amount);
  }
}

Contract ABI

[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"RecoverMOVR","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"TOKEN","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"allTimeBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"beanieCA","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"claimToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimTokenForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getClaimable","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getClaimableForAll","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getClaimableToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"onERC721Received","outputs":[{"internalType":"bytes4","name":"","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"recoverNFT","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"recoverToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unclaimedBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unclaimedTokenBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600280546001600160a01b031990811673d3a9c48df4d9342dc1a0ee2c185ce50588729fa917909155600380549091167398878b06940ae243284ca214f92bb71a2b032b8a17905560006004819055600581905560065534801561006757600080fd5b5060016000556100763361007b565b6100cd565b600180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b61110e806100dc6000396000f3fe6080604052600436106101185760003560e01c80638573c8b1116100a0578063ee1778ae11610064578063ee1778ae146103dd578063ef5cf0a5146103f2578063f155525d14610407578063f2fde38b1461041c578063fa8176931461043c57600080fd5b80638573c8b11461033f5780638da5cb5b1461035f5780639c7e4a661461037d578063a9e7c2e51461039d578063b29a8140146103bd57600080fd5b80634666d628116100e75780634666d6281461029257806357ccdcf8146102b257806363d0ecd6146102d2578063715018a6146102f257806382bfefc81461030757600080fd5b8063150b7a02146101ea5780633319a00d14610233578063379607f5146102555780633af07ca61461027557600080fd5b366101e557346004600082825461012f9190610da1565b90915550506003546040516370a0823160e01b81523360048201526000916001600160a01b0316906370a082319060240160206040518083038186803b15801561017857600080fd5b505afa15801561018c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101b09190610db9565b90506006548111156101e0576006546101c99082610dd2565b600560008282546101da9190610da1565b90915550505b600655005b600080fd5b3480156101f657600080fd5b50610215610205366004610e45565b630a85bd0160e11b949350505050565b6040516001600160e01b031990911681526020015b60405180910390f35b34801561023f57600080fd5b5061025361024e366004610f09565b610452565b005b34801561026157600080fd5b50610253610270366004610f35565b610512565b34801561028157600080fd5b50475b60405190815260200161022a565b34801561029e57600080fd5b506102846102ad366004610f35565b61065d565b3480156102be57600080fd5b506102536102cd366004610f09565b610693565b3480156102de57600080fd5b506102846102ed366004610f4e565b6106f8565b3480156102fe57600080fd5b506102536107d4565b34801561031357600080fd5b50600354610327906001600160a01b031681565b6040516001600160a01b03909116815260200161022a565b34801561034b57600080fd5b50600254610327906001600160a01b031681565b34801561036b57600080fd5b506001546001600160a01b0316610327565b34801561038957600080fd5b50610284610398366004610f35565b61080a565b3480156103a957600080fd5b506102536103b8366004610f35565b610839565b3480156103c957600080fd5b506102536103d8366004610f09565b6109d7565b3480156103e957600080fd5b50610253610aa2565b3480156103fe57600080fd5b50610284610b68565b34801561041357600080fd5b50610253610be9565b34801561042857600080fd5b50610253610437366004610f4e565b610c9e565b34801561044857600080fd5b5061028460045481565b6001546001600160a01b031633146104855760405162461bcd60e51b815260040161047c90610f6b565b60405180910390fd5b816001600160a01b03166323b872dd306104a76001546001600160a01b031690565b6040516001600160e01b031960e085901b1681526001600160a01b0392831660048201529116602482015260448101849052606401600060405180830381600087803b1580156104f657600080fd5b505af115801561050a573d6000803e3d6000fd5b505050505050565b600260005414156105655760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161047c565b600260009081556105758261080a565b90508060076000848152602001908152602001600020600082825461059a9190610da1565b90915550506002546040516331a9108f60e11b8152600481018490526001600160a01b0390911690636352211e9060240160206040518083038186803b1580156105e357600080fd5b505afa1580156105f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061061b9190610fa0565b6001600160a01b03166108fc829081150290604051600060405180830381858888f19350505050158015610653573d6000803e3d6000fd5b5050600160005550565b6000806101ce6005546106709190610fbd565b60008481526008602052604090205490915061068c9082610dd2565b9392505050565b6001546001600160a01b031633146106bd5760405162461bcd60e51b815260040161047c90610f6b565b6040516001600160a01b0383169082156108fc029083906000818181858888f193505050501580156106f3573d6000803e3d6000fd5b505050565b600254604051632118854760e21b81526001600160a01b0383811660048301526000928392911690638462151c9060240160006040518083038186803b15801561074157600080fd5b505afa158015610755573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261077d9190810190610fdf565b90506000805b82518110156107cc576107ae8382815181106107a1576107a1611085565b602002602001015161080a565b6107b89083610da1565b9150806107c48161109b565b915050610783565b509392505050565b6001546001600160a01b031633146107fe5760405162461bcd60e51b815260040161047c90610f6b565b6108086000610d39565b565b6000806101ce60045461081d9190610fbd565b60008481526007602052604090205490915061068c9082610dd2565b6002600054141561088c5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161047c565b6002600090815561089c8261065d565b9050806008600084815260200190815260200160002060008282546108c19190610da1565b90915550506003546002546040516331a9108f60e11b8152600481018590526001600160a01b03928316926323b872dd923092911690636352211e9060240160206040518083038186803b15801561091857600080fd5b505afa15801561092c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109509190610fa0565b6040516001600160e01b031960e085901b1681526001600160a01b0392831660048201529116602482015260448101849052606401602060405180830381600087803b15801561099f57600080fd5b505af11580156109b3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065391906110b6565b6001546001600160a01b03163314610a015760405162461bcd60e51b815260040161047c90610f6b565b816001600160a01b031663a9059cbb610a226001546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381600087803b158015610a6a57600080fd5b505af1158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f391906110b6565b600254604051632118854760e21b81523360048201526000916001600160a01b031690638462151c9060240160006040518083038186803b158015610ae657600080fd5b505afa158015610afa573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610b229190810190610fdf565b905060005b8151811015610b6457610b52828281518110610b4557610b45611085565b6020026020010151610512565b80610b5c8161109b565b915050610b27565b5050565b6003546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a082319060240160206040518083038186803b158015610bac57600080fd5b505afa158015610bc0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be49190610db9565b905090565b600254604051632118854760e21b81523360048201526000916001600160a01b031690638462151c9060240160006040518083038186803b158015610c2d57600080fd5b505afa158015610c41573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610c699190810190610fdf565b905060005b8151811015610b6457610c8c828281518110610b4557610b45611085565b80610c968161109b565b915050610c6e565b6001546001600160a01b03163314610cc85760405162461bcd60e51b815260040161047c90610f6b565b6001600160a01b038116610d2d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161047c565b610d3681610d39565b50565b600180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b634e487b7160e01b600052601160045260246000fd5b60008219821115610db457610db4610d8b565b500190565b600060208284031215610dcb57600080fd5b5051919050565b600082821015610de457610de4610d8b565b500390565b6001600160a01b0381168114610d3657600080fd5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610e3d57610e3d610dfe565b604052919050565b60008060008060808587031215610e5b57600080fd5b8435610e6681610de9565b9350602085810135610e7781610de9565b935060408601359250606086013567ffffffffffffffff80821115610e9b57600080fd5b818801915088601f830112610eaf57600080fd5b813581811115610ec157610ec1610dfe565b610ed3601f8201601f19168501610e14565b91508082528984828501011115610ee957600080fd5b808484018584013760008482840101525080935050505092959194509250565b60008060408385031215610f1c57600080fd5b8235610f2781610de9565b946020939093013593505050565b600060208284031215610f4757600080fd5b5035919050565b600060208284031215610f6057600080fd5b813561068c81610de9565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060208284031215610fb257600080fd5b815161068c81610de9565b600082610fda57634e487b7160e01b600052601260045260246000fd5b500490565b60006020808385031215610ff257600080fd5b825167ffffffffffffffff8082111561100a57600080fd5b818501915085601f83011261101e57600080fd5b81518181111561103057611030610dfe565b8060051b9150611041848301610e14565b818152918301840191848101908884111561105b57600080fd5b938501935b8385101561107957845182529385019390850190611060565b98975050505050505050565b634e487b7160e01b600052603260045260246000fd5b60006000198214156110af576110af610d8b565b5060010190565b6000602082840312156110c857600080fd5b8151801515811461068c57600080fdfea2646970667358221220674d9a2901d1af07744a9c5e052b781f67f4f6b3944b262703fd1f45793d056164736f6c63430008090033

Deployed ByteCode Sourcemap

12498:3246:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12977:9;12959:14;;:27;;;;;;;:::i;:::-;;;;-1:-1:-1;;13030:5:0;;13023:35;;-1:-1:-1;;;13023:35:0;;13047:10;13023:35;;;425:51:1;12993:27:0;;-1:-1:-1;;;;;13030:5:0;;13023:23;;398:18:1;;13023:35:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12993:65;;13091:16;;13069:19;:38;13065:124;;;13164:16;;13142:38;;:19;:38;:::i;:::-;13118:19;;:63;;;;;;;:::i;:::-;;;;-1:-1:-1;;13065:124:0;13195:16;:38;12498:3246;;;;;13291:158;;;;;;;;;;-1:-1:-1;13291:158:0;;;;;:::i;:::-;-1:-1:-1;;;13291:158:0;;;;;;;;;;-1:-1:-1;;;;;;2629:33:1;;;2611:52;;2599:2;2584:18;13291:158:0;;;;;;;;15444:146;;;;;;;;;;-1:-1:-1;15444:146:0;;;;;:::i;:::-;;:::i;:::-;;13926:212;;;;;;;;;;-1:-1:-1;13926:212:0;;;;;:::i;:::-;;:::i;15002:101::-;;;;;;;;;;-1:-1:-1;15076:21:0;15002:101;;;3325:25:1;;;3313:2;3298:18;15002:101:0;3179:177:1;14346:185:0;;;;;;;;;;-1:-1:-1;14346:185:0;;;;;:::i;:::-;;:::i;15632:109::-;;;;;;;;;;-1:-1:-1;15632:109:0;;;;;:::i;:::-;;:::i;13631:289::-;;;;;;;;;;-1:-1:-1;13631:289:0;;;;;:::i;:::-;;:::i;1440:94::-;;;;;;;;;;;;;:::i;12653:65::-;;;;;;;;;;-1:-1:-1;12653:65:0;;;;-1:-1:-1;;;;;12653:65:0;;;;;;-1:-1:-1;;;;;443:32:1;;;425:51;;413:2;398:18;12653:65:0;279:203:1;12580:68:0;;;;;;;;;;-1:-1:-1;12580:68:0;;;;-1:-1:-1;;;;;12580:68:0;;;789:87;;;;;;;;;;-1:-1:-1;862:6:0;;-1:-1:-1;;;;;862:6:0;789:87;;13455:170;;;;;;;;;;-1:-1:-1;13455:170:0;;;;;:::i;:::-;;:::i;14537:252::-;;;;;;;;;;-1:-1:-1;14537:252:0;;;;;:::i;:::-;;:::i;15276:126::-;;;;;;;;;;-1:-1:-1;15276:126:0;;;;;:::i;:::-;;:::i;14795:201::-;;;;;;;;;;;;;:::i;15109:123::-;;;;;;;;;;;;;:::i;14144:196::-;;;;;;;;;;;;;:::i;1689:192::-;;;;;;;;;;-1:-1:-1;1689:192:0;;;;;:::i;:::-;;:::i;12731:33::-;;;;;;;;;;;;;;;;15444:146;862:6;;-1:-1:-1;;;;;862:6:0;252:10;1009:23;1001:68;;;;-1:-1:-1;;;1001:68:0;;;;;;;:::i;:::-;;;;;;;;;15531:6:::1;-1:-1:-1::0;;;;;15523:28:0::1;;15560:4;15567:7;862:6:::0;;-1:-1:-1;;;;;862:6:0;;789:87;15567:7:::1;15523:61;::::0;-1:-1:-1;;;;;;15523:61:0::1;::::0;;;;;;-1:-1:-1;;;;;4232:15:1;;;15523:61:0::1;::::0;::::1;4214:34:1::0;4284:15;;4264:18;;;4257:43;4316:18;;;4309:34;;;4149:18;;15523:61:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;15444:146:::0;;:::o;13926:212::-;11553:1;12149:7;;:19;;12141:63;;;;-1:-1:-1;;;12141:63:0;;4556:2:1;12141:63:0;;;4538:21:1;4595:2;4575:18;;;4568:30;4634:33;4614:18;;;4607:61;4685:18;;12141:63:0;4354:355:1;12141:63:0;11553:1;12282:7;:18;;;14005:21:::1;14018:7:::0;14005:12:::1;:21::i;:::-;13985:41;;14053:9;14033:7;:16;14041:7;14033:16;;;;;;;;;;;;:29;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;14085:8:0::1;::::0;14077:34:::1;::::0;-1:-1:-1;;;14077:34:0;;::::1;::::0;::::1;3325:25:1::0;;;-1:-1:-1;;;;;14085:8:0;;::::1;::::0;14077:25:::1;::::0;3298:18:1;;14077:34:0::1;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;14069:52:0::1;:63;14122:9;14069:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;11509:1:0;12461:7;:22;-1:-1:-1;13926:212:0:o;14346:185::-;14411:7;14427:20;14472:3;14450:19;;:25;;;;:::i;:::-;14504:21;;;;:12;:21;;;;;;14427:48;;-1:-1:-1;14489:36:0;;14427:48;14489:36;:::i;:::-;14482:43;14346:185;-1:-1:-1;;;14346:185:0:o;15632:109::-;862:6;;-1:-1:-1;;;;;862:6:0;252:10;1009:23;1001:68;;;;-1:-1:-1;;;1001:68:0;;;;;;;:::i;:::-;15707:28:::1;::::0;-1:-1:-1;;;;;15707:20:0;::::1;::::0;:28;::::1;;;::::0;15728:6;;15707:28:::1;::::0;;;15728:6;15707:20;:28;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;15632:109:::0;;:::o;13631:289::-;13748:8;;13735:42;;-1:-1:-1;;;13735:42:0;;-1:-1:-1;;;;;443:32:1;;;13735:42:0;;;425:51:1;13694:7:0;;;;13748:8;;;13735:36;;398:18:1;;13735:42:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;13735:42:0;;;;;;;;;;;;:::i;:::-;13710:67;;13784:13;13813:6;13808:88;13829:5;:12;13825:1;:16;13808:88;;;13866:22;13879:5;13885:1;13879:8;;;;;;;;:::i;:::-;;;;;;;13866:12;:22::i;:::-;13857:31;;;;:::i;:::-;;-1:-1:-1;13843:3:0;;;;:::i;:::-;;;;13808:88;;;-1:-1:-1;13909:5:0;13631:289;-1:-1:-1;;;13631:289:0:o;1440:94::-;862:6;;-1:-1:-1;;;;;862:6:0;252:10;1009:23;1001:68;;;;-1:-1:-1;;;1001:68:0;;;;;;;:::i;:::-;1505:21:::1;1523:1;1505:9;:21::i;:::-;1440:94::o:0;13455:170::-;13515:7;13531:20;13571:3;13554:14;;:20;;;;:::i;:::-;13603:16;;;;:7;:16;;;;;;13531:43;;-1:-1:-1;13588:31:0;;13531:43;13588:31;:::i;14537:252::-;11553:1;12149:7;;:19;;12141:63;;;;-1:-1:-1;;;12141:63:0;;4556:2:1;12141:63:0;;;4538:21:1;4595:2;4575:18;;;4568:30;4634:33;4614:18;;;4607:61;4685:18;;12141:63:0;4354:355:1;12141:63:0;11553:1;12282:7;:18;;;14621:26:::1;14639:7:::0;14621:17:::1;:26::i;:::-;14601:46;;14679:9;14654:12;:21;14667:7;14654:21;;;;;;;;;;;;:34;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;14702:5:0::1;::::0;14745:8:::1;::::0;14737:34:::1;::::0;-1:-1:-1;;;14737:34:0;;::::1;::::0;::::1;3325:25:1::0;;;-1:-1:-1;;;;;14702:5:0;;::::1;::::0;14695:26:::1;::::0;14730:4:::1;::::0;14745:8;::::1;::::0;14737:25:::1;::::0;3298:18:1;;14737:34:0::1;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14695:88;::::0;-1:-1:-1;;;;;;14695:88:0::1;::::0;;;;;;-1:-1:-1;;;;;4232:15:1;;;14695:88:0::1;::::0;::::1;4214:34:1::0;4284:15;;4264:18;;;4257:43;4316:18;;;4309:34;;;4149:18;;14695:88:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;15276:126::-:0;862:6;;-1:-1:-1;;;;;862:6:0;252:10;1009:23;1001:68;;;;-1:-1:-1;;;1001:68:0;;;;;;;:::i;:::-;15363:6:::1;-1:-1:-1::0;;;;;15356:23:0::1;;15380:7;862:6:::0;;-1:-1:-1;;;;;862:6:0;;789:87;15380:7:::1;15356:40;::::0;-1:-1:-1;;;;;;15356:40:0::1;::::0;;;;;;-1:-1:-1;;;;;6879:32:1;;;15356:40:0::1;::::0;::::1;6861:51:1::0;6928:18;;;6921:34;;;6834:18;;15356:40:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;14795:201::-:0;14877:8;;14864:48;;-1:-1:-1;;;14864:48:0;;14901:10;14864:48;;;425:51:1;14839:22:0;;-1:-1:-1;;;;;14877:8:0;;14864:36;;398:18:1;;14864:48:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;14864:48:0;;;;;;;;;;;;:::i;:::-;14839:73;;14924:6;14919:72;14940:5;:12;14936:1;:16;14919:72;;;14968:15;14974:5;14980:1;14974:8;;;;;;;;:::i;:::-;;;;;;;14968:5;:15::i;:::-;14954:3;;;;:::i;:::-;;;;14919:72;;;;14832:164;14795:201::o;15109:123::-;15195:5;;15188:38;;-1:-1:-1;;;15188:38:0;;15220:4;15188:38;;;425:51:1;15165:7:0;;-1:-1:-1;;;;;15195:5:0;;15188:23;;398:18:1;;15188:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15181:45;;15109:123;:::o;14144:196::-;14221:8;;14208:48;;-1:-1:-1;;;14208:48:0;;14245:10;14208:48;;;425:51:1;14183:22:0;;-1:-1:-1;;;;;14221:8:0;;14208:36;;398:18:1;;14208:48:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;14208:48:0;;;;;;;;;;;;:::i;:::-;14183:73;;14268:6;14263:72;14284:5;:12;14280:1;:16;14263:72;;;14312:15;14318:5;14324:1;14318:8;;;;;;;;:::i;14312:15::-;14298:3;;;;:::i;:::-;;;;14263:72;;1689:192;862:6;;-1:-1:-1;;;;;862:6:0;252:10;1009:23;1001:68;;;;-1:-1:-1;;;1001:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1778:22:0;::::1;1770:73;;;::::0;-1:-1:-1;;;1770:73:0;;7168:2:1;1770:73:0::1;::::0;::::1;7150:21:1::0;7207:2;7187:18;;;7180:30;7246:34;7226:18;;;7219:62;-1:-1:-1;;;7297:18:1;;;7290:36;7343:19;;1770:73:0::1;6966:402:1::0;1770:73:0::1;1854:19;1864:8;1854:9;:19::i;:::-;1689:192:::0;:::o;1889:173::-;1964:6;;;-1:-1:-1;;;;;1981:17:0;;;-1:-1:-1;;;;;;1981:17:0;;;;;;;2014:40;;1964:6;;;1981:17;1964:6;;2014:40;;1945:16;;2014:40;1934:128;1889:173;:::o;14:127:1:-;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:128;186:3;217:1;213:6;210:1;207:13;204:39;;;223:18;;:::i;:::-;-1:-1:-1;259:9:1;;146:128::o;487:184::-;557:6;610:2;598:9;589:7;585:23;581:32;578:52;;;626:1;623;616:12;578:52;-1:-1:-1;649:16:1;;487:184;-1:-1:-1;487:184:1:o;676:125::-;716:4;744:1;741;738:8;735:34;;;749:18;;:::i;:::-;-1:-1:-1;786:9:1;;676:125::o;806:131::-;-1:-1:-1;;;;;881:31:1;;871:42;;861:70;;927:1;924;917:12;942:127;1003:10;998:3;994:20;991:1;984:31;1034:4;1031:1;1024:15;1058:4;1055:1;1048:15;1074:275;1145:2;1139:9;1210:2;1191:13;;-1:-1:-1;;1187:27:1;1175:40;;1245:18;1230:34;;1266:22;;;1227:62;1224:88;;;1292:18;;:::i;:::-;1328:2;1321:22;1074:275;;-1:-1:-1;1074:275:1:o;1354:1108::-;1449:6;1457;1465;1473;1526:3;1514:9;1505:7;1501:23;1497:33;1494:53;;;1543:1;1540;1533:12;1494:53;1582:9;1569:23;1601:31;1626:5;1601:31;:::i;:::-;1651:5;-1:-1:-1;1675:2:1;1714:18;;;1701:32;1742:33;1701:32;1742:33;:::i;:::-;1794:7;-1:-1:-1;1848:2:1;1833:18;;1820:32;;-1:-1:-1;1903:2:1;1888:18;;1875:32;1926:18;1956:14;;;1953:34;;;1983:1;1980;1973:12;1953:34;2021:6;2010:9;2006:22;1996:32;;2066:7;2059:4;2055:2;2051:13;2047:27;2037:55;;2088:1;2085;2078:12;2037:55;2124:2;2111:16;2146:2;2142;2139:10;2136:36;;;2152:18;;:::i;:::-;2194:53;2237:2;2218:13;;-1:-1:-1;;2214:27:1;2210:36;;2194:53;:::i;:::-;2181:66;;2270:2;2263:5;2256:17;2310:7;2305:2;2300;2296;2292:11;2288:20;2285:33;2282:53;;;2331:1;2328;2321:12;2282:53;2386:2;2381;2377;2373:11;2368:2;2361:5;2357:14;2344:45;2430:1;2425:2;2420;2413:5;2409:14;2405:23;2398:34;;2451:5;2441:15;;;;;1354:1108;;;;;;;:::o;2674:315::-;2742:6;2750;2803:2;2791:9;2782:7;2778:23;2774:32;2771:52;;;2819:1;2816;2809:12;2771:52;2858:9;2845:23;2877:31;2902:5;2877:31;:::i;:::-;2927:5;2979:2;2964:18;;;;2951:32;;-1:-1:-1;;;2674:315:1:o;2994:180::-;3053:6;3106:2;3094:9;3085:7;3081:23;3077:32;3074:52;;;3122:1;3119;3112:12;3074:52;-1:-1:-1;3145:23:1;;2994:180;-1:-1:-1;2994:180:1:o;3361:247::-;3420:6;3473:2;3461:9;3452:7;3448:23;3444:32;3441:52;;;3489:1;3486;3479:12;3441:52;3528:9;3515:23;3547:31;3572:5;3547:31;:::i;3613:356::-;3815:2;3797:21;;;3834:18;;;3827:30;3893:34;3888:2;3873:18;;3866:62;3960:2;3945:18;;3613:356::o;4714:251::-;4784:6;4837:2;4825:9;4816:7;4812:23;4808:32;4805:52;;;4853:1;4850;4843:12;4805:52;4885:9;4879:16;4904:31;4929:5;4904:31;:::i;4970:217::-;5010:1;5036;5026:132;;5080:10;5075:3;5071:20;5068:1;5061:31;5115:4;5112:1;5105:15;5143:4;5140:1;5133:15;5026:132;-1:-1:-1;5172:9:1;;4970:217::o;5192:936::-;5287:6;5318:2;5361;5349:9;5340:7;5336:23;5332:32;5329:52;;;5377:1;5374;5367:12;5329:52;5410:9;5404:16;5439:18;5480:2;5472:6;5469:14;5466:34;;;5496:1;5493;5486:12;5466:34;5534:6;5523:9;5519:22;5509:32;;5579:7;5572:4;5568:2;5564:13;5560:27;5550:55;;5601:1;5598;5591:12;5550:55;5630:2;5624:9;5652:2;5648;5645:10;5642:36;;;5658:18;;:::i;:::-;5704:2;5701:1;5697:10;5687:20;;5727:28;5751:2;5747;5743:11;5727:28;:::i;:::-;5789:15;;;5859:11;;;5855:20;;;5820:12;;;;5887:19;;;5884:39;;;5919:1;5916;5909:12;5884:39;5943:11;;;;5963:135;5979:6;5974:3;5971:15;5963:135;;;6045:10;;6033:23;;5996:12;;;;6076;;;;5963:135;;;6117:5;5192:936;-1:-1:-1;;;;;;;;5192:936:1:o;6133:127::-;6194:10;6189:3;6185:20;6182:1;6175:31;6225:4;6222:1;6215:15;6249:4;6246:1;6239:15;6265:135;6304:3;-1:-1:-1;;6325:17:1;;6322:43;;;6345:18;;:::i;:::-;-1:-1:-1;6392:1:1;6381:13;;6265:135::o;6405:277::-;6472:6;6525:2;6513:9;6504:7;6500:23;6496:32;6493:52;;;6541:1;6538;6531:12;6493:52;6573:9;6567:16;6626:5;6619:13;6612:21;6605:5;6602:32;6592:60;;6648:1;6645;6638:12

Swarm Source

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