ETH Price: $3,419.24 (-0.12%)

Contract

0xec440e8786C34C9752793e1e00Db39e5E94b6b14
Transaction Hash
Method
Block
From
To
Set Admin1150949372024-01-20 22:10:51180 days ago1705788651IN
0xec440e87...5E94b6b14
0 ETH0.000021331590.1

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
1228784242024-07-19 2:20:253 hrs ago1721355625
0xec440e87...5E94b6b14
0.001781726022103 ETH
1228782362024-07-19 2:14:093 hrs ago1721355249
0xec440e87...5E94b6b14
0.000296489756183 ETH
1228780022024-07-19 2:06:213 hrs ago1721354781
0xec440e87...5E94b6b14
0.000593165112041 ETH
1228632462024-07-18 17:54:2911 hrs ago1721325269
0xec440e87...5E94b6b14
0.000296004151293 ETH
1228537912024-07-18 12:39:1916 hrs ago1721306359
0xec440e87...5E94b6b14
0.000291895693812 ETH
1228507622024-07-18 10:58:2118 hrs ago1721300301
0xec440e87...5E94b6b14
0.00029241848223 ETH
1228497922024-07-18 10:26:0119 hrs ago1721298361
0xec440e87...5E94b6b14
0.00029241848223 ETH
1228496232024-07-18 10:20:2319 hrs ago1721298023
0xec440e87...5E94b6b14
0.00029241848223 ETH
1228329142024-07-18 1:03:2528 hrs ago1721264605
0xec440e87...5E94b6b14
0.000294830731239 ETH
1228206622024-07-17 18:15:0135 hrs ago1721240101
0xec440e87...5E94b6b14
0.000296441200356 ETH
1228191432024-07-17 17:24:2336 hrs ago1721237063
0xec440e87...5E94b6b14
0.000296693988111 ETH
1228135842024-07-17 14:19:0539 hrs ago1721225945
0xec440e87...5E94b6b14
0.000291766939494 ETH
1228039472024-07-17 8:57:5144 hrs ago1721206671
0xec440e87...5E94b6b14
0.000289014160654 ETH
1228007282024-07-17 7:10:3346 hrs ago1721200233
0xec440e87...5E94b6b14
0.000288473191552 ETH
1227996272024-07-17 6:33:5147 hrs ago1721198031
0xec440e87...5E94b6b14
0.000287718585046 ETH
1227918792024-07-17 2:15:352 days ago1721182535
0xec440e87...5E94b6b14
0.000287305536801 ETH
1227840812024-07-16 21:55:392 days ago1721166939
0xec440e87...5E94b6b14
0.000293096849535 ETH
1227807872024-07-16 20:05:512 days ago1721160351
0xec440e87...5E94b6b14
0.000290646384481 ETH
1227806512024-07-16 20:01:192 days ago1721160079
0xec440e87...5E94b6b14
0.000290646384481 ETH
1227801202024-07-16 19:43:372 days ago1721159017
0xec440e87...5E94b6b14
0.000290646384481 ETH
1227794142024-07-16 19:20:052 days ago1721157605
0xec440e87...5E94b6b14
0.000291536384796 ETH
1227788692024-07-16 19:01:552 days ago1721156515
0xec440e87...5E94b6b14
0.000291536384796 ETH
1227601942024-07-16 8:39:252 days ago1721119165
0xec440e87...5E94b6b14
0.000299565400342 ETH
1227549862024-07-16 5:45:492 days ago1721108749
0xec440e87...5E94b6b14
0.000294259239039 ETH
1227461212024-07-16 0:50:193 days ago1721091019
0xec440e87...5E94b6b14
0.000289444463212 ETH
View All Internal Transactions

Loading...
Loading

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

Contract Name:
HolographTreasuryProxy

Compiler Version
v0.8.13+commit.abaa5c0e

Optimization Enabled:
Yes with 999999 runs

