FTM Price: $0.67 (-2.18%)
Gas: 13 GWei

Contract

0x809D88B727c4C7024462d7955777835938F02F3B
 

Sponsored

Transaction Hash
Method
Block
From
To
Value
Add Collection R...788665382024-04-06 21:00:2311 days ago1712437223IN
PaintSwap: Collection Royalties
0 FTM0.0020295939.60574501
Add Collection R...781659422024-03-25 19:39:2623 days ago1711395566IN
PaintSwap: Collection Royalties
0 FTM0.00778339151.85032542
Add Collection R...780577032024-03-23 15:47:3625 days ago1711208856IN
PaintSwap: Collection Royalties
0 FTM0.00370872.3414171
Add Collection R...775043362024-03-16 19:56:0432 days ago1710618964IN
PaintSwap: Collection Royalties
0 FTM0.00731757142.76237055
Add Collection R...774848332024-03-16 14:25:2032 days ago1710599120IN
PaintSwap: Collection Royalties
0 FTM0.00663767129.49784507
Add Collection R...771686522024-03-11 23:14:4037 days ago1710198880IN
PaintSwap: Collection Royalties
0 FTM0.001378726.89797676
Add Collection R...765480282024-02-29 19:21:1548 days ago1709234475IN
PaintSwap: Collection Royalties
0 FTM0.0035237268.74614827
Add Collection R...762180412024-02-24 14:46:5553 days ago1708786015IN
PaintSwap: Collection Royalties
0 FTM0.00636083124.12589072
Add Collection R...758866112024-02-18 10:54:4459 days ago1708253684IN
PaintSwap: Collection Royalties
0 FTM0.0023919646.66613064
Add Collection R...755348502024-02-12 12:15:1265 days ago1707740112IN
PaintSwap: Collection Royalties
0 FTM0.0006328212.34891545
Add Collection R...755135262024-02-12 3:42:2965 days ago1707709349IN
PaintSwap: Collection Royalties
0 FTM0.0006278512.24909367
Add Collection R...755131032024-02-12 3:29:1165 days ago1707708551IN
PaintSwap: Collection Royalties
0 FTM0.0006649812.97351711
Add Collection R...755127382024-02-12 3:18:3565 days ago1707707915IN
PaintSwap: Collection Royalties
0 FTM0.0006747513.16416341
Add Collection R...753170862024-02-08 16:56:4469 days ago1707411404IN
PaintSwap: Collection Royalties
0 FTM0.02631052513.30592311
Add Collection R...753163022024-02-08 16:23:0269 days ago1707409382IN
PaintSwap: Collection Royalties
0 FTM0.0018363935.82728271
Add Collection R...749971092024-02-01 19:27:3376 days ago1706815653IN
PaintSwap: Collection Royalties
0 FTM0.0031820362.07999999
Add Collection R...749684402024-01-31 21:35:3377 days ago1706736933IN
PaintSwap: Collection Royalties
0 FTM0.000645312.58961094
Add Collection R...748717132024-01-28 21:11:2080 days ago1706476280IN
PaintSwap: Collection Royalties
0 FTM0.001825635.61674909
Add Collection R...746184512024-01-22 19:01:1386 days ago1705950073IN
PaintSwap: Collection Royalties
0 FTM0.00630448122.99747715
Add Collection R...745459392024-01-21 15:10:4687 days ago1705849846IN
PaintSwap: Collection Royalties
0 FTM0.00602663117.57673
Add Collection R...740223802024-01-10 14:53:3098 days ago1704898410IN
PaintSwap: Collection Royalties
0 FTM0.0024353447.52350528
Add Collection R...736231312024-01-03 1:06:05106 days ago1704243965IN
PaintSwap: Collection Royalties
0 FTM0.0021023241.01535639
Add Collection R...733880912023-12-28 17:44:26111 days ago1703785466IN
PaintSwap: Collection Royalties
0 FTM0.00606616118.34803923
Add Collection R...732021172023-12-26 5:07:17113 days ago1703567237IN
PaintSwap: Collection Royalties
0 FTM0.0044729487.26514276
Add Collection R...722105042023-12-08 1:58:15131 days ago1702000695IN
PaintSwap: Collection Royalties
0 FTM0.02527899493.18126598
View all transactions

