Sonic Blaze Testnet

Contract

0x1D183beA99EaAf1ECc1a2A80C024e5069b809ee8
Transaction Hash
Method
Block
From
To
Claim32183892024-12-11 16:33:487 days ago1733934828IN
0x1D183beA...69b809ee8
0 S0.000060331.32
Play32183642024-12-11 16:33:407 days ago1733934820IN
0x1D183beA...69b809ee8
1 S0.000247151.32
Claim32183402024-12-11 16:33:337 days ago1733934813IN
0x1D183beA...69b809ee8
0 S0.000048781.32
Play32183152024-12-11 16:33:257 days ago1733934805IN
0x1D183beA...69b809ee8
1 S0.000247151.32
Claim31974942024-12-11 14:50:157 days ago1733928615IN
0x1D183beA...69b809ee8
0 S0.000060331.32
Play31974672024-12-11 14:50:077 days ago1733928607IN
0x1D183beA...69b809ee8
1 S0.000247151.32
Claim31974422024-12-11 14:49:597 days ago1733928599IN
0x1D183beA...69b809ee8
0 S0.000048781.32
Play31974052024-12-11 14:49:477 days ago1733928587IN
0x1D183beA...69b809ee8
1 S0.000247151.32
Claim31973772024-12-11 14:49:407 days ago1733928580IN
0x1D183beA...69b809ee8
0 S0.000048781.32
Play31973432024-12-11 14:49:307 days ago1733928570IN
0x1D183beA...69b809ee8
1 S0.000247151.32
Claim31973102024-12-11 14:49:197 days ago1733928559IN
0x1D183beA...69b809ee8
0 S0.000048781.32
Play31972672024-12-11 14:49:067 days ago1733928546IN
0x1D183beA...69b809ee8
1 S0.000247151.32
Claim31967852024-12-11 14:46:367 days ago1733928396IN
0x1D183beA...69b809ee8
0 S0.000060331.32
Play31967612024-12-11 14:46:297 days ago1733928389IN
0x1D183beA...69b809ee8
1 S0.000247151.32
Claim31967362024-12-11 14:46:227 days ago1733928382IN
0x1D183beA...69b809ee8
0 S0.000048781.32
Play31967092024-12-11 14:46:147 days ago1733928374IN
0x1D183beA...69b809ee8
1 S0.000247151.32
Claim31966432024-12-11 14:45:537 days ago1733928353IN
0x1D183beA...69b809ee8
0 S0.000048781.32
Play31966192024-12-11 14:45:467 days ago1733928346IN
0x1D183beA...69b809ee8
1 S0.000243211.32
Claim31965942024-12-11 14:45:387 days ago1733928338IN
0x1D183beA...69b809ee8
0 S0.000048781.32
Play31965712024-12-11 14:45:317 days ago1733928331IN
0x1D183beA...69b809ee8
1 S0.000243211.32
Claim31965452024-12-11 14:45:247 days ago1733928324IN
0x1D183beA...69b809ee8
0 S0.000048781.32
Play31965212024-12-11 14:45:177 days ago1733928317IN
0x1D183beA...69b809ee8
1 S0.000247151.32
Claim31964212024-12-11 14:44:507 days ago1733928290IN
0x1D183beA...69b809ee8
0 S0.000060331.32
Play31963952024-12-11 14:44:427 days ago1733928282IN
0x1D183beA...69b809ee8
1 S0.000247151.32
Claim31963682024-12-11 14:44:357 days ago1733928275IN
0x1D183beA...69b809ee8
0 S0.000048781.32
View all transactions

Latest 25 internal transactions (View All)

