ETH Price: $2,047.65 (+5.18%)
 

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Block
From
To
Set Delegate1473925562026-02-06 13:18:097 days ago1770383889IN
0x469788fE...6Fc015446
0 ETH0.0000000251060.00040552
Clear Delegate1473162322026-02-04 18:54:019 days ago1770231241IN
0x469788fE...6Fc015446
0 ETH0.0000000358080.00103124
Set Delegate1472750512026-02-03 20:01:1910 days ago1770148879IN
0x469788fE...6Fc015446
0 ETH0.0000000162680.0001693
Set Delegate1471759942026-02-01 12:59:2512 days ago1769950765IN
0x469788fE...6Fc015446
0 ETH0.0000000489160.0010033
Clear Delegate1471759562026-02-01 12:58:0912 days ago1769950689IN
0x469788fE...6Fc015446
0 ETH0.0000000262430.00100332
Set Delegate1471381802026-01-31 15:58:5713 days ago1769875137IN
0x469788fE...6Fc015446
0 ETH0.0000000638350.00106292
Set Delegate1471381092026-01-31 15:56:3513 days ago1769874995IN
0x469788fE...6Fc015446
0 ETH0.0000000197840.00013022
Set Delegate1471313942026-01-31 12:12:4513 days ago1769861565IN
0x469788fE...6Fc015446
0 ETH0.0000000566160.00117569
Set Delegate1471049632026-01-30 21:31:4314 days ago1769808703IN
0x469788fE...6Fc015446
0 ETH0.0000000596680.00110186
Set Delegate1470262162026-01-29 1:46:4916 days ago1769651209IN
0x469788fE...6Fc015446
0 ETH0.0000000040680.00010641
Set Delegate1470260612026-01-29 1:41:3916 days ago1769650899IN
0x469788fE...6Fc015446
0 ETH0.0000000056970.00010673
Set Delegate1469653452026-01-27 15:57:4717 days ago1769529467IN
0x469788fE...6Fc015446
0 ETH0.0000000055670.00010271
Set Delegate1469650482026-01-27 15:47:5317 days ago1769528873IN
0x469788fE...6Fc015446
0 ETH0.0000000073920.00010258
Set Delegate1469621902026-01-27 14:12:3717 days ago1769523157IN
0x469788fE...6Fc015446
0 ETH0.0000000063780.00010129
Set Delegate1469574962026-01-27 11:36:0917 days ago1769513769IN
0x469788fE...6Fc015446
0 ETH0.000000003470.00007681
Set Delegate1466397572026-01-20 3:04:5124 days ago1768878291IN
0x469788fE...6Fc015446
0 ETH0.0000000036680.0001029
Set Delegate1466397272026-01-20 3:03:5124 days ago1768878231IN
0x469788fE...6Fc015446
0 ETH0.0000000052420.00010213
Set Delegate1466180512026-01-19 15:01:1925 days ago1768834879IN
0x469788fE...6Fc015446
0 ETH0.0000000054650.00010458
Set Delegate1466156462026-01-19 13:41:0925 days ago1768830069IN
0x469788fE...6Fc015446
0 ETH0.0000000011960.00001511
Set Delegate1465831932026-01-18 19:39:2326 days ago1768765163IN
0x469788fE...6Fc015446
0 ETH0.0000000011510.00001567
Set Delegate1465813732026-01-18 18:38:4326 days ago1768761523IN
0x469788fE...6Fc015446
0 ETH0.0000000057180.0001058
Set Delegate1465776132026-01-18 16:33:2326 days ago1768754003IN
0x469788fE...6Fc015446
0 ETH0.0000000012770.00001771
Set Delegate1465728202026-01-18 13:53:3726 days ago1768744417IN
0x469788fE...6Fc015446
0 ETH0.0000000018530.00004468
Set Delegate1465727102026-01-18 13:49:5726 days ago1768744197IN
0x469788fE...6Fc015446
0 ETH0.0000000024870.00004361
Set Delegate1465496182026-01-18 1:00:1327 days ago1768698013IN
0x469788fE...6Fc015446
0 ETH0.0000000051530.00010064
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block From To
190673422022-08-14 12:23:411279 days ago1660479821  Contract Creation0 ETH

