Contract 0x933fcdf708481c57e9fd82f6baa084f42e98b60e

Contract Overview

Moonwell Artemis: Claims Contract V1
Balance:
0 GLMR

GLMR Value:
$0.00

Token:
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x7979abc73c07913f4cc3de95d3f9a209567a1adebfd0f7e9e48cc782f6a04071Claim45436952023-09-30 2:51:126 hrs 20 mins ago0xc1992a615f314d5a35c0b350d27390abac6ac5ef IN  Moonwell Artemis: Claims Contract V10 GLMR0.017956598983
0x25b685a86eb54c84b8ae0ac344a91481393c657ffc8894b2046ae46fb845d668Claim45436752023-09-30 2:47:066 hrs 24 mins ago0x75faa79397e4e5212dc994d02b8d181b1c19f326 IN  Moonwell Artemis: Claims Contract V10 GLMR0.022583776773
0x503aef787c263b5cc11dbca8a42312ccc0893b1cf8add2d9a49ffb80b1e83897Claim45391332023-09-29 11:25:3021 hrs 46 mins ago0xba3bd4085324c4dcfaad81be88082cb949267a19 IN  Moonwell Artemis: Claims Contract V10 GLMR0.025625496
0xfdafc37e0b917d30c0dc6962b10b5aefae67dd20b615c2adba7db4060f15b26dClaim45390652023-09-29 11:11:4821 hrs 59 mins ago0x89ca6647fd3570e6695cc043ddbc875b1b2f274e IN  Moonwell Artemis: Claims Contract V10 GLMR0.012759802
0x8011c26e75da359500df6bf78ddb43fe365c9cd57f0bacdda4ada00bfd492c7aClaim45390492023-09-29 11:08:3622 hrs 3 mins ago0x050981d714932dc42bed0a436eee53a20fe419d1 IN  Moonwell Artemis: Claims Contract V10 GLMR0.020996805
0x70a505f0a1e9a4316ff80f2d46d6335add4a08e914b7848b69f7061e67f9a9e0Claim45366682023-09-29 3:03:541 day 6 hrs ago0x46c183e4096a9dff32b3e1f8015a3c17891a3925 IN  Moonwell Artemis: Claims Contract V10 GLMR0.023403270079
0x4fbe8557435b617791c7c388addcd31ab03bce6a6ee9eb8951418efe446fcad0Claim45339772023-09-28 17:57:301 day 15 hrs ago0x1cf110a556049a8e446297a0d120565a2556f78c IN  Moonwell Artemis: Claims Contract V10 GLMR0.0171583335
0xe2e1ac69a37067ce95cba2b2c6e45bef23ebb418aba6577ef10f67f145faf899Claim45286752023-09-28 0:06:482 days 9 hrs ago0x35afe74426c071a5ae2a0ded405837e9c4bb89ab IN  Moonwell Artemis: Claims Contract V10 GLMR0.02097875175
0x3c18fe920f625d4a57132032eb9ec5e5cc51c965e34bb58c6ee2a5d1c7331791Claim45272302023-09-27 19:13:302 days 13 hrs ago0x680a37155da8199a7d90e1e61af2eb0971287ad4 IN  Moonwell Artemis: Claims Contract V10 GLMR0.02482854384
0xe8e9fec55e2da82dedf308f6b34188045cb1a0fc8d38d22c246358906106f0a4Claim45266762023-09-27 17:20:482 days 15 hrs ago0x393cacdc66b45aac11437b732bc11488c2850566 IN  Moonwell Artemis: Claims Contract V10 GLMR0.029292606051
0xbb92835bce646d50fef4415ebcd473f08c0507707277252e3e2bf12a4af9d282Claim45265442023-09-27 16:53:482 days 16 hrs ago0x06499827a8e96d75fca69bc0ef39a87829a7125f IN  Moonwell Artemis: Claims Contract V10 GLMR0.024227102687
0xa6b7f72d8a33cf22775c15780805c290d3d5adc723a43c9cbc45a90bb8e1b913Claim45259562023-09-27 14:53:482 days 18 hrs ago0xeb64dd4609b332f8292c1cd10b87889a88c81655 IN  Moonwell Artemis: Claims Contract V10 GLMR0.033042771159
0x7f5d4cc8399b570cf23d554be31d6a2541bba99234c4057866f990ce64d00b3cClaim45244682023-09-27 9:54:062 days 23 hrs ago0xdc6cba138ebf4461c5764eec395afc38d6fd7075 IN  Moonwell Artemis: Claims Contract V10 GLMR0.030737096707
0x07df6a006eeed52279c90c1ae7c12181c1f0a30dd7c1661b741045d36f44307fClaim45211942023-09-26 22:48:063 days 10 hrs ago0x03bd0f1b32690e77801a2afcc91c2f25f2d33e80 IN  Moonwell Artemis: Claims Contract V10 GLMR0.135808125
0x221517f942b3cc9b1f5ce51a11e4727758daf71cbe61009c6344314092d9cfdbClaim45211362023-09-26 22:36:003 days 10 hrs ago0x6a4d12d94853015cef802aba91f6ce170b97676d IN  Moonwell Artemis: Claims Contract V10 GLMR0.040415
0x09cfffdece629565893aaf1feec9bfea283d1e8e6229b581bbb532035524c3fdClaim45211232023-09-26 22:33:243 days 10 hrs ago0x3c0c014abc45510933152bdb6cc9b57177577631 IN  Moonwell Artemis: Claims Contract V10 GLMR0.040458020664
0x26130a3566d6e6766e9b27a8ae8565e5d89eb076db5e911945c15ed29ddb03b5Claim45211212023-09-26 22:32:543 days 10 hrs ago0x5009bf1c9820dba484183b4b2621082d209d96ae IN  Moonwell Artemis: Claims Contract V10 GLMR0.135986585214
0x7238bd167480861f6e73a8db17ca421b1a38d8c5ed31a109b616c2056beff93aClaim45210482023-09-26 22:18:183 days 10 hrs ago0x3c0c014abc45510933152bdb6cc9b57177577631 IN  Moonwell Artemis: Claims Contract V10 GLMR0.135889600645
0x6b5783f57e11b5d357dc240662f5805de3b04642de75a9c2dc26ca5bcc47f2d5Claim45210432023-09-26 22:17:183 days 10 hrs ago0x6a4d12d94853015cef802aba91f6ce170b97676d IN  Moonwell Artemis: Claims Contract V10 GLMR0.135841647925
0x63d5cd09688efc785fa00e78bc086d52799f632a2a83b33932653e9bdfe28dd5Claim45206732023-09-26 21:02:483 days 12 hrs ago0xecd55317700732fcfe12c0a59aad90c4ace8722a IN  Moonwell Artemis: Claims Contract V10 GLMR0.022558492
0x8c553b7fc34025e242b4c5c8aa9d515264353ea9475f0f3e6a99b6cad7aea812Claim45188212023-09-26 14:45:543 days 18 hrs ago0xd4f8943597fafe570a57f9381ccbea7093309b93 IN  Moonwell Artemis: Claims Contract V10 GLMR0.028624741434
0x65167f161030b5eab6713621d48302469d26977cc4804f00054ff679b6e130d0Claim45181702023-09-26 12:33:363 days 20 hrs ago0x15875a578bad5a914cf379258136a87aeba566af IN  Moonwell Artemis: Claims Contract V10 GLMR0.017864139846
0x058360a069cd15c95ad31d8d74c4bd6300e9db3f741dfb6a2d52613e7c2e4caeClaim45136912023-09-25 21:23:484 days 11 hrs ago0xd626ea9ef013ee16f315880148c425fed0280e4a IN  Moonwell Artemis: Claims Contract V10 GLMR0.10600657016
0xc6424003b2164e515361a5e94a56cd681f62313e24fffb95d476b54a6953a629Claim45098562023-09-25 8:22:125 days 49 mins ago0x3cf7d9e137044cd655357d99eaa4327bc9455854 IN  Moonwell Artemis: Claims Contract V10 GLMR0.114356703442
0xf9169878c798e86f89ed4b41185133eebcb89b64f2621a177297b15d858fe2c9Claim45089772023-09-25 5:20:425 days 3 hrs ago0x725fdc1287037ec277d367a1f2f0c8a3f5323cb0 IN  Moonwell Artemis: Claims Contract V10 GLMR0.053484049528
[ Download CSV Export 
Parent Txn Hash Block From To Value
Index Block
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
TokenSaleDistributorProxy

Compiler Version
v0.8.10+commit.fc410830

Optimization Enabled:
Yes with 999999 runs

Other Settings:
default evmVersion
File 1 of 3 : TokenSaleDistributorProxy.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.10;

import "./ReentrancyGuard.sol";
import "./TokenSaleDistributorProxyStorage.sol";

contract TokenSaleDistributorProxy is ReentrancyGuard, TokenSaleDistributorProxyStorage {
    /** The admin was changed  */
    event AdminChanged(address newAdmin);

    /** The implementation was changed */
    event ImplChanged(address newImpl);

    constructor() public {
        admin = msg.sender;
    }

    /**
     * Request a new admin to be set for the contract.
     *
     * @param newAdmin New admin address
     */
    function setPendingAdmin(address newAdmin) public adminOnly {
        require(newAdmin != address(0), "Cannot set to zero address");
        pendingAdmin = newAdmin;
    }

    /**
     * Accept admin transfer from the current admin to the new.
     */
    function acceptPendingAdmin() public {
        require(msg.sender == pendingAdmin && pendingAdmin != address(0), "Caller must be the pending admin");

        admin = pendingAdmin;
        pendingAdmin = address(0);

        emit AdminChanged(admin);
    }

    /**
     * Request a new implementation to be set for the contract.
     *
     * @param newImplementation New contract implementation contract address
     */
    function setPendingImplementation(address newImplementation) public adminOnly {
        require(newImplementation != address(0), "Cannot set to zero address");
        pendingImplementation = newImplementation;
    }

    /**
     * Accept pending implementation change
     */
    function acceptPendingImplementation() public {
        require(msg.sender == pendingImplementation && pendingImplementation != address(0), "Only the pending implementation contract can call this");

        implementation = pendingImplementation;
        pendingImplementation = address(0);

        emit ImplChanged(implementation);
    }

    fallback() payable external {
        (bool success, ) = implementation.delegatecall(msg.data);

        assembly {
            let free_mem_ptr := mload(0x40)
            let size := returndatasize()
            returndatacopy(free_mem_ptr, 0, size)

            switch success
            case 0 { revert(free_mem_ptr, size) }
            default { return(free_mem_ptr, size) }
        }
    }

    /********************************************************
     *                                                      *
     *                      MODIFIERS                       *
     *                                                      *
     ********************************************************/

    modifier adminOnly {
        require(msg.sender == admin, "admin only");
        _;
    }
}

File 2 of 3 : ReentrancyGuard.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.10;

/**
 * @dev Contract module that helps prevent reentrant calls to a function.
 *
 * Inheriting from `ReentrancyGuard` will make the {nonReentrant} modifier
 * available, which can be applied to functions to make sure there are no nested
 * (reentrant) calls to them.
 *
 * Note that because there is a single `nonReentrant` guard, functions marked as
 * `nonReentrant` may not call one another. This can be worked around by making
 * those functions `private`, and then adding `external` `nonReentrant` entry
 * points to them.
 *
 * TIP: If you would like to learn more about reentrancy and alternative ways
 * to protect against it, check out our blog post
 * https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul].
 */
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() public {
        _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;
    }
}

