anchor.diff:  
       Sum := UInt64(Left[3]) + (Sum shr 32);
       Result[3] := TLimb(Sum);
  +  {$ELSE}
  +    Sum := UInt32(PUInt16(Left)[0]) + (Sum shr 16);
  +    PUInt16(Result)[0] := UInt16(Sum);
  +
  +    Sum := UInt32(PUInt16(Left)[1]) + (Sum shr 16);
  +    PUInt16(Result)[1] := UInt16(Sum);
  +
  +    Sum := UInt32(PUInt16(Left)[2]) + (Sum shr 16);
  +    PUInt16(Result)[2] := UInt16(Sum);
  +
  +    Sum := UInt32(PUInt16(Left)[3]) + (Sum shr 16);
  +    PUInt16(Result)[3] := UInt16(Sum);
  +
  +    Sum := UInt32(PUInt16(Left)[4]) + (Sum shr 16);
  +    PUInt16(Result)[4] := UInt16(Sum);
  +
  +    Sum := UInt32(PUInt16(Left)[5]) + (Sum shr 16);
  +    PUInt16(Result)[5] := UInt16(Sum);
  +
  +    Sum := UInt32(PUInt16(Left)[6]) + (Sum shr 16);
  +    PUInt16(Result)[6] := UInt16(Sum);
  +
  +    Sum := UInt32(PUInt16(Left)[7]) + (Sum shr 16);
  +    PUInt16(Result)[7] := UInt16(Sum);
  +  {$ENDIF}
   
       Inc(Left, CUnrollIncrement);
       Inc(Result, CUnrollIncrement);
  
positive.code: 
  {$IFDEF PUREPASCAL}
  class procedure BigInteger.InternalAddPurePascal(Left, Right, Result: PLimb; LSize, RSize: Integer);
  {$IFDEF CPU64BITS}
  var
    I: Integer;
    PTemp: PLimb;
  
negative.code: begin
    Result := ToString(FBase);
  end;
  
  function BigInteger.ToString(Base: Integer): string;
  var
    WritePtr: PChar;
  