Other Settings:
default evmVersion
File 1 of 4 : HolographTreasuryProxy.sol
// SPDX-License-Identifier: UNLICENSED
/*

                         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                         β”‚ HOLOGRAPH β”‚
                         β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
╔═════════════════════════════════════════════════════════════╗
β•‘                                                             β•‘
β•‘                            / ^ \                            β•‘
β•‘                            ~~*~~            ¸               β•‘
β•‘                         [ '<>:<>' ]         β”‚β–‘β–‘β–‘            β•‘
β•‘               β•”β•—           _/"\_           β•”β•£               β•‘
β•‘             β”Œβ”€β•¬β•¬β”€β”          """          β”Œβ”€β•¬β•¬β”€β”             β•‘
β•‘          β”Œβ”€β”¬β”˜ β• β•£ └┬─┐       \_/       β”Œβ”€β”¬β”˜ β• β•£ └┬─┐          β•‘
β•‘       β”Œβ”€β”¬β”˜ β”‚  β• β•£  β”‚ └┬─┐           β”Œβ”€β”¬β”˜ β”‚  β• β•£  β”‚ └┬─┐       β•‘
β•‘    β”Œβ”€β”¬β”˜ β”‚  β”‚  β• β•£  β”‚  β”‚ └┬─┐     β”Œβ”€β”¬β”˜ β”‚  β”‚  β• β•£  β”‚  β”‚ └┬─┐    β•‘
β•‘ β”Œβ”€β”¬β”˜ β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚ └┬┐ β”Œβ”¬β”˜ β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚ └┬─┐ β•‘
β• β”¬β”˜ β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚β””¤β”˜β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚ └┬╣
β•‘β”‚  β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚   β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚  β”‚β•‘
╠╩══╩══╩══╩══╩══╬╬══╩══╩══╩══╩═══╩══╩══╩══╩══╬╬══╩══╩══╩══╩══╩╣
╠┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴╬╬┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴╬╬┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴╣
β•‘               β• β•£                           β• β•£               β•‘
β•‘               β• β•£                           β• β•£               β•‘
β•‘    ,          β• β•£     ,        ,'      *    β• β•£               β•‘
β•‘~~~~~^~~~~~~~~β”Œβ•¬β•¬β”~~~^~~~~~~~~^^~~~~~~~~^~~β”Œβ•¬β•¬β”~~~~~~~^~~~~~~β•‘
β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•©β•©β•©β•©β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•©β•©β•©β•©β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•
     - one protocol, one bridge = infinite possibilities -


 ***************************************************************

 DISCLAIMER: U.S Patent Pending

 LICENSE: Holograph Limited Public License (H-LPL)

 https://holograph.xyz/licenses/h-lpl/1.0.0

 This license governs use of the accompanying software. If you
 use the software, you accept this license. If you do not accept
 the license, you are not permitted to use the software.

 1. Definitions

 The terms "reproduce," "reproduction," "derivative works," and
 "distribution" have the same meaning here as under U.S.
 copyright law. A "contribution" is the original software, or
 any additions or changes to the software. A "contributor" is
 any person that distributes its contribution under this
 license. "Licensed patents" are a contributor’s patent claims
 that read directly on its contribution.

 2. Grant of Rights

 A) Copyright Grant- Subject to the terms of this license,
 including the license conditions and limitations in sections 3
 and 4, each contributor grants you a non-exclusive, worldwide,
 royalty-free copyright license to reproduce its contribution,
 prepare derivative works of its contribution, and distribute
 its contribution or any derivative works that you create.
 B) Patent Grant- Subject to the terms of this license,
 including the license conditions and limitations in section 3,
 each contributor grants you a non-exclusive, worldwide,
 royalty-free license under its licensed patents to make, have
 made, use, sell, offer for sale, import, and/or otherwise
 dispose of its contribution in the software or derivative works
 of the contribution in the software.

 3. Conditions and Limitations

 A) No Trademark License- This license does not grant you rights
 to use any contributors’ name, logo, or trademarks.
 B) If you bring a patent claim against any contributor over
 patents that you claim are infringed by the software, your
 patent license from such contributor is terminated with
 immediate effect.
 C) If you distribute any portion of the software, you must
 retain all copyright, patent, trademark, and attribution
 notices that are present in the software.
 D) If you distribute any portion of the software in source code
 form, you may do so only under this license by including a
 complete copy of this license with your distribution. If you
 distribute any portion of the software in compiled or object
 code form, you may only do so under a license that complies
 with this license.
 E) The software is licensed β€œas-is.” You bear all risks of
 using it. The contributors give no express warranties,
 guarantees, or conditions. You may have additional consumer
 rights under your local laws which this license cannot change.
 To the extent permitted under your local laws, the contributors
 exclude all implied warranties, including those of
 merchantability, fitness for a particular purpose and
 non-infringement.

 4. (F) Platform Limitation- The licenses granted in sections
 2.A & 2.B extend only to the software or derivative works that
 you create that run on a Holograph system product.

 ***************************************************************

*/

