anchor.diff:      class procedure ConvertToFloatComponents(const Value: BigInteger; SignificandSize: Integer;
         var Sign: Integer; var Significand: UInt64; var Exponent: Integer); static;
       // Internal function comparing two magnitudes.
  -    class function InternalCompare(Left, Right: PLimb; LSize, RSize: Integer): Integer; static;
  +    class function InternalCompare(Left, Right: PLimb; LSize, RSize: Integer): Integer; static; {$IFDEF PUREPASCAL} inline; {$ENDIF}
       // Internal function and-ing two magnitudes.
       class procedure InternalAnd(Left, Right, Result: PLimb; LSize, RSize: Integer); static;
       // Internal function or-ing two magnitudes.
  
positive.code:   // return (s, r)
  end;
  
  class procedure BigInteger.DivThreeHalvesByTwo(
    const LeftUpperMid, LeftLower, Right, RightUpper, RightLower: BigInteger; N: Integer;
    var Quotient, Remainder: BigInteger);
  var
    Q, R: BigInteger;
  begin
    Q := BigInteger.Zero;
    R := BigInteger.Zero;
    if (LeftUpperMid shr N) = RightUpper then
  
negative.code:     // Divides a BigInteger by 3 exactly. BigInteger is guaranteed to be a positive multiple of 3.
      class function DivideBy3Exactly(const A: BigInteger): BigInteger; static;
      // Helper function for Burnikel-Ziegler division. See explanation in implementation section.
      class procedure DivThreeHalvesByTwo(const LeftUpperMid, LeftLower, Right, RightUpper: BigInteger;
        const {$IFDEF RIO64}[ref]{$ENDIF} RightLower: BigInteger;
        N: Integer; var Quotient, Remainder: BigInteger); static;
      // Helper function for Burnikel-Ziegler division.
      class procedure DivTwoDigitsByOne(const Left, Right: BigInteger; N: Integer;
  