/guava/android/guava/src/com/google/common/math/BigIntegerMath.java
sqrt0.multiply( BigInteger.valueOf( numeratorAccum) ).divide( BigInteger.valueOf( denominatorAccum) ) ;
accum .multiply ( BigInteger.valueOf ( numeratorAccum ) ) .divide ( BigInteger.valueOf ( denominatorAccum ) ) ;
int numeratorBits = bits; for (int i = 1; i < k; i++) { int p = n - i; int q = i + 1; if (numeratorBits + bits >= Long.SIZE - 1) { accum = <extra_id_0> numeratorAccum = p; denominatorAccum = q; numeratorBits = bits; } else { numeratorAccum *= p; denominatorAccum *= q;