     }
     
     public func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
+        guard scrollViewIsActual(scrollView) else { return }
+        
         if self.autoScroller.cancelsOnScroll {
             self.autoScroller.cancel()
         }
     }
     
     public func scrollViewDidEndScrollingAnimation(_ scrollView: UIScrollView) {
+        guard scrollViewIsActual(scrollView) else { return }
+        
         self.scrollView(didEndScrolling: scrollView)
     }
     
     public func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
+        guard scrollViewIsActual(scrollView) else { return }
+        
         self.scrollView(didEndScrolling: scrollView)
     }
     
-    public func scrollViewWillEndDragging(_ scrollView: UIScrollView, withVelocity velocity: CGPoint, targetContentOffset: UnsafeMutablePointer<CGPoint>) {
+    public func scrollViewWillEndDragging(_ scrollView: UIScrollView,
+                                          withVelocity velocity: CGPoint,
+                                          targetContentOffset: UnsafeMutablePointer<CGPoint>) {
+        guard scrollViewIsActual(scrollView) else { return }
+        
         self.updateContentOffsetForBounceIfNeeded(scrollView: scrollView)
     }
     
     private func scrollView(didEndScrolling scrollView: UIScrollView) {
+        guard scrollViewIsActual(scrollView) else { return }
+        
         if self.autoScroller.restartsOnScrollEnd {
             self.autoScroller.restart()
         }

                                   didFinishAnimating finished: Bool,
                                   previousViewControllers: [UIViewController],
                                   transitionCompleted completed: Bool) {
        guard completed == true else { return }
        
        if let viewController = pageViewController.viewControllers?.first,

    // MARK: UIScrollViewDelegate
    
    public func scrollViewDidScroll(_ scrollView: UIScrollView) {
        guard scrollViewIsActual(scrollView) else { return }
        
        guard self.updateContentOffsetForBounceIfNeeded(scrollView: scrollView) == false else {
            return
        }