Parent Transaction Hash Block From To
32183892024-12-11 16:33:487 days ago1733934828
0x1D183beA...69b809ee8
2 S
31974942024-12-11 14:50:157 days ago1733928615
0x1D183beA...69b809ee8
2 S
31967852024-12-11 14:46:367 days ago1733928396
0x1D183beA...69b809ee8
2 S
31964212024-12-11 14:44:507 days ago1733928290
0x1D183beA...69b809ee8
2 S
31858042024-12-11 13:52:457 days ago1733925165
0x1D183beA...69b809ee8
30 S
31385352024-12-11 10:06:207 days ago1733911580
0x1D183beA...69b809ee8
2 S
31279832024-12-11 9:16:067 days ago1733908566
0x1D183beA...69b809ee8
2 S
30364392024-12-11 1:51:248 days ago1733881884
0x1D183beA...69b809ee8
2 S
30358982024-12-11 1:48:448 days ago1733881724
0x1D183beA...69b809ee8
2 S
30358442024-12-11 1:48:288 days ago1733881708
0x1D183beA...69b809ee8
2 S
30356572024-12-11 1:47:328 days ago1733881652
0x1D183beA...69b809ee8
2 S
30355612024-12-11 1:47:058 days ago1733881625
0x1D183beA...69b809ee8
2 S
30352232024-12-11 1:45:258 days ago1733881525
0x1D183beA...69b809ee8
2 S
30350872024-12-11 1:44:488 days ago1733881488
0x1D183beA...69b809ee8
2 S
30326112024-12-11 1:30:568 days ago1733880656
0x1D183beA...69b809ee8
2 S
30323522024-12-11 1:29:198 days ago1733880559
0x1D183beA...69b809ee8
2 S
30322622024-12-11 1:28:478 days ago1733880527
0x1D183beA...69b809ee8
2 S
30321672024-12-11 1:28:138 days ago1733880493
0x1D183beA...69b809ee8
2 S
30314742024-12-11 1:23:468 days ago1733880226
0x1D183beA...69b809ee8
2 S
30291652024-12-11 1:09:038 days ago1733879343
0x1D183beA...69b809ee8
2 S
30275442024-12-11 0:58:348 days ago1733878714
0x1D183beA...69b809ee8
2 S
30264332024-12-11 0:51:418 days ago1733878301
0x1D183beA...69b809ee8
2 S
30251912024-12-11 0:43:398 days ago1733877819
0x1D183beA...69b809ee8
2 S
30240292024-12-11 0:36:148 days ago1733877374
0x1D183beA...69b809ee8
2 S
30231862024-12-11 0:30:458 days ago1733877045
0x1D183beA...69b809ee8
2 S
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Pandy30

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 1000000 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity Standard Json-Input format)

