anchor.diff:          |]
       member this.progress progress = 
           async {
  -            let client:IDatabase = this.queue.client
  +            let client:IDatabase = this.queue.client()
               do! client.HashSetAsync (
                       this.queue.toKey(this.jobId.ToString ()), 
                       [| HashEntry (toValueStr "progress", toValueI32 progress) |]
                   ) |> Async.awaitPlainTask
  -            do! this.queue.emit(EventType.Progress, this, progress)
  +            do! this.queue.emitJobEvent(EventType.Progress, this, progress)
           }
       member this.remove () = async { raise (NotImplementedException ()) }
       member this.takeLock (token, ?renew) = async {
  
positive.code:         Failed = failedEvent.Publish
          Paused = pausedEvent.Publish
          Resumed = resumedEvent.Publish
      }
negative.code:         }
      member private this.isDone list =
          async {
              let client:IDatabase = this.queue.client()
              return! client.SetContainsAsync(this.queue.toKey(list), toValueI64 this.jobId) |> Async.AwaitTask
          }
      member this.moveToCompleted () = this.moveToSet("completed")
  