Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0 ETH
Eth Value
$0.00View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0x535e274E...6fd693AaA The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
Proxy
Compiler Version
v0.8.30+commit.73712a01
Optimization Enabled:
Yes with 1000000 runs
Other Settings:
prague EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.30;
/// @dev Zero implementation address.
error ZeroImplementationAddress();
/// @dev Zero proxy data.
error ZeroProxyData();
/// @dev Proxy initialization failed.
error InitializationFailed();
/*
* This is a proxy contract.
* Proxy implementation is created based on the Slots (ERC-1967) and Universal Upgradeable Proxy Standard (UUPS) EIP-1822.
* The implementation address must be located in a unique storage slot of the proxy contract.
* The upgrade logic must be located in the implementation contract.
* Special lock implementation address slot is produced by hashing the "eip1967.proxy.implementation"
* string in order to make the slot unique.
* The fallback() implementation for all the delegatecall-s is inspired by the Gnosis Safe set of contracts.
*/
/// @title Proxy - Smart contract for proxy implementation
contract Proxy {
// Code position in storage is bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1) = "0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc"
bytes32 public constant PROXY_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;
/// @dev Proxy constructor.
/// @param implementation Implementation address.
/// @param proxyData Proxy initialization data.
constructor(address implementation, bytes memory proxyData) {
// Check for the zero address, since the delegatecall works even with the zero one
if (implementation == address(0)) {
revert ZeroImplementationAddress();
}
// Check for the zero data
if (proxyData.length == 0) {
revert ZeroProxyData();
}
// Store the lock implementation address
assembly {
sstore(PROXY_SLOT, implementation)
}
// Initialize proxy tokenomics storage
(bool success,) = implementation.delegatecall(proxyData);
if (!success) {
revert InitializationFailed();
}
}
/// @dev Delegatecall to all the incoming data.
fallback() external payable {
assembly {
let implementation := sload(PROXY_SLOT)
calldatacopy(0, 0, calldatasize())
let success := delegatecall(gas(), implementation, 0, calldatasize(), 0, 0)
returndatacopy(0, 0, returndatasize())
if eq(success, 0) { revert(0, returndatasize()) }
return(0, returndatasize())
}
}
/// @dev Gets the implementation address.
/// @return implementation Implementation address.
function getImplementation() external view returns (address implementation) {
// solhint-disable-next-line avoid-low-level-calls
assembly {
implementation := sload(PROXY_SLOT)
}
}
}{
"remappings": [
"@gnosis.pm/=node_modules/@gnosis.pm/",
"@layerzerolabs/oapp-evm/=lib/devtools/packages/oapp-evm/",
"@layerzerolabs/lz-evm-protocol-v2/=lib/layerzero-v2/packages/layerzero-v2/evm/protocol/",
"@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/",
"@registries/=lib/autonolas-registries/",
"@solmate/=lib/solmate/",
"autonolas-registries/=lib/autonolas-registries/",
"devtools/=lib/devtools/packages/toolbox-foundry/src/",
"ds-test/=lib/autonolas-registries/lib/forge-std/lib/ds-test/src/",
"erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/",
"forge-std/=lib/autonolas-registries/lib/forge-std/src/",
"halmos-cheatcodes/=lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/",
"layerzero-v2/=lib/layerzero-v2/",
"openzeppelin-contracts/=lib/openzeppelin-contracts/",
"solmate/=lib/solmate/src/"
],
"optimizer": {
"enabled": true,
"runs": 1000000
},
"metadata": {
"useLiteralContent": false,
"bytecodeHash": "ipfs",
"appendCBOR": true
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"evmVersion": "prague",
"viaIR": true
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"implementation","type":"address"},{"internalType":"bytes","name":"proxyData","type":"bytes"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"InitializationFailed","type":"error"},{"inputs":[],"name":"ZeroImplementationAddress","type":"error"},{"inputs":[],"name":"ZeroProxyData","type":"error"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"PROXY_SLOT","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getImplementation","outputs":[{"internalType":"address","name":"implementation","type":"address"}],"stateMutability":"view","type":"function"}]Contract Creation Code
0x60806040523461012e576102ed8038038061001981610132565b92833981019060408183031261012e5780516001600160a01b0381169182820361012e576020810151906001600160401b03821161012e57019183601f8401121561012e57825161007161006c8261016b565b610132565b9381855260208501956020838301011161012e57815f926020809301885e850101521561011f57815115610110575f928392827f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5551915af43d1561010b573d6100dd61006c8261016b565b9081525f60203d92013e5b156100fc5760405161016690816101878239f35b630337323560e31b5f5260045ffd5b6100e8565b6376e27ff360e11b5f5260045ffd5b63d02c623d60e01b5f5260045ffd5b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761015757604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160401b03811161015757601f01601f19166020019056fe6080604052600436106100f2575f3560e01c8063aa3d10df1461009a5763aaf10f42036100f25734610096575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100965760207f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff60405191168152f35b5f80fd5b34610096575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610096577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60805260206080f35b5f807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54368280378136915af43d5f803e1561012c573d5ff35b3d5ffdfea26469706673582212207f9cd4396cc1ca8859f9a2162bed7466391148754ab67bc1292ca6b5340bc80664736f6c634300081e003300000000000000000000000014c85a5a21a26542b672ed53e80e3eef4ce9394d000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000048129fc1c00000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x6080604052600436106100f2575f3560e01c8063aa3d10df1461009a5763aaf10f42036100f25734610096575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100965760207f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff60405191168152f35b5f80fd5b34610096575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610096577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60805260206080f35b5f807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54368280378136915af43d5f803e1561012c573d5ff35b3d5ffdfea26469706673582212207f9cd4396cc1ca8859f9a2162bed7466391148754ab67bc1292ca6b5340bc80664736f6c634300081e0033
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ 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.