Source Code
Overview
ETH Balance
0 ETH
Token Holdings
More Info
ContractCreator
Multichain Info
N/A
Latest 25 from a total of 739 transactions
| Transaction Hash |
Method
|
Block
|
From
|
To
|
Amount
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Execute | 23076175 | 217 days ago | IN | 0 ETH | 0.00000002 | ||||
| Execute | 18645984 | 320 days ago | IN | 0 ETH | 0.00000031 | ||||
| Execute | 18336403 | 327 days ago | IN | 0.00129044 ETH | 0.00000047 | ||||
| Execute | 9488077 | 532 days ago | IN | 0.0008 ETH | 0.00000038 | ||||
| Execute | 8040419 | 565 days ago | IN | 0 ETH | 0.00000122 | ||||
| Execute | 7384518 | 581 days ago | IN | 0.1 ETH | 0.00000047 | ||||
| Execute | 6915704 | 591 days ago | IN | 0.17304805 ETH | 0.00000002 | ||||
| Execute | 6912920 | 591 days ago | IN | 0.11625698 ETH | 0.00000055 | ||||
| Execute | 6911793 | 591 days ago | IN | 0.05501054 ETH | 0.00000023 | ||||
| Execute | 6545556 | 600 days ago | IN | 0.0001 ETH | 0.00000003 | ||||
| Execute | 6466315 | 602 days ago | IN | 0.02 ETH | 0.00000032 | ||||
| Execute | 6401586 | 603 days ago | IN | 0.1257249 ETH | 0.00000282 | ||||
| Execute | 6401474 | 603 days ago | IN | 0.25145184 ETH | 0.00000288 | ||||
| Execute | 6223576 | 607 days ago | IN | 0 ETH | 0.00129787 | ||||
| Execute | 6223466 | 607 days ago | IN | 0 ETH | 0.001462 | ||||
| Execute | 6219792 | 608 days ago | IN | 0 ETH | 0.00196643 | ||||
| Execute | 6219341 | 608 days ago | IN | 0 ETH | 0.0013981 | ||||
| Execute | 6219234 | 608 days ago | IN | 0.24525218 ETH | 0.00225773 | ||||
| Execute | 6183458 | 608 days ago | IN | 0.45537818 ETH | 0.00106649 | ||||
| Execute | 4523155 | 647 days ago | IN | 0.00924223 ETH | 0.00043643 | ||||
| Execute | 3980240 | 659 days ago | IN | 0 ETH | 0.00000033 | ||||
| Execute | 3889224 | 661 days ago | IN | 0.54901763 ETH | 0.00000028 | ||||
| Execute | 3838059 | 663 days ago | IN | 0.00052474 ETH | 0.00000024 | ||||
| Execute | 3767701 | 664 days ago | IN | 0 ETH | 0.00000024 | ||||
| Execute | 3752866 | 665 days ago | IN | 0 ETH | 0.00000001 |
Latest 25 internal transactions (View All)
| Parent Transaction Hash | Block | From | To | Amount | ||
|---|---|---|---|---|---|---|
| 23076175 | 217 days ago | 20.71346524 ETH | ||||
| 23076175 | 217 days ago | 0.02191572 ETH | ||||
| 23076175 | 217 days ago | 0.02191572 ETH | ||||
| 23076175 | 217 days ago | 0.02191572 ETH | ||||
| 23076175 | 217 days ago | 20.71346524 ETH | ||||
| 18645984 | 320 days ago | 20.71038476 ETH | ||||
| 18645984 | 320 days ago | 0.05008781 ETH | ||||
| 18645984 | 320 days ago | 0.05008781 ETH | ||||
| 18645984 | 320 days ago | 0.05008781 ETH | ||||
| 18645984 | 320 days ago | 20.71038476 ETH | ||||
| 18336403 | 327 days ago | 20.70976799 ETH | ||||
| 18336403 | 327 days ago | 20.70847755 ETH | ||||
| 9488077 | 532 days ago | 20.69141278 ETH | ||||
| 9488077 | 532 days ago | 0.0008 ETH | ||||
| 9488077 | 532 days ago | 20.69141278 ETH | ||||
| 8040419 | 565 days ago | 20.68795179 ETH | ||||
| 8040419 | 565 days ago | 20.68795179 ETH | ||||
| 7384518 | 581 days ago | 20.68637863 ETH | ||||
| 7384518 | 581 days ago | 20.58637863 ETH | ||||
| 6915704 | 591 days ago | 20.58527285 ETH | ||||
| 6915704 | 591 days ago | 20.41222479 ETH | ||||
| 6912920 | 591 days ago | 20.41221632 ETH | ||||
| 6912920 | 591 days ago | 20.29595934 ETH | ||||
| 6911793 | 591 days ago | 20.29595511 ETH | ||||
| 6911793 | 591 days ago | 20.24094456 ETH |
Loading...
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0x9993fB37...B6a906a1F The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
Diamond
Compiler Version
v0.8.19+commit.7dd6d404
Optimization Enabled:
Yes with 50 runs
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// This is the code Vault address will actually hold.
// a Diamond proxy with two ingrained functions
// implementation addresses will be stored on the last 2^32 slots. in other words, bitwise_not(msg.sig).
// the value will be either:
// 1. implementation address --> normal function
// 2. bitwise_not(implementation address) --> view function, implemented with the ingrained function 2
// on creation, it delegatecalls back to the caller.
// the caller is expected to initialize the storage.
// ingrained function 1: 'read' (0x72656164)
// a cheap way to read storage slots
// other contracts are expected to directly read predefined storage slots using this mechanism.
// expected calldata:
// 0x72656164 | bytes32 | bytes32 | bytes32 ... (no length header)
// the query is interpreted as a series of storage slots.
// returns:
// bytes32 | bytes32 | bytes32 | ....
// returns storage values without header
// ingraned function 2: 'view' (0x76696577)
// delegatecall any contract; revert if the call didn't, and vice versa.
// used to calculate the result of a state-modifying function, without actually modifying the state.
// expected calldata: 0x76696577 | destination address padded to 32 bytes | calldata to be forwarded
contract Diamond {
constructor() {
assembly {
let success := delegatecall(gas(), caller(), 0, 0, 0, 0)
if iszero(success) { revert(0, 0) }
}
}
fallback() external payable {
assembly {
if calldatasize() {
let selector := shr(0xe0, calldataload(0x00))
if eq(selector, 0x72656164) {
// 'read'
for { let i := 4 } lt(i, calldatasize()) { i := add(i, 0x20) } { mstore(i, sload(calldataload(i))) }
return(4, sub(calldatasize(), 4))
}
if eq(selector, 0x76696577) {
// view
calldatacopy(0, 36, sub(calldatasize(), 36))
let success := delegatecall(gas(), calldataload(4), 0, sub(calldatasize(), 36), 0, 0)
returndatacopy(0, 0, returndatasize())
if success { revert(0, returndatasize()) }
return(0, returndatasize())
}
let implementation := sload(not(selector))
if implementation {
if lt(implementation, 0x10000000000000000000000000000000000000000) {
// registered as a function
calldatacopy(0, 0, calldatasize())
let result := delegatecall(gas(), implementation, 0, calldatasize(), 0, 0)
returndatacopy(0, 0, returndatasize())
switch result
case 0 { revert(0, returndatasize()) }
default { return(0, returndatasize()) }
}
// registered as a view function
mstore(0, 0x7669657700000000000000000000000000000000000000000000000000000000)
mstore(4, not(implementation))
calldatacopy(36, 0, calldatasize())
let success := delegatecall(gas(), address(), 0, add(calldatasize(), 36), 0, 0)
returndatacopy(0, 0, returndatasize())
if success { revert(0, returndatasize()) }
return(0, returndatasize())
}
revert(0, 0)
}
}
}
}{
"remappings": [
"@prb/test/=lib/prb-math/lib/prb-test/src/",
"ds-test/=lib/solmate/lib/ds-test/src/",
"forge-std/=lib/forge-std/src/",
"openzeppelin/=lib/openzeppelin-contracts/contracts/",
"openzeppelin-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/",
"@prb/math/=lib/prb-math/",
"prb-test/=lib/prb-math/lib/prb-test/src/",
"solmate/=lib/solmate/src/",
"lzapp/=lib/solidity-examples/contracts/",
"LayerZero/=lib/LayerZero/contracts/",
"erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/",
"openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/",
"openzeppelin-contracts/=lib/openzeppelin-contracts/",
"prb-math/=lib/prb-math/src/",
"solidity-examples/=lib/solidity-examples/contracts/"
],
"optimizer": {
"enabled": true,
"runs": 50
},
"metadata": {
"useLiteralContent": false,
"bytecodeHash": "ipfs",
"appendCBOR": true
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"evmVersion": "paris",
"viaIR": true,
"libraries": {}
}Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"}]Contract Creation Code
0x60806040523461002857600080808080335af4156100255760405160f0908161002e8239f35b80fd5b600080fdfe608060405236600a57005b6000803560e01c63726561648114609c5763766965778114607e57195480602f575080fd5b81600160a01b821060675750637669657760e01b825219600452368160243780806024360181305af43d82803e6063573d90f35b3d90fd5b8091368280378136915af43d82803e156063573d90f35b50808036602319018060248337816004355af43d82803e6063573d90f35b60045b36811060ae5736600319016004f35b8035548152602001609f56fea2646970667358221220d8c23d04c5972f79fb49e01f5ef185ec3b1d237ac7e5882429911ee568ec4b3464736f6c63430008130033
Deployed Bytecode
0x608060405236600a57005b6000803560e01c63726561648114609c5763766965778114607e57195480602f575080fd5b81600160a01b821060675750637669657760e01b825219600452368160243780806024360181305af43d82803e6063573d90f35b3d90fd5b8091368280378136915af43d82803e156063573d90f35b50808036602319018060248337816004355af43d82803e6063573d90f35b60045b36811060ae5736600319016004f35b8035548152602001609f56fea2646970667358221220d8c23d04c5972f79fb49e01f5ef185ec3b1d237ac7e5882429911ee568ec4b3464736f6c63430008130033
Loading...
Loading
Loading...
Loading
Loading...
Loading
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.