ETH Price: $3,121.79 (-1.43%)
 

Overview

ETH Balance

0.1975 ETH

Eth Value

$616.55 (@ $3,121.79/ETH)
Transaction Hash
Method
Block
From
To
Publish217303152025-01-29 12:53:594 hrs ago1738155239IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.000325522.5771171
Publish217218692025-01-28 8:36:2332 hrs ago1738053383IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.00040913.23882925
Publish217148852025-01-27 9:12:112 days ago1737969131IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.000994057.86985082
Publish216894372025-01-23 19:58:475 days ago1737662327IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.001018748.0706554
Publish216891582025-01-23 19:02:595 days ago1737658979IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.0017773111.07856904
Publish216739992025-01-21 16:16:238 days ago1737476183IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.0029997518.70547532
Set Package Owne...216686242025-01-20 22:14:598 days ago1737411299IN
0x8E5C7EFC...4B81e5dba
0 ETH0.002442121.38504348
Nominate Package...216686152025-01-20 22:13:118 days ago1737411191IN
0x8E5C7EFC...4B81e5dba
0 ETH0.0012409123
Publish216659322025-01-20 13:14:119 days ago1737378851IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.0032363125.62159107
Publish216572872025-01-19 8:17:3510 days ago1737274655IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.0026836721.24636538
Publish216551632025-01-19 1:09:4710 days ago1737248987IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.0018550314.68614891
Publish215793672025-01-08 11:10:2321 days ago1736334623IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.000479483.79606019
Publish215721892025-01-07 11:07:1122 days ago1736248031IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.00072295.72320872
Publish215359692025-01-02 9:44:1127 days ago1735811051IN
0x8E5C7EFC...4B81e5dba
0.0025 ETH0.0013808810.93229591
Nominate Package...214884832024-12-26 18:38:4733 days ago1735238327IN
0x8E5C7EFC...4B81e5dba
0 ETH0.00053269.85851484
Nominate Package...214883832024-12-26 18:18:3533 days ago1735237115IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000468238.66309493
Nominate Package...214883822024-12-26 18:18:2333 days ago1735237103IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000481148.90605204
Nominate Package...214883812024-12-26 18:18:1133 days ago1735237091IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000482978.93990446
Nominate Package...214883802024-12-26 18:17:5933 days ago1735237079IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000479828.88753692
Nominate Package...214883782024-12-26 18:17:3533 days ago1735237055IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000467038.64480736
Nominate Package...214883752024-12-26 18:16:5933 days ago1735237019IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000495549.15014363
Nominate Package...214883742024-12-26 18:16:4733 days ago1735237007IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000502969.30983346
Nominate Package...214883732024-12-26 18:16:3533 days ago1735236995IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000496179.18414474
Nominate Package...214883722024-12-26 18:16:2333 days ago1735236983IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000498669.23023277
Nominate Package...214883712024-12-26 18:16:1133 days ago1735236971IN
0x8E5C7EFC...4B81e5dba
0 ETH0.000494549.11958646
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
212073132024-11-17 12:05:3573 days ago1731845135
0x8E5C7EFC...4B81e5dba
0.0025 ETH
212073132024-11-17 12:05:3573 days ago1731845135
0x8E5C7EFC...4B81e5dba
0.0025 ETH
207369012024-09-12 20:24:59138 days ago1726172699
0x8E5C7EFC...4B81e5dba
0.0025 ETH
207369012024-09-12 20:24:59138 days ago1726172699
0x8E5C7EFC...4B81e5dba
0.0025 ETH
206885522024-09-06 2:25:35145 days ago1725589535
0x8E5C7EFC...4B81e5dba
0.0025 ETH
206885522024-09-06 2:25:35145 days ago1725589535
0x8E5C7EFC...4B81e5dba
0.0025 ETH
204658992024-08-06 0:18:35176 days ago1722903515
0x8E5C7EFC...4B81e5dba
0.0025 ETH
204658992024-08-06 0:18:35176 days ago1722903515
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203812072024-07-25 4:34:59188 days ago1721882099
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203812072024-07-25 4:34:59188 days ago1721882099
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203404132024-07-19 11:55:11194 days ago1721390111
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203404132024-07-19 11:55:11194 days ago1721390111
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203166912024-07-16 4:30:11197 days ago1721104211
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203166912024-07-16 4:30:11197 days ago1721104211
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203163402024-07-16 3:19:47197 days ago1721099987
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203163402024-07-16 3:19:47197 days ago1721099987
0x8E5C7EFC...4B81e5dba
0.0025 ETH
203163402024-07-16 3:19:47197 days ago1721099987
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202726422024-07-10 0:54:23203 days ago1720572863
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202726422024-07-10 0:54:23203 days ago1720572863
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202726422024-07-10 0:54:23203 days ago1720572863
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202121752024-07-01 14:10:23212 days ago1719843023
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202121752024-07-01 14:10:23212 days ago1719843023
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202120432024-07-01 13:43:35212 days ago1719841415
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202120432024-07-01 13:43:35212 days ago1719841415
0x8E5C7EFC...4B81e5dba
0.0025 ETH
202120202024-07-01 13:38:59212 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.