pragma solidity 0.8.13;

import "../abstract/Admin.sol";
import "../abstract/Initializable.sol";

import "../interface/InitializableInterface.sol";

contract HolographTreasuryProxy is Admin, Initializable {
  /**
   * @dev bytes32(uint256(keccak256('eip1967.Holograph.treasury')) - 1)
   */
  bytes32 constant _treasurySlot = 0x4215e7a38d75164ca078bbd61d0992cdeb1ba16f3b3ead5944966d3e4080e8b6;

  constructor() {}

  function init(bytes memory data) external override returns (bytes4) {
    require(!_isInitialized(), "HOLOGRAPH: already initialized");
    (address treasury, bytes memory initCode) = abi.decode(data, (address, bytes));
    assembly {
      sstore(_adminSlot, origin())
      sstore(_treasurySlot, treasury)
    }
    (bool success, bytes memory returnData) = treasury.delegatecall(abi.encodeWithSignature("init(bytes)", initCode));
    bytes4 selector = abi.decode(returnData, (bytes4));
    require(success && selector == InitializableInterface.init.selector, "initialization failed");
    _setInitialized();
    return InitializableInterface.init.selector;
  }

  function getTreasury() external view returns (address treasury) {
    assembly {
      treasury := sload(_treasurySlot)
    }
  }

  function setTreasury(address treasury) external onlyAdmin {
    assembly {
      sstore(_treasurySlot, treasury)
    }
  }

  receive() external payable {}

  fallback() external payable {
    assembly {
      let treasury := sload(_treasurySlot)
      calldatacopy(0, 0, calldatasize())
      let result := delegatecall(gas(), treasury, 0, calldatasize(), 0, 0)
      returndatacopy(0, 0, returndatasize())
      switch result
      case 0 {
        revert(0, returndatasize())
      }
      default {
        return(0, returndatasize())
      }
    }
  }
}

