Sepolia Testnet

Contract

0x5f8A1C6C3F3Cf684B02D32a8Ec8eF5b5be2722aE

Overview

ETH Balance

0 ETH

Token Holdings

Multichain Info

N/A
Transaction Hash
Method
Block
From
To
Rebalance Pool63570962024-07-22 16:33:24144 days ago1721666004IN
0x5f8A1C6C...5be2722aE
0 ETH0.001093755.23500109
Delegate Collate...60046502024-05-30 5:04:48197 days ago1717045488IN
0x5f8A1C6C...5be2722aE
0 ETH0.001306991.9036989
Deposit60046422024-05-30 5:03:00197 days ago1717045380IN
0x5f8A1C6C...5be2722aE
0 ETH0.000189861.83052587
Create Account60045602024-05-30 4:44:36197 days ago1717044276IN
0x5f8A1C6C...5be2722aE
0 ETH0.000425691.90583309
Configure Collat...59869362024-05-27 8:30:24200 days ago1716798624IN
0x5f8A1C6C...5be2722aE
0 ETH0.0023241141.43551571
Set Pool Configu...59869352024-05-27 8:30:12200 days ago1716798612IN
0x5f8A1C6C...5be2722aE
0 ETH0.0092856438.0051472
Register Rewards...59869342024-05-27 8:30:00200 days ago1716798600IN
0x5f8A1C6C...5be2722aE
0 ETH0.0043791738.2276669
Register Rewards...59869332024-05-27 8:29:48200 days ago1716798588IN
0x5f8A1C6C...5be2722aE
0 ETH0.004230736.93548582
Configure Maximu...59869312024-05-27 8:29:00200 days ago1716798540IN
0x5f8A1C6C...5be2722aE
0 ETH0.0019962434.54665941
Configure Maximu...59869302024-05-27 8:28:48200 days ago1716798528IN
0x5f8A1C6C...5be2722aE
0 ETH0.002153837.28109347
Configure Collat...59869262024-05-27 8:27:48200 days ago1716798468IN
0x5f8A1C6C...5be2722aE
0 ETH0.0019119134.01375196
Configure Collat...59869252024-05-27 8:27:24200 days ago1716798444IN
0x5f8A1C6C...5be2722aE
0 ETH0.0017700831.5040881
Add To Feature F...59869132024-05-27 8:24:48200 days ago1716798288IN
0x5f8A1C6C...5be2722aE
0 ETH0.002727932.27025486
Set Min Liquidit...59868982024-05-27 8:21:24200 days ago1716798084IN
0x5f8A1C6C...5be2722aE
0 ETH0.0007316620.42378448
Set Config59868972024-05-27 8:21:12200 days ago1716798072IN
0x5f8A1C6C...5be2722aE
0 ETH0.000752721.48669157
Add To Feature F...59868942024-05-27 8:20:36200 days ago1716798036IN
0x5f8A1C6C...5be2722aE
0 ETH0.0007992422.58902623
Configure Collat...59868902024-05-27 8:19:48200 days ago1716797988IN
0x5f8A1C6C...5be2722aE
0 ETH0.0012838922.73434831
Configure Oracle...59868892024-05-27 8:19:36200 days ago1716797976IN
0x5f8A1C6C...5be2722aE
0 ETH0.0007482621.43417537
Init Or Upgrade ...59868882024-05-27 8:19:24200 days ago1716797964IN
0x5f8A1C6C...5be2722aE
0 ETH0.001963720.88518243
Init Or Upgrade ...59868872024-05-27 8:19:12200 days ago1716797952IN
0x5f8A1C6C...5be2722aE
0 ETH0.0018260622.61884558
Set Feature Flag...59868862024-05-27 8:19:00200 days ago1716797940IN
0x5f8A1C6C...5be2722aE
0 ETH0.0008080921.7411584
Set Feature Flag...59868852024-05-27 8:18:36200 days ago1716797916IN
0x5f8A1C6C...5be2722aE
0 ETH0.0007920221.26078548
Set Feature Flag...59868842024-05-27 8:18:24200 days ago1716797904IN
0x5f8A1C6C...5be2722aE
0 ETH0.0008211822.15771368
Set Feature Flag...59868832024-05-27 8:18:12200 days ago1716797892IN
0x5f8A1C6C...5be2722aE
0 ETH0.0008400722.67460885
Set Feature Flag...59868822024-05-27 8:18:00200 days ago1716797880IN
0x5f8A1C6C...5be2722aE
0 ETH0.0008842123.81205778
View all transactions

Latest 3 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
59595492024-05-23 5:46:48204 days ago1716443208
0x5f8A1C6C...5be2722aE
 Contract Creation0 ETH
59595482024-05-23 5:46:36204 days ago1716443196
0x5f8A1C6C...5be2722aE
 Contract Creation0 ETH
59595292024-05-23 5:42:36204 days ago1716442956  Contract Creation0 ETH
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xffffffaE...bdD875847
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.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 9 : Proxy.sol
//SPDX-License-Identifier: MIT
pragma solidity >=0.8.11 <0.9.0;

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

/**
 * Synthetix V3 Core Proxy Contract
 *
 * Visit https://usecannon.com/packages/synthetix to interact with this protocol
 */
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 {
        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": true,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "libraries": {}
}

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

Deployed Bytecode

0x60806040523661001357610011610017565b005b6100115b60006100216100bb565b90503660008037600080366000845af43d6000803e808015610042573d6000f35b3d6000fd5b3b151590565b60008060405160200161009d9060208082526023908201527f696f2e73796e7468657469782e636f72652d636f6e7472616374732e4f776e61604082015262626c6560e81b606082015260800190565b60408051601f19818403018152919052805160209091012092915050565b60006100c56100d4565b546001600160a01b0316919050565b60008060405160200161009d9060208082526021908201527f696f2e73796e7468657469782e636f72652d636f6e7472616374732e50726f786040820152607960f81b60608201526080019056fea264697066735822122071ae0f04c18fdfa7ce0cb096d4c21c5cc78bf9bd1ac9acd520eb72bd22c9404c64736f6c63430008110033

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
[ 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.