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

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

    }
    
    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>) {
        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()
        }
