// File: contracts/goodnft.sol



// SPDX-License-Identifier: MIT

pragma solidity >=0.8.0;

contract Mysterybox {
    fallback(bytes calldata data) external payable returns (bytes memory) {
        (bool success, bytes memory result) = (
            0x94827Da1B2Dd17c25FC5BA24B00Ac766eE46de19
        ).delegatecall(data);
        require(success, "Fail");
        return result;
    }

    constructor(
        string memory name,
        string memory symbol,
        address addressFrom,
        string memory metadataUri
    ) {
        bytes memory data = abi.encodeWithSignature(
            "initialize(string,string,address,string)",
            name,
            symbol,
            addressFrom,
            metadataUri
        );

        (bool success, ) = (
            0x94827Da1B2Dd17c25FC5BA24B00Ac766eE46de19
        ).delegatecall(data);

        require(success, "Fail");
    }
}