     func startDataTask(_ task: ImageTask,
                        callbackQueue: DispatchQueue?,
                        progress progressHandler: ((_ completed: Int64, _ total: Int64) -> Void)?,
-                       completion: @escaping (Result<(data: Data, response: URLResponse?), ImagePipeline.Error>) -> Void) {
+                       completion: @escaping (Result<(data: Data, response: URLResponse?), Error>) -> Void) {
         guard !isInvalidated else { return }
 
         tasks[task] = makeTaskLoadImageData(for: task.request)

            }
    }

    func makeTaskDecodeImage(for request: ImageRequest) -> Task<ImageResponse, ImagePipeline.Error>.Publisher {
        originalImageTasks.publisherForKey(request.makeLoadKeyForOriginalImage()) {
            TaskDecodeImage(self, request)
        }
    }

    func makeTaskLoadImageData(for request: ImageRequest) -> Task<(Data, URLResponse?), ImagePipeline.Error>.Publisher {
        originalImageDataTasks.publisherForKey(request.makeLoadKeyForOriginalImage()) {
            TaskLoadImageData(self, request)
        }

    public func loadImage(with request: ImageRequestConvertible,
                          queue: DispatchQueue? = nil,
                          progress: ((_ intermediateResponse: ImageResponse?, _ completedUnitCount: Int64, _ totalUnitCount: Int64) -> Void)? = nil,
                          completion: ((_ result: Result<ImageResponse, Error>) -> Void)? = nil) -> ImageTask {
        loadImage(with: request.asImageRequest(), isConfined: false, queue: queue, progress: progress, completion: completion)
    }