File 2 of 4 : Admin.sol
// SPDX-License-Identifier: UNLICENSED
/*

                         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                         β”‚ HOLOGRAPH β”‚
                         β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
╔═════════════════════════════════════════════════════════════╗
β•‘                                                             β•‘
β•‘                            / ^ \                            β•‘
β•‘                            ~~*~~            ¸               β•‘
β•‘                         [ '<>:<>' ]         β”‚β–‘β–‘β–‘            β•‘
β•‘               β•”β•—           _/"\_           β•”β•£               β•‘
β•‘             β”Œβ”€β•¬β•¬β”€β”          """          β”Œβ”€β•¬β•¬β”€β”             β•‘
β•‘          β”Œβ”€β”¬β”˜ β• β•£ └┬─┐       \_/       β”Œβ”€β”¬β”˜ β• β•£ └┬─┐          β•‘
β•‘       β”Œβ”€β”¬β”˜ β”‚  β• β•£  β”‚ └┬─┐           β”Œβ”€β”¬β”˜ β”‚  β• β•£  β”‚ └┬─┐       β•‘
β•‘    β”Œβ”€β”¬β”˜ β”‚  β”‚  β• β•£  β”‚  β”‚ └┬─┐     β”Œβ”€β”¬β”˜ β”‚  β”‚  β• β•£  β”‚  β”‚ └┬─┐    β•‘
β•‘ β”Œβ”€β”¬β”˜ β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚ └┬┐ β”Œβ”¬β”˜ β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚ └┬─┐ β•‘
β• β”¬β”˜ β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚β””¤β”˜β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚ └┬╣
β•‘β”‚  β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚   β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚  β”‚β•‘
╠╩══╩══╩══╩══╩══╬╬══╩══╩══╩══╩═══╩══╩══╩══╩══╬╬══╩══╩══╩══╩══╩╣
╠┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴╬╬┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴╬╬┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴╣
β•‘               β• β•£                           β• β•£               β•‘
β•‘               β• β•£                           β• β•£               β•‘
β•‘    ,          β• β•£     ,        ,'      *    β• β•£               β•‘
β•‘~~~~~^~~~~~~~~β”Œβ•¬β•¬β”~~~^~~~~~~~~^^~~~~~~~~^~~β”Œβ•¬β•¬β”~~~~~~~^~~~~~~β•‘
β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•©β•©β•©β•©β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•©β•©β•©β•©β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•
     - one protocol, one bridge = infinite possibilities -


 ***************************************************************

 DISCLAIMER: U.S Patent Pending

 LICENSE: Holograph Limited Public License (H-LPL)

 https://holograph.xyz/licenses/h-lpl/1.0.0

 This license governs use of the accompanying software. If you
 use the software, you accept this license. If you do not accept
 the license, you are not permitted to use the software.

 1. Definitions

 The terms "reproduce," "reproduction," "derivative works," and
 "distribution" have the same meaning here as under U.S.
 copyright law. A "contribution" is the original software, or
 any additions or changes to the software. A "contributor" is
 any person that distributes its contribution under this
 license. "Licensed patents" are a contributor’s patent claims
 that read directly on its contribution.

 2. Grant of Rights

 A) Copyright Grant- Subject to the terms of this license,
 including the license conditions and limitations in sections 3
 and 4, each contributor grants you a non-exclusive, worldwide,
 royalty-free copyright license to reproduce its contribution,
 prepare derivative works of its contribution, and distribute
 its contribution or any derivative works that you create.
 B) Patent Grant- Subject to the terms of this license,
 including the license conditions and limitations in section 3,
 each contributor grants you a non-exclusive, worldwide,
 royalty-free license under its licensed patents to make, have
 made, use, sell, offer for sale, import, and/or otherwise
 dispose of its contribution in the software or derivative works
 of the contribution in the software.

 3. Conditions and Limitations

 A) No Trademark License- This license does not grant you rights
 to use any contributors’ name, logo, or trademarks.
 B) If you bring a patent claim against any contributor over
 patents that you claim are infringed by the software, your
 patent license from such contributor is terminated with
 immediate effect.
 C) If you distribute any portion of the software, you must
 retain all copyright, patent, trademark, and attribution
 notices that are present in the software.
 D) If you distribute any portion of the software in source code
 form, you may do so only under this license by including a
 complete copy of this license with your distribution. If you
 distribute any portion of the software in compiled or object
 code form, you may only do so under a license that complies
 with this license.
 E) The software is licensed β€œas-is.” You bear all risks of
 using it. The contributors give no express warranties,
 guarantees, or conditions. You may have additional consumer
 rights under your local laws which this license cannot change.
 To the extent permitted under your local laws, the contributors
 exclude all implied warranties, including those of
 merchantability, fitness for a particular purpose and
 non-infringement.

 4. (F) Platform Limitation- The licenses granted in sections
 2.A & 2.B extend only to the software or derivative works that
 you create that run on a Holograph system product.

 ***************************************************************

*/

pragma solidity 0.8.13;

abstract contract Admin {
  /**
   * @dev bytes32(uint256(keccak256('eip1967.Holograph.admin')) - 1)
   */
  bytes32 constant _adminSlot = 0x3f106594dc74eeef980dae234cde8324dc2497b13d27a0c59e55bd2ca10a07c9;

  modifier onlyAdmin() {
    require(msg.sender == getAdmin(), "HOLOGRAPH: admin only function");
    _;
  }

  constructor() {}

  function admin() public view returns (address) {
    return getAdmin();
  }

  function getAdmin() public view returns (address adminAddress) {
    assembly {
      adminAddress := sload(_adminSlot)
    }
  }

  function setAdmin(address adminAddress) public onlyAdmin {
    assembly {
      sstore(_adminSlot, adminAddress)
    }
  }

  function adminCall(address target, bytes calldata data) external payable onlyAdmin {
    assembly {
      calldatacopy(0, data.offset, data.length)
      let result := call(gas(), target, callvalue(), 0, data.length, 0, 0)
      returndatacopy(0, 0, returndatasize())
      switch result
      case 0 {
        revert(0, returndatasize())
      }
      default {
        return(0, returndatasize())
      }
    }
  }
}

