ControlStructures

Description:

Smart contract deployed on Ethereum with Factory features.

Blockchain: Ethereum

Source Code: View Code On The Blockchain

Solidity Source Code:

{{
  "language": "Solidity",
  "sources": {
    "contracts/ControlStructures.sol": {
      "content": "// SPDX-License-Identifier: MIT
pragma solidity ^0.8.30;
import "./utils/UiProjectStamp.sol";
contract ControlStructures is UiProjectStamp {
    event FlagSet(address indexed by, bool enabled);
    event GatedAction(address indexed by);
    bool public flag;
    constructor(bytes32 u) UiProjectStamp(u) {}
    function setFlag(bool v) external { flag=v; emit FlagSet(msg.sender,v); }
    function gatedAction() external { require(flag, "flag off"); emit GatedAction(msg.sender); }
}
"
    },
    "contracts/utils/UiProjectStamp.sol": {
      "content": "// SPDX-License-Identifier: MIT
pragma solidity ^0.8.30;

abstract contract UiProjectStamp {
    bytes32 private immutable _BUILD_HASH;
    uint48  private immutable _BUILT_AT;
    uint16  private immutable _VARIANT;

    constructor(bytes32 uiLabelHash_) {
        bytes32 w = keccak256(abi.encode(block.chainid, msg.sender, uiLabelHash_));
        _BUILD_HASH = keccak256(abi.encode(w, address(this)));
        _BUILT_AT   = uint48(block.timestamp);
        _VARIANT    = uint16(uint256(_BUILD_HASH));
    }
    function project() public view returns (bytes32 buildHash, uint48 builtAt, uint16 variant) {
        return (_BUILD_HASH, _BUILT_AT, _VARIANT);
    }
}
"
    }
  },
  "settings": {
    "optimizer": {
      "enabled": true,
      "runs": 200
    },
    "evmVersion": "cancun",
    "outputSelection": {
      "*": {
        "*": [
          "evm.bytecode",
          "evm.deployedBytecode",
          "devdoc",
          "userdoc",
          "metadata",
          "abi"
        ]
      }
    }
  }
}}

Tags:
Factory|addr:0x8581398d72333c6aedc0cacacf5a78a9631ae5c1|verified:true|block:23471184|tx:0x6c6baa9fc92186898b324dd7cb0c8e3e52047372796486251730a8b1aeea972f|first_check:1759219799

Submitted on: 2025-09-30 10:09:59

Comments

Log in to comment.

No comments yet.