ETH Price: $3,319.56 (+2.21%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Send Tokens207700572024-09-17 11:33:35136 days ago1726572815IN
0x36BAd367...CFFD47f36
0 ETH0.000135273.43263373
Send Tokens119664202021-03-03 16:32:051430 days ago1614789125IN
0x36BAd367...CFFD47f36
0 ETH0.00715469122
Send Tokens119662642021-03-03 15:56:311430 days ago1614786991IN
0x36BAd367...CFFD47f36
0 ETH0.00637198121
Claim Tokens117191362021-01-24 15:20:271468 days ago1611501627IN
0x36BAd367...CFFD47f36
0 ETH0.004288956.87
Claim Tokens117191362021-01-24 15:20:271468 days ago1611501627IN
0x36BAd367...CFFD47f36
0 ETH0.004288956.87
Claim Tokens117191182021-01-24 15:17:251468 days ago1611501445IN
0x36BAd367...CFFD47f36
0 ETH0.0048902765
Claim Tokens117191172021-01-24 15:17:221468 days ago1611501442IN
0x36BAd367...CFFD47f36
0 ETH0.0048883965
Claim Tokens117190852021-01-24 15:10:411468 days ago1611501041IN
0x36BAd367...CFFD47f36
0 ETH0.0048145964
Claim Tokens117190852021-01-24 15:10:411468 days ago1611501041IN
0x36BAd367...CFFD47f36
0 ETH0.0048748765.00000145
Claim Tokens117190852021-01-24 15:10:411468 days ago1611501041IN
0x36BAd367...CFFD47f36
0 ETH0.004789463.8153136
Claim Tokens117190852021-01-24 15:10:411468 days ago1611501041IN
0x36BAd367...CFFD47f36
0 ETH0.0048764365
Claim Tokens117190852021-01-24 15:10:411468 days ago1611501041IN
0x36BAd367...CFFD47f36
0 ETH0.0048784465.00000145
Claim Tokens117190852021-01-24 15:10:411468 days ago1611501041IN
0x36BAd367...CFFD47f36
0 ETH0.0047895363.8153136
Claim Tokens117190612021-01-24 15:04:071468 days ago1611500647IN
0x36BAd367...CFFD47f36
0 ETH0.0047895363.8153136
Claim Tokens117190432021-01-24 14:59:291468 days ago1611500369IN
0x36BAd367...CFFD47f36
0 ETH0.0051433756.87
Claim Tokens117190202021-01-24 14:54:351468 days ago1611500075IN
0x36BAd367...CFFD47f36
0 ETH0.0051421256.87
Claim Tokens117190152021-01-24 14:53:521468 days ago1611500032IN
0x36BAd367...CFFD47f36
0 ETH0.005143656.87
Claim Tokens117190152021-01-24 14:53:521468 days ago1611500032IN
0x36BAd367...CFFD47f36
0 ETH0.005155656.87
Claim Tokens117186172021-01-24 13:37:171468 days ago1611495437IN
0x36BAd367...CFFD47f36
0 ETH0.0048275264
Claim Tokens117185842021-01-24 13:29:211468 days ago1611494961IN
0x36BAd367...CFFD47f36
0 ETH0.0046333661.60000023
Claim Tokens117185782021-01-24 13:28:121468 days ago1611494892IN
0x36BAd367...CFFD47f36
0 ETH0.0048138864
Claim Tokens117185702021-01-24 13:26:391468 days ago1611494799IN
0x36BAd367...CFFD47f36
0 ETH0.0052445958.00000145
Claim Tokens117185702021-01-24 13:26:391468 days ago1611494799IN
0x36BAd367...CFFD47f36
0 ETH0.0047771564
Claim Tokens117185702021-01-24 13:26:391468 days ago1611494799IN
0x36BAd367...CFFD47f36
0 ETH0.0052582858.00000145
Claim Tokens117175702021-01-24 9:41:591468 days ago1611481319IN
0x36BAd367...CFFD47f36
0 ETH0.0039489452.5
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
JasmyHyperDrop

Compiler Version
v0.6.12+commit.27d51765

Optimization Enabled:
Yes with 10000 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2021-01-09
*/

// SPDX-License-Identifier: UNLICENSED

pragma solidity ^0.6.12;

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves `amount` tokens from the caller's account to `recipient`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(address owner, address spender) external view returns (uint256);

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `sender` to `recipient` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

contract JasmyHyperDrop
{
    address private admin;
    address private signOwner;
    IERC20 private token;
    
    uint256 private defaultTokensAmount;
    uint32 private claimedCount;
    
    mapping(uint16 => uint256) private bitmask;
    
    string private constant ERR_MSG_SENDER = "ERR_MSG_SENDER";
    string private constant ERR_AMOUNT = "ERR_AMOUNT";
    
    //--------------------------------------------------------------------------------------------------------------------------
    constructor(address _admin, address _signOwner, address _tokenAddress, uint256 _defaultTokensAmount) public
    {
        admin                   = _admin;
        signOwner               = _signOwner;
        token                   = IERC20(_tokenAddress);
        defaultTokensAmount     = _defaultTokensAmount;
        
        setClaimed(type(uint16).max, type(uint8).max); // gas savings for the first user that will claim tokens
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function getAdmin() external view returns (address)
    {
        return admin;
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function getSignOwner() external view returns (address)
    {
        return signOwner;
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function setSignOwner(address _signOwner) external
    {
        require(msg.sender == admin, ERR_MSG_SENDER);
        
        signOwner = _signOwner;
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function getTokenAddress() external view returns (address)
    {
        return address(token);
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function getTotalTokensBalance() external view returns (uint256)
    {
        return token.balanceOf(address(this));
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function sendTokens(address _to, uint256 _amount) external
    {
        require(msg.sender == admin, ERR_MSG_SENDER);
        require(_amount <= token.balanceOf(address(this)), ERR_AMOUNT);
        
        if(_amount == 0)
        {
            token.transfer(_to, token.balanceOf(address(this)));
        }
        else
        {
            token.transfer(_to, _amount);
        }
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function getDefaultTokensAmount() external view returns (uint256)
    {
        return defaultTokensAmount;
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function setDefaultTokensAmount(uint256 _amount) external
    {
        require(msg.sender == admin, ERR_MSG_SENDER);
        
        defaultTokensAmount = _amount;
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function getClaimedCount() external view returns (uint32)
    {
        return claimedCount;
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function claimTokens(uint16 _block, uint8 _bit, bytes memory _signature) external
    {
        require(!isClaimed(_block, _bit), "ERR_ALREADY_CLAIMED");
        
        string memory message = string(abi.encodePacked(toAsciiString(msg.sender), ";", uintToString(_block), ";", uintToString(_bit)));
        verify(message, _signature);
        
        token.transfer(msg.sender, defaultTokensAmount);
        
        setClaimed(_block, _bit);
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function claimTokens(uint16 _block, uint8 _bit, uint256 _tokensCount, bytes memory _signature) external
    {
        require(!isClaimed(_block, _bit));
        
        string memory message = string(abi.encodePacked(toAsciiString(msg.sender), ";", uintToString(_block), ";", uintToString(_bit), ";", uintToString(_tokensCount)));
        verify(message, _signature);
        
        token.transfer(msg.sender, _tokensCount);
        
        setClaimed(_block, _bit);
    }

    //--------------------------------------------------------------------------------------------------------------------------
    function setClaimed(uint16 _block, uint8 _bit) private
    {
        uint256 bitBlock = bitmask[_block];
        uint256 mask = uint256(1) << _bit;
        
        bitmask[_block] = (bitBlock | mask);
        
        ++claimedCount;
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function isClaimed(uint16 _block, uint8 _bit) public view returns (bool)
    {
        uint256 bitBlock = bitmask[_block];
        uint256 mask = uint256(1) << _bit;
        
        return (bitBlock & mask) > 0;
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function verify(string memory _message, bytes memory _sig) private view
    {
        bytes32 messageHash = keccak256(abi.encodePacked("\x19Ethereum Signed Message:\n32", keccak256(abi.encodePacked(_message))));
        address messageSigner = recover(messageHash, _sig);
        
        require(messageSigner == signOwner, "ERR_VERIFICATION_FAILED");
    }

    //--------------------------------------------------------------------------------------------------------------------------
    function recover(bytes32 _hash, bytes memory _sig) private pure returns (address)
    {
        bytes32 r;
        bytes32 s;
        uint8 v;
        
        require(_sig.length == 65, "ERR_RECOVER_SIG_SIZE");

        assembly
        {
            r := mload(add(_sig, 32))
            s := mload(add(_sig, 64))
            v := byte(0, mload(add(_sig, 96)))
        }

        if(v < 27)
        {
            v += 27;
        }
        
        require(v == 27 || v == 28, "ERR_RECOVER_INVALID_SIG");

        return ecrecover(_hash, v, r, s);
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function uintToString(uint _i) private pure returns (string memory)
    {
        if(_i == 0)
        {
            return "0";
        }
        uint j = _i;
        uint len;
        while (j != 0)
        {
            len++;
            j /= 10;
        }
        bytes memory bstr = new bytes(len);
        uint k = len - 1;
        while(_i != 0)
        {
            bstr[k--] = byte(uint8(48 + _i % 10));
            _i /= 10;
        }
        return string(bstr);
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function toAsciiString(address _addr) private pure returns (string memory)
    {
        bytes memory s = new bytes(40);
        for(uint i = 0; i < 20; i++)
        {
            byte b = byte(uint8(uint(_addr) / (2**(8*(19 - i)))));
            byte hi = byte(uint8(b) / 16);
            byte lo = byte(uint8(b) - 16 * uint8(hi));
            s[2*i] = char(hi);
            s[2*i+1] = char(lo);            
        }
        return string(s);
    }
    
    //--------------------------------------------------------------------------------------------------------------------------
    function char(byte value) private pure returns (byte)
    {
        if(uint8(value) < 10)
        {
            return byte(uint8(value) + 0x30);
        }
        else
        {
            return byte(uint8(value) + 0x57);
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_admin","type":"address"},{"internalType":"address","name":"_signOwner","type":"address"},{"internalType":"address","name":"_tokenAddress","type":"address"},{"internalType":"uint256","name":"_defaultTokensAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint16","name":"_block","type":"uint16"},{"internalType":"uint8","name":"_bit","type":"uint8"},{"internalType":"bytes","name":"_signature","type":"bytes"}],"name":"claimTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"_block","type":"uint16"},{"internalType":"uint8","name":"_bit","type":"uint8"},{"internalType":"uint256","name":"_tokensCount","type":"uint256"},{"internalType":"bytes","name":"_signature","type":"bytes"}],"name":"claimTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getClaimedCount","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDefaultTokensAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getSignOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTokenAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalTokensBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16","name":"_block","type":"uint16"},{"internalType":"uint8","name":"_bit","type":"uint8"}],"name":"isClaimed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"sendTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setDefaultTokensAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_signOwner","type":"address"}],"name":"setSignOwner","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b5060405161171f38038061171f8339818101604052608081101561003357600080fd5b50805160208201516040830151606090930151600080546001600160a01b038086166001600160a01b03199283161790925560018054838616908316179055600280549287169290911691909117905560038190559192909161009961ffff60ff6100a2565b505050506100e6565b61ffff9190911660009081526005602052604090208054600160ff90931683901b1790556004805463ffffffff19811663ffffffff91821690930116919091179055565b61162a806100f56000396000f3fe608060405234801561001057600080fd5b50600436106100d45760003560e01c8063916efaaf11610081578063d1f5dcdb1161005b578063d1f5dcdb146101f3578063d8b2b658146102ac578063fe1977f91461036c576100d4565b8063916efaaf1461018c578063abc4a65e14610194578063cc7a4870146101d2576100d4565b80632fedca14116100b25780632fedca141461014d5780636e9960c314610167578063712f61dc1461016f576100d4565b806305ab421d146100d9578063076aa3261461011457806310fe9ae814610145575b600080fd5b610112600480360360408110156100ef57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813516906020013561039f565b005b61011c6107cb565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61011c6107e7565b610155610803565b60408051918252519081900360200190f35b61011c610809565b6101126004803603602081101561018557600080fd5b5035610825565b6101556108e0565b6101be600480360360408110156101aa57600080fd5b50803561ffff16906020013560ff16610982565b604080519115158252519081900360200190f35b6101da6109a6565b6040805163ffffffff9092168252519081900360200190f35b6101126004803603606081101561020957600080fd5b61ffff8235169160ff6020820135169181019060608101604082013564010000000081111561023757600080fd5b82018360208201111561024957600080fd5b8035906020019184600183028401116401000000008311171561026b57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109b2945050505050565b610112600480360360808110156102c257600080fd5b61ffff8235169160ff60208201351691604082013591908101906080810160608201356401000000008111156102f757600080fd5b82018360208201111561030957600080fd5b8035906020019184600183028401116401000000008311171561032b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610c5e945050505050565b6101126004803603602081101561038257600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610f2b565b60005460408051808201909152600e81527f4552525f4d53475f53454e44455200000000000000000000000000000000000060208201529073ffffffffffffffffffffffffffffffffffffffff163314610491576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561045657818101518382015260200161043e565b50505050905090810190601f1680156104835780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600254604080517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152905173ffffffffffffffffffffffffffffffffffffffff909216916370a0823191602480820192602092909190829003018186803b15801561050357600080fd5b505afa158015610517573d6000803e3d6000fd5b505050506040513d602081101561052d57600080fd5b505160408051808201909152600a81527f4552525f414d4f554e54000000000000000000000000000000000000000000006020820152908211156105cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181815283516024840152835190928392604490910191908501908083836000831561045657818101518382015260200161043e565b508061071e57600254604080517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152905173ffffffffffffffffffffffffffffffffffffffff9092169163a9059cbb91859184916370a08231916024808301926020929190829003018186803b15801561064c57600080fd5b505afa158015610660573d6000803e3d6000fd5b505050506040513d602081101561067657600080fd5b5051604080517fffffffff0000000000000000000000000000000000000000000000000000000060e086901b16815273ffffffffffffffffffffffffffffffffffffffff909316600484015260248301919091525160448083019260209291908290030181600087803b1580156106ec57600080fd5b505af1158015610700573d6000803e3d6000fd5b505050506040513d602081101561071657600080fd5b506107c79050565b600254604080517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152602482018590529151919092169163a9059cbb9160448083019260209291908290030181600087803b15801561079a57600080fd5b505af11580156107ae573d6000803e3d6000fd5b505050506040513d60208110156107c457600080fd5b50505b5050565b60015473ffffffffffffffffffffffffffffffffffffffff1690565b60025473ffffffffffffffffffffffffffffffffffffffff1690565b60035490565b60005473ffffffffffffffffffffffffffffffffffffffff1690565b60005460408051808201909152600e81527f4552525f4d53475f53454e44455200000000000000000000000000000000000060208201529073ffffffffffffffffffffffffffffffffffffffff1633146108da576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181815283516024840152835190928392604490910191908501908083836000831561045657818101518382015260200161043e565b50600355565b600254604080517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152905160009273ffffffffffffffffffffffffffffffffffffffff16916370a08231916024808301926020929190829003018186803b15801561095157600080fd5b505afa158015610965573d6000803e3d6000fd5b505050506040513d602081101561097b57600080fd5b5051905090565b61ffff8216600090815260056020526040902054600160ff83161b16151592915050565b60045463ffffffff1690565b6109bc8383610982565b15610a2857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f414c52454144595f434c41494d454400000000000000000000000000604482015290519081900360640190fd5b6060610a3333611028565b610a408561ffff1661115b565b610a4c8560ff1661115b565b6040516020018084805190602001908083835b60208310610a7e5780518252601f199092019160209182019101610a5f565b6001836020036101000a038019825116818451168082178552505050505050905001807f3b0000000000000000000000000000000000000000000000000000000000000081525060010183805190602001908083835b60208310610af35780518252601f199092019160209182019101610ad4565b6001836020036101000a038019825116818451168082178552505050505050905001807f3b0000000000000000000000000000000000000000000000000000000000000081525060010182805190602001908083835b60208310610b685780518252601f199092019160209182019101610b49565b6001836020036101000a03801982511681845116808217855250505050505090500193505050506040516020818303038152906040529050610baa8183611285565b600254600354604080517fa9059cbb00000000000000000000000000000000000000000000000000000000815233600482015260248101929092525173ffffffffffffffffffffffffffffffffffffffff9092169163a9059cbb916044808201926020929091908290030181600087803b158015610c2757600080fd5b505af1158015610c3b573d6000803e3d6000fd5b505050506040513d6020811015610c5157600080fd5b506107c4905084846113dd565b610c688484610982565b15610c7257600080fd5b6060610c7d33611028565b610c8a8661ffff1661115b565b610c968660ff1661115b565b610c9f8661115b565b6040516020018085805190602001908083835b60208310610cd15780518252601f199092019160209182019101610cb2565b6001836020036101000a038019825116818451168082178552505050505050905001807f3b0000000000000000000000000000000000000000000000000000000000000081525060010184805190602001908083835b60208310610d465780518252601f199092019160209182019101610d27565b6001836020036101000a038019825116818451168082178552505050505050905001807f3b0000000000000000000000000000000000000000000000000000000000000081525060010183805190602001908083835b60208310610dbb5780518252601f199092019160209182019101610d9c565b6001836020036101000a038019825116818451168082178552505050505050905001807f3b0000000000000000000000000000000000000000000000000000000000000081525060010182805190602001908083835b60208310610e305780518252601f199092019160209182019101610e11565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040529050610e738183611285565b600254604080517fa9059cbb00000000000000000000000000000000000000000000000000000000815233600482015260248101869052905173ffffffffffffffffffffffffffffffffffffffff9092169163a9059cbb916044808201926020929091908290030181600087803b158015610eed57600080fd5b505af1158015610f01573d6000803e3d6000fd5b505050506040513d6020811015610f1757600080fd5b50610f24905085856113dd565b5050505050565b60005460408051808201909152600e81527f4552525f4d53475f53454e44455200000000000000000000000000000000000060208201529073ffffffffffffffffffffffffffffffffffffffff163314610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181815283516024840152835190928392604490910191908501908083836000831561045657818101518382015260200161043e565b50600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b604080516028808252606082810190935282919060208201818036833701905050905060005b60148110156111525760008160130360080260020a8573ffffffffffffffffffffffffffffffffffffffff168161108157fe5b0460f81b9050600060108260f81c60ff168161109957fe5b0460f81b905060008160f81c6010028360f81c0360f81b90506110bb8261143c565b8585600202815181106110ca57fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506111028161143c565b85856002026001018151811061111457fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350506001909201915061104e9050565b5090505b919050565b60608161119c575060408051808201909152600181527f30000000000000000000000000000000000000000000000000000000000000006020820152611156565b8160005b81156111b457600101600a820491506111a0565b60608167ffffffffffffffff811180156111cd57600080fd5b506040519080825280601f01601f1916602001820160405280156111f8576020820181803683370190505b5090507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82015b851561127c57600a860660300160f81b8282806001900393508151811061124257fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a8604955061121f565b50949350505050565b6000826040516020018082805190602001908083835b602083106112ba5780518252601f19909201916020918201910161129b565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c018281526020019150506040516020818303038152906040528051906020012090506000611351828461146d565b60015490915073ffffffffffffffffffffffffffffffffffffffff8083169116146107c457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f4552525f564552494649434154494f4e5f4641494c4544000000000000000000604482015290519081900360640190fd5b61ffff9190911660009081526005602052604090208054600160ff90931683901b179055600480547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000811663ffffffff91821690930116919091179055565b6000600a60f883901c101561145c578160f81c60300160f81b9050611156565b8160f81c60570160f81b9050611156565b60008060008084516041146114e357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f4552525f5245434f5645525f5349475f53495a45000000000000000000000000604482015290519081900360640190fd5b50505060208201516040830151606084015160001a601b81101561150557601b015b8060ff16601b148061151a57508060ff16601c145b61158557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f4552525f5245434f5645525f494e56414c49445f534947000000000000000000604482015290519081900360640190fd5b60018682858560405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156115df573d6000803e3d6000fd5b5050604051601f19015197965050505050505056fea2646970667358221220e3330054d2af6ee9ee7599fc42dee6172007d6364049bd9ff5d80037890d85dc64736f6c634300060c00330000000000000000000000009fd5f9ff137ce8609dcead95448b214f53852352000000000000000000000000d36a371e7cc2f486067ae367f2d040e0891aede50000000000000000000000007420b4b9a0110cdc71fb720908340c03f9bc03ec000000000000000000000000000000000000000000000000000012309ce54000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100d45760003560e01c8063916efaaf11610081578063d1f5dcdb1161005b578063d1f5dcdb146101f3578063d8b2b658146102ac578063fe1977f91461036c576100d4565b8063916efaaf1461018c578063abc4a65e14610194578063cc7a4870146101d2576100d4565b80632fedca14116100b25780632fedca141461014d5780636e9960c314610167578063712f61dc1461016f576100d4565b806305ab421d146100d9578063076aa3261461011457806310fe9ae814610145575b600080fd5b610112600480360360408110156100ef57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813516906020013561039f565b005b61011c6107cb565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61011c6107e7565b610155610803565b60408051918252519081900360200190f35b61011c610809565b6101126004803603602081101561018557600080fd5b5035610825565b6101556108e0565b6101be600480360360408110156101aa57600080fd5b50803561ffff16906020013560ff16610982565b604080519115158252519081900360200190f35b6101da6109a6565b6040805163ffffffff9092168252519081900360200190f35b6101126004803603606081101561020957600080fd5b61ffff8235169160ff6020820135169181019060608101604082013564010000000081111561023757600080fd5b82018360208201111561024957600080fd5b8035906020019184600183028401116401000000008311171561026b57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109b2945050505050565b610112600480360360808110156102c257600080fd5b61ffff8235169160ff60208201351691604082013591908101906080810160608201356401000000008111156102f757600080fd5b82018360208201111561030957600080fd5b8035906020019184600183028401116401000000008311171561032b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610c5e945050505050565b6101126004803603602081101561038257600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610f2b565b60005460408051808201909152600e81527f4552525f4d53475f53454e44455200000000000000000000000000000000000060208201529073ffffffffffffffffffffffffffffffffffffffff163314610491576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561045657818101518382015260200161043e565b50505050905090810190601f1680156104835780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600254604080517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152905173ffffffffffffffffffffffffffffffffffffffff909216916370a0823191602480820192602092909190829003018186803b15801561050357600080fd5b505afa158015610517573d6000803e3d6000fd5b505050506040513d602081101561052d57600080fd5b505160408051808201909152600a81527f4552525f414d4f554e54000000000000000000000000000000000000000000006020820152908211156105cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181815283516024840152835190928392604490910191908501908083836000831561045657818101518382015260200161043e565b508061071e57600254604080517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152905173ffffffffffffffffffffffffffffffffffffffff9092169163a9059cbb91859184916370a08231916024808301926020929190829003018186803b15801561064c57600080fd5b505afa158015610660573d6000803e3d6000fd5b505050506040513d602081101561067657600080fd5b5051604080517fffffffff0000000000000000000000000000000000000000000000000000000060e086901b16815273ffffffffffffffffffffffffffffffffffffffff909316600484015260248301919091525160448083019260209291908290030181600087803b1580156106ec57600080fd5b505af1158015610700573d6000803e3d6000fd5b505050506040513d602081101561071657600080fd5b506107c79050565b600254604080517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152602482018590529151919092169163a9059cbb9160448083019260209291908290030181600087803b15801561079a57600080fd5b505af11580156107ae573d6000803e3d6000fd5b505050506040513d60208110156107c457600080fd5b50505b5050565b60015473ffffffffffffffffffffffffffffffffffffffff1690565b60025473ffffffffffffffffffffffffffffffffffffffff1690565b60035490565b60005473ffffffffffffffffffffffffffffffffffffffff1690565b60005460408051808201909152600e81527f4552525f4d53475f53454e44455200000000000000000000000000000000000060208201529073ffffffffffffffffffffffffffffffffffffffff1633146108da576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181815283516024840152835190928392604490910191908501908083836000831561045657818101518382015260200161043e565b50600355565b600254604080517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152905160009273ffffffffffffffffffffffffffffffffffffffff16916370a08231916024808301926020929190829003018186803b15801561095157600080fd5b505afa158015610965573d6000803e3d6000fd5b505050506040513d602081101561097b57600080fd5b5051905090565b61ffff8216600090815260056020526040902054600160ff83161b16151592915050565b60045463ffffffff1690565b6109bc8383610982565b15610a2857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f414c52454144595f434c41494d454400000000000000000000000000604482015290519081900360640190fd5b6060610a3333611028565b610a408561ffff1661115b565b610a4c8560ff1661115b565b6040516020018084805190602001908083835b60208310610a7e5780518252601f199092019160209182019101610a5f565b6001836020036101000a038019825116818451168082178552505050505050905001807f3b0000000000000000000000000000000000000000000000000000000000000081525060010183805190602001908083835b60208310610af35780518252601f199092019160209182019101610ad4565b6001836020036101000a038019825116818451168082178552505050505050905001807f3b0000000000000000000000000000000000000000000000000000000000000081525060010182805190602001908083835b60208310610b685780518252601f199092019160209182019101610b49565b6001836020036101000a03801982511681845116808217855250505050505090500193505050506040516020818303038152906040529050610baa8183611285565b600254600354604080517fa9059cbb00000000000000000000000000000000000000000000000000000000815233600482015260248101929092525173ffffffffffffffffffffffffffffffffffffffff9092169163a9059cbb916044808201926020929091908290030181600087803b158015610c2757600080fd5b505af1158015610c3b573d6000803e3d6000fd5b505050506040513d6020811015610c5157600080fd5b506107c4905084846113dd565b610c688484610982565b15610c7257600080fd5b6060610c7d33611028565b610c8a8661ffff1661115b565b610c968660ff1661115b565b610c9f8661115b565b6040516020018085805190602001908083835b60208310610cd15780518252601f199092019160209182019101610cb2565b6001836020036101000a038019825116818451168082178552505050505050905001807f3b0000000000000000000000000000000000000000000000000000000000000081525060010184805190602001908083835b60208310610d465780518252601f199092019160209182019101610d27565b6001836020036101000a038019825116818451168082178552505050505050905001807f3b0000000000000000000000000000000000000000000000000000000000000081525060010183805190602001908083835b60208310610dbb5780518252601f199092019160209182019101610d9c565b6001836020036101000a038019825116818451168082178552505050505050905001807f3b0000000000000000000000000000000000000000000000000000000000000081525060010182805190602001908083835b60208310610e305780518252601f199092019160209182019101610e11565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040529050610e738183611285565b600254604080517fa9059cbb00000000000000000000000000000000000000000000000000000000815233600482015260248101869052905173ffffffffffffffffffffffffffffffffffffffff9092169163a9059cbb916044808201926020929091908290030181600087803b158015610eed57600080fd5b505af1158015610f01573d6000803e3d6000fd5b505050506040513d6020811015610f1757600080fd5b50610f24905085856113dd565b5050505050565b60005460408051808201909152600e81527f4552525f4d53475f53454e44455200000000000000000000000000000000000060208201529073ffffffffffffffffffffffffffffffffffffffff163314610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181815283516024840152835190928392604490910191908501908083836000831561045657818101518382015260200161043e565b50600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b604080516028808252606082810190935282919060208201818036833701905050905060005b60148110156111525760008160130360080260020a8573ffffffffffffffffffffffffffffffffffffffff168161108157fe5b0460f81b9050600060108260f81c60ff168161109957fe5b0460f81b905060008160f81c6010028360f81c0360f81b90506110bb8261143c565b8585600202815181106110ca57fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506111028161143c565b85856002026001018151811061111457fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350506001909201915061104e9050565b5090505b919050565b60608161119c575060408051808201909152600181527f30000000000000000000000000000000000000000000000000000000000000006020820152611156565b8160005b81156111b457600101600a820491506111a0565b60608167ffffffffffffffff811180156111cd57600080fd5b506040519080825280601f01601f1916602001820160405280156111f8576020820181803683370190505b5090507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82015b851561127c57600a860660300160f81b8282806001900393508151811061124257fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a8604955061121f565b50949350505050565b6000826040516020018082805190602001908083835b602083106112ba5780518252601f19909201916020918201910161129b565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c018281526020019150506040516020818303038152906040528051906020012090506000611351828461146d565b60015490915073ffffffffffffffffffffffffffffffffffffffff8083169116146107c457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f4552525f564552494649434154494f4e5f4641494c4544000000000000000000604482015290519081900360640190fd5b61ffff9190911660009081526005602052604090208054600160ff90931683901b179055600480547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000811663ffffffff91821690930116919091179055565b6000600a60f883901c101561145c578160f81c60300160f81b9050611156565b8160f81c60570160f81b9050611156565b60008060008084516041146114e357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f4552525f5245434f5645525f5349475f53495a45000000000000000000000000604482015290519081900360640190fd5b50505060208201516040830151606084015160001a601b81101561150557601b015b8060ff16601b148061151a57508060ff16601c145b61158557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f4552525f5245434f5645525f494e56414c49445f534947000000000000000000604482015290519081900360640190fd5b60018682858560405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156115df573d6000803e3d6000fd5b5050604051601f19015197965050505050505056fea2646970667358221220e3330054d2af6ee9ee7599fc42dee6172007d6364049bd9ff5d80037890d85dc64736f6c634300060c0033

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

0000000000000000000000009fd5f9ff137ce8609dcead95448b214f53852352000000000000000000000000d36a371e7cc2f486067ae367f2d040e0891aede50000000000000000000000007420b4b9a0110cdc71fb720908340c03f9bc03ec000000000000000000000000000000000000000000000000000012309ce54000

-----Decoded View---------------
Arg [0] : _admin (address): 0x9FD5f9ff137ce8609dCeAD95448b214f53852352
Arg [1] : _signOwner (address): 0xD36A371e7cC2f486067Ae367F2d040E0891AEde5
Arg [2] : _tokenAddress (address): 0x7420B4b9a0110cdC71fB720908340C03F9Bc03EC
Arg [3] : _defaultTokensAmount (uint256): 20000000000000

-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 0000000000000000000000009fd5f9ff137ce8609dcead95448b214f53852352
Arg [1] : 000000000000000000000000d36a371e7cc2f486067ae367f2d040e0891aede5
Arg [2] : 0000000000000000000000007420b4b9a0110cdc71fb720908340c03f9bc03ec
Arg [3] : 000000000000000000000000000000000000000000000000000012309ce54000


Deployed Bytecode Sourcemap

2783:8464:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5178:403;;;;;;;;;;;;;;;;-1:-1:-1;5178:403:0;;;;;;;;;:::i;:::-;;4122:96;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4664:104;;;:::i;5723:116::-;;;:::i;:::-;;;;;;;;;;;;;;;;3892:88;;;:::i;5981:176::-;;;;;;;;;;;;;;;;-1:-1:-1;5981:176:0;;:::i;4910:126::-;;;:::i;8159:224::-;;;;;;;;;;;;;;;;-1:-1:-1;8159:224:0;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;6299:101;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6542:461;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6542:461:0;;-1:-1:-1;6542:461:0;;-1:-1:-1;;;;;6542:461:0:i;7145:486::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7145:486:0;;-1:-1:-1;7145:486:0;;-1:-1:-1;;;;;7145:486:0:i;4360:162::-;;;;;;;;;;;;;;;;-1:-1:-1;4360:162:0;;;;:::i;5178:403::-;5275:5;;5282:14;;;;;;;;;;;;;;;;;;5275:5;;5261:10;:19;5253:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5327:5:0;;:30;;;;;;5351:4;5327:30;;;;;;:5;;;;;:15;;:30;;;;;;;;;;;;;;;:5;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5327:30:0;5359:10;;;;;;;;;;;;;5327:30;5359:10;;;;5316:41;;;5308:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5394:12:0;5391:183;;5432:5;;5452:30;;;;;;5476:4;5452:30;;;;;;5432:5;;;;;:14;;5447:3;;5432:5;;5452:15;;:30;;;;;;;;;;;;;;5432:5;5452:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5452:30:0;5432:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5452:30;;5432:51;;;;;;;-1:-1:-1;5432:51:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5391:183:0;;-1:-1:-1;5391:183:0;;5534:5;;:28;;;;;;:5;:28;;;;;;;;;;;;;;;:5;;;;;:14;;:28;;;;;;;;;;;;;;:5;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5391:183:0;5178:403;;:::o;4122:96::-;4201:9;;;;4122:96;:::o;4664:104::-;4754:5;;;;4664:104;:::o;5723:116::-;5812:19;;5723:116;:::o;3892:88::-;3935:7;3967:5;;;3892:88;:::o;5981:176::-;6077:5;;6084:14;;;;;;;;;;;;;;;;;;6077:5;;6063:10;:19;6055:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6120:19:0;:29;5981:176::o;4910:126::-;4998:5;;:30;;;;;;5022:4;4998:30;;;;;;4966:7;;4998:5;;;:15;;:30;;;;;;;;;;;;;;:5;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4998:30:0;;-1:-1:-1;4910:126:0;:::o;8159:224::-;8267:15;;;8226:4;8267:15;;;:7;:15;;;;;;8316:1;8308:18;;;;8355:15;8354:21;;8159:224;;;;:::o;6299:101::-;6380:12;;;;6299:101;:::o;6542:461::-;6649:23;6659:6;6667:4;6649:9;:23::i;:::-;6648:24;6640:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6717:21;6765:25;6779:10;6765:13;:25::i;:::-;6797:20;6810:6;6797:20;;:12;:20::i;:::-;6824:18;6837:4;6824:18;;:12;:18::i;:::-;6748:95;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6748:95:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6748:95:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6748:95:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6717:127;;6855:27;6862:7;6871:10;6855:6;:27::i;:::-;6903:5;;6930:19;;6903:47;;;;;;6918:10;6903:47;;;;;;;;;;;;:5;;;;;:14;;:47;;;;;;;;;;;;;;;:5;;:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6971:24:0;;-1:-1:-1;6982:6:0;6990:4;6971:10;:24::i;7145:486::-;7274:23;7284:6;7292:4;7274:9;:23::i;:::-;7273:24;7265:33;;;;;;7319:21;7367:25;7381:10;7367:13;:25::i;:::-;7399:20;7412:6;7399:20;;:12;:20::i;:::-;7426:18;7439:4;7426:18;;:12;:18::i;:::-;7451:26;7464:12;7451;:26::i;:::-;7350:128;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7350:128:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7350:128:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7350:128:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7350:128:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7319:160;;7490:27;7497:7;7506:10;7490:6;:27::i;:::-;7538:5;;:40;;;;;;7553:10;7538:40;;;;;;;;;;;;:5;;;;;:14;;:40;;;;;;;;;;;;;;;:5;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7599:24:0;;-1:-1:-1;7610:6:0;7618:4;7599:10;:24::i;:::-;7145:486;;;;;:::o;4360:162::-;4449:5;;4456:14;;;;;;;;;;;;;;;;;;4449:5;;4435:10;:19;4427:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4492:9:0;:22;;;;;;;;;;;;;;;4360:162::o;10390:462::-;10498:13;;;10508:2;10498:13;;;10450;10498;;;;;;10450;;10498;;;;;;;;;;;-1:-1:-1;10498:13:0;10481:30;;10526:6;10522:296;10542:2;10538:1;:6;10522:296;;;10575:6;10622:1;10617:2;:6;10614:1;:10;10610:1;:15;10600:5;10595:11;;:31;;;;;;10584:44;;10575:53;;10643:7;10669:2;10664:1;10658:8;;:13;;;;;;;;10653:19;;10643:29;;10687:7;10724:2;10718:9;;10713:2;:14;10708:1;10702:8;;:25;10697:31;;10687:41;;10752:8;10757:2;10752:4;:8::i;:::-;10743:1;10747;10745;:3;10743:6;;;;;;;;;;;:17;;;;;;;;;;;10786:8;10791:2;10786:4;:8::i;:::-;10775:1;10779;10777;:3;10781:1;10777:5;10775:8;;;;;;;;;;;:19;;;;;;;;;;-1:-1:-1;;10546:3:0;;;;;-1:-1:-1;10522:296:0;;-1:-1:-1;10522:296:0;;-1:-1:-1;10842:1:0;-1:-1:-1;10390:462:0;;;;:::o;9747:501::-;9800:13;9834:7;9831:58;;-1:-1:-1;9867:10:0;;;;;;;;;;;;;;;;;;;9831:58;9908:2;9899:6;9940:78;9947:6;;9940:78;;9979:5;;10004:2;9999:7;;;;9940:78;;;10028:17;10058:3;10048:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10048:14:0;-1:-1:-1;10028:34:0;-1:-1:-1;10082:7:0;;;10100:111;10106:7;;10100:111;;10172:2;10167;:7;10162:2;:12;10151:25;;10139:4;10144:3;;;;;;;10139:9;;;;;;;;;;;:37;;;;;;;;;;-1:-1:-1;10197:2:0;10191:8;;;;10100:111;;;-1:-1:-1;10235:4:0;9747:501;-1:-1:-1;;;;9747:501:0:o;8525:364::-;8613:19;8725:8;8708:26;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8708:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8698:37;;;;;;8645:91;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8635:102;;;;;;8613:124;;8748:21;8772:26;8780:11;8793:4;8772:7;:26::i;:::-;8844:9;;8748:50;;-1:-1:-1;8844:9:0;8827:26;;;8844:9;;8827:26;8819:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7769:248;7859:15;;;;;7840:16;7859:15;;;:7;:15;;;;;;;7908:1;7900:18;;;;;;;7958:15;7939:35;;7997:12;7995:14;;;;;;;;;;;;;;;;;;;7769:248::o;10994:250::-;11042:4;11082:2;11067:12;;;;:17;11064:173;;;11128:5;11122:12;;11137:4;11122:19;11117:25;;11110:32;;;;11064:173;11211:5;11205:12;;11220:4;11205:19;11200:25;;11193:32;;;;9027:578;9100:7;9125:9;9145;9165:7;9201:4;:11;9216:2;9201:17;9193:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9310:2:0;9300:13;;9294:20;9349:2;9339:13;;9333:20;9396:2;9386:13;;9380:20;9377:1;9372:29;9431:2;9427:6;;9424:54;;;9464:2;9459:7;9424:54;9506:1;:7;;9511:2;9506:7;:18;;;;9517:1;:7;;9522:2;9517:7;9506:18;9498:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9572:25;9582:5;9589:1;9592;9595;9572:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9572:25:0;;-1:-1:-1;;9572:25:0;;;9027:578;-1:-1:-1;;;;;;;9027:578:0:o

Swarm Source

ipfs://e3330054d2af6ee9ee7599fc42dee6172007d6364049bd9ff5d80037890d85dc

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.