Latest 1 internal transaction

Parent Txn Hash Block From To Value
160779122021-09-01 16:10:44959 days ago1630512644  Contract Creation0 FTM
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CollectionRoyalties

Compiler Version
v0.8.6+commit.11564f7e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 3 : CollectionRoyalties.sol
//SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "@openzeppelin/contracts/access/Ownable.sol";

contract CollectionRoyalties is Ownable {
  event AddedCollectionFromRoyalty(address nft, address recipient, uint fee);
  event RemovedCollectionFromRoyalty(address nft);

  struct CollectionRoyaltyInfo {
    address recipient;
    uint16 fee;
  }

  // Contract to recipient royalties
  mapping(address => CollectionRoyaltyInfo) public collectionRoyalties;
  uint16 public baseCollectionRoyaltyFeePercentage;
  uint public maxCollectionRoyalty = 1000;

  constructor() {
    baseCollectionRoyaltyFeePercentage = 10; // 0.1%
  }

  function setBaseCollectionRoyalty(uint16 _feePercentage) external onlyOwner {
    require(_feePercentage < maxCollectionRoyalty, "Royalty fee is too high");
    baseCollectionRoyaltyFeePercentage = _feePercentage;
  }

  function setMaxCollectionRoyalty(uint _maxCollectionRoyalty) external onlyOwner {
    require(maxCollectionRoyalty <= 1000);
    maxCollectionRoyalty = _maxCollectionRoyalty;
  }

  //	function updateRoyalty // TODO If I updated contracts again, otherwise delete and re-add

  function getCollectionRoyaltyInfo(address _addr) external view returns (CollectionRoyaltyInfo memory) {
    return collectionRoyalties[_addr];
  }

  function addCollectionRoyaltyFromOwner(address _nft, address _recipient) external {
    // Add they the owner?
    require(Ownable(_nft).owner() == msg.sender, "Only the owner can call this");
    require(!collectionRoyaltyBlacklist[_nft], "This collection is in the blacklist");
    collectionRoyalties[_nft] = CollectionRoyaltyInfo({recipient: _recipient, fee: baseCollectionRoyaltyFeePercentage});
    emit AddedCollectionFromRoyalty(_nft, _recipient, baseCollectionRoyaltyFeePercentage);
  }

  function removeCollectionRoyaltyFromOwner(address _nft) external onlyOwner {
    require(Ownable(_nft).owner() == msg.sender, "Only the owner can call this");
    delete collectionRoyalties[_nft];
    emit RemovedCollectionFromRoyalty(_nft);
  }

  function addToCollectionRoyaltyBlacklist(address _nft) external onlyOwner {
    collectionRoyaltyBlacklist[_nft] = true;
  }

  function addCollectionRoyalty(
    address _nft,
    address _recipient,
    uint16 _fee
  ) external onlyOwner {
    require(_fee <= maxCollectionRoyalty, "Royalty is too much");
    collectionRoyalties[_nft] = CollectionRoyaltyInfo({recipient: _recipient, fee: _fee});
    emit AddedCollectionFromRoyalty(_nft, _recipient, _fee);
  }

  mapping(address => bool) collectionRoyaltyBlacklist;

  function removeCollectionRoyalty(address _nft) external onlyOwner {
    delete collectionRoyalties[_nft];
    // Only owner can add them
    emit RemovedCollectionFromRoyalty(_nft);
  }
}

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

pragma solidity ^0.8.0;

import "../utils/Context.sol";
/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

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

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view virtual returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

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

pragma solidity ^0.8.0;

