             default: break
             }
         }
-        
+
         if var dataRequest = progressAlamoRequest as? DataRequest {
             dataRequest = dataRequest.response(queue: queue, completionHandler: { handler in
                 let result = convertResponseToResult(handler.response, data: handler.data, error: handler.error)

            let sendProgress: () -> () = {
                progress?(ProgressResponse(totalBytes: totalBytesWritten, bytesExpected: totalBytesExpected))
            }
            
            if let queue = queue {
                queue.async(execute: sendProgress)
            } else {
                sendProgress()
            }
        }
        
        // Perform the actual request
        if let progress = progress {
            switch progressAlamoRequest {

                plugins.forEach { $0.didReceiveResponse(result, target: target) }
                completion(result)
            })

            if let dataRequest = dataRequest as? T {
                progressAlamoRequest = dataRequest
            }
