/guava/guava/src/com/google/common/math/BigIntegerMath.java
long normalizedNum = num | tz;
long normalizedNum = num >> tz;
for (long num = startingNumber; num <= n; num++) { if ((num & nextPowerOfTwo) != 0) { nextPowerOfTwo <<= 1; bits++; } int tz = Long.numberOfTrailingZeros(num); <extra_id_0> shift += tz; int normalizedBits = bits - tz; if (normalizedBits + productBits >= Long.SIZE) { bignums.add(BigInteger.valueOf(product)); product = 1; productBits = 0;