File 3 of 4 : Initializable.sol
// SPDX-License-Identifier: UNLICENSED
/*

                         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                         β”‚ HOLOGRAPH β”‚
                         β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
╔═════════════════════════════════════════════════════════════╗
β•‘                                                             β•‘
β•‘                            / ^ \                            β•‘
β•‘                            ~~*~~            ¸               β•‘
β•‘                         [ '<>:<>' ]         β”‚β–‘β–‘β–‘            β•‘
β•‘               β•”β•—           _/"\_           β•”β•£               β•‘
β•‘             β”Œβ”€β•¬β•¬β”€β”          """          β”Œβ”€β•¬β•¬β”€β”             β•‘
β•‘          β”Œβ”€β”¬β”˜ β• β•£ └┬─┐       \_/       β”Œβ”€β”¬β”˜ β• β•£ └┬─┐          β•‘
β•‘       β”Œβ”€β”¬β”˜ β”‚  β• β•£  β”‚ └┬─┐           β”Œβ”€β”¬β”˜ β”‚  β• β•£  β”‚ └┬─┐       β•‘
β•‘    β”Œβ”€β”¬β”˜ β”‚  β”‚  β• β•£  β”‚  β”‚ └┬─┐     β”Œβ”€β”¬β”˜ β”‚  β”‚  β• β•£  β”‚  β”‚ └┬─┐    β•‘
β•‘ β”Œβ”€β”¬β”˜ β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚ └┬┐ β”Œβ”¬β”˜ β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚ └┬─┐ β•‘
β• β”¬β”˜ β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚β””¤β”˜β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚ └┬╣
β•‘β”‚  β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚   β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚  β”‚β•‘
╠╩══╩══╩══╩══╩══╬╬══╩══╩══╩══╩═══╩══╩══╩══╩══╬╬══╩══╩══╩══╩══╩╣
╠┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴╬╬┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴╬╬┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴╣
β•‘               β• β•£                           β• β•£               β•‘
β•‘               β• β•£                           β• β•£               β•‘
β•‘    ,          β• β•£     ,        ,'      *    β• β•£               β•‘
β•‘~~~~~^~~~~~~~~β”Œβ•¬β•¬β”~~~^~~~~~~~~^^~~~~~~~~^~~β”Œβ•¬β•¬β”~~~~~~~^~~~~~~β•‘
β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•©β•©β•©β•©β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•©β•©β•©β•©β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•
     - one protocol, one bridge = infinite possibilities -


 ***************************************************************

 DISCLAIMER: U.S Patent Pending

 LICENSE: Holograph Limited Public License (H-LPL)

 https://holograph.xyz/licenses/h-lpl/1.0.0

 This license governs use of the accompanying software. If you
 use the software, you accept this license. If you do not accept
 the license, you are not permitted to use the software.

 1. Definitions

 The terms "reproduce," "reproduction," "derivative works," and
 "distribution" have the same meaning here as under U.S.
 copyright law. A "contribution" is the original software, or
 any additions or changes to the software. A "contributor" is
 any person that distributes its contribution under this
 license. "Licensed patents" are a contributor’s patent claims
 that read directly on its contribution.

 2. Grant of Rights

 A) Copyright Grant- Subject to the terms of this license,
 including the license conditions and limitations in sections 3
 and 4, each contributor grants you a non-exclusive, worldwide,
 royalty-free copyright license to reproduce its contribution,
 prepare derivative works of its contribution, and distribute
 its contribution or any derivative works that you create.
 B) Patent Grant- Subject to the terms of this license,
 including the license conditions and limitations in section 3,
 each contributor grants you a non-exclusive, worldwide,
 royalty-free license under its licensed patents to make, have
 made, use, sell, offer for sale, import, and/or otherwise
 dispose of its contribution in the software or derivative works
 of the contribution in the software.

 3. Conditions and Limitations

 A) No Trademark License- This license does not grant you rights
 to use any contributors’ name, logo, or trademarks.
 B) If you bring a patent claim against any contributor over
 patents that you claim are infringed by the software, your
 patent license from such contributor is terminated with
 immediate effect.
 C) If you distribute any portion of the software, you must
 retain all copyright, patent, trademark, and attribution
 notices that are present in the software.
 D) If you distribute any portion of the software in source code
 form, you may do so only under this license by including a
 complete copy of this license with your distribution. If you
 distribute any portion of the software in compiled or object
 code form, you may only do so under a license that complies
 with this license.
 E) The software is licensed β€œas-is.” You bear all risks of
 using it. The contributors give no express warranties,
 guarantees, or conditions. You may have additional consumer
 rights under your local laws which this license cannot change.
 To the extent permitted under your local laws, the contributors
 exclude all implied warranties, including those of
 merchantability, fitness for a particular purpose and
 non-infringement.

 4. (F) Platform Limitation- The licenses granted in sections
 2.A & 2.B extend only to the software or derivative works that
 you create that run on a Holograph system product.

 ***************************************************************

*/

