Description
The PowerToken._divideUp function checks if a result of a multiplication "wrapped" around the maximum number, i.e. if it silently overflowed:
z = (x * ONE) + y;
if (z < x) revert DivideUpOverflow();Because calculation of z is not unchecked, the condition z < x will never be true, since solidity 0.8 checks and reverts on overflow.
Recommendation
Remove the line checking the z < x condition.
Status
Acknowledged