             let snapshot = from.transitionSnapshot(afterUpdates: true)
             transitionView.addSubview(snapshot)
             
-            Motion.delay(motionDelay(animations: to.motionAnimations)) { [weak self, weak to] in
+            Motion.delay(motionDelay(animations: to.motionAnimations) + (isContainer ? 0.2 : 0)) { [weak self, weak to] in
                 guard let s = self else {
                     return
                 }


extension Motion {
    fileprivate func cleanupAnimation() {
        Motion.delay(transitionDuration(using: transitionContext) + modifiedDelay) { [weak self] in
            guard let s = self else {
                return
            }

    
    @objc(navigationController:animationControllerForOperation:fromViewController:toViewController:)
    open func navigationController(_ navigationController: UINavigationController, animationControllerFor operation: UINavigationControllerOperation, from fromVC: UIViewController, to toVC: UIViewController) -> UIViewControllerAnimatedTransitioning? {
        return fromVC.isMotionEnabled ? Motion(isPresenting: operation == .push, isContainer: true) : nil
    }
}

extension UITabBarController: UITabBarControllerDelegate {
    open func tabBarController(_ tabBarController: UITabBarController, animationControllerForTransitionFrom fromVC: UIViewController, to toVC: UIViewController) -> UIViewControllerAnimatedTransitioning? {
        return fromVC.isMotionEnabled ? Motion(isPresenting: true, isContainer: true) : nil
    }
}

