ETH Price: $2,384.37 (+1.35%)

Contract

0xD31e8B5c7Df0b457a96934bB082E6739baA8715F
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Claim130537642021-08-19 5:16:341142 days ago1629350194IN
0xD31e8B5c...9baA8715F
0 ETH0.0006340623
Claim130537642021-08-19 5:16:341142 days ago1629350194IN
0xD31e8B5c...9baA8715F
0 ETH0.0005789221
Claim130537642021-08-19 5:16:341142 days ago1629350194IN
0xD31e8B5c...9baA8715F
0 ETH0.0006064922
Claim130537642021-08-19 5:16:341142 days ago1629350194IN
0xD31e8B5c...9baA8715F
0 ETH0.0005235619
Claim130537642021-08-19 5:16:341142 days ago1629350194IN
0xD31e8B5c...9baA8715F
0 ETH0.0005237919
Claim130537282021-08-19 5:10:031142 days ago1629349803IN
0xD31e8B5c...9baA8715F
0 ETH0.0007440127
Claim130537282021-08-19 5:10:031142 days ago1629349803IN
0xD31e8B5c...9baA8715F
0 ETH0.0007446627
Claim130537282021-08-19 5:10:031142 days ago1629349803IN
0xD31e8B5c...9baA8715F
0 ETH0.000689525
Claim130537282021-08-19 5:10:031142 days ago1629349803IN
0xD31e8B5c...9baA8715F
0 ETH0.0005375719.5
Claim130537282021-08-19 5:10:031142 days ago1629349803IN
0xD31e8B5c...9baA8715F
0 ETH0.0005395819.59
Claim130536962021-08-19 5:05:081142 days ago1629349508IN
0xD31e8B5c...9baA8715F
0 ETH0.001663820
Claim130411782021-08-17 6:42:511144 days ago1629182571IN
0xD31e8B5c...9baA8715F
0 ETH0.0024216729.1
Claim130411722021-08-17 6:41:371144 days ago1629182497IN
0xD31e8B5c...9baA8715F
0 ETH0.0025118430.1835
Claim129790982021-08-07 16:42:511153 days ago1628354571IN
0xD31e8B5c...9baA8715F
0 ETH0.0054672554.50796895
Claim129788932021-08-07 15:59:111153 days ago1628351951IN
0xD31e8B5c...9baA8715F
0 ETH0.0014291142.68690612
Claim129673942021-08-05 21:31:001155 days ago1628199060IN
0xD31e8B5c...9baA8715F
0 ETH0.0030786537
Claim129668652021-08-05 19:34:361155 days ago1628192076IN
0xD31e8B5c...9baA8715F
0 ETH0.0012511245.40316397
Claim129657582021-08-05 15:28:341155 days ago1628177314IN
0xD31e8B5c...9baA8715F
0 ETH0.0057401169.00000145
Claim129657472021-08-05 15:25:581155 days ago1628177158IN
0xD31e8B5c...9baA8715F
0 ETH0.0056569268.00000145
Claim129655852021-08-05 14:47:271155 days ago1628174847IN
0xD31e8B5c...9baA8715F
0 ETH0.0057309568.88
Claim129655582021-08-05 14:41:341155 days ago1628174494IN
0xD31e8B5c...9baA8715F
0 ETH0.0018377466.66224291
Claim129655582021-08-05 14:41:341155 days ago1628174494IN
0xD31e8B5c...9baA8715F
0 ETH0.0055464366.66224291
Claim129655242021-08-05 14:34:001155 days ago1628174040IN
0xD31e8B5c...9baA8715F
0 ETH0.005281463.48602386
Claim129653232021-08-05 13:50:161155 days ago1628171416IN
0xD31e8B5c...9baA8715F
0 ETH0.0056352967.74
Claim129652362021-08-05 13:26:531155 days ago1628170013IN
0xD31e8B5c...9baA8715F
0 ETH0.0012516745.40316397
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xF40FaA61...1D535B492
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
Minter

