         }
 
         let task = KingfisherManager.shared.retrieveImage(with: url, options: nil, progressBlock: progress, completionHandler: completion)
-        self.downloadTasks.setObject(task, forKey: photo)
+        self.retrieveImageTasks.setObject(task, forKey: photo)
     }
 
     func cancelLoad(for photo: PhotoProtocol) {
-        guard let downloadTask = self.downloadTasks.object(forKey: photo) else {
+        guard let downloadTask = self.retrieveImageTasks.object(forKey: photo) else {
             return
         }
 
         downloadTask.cancel()
-
     }
 
     func cancelAllLoads() {
-        let enumerator = self.downloadTasks.objectEnumerator()
+        let enumerator = self.retrieveImageTasks.objectEnumerator()
 
         while let downloadTask = enumerator?.nextObject() as? RetrieveImageTask {
             downloadTask.cancel()
         }
 
-        self.downloadTasks.removeAllObjects()
+        self.retrieveImageTasks.removeAllObjects()
     }
     
 }


    weak public var delegate: NetworkIntegrationDelegate?

    fileprivate var downloadTasks = NSMapTable<PhotoProtocol, RetrieveImageTask>(keyOptions: .strongMemory, valueOptions: .strongMemory)

    public func loadPhoto(_ photo: PhotoProtocol) {
        if photo.imageData != nil || photo.image != nil {

                return
            }

            self?.retrieveImageTasks.removeObject(forKey: photo)

            if let error = error {
                uSelf.delegate?.networkIntegration(uSelf, loadDidFailWith: error, for: photo)
            } else {
                if let image = image {
                    if let imageData = image.kf.gifRepresentation() {
                        photo.imageData = imageData
                    }
                    
                    photo.image = image
                }

