ETH Price: $2,656.08 (-1.97%)

Contract

0x8E5C7EFC9636A6A0408A46BB7F617094B81e5dba
 

Overview

ETH Balance

0.205 ETH

Eth Value

$544.50 (@ $2,656.08/ETH)

Multichain Info

1 address found via
Transaction Hash
Method
Block
From
To
Publish218370862025-02-13 10:52:233 days ago1739443943IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.000104650.82853478
Publish218245222025-02-11 16:38:355 days ago1739291915IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.000233441.45502239
Publish217881212025-02-06 14:40:3510 days ago1738852835IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.000397883.15002967
Unpublish217345112025-01-30 2:57:3518 days ago1738205855IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000053461.32169461
Publish217303152025-01-29 12:53:5918 days ago1738155239IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.000325522.5771171
Publish217218692025-01-28 8:36:2319 days ago1738053383IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.00040913.23882925
Publish217148852025-01-27 9:12:1120 days ago1737969131IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.000994057.86985082
Publish216894372025-01-23 19:58:4724 days ago1737662327IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.001018748.0706554
Publish216891582025-01-23 19:02:5924 days ago1737658979IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.0017773111.07856904
Publish216739992025-01-21 16:16:2326 days ago1737476183IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.0029997518.70547532
Set Package Owne...216686242025-01-20 22:14:5927 days ago1737411299IN
0x8E5C7EFC...4B81e5dba
0 ETH0.002442121.38504348
Nominate Package...216686152025-01-20 22:13:1127 days ago1737411191IN
0x8E5C7EFC...4B81e5dba
0 ETH0.0012409123
Publish216659322025-01-20 13:14:1127 days ago1737378851IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.0032363125.62159107
Publish216572872025-01-19 8:17:3528 days ago1737274655IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.0026836721.24636538
Publish216551632025-01-19 1:09:4729 days ago1737248987IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.0018550314.68614891
Publish215793672025-01-08 11:10:2339 days ago1736334623IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.000479483.79606019
Publish215721892025-01-07 11:07:1140 days ago1736248031IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.00072295.72320872
Publish215359692025-01-02 9:44:1145 days ago1735811051IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.0013808810.93229591
Nominate Package...214884832024-12-26 18:38:4752 days ago1735238327IN
0x8E5C7EFC...4B81e5dba
0 ETH0.00053269.85851484
Nominate Package...214883832024-12-26 18:18:3552 days ago1735237115IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000468238.66309493
Nominate Package...214883822024-12-26 18:18:2352 days ago1735237103IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000481148.90605204
Nominate Package...214883812024-12-26 18:18:1152 days ago1735237091IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000482978.93990446
Nominate Package...214883802024-12-26 18:17:5952 days ago1735237079IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000479828.88753692
Nominate Package...214883782024-12-26 18:17:3552 days ago1735237055IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000467038.64480736
Nominate Package...214883752024-12-26 18:16:5952 days ago1735237019IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000495549.15014363
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
212073132024-11-17 12:05:3591 days ago1731845135
0x8E5C7EFC...4B81e5dba
0.0025 ETH
212073132024-11-17 12:05:3591 days ago1731845135
0x8E5C7EFC...4B81e5dba
0.0025 ETH
207369012024-09-12 20:24:59157 days ago1726172699
0x8E5C7EFC...4B81e5dba
0.0025 ETH
207369012024-09-12 20:24:59157 days ago1726172699
0x8E5C7EFC...4B81e5dba
0.0025 ETH
206885522024-09-06 2:25:35164 days ago1725589535
0x8E5C7EFC...4B81e5dba
0.0025 ETH
206885522024-09-06 2:25:35164 days ago1725589535
0x8E5C7EFC...4B81e5dba
0.0025 ETH
204658992024-08-06 0:18:35195 days ago1722903515
0x8E5C7EFC...4B81e5dba
0.0025 ETH
204658992024-08-06 0:18:35195 days ago1722903515
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203812072024-07-25 4:34:59207 days ago1721882099
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203812072024-07-25 4:34:59207 days ago1721882099
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203404132024-07-19 11:55:11212 days ago1721390111
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203404132024-07-19 11:55:11212 days ago1721390111
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203166912024-07-16 4:30:11216 days ago1721104211
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203166912024-07-16 4:30:11216 days ago1721104211
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203163402024-07-16 3:19:47216 days ago1721099987
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203163402024-07-16 3:19:47216 days ago1721099987
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203163402024-07-16 3:19:47216 days ago1721099987
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202726422024-07-10 0:54:23222 days ago1720572863
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202726422024-07-10 0:54:23222 days ago1720572863
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202726422024-07-10 0:54:23222 days ago1720572863
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202121752024-07-01 14:10:23230 days ago1719843023
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202121752024-07-01 14:10:23230 days ago1719843023
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202120432024-07-01 13:43:35230 days ago1719841415
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202120432024-07-01 13:43:35230 days ago1719841415
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202120202024-07-01 13:38:59230 days ago1719841139
0x8E5C7EFC...4B81e5dba
0.0025 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Proxy

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
File 1 of 9 : Proxy.sol
//SPDX-License-Identifier: MIT
pragma solidity 0.8.17;

