Abstract Testnet

Contract Diff Checker

Contract Name:
NotBULLrun

Contract Source Code:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;

contract NotBULLrun {
    function letNotBULLrun() public pure virtual returns (string memory) {
        return "Not BULLrun, Not BULLrun!!";
    }
}

// Uncomment this line to use console.log
// import "hardhat/console.sol";

contract Lock {
    uint public unlockTime;
    address payable public owner;

    event Withdrawal(uint amount, uint when);

    constructor(uint _unlockTime) payable {
        require(
            block.timestamp < _unlockTime,
            "Unlock time should be in the future"
        );

        unlockTime = _unlockTime;
        owner = payable(msg.sender);
    }

    function withdraw() public {
        // Uncomment this line, and the import of "hardhat/console.sol", to print a log in your terminal
        // console.log("Unlock time is %o and block timestamp is %o", unlockTime, block.timestamp);

        require(block.timestamp >= unlockTime, "You can't withdraw yet");
        require(msg.sender == owner, "You aren't the owner");

        emit Withdrawal(address(this).balance, block.timestamp);

         // Updated line to use call instead of transfer
        owner.call{value: address(this).balance}("");
    
    }
}

Please enter a contract address above to load the contract details and source code.

Context size (optional):