     var popupView: PopView?
     var dismissAction: (() -> Void)?
     var mainAction: (() -> Void)?
-    var inAnimation: PopKitAnimation = .slideInTop
-    var outAnimation: PopKitAnimation = .slideInBottom
+    var inAnimation: PopKitAnimation = .slideTop
+    var outAnimation: PopKitAnimation = .slideBottom
     var backgroundEffect: PopKitBackgroundEffect = .blurLight
     var constraints: [PopKitConstaint] = [.edges(left: 0, right: 0, top: 0, bottom: 0)]
     

        let finalFrame = controller.frameOfPresentedViewInContainerView
        
        switch kit.inAnimation {
        case .slideInTop:
            initialFrame.origin.y = -presentedFrame.size.height
            animateSlideAndScale(transitionContext, controller, initialFrame, finalFrame)
        case .slideInLeft:
            initialFrame.origin.x = -presentedFrame.size.width
            animateSlideAndScale(transitionContext, controller, initialFrame, finalFrame)
        case .slideInRight:
            initialFrame.origin.x = presentedFrame.size.width
            animateSlideAndScale(transitionContext, controller, initialFrame, finalFrame)
        case .slideInBottom:
            initialFrame.origin.y = presentedFrame.size.height
            animateSlideAndScale(transitionContext, controller, initialFrame, finalFrame)
        case .zoomIn(let scale):

    var transitionDuration: TimeInterval? { get set }
}

protocol PopKitAnimator { }

extension PopKitAnimator where Self: UIViewControllerAnimatedTransitioning {
    
    func animateSlideAndScale(_ transitionContext: UIViewControllerContextTransitioning, _ controller: PopKitPresentationController, _ initialFrame: CGRect, _ finalFrame: CGRect) {
        let animationDuration = transitionDuration(using: transitionContext)
        controller.presentedViewController.view.frame = initialFrame
        UIView.animate(withDuration: animationDuration, animations: {
