SazareImmutableHookProxy

0x02973ca0c6f13cec5dfd9262f1cef08c4082a888

Verification
Verified
v0.8.26+commit.8a97fa7a
Type
Contract
117 bytes
ABI entries
3
0 read · 0 write
License
none

Contract information

Address
0x02973ca0c6f13cec5dfd9262f1cef08c4082a888
Chain
Robinhood Chain (4663)
Compiler
v0.8.26+commit.8a97fa7a
Optimization
Enabled
Creation tx
0x9f35026a08…c5ec24db1e

Token

Not a token

This contract does not expose ERC-20 metadata.

Read contract (0)

No read functions

The ABI is unavailable or exposes no view functions.

ABI

[
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "implementation_",
        "type": "address"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "constructor"
  },
  {
    "inputs": [],
    "name": "InvalidImplementation",
    "type": "error"
  },
  {
    "stateMutability": "payable",
    "type": "fallback"
  }
]

Source code

// SPDX-License-Identifier: MIT
pragma solidity 0.8.26;

import {Proxy} from "openzeppelin-contracts/contracts/proxy/Proxy.sol";

/// @notice Permanently delegates one modular market address to one hook implementation.
/// @dev There is deliberately no implementation getter, admin, or upgrade path.
///      The implementation address is embedded in this proxy's runtime bytecode.
contract SazareImmutableHookProxy is Proxy {
    error InvalidImplementation();

    address private immutable _hookImplementation;

    constructor(address implementation_) {
        if (implementation_.code.length == 0) revert InvalidImplementation();
        _hookImplementation = implementation_;
    }

    function _implementation() internal view override returns (address) {
        return _hookImplementation;
    }
}
Chain explorer5620msChain node73ms