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

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

    
    public func pageViewController(_ pageViewController: UIPageViewController,
                                   willTransitionTo pendingViewControllers: [UIViewController]) {
        guard pageViewControllerIsActual(pageViewController) else { return }

        self.pageViewController(pageViewController,
                                willTransitionTo: pendingViewControllers,
                                animated: false)