File 1 of 1 : Pandy30.sol
// File: contracts\openzeppelin\contracts\utils\ReentrancyGuard.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.0.0) (utils/ReentrancyGuard.sol)
pragma solidity ^0.8.19;
/**
 * @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 EIP-1153 (transient storage) is available on the chain you're deploying at,
 * consider using {ReentrancyGuardTransient} instead.
 *
 * 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].
 */
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;
    /**
     * @dev Unauthorized reentrant call.
     */
    error ReentrancyGuardReentrantCall();
    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() {
        _nonReentrantBefore();
        _;
        _nonReentrantAfter();
    }
    function _nonReentrantBefore() private {
        // On the first call to nonReentrant, _status will be NOT_ENTERED
        if (_status == ENTERED) {
            revert ReentrancyGuardReentrantCall();
        }
        // Any calls to nonReentrant after this point will fail
        _status = ENTERED;
    }
    function _nonReentrantAfter() private {
        // By storing the original value once again, a refund is triggered (see
        // https://eips.ethereum.org/EIPS/eip-2200)
        _status = NOT_ENTERED;
    }
    /**
     * @dev Returns true if the reentrancy guard is currently set to "entered", which indicates there is a
     * `nonReentrant` function in the call stack.
     */
    function _reentrancyGuardEntered() internal view returns (bool) {
        return _status == ENTERED;
    }
}
// File: contracts/games/Pandy/Pandy30.sol
pragma solidity ^0.8.19;
contract Pandy30 is ReentrancyGuard {
    address private owner;
    event Played(address indexed player);
    event Claimed(address indexed player, bool result);
    
    struct Bet {
        uint256  nonce;
        address  player;
        uint256  amount;
        uint256  alea;  //[0, 99] => 100 slot
        uint256  current_block;
    }
    
    // on FTM
    uint256 public minBET = 1 * 10 ** 18;
    uint256 public maxBET = 1 * 10 ** 18;
    mapping(address => uint256) public noncePlayed;
    mapping(address => uint256) private last_block;
    mapping(address => uint256) private last_timestamp;
    Bet[] private list_bets;
    constructor() {
        owner = msg.sender;
    }
    function setMinBet(uint256 m) external {
        require(msg.sender == owner);
        minBET = m;
    }
    function setMaxBet(uint256 m) external {
        require(msg.sender == owner);
        maxBET = m;
    }
    function list_bets_size() public view returns (uint256) {
        return list_bets.length;
    }
    function get_bets(uint256 index) public view returns (Bet memory) {
        require(!is_contract(msg.sender), "only wallet");
        require(index < list_bets.length, "bad index");
        require(list_bets[index].current_block < block.number, "too early");
        return list_bets[index];
    }
    function is_contract(address addr) private view returns (bool) {
        uint32 size;
        assembly {
            size := extcodesize(addr)
        }
        return (size > 0);
    }
    function play() payable public nonReentrant returns (bool) {
        require(!is_contract(msg.sender), "only wallet");
        require(msg.value>=minBET && msg.value<=maxBET, "bad value");
        require(noncePlayed[msg.sender] == 0, "already played");
        uint256 nonce = list_bets.length;
        uint256 rnd_ = random(nonce);
        list_bets.push(Bet(nonce, msg.sender, msg.value, rnd_, block.number));
        noncePlayed[msg.sender] = 1 + nonce;
        last_block[msg.sender] = block.number;
        last_timestamp[msg.sender] = block.timestamp;
        emit Played(msg.sender);
        return true;
    }
    function claim() public nonReentrant returns (bool) {
        require(!is_contract(msg.sender), "only wallet");
        require(block.number > last_block[msg.sender] + 2, "early block");
        require(block.timestamp + 10 seconds > last_timestamp[msg.sender], "early time");
        require(noncePlayed[msg.sender] > 0, "not played");
        uint256 nonce = noncePlayed[msg.sender] - 1;
        noncePlayed[msg.sender] = 0;
        Bet storage b = list_bets[nonce];
        if (b.alea < 30) {
            uint256 earn = b.amount * 2; //double
            require(earn < address(this).balance, "insufficient fund");
            payable(msg.sender).transfer(earn);
            b.amount = 0;
            emit Claimed(msg.sender, true);
            return true;
        }
        emit Claimed(msg.sender, false);
        return false;
    }
    function random(uint256 csession) private view returns (uint256) {
        return uint256(keccak256(abi.encodePacked(block.timestamp, block.prevrandao, csession))) % 100;
    }
    function withdrawn(uint256 value) external returns (bool) {
        require(msg.sender == owner, "only owner");
        uint256 bal = address(this).balance;
        require(value <= bal, "no suffficient balance");
        payable(msg.sender).transfer(value);
        return true;
    }
    function stake() payable external returns (bool) {
        require(msg.sender == owner, "only owner");
        return true;
    }
}

Settings
{
  "metadata": {
    "appendCBOR": true,
    "bytecodeHash": "ipfs",
    "useLiteralContent": false
  },
  "optimizer": {
    "enabled": true,
    "runs": 1000000
  },
  "viaIR": true,
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  }
}

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"ReentrancyGuardReentrantCall","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"player","type":"address"},{"indexed":false,"internalType":"bool","name":"result","type":"bool"}],"name":"Claimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"player","type":"address"}],"name":"Played","type":"event"},{"inputs":[],"name":"claim","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"get_bets","outputs":[{"components":[{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"address","name":"player","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"alea","type":"uint256"},{"internalType":"uint256","name":"current_block","type":"uint256"}],"internalType":"struct Pandy30.Bet","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"list_bets_size","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxBET","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minBET","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"noncePlayed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"play","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"m","type":"uint256"}],"name":"setMaxBet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"m","type":"uint256"}],"name":"setMinBet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stake","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"withdrawn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

