ETH Price: $2,635.34 (-0.92%)

Contract

0x3D09f0005256acf6C9D30a198c8D874b560B3cdE
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Finalize183592862023-10-16 0:14:59481 days ago1697415299IN
0x3D09f000...b560B3cdE
0 ETH0.000312014.90674479
Contribute183592592023-10-16 0:09:35481 days ago1697414975IN
0x3D09f000...b560B3cdE
0.017 ETH0.001202445.47630256
Contribute183592372023-10-16 0:05:11481 days ago1697414711IN
0x3D09f000...b560B3cdE
0.017 ETH0.001657237.54715944
Contribute183592162023-10-16 0:00:47481 days ago1697414447IN
0x3D09f000...b560B3cdE
0.017 ETH0.001364746.21512891
Contribute183591932023-10-15 23:55:59481 days ago1697414159IN
0x3D09f000...b560B3cdE
0.017 ETH0.001361236.19947683
Contribute183591662023-10-15 23:50:35481 days ago1697413835IN
0x3D09f000...b560B3cdE
0.017 ETH0.001226415.58519563
Contribute183591382023-10-15 23:44:59481 days ago1697413499IN
0x3D09f000...b560B3cdE
0.017 ETH0.001190445.42166385
Contribute183591042023-10-15 23:38:11481 days ago1697413091IN
0x3D09f000...b560B3cdE
0.017 ETH0.00115895.27775151
Contribute183590782023-10-15 23:32:59481 days ago1697412779IN
0x3D09f000...b560B3cdE
0.017 ETH0.001162415.29371507
Contribute183590472023-10-15 23:26:35481 days ago1697412395IN
0x3D09f000...b560B3cdE
0.017 ETH0.001062724.83997997
Contribute183590192023-10-15 23:20:59481 days ago1697412059IN
0x3D09f000...b560B3cdE
0.017 ETH0.001204275.08812761

Latest 2 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
183592862023-10-16 0:14:59481 days ago1697415299
0x3D09f000...b560B3cdE
0.17 ETH
183590152023-10-15 23:20:11481 days ago1697412011  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

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

60a060405261025480380380610014816100df565b92833981016040828203126100c45781516001600160a01b03811681036100c45760208381015190936001600160401b0382116100c4570182601f820112156100c45780519061006b61006683610109565b6100df565b938285528583830101116100c45760005b8281106100b15750506100959360009184010152610124565b60405160da908161017a823960805181818160190152606f0152f35b818101860151858201870152850161007c565b600080fd5b634e487b7160e01b600052604160045260246000fd5b6040519190601f01601f191682016001600160401b0381118382101761010457604052565b6100c9565b6001600160401b03811161010457601f01601f191660200190565b6080819052815160009283926020909101906001600160a01b03165af43d15610171573d9061015561006683610109565b9182523d6000602084013e5b156101695750565b602081519101fd5b60609061016156fe60806040526004361015604a575b600036818037808036817f00000000000000000000000000000000000000000000000000000000000000005af43d82803e156046573d90f35b3d90fd5b6000803560e01c6356973ee514605f5750600d565b3460a1578060031936011260a1577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166080908152602090f35b80fdfea264697066735822122071fb9b5f96e8d1bb39716cafe53eda307c95659122e63328b4b21a20a30944a064736f6c6343000814003300000000000000000000000023c886396cfbadb0f3bac4b728150e8a59dc0e1000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000644ad6f10d500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003c6568f12e8002000000000000000000000000000000000000000000000000003c6568f12e80020000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000003c6568f12e800200000000000000000000000000000000000000000000d3c21bcecceda100000000000000000000000000000000000000000000000000000000000000000027100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000697800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c0000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000001e00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000044000000000000000000000000000000000000000000000000000000000000004600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000643696761726f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000643696761726f0000000000000000000000000000000000000000000000000000000000000000000000000000b676cfeeed5c7b739452a502f1eff9ab684a56da000000000000000000000000c0e0ec5541e26e93d5a9f5e999ab2a0a7f8260ae00000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000069780000000000000000000000000000000000000000000000000000000000001356000000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000f7f52dd34bc21eda08c0b804c7c1dbc48375820f000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000006495c457798a77c1ecd9367f01534e524423005400000000000000000000000030af5d69e7f944e76aafb052c564e96caae909980000000000000000000000004a9944c57c89c75ce0db4070c497d65d9a2d923d000000000000000000000000e2ab7684428b2b4778747ad4cb2435fd37904900000000000000000000000000b91a8867cbf19b1d26a730bbccf38fede3f546450000000000000000000000006ae41e0060f4b46499626b74e51a0750a533dbf5000000000000000000000000405e59361f8b344b76e2a62dcf7b96b865cb60a000000000000000000000000011b9eee5bbb1db8b12fb1a797a022e76362dd5870000000000000000000000006b28009df12db051c8a8a7cfec28d73ebac2b1d6000000000000000000000000825517dc99890e405fe5ce74f759a96768c414fe0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x60806040526004361015604a575b600036818037808036817f00000000000000000000000023c886396cfbadb0f3bac4b728150e8a59dc0e105af43d82803e156046573d90f35b3d90fd5b6000803560e01c6356973ee514605f5750600d565b3460a1578060031936011260a1577f00000000000000000000000023c886396cfbadb0f3bac4b728150e8a59dc0e106001600160a01b03166080908152602090f35b80fdfea264697066735822122071fb9b5f96e8d1bb39716cafe53eda307c95659122e63328b4b21a20a30944a064736f6c63430008140033

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