/*
 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.
 */
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

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

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"nft","type":"address"},{"indexed":false,"internalType":"address","name":"recipient","type":"address"},{"indexed":false,"internalType":"uint256","name":"fee","type":"uint256"}],"name":"AddedCollectionFromRoyalty","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"nft","type":"address"}],"name":"RemovedCollectionFromRoyalty","type":"event"},{"inputs":[{"internalType":"address","name":"_nft","type":"address"},{"internalType":"address","name":"_recipient","type":"address"},{"internalType":"uint16","name":"_fee","type":"uint16"}],"name":"addCollectionRoyalty","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_nft","type":"address"},{"internalType":"address","name":"_recipient","type":"address"}],"name":"addCollectionRoyaltyFromOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_nft","type":"address"}],"name":"addToCollectionRoyaltyBlacklist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"baseCollectionRoyaltyFeePercentage","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"collectionRoyalties","outputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint16","name":"fee","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_addr","type":"address"}],"name":"getCollectionRoyaltyInfo","outputs":[{"components":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint16","name":"fee","type":"uint16"}],"internalType":"struct CollectionRoyalties.CollectionRoyaltyInfo","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxCollectionRoyalty","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_nft","type":"address"}],"name":"removeCollectionRoyalty","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_nft","type":"address"}],"name":"removeCollectionRoyaltyFromOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"_feePercentage","type":"uint16"}],"name":"setBaseCollectionRoyalty","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxCollectionRoyalty","type":"uint256"}],"name":"setMaxCollectionRoyalty","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040526103e860035534801561001657600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506002805461ffff1916600a179055610b60806100756000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80637d285aff1161008c578063acecf1a211610066578063acecf1a214610267578063d48ff9f014610288578063f2fde38b1461029b578063f8d614c9146102ae57600080fd5b80637d285aff146102265780638da5cb5b14610239578063a26acbbc1461025457600080fd5b806339310f39116100c857806339310f39146101a057806346167d2d146101b357806357b275b4146101c6578063715018a61461021e57600080fd5b80630d2b98e7146100ef5780631adf7e26146101045780632e64bc4a14610117575b600080fd5b6101026100fd3660046109e8565b6102c5565b005b610102610112366004610a29565b610355565b6101736101253660046109e8565b604080518082018252600080825260209182018190526001600160a01b039384168152600182528290208251808401909352549283168252600160a01b90920461ffff169181019190915290565b6040805182516001600160a01b0316815260209283015161ffff1692810192909252015b60405180910390f35b6101026101ae366004610ac4565b610541565b6101026101c13660046109e8565b610581565b6101fc6101d43660046109e8565b6001602052600090815260409020546001600160a01b03811690600160a01b900461ffff1682565b604080516001600160a01b03909316835261ffff909116602083015201610197565b6101026105cf565b6101026102343660046109e8565b610643565b6000546040516001600160a01b039091168152602001610197565b610102610262366004610a62565b61073e565b6002546102759061ffff1681565b60405161ffff9091168152602001610197565b610102610296366004610aa9565b610850565b6101026102a93660046109e8565b6108e7565b6102b760035481565b604051908152602001610197565b6000546001600160a01b031633146102f85760405162461bcd60e51b81526004016102ef90610add565b60405180910390fd5b6001600160a01b03811660008181526001602090815260409182902080546001600160b01b031916905590519182527f204bff414ab45e964ccd65a5f3ae6070e113d8e96ecc28c10b47a73724380a1a910160405180910390a150565b336001600160a01b0316826001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561039857600080fd5b505afa1580156103ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103d09190610a0c565b6001600160a01b0316146104265760405162461bcd60e51b815260206004820152601c60248201527f4f6e6c7920746865206f776e65722063616e2063616c6c20746869730000000060448201526064016102ef565b6001600160a01b03821660009081526004602052604090205460ff161561049b5760405162461bcd60e51b815260206004820152602360248201527f5468697320636f6c6c656374696f6e20697320696e2074686520626c61636b6c6044820152621a5cdd60ea1b60648201526084016102ef565b6040805180820182526001600160a01b038381168083526002805461ffff908116602080870191825289861660008181526001835289902097518854935197166001600160b01b031990931692909217600160a01b96841696909602959095179095559054855194855292840191909152168183015290517f55aa6b7deac290078b9b3b927ee1472239d9c5a421d40d287a0db8e4d7dcb3249181900360600190a15050565b6000546001600160a01b0316331461056b5760405162461bcd60e51b81526004016102ef90610add565b6103e8600354111561057c57600080fd5b600355565b6000546001600160a01b031633146105ab5760405162461bcd60e51b81526004016102ef90610add565b6001600160a01b03166000908152600460205260409020805460ff19166001179055565b6000546001600160a01b031633146105f95760405162461bcd60e51b81526004016102ef90610add565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461066d5760405162461bcd60e51b81526004016102ef90610add565b336001600160a01b0316816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156106b057600080fd5b505afa1580156106c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106e89190610a0c565b6001600160a01b0316146102f85760405162461bcd60e51b815260206004820152601c60248201527f4f6e6c7920746865206f776e65722063616e2063616c6c20746869730000000060448201526064016102ef565b6000546001600160a01b031633146107685760405162461bcd60e51b81526004016102ef90610add565b6003548161ffff1611156107b45760405162461bcd60e51b81526020600482015260136024820152720a4def2c2d8e8f240d2e640e8dede40daeac6d606b1b60448201526064016102ef565b6040805180820182526001600160a01b0384811680835261ffff85811660208086018281528a8616600081815260018452899020975188549251909516600160a01b026001600160b01b03199092169490961693909317929092179094558451928352820152918201527f55aa6b7deac290078b9b3b927ee1472239d9c5a421d40d287a0db8e4d7dcb3249060600160405180910390a1505050565b6000546001600160a01b0316331461087a5760405162461bcd60e51b81526004016102ef90610add565b6003548161ffff16106108cf5760405162461bcd60e51b815260206004820152601760248201527f526f79616c74792066656520697320746f6f206869676800000000000000000060448201526064016102ef565b6002805461ffff191661ffff92909216919091179055565b6000546001600160a01b031633146109115760405162461bcd60e51b81526004016102ef90610add565b6001600160a01b0381166109765760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ef565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b803561ffff811681146109e357600080fd5b919050565b6000602082840312156109fa57600080fd5b8135610a0581610b12565b9392505050565b600060208284031215610a1e57600080fd5b8151610a0581610b12565b60008060408385031215610a3c57600080fd5b8235610a4781610b12565b91506020830135610a5781610b12565b809150509250929050565b600080600060608486031215610a7757600080fd5b8335610a8281610b12565b92506020840135610a9281610b12565b9150610aa0604085016109d1565b90509250925092565b600060208284031215610abb57600080fd5b610a05826109d1565b600060208284031215610ad657600080fd5b5035919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6001600160a01b0381168114610b2757600080fd5b5056fea26469706673582212200924ff6ccc2ad2dd23f1b93370deaf1ef975ac970d9151ec55a30ae1731290d664736f6c63430008060033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80637d285aff1161008c578063acecf1a211610066578063acecf1a214610267578063d48ff9f014610288578063f2fde38b1461029b578063f8d614c9146102ae57600080fd5b80637d285aff146102265780638da5cb5b14610239578063a26acbbc1461025457600080fd5b806339310f39116100c857806339310f39146101a057806346167d2d146101b357806357b275b4146101c6578063715018a61461021e57600080fd5b80630d2b98e7146100ef5780631adf7e26146101045780632e64bc4a14610117575b600080fd5b6101026100fd3660046109e8565b6102c5565b005b610102610112366004610a29565b610355565b6101736101253660046109e8565b604080518082018252600080825260209182018190526001600160a01b039384168152600182528290208251808401909352549283168252600160a01b90920461ffff169181019190915290565b6040805182516001600160a01b0316815260209283015161ffff1692810192909252015b60405180910390f35b6101026101ae366004610ac4565b610541565b6101026101c13660046109e8565b610581565b6101fc6101d43660046109e8565b6001602052600090815260409020546001600160a01b03811690600160a01b900461ffff1682565b604080516001600160a01b03909316835261ffff909116602083015201610197565b6101026105cf565b6101026102343660046109e8565b610643565b6000546040516001600160a01b039091168152602001610197565b610102610262366004610a62565b61073e565b6002546102759061ffff1681565b60405161ffff9091168152602001610197565b610102610296366004610aa9565b610850565b6101026102a93660046109e8565b6108e7565b6102b760035481565b604051908152602001610197565b6000546001600160a01b031633146102f85760405162461bcd60e51b81526004016102ef90610add565b60405180910390fd5b6001600160a01b03811660008181526001602090815260409182902080546001600160b01b031916905590519182527f204bff414ab45e964ccd65a5f3ae6070e113d8e96ecc28c10b47a73724380a1a910160405180910390a150565b336001600160a01b0316826001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561039857600080fd5b505afa1580156103ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103d09190610a0c565b6001600160a01b0316146104265760405162461bcd60e51b815260206004820152601c60248201527f4f6e6c7920746865206f776e65722063616e2063616c6c20746869730000000060448201526064016102ef565b6001600160a01b03821660009081526004602052604090205460ff161561049b5760405162461bcd60e51b815260206004820152602360248201527f5468697320636f6c6c656374696f6e20697320696e2074686520626c61636b6c6044820152621a5cdd60ea1b60648201526084016102ef565b6040805180820182526001600160a01b038381168083526002805461ffff908116602080870191825289861660008181526001835289902097518854935197166001600160b01b031990931692909217600160a01b96841696909602959095179095559054855194855292840191909152168183015290517f55aa6b7deac290078b9b3b927ee1472239d9c5a421d40d287a0db8e4d7dcb3249181900360600190a15050565b6000546001600160a01b0316331461056b5760405162461bcd60e51b81526004016102ef90610add565b6103e8600354111561057c57600080fd5b600355565b6000546001600160a01b031633146105ab5760405162461bcd60e51b81526004016102ef90610add565b6001600160a01b03166000908152600460205260409020805460ff19166001179055565b6000546001600160a01b031633146105f95760405162461bcd60e51b81526004016102ef90610add565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461066d5760405162461bcd60e51b81526004016102ef90610add565b336001600160a01b0316816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156106b057600080fd5b505afa1580156106c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106e89190610a0c565b6001600160a01b0316146102f85760405162461bcd60e51b815260206004820152601c60248201527f4f6e6c7920746865206f776e65722063616e2063616c6c20746869730000000060448201526064016102ef565b6000546001600160a01b031633146107685760405162461bcd60e51b81526004016102ef90610add565b6003548161ffff1611156107b45760405162461bcd60e51b81526020600482015260136024820152720a4def2c2d8e8f240d2e640e8dede40daeac6d606b1b60448201526064016102ef565b6040805180820182526001600160a01b0384811680835261ffff85811660208086018281528a8616600081815260018452899020975188549251909516600160a01b026001600160b01b03199092169490961693909317929092179094558451928352820152918201527f55aa6b7deac290078b9b3b927ee1472239d9c5a421d40d287a0db8e4d7dcb3249060600160405180910390a1505050565b6000546001600160a01b0316331461087a5760405162461bcd60e51b81526004016102ef90610add565b6003548161ffff16106108cf5760405162461bcd60e51b815260206004820152601760248201527f526f79616c74792066656520697320746f6f206869676800000000000000000060448201526064016102ef565b6002805461ffff191661ffff92909216919091179055565b6000546001600160a01b031633146109115760405162461bcd60e51b81526004016102ef90610add565b6001600160a01b0381166109765760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ef565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b803561ffff811681146109e357600080fd5b919050565b6000602082840312156109fa57600080fd5b8135610a0581610b12565b9392505050565b600060208284031215610a1e57600080fd5b8151610a0581610b12565b60008060408385031215610a3c57600080fd5b8235610a4781610b12565b91506020830135610a5781610b12565b809150509250929050565b600080600060608486031215610a7757600080fd5b8335610a8281610b12565b92506020840135610a9281610b12565b9150610aa0604085016109d1565b90509250925092565b600060208284031215610abb57600080fd5b610a05826109d1565b600060208284031215610ad657600080fd5b5035919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6001600160a01b0381168114610b2757600080fd5b5056fea26469706673582212200924ff6ccc2ad2dd23f1b93370deaf1ef975ac970d9151ec55a30ae1731290d664736f6c63430008060033

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

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

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