File 3 of 3 : TokenSaleDistributorProxyStorage.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.10;

contract TokenSaleDistributorProxyStorage {
    // Current contract admin address
    address public admin;

    // Requested new admin for the contract
    address public pendingAdmin;

    // Current contract implementation address
    address public implementation;

    // Requested new contract implementation address
    address public pendingImplementation;
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 999999
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "libraries": {}
}

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newImpl","type":"address"}],"name":"ImplChanged","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"acceptPendingAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"acceptPendingImplementation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"implementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pendingAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pendingImplementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"setPendingAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"name":"setPendingImplementation","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b506001600081905580546001600160a01b031916331790556107cf806100376000396000f3fe60806040526004361061007b5760003560e01c80634dd18bf51161004e5780634dd18bf5146101be5780635c60da1b146101de578063709920c11461020b578063f851a440146102205761007b565b806309ed43c91461010457806316ec205c14610126578063267822471461013b578063396f7b2314610191575b60035460405160009173ffffffffffffffffffffffffffffffffffffffff16906100a8908390369061074c565b600060405180830381855af49150503d80600081146100e3576040519150601f19603f3d011682016040523d82523d6000602084013e6100e8565b606091505b505090506040513d806000833e828015610100578183f35b8183fd5b34801561011057600080fd5b5061012461011f36600461075c565b61024d565b005b34801561013257600080fd5b50610124610397565b34801561014757600080fd5b506002546101689073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b34801561019d57600080fd5b506004546101689073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101ca57600080fd5b506101246101d936600461075c565b6104e5565b3480156101ea57600080fd5b506003546101689073ffffffffffffffffffffffffffffffffffffffff1681565b34801561021757600080fd5b5061012461062a565b34801561022c57600080fd5b506001546101689073ffffffffffffffffffffffffffffffffffffffff1681565b60015473ffffffffffffffffffffffffffffffffffffffff1633146102d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f61646d696e206f6e6c790000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8116610350576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f43616e6e6f742073657420746f207a65726f206164647265737300000000000060448201526064016102ca565b600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60045473ffffffffffffffffffffffffffffffffffffffff16331480156103d5575060045473ffffffffffffffffffffffffffffffffffffffff1615155b610461576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4f6e6c79207468652070656e64696e6720696d706c656d656e746174696f6e2060448201527f636f6e74726163742063616e2063616c6c20746869730000000000000000000060648201526084016102ca565b600480546003805473ffffffffffffffffffffffffffffffffffffffff83167fffffffffffffffffffffffff000000000000000000000000000000000000000091821681179092559091169091556040519081527f71c6652673eb67790348b38b966a87b710bf7596bafa96d43f09f9c6872bd5a1906020015b60405180910390a1565b60015473ffffffffffffffffffffffffffffffffffffffff163314610566576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f61646d696e206f6e6c790000000000000000000000000000000000000000000060448201526064016102ca565b73ffffffffffffffffffffffffffffffffffffffff81166105e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f43616e6e6f742073657420746f207a65726f206164647265737300000000000060448201526064016102ca565b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60025473ffffffffffffffffffffffffffffffffffffffff1633148015610668575060025473ffffffffffffffffffffffffffffffffffffffff1615155b6106ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f43616c6c6572206d757374206265207468652070656e64696e672061646d696e60448201526064016102ca565b600280546001805473ffffffffffffffffffffffffffffffffffffffff83167fffffffffffffffffffffffff000000000000000000000000000000000000000091821681179092559091169091556040519081527f7ce7ec0b50378fb6c0186ffb5f48325f6593fcb4ca4386f21861af3129188f5c906020016104db565b8183823760009101908152919050565b60006020828403121561076e57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461079257600080fd5b939250505056fea2646970667358221220c7718ecb1781452204cf8236d1331667546e394d581d6b9fb05d4a952f83fd5664736f6c634300080a0033

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.