ETH Price: $2,948.71 (+0.85%)
Gas: 0.04 Gwei
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Set Pool Specifi...182690002023-10-03 9:04:47805 days ago1696323887IN
Solidly: Factory
0 ETH0.000492978.3376719
Set Pool Specifi...182689882023-10-03 9:02:23805 days ago1696323743IN
Solidly: Factory
0 ETH0.00052718.91494921
Set Pool Specifi...181364912023-09-14 19:09:35824 days ago1694718575IN
Solidly: Factory
0 ETH0.0027197946
Set Pool Specifi...169706062023-04-03 19:36:35988 days ago1680550595IN
Solidly: Factory
0 ETH0.0025155142.54498334
Set Pool Specifi...168272832023-03-14 16:08:591008 days ago1678810139IN
Solidly: Factory
0 ETH0.0030607651.77741239
Set Pool Specifi...168270122023-03-14 15:14:111008 days ago1678806851IN
Solidly: Factory
0 ETH0.0029633850.11975093
Set Pool Specifi...168158282023-03-13 1:33:591010 days ago1678671239IN
Solidly: Factory
0 ETH0.0015148125.62017576
Set Pool Specifi...168156762023-03-13 1:03:351010 days ago1678669415IN
Solidly: Factory
0 ETH0.0020134934.05433698
Set Pool Specifi...168154962023-03-13 0:26:591010 days ago1678667219IN
Solidly: Factory
0 ETH0.0023276339.36730697
Set Pool Specifi...168154862023-03-13 0:24:591010 days ago1678667099IN
Solidly: Factory
0 ETH0.0023725740.12741124
Set Pool Specifi...168153942023-03-13 0:05:471010 days ago1678665947IN
Solidly: Factory
0 ETH0.0025097642.4476683
Set Pool Specifi...168153502023-03-12 23:56:471010 days ago1678665407IN
Solidly: Factory
0 ETH0.0022463737.99297218
Set Pool Specifi...168153362023-03-12 23:53:591010 days ago1678665239IN
Solidly: Factory
0 ETH0.0023021438.93627551
Set Pool Specifi...168153252023-03-12 23:51:471010 days ago1678665107IN
Solidly: Factory
0 ETH0.0026680945.12564965
Set Pool Specifi...168149412023-03-12 22:33:351010 days ago1678660415IN
Solidly: Factory
0 ETH0.004640678.48670927
Set Pool Specifi...168148952023-03-12 22:24:111010 days ago1678659851IN
Solidly: Factory
0 ETH0.0028397248.02832514
Set Pool Specifi...168129772023-03-12 15:56:471010 days ago1678636607IN
Solidly: Factory
0 ETH0.0012742621.55162292
Set Pool Specifi...168128242023-03-12 15:25:471010 days ago1678634747IN
Solidly: Factory
0 ETH0.001297121.93802059
Set Pool Specifi...168107492023-03-12 8:27:111010 days ago1678609631IN
Solidly: Factory
0 ETH0.0025864143.74404732
Set Pool Specifi...168104772023-03-12 7:31:591011 days ago1678606319IN
Solidly: Factory
0 ETH0.0012144320.53973721
Set Pool Specifi...168104642023-03-12 7:29:231011 days ago1678606163IN
Solidly: Factory
0 ETH0.0011493919.43975553
Set Pool Specifi...168102482023-03-12 6:45:351011 days ago1678603535IN
Solidly: Factory
0 ETH0.0012495821.13428816
Set Pool Specifi...168102392023-03-12 6:43:471011 days ago1678603427IN
Solidly: Factory
0 ETH0.0012285920.7792203
Set Pool Specifi...168092512023-03-12 3:22:471011 days ago1678591367IN
Solidly: Factory
0 ETH0.0014453124.44474377
Set Pool Specifi...168092022023-03-12 3:12:351011 days ago1678590755IN
Solidly: Factory
0 ETH0.0011839820.02470865
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
0x60806040169746482023-04-04 9:28:59987 days ago1680600539
Solidly: Factory
 Contract Creation0 ETH
0x60806040168347382023-03-15 17:19:591007 days ago1678900799
Solidly: Factory
 Contract Creation0 ETH
0x60806040168011332023-03-10 23:57:471012 days ago1678492667
Solidly: Factory
 Contract Creation0 ETH
0x60806040167743062023-03-07 5:19:591016 days ago1678166399
Solidly: Factory
 Contract Creation0 ETH
0x60806040167714162023-03-06 19:34:351016 days ago1678131275
Solidly: Factory
 Contract Creation0 ETH
0x60806040167702352023-03-06 15:34:591016 days ago1678116899
Solidly: Factory
 Contract Creation0 ETH
