ETH Price: $3,101.90 (-0.96%)

Contract

0xD270702a8344C4801Afbd0951cf17A2798700046
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Change Owner147921342022-05-17 10:58:31917 days ago1652785111IN
0xD270702a...798700046
0 ETH0.0008439330
Set Tradable For...147921242022-05-17 10:56:43917 days ago1652785003IN
0xD270702a...798700046
0 ETH0.0180284525
Change Owner147045892022-05-03 12:14:43931 days ago1651580083IN
0xD270702a...798700046
0 ETH0.0014065550
Set Tradable For...147042682022-05-03 11:04:52931 days ago1651575892IN
0xD270702a...798700046
0 ETH0.0681854840
Change Owner145266022022-04-05 14:55:43959 days ago1649170543IN
0xD270702a...798700046
0 ETH0.0016878660
Set Tradable For...145193842022-04-04 11:53:04960 days ago1649073184IN
0xD270702a...798700046
0 ETH0.065235835
Set Tradable For...144482862022-03-24 9:58:04971 days ago1648115884IN
0xD270702a...798700046
0 ETH0.0494714430
Set Tradable For...143663402022-03-11 15:28:02984 days ago1647012482IN
0xD270702a...798700046
0 ETH0.137480750
Set Tradable For...141778982022-02-10 10:46:001013 days ago1644489960IN
0xD270702a...798700046
0 ETH0.0881157550
Change Owner140676942022-01-24 10:06:301030 days ago1643018790IN
0xD270702a...798700046
0 ETH0.0025317990
Set Tradable For...140676862022-01-24 10:04:371030 days ago1643018677IN
0xD270702a...798700046
0 ETH0.1696312890
Set Tradable For...139902682022-01-12 10:48:411042 days ago1641984521IN
0xD270702a...798700046
0 ETH0.333697100
Change Owner137969582021-12-13 12:57:291072 days ago1639400249IN
0xD270702a...798700046
0 ETH0.0014065550
Set Tradable For...137969422021-12-13 12:53:311072 days ago1639400011IN
0xD270702a...798700046
0 ETH0.0753384440
Set Tradable For...137510412021-12-06 7:46:501079 days ago1638776810IN
0xD270702a...798700046
0 ETH0.1737705774
Set Tradable For...136903612021-11-26 14:45:071089 days ago1637937907IN
0xD270702a...798700046
0 ETH0.1431791270
Set Tradable For...136485112021-11-19 23:36:551096 days ago1637365015IN
0xD270702a...798700046
0 ETH0.1728693470
Set Tradable For...136129742021-11-14 8:46:021101 days ago1636879562IN
0xD270702a...798700046
0 ETH0.5368560880
Set Tradable For...135878632021-11-10 10:04:381105 days ago1636538678IN
0xD270702a...798700046
0 ETH0.1810333890
Set Tradable For...135813682021-11-09 9:27:151106 days ago1636450035IN
0xD270702a...798700046
0 ETH0.01643964140
Change Owner135496252021-11-04 10:16:481111 days ago1636021008IN
0xD270702a...798700046
0 ETH0.00379768135
Set Tradable For...135495512021-11-04 9:58:031111 days ago1636019883IN
0xD270702a...798700046
0 ETH0.42532555130
Change Owner134868922021-10-25 13:33:421121 days ago1635168822IN
0xD270702a...798700046
0 ETH0.00309441110
Set Tradable For...134868752021-10-25 13:29:341121 days ago1635168574IN
0xD270702a...798700046
0 ETH0.1307034100
Change Owner134428062021-10-18 16:14:461128 days ago1634573686IN
0xD270702a...798700046
0 ETH0.0025317990
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:
TokenRegistry

Compiler Version
v0.8.3+commit.8d00100c

Optimization Enabled:
Yes with 999 runs

Other Settings:
default evmVersion
File 1 of 4 : TokenRegistry.sol
// Copyright (C) 2018  Argent Labs Ltd. <https://argent.xyz>

// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

// SPDX-License-Identifier: GPL-3.0-only
pragma solidity ^0.8.3;

import "./ITokenRegistry.sol";
import "./base/Managed.sol";

/**
 * @title TokenRegistry
 * @notice Contract storing a list of tokens that can be safely traded.
 * @notice Only the owner can make a token tradable. Managers can make a token untradable.
 */
