anchor.diff:  implementation
   
   uses
  +  System.Types,
     FIToolkit.Commons.Utils,
     FIToolkit.Logger.Consts;
   
  
positive.code: 
  procedure TAbstractLogger.AddOutput(const LogOutput : ILogOutput);
  begin
    if not FOutputs.Contains(LogOutput) then
      FOutputs.Add(LogOutput);
  end;
  
  constructor TAbstractLogger.Create;
  begin
    inherited Create;
  
    FOutputs := TList<ILogOutput>.Create;
  end;
  
  procedure TAbstractLogger.Debug(const Vals : array of const);
  
negative.code:   Output : ILogOutput;
  begin
    if Enabled then
      try
        for Output in Outputs.LockList do
          Action(Output);
      finally
        Outputs.UnlockList;
      end;
  end;
  
  procedure TBaseLogger.LeaveSection(const Msg : String);
  