0x60806040167443962023-03-03 0:21:471020 days ago1677802907
Solidly: Factory
 Contract Creation0 ETH
0x60806040167235572023-02-28 2:00:471023 days ago1677549647
Solidly: Factory
 Contract Creation0 ETH
0x60806040166997802023-02-24 17:49:471026 days ago1677260987
Solidly: Factory
 Contract Creation0 ETH
0x60806040166997172023-02-24 17:37:111026 days ago1677260231
Solidly: Factory
 Contract Creation0 ETH
0x60806040166859712023-02-22 19:11:591028 days ago1677093119
Solidly: Factory
 Contract Creation0 ETH
0x60806040166835272023-02-22 10:55:591028 days ago1677063359
Solidly: Factory
 Contract Creation0 ETH
0x60806040166405682023-02-16 10:02:471034 days ago1676541767
Solidly: Factory
 Contract Creation0 ETH
0x60806040166364352023-02-15 20:10:591035 days ago1676491859
Solidly: Factory
 Contract Creation0 ETH
0x60806040166329652023-02-15 8:30:471035 days ago1676449847
Solidly: Factory
 Contract Creation0 ETH
0x60806040165898262023-02-09 7:51:591041 days ago1675929119
Solidly: Factory
 Contract Creation0 ETH
0x60806040165512872023-02-03 22:36:591047 days ago1675463819
Solidly: Factory
 Contract Creation0 ETH
0x60806040165504392023-02-03 19:46:591047 days ago1675453619
Solidly: Factory
 Contract Creation0 ETH
0x60806040165503152023-02-03 19:21:591047 days ago1675452119
Solidly: Factory
 Contract Creation0 ETH
0x60806040165502792023-02-03 19:14:471047 days ago1675451687
Solidly: Factory
 Contract Creation0 ETH
0x60806040164848542023-01-25 15:53:231056 days ago1674662003
Solidly: Factory
 Contract Creation0 ETH
0x60806040164843642023-01-25 14:14:591056 days ago1674656099
Solidly: Factory
 Contract Creation0 ETH
0x60806040164667952023-01-23 3:24:471059 days ago1674444287
Solidly: Factory
 Contract Creation0 ETH
0x60806040164482992023-01-20 13:24:591061 days ago1674221099
Solidly: Factory
 Contract Creation0 ETH
0x60806040164398552023-01-19 9:07:351062 days ago1674119255
Solidly: Factory
 Contract Creation0 ETH
View All Internal Transactions
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xa14e7F4B...37467f4dA
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
SolidlyProxy

Compiler Version
v0.8.11+commit.d7f03943

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity Standard Json-Input format)

// SPDX-License-Identifier: BUSL
pragma solidity 0.8.11;

/**
 * @title Solidly+ governance killable proxy
 * @author Solidly+
 * @notice EIP-1967 upgradeable proxy with the ability to kill governance and render the contract immutable
 */
