     let refreshView: UIView
     var action: (() -> ())?
     
-    var observes = false
+    private var isObserving = false
     
     private let animator: RefreshViewAnimator
     

        scrollView.removeObserver(self, forKeyPath: contentSizeKeyPath, context: &KVOContext)
        scrollView.removeObserver(self, forKeyPath: contentInsetKeyPath, context: &KVOContext)
      
    }
}


    }
    
    private func addScrollViewObserving() {
        guard let scrollView = scrollView where !isObserving else {
            return
        }
        
        scrollView.addObserver(self, forKeyPath: contentOffsetKeyPath, options: .Initial, context: &KVOContext)
        scrollView.addObserver(self, forKeyPath: contentSizeKeyPath, options: .Initial, context: &KVOContext)
        scrollView.addObserver(self, forKeyPath: contentInsetKeyPath, options: .New, context: &KVOContext)
      
        isObserving = true
    }
    
    private func removeScrollViewObserving() {
        guard let scrollView = scrollView where isObserving else {
            return
        }
        
