4c  g S            * U U 2 2 2    < :  <          R @$ @ InnerClassesBigIntegerToDoubleRounderSQRT2_PRECOMPUTE_THRESHOLDI ConstantValueRuntimeInvisibleAnnotations1Lcom/google/common/annotations/VisibleForTesting;SQRT2_PRECOMPUTED_BITSLjava/math/BigInteger;LN_10DLN_2ceilingPowerOfTwo.(Ljava/math/BigInteger;)Ljava/math/BigInteger;CodeLineNumberTableLocalVariableTablex$Lcom/google/common/annotations/Beta;floorPowerOfTwo isPowerOfTwo(Ljava/math/BigInteger;)Z StackMapTablelog21(Ljava/math/BigInteger;Ljava/math/RoundingMode;)I halfPowerx2 logX2FloormodeLjava/math/RoundingMode;logFloorlog10nextPownextCmphalfPowerSquared approxLog10 approxPow approxCmpfloorLogfloorPowfloorCmp/Lcom/google/common/annotations/GwtIncompatible;sqrtF(Ljava/math/BigInteger;Ljava/math/RoundingMode;)Ljava/math/BigInteger; sqrtFloorIntsqrtFloorIsExactZ halfSquare sqrtFloorsqrt0shiftsqrt1sqrtApproxWithDoubles roundToDouble1(Ljava/math/BigInteger;Ljava/math/RoundingMode;)Ddivide\(Ljava/math/BigInteger;Ljava/math/BigInteger;Ljava/math/RoundingMode;)Ljava/math/BigInteger;pqpDecLjava/math/BigDecimal;qDec factorial(I)Ljava/math/BigInteger;tz normalizedNumJnormalizedBitsnumn approxSizebignumsLjava/util/ArrayList;startingNumberproduct productBitsbitsnextPowerOfTwoLocalVariableTypeTable-Ljava/util/ArrayList; listProduct((Ljava/util/List;)Ljava/math/BigInteger;numsLjava/util/List;(Ljava/util/List; Signature@(Ljava/util/List;)Ljava/math/BigInteger;*(Ljava/util/List;II)Ljava/math/BigInteger;mstartendB(Ljava/util/List;II)Ljava/math/BigInteger;binomial(II)Ljava/math/BigInteger;ikaccumnumeratorAccumdenominatorAccum numeratorBits fitsInLong()Vthis'Lcom/google/common/math/BigIntegerMath; SourceFileBigIntegerMath.java-Lcom/google/common/annotations/GwtCompatible;emulated ^ s mn  s  !" #" $"java/math/BigInteger% &' () *" jk +,%com/google/common/math/BigIntegerMath ]^ - ./ 0java/lang/AssertionError k 123 u4 a` _` 5^ c 6c 78 9' : ;< c =" >^ ?cjava/lang/Double c"com/google/common/math/DoubleUtils @ ABC D EsF GH IJ Kjava/math/BigDecimal L M NO 9P QRS mTjava/lang/Long Ujava/util/ArrayList V WX m4 ?8 Y Z" [\k (%s) > n (%s) ]^ _) `A16a09e667f3bcc908b2fb1366ea957d3e3adec17512775099da2f590b0667322a a bDjava/lang/Object'com/google/common/math/BigIntegerMath$1?com/google/common/math/BigIntegerMath$BigIntegerToDoubleRounderZEROjava/math/RoundingModeCEILINGsetBitFLOOR$com/google/common/base/Preconditions checkNotNull&(Ljava/lang/Object;)Ljava/lang/Object;signum()IgetLowestSetBit bitLength(com/google/common/math/MathPreconditions checkPositive@(Ljava/lang/String;Ljava/math/BigInteger;)Ljava/math/BigInteger;!$SwitchMap$java$math$RoundingMode[IordinalcheckRoundingUnnecessary(Z)V shiftRight compareTo(Ljava/math/BigInteger;)Ipow longValue()Jcom/google/common/math/LongMath(JLjava/math/RoundingMode;)ITENmultiplyequals(Ljava/lang/Object;)ZcheckNonNegative(JLjava/math/RoundingMode;)JvalueOf(J)Ljava/math/BigInteger;intValueONEadd shiftLeft bigToDouble(Ljava/math/BigInteger;)Djava/lang/Math(D)D HALF_EVEN!com/google/common/math/DoubleMathroundToBigInteger1(DLjava/math/RoundingMode;)Ljava/math/BigInteger;INSTANCEALcom/google/common/math/BigIntegerMath$BigIntegerToDoubleRounder;-(Ljava/lang/Number;Ljava/math/RoundingMode;)D(Ljava/math/BigInteger;)VG(Ljava/math/BigDecimal;ILjava/math/RoundingMode;)Ljava/math/BigDecimal;toBigIntegerExact()Ljava/math/BigInteger;(Ljava/lang/String;I)I factorials[Jcom/google/common/math/IntMath(ILjava/math/RoundingMode;)I(IILjava/math/RoundingMode;)I(I)VnumberOfTrailingZeros(J)Ijava/util/Listsizeget(I)Ljava/lang/Object; checkArgument(ZLjava/lang/String;II)VbiggestBinomials(II)J(Ljava/lang/String;I)Vlog1RWXYZ[\]^[\_`a` bcd8*e=f g^[h icd8*eIf g^[h jkdX*W*** de NOf g^l@ mndl * W* d= +.07799HHH**`dN*-`*N- d6h``YeB\ ]^L`ScUgdlkmsnwopryz{~f>wo^p^qXg^rstXl! L B  B undg   * W* *+*ko=N-*6-N-*67-:*6!N6-:*66-:6 +.{/<<??RRR* `*::  `Yez)18=@HOW`hmpswfz `+v^h#wX"p^x^  g^ rs)yX1z^8{X|X}^~Xl5%  "@ @ C#  C[ d *!W**+"#*$M +.-99;;nnn,* ,,%>h*%,* 6, ,&',,':*, ,&'Ye>T`bgksf>g.X^g^rs^l+ 9 @ F  F [ cd `*= *)L4d~>*)z+L+*+'N+- +-L+*+'N-++e2  %.'<(D)F,H-V.^/f>^X`g^.2^XmX<$^l   [ cd8*,-./e4f g^[ d= 0*+1eNf g^ rs[ dy2Y*3N2Y+3:-,45eu vwf4^^rs  [ dZ67W8 8/#9h@;<8d/7>6{7?`6?`6dx6 7  i    x6  >6   {7  `6 d6`@,#@W 76 i7?`6 a7  ,#@W,A+ez*38AHO[go{f BX ; -Xsn X*X38XAHX[XgXoX 3l0Z <5 <dH **BCef   ddo!,F&*D *D *`D *D *`D *`D `|>*C*Ce $/Irxf*xXXX l  ( d 67WE7WFGzd<HH. I#&MB 7?666  U d6  `6 `?$,!##M B 76! iB i7`6 ,!##ez&*;DHKNX\ekq{}ff kFX q@X _XX XXH^K}NzXpX\lXl#@ <kdD* ?e f g^l @[d/*Jef dA! YKLMOPOe[ ZTSUV