proc inplaceAdd(a: var IntObject; b: Digit) {....raises: [], tags: [], forbids: [].}
proc inplaceMul(a: var IntObject; b: Digit | uint8)
template demote(x: TwoDigits): Digit
template doMulImpl(result, b; loopVar, loopIter, src, dst)