Contract 0x6e0fa1dC8E3e6510aeBF14fCa3d83C77a9780ecB 6

Contract Overview

MoonBeans: Marketplace Dividends
Balance:
57.779466097663448292 MOVR

MOVR Value:
$1,425.73 (@ $24.68/MOVR)

Token:
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x0ae1b4ec6700ad3a0c5f1211bd511c2443c3f17c55127b829220e05532c4595fClaim For All18904802022-05-24 19:49:128 hrs 49 mins ago0xc71ce7dd8744579a4315eba4bbc3f30535e599aa IN  MoonBeans: Marketplace Dividends0 MOVR0.00007449
0xb964993ef94da7a27e1401907f29c3616d4d4829b3cdb5ba3d91b8c5b0533b55Claim For All18889372022-05-24 13:42:5414 hrs 55 mins ago0xfe99b4eb232498d30cc167bfcec4133e2b9c6a80 IN  MoonBeans: Marketplace Dividends0 MOVR0.0007087925
0xb1bb05936ca6a799ca0ae54594f200338eef318fe45088685a7b37929bf1d0f3Claim For All18883652022-05-24 11:25:2417 hrs 13 mins ago0x6e3fb067d2d9dbeac7f3615302fad7d1d228b724 IN  MoonBeans: Marketplace Dividends0 MOVR0.0010420625
0xdef026d23e6f431c6c147bb4ed3220f64658e464a9d93859263f51a4bc7be182Claim For All18870972022-05-24 6:31:3022 hrs 7 mins ago0xc78a4443164039a5d8cf91b75a090001e29d66fb IN  MoonBeans: Marketplace Dividends0 MOVR0.00007449
0x0f35ca6d5d1c76fe7c60340d58610fe28dd49af7737dd28b5e519f78851d0b41Claim For All18852072022-05-23 23:19:421 day 5 hrs ago0x4222e1b9e3c4c480bbfb85473aa94efb530681dc IN  MoonBeans: Marketplace Dividends0 MOVR0.00007449
0x3c6055eb350cabb7386c1e9298ed6117bc4f46a9a6c1a399b18b7562c5595a82Claim For All18852042022-05-23 23:19:001 day 5 hrs ago0x4222e1b9e3c4c480bbfb85473aa94efb530681dc IN  MoonBeans: Marketplace Dividends0 MOVR0.00007449
0xb257c119935d9ad773d3dcf8e09929ea16bfdf2f5c96a5eee7e996f6678009aaClaim For All18836052022-05-23 17:08:241 day 11 hrs ago0x4d89915440156024d5ee8f7ff1ced0f1f55cf2e2 IN  MoonBeans: Marketplace Dividends0 MOVR0.0001374875
0xe05b7449c81857894e73f8c17560b091063f2257b10cd145354947bbc9a7d864Claim For All18834272022-05-23 16:27:061 day 12 hrs ago0xb172bcb3e36e7c44962f3c795c76d2cf15dc79b0 IN  MoonBeans: Marketplace Dividends0 MOVR0.0001374875
0x4ee19734d963a0cd20fb41f2224a0bb45ee47f9e1eb96048bb5aa0d04b7a7930Claim For All18827962022-05-23 13:58:001 day 14 hrs ago0xfe99b4eb232498d30cc167bfcec4133e2b9c6a80 IN  MoonBeans: Marketplace Dividends0 MOVR0.0007087925
0xf7c411baba7c83023676a3e5f4db1efecc8ffef59c5e5b1e3186d48bb85e4fd7Claim For All18827352022-05-23 13:43:361 day 14 hrs ago0x966fc6faf66d4ce6f64d94afc7c2c0e0fccfa5d5 IN  MoonBeans: Marketplace Dividends0 MOVR0.0001374875
0xce01c8ec9d8ee7de0929ff4e76fa8434f3479c73e83a0a6fe1d60a47767e6d7eClaim For All18818922022-05-23 10:33:301 day 18 hrs ago0xca19d045317224c3bb84af1a403f70bd3589ef56 IN  MoonBeans: Marketplace Dividends0 MOVR0.0001872375
0x0eb6f8e3ca00f7900a6c7d536dd083906977ee5c4946e2ae2dfc655d140f553dClaim For All18811952022-05-23 7:53:241 day 20 hrs ago0xd709422c6ec6d4d3afd5804993e1fe66c0674668 IN  MoonBeans: Marketplace Dividends0 MOVR0.00007449
0x243cb989c119494bf569e1e3bfc216c717d770f31f8b1c57e7899584fff95125Claim For All18802472022-05-23 4:14:002 days 24 mins ago0x09534cf342ad376ddba6c3e94490c3f161f42ed2 IN  MoonBeans: Marketplace Dividends0 MOVR0.0012822525
0x70778e566f13b6c453041964148528a75348600e348794eb8911421df71a0de8Claim For All18781782022-05-22 20:21:482 days 8 hrs ago0xfe99b4eb232498d30cc167bfcec4133e2b9c6a80 IN  MoonBeans: Marketplace Dividends0 MOVR0.0007087925
0x6bb79c1a41025b8bc8e4ba1df86449651f0f177e2c9c2d6279c31274c40697beClaim For All18780272022-05-22 19:45:482 days 8 hrs ago0xe0df0a570ea56e0a33e6c954dd8a19cb6d6fdfa7 IN  MoonBeans: Marketplace Dividends0 MOVR0.000185095
0x857d15bcebdd013942f1494a50d0b3256203c7446306170420c86622cf16dff9Claim For All18768302022-05-22 15:11:542 days 13 hrs ago0x01021955ad78c7c4e1e90a1d9dcbe456d00bf820 IN  MoonBeans: Marketplace Dividends0 MOVR0.0011372825
0x1495f7192864e73cc1b3c5fb57ac2c8cfd74d005ec9efd490c7fb9ccb6d26781Claim For All18768262022-05-22 15:11:062 days 13 hrs ago0x0c60d62d279ef076977361950edde935e024420f IN  MoonBeans: Marketplace Dividends0 MOVR0.00223236
0xcbfe724efe58385c930e650507684f6953840188ac09348d2401bdf189a13a06Claim For All18763302022-05-22 13:14:422 days 15 hrs ago0x41fc8dec3b4c3bcef44eeb1e2bf1ecb04eb22b3f IN  MoonBeans: Marketplace Dividends0 MOVR0.000185095
0xd821f346ee43033625e09873e0b534645c1c38102cdc193c0373b12a876d00c8Claim For All18729972022-05-22 0:22:543 days 4 hrs ago0xc2c068cc7038facb80173f52a1f2d817d9bb2d13 IN  MoonBeans: Marketplace Dividends0 MOVR0.000185095
0x0a770c1e4420d934ee2b03360a74eb97b2f4f0739ab77e3e43d324034b34a7c9Claim For All18722132022-05-21 21:21:423 days 7 hrs ago0x758c005ede7d3b5aa404fe60a1ad570bce0bdb76 IN  MoonBeans: Marketplace Dividends0 MOVR0.0002327025
0x9502b6b7df04e3e9ab65ee5129de76b96a2d19bc4b762fb17a5cc5639339f3d9Claim For All18715062022-05-21 18:36:243 days 10 hrs ago0xccdf7faf3e42b9cbfc529c2ba5fde4b2a6892b80 IN  MoonBeans: Marketplace Dividends0 MOVR0.000185095
0x38f7ae912d8920f6955aea319272d41cca53fd3aaaae7477f39d209b0b7bc859Claim For All18707532022-05-21 15:39:003 days 12 hrs ago0xfe99b4eb232498d30cc167bfcec4133e2b9c6a80 IN  MoonBeans: Marketplace Dividends0 MOVR0.0007087925
0x685c3717d752371d4292177c476796e118302e3aea1eb765db812b18e42cfc66Claim For All18699582022-05-21 12:30:483 days 16 hrs ago0xc7464b7d01aeeb13e14df8b41ed1e3fc6ef58a79 IN  MoonBeans: Marketplace Dividends0 MOVR0.0001374875
0x29df1b280bad9dbcd2cd21c9b67e4b53dcf215a0b3cc89e45f1c0251c71d5084Claim For All18698302022-05-21 12:01:243 days 16 hrs ago0x3013999a39d108e08193058054eac9db213a85be IN  MoonBeans: Marketplace Dividends0 MOVR0.0001374875
0x2c3ffa24866796065562a93481a3d9e56974e2fa694d0ff3be846de072b35a12Claim For All18693432022-05-21 10:06:303 days 18 hrs ago0x6e3fb067d2d9dbeac7f3615302fad7d1d228b724 IN  MoonBeans: Marketplace Dividends0 MOVR0.0010420625
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x61624b14c792ffa957b7a0858cbaca560af9f2adc5b9ca229c85ca1bd456864e18922332022-05-25 2:32:542 hrs 5 mins ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.04 MOVR
0x55a2ed71143e74ad98abdf643a8439edbe30dc30f38ec4de7c5eeca7e1899c8b18912422022-05-24 22:45:005 hrs 53 mins ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.05 MOVR
0xc5f49546e7c5cda786cb4a334a50eaf8cbe6b895281e908e3a3cd04465dd8fdc18894042022-05-24 15:34:0013 hrs 4 mins ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.0025 MOVR
0x6495f98826249047a2d95584523d68de9f6780625c1aaaf3b234f9801bb356ec18893912022-05-24 15:31:0013 hrs 7 mins ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.002 MOVR
0xe3b90e91171dc105f72f2fb9e649b842404f37ccd15b763f90fb0bf923f1eca418892942022-05-24 15:06:4813 hrs 31 mins ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.0048 MOVR
0xb964993ef94da7a27e1401907f29c3616d4d4829b3cdb5ba3d91b8c5b0533b5518889372022-05-24 13:42:5414 hrs 55 mins ago MoonBeans: Marketplace Dividends0xfe99b4eb232498d30cc167bfcec4133e2b9c6a800.001977056277056277 MOVR
0xb964993ef94da7a27e1401907f29c3616d4d4829b3cdb5ba3d91b8c5b0533b5518889372022-05-24 13:42:5414 hrs 55 mins ago MoonBeans: Marketplace Dividends0xfe99b4eb232498d30cc167bfcec4133e2b9c6a800.001977056277056277 MOVR
0xb964993ef94da7a27e1401907f29c3616d4d4829b3cdb5ba3d91b8c5b0533b5518889372022-05-24 13:42:5414 hrs 55 mins ago MoonBeans: Marketplace Dividends0xfe99b4eb232498d30cc167bfcec4133e2b9c6a800.001977056277056277 MOVR
0xb964993ef94da7a27e1401907f29c3616d4d4829b3cdb5ba3d91b8c5b0533b5518889372022-05-24 13:42:5414 hrs 55 mins ago MoonBeans: Marketplace Dividends0xfe99b4eb232498d30cc167bfcec4133e2b9c6a800.001977056277056277 MOVR
0xb964993ef94da7a27e1401907f29c3616d4d4829b3cdb5ba3d91b8c5b0533b5518889372022-05-24 13:42:5414 hrs 55 mins ago MoonBeans: Marketplace Dividends0xfe99b4eb232498d30cc167bfcec4133e2b9c6a800.001977056277056277 MOVR
0xb964993ef94da7a27e1401907f29c3616d4d4829b3cdb5ba3d91b8c5b0533b5518889372022-05-24 13:42:5414 hrs 55 mins ago MoonBeans: Marketplace Dividends0xfe99b4eb232498d30cc167bfcec4133e2b9c6a800.001977056277056277 MOVR
0xb964993ef94da7a27e1401907f29c3616d4d4829b3cdb5ba3d91b8c5b0533b5518889372022-05-24 13:42:5414 hrs 55 mins ago MoonBeans: Marketplace Dividends0xfe99b4eb232498d30cc167bfcec4133e2b9c6a800.001977056277056277 MOVR
0xb964993ef94da7a27e1401907f29c3616d4d4829b3cdb5ba3d91b8c5b0533b5518889372022-05-24 13:42:5414 hrs 55 mins ago MoonBeans: Marketplace Dividends0xfe99b4eb232498d30cc167bfcec4133e2b9c6a800.001977056277056277 MOVR
0xb964993ef94da7a27e1401907f29c3616d4d4829b3cdb5ba3d91b8c5b0533b5518889372022-05-24 13:42:5414 hrs 55 mins ago MoonBeans: Marketplace Dividends0xfe99b4eb232498d30cc167bfcec4133e2b9c6a800.001977056277056277 MOVR
0xb964993ef94da7a27e1401907f29c3616d4d4829b3cdb5ba3d91b8c5b0533b5518889372022-05-24 13:42:5414 hrs 55 mins ago MoonBeans: Marketplace Dividends0xfe99b4eb232498d30cc167bfcec4133e2b9c6a800.001977056277056277 MOVR
0xb964993ef94da7a27e1401907f29c3616d4d4829b3cdb5ba3d91b8c5b0533b5518889372022-05-24 13:42:5414 hrs 55 mins ago MoonBeans: Marketplace Dividends0xfe99b4eb232498d30cc167bfcec4133e2b9c6a800.001977056277056277 MOVR
0xb964993ef94da7a27e1401907f29c3616d4d4829b3cdb5ba3d91b8c5b0533b5518889372022-05-24 13:42:5414 hrs 55 mins ago MoonBeans: Marketplace Dividends0xfe99b4eb232498d30cc167bfcec4133e2b9c6a800.001977056277056277 MOVR
0xb964993ef94da7a27e1401907f29c3616d4d4829b3cdb5ba3d91b8c5b0533b5518889372022-05-24 13:42:5414 hrs 55 mins ago MoonBeans: Marketplace Dividends0xfe99b4eb232498d30cc167bfcec4133e2b9c6a800.001977056277056277 MOVR
0xee0ca1772dca748fc31ac87ba477595c7b29507115abe816c69fdd1e5133f29818888502022-05-24 13:23:0015 hrs 15 mins ago MoonBeans: Marketplace V3 MoonBeans: Marketplace Dividends0.07 MOVR
0xb1bb05936ca6a799ca0ae54594f200338eef318fe45088685a7b37929bf1d0f318883652022-05-24 11:25:2417 hrs 13 mins ago MoonBeans: Marketplace Dividends0x6e3fb067d2d9dbeac7f3615302fad7d1d228b7240.012808333333333333 MOVR
0xb1bb05936ca6a799ca0ae54594f200338eef318fe45088685a7b37929bf1d0f318883652022-05-24 11:25:2417 hrs 13 mins ago MoonBeans: Marketplace Dividends0x6e3fb067d2d9dbeac7f3615302fad7d1d228b7240.012808333333333333 MOVR
0xb1bb05936ca6a799ca0ae54594f200338eef318fe45088685a7b37929bf1d0f318883652022-05-24 11:25:2417 hrs 13 mins ago MoonBeans: Marketplace Dividends0x6e3fb067d2d9dbeac7f3615302fad7d1d228b7240.012808333333333333 MOVR
0xb1bb05936ca6a799ca0ae54594f200338eef318fe45088685a7b37929bf1d0f318883652022-05-24 11:25:2417 hrs 13 mins ago MoonBeans: Marketplace Dividends0x6e3fb067d2d9dbeac7f3615302fad7d1d228b7240.012808333333333333 MOVR
0xb1bb05936ca6a799ca0ae54594f200338eef318fe45088685a7b37929bf1d0f318883652022-05-24 11:25:2417 hrs 13 mins ago MoonBeans: Marketplace Dividends0x6e3fb067d2d9dbeac7f3615302fad7d1d228b7240.012808333333333333 MOVR
0xb1bb05936ca6a799ca0ae54594f200338eef318fe45088685a7b37929bf1d0f318883652022-05-24 11:25:2417 hrs 13 mins ago MoonBeans: Marketplace Dividends0x6e3fb067d2d9dbeac7f3615302fad7d1d228b7240.012808333333333333 MOVR
[ Download CSV Export 
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.