Compiler Version
v0.6.12+commit.27d51765

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, GNU LGPLv3 license
/**
 *Submitted for verification at Etherscan.io on 2021-02-06
*/

pragma solidity 0.6.12;

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

    function _msgData() internal view virtual returns (bytes memory) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }	
}

contract Ownable is Context {
    address private _owner;
    address public admin;
    address public dev;
    
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor () internal {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }

    function setAdmin(address _admin) public onlyOwner {
        admin = _admin;
    }

    function setDev(address _dev) public onlyOwner {
        dev = _dev;
    }
    
    modifier onlyAdmin {
        require(msg.sender == admin || msg.sender == _owner);
        _;
    }
    
    modifier onlyDev {
        require(msg.sender == dev || msg.sender == admin || msg.sender == _owner);
        _;
    }    
}

library SafeMath {

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // 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 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

   function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

abstract contract ContractConn{
    function transfer(address _to, uint256 _value) virtual public;
    function balanceOf(address who) virtual public view returns (uint256);
}



contract Minter is Ownable {

    using SafeMath for uint256;
    
    uint256 public userMinted = 0;
    bool public checkDeadline = false;   

    mapping (uint256 => bool) public claimedOrderId;
    
    ContractConn public zild;   
    
    event EventUpdateCheckDeadline(bool newValue);

    event EventClaim(uint256 orderId, address userAddress,uint256 amount);
    
    constructor(address _token) public {
        zild = ContractConn(_token);
    }    

    function claim(uint256 orderId, uint256 amount, uint256 deadline, uint8 v, bytes32 r, bytes32 s) public  {
        if(checkDeadline){
            require(deadline >= block.timestamp, "expired order");
        }
        
        require(claimedOrderId[orderId] == false, "already claimed");
      
        bytes32 hash1 = keccak256(
            abi.encode(
                address(this),
                msg.sender,
                orderId,
                amount,
                deadline
            )
        );

        bytes32 hash2 = keccak256(
            abi.encodePacked(
                "\x19Ethereum Signed Message:\n32",
                hash1
            )
        );

        address signer = openzeppelin_recover(hash2, v, r, s);

        require(signer == dev, "invalid signer");

        zild.transfer(msg.sender,amount);
        userMinted = userMinted.add(amount);
        
        claimedOrderId[orderId] = true;
        emit EventClaim(orderId, msg.sender, amount);
    }

    // for special case
    function claimByAdmin(uint256 orderId, address _to, uint256 amount) public onlyAdmin {        
        require(claimedOrderId[orderId] == false, "already claimed");
        claimedOrderId[orderId] = true;   
        zild.transfer(_to,amount);
        userMinted = userMinted.add(amount);
        emit EventClaim(orderId, _to,amount);
    }

    function updateCheckDeadline(bool _checkDeadline) public onlyAdmin {        
        checkDeadline = _checkDeadline;
        emit EventUpdateCheckDeadline(_checkDeadline);
    } 

    /**
     *  openzeppelin-contracts/blob/master/contracts/cryptography/ECDSA.sol
     * @dev Overload of {ECDSA-recover-bytes32-bytes-} that receives the `v`,
     * `r` and `s` signature fields separately.
     */
    function openzeppelin_recover(bytes32 hash, uint8 v, bytes32 r, bytes32 s) internal pure returns (address) {
        // EIP-2 still allows signature malleability for ecrecover(). Remove this possibility and make the signature
        // unique. Appendix F in the Ethereum Yellow paper (https://ethereum.github.io/yellowpaper/paper.pdf), defines
        // the valid range for s in (281): 0 < s < secp256k1n ÷ 2 + 1, and for v in (282): v ∈ {27, 28}. Most
        // signatures from current libraries generate a unique signature with an s-value in the lower half order.
        //
        // If your library generates malleable signatures, such as s-values in the upper range, calculate a new s-value
        // with 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141 - s1 and flip v from 27 to 28 or
        // vice versa. If your library also generates signatures with 0/1 for v instead 27/28, add 27 to v to accept
        // these malleable signatures as well.
        require(uint256(s) <= 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0, "ECDSA: invalid signature 's' value");
        require(v == 27 || v == 28, "ECDSA: invalid signature 'v' value");

        // If the signature is valid (and not malleable), return the signer address
        address signer = ecrecover(hash, v, r, s);
        require(signer != address(0), "ECDSA: invalid signature");

        return signer;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"orderId","type":"uint256"},{"indexed":false,"internalType":"address","name":"userAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"EventClaim","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"newValue","type":"bool"}],"name":"EventUpdateCheckDeadline","type":"event"},{"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":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"checkDeadline","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"orderId","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"orderId","type":"uint256"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"claimByAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"claimedOrderId","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dev","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_admin","type":"address"}],"name":"setAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_dev","type":"address"}],"name":"setDev","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_checkDeadline","type":"bool"}],"name":"updateCheckDeadline","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"userMinted","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"zild","outputs":[{"internalType":"contract ContractConn","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c806391cca3db1161008c578063d477f05f11610066578063d477f05f14610203578063e53e92b514610229578063f2fde38b1461025b578063f851a44014610281576100ea565b806391cca3db146101bf5780639b271866146101c7578063b07eb675146101e4576100ea565b8063704b6c02116100c8578063704b6c0214610165578063715018a61461018b578063759b3b61146101935780638da5cb5b146101b7576100ea565b806307d6b348146100ef57806343bf99361461012f57806363ec31b91461014b575b600080fd5b61012d600480360360c081101561010557600080fd5b5080359060208101359060408101359060ff6060820135169060808101359060a00135610289565b005b6101376104fb565b604080519115158252519081900360200190f35b610153610504565b60408051918252519081900360200190f35b61012d6004803603602081101561017b57600080fd5b50356001600160a01b031661050a565b61012d610584565b61019b610626565b604080516001600160a01b039092168252519081900360200190f35b61019b610635565b61019b610644565b610137600480360360208110156101dd57600080fd5b5035610653565b61012d600480360360208110156101fa57600080fd5b50351515610668565b61012d6004803603602081101561021957600080fd5b50356001600160a01b03166106db565b61012d6004803603606081101561023f57600080fd5b508035906001600160a01b036020820135169060400135610755565b61012d6004803603602081101561027157600080fd5b50356001600160a01b03166108b5565b61019b6109ad565b60045460ff16156102d957428410156102d9576040805162461bcd60e51b815260206004820152600d60248201526c32bc3834b932b21037b93232b960991b604482015290519081900360640190fd5b60008681526005602052604090205460ff161561032f576040805162461bcd60e51b815260206004820152600f60248201526e185b1c9958591e4818db185a5b5959608a1b604482015290519081900360640190fd5b60408051306020808301919091523382840152606082018990526080820188905260a08083018890528351808403909101815260c0830184528051908201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000060e084015260fc8084018290528451808503909101815261011c909301909352815191012060006103c2828787876109bc565b6002549091506001600160a01b03808316911614610418576040805162461bcd60e51b815260206004820152600e60248201526d34b73b30b634b21039b4b3b732b960911b604482015290519081900360640190fd5b6006546040805163a9059cbb60e01b8152336004820152602481018b905290516001600160a01b039092169163a9059cbb9160448082019260009290919082900301818387803b15801561046b57600080fd5b505af115801561047f573d6000803e3d6000fd5b50506003546104919250905089610b3a565b600355600089815260056020908152604091829020805460ff1916600117905581518b815233918101919091528082018a905290517f2d85040ebb83058569d1ff4b6c4c3efaebc0c9d2d26301ae5fba19ffde4ce7179181900360600190a1505050505050505050565b60045460ff1681565b60035481565b610512610b9b565b6000546001600160a01b03908116911614610562576040805162461bcd60e51b81526020600482018190526024820152600080516020610c0a833981519152604482015290519081900360640190fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b61058c610b9b565b6000546001600160a01b039081169116146105dc576040805162461bcd60e51b81526020600482018190526024820152600080516020610c0a833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6006546001600160a01b031681565b6000546001600160a01b031690565b6002546001600160a01b031681565b60056020526000908152604090205460ff1681565b6001546001600160a01b031633148061068b57506000546001600160a01b031633145b61069457600080fd5b6004805482151560ff19909116811790915560408051918252517fc012022669aa54c93cd8ee28cb96facaf4ae51119e7aff0d843413f05ea23afc9181900360200190a150565b6106e3610b9b565b6000546001600160a01b03908116911614610733576040805162461bcd60e51b81526020600482018190526024820152600080516020610c0a833981519152604482015290519081900360640190fd5b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b031633148061077857506000546001600160a01b031633145b61078157600080fd5b60008381526005602052604090205460ff16156107d7576040805162461bcd60e51b815260206004820152600f60248201526e185b1c9958591e4818db185a5b5959608a1b604482015290519081900360640190fd5b600083815260056020526040808220805460ff19166001179055600654815163a9059cbb60e01b81526001600160a01b038681166004830152602482018690529251929091169263a9059cbb9260448084019382900301818387803b15801561083f57600080fd5b505af1158015610853573d6000803e3d6000fd5b50506003546108659250905082610b3a565b600355604080518481526001600160a01b038416602082015280820183905290517f2d85040ebb83058569d1ff4b6c4c3efaebc0c9d2d26301ae5fba19ffde4ce7179181900360600190a1505050565b6108bd610b9b565b6000546001600160a01b0390811691161461090d576040805162461bcd60e51b81526020600482018190526024820152600080516020610c0a833981519152604482015290519081900360640190fd5b6001600160a01b0381166109525760405162461bcd60e51b8152600401808060200182810382526026815260200180610ba06026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b031681565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115610a1d5760405162461bcd60e51b8152600401808060200182810382526022815260200180610bc66022913960400191505060405180910390fd5b8360ff16601b1480610a3257508360ff16601c145b610a6d5760405162461bcd60e51b8152600401808060200182810382526022815260200180610be86022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015610ac9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b31576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b95945050505050565b600082820183811015610b94576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b339056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345434453413a20696e76616c6964207369676e6174757265202773272076616c756545434453413a20696e76616c6964207369676e6174757265202776272076616c75654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a2646970667358221220a71788103f46393bdd3ad4d3566d4eb66b0482774aaed6b3221fa8e3fcc56e2f64736f6c634300060c0033

Deployed Bytecode Sourcemap

4065:3754:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4550:1023;;;;;;;;;;;;;;;;-1:-1:-1;4550:1023:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4176:33;;;:::i;:::-;;;;;;;;;;;;;;;;;;4140:29;;;:::i;:::-;;;;;;;;;;;;;;;;1679:84;;;;;;;;;;;;;;;;-1:-1:-1;1679:84:0;-1:-1:-1;;;;;1679:84:0;;:::i;1271:148::-;;;:::i;4281:24::-;;;:::i;:::-;;;;-1:-1:-1;;;;;4281:24:0;;;;;;;;;;;;;;972:79;;;:::i;506:18::-;;;:::i;4221:47::-;;;;;;;;;;;;;;;;-1:-1:-1;4221:47:0;;:::i;5959:180::-;;;;;;;;;;;;;;;;-1:-1:-1;5959:180:0;;;;:::i;1771:76::-;;;;;;;;;;;;;;;;-1:-1:-1;1771:76:0;-1:-1:-1;;;;;1771:76:0;;:::i;5606:345::-;;;;;;;;;;;;;;;;-1:-1:-1;5606:345:0;;;-1:-1:-1;;;;;5606:345:0;;;;;;;;;;:::i;1427:244::-;;;;;;;;;;;;;;;;-1:-1:-1;1427:244:0;-1:-1:-1;;;;;1427:244:0;;:::i;479:20::-;;;:::i;4550:1023::-;4669:13;;;;4666:97;;;4718:15;4706:8;:27;;4698:53;;;;;-1:-1:-1;;;4698:53:0;;;;;;;;;;;;-1:-1:-1;;;4698:53:0;;;;;;;;;;;;;;;4791:23;;;;:14;:23;;;;;;;;:32;4783:60;;;;;-1:-1:-1;;;4783:60:0;;;;;;;;;;;;-1:-1:-1;;;4783:60:0;;;;;;;;;;;;;;;4902:164;;;4939:4;4902:164;;;;;;;;4963:10;4902:164;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4878:199;;;;;;5130:108;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5106:143;;;;;4862:13;5279:36;5106:143;5307:1;5310;5313;5279:20;:36::i;:::-;5346:3;;5262:53;;-1:-1:-1;;;;;;5336:13:0;;;5346:3;;5336:13;5328:40;;;;;-1:-1:-1;;;5328:40:0;;;;;;;;;;;;-1:-1:-1;;;5328:40:0;;;;;;;;;;;;;;;5381:4;;:32;;;-1:-1:-1;;;5381:32:0;;5395:10;5381:32;;;;;;;;;;;;-1:-1:-1;;;;;5381:4:0;;;;:13;;:32;;;;;:4;;:32;;;;;;;;:4;;:32;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5437:10:0;;:22;;-1:-1:-1;5437:10:0;-1:-1:-1;5452:6:0;5437:14;:22::i;:::-;5424:10;:35;5480:23;;;;:14;:23;;;;;;;;;:30;;-1:-1:-1;;5480:30:0;5506:4;5480:30;;;5526:39;;;;;5546:10;5526:39;;;;;;;;;;;;;;;;;;;;;;;;4550:1023;;;;;;;;;:::o;4176:33::-;;;;;;:::o;4140:29::-;;;;:::o;1679:84::-;1194:12;:10;:12::i;:::-;1184:6;;-1:-1:-1;;;;;1184:6:0;;;:22;;;1176:67;;;;;-1:-1:-1;;;1176:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1176:67:0;;;;;;;;;;;;;;;1741:5:::1;:14:::0;;-1:-1:-1;;;;;;1741:14:0::1;-1:-1:-1::0;;;;;1741:14:0;;;::::1;::::0;;;::::1;::::0;;1679:84::o;1271:148::-;1194:12;:10;:12::i;:::-;1184:6;;-1:-1:-1;;;;;1184:6:0;;;:22;;;1176:67;;;;;-1:-1:-1;;;1176:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1176:67:0;;;;;;;;;;;;;;;1378:1:::1;1362:6:::0;;1341:40:::1;::::0;-1:-1:-1;;;;;1362:6:0;;::::1;::::0;1341:40:::1;::::0;1378:1;;1341:40:::1;1409:1;1392:19:::0;;-1:-1:-1;;;;;;1392:19:0::1;::::0;;1271:148::o;4281:24::-;;;-1:-1:-1;;;;;4281:24:0;;:::o;972:79::-;1010:7;1037:6;-1:-1:-1;;;;;1037:6:0;972:79;:::o;506:18::-;;;-1:-1:-1;;;;;506:18:0;;:::o;4221:47::-;;;;;;;;;;;;;;;:::o;5959:180::-;1911:5;;-1:-1:-1;;;;;1911:5:0;1897:10;:19;;:43;;-1:-1:-1;1934:6:0;;-1:-1:-1;;;;;1934:6:0;1920:10;:20;1897:43;1889:52;;;;;;6045:13:::1;:30:::0;;;::::1;;-1:-1:-1::0;;6045:30:0;;::::1;::::0;::::1;::::0;;;6091:40:::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;::::1;5959:180:::0;:::o;1771:76::-;1194:12;:10;:12::i;:::-;1184:6;;-1:-1:-1;;;;;1184:6:0;;;:22;;;1176:67;;;;;-1:-1:-1;;;1176:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1176:67:0;;;;;;;;;;;;;;;1829:3:::1;:10:::0;;-1:-1:-1;;;;;;1829:10:0::1;-1:-1:-1::0;;;;;1829:10:0;;;::::1;::::0;;;::::1;::::0;;1771:76::o;5606:345::-;1911:5;;-1:-1:-1;;;;;1911:5:0;1897:10;:19;;:43;;-1:-1:-1;1934:6:0;;-1:-1:-1;;;;;1934:6:0;1920:10;:20;1897:43;1889:52;;;;;;5718:23:::1;::::0;;;:14:::1;:23;::::0;;;;;::::1;;:32;5710:60;;;::::0;;-1:-1:-1;;;5710:60:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;5710:60:0;;;;;;;;;;;;;::::1;;5781:23;::::0;;;:14:::1;:23;::::0;;;;;:30;;-1:-1:-1;;5781:30:0::1;5807:4;5781:30;::::0;;5825:4:::1;::::0;:25;;-1:-1:-1;;;5825:25:0;;-1:-1:-1;;;;;5825:25:0;;::::1;;::::0;::::1;::::0;;;;;;;;;:4;;;::::1;::::0;:13:::1;::::0;:25;;;;;;;;;;5781:23;5825:4;:25;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5874:10:0::1;::::0;:22:::1;::::0;-1:-1:-1;5874:10:0;-1:-1:-1;5889:6:0;5874:14:::1;:22::i;:::-;5861:10;:35:::0;5912:31:::1;::::0;;;;;-1:-1:-1;;;;;5912:31:0;::::1;;::::0;::::1;::::0;;;;;;;;;::::1;::::0;;;;;;;::::1;5606:345:::0;;;:::o;1427:244::-;1194:12;:10;:12::i;:::-;1184:6;;-1:-1:-1;;;;;1184:6:0;;;:22;;;1176:67;;;;;-1:-1:-1;;;1176:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1176:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;1516:22:0;::::1;1508:73;;;;-1:-1:-1::0;;;1508:73:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1618:6;::::0;;1597:38:::1;::::0;-1:-1:-1;;;;;1597:38:0;;::::1;::::0;1618:6;::::1;::::0;1597:38:::1;::::0;::::1;1646:6;:17:::0;;-1:-1:-1;;;;;;1646:17:0::1;-1:-1:-1::0;;;;;1646:17:0;;;::::1;::::0;;;::::1;::::0;;1427:244::o;479:20::-;;;-1:-1:-1;;;;;479:20:0;;:::o;6371:1445::-;6469:7;7394:66;7380:80;;;7372:127;;;;-1:-1:-1;;;7372:127:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7518:1;:7;;7523:2;7518:7;:18;;;;7529:1;:7;;7534:2;7529:7;7518:18;7510:65;;;;-1:-1:-1;;;7510:65:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7673:14;7690:24;7700:4;7706:1;7709;7712;7690:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7690:24:0;;-1:-1:-1;;7690:24:0;;;-1:-1:-1;;;;;;;7733:20:0;;7725:57;;;;;-1:-1:-1;;;7725:57:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;7802:6;6371:1445;-1:-1:-1;;;;;6371:1445:0:o;2131:181::-;2189:7;2221:5;;;2245:6;;;;2237:46;;;;;-1:-1:-1;;;2237:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;2303:1;2131:181;-1:-1:-1;;;2131:181:0:o;60:106::-;148:10;60:106;:::o

Swarm Source

ipfs://a71788103f46393bdd3ad4d3566d4eb66b0482774aaed6b3221fa8e3fcc56e2f

Block Transaction Difficulty 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
Loading...
Loading
[ 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.