6080806040523461003e5760016000819055670de0b6b3a7640000600281905560035580546001600160a01b03191633179055610e3190816100448239f35b600080fdfe6040608081526004908136101561001557600080fd5b600091823560e01c80633a4b66f11461088d57806347ffc426146108505780634e71d92d1461080057806353f2092b1461063e578063881eff1e146105e757806388ea41b91461059057806393e84cd91461026f57806394f38bd3146102325780639f6509dc146101f1578063e6b43d01146101045763f9c62cc31461009a57600080fd5b346101005760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261010057803573ffffffffffffffffffffffffffffffffffffffff81168091036100fc579282916020948252845220549051908152f35b8380fd5b8280fd5b50346101005760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101005780359061015a73ffffffffffffffffffffffffffffffffffffffff600154163314610d96565b4782116101945750828080809381811561018b575b3390f115610181576020905160018152f35b51903d90823e3d90fd5b506108fc61016f565b60649060208451917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601660248201527f6e6f207375666666696369656e742062616c616e6365000000000000000000006044820152fd5b50503461022e57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022e576020906002549051908152f35b5080fd5b50503461022e57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022e576020906007549051908152f35b5091807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261058d576102a26109ff565b6102b363ffffffff333b1615610930565b60025434101580610581575b1561052457338152602091838352808220546104c85760075490805191848301428152448385015281606085015260608452608084019084821067ffffffffffffffff83111761049c5760649082855285519020069361031e826108e5565b82825260a081019433865261010060c083019234845260e081019283520191438352680100000000000000008510156104705760019687860160075561036386610995565b95909561044557908b9493929151865573ffffffffffffffffffffffffffffffffffffffff8987019151167fffffffffffffffffffffffff000000000000000000000000000000000000000082541617905551600285015551600384015551910155820180831161041957829394953386528652818520556005855243818520556006855242818520555192337f7c30c46017e6377826c6557f0d89e6760aced7a4ca61f469b1d729c50a81397c8280a2558152f35b6024846011887f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b60248a808e7f4e487b7100000000000000000000000000000000000000000000000000000000825252fd5b60248860418c7f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b60248660418a7f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b838360649251917f08c379a0000000000000000000000000000000000000000000000000000000008352820152600e60248201527f616c726561647920706c617965640000000000000000000000000000000000006044820152fd5b60648360208451917f08c379a0000000000000000000000000000000000000000000000000000000008352820152600960248201527f6261642076616c756500000000000000000000000000000000000000000000006044820152fd5b506003543411156102bf565b80fd5b83823461022e5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022e5773ffffffffffffffffffffffffffffffffffffffff60015416330361022e573560025580f35b83823461022e5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022e5773ffffffffffffffffffffffffffffffffffffffff60015416330361022e573560035580f35b5082903461022e57602091827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261058d5781359060808551610682816108e5565b8281528286820152828782015282606082015201526106a863ffffffff333b1615610930565b6007548110156107a457816106bc82610995565b50015443111561074857926106d260a094610995565b50908051926106e0846108e5565b82549485855273ffffffffffffffffffffffffffffffffffffffff80600186015416828701908152608060028701549486890195865260038801549760608a019889520154970196875284519788525116908601525190840152516060830152516080820152f35b509060649251917f08c379a0000000000000000000000000000000000000000000000000000000008352820152600960248201527f746f6f206561726c7900000000000000000000000000000000000000000000006044820152fd5b509060649251917f08c379a0000000000000000000000000000000000000000000000000000000008352820152600960248201527f62616420696e64657800000000000000000000000000000000000000000000006044820152fd5b50503461022e57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022e579060209161083c6109ff565b6001610846610a3a565b9255519015158152f35b50503461022e57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022e576020906003549051908152f35b5050817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022e576020906108de73ffffffffffffffffffffffffffffffffffffffff600154163314610d96565b5160018152f35b60a0810190811067ffffffffffffffff82111761090157604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b1561093757565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6f6e6c792077616c6c65740000000000000000000000000000000000000000006044820152fd5b6007548110156109d0576005906007600052027fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880190600090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600260005414610a10576002600055565b60046040517f3ee5aeb5000000000000000000000000000000000000000000000000000000008152fd5b610a4b63ffffffff333b1615610930565b600033815260206005815260408083205460028101809111610d0c57431115610d3957600a4201804211610d0c5733845260068352818420541015610caf5733835260048083528184205415610c5457338452808352818420547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8101908111610c2857610ae3903386528285528584812055610995565b50601e600382015410610b1e5750505182815233917f650639b17ab5dbad2d79a2e4757e3be67a53db225cede5d96cb5ab54837b85ce91a290565b6002909492939401908154908160011b9180830460021490151715610bfc5747821015610ba057508280808093818115610b97575b3390f115610b8b5755516001815233917f650639b17ab5dbad2d79a2e4757e3be67a53db225cede5d96cb5ab54837b85ce91a2600190565b509051903d90823e3d90fd5b506108fc610b53565b606490868651917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601160248201527f696e73756666696369656e742066756e640000000000000000000000000000006044820152fd5b8360116024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b6024856011847f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b8260649251917f08c379a0000000000000000000000000000000000000000000000000000000008352820152600a60248201527f6e6f7420706c61796564000000000000000000000000000000000000000000006044820152fd5b6064925051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152600a60248201527f6561726c792074696d65000000000000000000000000000000000000000000006044820152fd5b6024847f4e487b710000000000000000000000000000000000000000000000000000000081526011600452fd5b6064925051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152600b60248201527f6561726c7920626c6f636b0000000000000000000000000000000000000000006044820152fd5b15610d9d57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6f6e6c79206f776e6572000000000000000000000000000000000000000000006044820152fdfea2646970667358221220b54cfbb4f16913361b35a33f58a116c2c095ee66eb1d064a3c28d8d1ba12a4e164736f6c63430008130033

