ETH Price: $4,511.64 (-3.63%)

Contract

0xE6270367a25F1f56D3Df788fEB4Cda89372040e2

Overview

ETH Balance

0 ETH

ETH Value

$0.00

More Info

Private Name Tags

Multichain Info

N/A
Transaction Hash
Method
Block
From
To
Add To Whitelist21916502025-06-03 7:07:41126 days ago1748934461IN
0xE6270367...9372040e2
0 ETH00.00000025
Add To Whitelist21916502025-06-03 7:07:41126 days ago1748934461IN
0xE6270367...9372040e2
0 ETH00.00000025
Add To Whitelist21916502025-06-03 7:07:41126 days ago1748934461IN
0xE6270367...9372040e2
0 ETH00.00000025
Add To Whitelist21916502025-06-03 7:07:41126 days ago1748934461IN
0xE6270367...9372040e2
0 ETH00.00000025
Add To Whitelist21916502025-06-03 7:07:41126 days ago1748934461IN
0xE6270367...9372040e2
0 ETH00.00000025
Add To Whitelist21916502025-06-03 7:07:41126 days ago1748934461IN
0xE6270367...9372040e2
0 ETH00.00000025
Add To Whitelist21196062025-06-02 11:06:57127 days ago1748862417IN
0xE6270367...9372040e2
0 ETH00.00000025
Add To Whitelist18734642025-05-30 14:44:35130 days ago1748616275IN
0xE6270367...9372040e2
0 ETH0.000000020.00000025
Add To Whitelist18728332025-05-30 14:34:04130 days ago1748615644IN
0xE6270367...9372040e2
0 ETH0.000000010.00000025
Add To Whitelist18726992025-05-30 14:31:50130 days ago1748615510IN
0xE6270367...9372040e2
0 ETH0.000000010.00000025
Add To Whitelist18724812025-05-30 14:28:12130 days ago1748615292IN
0xE6270367...9372040e2
0 ETH0.000000010.00000025
Add To Whitelist18724532025-05-30 14:27:44130 days ago1748615264IN
0xE6270367...9372040e2
0 ETH0.000000010.00000025
Add To Whitelist18724052025-05-30 14:26:56130 days ago1748615216IN
0xE6270367...9372040e2
0 ETH0.000000020.00000025
Add To Whitelist18722472025-05-30 14:24:18130 days ago1748615058IN
0xE6270367...9372040e2
0 ETH0.000000070.0012003
Add To Whitelist18721912025-05-30 14:23:22130 days ago1748615002IN
0xE6270367...9372040e2
0 ETH0.000000060.0012003

View more zero value Internal Transactions in Advanced View mode

Advanced mode:

Loading...
Loading

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

Contract Name:
Whitelist

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
Yes with 1 runs

Other Settings:
cancun EvmVersion

Contract Source Code (Solidity Standard Json-Input format)

// SPDX-License-Identifier: GPL-3.0
// Docgen-SOLC: 0.8.25

pragma solidity ^0.8.24;

import {Owned} from "./Owned.sol";
import {IWhitelist} from "../Interfaces/IWhitelist.sol";

contract Whitelist is IWhitelist, Owned {
    // calling contract -> user -> whitelisted
    mapping(address => mapping(address => bool)) whitelist;

    event Whitelisted(address callingContract, address user);
    event WhitelistRemoved(address callingContract, address user);

    constructor(address owner) Owned(owner) {}

    function addToWhitelist(address callingContract, address user) external override onlyOwner {
        whitelist[callingContract][user] = true;

        emit Whitelisted(callingContract, user);
    }

    function removeFromWhitelist(address callingContract, address user) external override onlyOwner {
        whitelist[callingContract][user] = false;

        emit WhitelistRemoved(callingContract, user);
    }

    function isWhitelisted(address callingContract, address user) external view override returns (bool) {
        return whitelist[callingContract][user];
    }
}

// SPDX-License-Identifier: GPL-3.0
// Docgen-SOLC: 0.8.25

pragma solidity 0.8.24;

import "../Interfaces/IOwned.sol";

