function withdrawBalance() external {
        address nftAddress = address(nonFungibleContract);

        require(
            msg.sender == owner ||
            msg.sender == nftAddress
        );
        
        uint256 balance = address(this).balance;
        nftAddress.transfer(balance);
    }