import {UUPSProxyWithOwner} from "@synthetixio/core-contracts/contracts/proxy/UUPSProxyWithOwner.sol";

contract Proxy is UUPSProxyWithOwner {
  // solhint-disable-next-line no-empty-blocks
  constructor(address firstImplementation, address initialOwner) UUPSProxyWithOwner(firstImplementation, initialOwner) {}
}

File 2 of 9 : AccessError.sol
//SPDX-License-Identifier: MIT
pragma solidity >=0.8.11 <0.9.0;

/**
 * @title Library for access related errors.
 */
library AccessError {
    /**
     * @dev Thrown when an address tries to perform an unauthorized action.
     * @param addr The address that attempts the action.
     */
    error Unauthorized(address addr);
}

File 3 of 9 : AddressError.sol
//SPDX-License-Identifier: MIT
pragma solidity >=0.8.11 <0.9.0;

/**
 * @title Library for address related errors.
 */
library AddressError {
    /**
     * @dev Thrown when a zero address was passed as a function parameter (0x0000000000000000000000000000000000000000).
     */
    error ZeroAddress();

    /**
     * @dev Thrown when an address representing a contract is expected, but no code is found at the address.
     * @param contr The address that was expected to be a contract.
     */
    error NotAContract(address contr);
}

File 4 of 9 : OwnableStorage.sol
//SPDX-License-Identifier: MIT
pragma solidity >=0.8.11 <0.9.0;

import "../errors/AccessError.sol";

library OwnableStorage {
    bytes32 private constant _SLOT_OWNABLE_STORAGE =
        keccak256(abi.encode("io.synthetix.core-contracts.Ownable"));

    struct Data {
        bool initialized;
        address owner;
        address nominatedOwner;
    }

    function load() internal pure returns (Data storage store) {
        bytes32 s = _SLOT_OWNABLE_STORAGE;
        assembly {
            store.slot := s
        }
    }

    function onlyOwner() internal view {
        if (msg.sender != getOwner()) {
            revert AccessError.Unauthorized(msg.sender);
        }
    }

    function getOwner() internal view returns (address) {
        return OwnableStorage.load().owner;
    }
}

File 5 of 9 : AbstractProxy.sol
//SPDX-License-Identifier: MIT
pragma solidity >=0.8.11 <0.9.0;

abstract contract AbstractProxy {
    fallback() external payable {
        _forward();
    }

    receive() external payable {
        _forward();
    }

    function _forward() internal {
        address implementation = _getImplementation();

        // solhint-disable-next-line no-inline-assembly
        assembly {
            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())
            }
        }
    }

    function _getImplementation() internal view virtual returns (address);
}

File 6 of 9 : ProxyStorage.sol
//SPDX-License-Identifier: MIT
pragma solidity >=0.8.11 <0.9.0;

contract ProxyStorage {
    bytes32 private constant _SLOT_PROXY_STORAGE =
        keccak256(abi.encode("io.synthetix.core-contracts.Proxy"));

    struct ProxyStore {
        address implementation;
        bool simulatingUpgrade;
    }

    function _proxyStore() internal pure returns (ProxyStore storage store) {
        bytes32 s = _SLOT_PROXY_STORAGE;
        assembly {
            store.slot := s
        }
    }
}

File 7 of 9 : UUPSProxy.sol
//SPDX-License-Identifier: MIT
pragma solidity >=0.8.11 <0.9.0;

import "./AbstractProxy.sol";
import "./ProxyStorage.sol";
import "../errors/AddressError.sol";
import "../utils/AddressUtil.sol";

contract UUPSProxy is AbstractProxy, ProxyStorage {
    constructor(address firstImplementation) {
        if (firstImplementation == address(0)) {
            revert AddressError.ZeroAddress();
        }

        if (!AddressUtil.isContract(firstImplementation)) {
            revert AddressError.NotAContract(firstImplementation);
        }

        _proxyStore().implementation = firstImplementation;
    }

    function _getImplementation() internal view virtual override returns (address) {
        return _proxyStore().implementation;
    }
}

File 8 of 9 : UUPSProxyWithOwner.sol
//SPDX-License-Identifier: MIT
pragma solidity >=0.8.11 <0.9.0;

import {UUPSProxy} from "./UUPSProxy.sol";
import {OwnableStorage} from "../ownership/OwnableStorage.sol";

contract UUPSProxyWithOwner is UUPSProxy {
    // solhint-disable-next-line no-empty-blocks
    constructor(address firstImplementation, address initialOwner) UUPSProxy(firstImplementation) {
        OwnableStorage.load().owner = initialOwner;
    }
}

File 9 of 9 : AddressUtil.sol
//SPDX-License-Identifier: MIT
pragma solidity >=0.8.11 <0.9.0;

library AddressUtil {
    function isContract(address account) internal view returns (bool) {
        uint256 size;

        assembly {
            size := extcodesize(account)
        }

        return size > 0;
    }
}