// https://docs.synthetix.io/contracts/source/contracts/owned
contract Owned is IOwned {
    address public override owner;
    address public override nominatedOwner;

    event OwnerNominated(address newOwner);
    event OwnerChanged(address oldOwner, address newOwner);

    constructor(address _owner) {
        require(_owner != address(0), "Owned/owner-zero");
        owner = _owner;

        emit OwnerChanged(address(0), _owner);
    }

    function nominateNewOwner(address _owner) external virtual override onlyOwner {
        nominatedOwner = _owner;

        emit OwnerNominated(_owner);
    }

    function acceptOwnership() external virtual override {
        require(msg.sender == nominatedOwner, "Owned/not-nominated");

        emit OwnerChanged(owner, nominatedOwner);

        owner = nominatedOwner;
        nominatedOwner = address(0);
    }

    modifier onlyOwner() {
        _onlyOwner();
        _;
    }

    function _onlyOwner() private view {
        require(msg.sender == owner, "Owned/not-owner");
    }
}

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

interface IOwned {
    function owner() external view returns (address);

    function nominatedOwner() external view returns (address);

    function nominateNewOwner(address owner) external;

    function acceptOwnership() external;
}

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

interface IWhitelist {
    function addToWhitelist(address callingContract, address user) external;
    function removeFromWhitelist(address callingContract, address user) external;
    function isWhitelisted(address callingContract, address user) external view returns (bool);
}

Settings
{
  "evmVersion": "cancun",
  "libraries": {},
  "metadata": {
    "appendCBOR": true,
    "bytecodeHash": "ipfs",
    "useLiteralContent": false
  },
  "optimizer": {
    "enabled": true,
    "runs": 1
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "remappings": [
    "openzeppelin/=lib/V2-gov/lib/openzeppelin-contracts/",
    "@chimera/=lib/V2-gov/lib/chimera/src/",
    "@openzeppelin/contracts/=lib/V2-gov/lib/openzeppelin-contracts/contracts/",
    "Solady/=lib/Solady/src/",
    "V2-gov/=lib/V2-gov/",
    "chimera/=lib/V2-gov/lib/chimera/src/",
    "ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/",
    "erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/",
    "forge-std/=lib/forge-std/src/",
    "openzeppelin-contracts/=lib/openzeppelin-contracts/",
    "v4-core/=lib/V2-gov/lib/v4-core/"
  ],
  "viaIR": false
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldOwner","type":"address"},{"indexed":false,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnerChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnerNominated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"callingContract","type":"address"},{"indexed":false,"internalType":"address","name":"user","type":"address"}],"name":"WhitelistRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"callingContract","type":"address"},{"indexed":false,"internalType":"address","name":"user","type":"address"}],"name":"Whitelisted","type":"event"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"callingContract","type":"address"},{"internalType":"address","name":"user","type":"address"}],"name":"addToWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"callingContract","type":"address"},{"internalType":"address","name":"user","type":"address"}],"name":"isWhitelisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"nominateNewOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"nominatedOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"callingContract","type":"address"},{"internalType":"address","name":"user","type":"address"}],"name":"removeFromWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"}]