Cross-Chain Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
DelegateRegistry

Compiler Version
v0.7.2+commit.51b20bc0

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU GPLv3 license

Contract Source Code (Solidity)

/**
 *Submitted for verification at optimistic.etherscan.io on 2022-08-14
*/

// SPDX-License-Identifier: LGPL-3.0-only
pragma solidity >=0.7.0 <0.8.0;

contract DelegateRegistry {
    
    // The first key is the delegator and the second key a id. 
    // The value is the address of the delegate 
    mapping (address => mapping (bytes32 => address)) public delegation;
    
    // Using these events it is possible to process the events to build up reverse lookups.
    // The indeces allow it to be very partial about how to build this lookup (e.g. only for a specific delegate).
    event SetDelegate(address indexed delegator, bytes32 indexed id, address indexed delegate);
    event ClearDelegate(address indexed delegator, bytes32 indexed id, address indexed delegate);
    
    /// @dev Sets a delegate for the msg.sender and a specific id.
    ///      The combination of msg.sender and the id can be seen as a unique key.
    /// @param id Id for which the delegate should be set
    /// @param delegate Address of the delegate
    function setDelegate(bytes32 id, address delegate) public {
        require (delegate != msg.sender, "Can't delegate to self");
        require (delegate != address(0), "Can't delegate to 0x0");
        address currentDelegate = delegation[msg.sender][id];
        require (delegate != currentDelegate, "Already delegated to this address");
        
        // Update delegation mapping
        delegation[msg.sender][id] = delegate;
        
        if (currentDelegate != address(0)) {
            emit ClearDelegate(msg.sender, id, currentDelegate);
        }

        emit SetDelegate(msg.sender, id, delegate);
    }
    
    /// @dev Clears a delegate for the msg.sender and a specific id.
    ///      The combination of msg.sender and the id can be seen as a unique key.
    /// @param id Id for which the delegate should be set
    function clearDelegate(bytes32 id) public {
        address currentDelegate = delegation[msg.sender][id];
        require (currentDelegate != address(0), "No delegate set");
        
        // update delegation mapping
        delegation[msg.sender][id] = address(0);
        
        emit ClearDelegate(msg.sender, id, currentDelegate);
    }
}

Contract Security Audit

Contract ABI

