anchor.diff:    end;
   end;
   
  -procedure TLogWriter.Info(const aMessage, aTag: string);
  -begin
  -  Log(TLogType.Info, aMessage, aTag);
  -end;
  -
  -procedure TLogWriter.Info(const aMessage: string; const aParams: array of TVarRec; const aTag: string);
  -begin
  -  Log(TLogType.Info, aMessage, aParams, aTag);
  -end;
  -
  -procedure TLogWriter.InfoFmt(const aMessage: string; const aParams: array of TVarRec; const aTag: string);
  -begin
  -  Info(aMessage, aParams, aTag);
  -end;
  -
  -procedure TLogWriter.Log(const aType: TLogType; const aMessage, aTag: string);
  +procedure TCustomLogWriter.Initialize(const aEventsHandler: TLoggerProEventsHandler);
  +begin
  +  FLoggerThread := TLoggerThread.Create(FLogAppenders);
  +
  +  FLoggerThread.EventsHandlers := aEventsHandler;
  +  FLoggerThread.Start;
  +end;
  +
  +procedure TCustomLogWriter.Log(const aType: TLogType; const aMessage, aTag: string);
   var
     lLogItem: TLogItem;
   begin
  
positive.code:     procedure Error(const aMessage: string; const aParams: array of TVarRec; const aTag: string); overload;
      procedure ErrorFmt(const aMessage: string; const aParams: array of TVarRec; const aTag: string);
  
      procedure Log(const aType: TLogType; const aMessage: string; const aTag: string); overload;
      procedure Log(const aType: TLogType; const aMessage: string; const aParams: array of const; const aTag: string); overload;
      procedure LogFmt(const aType: TLogType; const aMessage: string; const aParams: array of const; const aTag: string);
    end;
  
negative.code:   Log(aType, aMessage, aParams, aTag);
  end;
  
  
  procedure TLogWriter.Warn(const aMessage, aTag: string);
  begin
  