0x608060405234801561000f575f80fd5b5060405161056638038061056683398101604081905261002e916100d9565b806001600160a01b03811661007c5760405162461bcd60e51b815260206004820152601060248201526f4f776e65642f6f776e65722d7a65726f60801b604482015260640160405180910390fd5b5f80546001600160a01b0319166001600160a01b03831690811782556040805192835260208301919091527fb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c910160405180910390a15050610106565b5f602082840312156100e9575f80fd5b81516001600160a01b03811681146100ff575f80fd5b9392505050565b610453806101135f395ff3fe608060405234801561000f575f80fd5b506004361061006b575f3560e01c80631627540c1461006f57806353a47bb71461008457806357518243146100ad57806379ba5097146100c05780638da5cb5b146100c8578063b6b35272146100da578063f8d3277d14610125575b5f80fd5b61008261007d36600461039e565b610138565b005b600154610097906001600160a01b031681565b6040516100a491906103be565b60405180910390f35b6100826100bb3660046103d2565b610196565b61008261020b565b5f54610097906001600160a01b031681565b6101156100e83660046103d2565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100a4565b6100826101333660046103d2565b6102d0565b610140610336565b600180546001600160a01b0319166001600160a01b0383161790556040517f906a1c6bd7e3091ea86693dd029a831c19049ce77f1dce2ce0bab1cacbabce229061018b9083906103be565b60405180910390a150565b61019e610336565b6001600160a01b038083165f9081526002602090815260408083209385168352929052819020805460ff19166001179055517f6661a7108aecd07864384529117d96c319c1163e3010c01390f6b704726e07de906101ff9084908490610403565b60405180910390a15050565b6001546001600160a01b031633146102605760405162461bcd60e51b815260206004820152601360248201527213dddb99590bdb9bdd0b5b9bdb5a5b985d1959606a1b60448201526064015b60405180910390fd5b5f546001546040517fb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c926102a2926001600160a01b0391821692911690610403565b60405180910390a1600180545f80546001600160a01b03199081166001600160a01b03841617909155169055565b6102d8610336565b6001600160a01b038083165f9081526002602090815260408083209385168352929052819020805460ff19169055517fe0fcf303ba3014f7bddb92283585b57ae29a68f05ceb43d0a0c1b92ad80c613c906101ff9084908490610403565b5f546001600160a01b031633146103815760405162461bcd60e51b815260206004820152600f60248201526e27bbb732b217b737ba16b7bbb732b960891b6044820152606401610257565b565b80356001600160a01b0381168114610399575f80fd5b919050565b5f602082840312156103ae575f80fd5b6103b782610383565b9392505050565b6001600160a01b0391909116815260200190565b5f80604083850312156103e3575f80fd5b6103ec83610383565b91506103fa60208401610383565b90509250929050565b6001600160a01b039283168152911660208201526040019056fea2646970667358221220d435861b40525c5f81abaa21a04df31f5da579ddd54ec987d488c7bae10ede4d64736f6c63430008180033000000000000000000000000919d5a6f2cbc0731380c26b4ac4f6183dd3a40c8

Deployed Bytecode

0x608060405234801561000f575f80fd5b506004361061006b575f3560e01c80631627540c1461006f57806353a47bb71461008457806357518243146100ad57806379ba5097146100c05780638da5cb5b146100c8578063b6b35272146100da578063f8d3277d14610125575b5f80fd5b61008261007d36600461039e565b610138565b005b600154610097906001600160a01b031681565b6040516100a491906103be565b60405180910390f35b6100826100bb3660046103d2565b610196565b61008261020b565b5f54610097906001600160a01b031681565b6101156100e83660046103d2565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100a4565b6100826101333660046103d2565b6102d0565b610140610336565b600180546001600160a01b0319166001600160a01b0383161790556040517f906a1c6bd7e3091ea86693dd029a831c19049ce77f1dce2ce0bab1cacbabce229061018b9083906103be565b60405180910390a150565b61019e610336565b6001600160a01b038083165f9081526002602090815260408083209385168352929052819020805460ff19166001179055517f6661a7108aecd07864384529117d96c319c1163e3010c01390f6b704726e07de906101ff9084908490610403565b60405180910390a15050565b6001546001600160a01b031633146102605760405162461bcd60e51b815260206004820152601360248201527213dddb99590bdb9bdd0b5b9bdb5a5b985d1959606a1b60448201526064015b60405180910390fd5b5f546001546040517fb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c926102a2926001600160a01b0391821692911690610403565b60405180910390a1600180545f80546001600160a01b03199081166001600160a01b03841617909155169055565b6102d8610336565b6001600160a01b038083165f9081526002602090815260408083209385168352929052819020805460ff19169055517fe0fcf303ba3014f7bddb92283585b57ae29a68f05ceb43d0a0c1b92ad80c613c906101ff9084908490610403565b5f546001600160a01b031633146103815760405162461bcd60e51b815260206004820152600f60248201526e27bbb732b217b737ba16b7bbb732b960891b6044820152606401610257565b565b80356001600160a01b0381168114610399575f80fd5b919050565b5f602082840312156103ae575f80fd5b6103b782610383565b9392505050565b6001600160a01b0391909116815260200190565b5f80604083850312156103e3575f80fd5b6103ec83610383565b91506103fa60208401610383565b90509250929050565b6001600160a01b039283168152911660208201526040019056fea2646970667358221220d435861b40525c5f81abaa21a04df31f5da579ddd54ec987d488c7bae10ede4d64736f6c63430008180033

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
0xE6270367a25F1f56D3Df788fEB4Cda89372040e2
Loading...
Loading
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.