API
[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegator","type":"address"},{"indexed":true,"internalType":"bytes32","name":"id","type":"bytes32"},{"indexed":true,"internalType":"address","name":"delegate","type":"address"}],"name":"ClearDelegate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegator","type":"address"},{"indexed":true,"internalType":"bytes32","name":"id","type":"bytes32"},{"indexed":true,"internalType":"address","name":"delegate","type":"address"}],"name":"SetDelegate","type":"event"},{"inputs":[{"internalType":"bytes32","name":"id","type":"bytes32"}],"name":"clearDelegate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"delegation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"id","type":"bytes32"},{"internalType":"address","name":"delegate","type":"address"}],"name":"setDelegate","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b50610794806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806374c6c45414610046578063bd86e508146100be578063f0bedbe21461010c575b600080fd5b6100926004803603604081101561005c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061013a565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61010a600480360360408110156100d457600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061017c565b005b6101386004803603602081101561012257600080fd5b8101908080359060200190929190505050610538565b005b60006020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561021e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f43616e27742064656c656761746520746f2073656c660000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156102c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f43616e27742064656c656761746520746f20307830000000000000000000000081525060200191505060405180910390fd5b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156103ba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602181526020018061073e6021913960400191505060405180910390fd5b816000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146104d8578073ffffffffffffffffffffffffffffffffffffffff16833373ffffffffffffffffffffffffffffffffffffffff167f9c4f00c4291262731946e308dc2979a56bd22cce8f95906b975065e96cd5a06460405160405180910390a45b8173ffffffffffffffffffffffffffffffffffffffff16833373ffffffffffffffffffffffffffffffffffffffff167fa9a7fd460f56bddb880a465a9c3e9730389c70bc53108148f16d55a87a6c468e60405160405180910390a4505050565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561064f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f4e6f2064656c656761746520736574000000000000000000000000000000000081525060200191505060405180910390fd5b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16823373ffffffffffffffffffffffffffffffffffffffff167f9c4f00c4291262731946e308dc2979a56bd22cce8f95906b975065e96cd5a06460405160405180910390a4505056fe416c72656164792064656c65676174656420746f20746869732061646472657373a2646970667358221220b6cd5a8d04426e1189563fbec7dfec4ba70090dc70fe05097a137991fe1b396964736f6c63430007020033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100415760003560e01c806374c6c45414610046578063bd86e508146100be578063f0bedbe21461010c575b600080fd5b6100926004803603604081101561005c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061013a565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61010a600480360360408110156100d457600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061017c565b005b6101386004803603602081101561012257600080fd5b8101908080359060200190929190505050610538565b005b60006020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561021e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f43616e27742064656c656761746520746f2073656c660000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156102c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f43616e27742064656c656761746520746f20307830000000000000000000000081525060200191505060405180910390fd5b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156103ba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602181526020018061073e6021913960400191505060405180910390fd5b816000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146104d8578073ffffffffffffffffffffffffffffffffffffffff16833373ffffffffffffffffffffffffffffffffffffffff167f9c4f00c4291262731946e308dc2979a56bd22cce8f95906b975065e96cd5a06460405160405180910390a45b8173ffffffffffffffffffffffffffffffffffffffff16833373ffffffffffffffffffffffffffffffffffffffff167fa9a7fd460f56bddb880a465a9c3e9730389c70bc53108148f16d55a87a6c468e60405160405180910390a4505050565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561064f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f4e6f2064656c656761746520736574000000000000000000000000000000000081525060200191505060405180910390fd5b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16823373ffffffffffffffffffffffffffffffffffffffff167f9c4f00c4291262731946e308dc2979a56bd22cce8f95906b975065e96cd5a06460405160405180910390a4505056fe416c72656164792064656c65676174656420746f20746869732061646472657373a2646970667358221220b6cd5a8d04426e1189563fbec7dfec4ba70090dc70fe05097a137991fe1b396964736f6c63430007020033

Deployed Bytecode Sourcemap

78:2120:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;232:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;983:635;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1843:352;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;232:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;983:635::-;1073:10;1061:22;;:8;:22;;;;1052:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1150:1;1130:22;;:8;:22;;;;1121:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1189:23;1215:10;:22;1226:10;1215:22;;;;;;;;;;;;;;;:26;1238:2;1215:26;;;;;;;;;;;;;;;;;;;;;1189:52;;1273:15;1261:27;;:8;:27;;;;1252:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1414:8;1385:10;:22;1396:10;1385:22;;;;;;;;;;;;;;;:26;1408:2;1385:26;;;;;;;;;;;;:37;;;;;;;;;;;;;;;;;;1474:1;1447:29;;:15;:29;;;1443:113;;1528:15;1498:46;;1524:2;1512:10;1498:46;;;;;;;;;;;;1443:113;1601:8;1573:37;;1597:2;1585:10;1573:37;;;;;;;;;;;;983:635;;;:::o;1843:352::-;1896:23;1922:10;:22;1933:10;1922:22;;;;;;;;;;;;;;;:26;1945:2;1922:26;;;;;;;;;;;;;;;;;;;;;1896:52;;1995:1;1968:29;;:15;:29;;;;1959:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2113:1;2076:10;:22;2087:10;2076:22;;;;;;;;;;;;;;;:26;2099:2;2076:26;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;2171:15;2141:46;;2167:2;2155:10;2141:46;;;;;;;;;;;;1843:352;;:::o

Swarm Source

ipfs://b6cd5a8d04426e1189563fbec7dfec4ba70090dc70fe05097a137991fe1b3969

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

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ 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.