anchor.diff:      function Count : integer;
     end;
   
  -  TDoJobProcedure = procedure (aProgress: ImProgress; aJobResult : TJobResult) of object;
  +  TDoJobProcedure = procedure (aProgress: ImProgress; aData: TObject; aJobResult : TJobResult) of object;
     TOnEndJobCallback = procedure (const aJobsResult : TJobResults) of object;
   
     TmJob = class
  
positive.code:   if (not Terminated) then
    begin
      try
        FJob.DoJobProcedure (FProgress, FJobResult);
        Self.FProgress.Close;
      except
        on e:Exception do
  
negative.code:   FJobs := TObjectList.Create (true);
    FThreads := TObjectList.Create(true);
    FCanDieEvents := TObjectList.Create(true);
    FJobsRunning := TIntegerList.Create;
    FMaxConcurrentThreads:= MAX_CONCURRENT_THREADS_LIMIT;
  end;
  
  destructor TControlThread.Destroy;
  