00000000000000000000000023c886396cfbadb0f3bac4b728150e8a59dc0e1000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000644ad6f10d500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003c6568f12e8002000000000000000000000000000000000000000000000000003c6568f12e80020000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000003c6568f12e800200000000000000000000000000000000000000000000d3c21bcecceda100000000000000000000000000000000000000000000000000000000000000000027100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000697800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c0000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000001e00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000044000000000000000000000000000000000000000000000000000000000000004600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000643696761726f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000643696761726f0000000000000000000000000000000000000000000000000000000000000000000000000000b676cfeeed5c7b739452a502f1eff9ab684a56da000000000000000000000000c0e0ec5541e26e93d5a9f5e999ab2a0a7f8260ae00000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000069780000000000000000000000000000000000000000000000000000000000001356000000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000f7f52dd34bc21eda08c0b804c7c1dbc48375820f000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000006495c457798a77c1ecd9367f01534e524423005400000000000000000000000030af5d69e7f944e76aafb052c564e96caae909980000000000000000000000004a9944c57c89c75ce0db4070c497d65d9a2d923d000000000000000000000000e2ab7684428b2b4778747ad4cb2435fd37904900000000000000000000000000b91a8867cbf19b1d26a730bbccf38fede3f546450000000000000000000000006ae41e0060f4b46499626b74e51a0750a533dbf5000000000000000000000000405e59361f8b344b76e2a62dcf7b96b865cb60a000000000000000000000000011b9eee5bbb1db8b12fb1a797a022e76362dd5870000000000000000000000006b28009df12db051c8a8a7cfec28d73ebac2b1d6000000000000000000000000825517dc99890e405fe5ce74f759a96768c414fe0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : impl (address): 0x23C886396CFbaDB0F3bAC4b728150e8A59dC0E10
Arg [1] : initCallData (bytes): 0xad6f10d500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003c6568f12e8002000000000000000000000000000000000000000000000000003c6568f12e80020000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000003c6568f12e800200000000000000000000000000000000000000000000d3c21bcecceda100000000000000000000000000000000000000000000000000000000000000000027100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000697800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c0000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000001e00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000044000000000000000000000000000000000000000000000000000000000000004600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000643696761726f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000643696761726f0000000000000000000000000000000000000000000000000000000000000000000000000000b676cfeeed5c7b739452a502f1eff9ab684a56da000000000000000000000000c0e0ec5541e26e93d5a9f5e999ab2a0a7f8260ae00000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000069780000000000000000000000000000000000000000000000000000000000001356000000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000f7f52dd34bc21eda08c0b804c7c1dbc48375820f000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000006495c457798a77c1ecd9367f01534e524423005400000000000000000000000030af5d69e7f944e76aafb052c564e96caae909980000000000000000000000004a9944c57c89c75ce0db4070c497d65d9a2d923d000000000000000000000000e2ab7684428b2b4778747ad4cb2435fd37904900000000000000000000000000b91a8867cbf19b1d26a730bbccf38fede3f546450000000000000000000000006ae41e0060f4b46499626b74e51a0750a533dbf5000000000000000000000000405e59361f8b344b76e2a62dcf7b96b865cb60a000000000000000000000000011b9eee5bbb1db8b12fb1a797a022e76362dd5870000000000000000000000006b28009df12db051c8a8a7cfec28d73ebac2b1d6000000000000000000000000825517dc99890e405fe5ce74f759a96768c414fe00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

