Make a triple withdraw because it's easy to understand for the user.
Technically instead of transfer the reward, make a note to some mapping, and then, the create function called getLockedReward() will just send the reward token of amount written in the mapping.