anchor.diff:    AbSpanSt,
     AbDfBase,
     AbConst;
  -const
  -  CRLF = #13 + #10;
  -  ProcessTypeToLogType : array[TAbProcessType] of TAbLogType =
  -    (ltAdd, ltDelete, ltExtract, ltFreshen, ltMove, ltReplace, ltFoundUnhandled);
  -
  -
   
   
   { TAbArchiveItem implementation ============================================ }
  
positive.code: end;
  { -------------------------------------------------------------------------- }
  procedure TAbArchive.MakeLogEntry(const FN: string; LT : TAbLogType);
  var
    Buf : array[0..255] of Char;
  begin
    if Assigned(FLogStream) then begin
      case LT of
        ltAdd     : StrPCopy(Buf, FN + AbStrRes(AbLtAdd) +
          DateTimeToStr(Now) + CRLF);
        ltDelete  : StrPCopy(Buf, FN + AbStrRes(AbLtDelete) +
          DateTimeToStr(Now) + CRLF);
        ltExtract : StrPCopy(Buf, FN + AbStrRes(AbLtExtract) +
          DateTimeToStr(Now) + CRLF);
        ltFreshen : StrPCopy(Buf, FN + AbStrRes(AbLtFreshen) +
          DateTimeToStr(Now) + CRLF);
        ltMove    : StrPCopy(Buf, FN + AbStrRes(AbLtMove) +
          DateTimeToStr(Now) + CRLF);
        ltReplace : StrPCopy(Buf, FN + AbStrRes(AbLtReplace) +
          DateTimeToStr(Now) + CRLF);
        ltStart   : StrPCopy(Buf, FN + AbStrRes(AbLtStart) +
          DateTimeToStr(Now) + CRLF);
        ltFoundUnhandled : StrPCopy(Buf, FN + AbStrRes(AbUnhandledEntity) +
          DateTimeToStr(Now) + CRLF);
      end;
      FLogStream.Write(Buf, StrLen(Buf));
    end;
  end;
  { -------------------------------------------------------------------------- }
  
negative.code: { -------------------------------------------------------------------------- }
  procedure TAbArchive.DoConfirmProcessItem(Item : TAbArchiveItem;
    const ProcessType : TAbProcessType; var Confirm : Boolean);
  const
    ProcessTypeToLogType : array[TAbProcessType] of TAbLogType =
      (ltAdd, ltDelete, ltExtract, ltFreshen, ltMove, ltReplace, ltFoundUnhandled);
  begin
    Confirm := True;
    if Assigned(FOnConfirmProcessItem) then
  