Function: redeem(uint256 _amount)
This function is for redeeming.
Inputs
_amount
Control: Completely controlled by the caller.
Constraints: The caller must have enough USDz to burn.
Impact: Amount to redeem.
Branches and code coverage
Intended branches
Burn the given amount of the USDz.
Transfer the proper amount of the USDC.
Negative behavior
Revert when the reserved USD is smaller than the given amount.
Revert when the given amount is zero.
Revert when the caller is blacklisted.