     
     /**
     * Scrub Slider Event Handler
+    * BUG: When the slider is dragged and released it sometimes momentarily jumps back to its starting point.
+    * I have verified that this is not because updateProgress was unfinished.  It seems like it must be a
+    * saved screen update.  I need to learn how to discard such when the
     */
-    func scrubSliderChanged(sender: UISlider) {//}, forEvent event: UIEvent) {
+    func scrubSliderChanged(sender: UISlider) {
         //print("scrub slider changed to \(sender.value)")
         if let verse = self.audioBible.getCurrentReference().audioChapter {
             self.verseNum = verse.findVerseByPosition(priorVerse: self.verseNum, seconds: Double(sender.value))

    */
    func updateProgress() {
        if self.scrubSliderDrag { return }
        
        if let item = self.audioBible.getPlayer()?.currentItem {
            if CMTIME_IS_NUMERIC(item.duration) {

            }
            let current = CMTimeGetSeconds(item.currentTime())
            self.scrubSlider.setValue(Float(current), animated: true)
            
            if let verse = self.audioBible.getCurrentReference().audioChapter {
                self.verseNum = verse.findVerseByPosition(priorVerse: self.verseNum,
                                                          seconds: Double(self.scrubSlider.value))
                self.verseLabel.text = String(describing: self.verseNum)
                self.verseLabel.center = positionVersePopup()
            }
        }
        //print("Finished progress \(CFAbsoluteTimeGetCurrent())")
    }
    private func positionVersePopup() -> CGPoint {
        let slider = self.scrubSlider
