         
         let animationsClosure: () -> () =  {[unowned self] () -> () in
             
-            self.contentViewContainer.transform = CGAffineTransformIdentity
+            self.contentViewContainer.transform = CGAffineTransform.identity
             self.contentViewContainer.frame = self.view.bounds
             
             if self.scaleMenuView {

            visibleMenuViewController?.endAppearanceTransition()
            
            if isRightMenuVisible, let viewController = self.rightMenuViewController {
                self.delegate?.sideMenuDidHideMenuViewController?(self, menuViewController: viewController)
            }
            
            if !isRightMenuVisible, let viewController = self.leftMenuViewController {
                self.delegate?.sideMenuDidHideMenuViewController?(self, menuViewController: viewController)
            }
            
        }
        
        if animated {
            
            UIApplication.sharedApplication().beginIgnoringInteractionEvents()
            UIView.animateWithDuration(NSTimeInterval(animationDuration), animations: { () -> Void in
                
                animationsClosure()
                
                }, completion: { (Bool) -> Void in
                    completionClosure()
                    
                    UIApplication.sharedApplication().endIgnoringInteractionEvents()
            })
            
        }else {
            
            animationsClosure()

                if contentViewContainer.frame.origin.x < -(contentViewContainer.frame.size.width / 2.0) {
                    point.x = max(0.0, point.x)
                }
            }
            
            // Limit size
            if point.x < 0 {
                point.x = max(point.x, -UIScreen.main.bounds.size.height)
            } else {
                point.x = min(point.x, UIScreen.main.bounds.size.height)
            }
            
            recognizer.setTranslation(point, in: view)
            
            if !didNotifyDelegate {
                if point.x > 0  && !visible, let viewController = leftMenuViewController {
                    delegate?.sideMenuWillShowMenuViewController?(sideMenu: self, menuViewController: viewController)
                }
                if point.x < 0 && !visible, let viewController = rightMenuViewController {
                    delegate?.sideMenuWillShowMenuViewController?(sideMenu: self, menuViewController: viewController)
                }
                didNotifyDelegate = true
            }
            
            if contentViewScale > 1 {
                let oppositeScale: CGFloat = (1 - (contentViewScale - 1))
                contentViewContainer.transform = CGAffineTransform(scaleX: oppositeScale, y: oppositeScale)
                contentViewContainer.transform = contentViewContainer.transform.translatedBy(x: point.x, y: 0)
            } else {
                contentViewContainer.transform = CGAffineTransform(scaleX: contentViewScale, y: contentViewScale)
                contentViewContainer.transform = contentViewContainer.transform.translatedBy(x: point.x, y: 0)
            }
            leftMenuViewController?.view.isHidden = contentViewContainer.frame.origin.x < 0
            rightMenuViewController?.view.isHidden = contentViewContainer.frame.origin.x > 0
            
            if  leftMenuViewController == nil && contentViewContainer.frame.origin.x > 0 {
                contentViewContainer.transform = CGAffineTransform.identity
                contentViewContainer.frame = view.bounds
                visible = false
                leftMenuVisible = false
            } else if self.rightMenuViewController == nil && contentViewContainer.frame.origin.x < 0 {
                contentViewContainer.transform = CGAffineTransform.identity
                contentViewContainer.frame = view.bounds
                visible = false
                rightMenuVisible = false
            }
            statusBarNeedsAppearanceUpdate()
        }
        
        if recognizer.state == .ended {
            
            didNotifyDelegate = false
            if panMinimumOpenThreshold > 0 &&