contract SolidlyProxy {
    bytes32 constant IMPLEMENTATION_SLOT =
        0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc; // keccak256('eip1967.proxy.implementation'), actually used for interface so etherscan picks up the interface
    bytes32 constant LOGIC_SLOT =
        0x5942be825425c77e56e4bce97986794ab0f100954e40fc1390ae0e003710a3ab; // keccak256('LOGIC') - 1, actual logic implementation
    bytes32 constant GOVERNANCE_SLOT =
        0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103; // keccak256('eip1967.proxy.admin')
    bytes32 constant INITIALIZED_SLOT =
        0x834ce84547018237034401a09067277cdcbe7bbf7d7d30f6b382b0a102b7b4a3; // keccak256('eip1967.proxy.initialized')

    /**
     * @notice Reverts if msg.sender is not governance
     */
    modifier onlyGovernance() {
        require(msg.sender == governanceAddress(), "Only governance");
        _;
    }

    /**
     * @notice Reverts if contract is already initialized
     * @dev Used by implementations to ensure initialize() is only called once
     */
    modifier notInitialized() {
        bool initialized;
        assembly {
            initialized := sload(INITIALIZED_SLOT)
            if eq(initialized, 1) {
                revert(0, 0)
            }
            sstore(INITIALIZED_SLOT, 1)
        }
        _;
    }

    /**
     * @notice Sets up deployer as a proxy governance
     */
    constructor() {
        address _governanceAddress = msg.sender;
        assembly {
            sstore(GOVERNANCE_SLOT, _governanceAddress)
        }
    }

    /**
     * @notice Detect whether or not governance is killed
     * @return Return true if governance is killed, false if not
     * @dev If governance is killed this contract becomes immutable
     */
    function governanceIsKilled() public view returns (bool) {
        return governanceAddress() == address(0);
    }

    /**
     * @notice Kill governance, making this contract immutable
     * @dev Only governance can kil governance
     */
    function killGovernance() external onlyGovernance {
        updateGovernanceAddress(address(0));
    }

    /**
     * @notice Update implementation address
     * @param _interfaceAddress Address of the new interface
     * @dev Only governance can update implementation
     */
    function updateInterfaceAddress(address _interfaceAddress)
        external
        onlyGovernance
    {
        assembly {
            sstore(IMPLEMENTATION_SLOT, _interfaceAddress)
        }
    }

    /**
     * @notice Actually updates interface, kept for etherscan pattern recognition
     * @param _implementationAddress Address of the new implementation
     * @dev Only governance can update implementation
     */
    function updateImplementationAddress(address _implementationAddress)
        external
        onlyGovernance
    {
        assembly {
            sstore(IMPLEMENTATION_SLOT, _implementationAddress)
        }
    }

    /**
     * @notice Update implementation address
     * @param _logicAddress Address of the new implementation
     * @dev Only governance can update implementation
     */
    function updateLogicAddress(address _logicAddress) external onlyGovernance {
        assembly {
            sstore(LOGIC_SLOT, _logicAddress)
        }
    }

    /**
     * @notice Update governance address
     * @param _governanceAddress New governance address
     * @dev Only governance can update governance
     */
    function updateGovernanceAddress(address _governanceAddress)
        public
        onlyGovernance
    {
        assembly {
            sstore(GOVERNANCE_SLOT, _governanceAddress)
        }
    }

    /**
     * @notice Fetch the current implementation address
     * @return _implementationAddress Returns the current implementation address
     */
    function implementationAddress()
        public
        view
        returns (address _implementationAddress)
    {
        assembly {
            _implementationAddress := sload(IMPLEMENTATION_SLOT)
        }
    }

    /**
     * @notice Fetch the current implementation address
     * @return _interfaceAddress Returns the current implementation address
     */
    function interfaceAddress()
        public
        view
        virtual
        returns (address _interfaceAddress)
    {
        assembly {
            _interfaceAddress := sload(IMPLEMENTATION_SLOT)
        }
    }

    /**
     * @notice Fetch the current implementation address
     * @return _logicAddress Returns the current implementation address
     */
    function logicAddress()
        public
        view
        virtual
        returns (address _logicAddress)
    {
        assembly {
            _logicAddress := sload(LOGIC_SLOT)
        }
    }

    /**
     * @notice Fetch current governance address
     * @return _governanceAddress Returns current governance address
     */
    function governanceAddress()
        public
        view
        virtual
        returns (address _governanceAddress)
    {
        assembly {
            _governanceAddress := sload(GOVERNANCE_SLOT)
        }
    }

    /**
     * @notice Fallback function that delegatecalls the subimplementation instead of what's in the IMPLEMENTATION_SLOT
     */
    function _delegateCallSubimplmentation() internal virtual {
        assembly {
            let contractLogic := sload(LOGIC_SLOT)
            calldatacopy(0x0, 0x0, calldatasize())
            let success := delegatecall(
                gas(),
                contractLogic,
                0x0,
                calldatasize(),
                0,
                0
            )
            let returnDataSize := returndatasize()
            returndatacopy(0, 0, returnDataSize)
            switch success
            case 0 {
                revert(0, returnDataSize)
            }
            default {
                return(0, returnDataSize)
            }
        }
    }

    /**
     * @notice Delegatecall fallback proxy
     */
    fallback() external payable virtual {
        _delegateCallSubimplmentation();
    }

    receive() external payable virtual {
        _delegateCallSubimplmentation();
    }
}

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

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"governanceAddress","outputs":[{"internalType":"address","name":"_governanceAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"governanceIsKilled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"implementationAddress","outputs":[{"internalType":"address","name":"_implementationAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"interfaceAddress","outputs":[{"internalType":"address","name":"_interfaceAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"killGovernance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"logicAddress","outputs":[{"internalType":"address","name":"_logicAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_governanceAddress","type":"address"}],"name":"updateGovernanceAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_implementationAddress","type":"address"}],"name":"updateImplementationAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_interfaceAddress","type":"address"}],"name":"updateInterfaceAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_logicAddress","type":"address"}],"name":"updateLogicAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

0x608060405234801561001057600080fd5b50337fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035561044f806100436000396000f3fe6080604052600436106100955760003560e01c8063b56fbb9711610059578063b56fbb9714610189578063b90d8930146101a9578063b97a231914610155578063cf6126ed146101c9578063eb5ee83a146101c9576100a4565b8063179781c4146100ac578063654ea5e7146100d6578063795053d3146100eb5780639c1fcc4c14610121578063aa8a675414610155576100a4565b366100a4576100a26101e9565b005b6100a26101e9565b3480156100b857600080fd5b506100c1610232565b60405190151581526020015b60405180910390f35b3480156100e257600080fd5b506100a261025a565b3480156100f757600080fd5b50600080516020610423833981519152545b6040516001600160a01b0390911681526020016100cd565b34801561012d57600080fd5b507f5942be825425c77e56e4bce97986794ab0f100954e40fc1390ae0e003710a3ab54610109565b34801561016157600080fd5b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54610109565b34801561019557600080fd5b506100a26101a43660046103c9565b6102af565b3480156101b557600080fd5b506100a26101c43660046103c9565b610313565b3480156101d557600080fd5b506100a26101e43660046103c9565b610365565b7f5942be825425c77e56e4bce97986794ab0f100954e40fc1390ae0e003710a3ab543660008037600080366000845af490503d806000803e81801561022d57816000f35b816000fd5b60008061024b6000805160206104238339815191525490565b6001600160a01b031614905090565b600080516020610423833981519152546001600160a01b0316336001600160a01b0316146102a35760405162461bcd60e51b815260040161029a906103f9565b60405180910390fd5b6102ad6000610313565b565b600080516020610423833981519152546001600160a01b0316336001600160a01b0316146102ef5760405162461bcd60e51b815260040161029a906103f9565b7f5942be825425c77e56e4bce97986794ab0f100954e40fc1390ae0e003710a3ab55565b600080516020610423833981519152546001600160a01b0316336001600160a01b0316146103535760405162461bcd60e51b815260040161029a906103f9565b60008051602061042383398151915255565b600080516020610423833981519152546001600160a01b0316336001600160a01b0316146103a55760405162461bcd60e51b815260040161029a906103f9565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b6000602082840312156103db57600080fd5b81356001600160a01b03811681146103f257600080fd5b9392505050565b6020808252600f908201526e4f6e6c7920676f7665726e616e636560881b60408201526060019056feb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103a164736f6c634300080b000a

Deployed Bytecode

0x6080604052600436106100955760003560e01c8063b56fbb9711610059578063b56fbb9714610189578063b90d8930146101a9578063b97a231914610155578063cf6126ed146101c9578063eb5ee83a146101c9576100a4565b8063179781c4146100ac578063654ea5e7146100d6578063795053d3146100eb5780639c1fcc4c14610121578063aa8a675414610155576100a4565b366100a4576100a26101e9565b005b6100a26101e9565b3480156100b857600080fd5b506100c1610232565b60405190151581526020015b60405180910390f35b3480156100e257600080fd5b506100a261025a565b3480156100f757600080fd5b50600080516020610423833981519152545b6040516001600160a01b0390911681526020016100cd565b34801561012d57600080fd5b507f5942be825425c77e56e4bce97986794ab0f100954e40fc1390ae0e003710a3ab54610109565b34801561016157600080fd5b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54610109565b34801561019557600080fd5b506100a26101a43660046103c9565b6102af565b3480156101b557600080fd5b506100a26101c43660046103c9565b610313565b3480156101d557600080fd5b506100a26101e43660046103c9565b610365565b7f5942be825425c77e56e4bce97986794ab0f100954e40fc1390ae0e003710a3ab543660008037600080366000845af490503d806000803e81801561022d57816000f35b816000fd5b60008061024b6000805160206104238339815191525490565b6001600160a01b031614905090565b600080516020610423833981519152546001600160a01b0316336001600160a01b0316146102a35760405162461bcd60e51b815260040161029a906103f9565b60405180910390fd5b6102ad6000610313565b565b600080516020610423833981519152546001600160a01b0316336001600160a01b0316146102ef5760405162461bcd60e51b815260040161029a906103f9565b7f5942be825425c77e56e4bce97986794ab0f100954e40fc1390ae0e003710a3ab55565b600080516020610423833981519152546001600160a01b0316336001600160a01b0316146103535760405162461bcd60e51b815260040161029a906103f9565b60008051602061042383398151915255565b600080516020610423833981519152546001600160a01b0316336001600160a01b0316146103a55760405162461bcd60e51b815260040161029a906103f9565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b6000602082840312156103db57600080fd5b81356001600160a01b03811681146103f257600080fd5b9392505050565b6020808252600f908201526e4f6e6c7920676f7665726e616e636560881b60408201526060019056feb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103a164736f6c634300080b000a

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
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.