     
     /// speed shoul be zero, when cancel or suspend
     
-    public func notifySpeedZeroCallbackZero(_ diggerSeed : DiggerSeed){
+    public func notifySpeedZeroCallback(_ diggerSeed : DiggerSeed){
         DispatchQueue.main.safeAsync {
             _ = diggerSeed.callbacks.map{ $0.speed?(0) }
 

                // If a task is cancelled, the temporary file will be deleted
                DiggerCache.removeItem(atPath: diggerSeed.tempPath)
                
                manager.removeDigeerSeed(for: diggerSeed.url)
            }
            
            diggerLog(error)
            
        case .success(let url) :
            
            manager.removeDigeerSeed(for: diggerSeed.url)
            diggerLog("download success \n" + url.absoluteString)
            
        }
        DispatchQueue.main.safeAsync {
            _ = diggerSeed.callbacks.map{ $0.completion?(result) }
        }
        notifySpeedZeroCallbackZero(diggerSeed)
        
        
        

            
            notifyCompletionCallback( Result.success(diggerSeed.cacheFileURL), diggerSeed)
            
        }
        
        diggerSeed.outputStream?.close()
