Contract 0x1dc78acda13a8bc4408b207c9e48cdbc096d95e0 1

This token is bridged from its native chain using Nomad.

Contract Overview

Nomad: madWBTC Token
Balance:
0 GLMR

GLMR Value:
$0.00
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x55dcc8f9be6c6a7b427ae87c234ef66448f1f87bbc624db04255599c4103bf3aApprove24499012022-12-06 6:32:1210 hrs 19 mins ago0x228cc0d1ff8f95e6aa15f023e721c79c42ba205d IN  Nomad: madWBTC Token0 GLMR0.0054282
0x13f2bb6218411ccf444d7332346226b04044941072289cbe0f0466f2464e6a66Transfer24495302022-12-06 5:16:2411 hrs 34 mins ago0x124d821300a480e9b018703b05989f99520112cf IN  Nomad: madWBTC Token0 GLMR0.003801987
0xbef98957b192bea6a86b7b0d48c01a5848923ba47951d29f5f26fa86bac84a23Approve24315672022-12-03 16:30:243 days 20 mins ago0xe136a2adc300da448c2832f0c77ef292a417ae64 IN  Nomad: madWBTC Token0 GLMR0.0054282
0x32a1083dea750af65e5993dc7bce834601beea0737434d3f87d0e49756b5df72Transfer24079012022-11-30 8:06:126 days 8 hrs ago0xa7fb8fbc906053fcabf62c68f56472354236dca5 IN  Nomad: madWBTC Token0 GLMR0.004286751
0x5adea2a2ce64406a85f62ff779b077afd6d8340ebb78ce6adcfc6c074616f9b2Transfer24078462022-11-30 7:54:546 days 8 hrs ago0xa7fb8fbc906053fcabf62c68f56472354236dca5 IN  Nomad: madWBTC Token0 GLMR0.004286751
0xe09db32f795a50d349f50c8ef9982a7c65975a4fa3d77c3690e3833ea9ce99feApprove24078362022-11-30 7:52:486 days 8 hrs ago0x124d821300a480e9b018703b05989f99520112cf IN  Nomad: madWBTC Token0 GLMR0.005447334
0x3b99aa9fecd7bfe692cd9c9a740136ffe369b2bfff3ea732552f504cffdcaaabApprove24036412022-11-29 17:43:306 days 23 hrs ago0x6ba7e061cdaae733aa818664bde65fe07878f979 IN  Nomad: madWBTC Token0 GLMR0.0054282
0x254a45d4046c2b7f2104da67699c0c4639320fd4da118005aa40e3236d8bd1b5Approve24012002022-11-29 9:29:427 days 7 hrs ago0x85ce0755f672fea5f67b8157e446d106f6f92465 IN  Nomad: madWBTC Token0 GLMR0.0054282
0xdb12e3c80da039614e8a799332f7f5988d09f7a58b5a2051a2d9a752b8fe34e0Approve24002812022-11-29 6:23:427 days 10 hrs ago0xf8234bedd9553e7668c4e0d60aced12e22bd2d45 IN  Nomad: madWBTC Token0 GLMR0.005509623
0x19be10d0145741110f11a359bc6ea97d4e52e8eb5f72b18c2cc9a31ae3f70c36Transfer23859582022-11-27 5:58:369 days 10 hrs ago0x1bdc07f503702445f084cc641b58e49578eabac5 IN  Nomad: madWBTC Token0 GLMR0.005536419
0xa5de60f5df34b2936eb4873bfbab75dc1915a64ed8b154c6e6d3dfabc44acbb1Transfer23792342022-11-26 7:17:1810 days 9 hrs ago0xb2d7c3aec073443011a42a25f8577920890b37cc IN  Nomad: madWBTC Token0 GLMR0.003820716
0x067beb86d9f138d570b01c2d6b8940c4f9d9aafb5d8c7918b60f1f7da007990dApprove23792292022-11-26 7:16:1810 days 9 hrs ago0xd5c0feb746f35ab2bbb58d7d8e3add8d9ba1d423 IN  Nomad: madWBTC Token0 GLMR0.0056589354
0xa3c51ce9d3eae400b7c8c7ab9e8b65ff9fb01bd1761283066c7cc2996e9b678eApprove23792192022-11-26 7:14:1910 days 9 hrs ago0x407453d9e7945d45980b9a4c84bc1d3c6ec02b8c IN  Nomad: madWBTC Token0 GLMR0.00569961
0x185e104fe60c573039fd9742b8766ab92cec383b707374981531b6d8c420c914Transfer23605732022-11-23 16:10:4813 days 40 mins ago0x124d821300a480e9b018703b05989f99520112cf IN  Nomad: madWBTC Token0 GLMR0.003839688889
0xb8bda2fafbe4e380f64e08bf99b1e1b646c68f150185687b913fddfb095d3216Transfer23567912022-11-23 3:24:1213 days 13 hrs ago0x124d821300a480e9b018703b05989f99520112cf IN  Nomad: madWBTC Token0 GLMR0.003801987
0x1b9aa9367796bf39d3f0e13527255c849236a4231e8bc5c26de0091b00658d0bTransfer23448722022-11-21 11:12:0015 days 5 hrs ago0x124d821300a480e9b018703b05989f99520112cf IN  Nomad: madWBTC Token0 GLMR0.003801987
0xb6938296b813d6ac81abccec250002162ec44f5f9609c8d7cdc3e666f09206d9Approve23446492022-11-21 10:26:0615 days 6 hrs ago0x83470d93e5f039538fb238c62c5ac71a2410d7ca IN  Nomad: madWBTC Token0 GLMR0.0054282
0xe6c465272b62c9c54fd064b35bb2d6e5aace730845156dddba82f5fd54ad5842Approve23349402022-11-20 1:42:3616 days 15 hrs ago0x4c20fb7f2b432c1b4187cb3e44471224e0237c6d IN  Nomad: madWBTC Token0 GLMR0.003279795
0x12ece92d29b08abbbf341d5dac8bcab75568d509b7b1352ab26b6eeff950d47bTransfer23160792022-11-17 9:46:5419 days 7 hrs ago0x124d821300a480e9b018703b05989f99520112cf IN  Nomad: madWBTC Token0 GLMR0.0029766905
0x46ee8656c3ecc6d9afbc0e056533bebdb70545e710eba4a4b1567dec60c012f9Transfer23141462022-11-17 3:12:2419 days 13 hrs ago0xc89a761d1a596e41d8fffe2a79cda93cf6dce028 IN  Nomad: madWBTC Token0 GLMR0.0045915555
0xf130e0213345a67ff3a2b4d030f0d9adcf09f79a03f899c7b4eac4caa832a18aTransfer23042192022-11-15 17:39:0020 days 23 hrs ago0x124d821300a480e9b018703b05989f99520112cf IN  Nomad: madWBTC Token0 GLMR0.0029756755
0xd8f5ba63f105a30b3a77f6481d01be7162d001b448484885dfc746fa11add1f9Transfer22906342022-11-13 19:24:4822 days 21 hrs ago0x56f3f388f0915078f3a7fe4705c2ccb22c19e3eb IN  Nomad: madWBTC Token0 GLMR0.0045925705
0xdb2e2a33828eb5703c71d683531eb1df8f8e54198158056f73ab4cf7707c0494Approve22898672022-11-13 16:47:1223 days 4 mins ago0xdad1f1932b0fd288146ba9c21cff203e446d2228 IN  Nomad: madWBTC Token0 GLMR0.005509623
0xa4d23541da919ca25db680c906853c4a9ab5873d4f619e829fdb347f38f31afcApprove22898632022-11-13 16:46:2423 days 4 mins ago0xdad1f1932b0fd288146ba9c21cff203e446d2228 IN  Nomad: madWBTC Token0 GLMR0.0054282
0xb7a95a79fd98fb42e02fc257021faa14d8c52b002c1907162de25fe6592ff94fTransfer22879792022-11-13 10:18:3623 days 6 hrs ago0x124d821300a480e9b018703b05989f99520112cf IN  Nomad: madWBTC Token0 GLMR0.003059334256
[ Download CSV Export 
Latest 1 internal transaction
Parent Txn Hash Block From To Value
0xff3698288619accc4eb458ee237e507a579164f8e7b1d9cabc653e0602adfe0b1719942022-01-11 13:15:42329 days 3 hrs ago Nomad: Deployer  Contract Creation0 GLMR
[ Download CSV Export 
Loading

Similar Match Source Code
Note: This contract matches the deployed ByteCode of the Source Code for Contract 0x30D2a9F5FDf90ACe8c17952cbb4eE48a55D916A7

Contract Name:
UpgradeBeaconProxy

Compiler Version
v0.7.6+commit.7338295f

Optimization Enabled:
Yes with 999999 runs

Other Settings:
default evmVersion
File 1 of 2 : UpgradeBeaconProxy.sol
// SPDX-License-Identifier: MIT
pragma solidity >=0.6.11;

// ============ External Imports ============
import {Address} from "@openzeppelin/contracts/utils/Address.sol";

/**
 * @title UpgradeBeaconProxy
 * @notice
 * Proxy contract which delegates all logic, including initialization,
 * to an implementation contract.
 * The implementation contract is stored within an Upgrade Beacon contract;
 * the implementation contract can be changed by performing an upgrade on the Upgrade Beacon contract.
 * The Upgrade Beacon contract for this Proxy is immutably specified at deployment.
 * @dev This implementation combines the gas savings of keeping the UpgradeBeacon address outside of contract storage
 * found in 0age's implementation:
 * https://github.com/dharma-eng/dharma-smart-wallet/blob/master/contracts/proxies/smart-wallet/UpgradeBeaconProxyV1.sol
 * With the added safety checks that the UpgradeBeacon and implementation are contracts at time of deployment
 * found in OpenZeppelin's implementation:
 * https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/proxy/beacon/BeaconProxy.sol
 */
contract UpgradeBeaconProxy {
    // ============ Immutables ============

    // Upgrade Beacon address is immutable (therefore not kept in contract storage)
    address private immutable upgradeBeacon;

    // ============ Constructor ============

    /**
     * @notice Validate that the Upgrade Beacon is a contract, then set its
     * address immutably within this contract.
     * Validate that the implementation is also a contract,
     * Then call the initialization function defined at the implementation.
     * The deployment will revert and pass along the
     * revert reason if the initialization function reverts.
     * @param _upgradeBeacon Address of the Upgrade Beacon to be stored immutably in the contract
     * @param _initializationCalldata Calldata supplied when calling the initialization function
     */
    constructor(address _upgradeBeacon, bytes memory _initializationCalldata)
        payable
    {
        // Validate the Upgrade Beacon is a contract
        require(Address.isContract(_upgradeBeacon), "beacon !contract");
        // set the Upgrade Beacon
        upgradeBeacon = _upgradeBeacon;
        // Validate the implementation is a contract
        address _implementation = _getImplementation(_upgradeBeacon);
        require(
            Address.isContract(_implementation),
            "beacon implementation !contract"
        );
        // Call the initialization function on the implementation
        if (_initializationCalldata.length > 0) {
            _initialize(_implementation, _initializationCalldata);
        }
    }

    // ============ External Functions ============

    /**
     * @notice Forwards all calls with data to _fallback()
     * No public functions are declared on the contract, so all calls hit fallback
     */
    fallback() external payable {
        _fallback();
    }

    /**
     * @notice Forwards all calls with no data to _fallback()
     */
    receive() external payable {
        _fallback();
    }

    // ============ Private Functions ============

    /**
     * @notice Call the initialization function on the implementation
     * Used at deployment to initialize the proxy
     * based on the logic for initialization defined at the implementation
     * @param _implementation - Contract to which the initalization is delegated
     * @param _initializationCalldata - Calldata supplied when calling the initialization function
     */
    function _initialize(
        address _implementation,
        bytes memory _initializationCalldata
    ) private {
        // Delegatecall into the implementation, supplying initialization calldata.
        (bool _ok, ) = _implementation.delegatecall(_initializationCalldata);
        // Revert and include revert data if delegatecall to implementation reverts.
        if (!_ok) {
            assembly {
                returndatacopy(0, 0, returndatasize())
                revert(0, returndatasize())
            }
        }
    }

    /**
     * @notice Delegates function calls to the implementation contract returned by the Upgrade Beacon
     */
    function _fallback() private {
        _delegate(_getImplementation());
    }

    /**
     * @notice Delegate function execution to the implementation contract
     * @dev This is a low level function that doesn't return to its internal
     * call site. It will return whatever is returned by the implementation to the
     * external caller, reverting and returning the revert data if implementation
     * reverts.
     * @param _implementation - Address to which the function execution is delegated
     */
    function _delegate(address _implementation) private {
        assembly {
            // Copy msg.data. We take full control of memory in this inline assembly
            // block because it will not return to Solidity code. We overwrite the
            // Solidity scratch pad at memory position 0.
            calldatacopy(0, 0, calldatasize())
            // Delegatecall to the implementation, supplying calldata and gas.
            // Out and outsize are set to zero - instead, use the return buffer.
            let result := delegatecall(
                gas(),
                _implementation,
                0,
                calldatasize(),
                0,
                0
            )
            // Copy the returned data from the return buffer.
            returndatacopy(0, 0, returndatasize())
            switch result
            // Delegatecall returns 0 on error.
            case 0 {
                revert(0, returndatasize())
            }
            default {
                return(0, returndatasize())
            }
        }
    }

    /**
     * @notice Call the Upgrade Beacon to get the current implementation contract address
     * @return _implementation Address of the current implementation.
     */
    function _getImplementation()
        private
        view
        returns (address _implementation)
    {
        _implementation = _getImplementation(upgradeBeacon);
    }

    /**
     * @notice Call the Upgrade Beacon to get the current implementation contract address
     * @dev _upgradeBeacon is passed as a parameter so that
     * we can also use this function in the constructor,
     * where we can't access immutable variables.
     * @param _upgradeBeacon Address of the UpgradeBeacon storing the current implementation
     * @return _implementation Address of the current implementation.
     */
    function _getImplementation(address _upgradeBeacon)
        private
        view
        returns (address _implementation)
    {
        // Get the current implementation address from the upgrade beacon.
        (bool _ok, bytes memory _returnData) = _upgradeBeacon.staticcall("");
        // Revert and pass along revert message if call to upgrade beacon reverts.
        require(_ok, string(_returnData));
        // Set the implementation to the address returned from the upgrade beacon.
        _implementation = abi.decode(_returnData, (address));
    }
}

File 2 of 2 : Address.sol
// SPDX-License-Identifier: MIT

pragma solidity >=0.6.2 <0.8.0;

/**
 * @dev Collection of functions related to the address type
 */
library Address {
    /**
     * @dev Returns true if `account` is a contract.
     *
     * [IMPORTANT]
     * ====
     * It is unsafe to assume that an address for which this function returns
     * false is an externally-owned account (EOA) and not a contract.
     *
     * Among others, `isContract` will return false for the following
     * types of addresses:
     *
     *  - an externally-owned account
     *  - a contract in construction
     *  - an address where a contract will be created
     *  - an address where a contract lived, but was destroyed
     * ====
     */
    function isContract(address account) internal view returns (bool) {
        // This method relies on extcodesize, which returns 0 for contracts in
        // construction, since the code is only stored at the end of the
        // constructor execution.

        uint256 size;
        // solhint-disable-next-line no-inline-assembly
        assembly { size := extcodesize(account) }
        return size > 0;
    }

    /**
     * @dev Replacement for Solidity's `transfer`: sends `amount` wei to
     * `recipient`, forwarding all available gas and reverting on errors.
     *
     * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost
     * of certain opcodes, possibly making contracts go over the 2300 gas limit
     * imposed by `transfer`, making them unable to receive funds via
     * `transfer`. {sendValue} removes this limitation.
     *
     * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more].
     *
     * IMPORTANT: because control is transferred to `recipient`, care must be
     * taken to not create reentrancy vulnerabilities. Consider using
     * {ReentrancyGuard} or the
     * https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].
     */
    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        // solhint-disable-next-line avoid-low-level-calls, avoid-call-value
        (bool success, ) = recipient.call{ value: amount }("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }

    /**
     * @dev Performs a Solidity function call using a low level `call`. A
     * plain`call` is an unsafe replacement for a function call: use this
     * function instead.
     *
     * If `target` reverts with a revert reason, it is bubbled up by this
     * function (like regular Solidity function calls).
     *
     * Returns the raw returned data. To convert to the expected return value,
     * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].
     *
     * Requirements:
     *
     * - `target` must be a contract.
     * - calling `target` with `data` must not revert.
     *
     * _Available since v3.1._
     */
    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
      return functionCall(target, data, "Address: low-level call failed");
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with
     * `errorMessage` as a fallback revert reason when `target` reverts.
     *
     * _Available since v3.1._
     */
    function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0, errorMessage);
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * but also transferring `value` wei to `target`.
     *
     * Requirements:
     *
     * - the calling contract must have an ETH balance of at least `value`.
     * - the called Solidity function must be `payable`.
     *
     * _Available since v3.1._
     */
    function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
    }

    /**
     * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but
     * with `errorMessage` as a fallback revert reason when `target` reverts.
     *
     * _Available since v3.1._
     */
    function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) {
        require(address(this).balance >= value, "Address: insufficient balance for call");
        require(isContract(target), "Address: call to non-contract");

        // solhint-disable-next-line avoid-low-level-calls
        (bool success, bytes memory returndata) = target.call{ value: value }(data);
        return _verifyCallResult(success, returndata, errorMessage);
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * but performing a static call.
     *
     * _Available since v3.3._
     */
    function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
        return functionStaticCall(target, data, "Address: low-level static call failed");
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],
     * but performing a static call.
     *
     * _Available since v3.3._
     */
    function functionStaticCall(address target, bytes memory data, string memory errorMessage) internal view returns (bytes memory) {
        require(isContract(target), "Address: static call to non-contract");

        // solhint-disable-next-line avoid-low-level-calls
        (bool success, bytes memory returndata) = target.staticcall(data);
        return _verifyCallResult(success, returndata, errorMessage);
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * but performing a delegate call.
     *
     * _Available since v3.4._
     */
    function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionDelegateCall(target, data, "Address: low-level delegate call failed");
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],
     * but performing a delegate call.
     *
     * _Available since v3.4._
     */
    function functionDelegateCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        require(isContract(target), "Address: delegate call to non-contract");

        // solhint-disable-next-line avoid-low-level-calls
        (bool success, bytes memory returndata) = target.delegatecall(data);
        return _verifyCallResult(success, returndata, errorMessage);
    }

    function _verifyCallResult(bool success, bytes memory returndata, string memory errorMessage) private pure returns(bytes memory) {
        if (success) {
            return returndata;
        } else {
            // Look for revert reason and bubble it up if present
            if (returndata.length > 0) {
                // The easiest way to bubble the revert reason is using memory via assembly

                // solhint-disable-next-line no-inline-assembly
                assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 999999
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "libraries": {}
}

Contract ABI

[{"inputs":[{"internalType":"address","name":"_upgradeBeacon","type":"address"},{"internalType":"bytes","name":"_initializationCalldata","type":"bytes"}],"stateMutability":"payable","type":"constructor"},{"stateMutability":"payable","type":"fallback"},{"stateMutability":"payable","type":"receive"}]

60a060405260405161058b38038061058b8339818101604052604081101561002657600080fd5b81516020830180516040519294929383019291908464010000000082111561004d57600080fd5b90830190602082018581111561006257600080fd5b825164010000000081118282018810171561007c57600080fd5b82525081516020918201929091019080838360005b838110156100a9578181015183820152602001610091565b50505050905090810190601f1680156100d65780820380516001836020036101000a031916815260200191505b506040525050506100f0826101d060201b6100291760201c565b610134576040805162461bcd60e51b815260206004820152601060248201526f18995858dbdb880858dbdb9d1c9858dd60821b604482015290519081900360640190fd5b6001600160601b0319606083901b166080526000610151836101d6565b9050610166816101d060201b6100291760201c565b6101b7576040805162461bcd60e51b815260206004820152601f60248201527f626561636f6e20696d706c656d656e746174696f6e2021636f6e747261637400604482015290519081900360640190fd5b8151156101c8576101c881836102d6565b50505061038f565b3b151590565b604051600090819081906001600160a01b0385169082818181855afa9150503d8060008114610221576040519150601f19603f3d011682016040523d82523d6000602084013e610226565b606091505b50915091508181906102b65760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561027b578181015183820152602001610263565b50505050905090810190601f1680156102a85780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b508080602001905160208110156102cc57600080fd5b5051949350505050565b6000826001600160a01b0316826040518082805190602001908083835b602083106103125780518252601f1990920191602091820191016102f3565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d8060008114610372576040519150601f19603f3d011682016040523d82523d6000602084013e610377565b606091505b505090508061038a573d6000803e3d6000fd5b505050565b60805160601c6101e06103ab60003980603652506101e06000f3fe60806040523661001357610011610017565b005b6100115b61002761002261002f565b61005f565b565b3b151590565b600061005a7f0000000000000000000000000000000000000000000000000000000000000000610083565b905090565b3660008037600080366000845af43d6000803e80801561007e573d6000f35b3d6000fd5b6040516000908190819073ffffffffffffffffffffffffffffffffffffffff85169082818181855afa9150503d80600081146100db576040519150601f19603f3d011682016040523d82523d6000602084013e6100e0565b606091505b509150915081819061018a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561014f578181015183820152602001610137565b50505050905090810190601f16801561017c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b508080602001905160208110156101a057600080fd5b505194935050505056fea26469706673582212207a913a499405f220fe73d6c33af6d31fa3d6dd38aef5fe5d043818455b8bd55c64736f6c63430007060033000000000000000000000000969d515486ba6133400ac9c73298586426a090f500000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000

Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.