public void Dispose()
 {
     sourceEnumerator.Dispose();
     progress.Dispose();
 }