public void MulPow5(int c5) {
AssertValid();
Debug.Assert(c5 >= 0);
const uint C5to13 = 1220703125;
int cu = (c5 + 12) / 13;
if (0 == length || 0 == c5) {
return;
}
Ensure(length + cu);
for ( ; c5 >= 13; c5 -= 13) {
MulAdd(C5to13, 0);
}
if (c5 > 0) {
uint uT;
for (uT = 5; --c5 > 0; ) {
uT *= 5;
}
MulAdd(uT, 0);
}
AssertValid();
}