     
     // MARK: UINavigationControllerDelegate
     
-    public func navigationController(_ navigationController: UINavigationController, animationControllerFor operation: UINavigationControllerOperation, from fromVC: UIViewController, to toVC: UIViewController) -> UIViewControllerAnimatedTransitioning? {
+    public func navigationController(_ navigationController: UINavigationController, animationControllerFor operation: UINavigationController.Operation, from fromVC: UIViewController, to toVC: UIViewController) -> UIViewControllerAnimatedTransitioning? {
         if (isInteractivelyPopping && operation == .pop) {
             return interactivePopAnimator
         }

            }
        }
        else {
            options = UIViewAnimationOptions()
            duration = defaultCancelPopDuration
        }
        

        let maxToViewOffset = maxDistance * maxBackViewTranslationPercentage
        let resolvedToViewOffset = -maxToViewOffset
        let duration: TimeInterval
        let options: UIView.AnimationOptions
        
        if abs(velocity.x) > minimumThresholdVelocity {
            options = .curveEaseOut