contract TokenRegistry is ITokenRegistry, Managed {

    // Tradable flag per token
    mapping(address => bool) public isTradable;

    function isTokenTradable(address _token) external override view returns (bool _isTradable) {
        _isTradable = isTradable[_token];
    }

    function areTokensTradable(address[] calldata _tokens) external override view returns (bool _areTradable) {
        for (uint256 i = 0; i < _tokens.length; i++) {
            if(!isTradable[_tokens[i]]) {
                return false;
            }
        }
        return true;
    }

    function getTradableForTokenList(address[] calldata _tokens) external view returns (bool[] memory _tradable) {
        _tradable = new bool[](_tokens.length);
        for (uint256 i = 0; i < _tokens.length; i++) {
            _tradable[i] = isTradable[_tokens[i]];
        }
    }

    function setTradableForTokenList(address[] calldata _tokens, bool[] calldata _tradable) external {
        require(_tokens.length == _tradable.length, "TR: Array length mismatch");
        if(msg.sender == owner) {
            for (uint256 i = 0; i < _tokens.length; i++) {
                isTradable[_tokens[i]] = _tradable[i];
            }
        } else {
            require(managers[msg.sender], "TR: Unauthorised");
            for (uint256 i = 0; i < _tokens.length; i++) {
                require(_tradable[i] == false, "TR: Unauthorised operation");
                isTradable[_tokens[i]] = _tradable[i];
            }
        }
    }
}

File 2 of 4 : ITokenRegistry.sol
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

// SPDX-License-Identifier: GPL-3.0-only
pragma solidity ^0.8.3;

/**
 * @title ITokenRegistry
 * @notice TokenRegistry interface
 */
interface ITokenRegistry {
    function isTokenTradable(address _token) external view returns (bool _isTradable);
    function areTokensTradable(address[] calldata _tokens) external view returns (bool _areTradable);
}

File 3 of 4 : Managed.sol
// Copyright (C) 2018  Argent Labs Ltd. <https://argent.xyz>

// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

// SPDX-License-Identifier: GPL-3.0-only
pragma solidity ^0.8.3;

import "./Owned.sol";

/**
 * @title Managed
 * @notice Basic contract that defines a set of managers. Only the owner can add/remove managers.
 * @author Julien Niset, Olivier VDB - <[email protected]>, <[email protected]>
 */
contract Managed is Owned {

    // The managers
    mapping (address => bool) public managers;

    /**
     * @notice Throws if the sender is not a manager.
     */
    modifier onlyManager {
        require(managers[msg.sender] == true, "M: Must be manager");
        _;
    }

    event ManagerAdded(address indexed _manager);
    event ManagerRevoked(address indexed _manager);

    /**
    * @notice Adds a manager.
    * @param _manager The address of the manager.
    */
    function addManager(address _manager) external onlyOwner {
        require(_manager != address(0), "M: Address must not be null");
        if (managers[_manager] == false) {
            managers[_manager] = true;
            emit ManagerAdded(_manager);
        }
    }

    /**
    * @notice Revokes a manager.
    * @param _manager The address of the manager.
    */
    function revokeManager(address _manager) external virtual onlyOwner {
        // solhint-disable-next-line reason-string
        require(managers[_manager] == true, "M: Target must be an existing manager");
        delete managers[_manager];
        emit ManagerRevoked(_manager);
    }
}

File 4 of 4 : Owned.sol
// Copyright (C) 2018  Argent Labs Ltd. <https://argent.xyz>

// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

// SPDX-License-Identifier: GPL-3.0-only
pragma solidity >=0.5.4 <0.9.0;

/**
 * @title Owned
 * @notice Basic contract to define an owner.
 * @author Julien Niset - <[email protected]>
 */
contract Owned {

    // The owner
    address public owner;

    event OwnerChanged(address indexed _newOwner);

    /**
     * @notice Throws if the sender is not the owner.
     */
    modifier onlyOwner {
        require(msg.sender == owner, "Must be owner");
        _;
    }

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

    /**
     * @notice Lets the owner transfer ownership of the contract to a new owner.
     * @param _newOwner The new owner.
     */
    function changeOwner(address _newOwner) external onlyOwner {
        require(_newOwner != address(0), "Address must not be null");
        owner = _newOwner;
        emit OwnerChanged(_newOwner);
    }
}

