anchor.diff:      fOnMapAdd: TMapEvent;
       fOnMapAddDone: TNotifyEvent;
     public
  -    constructor Create(aMultiplayerPath: Boolean; aOnMapAdd: TMapEvent; aOnMapAddDone: TNotifyEvent);
  +    constructor Create(aMultiplayerPath: Boolean; aOnMapAdd: TMapEvent; aOnMapAddDone, aOnComplete: TNotifyEvent);
       procedure MapAddDone;
       procedure Execute; override;
     end;
  
positive.code: { TTScanner }
  //aOnMapAdd - signal that there's new map that should be added
  //aOnMapAddDone - signal that map has been added. Can safely call main thread methods since it's executed in Synchronize
  constructor TTScanner.Create(aMultiplayerPath: Boolean; aOnMapAdd: TMapEvent; aOnMapAddDone: TNotifyEvent);
  begin
    inherited Create(True);
    Assert(Assigned(aOnMapAdd));
  
    fMultiplayerPath := aMultiplayerPath;
    fOnMapAdd := aOnMapAdd;
    fOnMapAddDone := aOnMapAddDone;
    FreeOnTerminate := False;
  end;
  
  
  
negative.code: 
    fOnRefresh := aOnRefresh;
  
    //Scan will launch upon create automatcally
    fScanning := True;
    fScanner := TTScanner.Create(fMultiplayerPath, MapAdd, MapAddDone, ScanComplete);
  end;
  
  
  