Settings
{
  "optimizer": {
    "enabled": false,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"firstImplementation","type":"address"},{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"contr","type":"address"}],"name":"NotAContract","type":"error"},{"inputs":[],"name":"ZeroAddress","type":"error"},{"stateMutability":"payable","type":"fallback"},{"stateMutability":"payable","type":"receive"}]

608060405234801561001057600080fd5b5060405161068538038061068583398181016040528101906100329190610275565b818181600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361009b576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6100ae8161019d60201b61004f1760201c565b6100ef57806040517f8a8b41ec0000000000000000000000000000000000000000000000000000000081526004016100e691906102c4565b60405180910390fd5b806100fe6101b060201b60201c565b60000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050806101536101e160201b6100621760201c565b60000160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050610414565b600080823b905060008111915050919050565b6000806040516020016101c290610362565b6040516020818303038152906040528051906020012090508091505090565b6000806040516020016101f3906103f4565b6040516020818303038152906040528051906020012090508091505090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061024282610217565b9050919050565b61025281610237565b811461025d57600080fd5b50565b60008151905061026f81610249565b92915050565b6000806040838503121561028c5761028b610212565b5b600061029a85828601610260565b92505060206102ab85828601610260565b9150509250929050565b6102be81610237565b82525050565b60006020820190506102d960008301846102b5565b92915050565b600082825260208201905092915050565b7f696f2e73796e7468657469782e636f72652d636f6e7472616374732e50726f7860008201527f7900000000000000000000000000000000000000000000000000000000000000602082015250565b600061034c6021836102df565b9150610357826102f0565b604082019050919050565b6000602082019050818103600083015261037b8161033f565b9050919050565b7f696f2e73796e7468657469782e636f72652d636f6e7472616374732e4f776e6160008201527f626c650000000000000000000000000000000000000000000000000000000000602082015250565b60006103de6023836102df565b91506103e982610382565b604082019050919050565b6000602082019050818103600083015261040d816103d1565b9050919050565b610262806104236000396000f3fe6080604052366100135761001161001d565b005b61001b61001d565b005b6000610027610093565b90503660008037600080366000845af43d6000803e806000811461004a573d6000f35b3d6000fd5b600080823b905060008111915050919050565b6000806040516020016100749061017a565b6040516020818303038152906040528051906020012090508091505090565b600061009d6100c6565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000806040516020016100d89061020c565b6040516020818303038152906040528051906020012090508091505090565b600082825260208201905092915050565b7f696f2e73796e7468657469782e636f72652d636f6e7472616374732e4f776e6160008201527f626c650000000000000000000000000000000000000000000000000000000000602082015250565b60006101646023836100f7565b915061016f82610108565b604082019050919050565b6000602082019050818103600083015261019381610157565b9050919050565b7f696f2e73796e7468657469782e636f72652d636f6e7472616374732e50726f7860008201527f7900000000000000000000000000000000000000000000000000000000000000602082015250565b60006101f66021836100f7565b91506102018261019a565b604082019050919050565b60006020820190508181036000830152610225816101e9565b905091905056fea26469706673582212203ce044cd786ae2b76d62e6154652e1ade70f6a3afea3671b053c02be77e9ca4764736f6c6343000811003300000000000000000000000065027bfbd1644a0188984a17501fd2682ae7d70e0000000000000000000000003852c9fdc6a5c0a4a6230c1d2d954cccb9b90465

Deployed Bytecode

0x6080604052366100135761001161001d565b005b61001b61001d565b005b6000610027610093565b90503660008037600080366000845af43d6000803e806000811461004a573d6000f35b3d6000fd5b600080823b905060008111915050919050565b6000806040516020016100749061017a565b6040516020818303038152906040528051906020012090508091505090565b600061009d6100c6565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000806040516020016100d89061020c565b6040516020818303038152906040528051906020012090508091505090565b600082825260208201905092915050565b7f696f2e73796e7468657469782e636f72652d636f6e7472616374732e4f776e6160008201527f626c650000000000000000000000000000000000000000000000000000000000602082015250565b60006101646023836100f7565b915061016f82610108565b604082019050919050565b6000602082019050818103600083015261019381610157565b9050919050565b7f696f2e73796e7468657469782e636f72652d636f6e7472616374732e50726f7860008201527f7900000000000000000000000000000000000000000000000000000000000000602082015250565b60006101f66021836100f7565b91506102018261019a565b604082019050919050565b60006020820190508181036000830152610225816101e9565b905091905056fea26469706673582212203ce044cd786ae2b76d62e6154652e1ade70f6a3afea3671b053c02be77e9ca4764736f6c63430008110033

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

00000000000000000000000065027bfbd1644a0188984a17501fd2682ae7d70e0000000000000000000000003852c9fdc6a5c0a4a6230c1d2d954cccb9b90465

-----Decoded View---------------
Arg [0] : firstImplementation (address): 0x65027Bfbd1644a0188984a17501Fd2682ae7D70E
Arg [1] : initialOwner (address): 0x3852C9fdc6a5C0A4A6230c1d2d954ccCB9b90465

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 00000000000000000000000065027bfbd1644a0188984a17501fd2682ae7d70e
Arg [1] : 0000000000000000000000003852c9fdc6a5c0a4a6230c1d2d954cccb9b90465


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.