Deployed Bytecode

0x6040608081526004908136101561001557600080fd5b600091823560e01c80633a4b66f11461088d57806347ffc426146108505780634e71d92d1461080057806353f2092b1461063e578063881eff1e146105e757806388ea41b91461059057806393e84cd91461026f57806394f38bd3146102325780639f6509dc146101f1578063e6b43d01146101045763f9c62cc31461009a57600080fd5b346101005760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261010057803573ffffffffffffffffffffffffffffffffffffffff81168091036100fc579282916020948252845220549051908152f35b8380fd5b8280fd5b50346101005760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101005780359061015a73ffffffffffffffffffffffffffffffffffffffff600154163314610d96565b4782116101945750828080809381811561018b575b3390f115610181576020905160018152f35b51903d90823e3d90fd5b506108fc61016f565b60649060208451917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601660248201527f6e6f207375666666696369656e742062616c616e6365000000000000000000006044820152fd5b50503461022e57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022e576020906002549051908152f35b5080fd5b50503461022e57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022e576020906007549051908152f35b5091807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261058d576102a26109ff565b6102b363ffffffff333b1615610930565b60025434101580610581575b1561052457338152602091838352808220546104c85760075490805191848301428152448385015281606085015260608452608084019084821067ffffffffffffffff83111761049c5760649082855285519020069361031e826108e5565b82825260a081019433865261010060c083019234845260e081019283520191438352680100000000000000008510156104705760019687860160075561036386610995565b95909561044557908b9493929151865573ffffffffffffffffffffffffffffffffffffffff8987019151167fffffffffffffffffffffffff000000000000000000000000000000000000000082541617905551600285015551600384015551910155820180831161041957829394953386528652818520556005855243818520556006855242818520555192337f7c30c46017e6377826c6557f0d89e6760aced7a4ca61f469b1d729c50a81397c8280a2558152f35b6024846011887f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b60248a808e7f4e487b7100000000000000000000000000000000000000000000000000000000825252fd5b60248860418c7f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b60248660418a7f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b838360649251917f08c379a0000000000000000000000000000000000000000000000000000000008352820152600e60248201527f616c726561647920706c617965640000000000000000000000000000000000006044820152fd5b60648360208451917f08c379a0000000000000000000000000000000000000000000000000000000008352820152600960248201527f6261642076616c756500000000000000000000000000000000000000000000006044820152fd5b506003543411156102bf565b80fd5b83823461022e5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022e5773ffffffffffffffffffffffffffffffffffffffff60015416330361022e573560025580f35b83823461022e5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022e5773ffffffffffffffffffffffffffffffffffffffff60015416330361022e573560035580f35b5082903461022e57602091827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261058d5781359060808551610682816108e5565b8281528286820152828782015282606082015201526106a863ffffffff333b1615610930565b6007548110156107a457816106bc82610995565b50015443111561074857926106d260a094610995565b50908051926106e0846108e5565b82549485855273ffffffffffffffffffffffffffffffffffffffff80600186015416828701908152608060028701549486890195865260038801549760608a019889520154970196875284519788525116908601525190840152516060830152516080820152f35b509060649251917f08c379a0000000000000000000000000000000000000000000000000000000008352820152600960248201527f746f6f206561726c7900000000000000000000000000000000000000000000006044820152fd5b509060649251917f08c379a0000000000000000000000000000000000000000000000000000000008352820152600960248201527f62616420696e64657800000000000000000000000000000000000000000000006044820152fd5b50503461022e57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022e579060209161083c6109ff565b6001610846610a3a565b9255519015158152f35b50503461022e57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022e576020906003549051908152f35b5050817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022e576020906108de73ffffffffffffffffffffffffffffffffffffffff600154163314610d96565b5160018152f35b60a0810190811067ffffffffffffffff82111761090157604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b1561093757565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6f6e6c792077616c6c65740000000000000000000000000000000000000000006044820152fd5b6007548110156109d0576005906007600052027fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880190600090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600260005414610a10576002600055565b60046040517f3ee5aeb5000000000000000000000000000000000000000000000000000000008152fd5b610a4b63ffffffff333b1615610930565b600033815260206005815260408083205460028101809111610d0c57431115610d3957600a4201804211610d0c5733845260068352818420541015610caf5733835260048083528184205415610c5457338452808352818420547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8101908111610c2857610ae3903386528285528584812055610995565b50601e600382015410610b1e5750505182815233917f650639b17ab5dbad2d79a2e4757e3be67a53db225cede5d96cb5ab54837b85ce91a290565b6002909492939401908154908160011b9180830460021490151715610bfc5747821015610ba057508280808093818115610b97575b3390f115610b8b5755516001815233917f650639b17ab5dbad2d79a2e4757e3be67a53db225cede5d96cb5ab54837b85ce91a2600190565b509051903d90823e3d90fd5b506108fc610b53565b606490868651917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601160248201527f696e73756666696369656e742066756e640000000000000000000000000000006044820152fd5b8360116024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b6024856011847f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b8260649251917f08c379a0000000000000000000000000000000000000000000000000000000008352820152600a60248201527f6e6f7420706c61796564000000000000000000000000000000000000000000006044820152fd5b6064925051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152600a60248201527f6561726c792074696d65000000000000000000000000000000000000000000006044820152fd5b6024847f4e487b710000000000000000000000000000000000000000000000000000000081526011600452fd5b6064925051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152600b60248201527f6561726c7920626c6f636b0000000000000000000000000000000000000000006044820152fd5b15610d9d57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6f6e6c79206f776e6572000000000000000000000000000000000000000000006044820152fdfea2646970667358221220b54cfbb4f16913361b35a33f58a116c2c095ee66eb1d064a3c28d8d1ba12a4e164736f6c63430008130033

