More Info
Private Name Tags
ContractCreator
Multichain Info
No addresses found
Latest 25 from a total of 52 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Withdraw | 15877743 | 56 days ago | IN | 0 ETH | 0.00000041 | ||||
Withdraw | 15876829 | 56 days ago | IN | 0 ETH | 0.00000035 | ||||
Withdraw | 15670511 | 60 days ago | IN | 0 ETH | 0.00000016 | ||||
Withdraw | 15576740 | 63 days ago | IN | 0 ETH | 0.0000002 | ||||
Withdraw | 15573717 | 63 days ago | IN | 0 ETH | 0.00000021 | ||||
Withdraw | 15475071 | 65 days ago | IN | 0 ETH | 0.00000044 | ||||
Deposit | 14977284 | 77 days ago | IN | 0 ETH | 0.00000039 | ||||
Withdraw | 14657064 | 84 days ago | IN | 0 ETH | 0.00000025 | ||||
Deposit | 14104039 | 97 days ago | IN | 0 ETH | 0.00000019 | ||||
Withdraw | 14064579 | 98 days ago | IN | 0 ETH | 0.0000002 | ||||
Withdraw | 13793526 | 104 days ago | IN | 0 ETH | 0.00000016 | ||||
Withdraw | 13788035 | 104 days ago | IN | 0 ETH | 0.00000019 | ||||
Withdraw | 13725710 | 106 days ago | IN | 0 ETH | 0.00000017 | ||||
Deposit | 13589589 | 109 days ago | IN | 0 ETH | 0.00000024 | ||||
Deposit | 13589561 | 109 days ago | IN | 0 ETH | 0.00000025 | ||||
Deposit | 13576560 | 109 days ago | IN | 0 ETH | 0.00000019 | ||||
Deposit | 13425146 | 112 days ago | IN | 0 ETH | 0.00000017 | ||||
Deposit | 13425100 | 112 days ago | IN | 0 ETH | 0.00000017 | ||||
Withdraw | 13275774 | 116 days ago | IN | 0 ETH | 0.00000017 | ||||
Deposit | 13050905 | 121 days ago | IN | 0 ETH | 0.00000018 | ||||
Deposit | 13040699 | 121 days ago | IN | 0 ETH | 0.0000002 | ||||
Deposit | 12944961 | 124 days ago | IN | 0 ETH | 0.00000016 | ||||
Deposit | 12900646 | 125 days ago | IN | 0 ETH | 0.0000002 | ||||
Deposit | 12884583 | 125 days ago | IN | 0 ETH | 0.00000018 | ||||
Deposit | 12838639 | 126 days ago | IN | 0 ETH | 0.00000033 |
Latest 1 internal transaction
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
11656229 | 153 days ago | Contract Creation | 0 ETH |
Loading...
Loading
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0x0CD50bb3...9CD01704F The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
GaugeProxy
Compiler Version
v0.8.19+commit.7dd6d404
Optimization Enabled:
Yes with 2000 runs
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity =0.8.19; import {StorageSlot} from "@openzeppelin/contracts/utils/StorageSlot.sol"; import {IGaugeFactory} from "./interfaces/IGaugeFactory.sol"; contract GaugeProxy { address private immutable gaugeFactory; bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc; constructor() { gaugeFactory = msg.sender; } function _getImplementation() internal view returns (address) { return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value; } function _setImplementation(address newImplementation) private { StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = newImplementation; } fallback() external payable { address impl = IGaugeFactory(gaugeFactory).gaugeImplementation(); require(impl != address(0)); //Just for etherscan compatibility if (impl != _getImplementation() && msg.sender != (address(0))) { _setImplementation(impl); } assembly { let ptr := mload(0x40) calldatacopy(ptr, 0, calldatasize()) let result := delegatecall(gas(), impl, ptr, calldatasize(), 0, 0) let size := returndatasize() returndatacopy(ptr, 0, size) switch result case 0 { revert(ptr, size) } default { return(ptr, size) } } } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.9.0) (utils/StorageSlot.sol) // This file was procedurally generated from scripts/generate/templates/StorageSlot.js. pragma solidity ^0.8.0; /** * @dev Library for reading and writing primitive types to specific storage slots. * * Storage slots are often used to avoid storage conflict when dealing with upgradeable contracts. * This library helps with reading and writing to such slots without the need for inline assembly. * * The functions in this library return Slot structs that contain a `value` member that can be used to read or write. * * Example usage to set ERC1967 implementation slot: * ```solidity * contract ERC1967 { * bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc; * * function _getImplementation() internal view returns (address) { * return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value; * } * * function _setImplementation(address newImplementation) internal { * require(Address.isContract(newImplementation), "ERC1967: new implementation is not a contract"); * StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = newImplementation; * } * } * ``` * * _Available since v4.1 for `address`, `bool`, `bytes32`, `uint256`._ * _Available since v4.9 for `string`, `bytes`._ */ library StorageSlot { struct AddressSlot { address value; } struct BooleanSlot { bool value; } struct Bytes32Slot { bytes32 value; } struct Uint256Slot { uint256 value; } struct StringSlot { string value; } struct BytesSlot { bytes value; } /** * @dev Returns an `AddressSlot` with member `value` located at `slot`. */ function getAddressSlot(bytes32 slot) internal pure returns (AddressSlot storage r) { /// @solidity memory-safe-assembly assembly { r.slot := slot } } /** * @dev Returns an `BooleanSlot` with member `value` located at `slot`. */ function getBooleanSlot(bytes32 slot) internal pure returns (BooleanSlot storage r) { /// @solidity memory-safe-assembly assembly { r.slot := slot } } /** * @dev Returns an `Bytes32Slot` with member `value` located at `slot`. */ function getBytes32Slot(bytes32 slot) internal pure returns (Bytes32Slot storage r) { /// @solidity memory-safe-assembly assembly { r.slot := slot } } /** * @dev Returns an `Uint256Slot` with member `value` located at `slot`. */ function getUint256Slot(bytes32 slot) internal pure returns (Uint256Slot storage r) { /// @solidity memory-safe-assembly assembly { r.slot := slot } } /** * @dev Returns an `StringSlot` with member `value` located at `slot`. */ function getStringSlot(bytes32 slot) internal pure returns (StringSlot storage r) { /// @solidity memory-safe-assembly assembly { r.slot := slot } } /** * @dev Returns an `StringSlot` representation of the string storage pointer `store`. */ function getStringSlot(string storage store) internal pure returns (StringSlot storage r) { /// @solidity memory-safe-assembly assembly { r.slot := store.slot } } /** * @dev Returns an `BytesSlot` with member `value` located at `slot`. */ function getBytesSlot(bytes32 slot) internal pure returns (BytesSlot storage r) { /// @solidity memory-safe-assembly assembly { r.slot := slot } } /** * @dev Returns an `BytesSlot` representation of the bytes storage pointer `store`. */ function getBytesSlot(bytes storage store) internal pure returns (BytesSlot storage r) { /// @solidity memory-safe-assembly assembly { r.slot := store.slot } } }
// SPDX-License-Identifier: MIT pragma solidity >=0.8.0; interface IGaugeFactory { event GaugeImplementationChanged(address _oldGaugeImplementation, address _newGaugeImplementation); /** * @dev Emitted when the default Blast governor address for new bribes is updated. * * @param oldDefaultBlastGovernor The address of the previous default Blast governor. * @param newDefaultBlastGovernor The address of the new default Blast governor that has been set. */ event SetDefaultBlastGovernor(address indexed oldDefaultBlastGovernor, address indexed newDefaultBlastGovernor); function createGauge( address _rewardToken, address _ve, address _token, address _distribution, address _internal_bribe, address _external_bribe, bool _isDistributeEmissionToMerkle, address _feeVault ) external returns (address); function gaugeImplementation() external view returns (address impl); function merklGaugeMiddleman() external view returns (address); function gaugeOwner() external view returns (address); }
{ "evmVersion": "paris", "viaIR": true, "optimizer": { "enabled": true, "runs": 2000 }, "metadata": { "bytecodeHash": "none" }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"}]
Deployed Bytecode
0x60806040527feda5458a0000000000000000000000000000000000000000000000000000000060805273ffffffffffffffffffffffffffffffffffffffff60206080600481847f0000000000000000000000004515bf577f5c0d2b42b2528d5dd8c4ec47efa408165afa90811561018f57600091610161575b6100c68183169161008a831515610263565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541673ffffffffffffffffffffffffffffffffffffffff1690565b141580610158575b6100f4575b60008060405192368285378336915af4903d91826000833e156100f257f35bfd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790556100d3565b503315156100ce565b905060203d8111610188575b8061017a61018292610194565b608001610205565b90610078565b503d61016d565b610257565b601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09101166080016080811067ffffffffffffffff8211176101d657604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8060209101126102525760805173ffffffffffffffffffffffffffffffffffffffff811681036102525790565b600080fd5b6040513d6000823e3d90fd5b156102525756fea164736f6c6343000813000a
Loading...
Loading
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.