         screenSnapshot.removeFromSuperview()
     }
 }
+
+open class MotionTransitionPresentedAnimator: MotionTransition {
+    public override init() {
+        super.init()
+        isPresenting = true
+    }
+}
+
+open class MotionTransitionDismissedAnimator: MotionTransition {}
 
 open class MotionTransitionInteractiveAnimator: MotionTransitionInteractiveDelegate {
     open override func startInteractiveTransition(_ transitionContext: UIViewControllerContextTransitioning) {

        backgroundView.backgroundColor = fromView.backgroundColor
        backgroundView.frame = transitionView.bounds
        transitionView.addSubview(backgroundView)
        
        toView.updateConstraints()
        toView.setNeedsLayout()

        }
        
        presentedViewController.transitionCoordinator?.animate(alongsideTransition: { (context) in
            print("Animating")
        })
        
        print("dismissalTransitionWillBegin")
    }
    
    open override func dismissalTransitionDidEnd(_ completed: Bool) {
        print("dismissalTransitionDidEnd")
    }
    
    open override var frameOfPresentedViewInContainerView: CGRect {
