anchor.diff:        // Use _am to combine the multiply-shift-add into one call.
         j = i + _m._used;
         var digit = x._digits[j];
  -      digit += _m ._am(0, u0, x, i, 0, _m ._used);
  -      // propagate carry
  +      digit += _m ._am(0, u0, x, i, _m._used);
  +      // Propagate carry.
         while (digit >= _Bigint.DIGIT_BASE) {
           digit -= _Bigint.DIGIT_BASE;
           x._digits[j++] = digit;
  
positive.code:     return result._toValidInt();
    }
  
    int pow(int exponent) {
      throw "Bigint.pow not implemented";
    }
  
    // Overriden operators and methods.
  
    // The following operators override operators of _IntegerImplementation for
  
negative.code:       }
      }
      if (r._used > 0) {
        r._digits[r._used - 1] += _am(i, _digits[i], r, 2*i, 1);
      }
      r._neg = false;
      r._clamp();
  