 
         let downloadTasks: [NSURLSessionDownloadTask]
 
+        typealias FinishedAction = NSData -> Void
+        let finishedActions: [FinishedAction]
+
+        var progress: [NSProgress]
+
         typealias ReportAction = Double -> Void
         let reportProgressAction: ReportAction?
-
-        typealias FinishedAction = NSData -> Void
-        let finishedActions: [FinishedAction]
-
-        //let progress: NSProgress = NSProgress(totalUnitCount: -1)
-        var progress: [NSProgress]
     }
 
 

            handleData(data, ofDownloadTask: downloadTask)
        }

        //reportProgress(1.0, ofDownloadTask: downloadTask)

        println("didFinishDownloadingToURL \(downloadTask.originalRequest.URL)")
    }


            }

            var progress = [NSProgress]()
            for _ in downloadTasks {
                progress.append(NSProgress())
            }

            let progressReporter = ProgressReporter(downloadTasks: downloadTasks, finishedActions: [attachmentFinishedAction, thumbnailFinishedAction], progress: progress, reportProgressAction: reportProgress)

            sharedDownloader.progressReporters.append(progressReporter)

            downloadTasks.map { $0.resume() }
        }
    }
}