pragma solidity 0.8.13;

import "../interface/InitializableInterface.sol";

/**
 * @title Initializable
 * @author https://github.com/holographxyz
 * @notice Use init instead of constructor
 * @dev This allows for use of init function to make one time initializations without the need for a constructor
 */
abstract contract Initializable is InitializableInterface {
  /**
   * @dev bytes32(uint256(keccak256('eip1967.Holograph.initialized')) - 1)
   */
  bytes32 constant _initializedSlot = 0x4e5f991bca30eca2d4643aaefa807e88f96a4a97398933d572a3c0d973004a01;

  /**
   * @dev Constructor is left empty and init is used instead
   */
  constructor() {}

  /**
   * @notice Used internally to initialize the contract instead of through a constructor
   * @dev This function is called by the deployer/factory when creating a contract
   * @param initPayload abi encoded payload to use for contract initilaization
   */
  function init(bytes memory initPayload) external virtual returns (bytes4);

  function _isInitialized() internal view returns (bool initialized) {
    assembly {
      initialized := sload(_initializedSlot)
    }
  }

  function _setInitialized() internal {
    assembly {
      sstore(_initializedSlot, 0x0000000000000000000000000000000000000000000000000000000000000001)
    }
  }
}

File 4 of 4 : InitializableInterface.sol
// SPDX-License-Identifier: UNLICENSED
/*

                         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                         β”‚ HOLOGRAPH β”‚
                         β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
╔═════════════════════════════════════════════════════════════╗
β•‘                                                             β•‘
β•‘                            / ^ \                            β•‘
β•‘                            ~~*~~            ¸               β•‘
β•‘                         [ '<>:<>' ]         β”‚β–‘β–‘β–‘            β•‘
β•‘               β•”β•—           _/"\_           β•”β•£               β•‘
β•‘             β”Œβ”€β•¬β•¬β”€β”          """          β”Œβ”€β•¬β•¬β”€β”             β•‘
β•‘          β”Œβ”€β”¬β”˜ β• β•£ └┬─┐       \_/       β”Œβ”€β”¬β”˜ β• β•£ └┬─┐          β•‘
β•‘       β”Œβ”€β”¬β”˜ β”‚  β• β•£  β”‚ └┬─┐           β”Œβ”€β”¬β”˜ β”‚  β• β•£  β”‚ └┬─┐       β•‘
β•‘    β”Œβ”€β”¬β”˜ β”‚  β”‚  β• β•£  β”‚  β”‚ └┬─┐     β”Œβ”€β”¬β”˜ β”‚  β”‚  β• β•£  β”‚  β”‚ └┬─┐    β•‘
β•‘ β”Œβ”€β”¬β”˜ β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚ └┬┐ β”Œβ”¬β”˜ β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚ └┬─┐ β•‘
β• β”¬β”˜ β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚β””¤β”˜β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚ └┬╣
β•‘β”‚  β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚   β”‚  β”‚  β”‚  β”‚  β• β•£  β”‚  β”‚  β”‚  β”‚  β”‚β•‘
╠╩══╩══╩══╩══╩══╬╬══╩══╩══╩══╩═══╩══╩══╩══╩══╬╬══╩══╩══╩══╩══╩╣
╠┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴╬╬┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴╬╬┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴╣
β•‘               β• β•£                           β• β•£               β•‘
β•‘               β• β•£                           β• β•£               β•‘
β•‘    ,          β• β•£     ,        ,'      *    β• β•£               β•‘
β•‘~~~~~^~~~~~~~~β”Œβ•¬β•¬β”~~~^~~~~~~~~^^~~~~~~~~^~~β”Œβ•¬β•¬β”~~~~~~~^~~~~~~β•‘
β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•©β•©β•©β•©β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•©β•©β•©β•©β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•
     - one protocol, one bridge = infinite possibilities -


 ***************************************************************

 DISCLAIMER: U.S Patent Pending

 LICENSE: Holograph Limited Public License (H-LPL)

 https://holograph.xyz/licenses/h-lpl/1.0.0

 This license governs use of the accompanying software. If you
 use the software, you accept this license. If you do not accept
 the license, you are not permitted to use the software.

 1. Definitions

 The terms "reproduce," "reproduction," "derivative works," and
 "distribution" have the same meaning here as under U.S.
 copyright law. A "contribution" is the original software, or
 any additions or changes to the software. A "contributor" is
 any person that distributes its contribution under this
 license. "Licensed patents" are a contributor’s patent claims
 that read directly on its contribution.

 2. Grant of Rights

 A) Copyright Grant- Subject to the terms of this license,
 including the license conditions and limitations in sections 3
 and 4, each contributor grants you a non-exclusive, worldwide,
 royalty-free copyright license to reproduce its contribution,
 prepare derivative works of its contribution, and distribute
 its contribution or any derivative works that you create.
 B) Patent Grant- Subject to the terms of this license,
 including the license conditions and limitations in section 3,
 each contributor grants you a non-exclusive, worldwide,
 royalty-free license under its licensed patents to make, have
 made, use, sell, offer for sale, import, and/or otherwise
 dispose of its contribution in the software or derivative works
 of the contribution in the software.

 3. Conditions and Limitations

 A) No Trademark License- This license does not grant you rights
 to use any contributors’ name, logo, or trademarks.
 B) If you bring a patent claim against any contributor over
 patents that you claim are infringed by the software, your
 patent license from such contributor is terminated with
 immediate effect.
 C) If you distribute any portion of the software, you must
 retain all copyright, patent, trademark, and attribution
 notices that are present in the software.
 D) If you distribute any portion of the software in source code
 form, you may do so only under this license by including a
 complete copy of this license with your distribution. If you
 distribute any portion of the software in compiled or object
 code form, you may only do so under a license that complies
 with this license.
 E) The software is licensed β€œas-is.” You bear all risks of
 using it. The contributors give no express warranties,
 guarantees, or conditions. You may have additional consumer
 rights under your local laws which this license cannot change.
 To the extent permitted under your local laws, the contributors
 exclude all implied warranties, including those of
 merchantability, fitness for a particular purpose and
 non-infringement.

 4. (F) Platform Limitation- The licenses granted in sections
 2.A & 2.B extend only to the software or derivative works that
 you create that run on a Holograph system product.

 ***************************************************************

*/

