Two tokens are used as collateral: USDC and the UPFI share token (UPS). When a user mints UPFI by depositing USDC and UPS, the USDC is locked in the protocol, and the deposited UPS is burnt. When a user redeems UPFI for the underlying collateral, the user gets their deposited USDC back, and the protocol mints UPS. This dual-collateral design along with the redemption mechanism helps to keep the price of UPFI stable.