Settings
{
  "remappings": [],
  "optimizer": {
    "enabled": true,
    "runs": 999
  },
  "evmVersion": "istanbul",
  "libraries": {
    "": {}
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_manager","type":"address"}],"name":"ManagerAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_manager","type":"address"}],"name":"ManagerRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_newOwner","type":"address"}],"name":"OwnerChanged","type":"event"},{"inputs":[{"internalType":"address","name":"_manager","type":"address"}],"name":"addManager","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_tokens","type":"address[]"}],"name":"areTokensTradable","outputs":[{"internalType":"bool","name":"_areTradable","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_newOwner","type":"address"}],"name":"changeOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_tokens","type":"address[]"}],"name":"getTradableForTokenList","outputs":[{"internalType":"bool[]","name":"_tradable","type":"bool[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"name":"isTokenTradable","outputs":[{"internalType":"bool","name":"_isTradable","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isTradable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"managers","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_manager","type":"address"}],"name":"revokeManager","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_tokens","type":"address[]"},{"internalType":"bool[]","name":"_tradable","type":"bool[]"}],"name":"setTradableForTokenList","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b50600080546001600160a01b03191633179055610b5f806100326000396000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c8063aa1e1eec11610076578063b699e2b81161005b578063b699e2b8146101a0578063e153ed09146101b3578063fdff9b4d146101d3576100be565b8063aa1e1eec14610161578063af730b1a14610174576100be565b8063447b4a47116100a7578063447b4a47146100eb5780638da5cb5b14610123578063a6f9dae11461014e576100be565b80632d06177a146100c3578063377e32e6146100d8575b600080fd5b6100d66100d13660046109c5565b6101f6565b005b6100d66100e63660046109c5565b61030b565b61010e6100f93660046109c5565b60026020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b600054610136906001600160a01b031681565b6040516001600160a01b03909116815260200161011a565b6100d661015c3660046109c5565b610432565b61010e61016f3660046109f3565b610532565b61010e6101823660046109c5565b6001600160a01b031660009081526002602052604090205460ff1690565b6100d66101ae366004610a33565b6105c0565b6101c66101c13660046109f3565b610877565b60405161011a9190610abc565b61010e6101e13660046109c5565b60016020526000908152604090205460ff1681565b6000546001600160a01b031633146102455760405162461bcd60e51b815260206004820152600d60248201526c26bab9ba1031329037bbb732b960991b60448201526064015b60405180910390fd5b6001600160a01b03811661029b5760405162461bcd60e51b815260206004820152601b60248201527f4d3a2041646472657373206d757374206e6f74206265206e756c6c0000000000604482015260640161023c565b6001600160a01b03811660009081526001602052604090205460ff16610308576001600160a01b0381166000818152600160208190526040808320805460ff1916909217909155517f3b4a40cccf2058c593542587329dd385be4f0b588db5471fbd9598e56dd7093a9190a25b50565b6000546001600160a01b031633146103555760405162461bcd60e51b815260206004820152600d60248201526c26bab9ba1031329037bbb732b960991b604482015260640161023c565b6001600160a01b03811660009081526001602081905260409091205460ff161515146103e95760405162461bcd60e51b815260206004820152602560248201527f4d3a20546172676574206d75737420626520616e206578697374696e67206d6160448201527f6e61676572000000000000000000000000000000000000000000000000000000606482015260840161023c565b6001600160a01b038116600081815260016020526040808220805460ff19169055517fe5def11e0516f317f9c37b8835aec29fc01db4d4b6d6fecaca339d3596a29bc19190a250565b6000546001600160a01b0316331461047c5760405162461bcd60e51b815260206004820152600d60248201526c26bab9ba1031329037bbb732b960991b604482015260640161023c565b6001600160a01b0381166104d25760405162461bcd60e51b815260206004820152601860248201527f41646472657373206d757374206e6f74206265206e756c6c0000000000000000604482015260640161023c565b600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038316908117825560405190917fa2ea9883a321a3e97b8266c2b078bfeec6d50c711ed71f874a90d500ae2eaf3691a250565b6000805b828110156105b4576002600085858481811061056257634e487b7160e01b600052603260045260246000fd5b905060200201602081019061057791906109c5565b6001600160a01b0316815260208101919091526040016000205460ff166105a25760009150506105ba565b806105ac81610b02565b915050610536565b50600190505b92915050565b82811461060f5760405162461bcd60e51b815260206004820152601960248201527f54523a204172726179206c656e677468206d69736d6174636800000000000000604482015260640161023c565b6000546001600160a01b03163314156106db5760005b838110156106d55782828281811061064d57634e487b7160e01b600052603260045260246000fd5b90506020020160208101906106629190610a9c565b6002600087878581811061068657634e487b7160e01b600052603260045260246000fd5b905060200201602081019061069b91906109c5565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055806106cd81610b02565b915050610625565b50610871565b3360009081526001602052604090205460ff1661073a5760405162461bcd60e51b815260206004820152601060248201527f54523a20556e617574686f726973656400000000000000000000000000000000604482015260640161023c565b60005b8381101561086f5782828281811061076557634e487b7160e01b600052603260045260246000fd5b905060200201602081019061077a9190610a9c565b156107c75760405162461bcd60e51b815260206004820152601a60248201527f54523a20556e617574686f7269736564206f7065726174696f6e000000000000604482015260640161023c565b8282828181106107e757634e487b7160e01b600052603260045260246000fd5b90506020020160208101906107fc9190610a9c565b6002600087878581811061082057634e487b7160e01b600052603260045260246000fd5b905060200201602081019061083591906109c5565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790558061086781610b02565b91505061073d565b505b50505050565b60608167ffffffffffffffff8111156108a057634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156108c9578160200160208202803683370190505b50905060005b8281101561097457600260008585848181106108fb57634e487b7160e01b600052603260045260246000fd5b905060200201602081019061091091906109c5565b6001600160a01b03168152602081019190915260400160002054825160ff9091169083908390811061095257634e487b7160e01b600052603260045260246000fd5b911515602092830291909101909101528061096c81610b02565b9150506108cf565b5092915050565b60008083601f84011261098c578182fd5b50813567ffffffffffffffff8111156109a3578182fd5b6020830191508360208260051b85010111156109be57600080fd5b9250929050565b6000602082840312156109d6578081fd5b81356001600160a01b03811681146109ec578182fd5b9392505050565b60008060208385031215610a05578081fd5b823567ffffffffffffffff811115610a1b578182fd5b610a278582860161097b565b90969095509350505050565b60008060008060408587031215610a48578182fd5b843567ffffffffffffffff80821115610a5f578384fd5b610a6b8883890161097b565b90965094506020870135915080821115610a83578384fd5b50610a908782880161097b565b95989497509550505050565b600060208284031215610aad578081fd5b813580151581146109ec578182fd5b6020808252825182820181905260009190848201906040850190845b81811015610af6578351151583529284019291840191600101610ad8565b50909695505050505050565b6000600019821415610b2257634e487b7160e01b81526011600452602481fd5b506001019056fea26469706673582212208718757081fc6392b38d756ce0baad470d622425d4357f9a378fd963bb82118164736f6c63430008030033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100be5760003560e01c8063aa1e1eec11610076578063b699e2b81161005b578063b699e2b8146101a0578063e153ed09146101b3578063fdff9b4d146101d3576100be565b8063aa1e1eec14610161578063af730b1a14610174576100be565b8063447b4a47116100a7578063447b4a47146100eb5780638da5cb5b14610123578063a6f9dae11461014e576100be565b80632d06177a146100c3578063377e32e6146100d8575b600080fd5b6100d66100d13660046109c5565b6101f6565b005b6100d66100e63660046109c5565b61030b565b61010e6100f93660046109c5565b60026020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b600054610136906001600160a01b031681565b6040516001600160a01b03909116815260200161011a565b6100d661015c3660046109c5565b610432565b61010e61016f3660046109f3565b610532565b61010e6101823660046109c5565b6001600160a01b031660009081526002602052604090205460ff1690565b6100d66101ae366004610a33565b6105c0565b6101c66101c13660046109f3565b610877565b60405161011a9190610abc565b61010e6101e13660046109c5565b60016020526000908152604090205460ff1681565b6000546001600160a01b031633146102455760405162461bcd60e51b815260206004820152600d60248201526c26bab9ba1031329037bbb732b960991b60448201526064015b60405180910390fd5b6001600160a01b03811661029b5760405162461bcd60e51b815260206004820152601b60248201527f4d3a2041646472657373206d757374206e6f74206265206e756c6c0000000000604482015260640161023c565b6001600160a01b03811660009081526001602052604090205460ff16610308576001600160a01b0381166000818152600160208190526040808320805460ff1916909217909155517f3b4a40cccf2058c593542587329dd385be4f0b588db5471fbd9598e56dd7093a9190a25b50565b6000546001600160a01b031633146103555760405162461bcd60e51b815260206004820152600d60248201526c26bab9ba1031329037bbb732b960991b604482015260640161023c565b6001600160a01b03811660009081526001602081905260409091205460ff161515146103e95760405162461bcd60e51b815260206004820152602560248201527f4d3a20546172676574206d75737420626520616e206578697374696e67206d6160448201527f6e61676572000000000000000000000000000000000000000000000000000000606482015260840161023c565b6001600160a01b038116600081815260016020526040808220805460ff19169055517fe5def11e0516f317f9c37b8835aec29fc01db4d4b6d6fecaca339d3596a29bc19190a250565b6000546001600160a01b0316331461047c5760405162461bcd60e51b815260206004820152600d60248201526c26bab9ba1031329037bbb732b960991b604482015260640161023c565b6001600160a01b0381166104d25760405162461bcd60e51b815260206004820152601860248201527f41646472657373206d757374206e6f74206265206e756c6c0000000000000000604482015260640161023c565b600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038316908117825560405190917fa2ea9883a321a3e97b8266c2b078bfeec6d50c711ed71f874a90d500ae2eaf3691a250565b6000805b828110156105b4576002600085858481811061056257634e487b7160e01b600052603260045260246000fd5b905060200201602081019061057791906109c5565b6001600160a01b0316815260208101919091526040016000205460ff166105a25760009150506105ba565b806105ac81610b02565b915050610536565b50600190505b92915050565b82811461060f5760405162461bcd60e51b815260206004820152601960248201527f54523a204172726179206c656e677468206d69736d6174636800000000000000604482015260640161023c565b6000546001600160a01b03163314156106db5760005b838110156106d55782828281811061064d57634e487b7160e01b600052603260045260246000fd5b90506020020160208101906106629190610a9c565b6002600087878581811061068657634e487b7160e01b600052603260045260246000fd5b905060200201602081019061069b91906109c5565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055806106cd81610b02565b915050610625565b50610871565b3360009081526001602052604090205460ff1661073a5760405162461bcd60e51b815260206004820152601060248201527f54523a20556e617574686f726973656400000000000000000000000000000000604482015260640161023c565b60005b8381101561086f5782828281811061076557634e487b7160e01b600052603260045260246000fd5b905060200201602081019061077a9190610a9c565b156107c75760405162461bcd60e51b815260206004820152601a60248201527f54523a20556e617574686f7269736564206f7065726174696f6e000000000000604482015260640161023c565b8282828181106107e757634e487b7160e01b600052603260045260246000fd5b90506020020160208101906107fc9190610a9c565b6002600087878581811061082057634e487b7160e01b600052603260045260246000fd5b905060200201602081019061083591906109c5565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790558061086781610b02565b91505061073d565b505b50505050565b60608167ffffffffffffffff8111156108a057634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156108c9578160200160208202803683370190505b50905060005b8281101561097457600260008585848181106108fb57634e487b7160e01b600052603260045260246000fd5b905060200201602081019061091091906109c5565b6001600160a01b03168152602081019190915260400160002054825160ff9091169083908390811061095257634e487b7160e01b600052603260045260246000fd5b911515602092830291909101909101528061096c81610b02565b9150506108cf565b5092915050565b60008083601f84011261098c578182fd5b50813567ffffffffffffffff8111156109a3578182fd5b6020830191508360208260051b85010111156109be57600080fd5b9250929050565b6000602082840312156109d6578081fd5b81356001600160a01b03811681146109ec578182fd5b9392505050565b60008060208385031215610a05578081fd5b823567ffffffffffffffff811115610a1b578182fd5b610a278582860161097b565b90969095509350505050565b60008060008060408587031215610a48578182fd5b843567ffffffffffffffff80821115610a5f578384fd5b610a6b8883890161097b565b90965094506020870135915080821115610a83578384fd5b50610a908782880161097b565b95989497509550505050565b600060208284031215610aad578081fd5b813580151581146109ec578182fd5b6020808252825182820181905260009190848201906040850190845b81811015610af6578351151583529284019291840191600101610ad8565b50909695505050505050565b6000600019821415610b2257634e487b7160e01b81526011600452602481fd5b506001019056fea26469706673582212208718757081fc6392b38d756ce0baad470d622425d4357f9a378fd963bb82118164736f6c63430008030033

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.