ETH Price: $1,915.33 (-5.40%)

Contract

0xc263949a8b9dAa2D93d2C3fe86685BBDf8f64746
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Execute183746492023-10-18 3:46:11527 days ago1697600771IN
0xc263949a...Df8f64746
0 ETH0.001222616.67532733
Accept183744052023-10-18 2:57:11527 days ago1697597831IN
0xc263949a...Df8f64746
0 ETH0.000407125.89416077
Accept183742302023-10-18 2:21:23527 days ago1697595683IN
0xc263949a...Df8f64746
0 ETH0.000504027.29696147
Accept183740512023-10-18 1:45:23527 days ago1697593523IN
0xc263949a...Df8f64746
0 ETH0.000408965.92083149
Accept183738132023-10-18 0:57:47527 days ago1697590667IN
0xc263949a...Df8f64746
0 ETH0.000457056.61694171
Accept183736542023-10-18 0:25:23527 days ago1697588723IN
0xc263949a...Df8f64746
0 ETH0.000445956.45626458
Accept183734492023-10-17 23:43:59527 days ago1697586239IN
0xc263949a...Df8f64746
0 ETH0.000423676.00335792
Accept183732022023-10-17 22:54:23527 days ago1697583263IN
0xc263949a...Df8f64746
0 ETH0.000437596.32816618
Propose183730262023-10-17 22:18:59527 days ago1697581139IN
0xc263949a...Df8f64746
0 ETH0.001311418.11081299

Latest 3 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
Create Native Di...183746492023-10-18 3:46:11527 days ago1697600771
0xc263949a...Df8f64746
0.8 ETH
Transfer183730252023-10-17 22:18:47527 days ago1697581127
0xc263949a...Df8f64746
0.8 ETH
0x60a06040183691812023-10-17 9:24:59527 days ago1697534699  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:
paris 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": [
    "ds-test/=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/",
    "openzeppelin/=lib/openzeppelin-contracts/",
    "solmate/=lib/solmate/src/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "metadata": {
    "bytecodeHash": "ipfs",
    "appendCBOR": true
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "evmVersion": "paris",
  "libraries": {},
  "viaIR": true
}

Contract Security Audit

Contract ABI

API
[{"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"}]

60a060405261025480380380610014816100df565b92833981016040828203126100c45781516001600160a01b03811681036100c45760208381015190936001600160401b0382116100c4570182601f820112156100c45780519061006b61006683610109565b6100df565b938285528583830101116100c45760005b8281106100b15750506100959360009184010152610124565b60405160da908161017a823960805181818160190152606f0152f35b818101860151858201870152850161007c565b600080fd5b634e487b7160e01b600052604160045260246000fd5b6040519190601f01601f191682016001600160401b0381118382101761010457604052565b6100c9565b6001600160401b03811161010457601f01601f191660200190565b6080819052815160009283926020909101906001600160a01b03165af43d15610171573d9061015561006683610109565b9182523d6000602084013e5b156101695750565b602081519101fd5b60609061016156fe60806040526004361015604a575b600036818037808036817f00000000000000000000000000000000000000000000000000000000000000005af43d82803e156046573d90f35b3d90fd5b6000803560e01c6356973ee514605f5750600d565b3460a1578060031936011260a1577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166080908152602090f35b80fdfea264697066735822122071fb9b5f96e8d1bb39716cafe53eda307c95659122e63328b4b21a20a30944a064736f6c63430008140033000000000000000000000000b676cfeeed5c7b739452a502f1eff9ab684a56da000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000004c42d992cd3000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000004200000000000000000000000000000000000000000000000000000000000000440000000000000000000000000000000000000000000000000000000000000046000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000005460000000000000000000000000000000000000000000000000000000000000070800000000000000000000000000000000000000000000000000000000000000bb8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000f7f52dd34bc21eda08c0b804c7c1dbc48375820f0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000b55359987da764698a9a2d4ebfd1b1f72f0d5d87000000000000000000000000b073d00e1edaea77fd1c95e4d4c9d7b9ce846898000000000000000000000000b807961ccf30518651f228260e60a6fdd31fc373000000000000000000000000a1ad45107bc6110d6b9c59fb239d90ca8fa05e65000000000000000000000000fc19b15f8857ab9cffa5fac2a1bfe901b1d51f9f000000000000000000000000668521bffb06051a58faf225369eb47e00e6a659000000000000000000000000dc94dbe9bdd49b933954c13f16684beccc6ae534000000000000000000000000c2f57ac35791e12327eefcfa12e73f299600c1bc0000000000000000000000000000000000000000000000000000000000000010446f7567426f65686d652061686f7469000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010446f7567426f65686d652061686f74690000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000021137f8f35a76265bd1e4648b41b909e986209fd00000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x60806040526004361015604a575b600036818037808036817f000000000000000000000000b676cfeeed5c7b739452a502f1eff9ab684a56da5af43d82803e156046573d90f35b3d90fd5b6000803560e01c6356973ee514605f5750600d565b3460a1578060031936011260a1577f000000000000000000000000b676cfeeed5c7b739452a502f1eff9ab684a56da6001600160a01b03166080908152602090f35b80fdfea264697066735822122071fb9b5f96e8d1bb39716cafe53eda307c95659122e63328b4b21a20a30944a064736f6c63430008140033

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

