anchor.diff:      fFirstTick: cardinal;
       fPreviousTick: cardinal;
       fPreviousDate: TDateTime;
  +    // Enable thread safe mode (resource protection) when logging from multiple threads
  +    // Numeric value is used, instead of Boolean (or better LongBool), because we can set MutithreadLoggind from different threads / tasks / methods
  +    // Integer is used to be able to use AtomicIncrement method, which required 32bit values
  +    fMultithreadLogCounter: Integer;
   
       {$IFDEF KMR_GAME}
       fOnLogMessageList: TList<TUnicodeStringEvent>;
  
positive.code:     procedure AddLineTime(const aText: UnicodeString; aFlushImmidiately: Boolean = True); overload;
      procedure AddLineNoTime(const aText: UnicodeString; aWithPrefix: Boolean = True; aDoCloseFile: Boolean = True); overload;
      procedure AddLineNoTime(const aText: UnicodeString; aLogType: TKMLogMessageType; aWithPrefix: Boolean = True; aDoCloseFile: Boolean = True); overload;
    public
      MultithreadLogging: Boolean; // Enable thread safe mode (resource protection) when logging from multiple threads
      MessageTypes: TKMLogMessageTypeSet;
      constructor Create(const aPath: UnicodeString);
      destructor Destroy; override;
  
negative.code: //Lines are timestamped, each line invokes file open/close for writing,
  //meaning that no lines will be lost if Remake crashes
  procedure TKMLog.AddLineTime(const aText: UnicodeString; aLogType: TKMLogMessageType; aDoCloseFile: Boolean = True);
  var
    lockedHere: Boolean;
  begin
    if Self = nil then Exit;
  
  