                 
                 transition.transitionContext.completeTransition(true)
             }
-        }
-        
-        guard let useFinishingSpringOption = self.useFinishingSpringOption else {
-            return
         }
         
         if useFinishingSpringOption {

    var present: Bool = false
    var interactionInProgress: Bool = false

    private var transitionDurationPortrait: TimeInterval!
    private var transitionDurationLandscape: TimeInterval!
    private var transitionDuration: TimeInterval! {
        return UIDevice.current.orientation.isPortrait ? transitionDurationPortrait : transitionDurationLandscape
    }

    private var visibleContentWidthPortrait: CGFloat!
    private var visibleContentWidthLandscape: CGFloat!
    private var visibleContentWidth: CGFloat! {
        return UIDevice.current.orientation.isPortrait ? visibleContentWidthPortrait : visibleContentWidthLandscape
    }

    private var contentScalePortrait: CGFloat!
    private var contentScaleLandscape: CGFloat!
    private var scaleDiff: CGFloat! {
        return 1 - (UIDevice.current.orientation.isPortrait ? contentScalePortrait : contentScaleLandscape)
    }
    private var useFinishingSpringOption: Bool!
    private var useCancellingSpringOption: Bool!
    private var finishingSpringOption: SpringOption!
    private var cancelingSpringOption: SpringOption!
    private var animationOptions: UIViewAnimationOptions!
    
    private var presentAction: Action!
    private var dismissAction: Action!
    
    private var transitionShouldStarted = false
    private var transitionStarted = false

                
                transition.transitionContext.completeTransition(false)
            }
        }
        
        if useCancellingSpringOption {