000000000000000000000000b676cfeeed5c7b739452a502f1eff9ab684a56da000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000004c42d992cd3000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000004200000000000000000000000000000000000000000000000000000000000000440000000000000000000000000000000000000000000000000000000000000046000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000005460000000000000000000000000000000000000000000000000000000000000070800000000000000000000000000000000000000000000000000000000000000bb8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000f7f52dd34bc21eda08c0b804c7c1dbc48375820f0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000b55359987da764698a9a2d4ebfd1b1f72f0d5d87000000000000000000000000b073d00e1edaea77fd1c95e4d4c9d7b9ce846898000000000000000000000000b807961ccf30518651f228260e60a6fdd31fc373000000000000000000000000a1ad45107bc6110d6b9c59fb239d90ca8fa05e65000000000000000000000000fc19b15f8857ab9cffa5fac2a1bfe901b1d51f9f000000000000000000000000668521bffb06051a58faf225369eb47e00e6a659000000000000000000000000dc94dbe9bdd49b933954c13f16684beccc6ae534000000000000000000000000c2f57ac35791e12327eefcfa12e73f299600c1bc0000000000000000000000000000000000000000000000000000000000000010446f7567426f65686d652061686f7469000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010446f7567426f65686d652061686f74690000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000021137f8f35a76265bd1e4648b41b909e986209fd00000000000000000000000000000000000000000000000000000000

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

-----Encoded View---------------
42 Constructor Arguments found :
Arg [0] : 000000000000000000000000b676cfeeed5c7b739452a502f1eff9ab684a56da
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [2] : 00000000000000000000000000000000000000000000000000000000000004c4
Arg [3] : 2d992cd300000000000000000000000000000000000000000000000000000000
Arg [4] : 0000002000000000000000000000000000000000000000000000000000000000
Arg [5] : 000000a000000000000000000000000000000000000000000000000000000000
Arg [6] : 0000042000000000000000000000000000000000000000000000000000000000
Arg [7] : 0000044000000000000000000000000000000000000000000000000000000000
Arg [8] : 0000046000000000000000000000000000000000000000000000000000000000
Arg [9] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [10] : 0000010000000000000000000000000000000000000000000000000000000000
Arg [11] : 0000000100000000000000000000000000000000000000000000000000000000
Arg [12] : 0000000100000000000000000000000000000000000000000000000000000000
Arg [13] : 0000000100000000000000000000000000000000000000000000000000000000
Arg [14] : 0000000100000000000000000000000000000000000000000000000000000000
Arg [15] : 0000030000000000000000000000000000000000000000000000000000000000
Arg [16] : 0000034000000000000000000000000000000000000000000000000000000000
Arg [17] : 0000000100000000000000000000000000000000000000000000000000000000
Arg [18] : 000000e000000000000000000000000000000000000000000000000000000000
Arg [19] : 0005460000000000000000000000000000000000000000000000000000000000
Arg [20] : 0000708000000000000000000000000000000000000000000000000000000000
Arg [21] : 00000bb800000000000000000000000000000000000000000000000000000000
Arg [22] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [23] : 000000fa000000000000000000000000f7f52dd34bc21eda08c0b804c7c1dbc4
Arg [24] : 8375820f00000000000000000000000000000000000000000000000000000000
Arg [25] : 00000008000000000000000000000000b55359987da764698a9a2d4ebfd1b1f7
Arg [26] : 2f0d5d87000000000000000000000000b073d00e1edaea77fd1c95e4d4c9d7b9
Arg [27] : ce846898000000000000000000000000b807961ccf30518651f228260e60a6fd
Arg [28] : d31fc373000000000000000000000000a1ad45107bc6110d6b9c59fb239d90ca
Arg [29] : 8fa05e65000000000000000000000000fc19b15f8857ab9cffa5fac2a1bfe901
Arg [30] : b1d51f9f000000000000000000000000668521bffb06051a58faf225369eb47e
Arg [31] : 00e6a659000000000000000000000000dc94dbe9bdd49b933954c13f16684bec
Arg [32] : cc6ae534000000000000000000000000c2f57ac35791e12327eefcfa12e73f29
Arg [33] : 9600c1bc00000000000000000000000000000000000000000000000000000000
Arg [34] : 00000010446f7567426f65686d652061686f7469000000000000000000000000
Arg [35] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [36] : 00000010446f7567426f65686d652061686f7469000000000000000000000000
Arg [37] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [38] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [39] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [40] : 0000000100000000000000000000000021137f8f35a76265bd1e4648b41b909e
Arg [41] : 986209fd00000000000000000000000000000000000000000000000000000000


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.