diff --git a/contracts/libraries/math/MathUtils.sol b/contracts/libraries/math/MathUtils.sol index 662ef7c3..e929e57c 100644 --- a/contracts/libraries/math/MathUtils.sol +++ b/contracts/libraries/math/MathUtils.sol @@ -26,9 +26,7 @@ library MathUtils { //solium-disable-next-line uint256 timeDifference = block.timestamp.sub(uint256(lastUpdateTimestamp)); - uint256 timeDelta = timeDifference.wadToRay().rayDiv(SECONDS_PER_YEAR.wadToRay()); - - return rate.rayMul(timeDelta).add(WadRayMath.ray()); + return (rate.mul(timeDifference) / SECONDS_PER_YEAR).add(WadRayMath.ray()); } /** diff --git a/test/helpers/utils/calculations.ts b/test/helpers/utils/calculations.ts index 46623a62..7bffad2d 100644 --- a/test/helpers/utils/calculations.ts +++ b/test/helpers/utils/calculations.ts @@ -1153,11 +1153,12 @@ const calcLinearInterest = ( currentTimestamp: BigNumber, lastUpdateTimestamp: BigNumber ) => { - const timeDifference = currentTimestamp.minus(lastUpdateTimestamp).wadToRay(); + const timeDifference = currentTimestamp.minus(lastUpdateTimestamp); - const timeDelta = timeDifference.rayDiv(new BigNumber(ONE_YEAR).wadToRay()); - - const cumulatedInterest = rate.rayMul(timeDelta).plus(RAY); + const cumulatedInterest = rate + .multipliedBy(timeDifference) + .dividedBy(new BigNumber(ONE_YEAR)) + .plus(RAY); return cumulatedInterest; };