anchor.diff:    Compact;
   end;
   
  +constructor BigInteger.Create(const Value: PAnsiChar);
  +begin
  +  if not TryParse(string(AnsiString(Value)), Self) then
  +    Error(ecParse, [string(AnsiString(Value)), 'BigInteger']);
  +end;
  +
  +constructor BigInteger.Create(const Value: PWideChar);
  +begin
  +  if not TryParse(Value, Self) then
  +    Error(ecParse, [Value, 'BigInteger']);
  +end;
  +
   // Bytes are considered to contain value in two's complement format.
   constructor BigInteger.Create(const Bytes: array of Byte);
   var
  
positive.code:     /// <summary>Creates a new BigInteger with the integer value of the specified Double.</summary>
      constructor Create(const Value: Double); overload;
  
      /// <summary>Creates a new BigInteger from the value in the byte array.
      /// The byte array is considered to be in two's complement.</summary>
      /// <remarks>This is the complementary function of ToByteArray</remarks>
  
negative.code:   Ten := ValueCache[10];
    FBase := 10;
    FRoundingMode := rmTruncate;
    FLog2 := System.Ln(2.0);
  {$IFNDEF PUREPASCAL}
    // See comments for BigInteger.InternalAddEmu.
    BigInteger.DetectPartialFlagsStall;
  {$ELSE}
    FInternalAdd := InternalAddPurePascal;
  