 				) { _ in
 					self.removeShadow(&self.leftViewContainer)
 					self.isUserInteractionEnabled = true
-					self.leftViewController?.endAppearanceTransition()
 				}
 				c.state = .Closed
 				delegate?.sideNavDidCloseLeftViewContainer?(self, container: c)

		prepareContainedViewController(&mainViewContainer, viewController: &mainViewController)
		prepareContainedViewController(&leftViewContainer, viewController: &leftViewController)
		prepareContainedViewController(&rightViewContainer, viewController: &rightViewController)
	}
	
	//
	//	:name:	viewWillTransitionToSize
	//
    public override func viewWillTransitionToSize(size: CGSize, withTransitionCoordinator coordinator: UIViewControllerTransitionCoordinator) {
        super.viewWillTransitionToSize(size, withTransitionCoordinator: coordinator)
        mainViewContainer?.transform = CGAffineTransformMakeScale(1, 1)
        leftViewContainer?.hidden = true
        rightViewContainer?.hidden = true
        coordinator.animateAlongsideTransition(nil) { _ in
			self.toggleWindow()
			self.backdropViewContainer?.layer.opacity = 0
			self.mainViewContainer?.transform = CGAffineTransformMakeScale(1, 1)
			self.isUserInteractionEnabled = true
			
			if let vc = self.leftViewContainer {
				vc.frame.origin.x = self.leftOriginX
				vc.hidden = false
				self.removeShadow(&self.leftViewContainer)
				self.prepareLeftGestures()
			}
			
			if let vc = self.rightViewContainer {
				vc.frame.origin.x = self.rightOriginX
				vc.hidden = false
				self.removeShadow(&self.rightViewContainer)
				self.prepareRightGestures()
			}
        }
    }
	
	/**
		:name:	toggleLeftViewContainer
	*/

					}
				) { _ in
					self.isUserInteractionEnabled = false
				}
				c.state = .Opened
				delegate?.sideNavDidOpenRightViewContainer?(self, container: c)
			}
		}
	}
    
    /**
    :name:	openRightViewContainer
    */
    public func openBottomViewContainer(velocity: CGFloat = 0) {
        if let vc = bottomViewContainer {
            if let c = bottomContainer {
                prepareContainerToOpen(&bottomViewController, viewContainer: &bottomViewContainer, state: c.state)
                UIView.animateWithDuration(Double(0 == velocity ? options.animationDuration : fmax(0.1, fmin(1, Double(fabs(vc.frame.origin.y - bottomOriginY) / velocity)))),
                    delay: 0,
                    options: .CurveEaseInOut,
                    animations: { _ in
                        vc.frame.origin.y = self.bottomOriginY - vc.frame.size.height
                        self.backdropViewContainer?.layer.opacity = Float(options.contentViewOpacity)
                        self.mainViewContainer?.transform = CGAffineTransformMakeScale(options.contentViewScale, options.contentViewScale)
                    }
                    ) { _ in
                        self.isUserInteractionEnabled = false
                }
                c.state = .Opened
                delegate?.sideNavDidOpenRightViewContainer?(self, container: c)
            }
        }
    }
	
	/**
		:name:	closeLeftViewContainer