Deployed Bytecode Sourcemap

3588:3666:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6891:42;3588:3666;;;;6899:10;:19;6891:42;:::i;:::-;6958:21;6998:12;;3588:3666;;7048:35;;;;;;;;;;;3588:3666;6899:10;7048:35;;;;;3588:3666;;;;;;;7048:35;3588:3666;;;;;;;;;7048:35;;;;;3588:3666;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3968:36;3588:3666;;;;;;;;;;;;;;;;;;;;;;;;;;4604:9;3588:3666;;;;;;;;;;;;;;;;;2578:107;;:::i;:::-;5209:48;3588:3666;5230:10;5038:60;3588:3666;5116:8;5209:48;:::i;:::-;5287:6;3588:3666;5276:9;:17;;:38;;;3588:3666;;;;5230:10;3588:3666;;;;;;;;;;;;;5421:9;3588:3666;;;;6739:61;;;;6756:15;3588:3666;;6773:16;3588:3666;;;;;;;;;;6739:61;;3588:3666;;;;;;;;;;;;;6805:3;3588:3666;;;;;;6729:72;;3588:3666;;;;;:::i;:::-;;;;5502:53;;;5230:10;;3588:3666;;5502:53;;;;5276:9;;3588:3666;;;5502:53;;3588:3666;;;5502:53;5542:12;;3588:3666;;;;;;;;;;;;;5421:9;3588:3666;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5287:6;3588:3666;;;;;;;;;;;;;;;;;;;5230:10;;;;;3588:3666;;;;;;;;5613:10;3588:3666;;5542:12;3588:3666;;;;5661:14;3588:3666;;6756:15;3588:3666;;;;;5230:10;;5721:18;;;;3588:3666;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5276:38;3588:3666;5308:6;3588:3666;5276:9;5297:17;;5276:38;;3588:3666;;;;;;;;;;;;;;;;;;;;4362:10;:19;3588:3666;;;4393:10;3588:3666;;;;;;;;;;;;;;;;;;;;4475:10;:19;3588:3666;;;4506:10;3588:3666;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;4711:48;3588:3666;4732:10;5038:60;3588:3666;5116:8;4711:48;:::i;:::-;4786:9;3588:3666;4778:24;;3588:3666;;;4835:16;;;;:::i;:::-;:30;;3588:3666;4868:12;-1:-1:-1;3588:3666:0;;;4912:16;;3588:3666;4912:16;;:::i;:::-;3588:3666;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2578:107;3588:3666;2578:107;;;:::i;:::-;1956:1;2645;;:::i;:::-;3588:3666;;;;;;;;;;;;;;;;;;;;;;;;4011:36;3588:3666;;;;;;;;;;;;;;;;;;;7179:42;3588:3666;7201:5;3588:3666;;7187:10;:19;7179:42;:::i;:::-;3588:3666;7201:5;3588:3666;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;4786:9;3588:3666;;;;;;;;4786:9;-1:-1:-1;3588:3666:0;;;;;-1:-1:-1;3588:3666:0;:::o;:::-;;;;;;;;;;2691:313;1999:1;2820:7;3588:3666;2820:18;2816:88;;1999:1;2820:7;3588:3666;2691:313::o;2816:88::-;2862:30;3588:3666;;2862:30;;;;5775:857;5838:48;3588:3666;5859:10;5038:60;3588:3666;5116:8;5838:48;:::i;:::-;3588:3666;5859:10;3588:3666;;;5920:10;3588:3666;;;;;;;5945:1;3588:3666;;;;;;;5905:12;:41;3588:3666;;;5999:10;5981:15;3588:3666;5981:15;;3588:3666;;;5859:10;3588:3666;;6012:14;3588:3666;;;;;;-1:-1:-1;3588:3666:0;;;5859:10;3588:3666;;6072:11;3588:3666;;;;;;;6072:27;3588:3666;;5859:10;3588:3666;;;;;;;;;;;;;;;;;6233:16;5859:10;;3588:3666;;;;;;;;;;6233:16;:::i;:::-;6264:6;6273:2;6264:6;;;3588:3666;6264:11;6260:300;;-1:-1:-1;;3588:3666:0;;;;5859:10;;6575:26;;;5775:857;:::o;6260:300::-;5945:1;6307:8;;;;;;3588:3666;;;;;6167:1;3588:3666;;;;;5945:1;3588:3666;;;;;;;6358:21;6351:28;;3588:3666;;;6416:34;;;;;;;;;;;6260:300;5859:10;6416:34;;;;;3588:3666;;6167:1;3588:3666;;5859:10;;6497:25;;;6167:1;6537:11;:::o;6416:34::-;3588:3666;;;;;;;;;;;6416:34;;;;;3588:3666;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5999:10;3588:3666;;;;;;;;;;;;;;;;;;;;;;;5999:10;3588:3666;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;

Swarm Source

ipfs://b54cfbb4f16913361b35a33f58a116c2c095ee66eb1d064a3c28d8d1ba12a4e1

Block Transaction Gas Used Reward
view all blocks produced

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

Validator Index Block Amount
View All Withdrawals

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

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