-----Encoded View---------------
54 Constructor Arguments found :
Arg [0] : 00000000000000000000000023c886396cfbadb0f3bac4b728150e8a59dc0e10
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000644
Arg [3] : ad6f10d500000000000000000000000000000000000000000000000000000000
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [5] : 00000000000000000000000000000000000000000000000000000000003c6568
Arg [6] : f12e8002000000000000000000000000000000000000000000000000003c6568
Arg [7] : f12e800200000000000000000000000000000000000000000000000000000000
Arg [8] : 00000001000000000000000000000000000000000000000000000000003c6568
Arg [9] : f12e800200000000000000000000000000000000000000000000d3c21bcecced
Arg [10] : a100000000000000000000000000000000000000000000000000000000000000
Arg [11] : 0000271000000000000000000000000000000000000000000000000000000000
Arg [12] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [13] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [14] : 0006978000000000000000000000000000000000000000000000000000000000
Arg [15] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [16] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [17] : 000001c000000000000000000000000000000000000000000000000000000000
Arg [18] : 0000016000000000000000000000000000000000000000000000000000000000
Arg [19] : 000001a000000000000000000000000000000000000000000000000000000000
Arg [20] : 0000000100000000000000000000000000000000000000000000000000000000
Arg [21] : 000001e000000000000000000000000000000000000000000000000000000000
Arg [22] : 0000000100000000000000000000000000000000000000000000000000000000
Arg [23] : 0000000100000000000000000000000000000000000000000000000000000000
Arg [24] : 0000000100000000000000000000000000000000000000000000000000000000
Arg [25] : 0000000100000000000000000000000000000000000000000000000000000000
Arg [26] : 0000044000000000000000000000000000000000000000000000000000000000
Arg [27] : 0000046000000000000000000000000000000000000000000000000000000000
Arg [28] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [29] : 0000000643696761726f00000000000000000000000000000000000000000000
Arg [30] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [31] : 0000000643696761726f00000000000000000000000000000000000000000000
Arg [32] : 00000000000000000000000000000000b676cfeeed5c7b739452a502f1eff9ab
Arg [33] : 684a56da000000000000000000000000c0e0ec5541e26e93d5a9f5e999ab2a0a
Arg [34] : 7f8260ae00000000000000000000000000000000000000000000000000000000
Arg [35] : 0000010000000000000000000000000000000000000000000000000000000000
Arg [36] : 0006978000000000000000000000000000000000000000000000000000000000
Arg [37] : 0001356000000000000000000000000000000000000000000000000000000000
Arg [38] : 000005dc00000000000000000000000000000000000000000000000000000000
Arg [39] : 000000fa000000000000000000000000f7f52dd34bc21eda08c0b804c7c1dbc4
Arg [40] : 8375820f00000000000000000000000000000000000000000000000000000000
Arg [41] : 0000000a0000000000000000000000006495c457798a77c1ecd9367f01534e52
Arg [42] : 4423005400000000000000000000000030af5d69e7f944e76aafb052c564e96c
Arg [43] : aae909980000000000000000000000004a9944c57c89c75ce0db4070c497d65d
Arg [44] : 9a2d923d000000000000000000000000e2ab7684428b2b4778747ad4cb2435fd
Arg [45] : 37904900000000000000000000000000b91a8867cbf19b1d26a730bbccf38fed
Arg [46] : e3f546450000000000000000000000006ae41e0060f4b46499626b74e51a0750
Arg [47] : a533dbf5000000000000000000000000405e59361f8b344b76e2a62dcf7b96b8
Arg [48] : 65cb60a000000000000000000000000011b9eee5bbb1db8b12fb1a797a022e76
Arg [49] : 362dd5870000000000000000000000006b28009df12db051c8a8a7cfec28d73e
Arg [50] : bac2b1d6000000000000000000000000825517dc99890e405fe5ce74f759a967
Arg [51] : 68c414fe00000000000000000000000000000000000000000000000000000000
Arg [52] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [53] : 0000000000000000000000000000000000000000000000000000000000000000


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.