pragma solidity 0.8.13;

/**
 * @title Initializable
 * @author https://github.com/holographxyz
 * @notice Use init instead of constructor
 * @dev This allows for use of init function to make one time initializations without the need of a constructor
 */
interface InitializableInterface {
  /**
   * @notice Used internally to initialize the contract instead of through a constructor
   * @dev This function is called by the deployer/factory when creating a contract
   * @param initPayload abi encoded payload to use for contract initilaization
   */
  function init(bytes memory initPayload) external returns (bytes4);
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 999999
  },
  "metadata": {
    "bytecodeHash": "none",
    "useLiteralContent": true
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "remappings": [
    "ds-test/=lib/forge-std/lib/ds-test/src/",
    "erc721a-upgradeable/=erc721a-upgradeable/",
    "forge-std/=lib/forge-std/src/"
  ],
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"adminCall","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"getAdmin","outputs":[{"internalType":"address","name":"adminAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTreasury","outputs":[{"internalType":"address","name":"treasury","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"data","type":"bytes"}],"name":"init","outputs":[{"internalType":"bytes4","name":"","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adminAddress","type":"address"}],"name":"setAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"treasury","type":"address"}],"name":"setTreasury","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

Deployed Bytecode

0x6080604052600436106100745760003560e01c8063704b6c021161004e578063704b6c02146101a4578063bf64a82d146101c4578063f0f44260146101d7578063f851a440146101f75761007b565b80633b19e84a146100c55780634ddf47d41461011f5780636e9960c3146101705761007b565b3661007b57005b7f4215e7a38d75164ca078bbd61d0992cdeb1ba16f3b3ead5944966d3e4080e8b6543660008037600080366000845af490503d6000803e8080156100be573d6000f35b3d6000fd5b005b3480156100d157600080fd5b507f4215e7a38d75164ca078bbd61d0992cdeb1ba16f3b3ead5944966d3e4080e8b6545b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561012b57600080fd5b5061013f61013a366004610892565b61020c565b6040517fffffffff000000000000000000000000000000000000000000000000000000009091168152602001610116565b34801561017c57600080fd5b507f3f106594dc74eeef980dae234cde8324dc2497b13d27a0c59e55bd2ca10a07c9546100f5565b3480156101b057600080fd5b506100c36101bf366004610937565b610515565b6100c36101d236600461095b565b6105ef565b3480156101e357600080fd5b506100c36101f2366004610937565b6106c5565b34801561020357600080fd5b506100f561079f565b60006102367f4e5f991bca30eca2d4643aaefa807e88f96a4a97398933d572a3c0d973004a015490565b156102a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f484f4c4f47524150483a20616c726561647920696e697469616c697a6564000060448201526064015b60405180910390fd5b600080838060200190518101906102b99190610a10565b91509150327f3f106594dc74eeef980dae234cde8324dc2497b13d27a0c59e55bd2ca10a07c955817f4215e7a38d75164ca078bbd61d0992cdeb1ba16f3b3ead5944966d3e4080e8b6556000808373ffffffffffffffffffffffffffffffffffffffff168360405160240161032e9190610a9d565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f4ddf47d400000000000000000000000000000000000000000000000000000000179052516103af9190610aee565b600060405180830381855af49150503d80600081146103ea576040519150601f19603f3d011682016040523d82523d6000602084013e6103ef565b606091505b509150915060008180602001905181019061040a9190610b0a565b905082801561045a57507fffffffff0000000000000000000000000000000000000000000000000000000081167f4ddf47d400000000000000000000000000000000000000000000000000000000145b6104c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f696e697469616c697a6174696f6e206661696c656400000000000000000000006044820152606401610299565b6104e960017f4e5f991bca30eca2d4643aaefa807e88f96a4a97398933d572a3c0d973004a0155565b507f4ddf47d4000000000000000000000000000000000000000000000000000000009695505050505050565b7f3f106594dc74eeef980dae234cde8324dc2497b13d27a0c59e55bd2ca10a07c95473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146105cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f484f4c4f47524150483a2061646d696e206f6e6c792066756e6374696f6e00006044820152606401610299565b7f3f106594dc74eeef980dae234cde8324dc2497b13d27a0c59e55bd2ca10a07c955565b7f3f106594dc74eeef980dae234cde8324dc2497b13d27a0c59e55bd2ca10a07c95473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146106a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f484f4c4f47524150483a2061646d696e206f6e6c792066756e6374696f6e00006044820152606401610299565b808260003760008082600034875af13d6000803e8080156100be573d6000f35b7f3f106594dc74eeef980dae234cde8324dc2497b13d27a0c59e55bd2ca10a07c95473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461077b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f484f4c4f47524150483a2061646d696e206f6e6c792066756e6374696f6e00006044820152606401610299565b7f4215e7a38d75164ca078bbd61d0992cdeb1ba16f3b3ead5944966d3e4080e8b655565b60006107c97f3f106594dc74eeef980dae234cde8324dc2497b13d27a0c59e55bd2ca10a07c95490565b905090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610844576108446107ce565b604052919050565b600067ffffffffffffffff821115610866576108666107ce565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b6000602082840312156108a457600080fd5b813567ffffffffffffffff8111156108bb57600080fd5b8201601f810184136108cc57600080fd5b80356108df6108da8261084c565b6107fd565b8181528560208385010111156108f457600080fd5b81602084016020830137600091810160200191909152949350505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461093457600080fd5b50565b60006020828403121561094957600080fd5b813561095481610912565b9392505050565b60008060006040848603121561097057600080fd5b833561097b81610912565b9250602084013567ffffffffffffffff8082111561099857600080fd5b818601915086601f8301126109ac57600080fd5b8135818111156109bb57600080fd5b8760208285010111156109cd57600080fd5b6020830194508093505050509250925092565b60005b838110156109fb5781810151838201526020016109e3565b83811115610a0a576000848401525b50505050565b60008060408385031215610a2357600080fd5b8251610a2e81610912565b602084015190925067ffffffffffffffff811115610a4b57600080fd5b8301601f81018513610a5c57600080fd5b8051610a6a6108da8261084c565b818152866020838501011115610a7f57600080fd5b610a908260208301602086016109e0565b8093505050509250929050565b6020815260008251806020840152610abc8160408501602087016109e0565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b60008251610b008184602087016109e0565b9190910192915050565b600060208284031215610b1c57600080fd5b81517fffffffff000000000000000000000000000000000000000000000000000000008116811461095457600080fdfea164736f6c634300080d000a

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
[ 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.