ETH Price: $3,406.54 (+1.46%)

Contract

0x251c3246642dBCc5473ae8700A14A11522a4302c
 

Overview

ETH Balance

1.28 ETH

Eth Value

$4,360.37 (@ $3,406.54/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Set Approval For...211534802024-11-09 23:47:4717 days ago1731196067IN
0x251c3246...522a4302c
0 ETH0.000664213.42938156
Set Approval For...211472042024-11-09 2:47:4718 days ago1731120467IN
0x251c3246...522a4302c
0 ETH0.000448019.05825485
Set Approval For...211247692024-11-05 23:36:1121 days ago1730849771IN
0x251c3246...522a4302c
0 ETH0.000224064.53024314
Set Approval For...210759642024-10-30 4:05:5928 days ago1730261159IN
0x251c3246...522a4302c
0 ETH0.0004946810.00182908
Set Approval For...210482652024-10-26 7:20:1132 days ago1729927211IN
0x251c3246...522a4302c
0 ETH0.000200714.0581964
Set Approval For...210449312024-10-25 20:10:2332 days ago1729887023IN
0x251c3246...522a4302c
0 ETH0.000254785.15145554
Set Approval For...210222402024-10-22 16:13:2335 days ago1729613603IN
0x251c3246...522a4302c
0 ETH0.0009979220.17685816
Delegate Voting ...209925222024-10-18 12:43:1139 days ago1729255391IN
0x251c3246...522a4302c
0 ETH0.0015581225
Set Approval For...209842932024-10-17 9:08:4741 days ago1729156127IN
0x251c3246...522a4302c
0 ETH0.0010772621.78106535
Set Approval For...209822082024-10-17 2:09:4741 days ago1729130987IN
0x251c3246...522a4302c
0 ETH0.000447029.03827579
Set Approval For...209069282024-10-06 13:52:2351 days ago1728222743IN
0x251c3246...522a4302c
0 ETH0.000447779.05354425
Delegate Voting ...205425652024-08-16 17:04:23102 days ago1723827863IN
0x251c3246...522a4302c
0 ETH0.000168842.70917228
Set Approval For...204303932024-08-01 1:24:23118 days ago1722475463IN
0x251c3246...522a4302c
0 ETH0.000144782.92733839
Set Approval For...203038362024-07-14 9:26:11136 days ago1720949171IN
0x251c3246...522a4302c
0 ETH0.000140172.83412115
Delegate Voting ...202878832024-07-12 3:56:47138 days ago1720756607IN
0x251c3246...522a4302c
0 ETH0.000251992.59157923
Delegate Voting ...201480842024-06-22 15:17:23157 days ago1719069443IN
0x251c3246...522a4302c
0 ETH0.000261454.19505067
Delegate Voting ...201316682024-06-20 8:12:35160 days ago1718871155IN
0x251c3246...522a4302c
0 ETH0.000818098.64578951
Execute201094082024-06-17 5:25:35163 days ago1718601935IN
0x251c3246...522a4302c
0 ETH0.00028642.80152793
Set Approval For...201002282024-06-15 22:39:47164 days ago1718491187IN
0x251c3246...522a4302c
0 ETH0.000207724.2
Accept200884712024-06-14 7:11:47166 days ago1718349107IN
0x251c3246...522a4302c
0 ETH0.000478146.9225144
Accept200884412024-06-14 7:05:47166 days ago1718348747IN
0x251c3246...522a4302c
0 ETH0.000605088.76040132
Accept200884252024-06-14 7:02:35166 days ago1718348555IN
0x251c3246...522a4302c
0 ETH0.000629289.11063289
Accept200883972024-06-14 6:56:59166 days ago1718348219IN
0x251c3246...522a4302c
0 ETH0.000613248.87844346
Accept200883872024-06-14 6:54:59166 days ago1718348099IN
0x251c3246...522a4302c
0 ETH0.000621038.99127368
Accept200883802024-06-14 6:53:35166 days ago1718348015IN
0x251c3246...522a4302c
0 ETH0.000534327.73589228
View all transactions

Latest 3 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
182117182023-09-25 8:50:35429 days ago1695631835
0x251c3246...522a4302c
10 ETH
180568612023-09-03 15:28:47450 days ago1693754927
0x251c3246...522a4302c
11.28 ETH
180425842023-09-01 15:25:59452 days ago1693581959  Contract Creation0 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Proxy

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
shanghai EvmVersion
File 1 of 3 : Proxy.sol
// SPDX-License-Identifier: GPL-3.0
pragma solidity 0.8.20;

import "./LibRawResult.sol";
import "./Implementation.sol";

/// @notice Base class for all proxy contracts.
contract Proxy {
    using LibRawResult for bytes;

    /// @notice The address of the implementation contract used by this proxy.
    Implementation public immutable IMPL;

    // Made `payable` to allow initialized crowdfunds to receive ETH as an
    // initial contribution.
    constructor(Implementation impl, bytes memory initCallData) payable {
        IMPL = impl;
        (bool s, bytes memory r) = address(impl).delegatecall(initCallData);
        if (!s) {
            r.rawRevert();
        }
    }

    // Forward all calls to the implementation.
    fallback() external payable {
        Implementation impl = IMPL;
        assembly {
            calldatacopy(0x00, 0x00, calldatasize())
            let s := delegatecall(gas(), impl, 0x00, calldatasize(), 0x00, 0)
            returndatacopy(0x00, 0x00, returndatasize())
            if iszero(s) {
                revert(0x00, returndatasize())
            }
            return(0x00, returndatasize())
        }
    }
}

File 2 of 3 : LibRawResult.sol
// SPDX-License-Identifier: GPL-3.0
pragma solidity 0.8.20;

library LibRawResult {
    // Revert with the data in `b`.
    function rawRevert(bytes memory b) internal pure {
        assembly {
            revert(add(b, 32), mload(b))
        }
    }

    // Return with the data in `b`.
    function rawReturn(bytes memory b) internal pure {
        assembly {
            return(add(b, 32), mload(b))
        }
    }
}

File 3 of 3 : Implementation.sol
// SPDX-License-Identifier: GPL-3.0
pragma solidity 0.8.20;

// Base contract for all contracts intended to be delegatecalled into.
abstract contract Implementation {
    error OnlyDelegateCallError();
    error OnlyConstructorError();

    address public immutable IMPL;

    constructor() {
        IMPL = address(this);
    }

    // Reverts if the current function context is not inside of a delegatecall.
    modifier onlyDelegateCall() virtual {
        if (address(this) == IMPL) {
            revert OnlyDelegateCallError();
        }
        _;
    }

    // Reverts if the current function context is not inside of a constructor.
    modifier onlyConstructor() {
        if (address(this).code.length != 0) {
            revert OnlyConstructorError();
        }
        _;
    }
}

Settings
{
  "remappings": [
    "forge-std/=lib/forge-std/src/",
    "openzeppelin/=lib/openzeppelin-contracts/",
    "solmate/=lib/solmate/src/",
    "ds-test/=lib/forge-std/lib/ds-test/src/",
    "erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/",
    "openzeppelin-contracts/=lib/openzeppelin-contracts/",
    "party-addresses/=lib/party-addresses/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "metadata": {
    "useLiteralContent": false,
    "bytecodeHash": "ipfs",
    "appendCBOR": true
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "evmVersion": "shanghai",
  "libraries": {
    "contracts/utils/LibRenderer.sol": {
      "LibRenderer": "0x39244498e639c4b24910e73dfa3622881d456724"
    }
  },
  "viaIR": true
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"contract Implementation","name":"impl","type":"address"},{"internalType":"bytes","name":"initCallData","type":"bytes"}],"stateMutability":"payable","type":"constructor"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"IMPL","outputs":[{"internalType":"contract Implementation","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

60a060405261024b80380380610014816100da565b92833981016040828203126100c25781516001600160a01b03811681036100c25760208381015190936001600160401b0382116100c2570182601f820112156100c25780519061006b61006683610104565b6100da565b938285528583830101116100c2575f5b8281106100af575050610093935f918401015261011f565b60405160d89081610173823960805181818160180152606d0152f35b818101860151858201870152850161007b565b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040519190601f01601f191682016001600160401b038111838210176100ff57604052565b6100c6565b6001600160401b0381116100ff57601f01601f191660200190565b608081905281515f9283926020909101906001600160a01b03165af43d1561016a573d9061014f61006683610104565b9182523d5f602084013e5b156101625750565b602081519101fd5b60609061015a56fe608060405260043610156049575b5f36818037808036817f00000000000000000000000000000000000000000000000000000000000000005af43d82803e156045573d90f35b3d90fd5b5f803560e01c6356973ee514605d5750600d565b34609f5780600319360112609f577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166080908152602090f35b80fdfea26469706673582212205ea09bd3a4e860c24fc3b976d42dd00080f7d4f22863c3c0627037a80672527564736f6c63430008140033000000000000000000000000b676cfeeed5c7b739452a502f1eff9ab684a56da000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003e42d992cd3000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000360000000000000000000000000000000000000000000000000000000000000038000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000002200000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000000dac000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000f7f52dd34bc21eda08c0b804c7c1dbc48375820f0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000b0623c91c65621df716ab8afe5f66656b21a9108000000000000000000000000000000000000000000000000000000000000000f49646561204775792053756d6d65720000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f49646561204775792053756d6d6572000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000001006292eabba94784f5bccbc5756f3fe2a5f69200000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405260043610156049575b5f36818037808036817f000000000000000000000000b676cfeeed5c7b739452a502f1eff9ab684a56da5af43d82803e156045573d90f35b3d90fd5b5f803560e01c6356973ee514605d5750600d565b34609f5780600319360112609f577f000000000000000000000000b676cfeeed5c7b739452a502f1eff9ab684a56da6001600160a01b03166080908152602090f35b80fdfea26469706673582212205ea09bd3a4e860c24fc3b976d42dd00080f7d4f22863c3c0627037a80672527564736f6c63430008140033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000b676cfeeed5c7b739452a502f1eff9ab684a56da000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003e42d992cd3000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000360000000000000000000000000000000000000000000000000000000000000038000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000002200000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000000dac000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000f7f52dd34bc21eda08c0b804c7c1dbc48375820f0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000b0623c91c65621df716ab8afe5f66656b21a9108000000000000000000000000000000000000000000000000000000000000000f49646561204775792053756d6d65720000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f49646561204775792053756d6d6572000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000001006292eabba94784f5bccbc5756f3fe2a5f69200000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : impl (address): 0xb676cfeEeD5c7B739452a502F1Eff9Ab684A56Da
Arg [1] : initCallData (bytes): 0x2d992cd3000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000360000000000000000000000000000000000000000000000000000000000000038000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000002200000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000000dac000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000f7f52dd34bc21eda08c0b804c7c1dbc48375820f0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000b0623c91c65621df716ab8afe5f66656b21a9108000000000000000000000000000000000000000000000000000000000000000f49646561204775792053756d6d65720000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f49646561204775792053756d6d6572000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000001006292eabba94784f5bccbc5756f3fe2a5f692

-----Encoded View---------------
35 Constructor Arguments found :
Arg [0] : 000000000000000000000000b676cfeeed5c7b739452a502f1eff9ab684a56da
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [2] : 00000000000000000000000000000000000000000000000000000000000003e4
Arg [3] : 2d992cd300000000000000000000000000000000000000000000000000000000
Arg [4] : 0000002000000000000000000000000000000000000000000000000000000000
Arg [5] : 000000a000000000000000000000000000000000000000000000000000000000
Arg [6] : 0000034000000000000000000000000000000000000000000000000000000000
Arg [7] : 0000036000000000000000000000000000000000000000000000000000000000
Arg [8] : 0000038000000000000000000000000000000000000000000000000000000000
Arg [9] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [10] : 0000010000000000000000000000000000000000000000000000000000000000
Arg [11] : 0000000100000000000000000000000000000000000000000000000000000000
Arg [12] : 0000000100000000000000000000000000000000000000000000000000000000
Arg [13] : 0000000100000000000000000000000000000000000000000000000000000000
Arg [14] : 0000000100000000000000000000000000000000000000000000000000000000
Arg [15] : 0000022000000000000000000000000000000000000000000000000000000000
Arg [16] : 0000026000000000000000000000000000000000000000000000000000000000
Arg [17] : 0000000100000000000000000000000000000000000000000000000000000000
Arg [18] : 000000e000000000000000000000000000000000000000000000000000000000
Arg [19] : 00093a8000000000000000000000000000000000000000000000000000000000
Arg [20] : 0001518000000000000000000000000000000000000000000000000000000000
Arg [21] : 00000dac00000000000000000000000000000000000000000000000000000000
Arg [22] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [23] : 000000fa000000000000000000000000f7f52dd34bc21eda08c0b804c7c1dbc4
Arg [24] : 8375820f00000000000000000000000000000000000000000000000000000000
Arg [25] : 00000001000000000000000000000000b0623c91c65621df716ab8afe5f66656
Arg [26] : b21a910800000000000000000000000000000000000000000000000000000000
Arg [27] : 0000000f49646561204775792053756d6d657200000000000000000000000000
Arg [28] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [29] : 0000000f49646561204775792053756d6d657200000000000000000000000000
Arg [30] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [31] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [32] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [33] : 0000000100000000000000000000000001006292eabba94784f5bccbc5756f3f
Arg [34] : e2a5f69200000000000000000000000000000000000000000000000000000000


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  ]
[ 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.