Precision loss due to division before multiplication
Here inside function getPenalizedUnderlying while calculating redeem value, in the formula division (by totalUsdNeeded) is performed first before multiplication (by amount) which could result in precision loss in the calculation of redeem.
calculation of lesser redeem value than actual.
Manual
redeem = underlyingAmount.mul(s.recapitalized).mul(amount).div(totalUsdNeeded).div(supply);
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.