Contract 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a 6

 

Contract Overview

Balance:
4,626,894.694577631399421605 MATIC

MATIC Value:
$2,264,402.26 (@ $0.49/MATIC)

Token:
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xe38c94c644c9704ef53450c2c248f9193d5841d6c51adde54673d9c672be8931Deposit(pending)2022-07-02 23:20:052 secs ago0x3b7101936285cf92e9550cc1ad209f02b2e161d0 IN 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a30 MATIC(Pending)
0xc6293a1a7d78b66bac76c2b5d0097fc925ae022b048b3f78e6955a786231f2e2Claim All Reward302681532022-07-02 23:19:4720 secs ago0x285e96b31cdb6a062466e89b0f4570e34e4783c1 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0 MATIC0.006921501593 32.084540153
0x0c08245c639abc48b339cbc556c0e3acdadab8d038ed0abfd866efefb4cba758Claim All Reward302681442022-07-02 23:19:2938 secs ago0x3b7101936285cf92e9550cc1ad209f02b2e161d0 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0 MATIC0.00597909434335.471819027
0x10e3ca40a235e738b6a004fc677d04e5a82c1fdf676c4c89c12744f61f80f6d4Deposit302681412022-07-02 23:19:2344 secs ago0x9ec3a57d560983ff81e5bc6c8a6cc4e1b50e2df3 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a4 MATIC0.021192330163 33.100758256
0xfac6372ce4246c402354128b192e41afbcd2b43be7c883793b6068bcf325111bDeposit302681382022-07-02 23:19:1750 secs ago0x04c95263966a5d0254863d6516687663e875f7f6 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a3.6 MATIC0.29243695277934.605212323
0xfef29acae5468dad0327851b753eece45b10f9aec52794652aa907e158d38184Claim All Reward302681202022-07-02 23:18:411 min ago0x04c95263966a5d0254863d6516687663e875f7f6 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0 MATIC0.00505500625833.375410235
0xfde3c50a41f9e9b204786972491e5ef4258c1d295d3b0a4421b293c84c0958e1Claim All Reward302681202022-07-02 23:18:411 min ago0x9ec3a57d560983ff81e5bc6c8a6cc4e1b50e2df3 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0 MATIC0.039844596971 36.484518734
0x5809c64046f99ef88c0b968e4c7fdfee172feb1ff84f1b3c515531150cca182cClaim All Reward302681022022-07-02 23:18:052 mins ago0xb7ac1332e1d957b85805f9ffa7657de0cd9fa6a2 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0 MATIC0.007797086009 32.640042573
0x56cb20b113ad338cf1277db3186d9837a618d7e97fad07dda18e2c3a242dcb1dClaim All Reward302680902022-07-02 23:17:372 mins ago0x863c5bf79bb048958f35636cc3455cd61766c36a IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0 MATIC0.002971818378 34.084003842
0x5af20d636ad06d961ce434a4aa2079ec4e850fa2eb6419b20a8cea23cc166832Deposit302680892022-07-02 23:17:352 mins ago0xc74e9b897dc71bb739ec7ad43ed975095022156e IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a98 MATIC0.055295754683 31.721068757
0xd6888c165c3e1118faaf4c266d66be22cd8d1d32e59fadfc2eca6c2599b93269Claim All Reward302680772022-07-02 23:17:112 mins ago0x4818903f8e3001074404ce6ceb84f36804168df1 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0 MATIC0.006778718945 33.951311959
0x9c2044f95ed11d94608f1e75aebf2dcf65dbe84374bc0f517baab17d1f8e38d6Deposit302680132022-07-02 23:14:595 mins ago0x0831306cb1913e7ad2c421cb5c857e6bed29523d IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a515 MATIC0.119106400504 35.295731966
0x3de6bc2e6f50ab614fbe293670c892bb97e4b2ef0e116683c2715d01135ec70bDeposit302679632022-07-02 23:13:156 mins ago0xd8a3480237479a36098982a73c500ff42df518d0 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a1.04 MATIC0.018554048175 33.241629461
0x1d23ddeba366e7a315372532f58ce8b3bc63e1132874cde950fa3cc3fd7c104cDeposit302679582022-07-02 23:13:057 mins ago0x9ffee266c4520d7dd57e07889c52f7b8e86c5ce6 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a25 MATIC0.22518090483935.361978259
0x820cf0d7352c252cc6e6d16dca051e2a5497089ef32cb708b6b829da7610434eClaim All Reward302679402022-07-02 23:12:297 mins ago0xd8a3480237479a36098982a73c500ff42df518d0 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0 MATIC0.011535770749 34.23615806
0xbcd0a600fe0fd075d6738813310375a38e6ad65f47a93ecdd87520c20b12a049Withdraw Capital302679402022-07-02 23:12:297 mins ago0xd6b67dcd6c0b72aaf974267028669740d5050a4a IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0 MATIC0.001725286801 34.403900484
0xcf8f78d6dc10d280d75bc594958473607f75e57dd4ccc3dae85eca66274c539aClaim All Reward302679372022-07-02 23:12:237 mins ago0x9ffee266c4520d7dd57e07889c52f7b8e86c5ce6 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0 MATIC0.013463643735.671895982
0x10837a14536462b4d8f59f968740ae593c968ae1d84650dfeab82cbe9033da46Claim All Reward302679212022-07-02 23:11:518 mins ago0xd6b67dcd6c0b72aaf974267028669740d5050a4a IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0 MATIC0.003446776918 36.316649827
0xf9df13a46b1e73c2b36ea6c2205bd9dbc0d99e8b164ce5f21ec16de8e69cbb7fDeposit302679142022-07-02 23:11:378 mins ago0x49f19f85cea430026a5b4cb0a0d8ffde6790ad18 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a11 MATIC0.15585720082935.688276978
0x6e0f43fff84f438eff2170ad830fe96c0abe6fe5edee3b949bce97fa8374ebf1Claim All Reward302679102022-07-02 23:11:298 mins ago0x49f19f85cea430026a5b4cb0a0d8ffde6790ad18 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0 MATIC0.06401081832135.48346269
0x5850ea16c8e1d6f00f3667b1aa3fab7a5e97e4a0eddab6ed1a81884fc6bd012eDeposit302678932022-07-02 23:10:519 mins ago0x0c6f13166c1274a54ff7861c2337b71e54c2b215 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a115 MATIC0.141101190952 34.411382768
0xac2cabefa014e42029592a771379ef0836a1638a33f37ea33bcb09c798e6e571Claim All Reward302678792022-07-02 23:10:239 mins ago0x0c6f13166c1274a54ff7861c2337b71e54c2b215 IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0 MATIC0.02236248142 37.124285189
0xa17ea6646ceb59d69d7f787dc912c61fa1500f79aa486ce97e2547f821fc160cClaim All Reward302678692022-07-02 23:10:0310 mins ago0x0831306cb1913e7ad2c421cb5c857e6bed29523d IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0 MATIC0.008470119314 33.890373247
0xa3a1a0d224e94cd11cef1498d6a6f30bfd2bf17c56e624b5cbd25f131242f7a9Deposit302678282022-07-02 23:08:3711 mins ago0x3148aab7f7e660c367c42c7e1ca0d78d4f6a457c IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a2,500 MATIC0.020503233233 37.597707879
0x0b6a2ff709b4da609686dd375798be7c1f50ffdc2e682b1694b124ae79b5355cClaim All Reward302678022022-07-02 23:07:4512 mins ago0xacbe5c7215c9a84615d542adab212bb31d1f513b IN  0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0 MATIC0.002889798591 40.630428422
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0xc6293a1a7d78b66bac76c2b5d0097fc925ae022b048b3f78e6955a786231f2e2302681532022-07-02 23:19:4720 secs ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x285e96b31cdb6a062466e89b0f4570e34e4783c113.545540733159722224 MATIC
0x0c08245c639abc48b339cbc556c0e3acdadab8d038ed0abfd866efefb4cba758302681442022-07-02 23:19:2938 secs ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x3b7101936285cf92e9550cc1ad209f02b2e161d036.209568695972222222 MATIC
0x10e3ca40a235e738b6a004fc677d04e5a82c1fdf676c4c89c12744f61f80f6d4302681412022-07-02 23:19:2344 secs ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x89c02a80bccc66899481f656be0d5ac9bb62dc240.12 MATIC
0xfac6372ce4246c402354128b192e41afbcd2b43be7c883793b6068bcf325111b302681382022-07-02 23:19:1750 secs ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x89c02a80bccc66899481f656be0d5ac9bb62dc240.108 MATIC
0xfef29acae5468dad0327851b753eece45b10f9aec52794652aa907e158d38184302681202022-07-02 23:18:411 min ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x04c95263966a5d0254863d6516687663e875f7f60.664038659375 MATIC
0xfde3c50a41f9e9b204786972491e5ef4258c1d295d3b0a4421b293c84c0958e1302681202022-07-02 23:18:411 min ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x9ec3a57d560983ff81e5bc6c8a6cc4e1b50e2df34.139473417013888896 MATIC
0x5809c64046f99ef88c0b968e4c7fdfee172feb1ff84f1b3c515531150cca182c302681022022-07-02 23:18:052 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0xb7ac1332e1d957b85805f9ffa7657de0cd9fa6a212.887823998263888888 MATIC
0x56cb20b113ad338cf1277db3186d9837a618d7e97fad07dda18e2c3a242dcb1d302680902022-07-02 23:17:372 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x863c5bf79bb048958f35636cc3455cd61766c36a3.504236145833333334 MATIC
0x5af20d636ad06d961ce434a4aa2079ec4e850fa2eb6419b20a8cea23cc166832302680892022-07-02 23:17:352 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x89c02a80bccc66899481f656be0d5ac9bb62dc242.94 MATIC
0xd6888c165c3e1118faaf4c266d66be22cd8d1d32e59fadfc2eca6c2599b93269302680772022-07-02 23:17:112 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x4818903f8e3001074404ce6ceb84f36804168df119.932938881944444446 MATIC
0x9c2044f95ed11d94608f1e75aebf2dcf65dbe84374bc0f517baab17d1f8e38d6302680132022-07-02 23:14:595 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x89c02a80bccc66899481f656be0d5ac9bb62dc2415.45 MATIC
0x3de6bc2e6f50ab614fbe293670c892bb97e4b2ef0e116683c2715d01135ec70b302679632022-07-02 23:13:156 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x89c02a80bccc66899481f656be0d5ac9bb62dc240.0312 MATIC
0x1d23ddeba366e7a315372532f58ce8b3bc63e1132874cde950fa3cc3fd7c104c302679582022-07-02 23:13:057 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x89c02a80bccc66899481f656be0d5ac9bb62dc240.75 MATIC
0x820cf0d7352c252cc6e6d16dca051e2a5497089ef32cb708b6b829da7610434e302679402022-07-02 23:12:297 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0xd8a3480237479a36098982a73c500ff42df518d01.367971098159722222 MATIC
0xbcd0a600fe0fd075d6738813310375a38e6ad65f47a93ecdd87520c20b12a049302679402022-07-02 23:12:297 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0xd6b67dcd6c0b72aaf974267028669740d5050a4a1,164.007679166666666667 MATIC
0xcf8f78d6dc10d280d75bc594958473607f75e57dd4ccc3dae85eca66274c539a302679372022-07-02 23:12:237 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x9ffee266c4520d7dd57e07889c52f7b8e86c5ce624.333845048611111111 MATIC
0x10837a14536462b4d8f59f968740ae593c968ae1d84650dfeab82cbe9033da46302679212022-07-02 23:11:518 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0xd6b67dcd6c0b72aaf974267028669740d5050a4a353.018535680555555555 MATIC
0xf9df13a46b1e73c2b36ea6c2205bd9dbc0d99e8b164ce5f21ec16de8e69cbb7f302679142022-07-02 23:11:378 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x89c02a80bccc66899481f656be0d5ac9bb62dc240.33 MATIC
0x6e0f43fff84f438eff2170ad830fe96c0abe6fe5edee3b949bce97fa8374ebf1302679102022-07-02 23:11:298 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x49f19f85cea430026a5b4cb0a0d8ffde6790ad1811.341922610555555555 MATIC
0x5850ea16c8e1d6f00f3667b1aa3fab7a5e97e4a0eddab6ed1a81884fc6bd012e302678932022-07-02 23:10:519 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x89c02a80bccc66899481f656be0d5ac9bb62dc243.45 MATIC
0xac2cabefa014e42029592a771379ef0836a1638a33f37ea33bcb09c798e6e571302678792022-07-02 23:10:239 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x0c6f13166c1274a54ff7861c2337b71e54c2b215114.855259304861111115 MATIC
0xa17ea6646ceb59d69d7f787dc912c61fa1500f79aa486ce97e2547f821fc160c302678692022-07-02 23:10:0310 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x0831306cb1913e7ad2c421cb5c857e6bed29523d647.02882559722222222 MATIC
0xa3a1a0d224e94cd11cef1498d6a6f30bfd2bf17c56e624b5cbd25f131242f7a9302678282022-07-02 23:08:3711 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x89c02a80bccc66899481f656be0d5ac9bb62dc2475 MATIC
0x0b6a2ff709b4da609686dd375798be7c1f50ffdc2e682b1694b124ae79b5355c302678022022-07-02 23:07:4512 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0xacbe5c7215c9a84615d542adab212bb31d1f513b238.556507100694444445 MATIC
0x244cdadcac083b31319ebad151987076af262c0fbb9e4348aeeca6261e2c3e81302677802022-07-02 23:07:0113 mins ago 0x0dc733a0c086a113a88ddab7c4160dc097b6f89a0x89c02a80bccc66899481f656be0d5ac9bb62dc241.29 MATIC
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
StableFund

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at polygonscan.com on 2022-04-05
*/

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

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() {
        _transferOwnership(_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 {
        _transferOwnership(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"
        );
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Internal function without access restriction.
     */
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

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 making 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;
    }
}

library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, with an overflow flag.
     *
     * _Available since v3.4._
     */
    function tryAdd(uint256 a, uint256 b)
        internal
        pure
        returns (bool, uint256)
    {
        unchecked {
            uint256 c = a + b;
            if (c < a) return (false, 0);
            return (true, c);
        }
    }

    /**
     * @dev Returns the substraction of two unsigned integers, with an overflow flag.
     *
     * _Available since v3.4._
     */
    function trySub(uint256 a, uint256 b)
        internal
        pure
        returns (bool, uint256)
    {
        unchecked {
            if (b > a) return (false, 0);
            return (true, a - b);
        }
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, with an overflow flag.
     *
     * _Available since v3.4._
     */
    function tryMul(uint256 a, uint256 b)
        internal
        pure
        returns (bool, uint256)
    {
        unchecked {
            // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
            // benefit is lost if 'b' is also tested.
            // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
            if (a == 0) return (true, 0);
            uint256 c = a * b;
            if (c / a != b) return (false, 0);
            return (true, c);
        }
    }

    /**
     * @dev Returns the division of two unsigned integers, with a division by zero flag.
     *
     * _Available since v3.4._
     */
    function tryDiv(uint256 a, uint256 b)
        internal
        pure
        returns (bool, uint256)
    {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a / b);
        }
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag.
     *
     * _Available since v3.4._
     */
    function tryMod(uint256 a, uint256 b)
        internal
        pure
        returns (bool, uint256)
    {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a % b);
        }
    }

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

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

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `*` operator.
     *
     * Requirements:
     *
     * - Multiplication cannot overflow.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        return a * b;
    }

    /**
     * @dev Returns the integer division of two unsigned integers, reverting on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator.
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

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

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * CAUTION: This function is deprecated because it requires allocating memory for the error
     * message unnecessarily. For custom revert reasons use {trySub}.
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        unchecked {
            require(b <= a, errorMessage);
            return a - b;
        }
    }

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

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * reverting with custom message when dividing by zero.
     *
     * CAUTION: This function is deprecated because it requires allocating memory for the error
     * message unnecessarily. For custom revert reasons use {tryMod}.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a % b;
        }
    }
}

contract StableFund is Ownable, ReentrancyGuard {
    using SafeMath for uint256;

    uint256 public developerFee = 300; // 300 : 3 %. 10000 : 100 %
    uint256 public rewardPeriod = 1 days;
    uint256 public withdrawPeriod = 4 weeks;
    uint256 public apr = 150; // 150 : 1.5 %. 10000 : 100 %
    uint256 public percentRate = 10000;
    address payable private devWallet;
    uint256 public _currentDepositID = 0;
    address[] public investors;

    struct DepositStruct {
        address investor;
        uint256 depositAmount;
        uint256 depositAt; // deposit timestamp
        uint256 claimedAmount; // claimed matic amount
        bool state; // withdraw capital state. false if withdraw capital
    }

    // mapping from depost Id to DepositStruct
    mapping(uint256 => DepositStruct) public depositState;
    // mapping form investor to deposit IDs
    mapping(address => uint256[]) public ownedDeposits;

    constructor(address payable _devWallet) {
        devWallet = _devWallet;
    }

    // deposit funds by user, add pool
    function deposit() external payable {
        require(msg.value > 0, "you can deposit more than 0 matic");

        uint256 _id = _getNextDepositID();
        _incrementDepositID();

        uint256 depositFee = (msg.value * developerFee).div(percentRate);
        // transfer 3% fee to dev wallet
        (bool success, ) = devWallet.call{value: depositFee}("");
        require(success, "Failed to send fee to the devWallet");

        depositState[_id].investor = msg.sender;
        depositState[_id].depositAmount = msg.value - depositFee;
        depositState[_id].depositAt = block.timestamp;
        depositState[_id].state = true;

        ownedDeposits[msg.sender].push(_id);
        if(!existInInvestors(msg.sender)) investors.push(msg.sender);
    }

    function removeInvestor(uint index) public{
        investors[index] = investors[investors.length - 1];
        investors.pop();
    }

    // claim reward by deposit id
    function claimReward(uint256 id) public nonReentrant {
        require(
            depositState[id].investor == msg.sender,
            "only investor of this id can claim reward"
        );

        require(depositState[id].state, "you already withdrawed capital");

        uint256 claimableReward = getClaimableReward(id);
        require(claimableReward > 0, "your reward is zero");

        require(
            claimableReward <= address(this).balance,
            "no enough matic in pool"
        );

        // transfer reward to the user
        (bool success, ) = msg.sender.call{value: claimableReward}("");
        require(success, "Failed to claim reward");

        depositState[id].claimedAmount += claimableReward;
    }

    // claim all rewards of user
    function claimAllReward() public nonReentrant {
        require(ownedDeposits[msg.sender].length > 0, "you can deposit once at least");

        uint256 allClaimableReward;
        for(uint256 i; i < ownedDeposits[msg.sender].length; i ++) {
            uint256 claimableReward = getClaimableReward(ownedDeposits[msg.sender][i]);
            allClaimableReward += claimableReward;
            depositState[ownedDeposits[msg.sender][i]].claimedAmount += claimableReward;
        }

        // transfer reward to the user
        (bool success, ) = msg.sender.call{value: allClaimableReward}("");
        require(success, "Failed to claim reward");
    }

    // calculate all claimable reward of the user
    function getAllClaimableReward(address investor) public view returns (uint256) {
        uint256 allClaimableReward;
        for(uint256 i = 0; i < ownedDeposits[investor].length; i ++) {
            allClaimableReward += getClaimableReward(ownedDeposits[investor][i]);
        }

        return allClaimableReward;
    }

    // calculate claimable reward by deposit id
    function getClaimableReward(uint256 id) public view returns (uint256) {
        if(depositState[id].state == false) return 0;
        uint256 lastedRoiTime = block.timestamp - depositState[id].depositAt;

        // all calculated claimable amount from deposit time
        uint256 allClaimableAmount = (lastedRoiTime *
            depositState[id].depositAmount *
            apr).div(percentRate * rewardPeriod);

        // allClaimableAmount is always more than claimed amount
        require(
            allClaimableAmount >= depositState[id].claimedAmount,
            "something went wrong"
        );

        return allClaimableAmount - depositState[id].claimedAmount;
    }

    // withdraw capital by deposit id
    function withdrawCapital(uint256 id) public nonReentrant {
        require(
            depositState[id].investor == msg.sender,
            "only investor of this id can claim reward"
        );
        require(
            block.timestamp - depositState[id].depositAt > withdrawPeriod,
            "withdraw lock time is not finished yet"
        );
        require(depositState[id].state, "you already withdrawed capital");

        uint256 claimableReward = getClaimableReward(id);

        require(
            depositState[id].depositAmount + claimableReward <= address(this).balance,
            "no enough matic in pool"
        );

        // transfer capital to the user
        (bool success, ) = msg.sender.call{
            value: depositState[id].depositAmount + claimableReward
        }("");
        require(success, "Failed to claim reward");

        depositState[id].state = false;
    }

    // if the address exists in current investors list
    function existInInvestors(address investor) public view returns(bool) {
        for(uint256 j = 0; j < investors.length; j ++) {
            if (investors[j] == investor) {
                return true;
            }
        }
        return false;
    }

    // calculate total rewards
    function getTotalRewards() public view returns (uint256) {
        uint256 totalRewards;
        for(uint256 i = 0; i < _currentDepositID; i ++) {
            totalRewards += getClaimableReward(i + 1);
        }
        return totalRewards;
    }

    // calculate total invests
    function getTotalInvests() public view returns (uint256) {
        uint256 totalInvests;
        for(uint256 i = 0; i < _currentDepositID; i ++) {
            if(depositState[i + 1].state) totalInvests += depositState[i + 1].depositAmount;
        }
        return totalInvests;
    }

    // get all deposit IDs of investor
    function getOwnedDeposits(address investor) public view returns (uint256[] memory) {
        return ownedDeposits[investor];
    }

    function _getNextDepositID() private view returns (uint256) {
        return _currentDepositID + 1;
    }

    function _incrementDepositID() private {
        _currentDepositID++;
    }

    // reset dev wallet address
    function resetContract(address payable _devWallet) public onlyOwner {
        devWallet = _devWallet;
    }

    // adding pool by owner
    function depositFunds() external payable onlyOwner returns(bool) {
        require(msg.value > 0, "you can deposit more than 0 matic");
        return true;
    }

    function withdrawFunds(uint256 amount) external onlyOwner nonReentrant {
        // transfer fund
        (bool success, ) = msg.sender.call{value: amount}("");
        require(success, "Failed to withdraw funds");
    }

    function getInvestors() public view returns (address[] memory) {
        return investors;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address payable","name":"_devWallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[],"name":"_currentDepositID","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"apr","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claimAllReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"claimReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"deposit","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"depositFunds","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"depositState","outputs":[{"internalType":"address","name":"investor","type":"address"},{"internalType":"uint256","name":"depositAmount","type":"uint256"},{"internalType":"uint256","name":"depositAt","type":"uint256"},{"internalType":"uint256","name":"claimedAmount","type":"uint256"},{"internalType":"bool","name":"state","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"developerFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"investor","type":"address"}],"name":"existInInvestors","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"investor","type":"address"}],"name":"getAllClaimableReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"getClaimableReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getInvestors","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"investor","type":"address"}],"name":"getOwnedDeposits","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalInvests","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"investors","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"ownedDeposits","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"percentRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"removeInvestor","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_devWallet","type":"address"}],"name":"resetContract","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rewardPeriod","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"withdrawCapital","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawPeriod","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]

608060405261012c600255620151806003556224ea00600455609660055561271060065560006008553480156200003557600080fd5b50604051620019d8380380620019d88339810160408190526200005891620000ea565b6200006c6200006662000096565b6200009a565b60018055600780546001600160a01b0319166001600160a01b03929092169190911790556200011a565b3390565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600060208284031215620000fc578081fd5b81516001600160a01b038116811462000113578182fd5b9392505050565b6118ae806200012a6000396000f3fe60806040526004361061019c5760003560e01c80638da5cb5b116100ec578063d95b0a121161008a578063e67ad75911610064578063e67ad75914610440578063e88dc5b714610460578063f2bb96c714610475578063f2fde38b1461048a5761019c565b8063d95b0a1214610403578063e2c41dbc14610423578063e627f2db1461042b5761019c565b8063b2f5a54c116100c6578063b2f5a54c1461038c578063b3f0d7c8146103ae578063cec5b930146103db578063d0e30db0146103fb5761019c565b80638da5cb5b146103425780638fc3aae714610357578063ae169a501461036c5761019c565b806357ded9c9116101595780638090114f116101335780638090114f146102d85780638656697a146102ed5780638a623d861461030d5780638c25be3d146103225761019c565b806357ded9c91461028e578063715018a6146102a3578063773b1ac7146102b85761019c565b8063038c8975146101a157806312eb4f9a146101db578063155dd5ee146101fd57806331c2ad531461021f5780633feb5f2b14610234578063533d410714610261575b600080fd5b3480156101ad57600080fd5b506101c16101bc3660046113a0565b6104aa565b6040516101d29594939291906113cf565b60405180910390f35b3480156101e757600080fd5b506101f06104e6565b6040516101d291906117bb565b34801561020957600080fd5b5061021d6102183660046113a0565b6104ec565b005b34801561022b57600080fd5b506101f06105da565b34801561024057600080fd5b5061025461024f3660046113a0565b6105e0565b6040516101d291906113bb565b34801561026d57600080fd5b5061028161027c366004611359565b61060a565b6040516101d2919061144c565b34801561029a57600080fd5b506101f0610677565b3480156102af57600080fd5b5061021d61067d565b3480156102c457600080fd5b5061021d6102d33660046113a0565b6106c8565b3480156102e457600080fd5b506101f06107a2565b3480156102f957600080fd5b506101f0610308366004611359565b6107a8565b34801561031957600080fd5b5061021d610840565b34801561032e57600080fd5b506101f061033d3660046113a0565b6109ea565b34801561034e57600080fd5b50610254610ac5565b34801561036357600080fd5b506101f0610ad4565b34801561037857600080fd5b5061021d6103873660046113a0565b610b56565b34801561039857600080fd5b506103a1610cdd565b6040516101d291906113ff565b3480156103ba57600080fd5b506103ce6103c9366004611359565b610d3f565b6040516101d29190611484565b3480156103e757600080fd5b506101f06103f6366004611375565b610db8565b61021d610de9565b34801561040f57600080fd5b5061021d61041e3660046113a0565b610f7f565b6103ce611144565b34801561043757600080fd5b506101f06111ab565b34801561044c57600080fd5b5061021d61045b366004611359565b6111e7565b34801561046c57600080fd5b506101f0611248565b34801561048157600080fd5b506101f061124e565b34801561049657600080fd5b5061021d6104a5366004611359565b611254565b600a60205260009081526040902080546001820154600283015460038401546004909401546001600160a01b0390931693919290919060ff1685565b60045481565b6104f46112c5565b6001600160a01b0316610505610ac5565b6001600160a01b0316146105345760405162461bcd60e51b815260040161052b906115bc565b60405180910390fd5b600260015414156105575760405162461bcd60e51b815260040161052b906116de565b60026001556040516000903390839061056f906113b8565b60006040518083038185875af1925050503d80600081146105ac576040519150601f19603f3d011682016040523d82523d6000602084013e6105b1565b606091505b50509050806105d25760405162461bcd60e51b815260040161052b90611743565b505060018055565b60025481565b600981815481106105f057600080fd5b6000918252602090912001546001600160a01b0316905081565b6001600160a01b0381166000908152600b602090815260409182902080548351818402810184019094528084526060939283018282801561066a57602002820191906000526020600020905b815481526020019060010190808311610656575b505050505090505b919050565b60055481565b6106856112c5565b6001600160a01b0316610696610ac5565b6001600160a01b0316146106bc5760405162461bcd60e51b815260040161052b906115bc565b6106c660006112c9565b565b600980546106d89060019061181b565b815481106106f657634e487b7160e01b600052603260045260246000fd5b600091825260209091200154600980546001600160a01b03909216918390811061073057634e487b7160e01b600052603260045260246000fd5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550600980548061077d57634e487b7160e01b600052603160045260246000fd5b600082815260209020810160001990810180546001600160a01b031916905501905550565b60065481565b60008060005b6001600160a01b0384166000908152600b6020526040902054811015610839576001600160a01b0384166000908152600b60205260409020805461081b91908390811061080b57634e487b7160e01b600052603260045260246000fd5b90600052602060002001546109ea565b61082590836117c4565b91508061083181611832565b9150506107ae565b5092915050565b600260015414156108635760405162461bcd60e51b815260040161052b906116de565b6002600155336000908152600b60205260409020546108945760405162461bcd60e51b815260040161052b90611585565b6000805b336000908152600b602052604090205481101561096d57336000908152600b6020526040812080546108e391908490811061080b57634e487b7160e01b600052603260045260246000fd5b90506108ef81846117c4565b336000908152600b6020526040812080549295508392600a9291908690811061092857634e487b7160e01b600052603260045260246000fd5b90600052602060002001548152602001908152602001600020600301600082825461095391906117c4565b90915550829150610965905081611832565b915050610898565b506000336001600160a01b031682604051610987906113b8565b60006040518083038185875af1925050503d80600081146109c4576040519150601f19603f3d011682016040523d82523d6000602084013e6109c9565b606091505b50509050806105d25760405162461bcd60e51b815260040161052b906114d8565b6000818152600a602052604081206004015460ff16610a0b57506000610672565b6000828152600a6020526040812060020154610a27904261181b565b90506000610a6d600354600654610a3e91906117fc565b6005546000878152600a6020526040902060010154610a5d90866117fc565b610a6791906117fc565b90611319565b6000858152600a6020526040902060030154909150811015610aa15760405162461bcd60e51b815260040161052b90611715565b6000848152600a6020526040902060030154610abd908261181b565b949350505050565b6000546001600160a01b031690565b60008060005b600854811015610b5057600a6000610af38360016117c4565b815260208101919091526040016000206004015460ff1615610b3e57600a6000610b1e8360016117c4565b81526020019081526020016000206001015482610b3b91906117c4565b91505b80610b4881611832565b915050610ada565b50905090565b60026001541415610b795760405162461bcd60e51b815260040161052b906116de565b60026001556000818152600a60205260409020546001600160a01b03163314610bb45760405162461bcd60e51b815260040161052b9061148f565b6000818152600a602052604090206004015460ff16610be55760405162461bcd60e51b815260040161052b9061154e565b6000610bf0826109ea565b905060008111610c125760405162461bcd60e51b815260040161052b906115f1565b47811115610c325760405162461bcd60e51b815260040161052b906116a7565b6000336001600160a01b031682604051610c4b906113b8565b60006040518083038185875af1925050503d8060008114610c88576040519150601f19603f3d011682016040523d82523d6000602084013e610c8d565b606091505b5050905080610cae5760405162461bcd60e51b815260040161052b906114d8565b6000838152600a602052604081206003018054849290610ccf9084906117c4565b909155505060018055505050565b60606009805480602002602001604051908101604052809291908181526020018280548015610d3557602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610d17575b5050505050905090565b6000805b600954811015610daf57826001600160a01b031660098281548110610d7857634e487b7160e01b600052603260045260246000fd5b6000918252602090912001546001600160a01b03161415610d9d576001915050610672565b80610da781611832565b915050610d43565b50600092915050565b600b6020528160005260406000208181548110610dd457600080fd5b90600052602060002001600091509150505481565b60003411610e095760405162461bcd60e51b815260040161052b9061177a565b6000610e1361132c565b9050610e1d611342565b6000610e3360065460025434610a6791906117fc565b6007546040519192506000916001600160a01b03909116908390610e56906113b8565b60006040518083038185875af1925050503d8060008114610e93576040519150601f19603f3d011682016040523d82523d6000602084013e610e98565b606091505b5050905080610eb95760405162461bcd60e51b815260040161052b90611664565b6000838152600a6020526040902080546001600160a01b03191633179055610ee1823461181b565b6000848152600a60209081526040808320600180820195909555426002820155600401805460ff19168517905533808452600b83529083208054948501815583529120909101849055610f3390610d3f565b610f7a57600980546001810182556000919091527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af0180546001600160a01b031916331790555b505050565b60026001541415610fa25760405162461bcd60e51b815260040161052b906116de565b60026001556000818152600a60205260409020546001600160a01b03163314610fdd5760405162461bcd60e51b815260040161052b9061148f565b6004546000828152600a6020526040902060020154610ffc904261181b565b116110195760405162461bcd60e51b815260040161052b9061161e565b6000818152600a602052604090206004015460ff1661104a5760405162461bcd60e51b815260040161052b9061154e565b6000611055826109ea565b6000838152600a602052604090206001015490915047906110779083906117c4565b11156110955760405162461bcd60e51b815260040161052b906116a7565b6000828152600a602052604081206001015433906110b49084906117c4565b6040516110c0906113b8565b60006040518083038185875af1925050503d80600081146110fd576040519150601f19603f3d011682016040523d82523d6000602084013e611102565b606091505b50509050806111235760405162461bcd60e51b815260040161052b906114d8565b50506000908152600a60205260409020600401805460ff1916905560018055565b600061114e6112c5565b6001600160a01b031661115f610ac5565b6001600160a01b0316146111855760405162461bcd60e51b815260040161052b906115bc565b600034116111a55760405162461bcd60e51b815260040161052b9061177a565b50600190565b60008060005b600854811015610b50576111c961033d8260016117c4565b6111d390836117c4565b9150806111df81611832565b9150506111b1565b6111ef6112c5565b6001600160a01b0316611200610ac5565b6001600160a01b0316146112265760405162461bcd60e51b815260040161052b906115bc565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b60035481565b60085481565b61125c6112c5565b6001600160a01b031661126d610ac5565b6001600160a01b0316146112935760405162461bcd60e51b815260040161052b906115bc565b6001600160a01b0381166112b95760405162461bcd60e51b815260040161052b90611508565b6112c2816112c9565b50565b3390565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600061132582846117dc565b9392505050565b6000600854600161133d91906117c4565b905090565b6008805490600061135283611832565b9190505550565b60006020828403121561136a578081fd5b813561132581611863565b60008060408385031215611387578081fd5b823561139281611863565b946020939093013593505050565b6000602082840312156113b1578081fd5b5035919050565b90565b6001600160a01b0391909116815260200190565b6001600160a01b039590951685526020850193909352604084019190915260608301521515608082015260a00190565b6020808252825182820181905260009190848201906040850190845b818110156114405783516001600160a01b03168352928401929184019160010161141b565b50909695505050505050565b6020808252825182820181905260009190848201906040850190845b8181101561144057835183529284019291840191600101611468565b901515815260200190565b60208082526029908201527f6f6e6c7920696e766573746f72206f6620746869732069642063616e20636c616040820152681a5b481c995dd85c9960ba1b606082015260800190565b60208082526016908201527511985a5b1959081d1bc818db185a5b481c995dd85c9960521b604082015260600190565b60208082526026908201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160408201526564647265737360d01b606082015260800190565b6020808252601e908201527f796f7520616c72656164792077697468647261776564206361706974616c0000604082015260600190565b6020808252601d908201527f796f752063616e206465706f736974206f6e6365206174206c65617374000000604082015260600190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b602080825260139082015272796f757220726577617264206973207a65726f60681b604082015260600190565b60208082526026908201527f7769746864726177206c6f636b2074696d65206973206e6f742066696e6973686040820152651959081e595d60d21b606082015260800190565b60208082526023908201527f4661696c656420746f2073656e642066656520746f207468652064657657616c6040820152621b195d60ea1b606082015260800190565b60208082526017908201527f6e6f20656e6f756768206d6174696320696e20706f6f6c000000000000000000604082015260600190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b602080825260149082015273736f6d657468696e672077656e742077726f6e6760601b604082015260600190565b60208082526018908201527f4661696c656420746f2077697468647261772066756e64730000000000000000604082015260600190565b60208082526021908201527f796f752063616e206465706f736974206d6f7265207468616e2030206d6174696040820152606360f81b606082015260800190565b90815260200190565b600082198211156117d7576117d761184d565b500190565b6000826117f757634e487b7160e01b81526012600452602481fd5b500490565b60008160001904831182151516156118165761181661184d565b500290565b60008282101561182d5761182d61184d565b500390565b60006000198214156118465761184661184d565b5060010190565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b03811681146112c257600080fdfea2646970667358221220701e11173587543867945bd9cfa04d70feefd7a9e9dd18532c1b0170f0d6ebd964736f6c6343000800003300000000000000000000000089c02a80bccc66899481f656be0d5ac9bb62dc24

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

00000000000000000000000089c02a80bccc66899481f656be0d5ac9bb62dc24

-----Decoded View---------------
Arg [0] : _devWallet (address): 0x89c02a80bccc66899481f656be0d5ac9bb62dc24

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000089c02a80bccc66899481f656be0d5ac9bb62dc24


Deployed ByteCode Sourcemap

10755:7657:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11545:53;;;;;;;;;;-1:-1:-1;11545:53:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;10956:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;18079:224::-;;;;;;;;;;-1:-1:-1;18079:224:0;;;;;:::i;:::-;;:::i;:::-;;10845:33;;;;;;;;;;;;;:::i;11187:26::-;;;;;;;;;;-1:-1:-1;11187:26:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;17387:132::-;;;;;;;;;;-1:-1:-1;17387:132:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;11002:24::-;;;;;;;;;;;;;:::i;1394:103::-;;;;;;;;;;;;;:::i;12625:137::-;;;;;;;;;;-1:-1:-1;12625:137:0;;;;;:::i;:::-;;:::i;11063:34::-;;;;;;;;;;;;;:::i;14330:328::-;;;;;;;;;;-1:-1:-1;14330:328:0;;;;;:::i;:::-;;:::i;13606:665::-;;;;;;;;;;;;;:::i;14715:700::-;;;;;;;;;;-1:-1:-1;14715:700:0;;;;;:::i;:::-;;:::i;743:87::-;;;;;;;;;;;;;:::i;17049:290::-;;;;;;;;;;;;;:::i;12805:759::-;;;;;;;;;;-1:-1:-1;12805:759:0;;;;;:::i;:::-;;:::i;18311:98::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;16457:260::-;;;;;;;;;;-1:-1:-1;16457:260:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;11650:50::-;;;;;;;;;;-1:-1:-1;11650:50:0;;;;;:::i;:::-;;:::i;11838:779::-;;;:::i;15462:931::-;;;;;;;;;;-1:-1:-1;15462:931:0;;;;;:::i;:::-;;:::i;17906:165::-;;;:::i;16757:252::-;;;;;;;;;;;;;:::i;17760:109::-;;;;;;;;;;-1:-1:-1;17760:109:0;;;;;:::i;:::-;;:::i;10913:36::-;;;;;;;;;;;;;:::i;11144:::-;;;;;;;;;;;;;:::i;1652:238::-;;;;;;;;;;-1:-1:-1;1652:238:0;;;;;:::i;:::-;;:::i;11545:53::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11545:53:0;;;;;;;;;;;;:::o;10956:39::-;;;;:::o;18079:224::-;974:12;:10;:12::i;:::-;-1:-1:-1;;;;;963:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;963:23:0;;955:68;;;;-1:-1:-1;;;955:68:0;;;;;;;:::i;:::-;;;;;;;;;3132:1:::1;3730:7;;:19;;3722:63;;;;-1:-1:-1::0;;;3722:63:0::1;;;;;;;:::i;:::-;3132:1;3863:7;:18:::0;18206:34:::2;::::0;18188:12:::2;::::0;18206:10:::2;::::0;18229:6;;18206:34:::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18187:53;;;18259:7;18251:44;;;;-1:-1:-1::0;;;18251:44:0::2;;;;;;;:::i;:::-;-1:-1:-1::0;;3088:1:0::1;4042:22:::0;;18079:224::o;10845:33::-;;;;:::o;11187:26::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11187:26:0;;-1:-1:-1;11187:26:0;:::o;17387:132::-;-1:-1:-1;;;;;17488:23:0;;;;;;:13;:23;;;;;;;;;17481:30;;;;;;;;;;;;;;;;;17452:16;;17481:30;;;17488:23;17481:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17387:132;;;;:::o;11002:24::-;;;;:::o;1394:103::-;974:12;:10;:12::i;:::-;-1:-1:-1;;;;;963:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;963:23:0;;955:68;;;;-1:-1:-1;;;955:68:0;;;;;;;:::i;:::-;1459:30:::1;1486:1;1459:18;:30::i;:::-;1394:103::o:0;12625:137::-;12697:9;12707:16;;:20;;12726:1;;12707:20;:::i;:::-;12697:31;;;;;;-1:-1:-1;;;12697:31:0;;;;;;;;;;;;;;;;;;;12678:9;:16;;-1:-1:-1;;;;;12697:31:0;;;;12688:5;;12678:16;;;;-1:-1:-1;;;12678:16:0;;;;;;;;;;;;;;;;;:50;;;;;-1:-1:-1;;;;;12678:50:0;;;;;-1:-1:-1;;;;;12678:50:0;;;;;;12739:9;:15;;;;;-1:-1:-1;;;12739:15:0;;;;;;;;;;;;;;;;;;-1:-1:-1;;12739:15:0;;;;;-1:-1:-1;;;;;;12739:15:0;;;;;;-1:-1:-1;12625:137:0:o;11063:34::-;;;;:::o;14330:328::-;14400:7;14420:26;14461:9;14457:156;-1:-1:-1;;;;;14480:23:0;;;;;;:13;:23;;;;;:30;14476:34;;14457:156;;;-1:-1:-1;;;;;14574:23:0;;;;;;:13;:23;;;;;:26;;14555:46;;14574:23;14598:1;;14574:26;;;;-1:-1:-1;;;14574:26:0;;;;;;;;;;;;;;;;;14555:18;:46::i;:::-;14533:68;;;;:::i;:::-;;-1:-1:-1;14512:4:0;;;;:::i;:::-;;;;14457:156;;;-1:-1:-1;14632:18:0;14330:328;-1:-1:-1;;14330:328:0:o;13606:665::-;3132:1;3730:7;;:19;;3722:63;;;;-1:-1:-1;;;3722:63:0;;;;;;;:::i;:::-;3132:1;3863:7;:18;13685:10:::1;13706:1;13671:25:::0;;;:13:::1;:25;::::0;;;;:32;13663:78:::1;;;;-1:-1:-1::0;;;13663:78:0::1;;;;;;;:::i;:::-;13754:26;13795:9:::0;13791:302:::1;13824:10;13810:25;::::0;;;:13:::1;:25;::::0;;;;:32;13806:36;::::1;13791:302;;;13924:10;13865:23;13910:25:::0;;;:13:::1;:25;::::0;;;;:28;;13891:48:::1;::::0;13910:25;13936:1;;13910:28;::::1;;;-1:-1:-1::0;;;13910:28:0::1;;;;;;;;13891:48;13865:74:::0;-1:-1:-1;13954:37:0::1;13865:74:::0;13954:37;::::1;:::i;:::-;14033:10;14006:42;14019:25:::0;;;:13:::1;:25;::::0;;;;:28;;13954:37;;-1:-1:-1;14066:15:0;;14006:12:::1;::::0;:42;14019:25;14045:1;;14019:28;::::1;;;-1:-1:-1::0;;;14019:28:0::1;;;;;;;;;;;;;;;;;14006:42;;;;;;;;;;;:56;;;:75;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;13844:4:0;;-1:-1:-1;13844:4:0::1;::::0;-1:-1:-1;13844:4:0;::::1;:::i;:::-;;;;13791:302;;;;14146:12;14164:10;-1:-1:-1::0;;;;;14164:15:0::1;14187:18;14164:46;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14145:65;;;14229:7;14221:42;;;;-1:-1:-1::0;;;14221:42:0::1;;;;;;;:::i;14715:700::-:0;14776:7;14799:16;;;:12;:16;;;;;:22;;;;;14796:44;;-1:-1:-1;14839:1:0;14832:8;;14796:44;14851:21;14893:16;;;:12;:16;;;;;:26;;;14875:44;;:15;:44;:::i;:::-;14851:68;;14994:26;15023:112;15122:12;;15108:11;;:26;;;;:::i;:::-;15099:3;;15053:16;;;;:12;:16;;;;;:30;;;15024:59;;:13;:59;:::i;:::-;:78;;;;:::i;:::-;15023:84;;:112::i;:::-;15258:16;;;;:12;:16;;;;;:30;;;14994:141;;-1:-1:-1;15236:52:0;;;15214:122;;;;-1:-1:-1;;;15214:122:0;;;;;;;:::i;:::-;15377:16;;;;:12;:16;;;;;:30;;;15356:51;;:18;:51;:::i;:::-;15349:58;14715:700;-1:-1:-1;;;;14715:700:0:o;743:87::-;789:7;816:6;-1:-1:-1;;;;;816:6:0;743:87;:::o;17049:290::-;17097:7;17117:20;17152:9;17148:154;17171:17;;17167:1;:21;17148:154;;;17214:12;:19;17227:5;:1;17231;17227:5;:::i;:::-;17214:19;;;;;;;;;;;-1:-1:-1;17214:19:0;:25;;;;;17211:79;;;17257:12;:19;17270:5;:1;17274;17270:5;:::i;:::-;17257:19;;;;;;;;;;;:33;;;17241:49;;;;;:::i;:::-;;;17211:79;17190:4;;;;:::i;:::-;;;;17148:154;;;-1:-1:-1;17319:12:0;-1:-1:-1;17049:290:0;:::o;12805:759::-;3132:1;3730:7;;:19;;3722:63;;;;-1:-1:-1;;;3722:63:0;;;;;;;:::i;:::-;3132:1;3863:7;:18;12891:16:::1;::::0;;;:12:::1;:16;::::0;;;;:25;-1:-1:-1;;;;;12891:25:0::1;12920:10;12891:39;12869:130;;;;-1:-1:-1::0;;;12869:130:0::1;;;;;;;:::i;:::-;13020:16;::::0;;;:12:::1;:16;::::0;;;;:22:::1;;::::0;::::1;;13012:65;;;;-1:-1:-1::0;;;13012:65:0::1;;;;;;;:::i;:::-;13090:23;13116:22;13135:2;13116:18;:22::i;:::-;13090:48;;13175:1;13157:15;:19;13149:51;;;;-1:-1:-1::0;;;13149:51:0::1;;;;;;;:::i;:::-;13254:21;13235:15;:40;;13213:113;;;;-1:-1:-1::0;;;13213:113:0::1;;;;;;;:::i;:::-;13380:12;13398:10;-1:-1:-1::0;;;;;13398:15:0::1;13421;13398:43;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13379:62;;;13460:7;13452:42;;;;-1:-1:-1::0;;;13452:42:0::1;;;;;;;:::i;:::-;13507:16;::::0;;;:12:::1;:16;::::0;;;;:30:::1;;:49:::0;;13541:15;;13507:16;:49:::1;::::0;13541:15;;13507:49:::1;:::i;:::-;::::0;;;-1:-1:-1;;3088:1:0;4042:22;;-1:-1:-1;;;12805:759:0:o;18311:98::-;18356:16;18392:9;18385:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;18385:16:0;;;;;;;;;;;;;;;;;;;;;;;18311:98;:::o;16457:260::-;16521:4;;16538:149;16561:9;:16;16557:20;;16538:149;;;16620:8;-1:-1:-1;;;;;16604:24:0;:9;16614:1;16604:12;;;;;;-1:-1:-1;;;16604:12:0;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16604:12:0;:24;16600:76;;;16656:4;16649:11;;;;;16600:76;16579:4;;;;:::i;:::-;;;;16538:149;;;-1:-1:-1;16704:5:0;;16457:260;-1:-1:-1;;16457:260:0:o;11650:50::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;11838:779::-;11905:1;11893:9;:13;11885:59;;;;-1:-1:-1;;;11885:59:0;;;;;;;:::i;:::-;11957:11;11971:19;:17;:19::i;:::-;11957:33;;12001:21;:19;:21::i;:::-;12035:18;12056:43;12087:11;;12069:12;;12057:9;:24;;;;:::i;12056:43::-;12171:9;;:37;;12035:64;;-1:-1:-1;12153:12:0;;-1:-1:-1;;;;;12171:9:0;;;;12035:64;;12171:37;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12152:56;;;12227:7;12219:55;;;;-1:-1:-1;;;12219:55:0;;;;;;;:::i;:::-;12287:17;;;;:12;:17;;;;;:39;;-1:-1:-1;;;;;;12287:39:0;12316:10;12287:39;;;12371:22;12383:10;12371:9;:22;:::i;:::-;12337:17;;;;:12;:17;;;;;;;;:31;;;;:56;;;;12434:15;12404:27;;;:45;12460:23;;:30;;-1:-1:-1;;12460:30:0;;;;;12517:10;12503:25;;;:13;:25;;;;;:35;;;;;;;;;;;;;;;;;12553:28;;:16;:28::i;:::-;12549:60;;12583:9;:26;;;;;;;-1:-1:-1;12583:26:0;;;;;;;;-1:-1:-1;;;;;;12583:26:0;12598:10;12583:26;;;12549:60;11838:779;;;:::o;15462:931::-;3132:1;3730:7;;:19;;3722:63;;;;-1:-1:-1;;;3722:63:0;;;;;;;:::i;:::-;3132:1;3863:7;:18;15552:16:::1;::::0;;;:12:::1;:16;::::0;;;;:25;-1:-1:-1;;;;;15552:25:0::1;15581:10;15552:39;15530:130;;;;-1:-1:-1::0;;;15530:130:0::1;;;;;;;:::i;:::-;15740:14;::::0;15711:16:::1;::::0;;;:12:::1;:16;::::0;;;;:26:::1;;::::0;15693:44:::1;::::0;:15:::1;:44;:::i;:::-;:61;15671:149;;;;-1:-1:-1::0;;;15671:149:0::1;;;;;;;:::i;:::-;15839:16;::::0;;;:12:::1;:16;::::0;;;;:22:::1;;::::0;::::1;;15831:65;;;;-1:-1:-1::0;;;15831:65:0::1;;;;;;;:::i;:::-;15909:23;15935:22;15954:2;15935:18;:22::i;:::-;15992:16;::::0;;;:12:::1;:16;::::0;;;;:30:::1;;::::0;15909:48;;-1:-1:-1;16044:21:0::1;::::0;15992:48:::1;::::0;15909;;15992::::1;:::i;:::-;:73;;15970:146;;;;-1:-1:-1::0;;;15970:146:0::1;;;;;;;:::i;:::-;16171:12;16226:16:::0;;;:12:::1;:16;::::0;;;;:30:::1;;::::0;16189:10:::1;::::0;16226:48:::1;::::0;16259:15;;16226:48:::1;:::i;:::-;16189:100;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16170:119;;;16308:7;16300:42;;;;-1:-1:-1::0;;;16300:42:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;;16380:5:0::1;16355:16:::0;;;:12:::1;:16;::::0;;;;:22:::1;;:30:::0;;-1:-1:-1;;16355:30:0::1;::::0;;;4042:22;;15462:931::o;17906:165::-;17965:4;974:12;:10;:12::i;:::-;-1:-1:-1;;;;;963:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;963:23:0;;955:68;;;;-1:-1:-1;;;955:68:0;;;;;;;:::i;:::-;18002:1:::1;17990:9;:13;17982:59;;;;-1:-1:-1::0;;;17982:59:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;18059:4:0::1;17906:165:::0;:::o;16757:252::-;16805:7;16825:20;16860:9;16856:116;16879:17;;16875:1;:21;16856:116;;;16935:25;16954:5;:1;16958;16954:5;:::i;16935:25::-;16919:41;;;;:::i;:::-;;-1:-1:-1;16898:4:0;;;;:::i;:::-;;;;16856:116;;17760:109;974:12;:10;:12::i;:::-;-1:-1:-1;;;;;963:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;963:23:0;;955:68;;;;-1:-1:-1;;;955:68:0;;;;;;;:::i;:::-;17839:9:::1;:22:::0;;-1:-1:-1;;;;;;17839:22:0::1;-1:-1:-1::0;;;;;17839:22:0;;;::::1;::::0;;;::::1;::::0;;17760:109::o;10913:36::-;;;;:::o;11144:::-;;;;:::o;1652:238::-;974:12;:10;:12::i;:::-;-1:-1:-1;;;;;963:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;963:23:0;;955:68;;;;-1:-1:-1;;;955:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1755:22:0;::::1;1733:110;;;;-1:-1:-1::0;;;1733:110:0::1;;;;;;;:::i;:::-;1854:28;1873:8;1854:18;:28::i;:::-;1652:238:::0;:::o;92:98::-;172:10;92:98;:::o;2050:191::-;2124:16;2143:6;;-1:-1:-1;;;;;2160:17:0;;;-1:-1:-1;;;;;;2160:17:0;;;;;;2193:40;;2143:6;;;;;;;2193:40;;2124:16;2193:40;2050:191;;:::o;7727:98::-;7785:7;7812:5;7816:1;7812;:5;:::i;:::-;7805:12;7727:98;-1:-1:-1;;;7727:98:0:o;17527:107::-;17578:7;17605:17;;17625:1;17605:21;;;;:::i;:::-;17598:28;;17527:107;:::o;17642:77::-;17692:17;:19;;;:17;:19;;;:::i;:::-;;;;;;17642:77::o;14:259:1:-;;126:2;114:9;105:7;101:23;97:32;94:2;;;147:6;139;132:22;94:2;191:9;178:23;210:33;237:5;210:33;:::i;550:327::-;;;679:2;667:9;658:7;654:23;650:32;647:2;;;700:6;692;685:22;647:2;744:9;731:23;763:33;790:5;763:33;:::i;:::-;815:5;867:2;852:18;;;;839:32;;-1:-1:-1;;;637:240:1:o;882:190::-;;994:2;982:9;973:7;969:23;965:32;962:2;;;1015:6;1007;1000:22;962:2;-1:-1:-1;1043:23:1;;952:120;-1:-1:-1;952:120:1:o;1077:205::-;1277:3;1268:14::o;1287:203::-;-1:-1:-1;;;;;1451:32:1;;;;1433:51;;1421:2;1406:18;;1388:102::o;1495:499::-;-1:-1:-1;;;;;1766:32:1;;;;1748:51;;1830:2;1815:18;;1808:34;;;;1873:2;1858:18;;1851:34;;;;1916:2;1901:18;;1894:34;1972:14;1965:22;1959:3;1944:19;;1937:51;1735:3;1720:19;;1702:292::o;1999:661::-;2170:2;2222:21;;;2292:13;;2195:18;;;2314:22;;;1999:661;;2170:2;2393:15;;;;2367:2;2352:18;;;1999:661;2439:195;2453:6;2450:1;2447:13;2439:195;;;2518:13;;-1:-1:-1;;;;;2514:39:1;2502:52;;2609:15;;;;2574:12;;;;2550:1;2468:9;2439:195;;;-1:-1:-1;2651:3:1;;2150:510;-1:-1:-1;;;;;;2150:510:1:o;2665:635::-;2836:2;2888:21;;;2958:13;;2861:18;;;2980:22;;;2665:635;;2836:2;3059:15;;;;3033:2;3018:18;;;2665:635;3105:169;3119:6;3116:1;3113:13;3105:169;;;3180:13;;3168:26;;3249:15;;;;3214:12;;;;3141:1;3134:9;3105:169;;3305:187;3470:14;;3463:22;3445:41;;3433:2;3418:18;;3400:92::o;3497:405::-;3699:2;3681:21;;;3738:2;3718:18;;;3711:30;3777:34;3772:2;3757:18;;3750:62;-1:-1:-1;;;3843:2:1;3828:18;;3821:39;3892:3;3877:19;;3671:231::o;3907:346::-;4109:2;4091:21;;;4148:2;4128:18;;;4121:30;-1:-1:-1;;;4182:2:1;4167:18;;4160:52;4244:2;4229:18;;4081:172::o;4258:402::-;4460:2;4442:21;;;4499:2;4479:18;;;4472:30;4538:34;4533:2;4518:18;;4511:62;-1:-1:-1;;;4604:2:1;4589:18;;4582:36;4650:3;4635:19;;4432:228::o;4665:354::-;4867:2;4849:21;;;4906:2;4886:18;;;4879:30;4945:32;4940:2;4925:18;;4918:60;5010:2;4995:18;;4839:180::o;5024:353::-;5226:2;5208:21;;;5265:2;5245:18;;;5238:30;5304:31;5299:2;5284:18;;5277:59;5368:2;5353:18;;5198:179::o;5382:356::-;5584:2;5566:21;;;5603:18;;;5596:30;5662:34;5657:2;5642:18;;5635:62;5729:2;5714:18;;5556:182::o;5743:343::-;5945:2;5927:21;;;5984:2;5964:18;;;5957:30;-1:-1:-1;;;6018:2:1;6003:18;;5996:49;6077:2;6062:18;;5917:169::o;6091:402::-;6293:2;6275:21;;;6332:2;6312:18;;;6305:30;6371:34;6366:2;6351:18;;6344:62;-1:-1:-1;;;6437:2:1;6422:18;;6415:36;6483:3;6468:19;;6265:228::o;6498:399::-;6700:2;6682:21;;;6739:2;6719:18;;;6712:30;6778:34;6773:2;6758:18;;6751:62;-1:-1:-1;;;6844:2:1;6829:18;;6822:33;6887:3;6872:19;;6672:225::o;6902:347::-;7104:2;7086:21;;;7143:2;7123:18;;;7116:30;7182:25;7177:2;7162:18;;7155:53;7240:2;7225:18;;7076:173::o;7254:355::-;7456:2;7438:21;;;7495:2;7475:18;;;7468:30;7534:33;7529:2;7514:18;;7507:61;7600:2;7585:18;;7428:181::o;7614:344::-;7816:2;7798:21;;;7855:2;7835:18;;;7828:30;-1:-1:-1;;;7889:2:1;7874:18;;7867:50;7949:2;7934:18;;7788:170::o;7963:348::-;8165:2;8147:21;;;8204:2;8184:18;;;8177:30;8243:26;8238:2;8223:18;;8216:54;8302:2;8287:18;;8137:174::o;8316:397::-;8518:2;8500:21;;;8557:2;8537:18;;;8530:30;8596:34;8591:2;8576:18;;8569:62;-1:-1:-1;;;8662:2:1;8647:18;;8640:31;8703:3;8688:19;;8490:223::o;8718:177::-;8864:25;;;8852:2;8837:18;;8819:76::o;8900:128::-;;8971:1;8967:6;8964:1;8961:13;8958:2;;;8977:18;;:::i;:::-;-1:-1:-1;9013:9:1;;8948:80::o;9033:217::-;;9099:1;9089:2;;-1:-1:-1;;;9124:31:1;;9178:4;9175:1;9168:15;9206:4;9131:1;9196:15;9089:2;-1:-1:-1;9235:9:1;;9079:171::o;9255:168::-;;9361:1;9357;9353:6;9349:14;9346:1;9343:21;9338:1;9331:9;9324:17;9320:45;9317:2;;;9368:18;;:::i;:::-;-1:-1:-1;9408:9:1;;9307:116::o;9428:125::-;;9496:1;9493;9490:8;9487:2;;;9501:18;;:::i;:::-;-1:-1:-1;9538:9:1;;9477:76::o;9558:135::-;;-1:-1:-1;;9618:17:1;;9615:2;;;9638:18;;:::i;:::-;-1:-1:-1;9685:1:1;9674:13;;9605:88::o;9698:127::-;9759:10;9754:3;9750:20;9747:1;9740:31;9790:4;9787:1;9780:15;9814:4;9811:1;9804:15;9830:133;-1:-1:-1;;;;;9907:31:1;;9897:42;;9887:2;;9953:1;9950;9943:12

Swarm Source

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