       self.transition(lightboxViewController, show: self.presentingViewController)
       }, completion: { _ in
         if transitionContext.transitionWasCancelled() {
-          UIView.animateWithDuration(Timing.transition/2, animations: { [unowned self] in
+          UIView.animateWithDuration(Timing.transition/3, animations: { [unowned self] in
             self.sourceViewCell.lightboxView.imageView.center = CGPointMake(
               UIScreen.mainScreen().bounds.width/2, UIScreen.mainScreen().bounds.height/2)
             self.transition(lightboxViewController, show: true)

class LightboxTransition: UIPercentDrivenInteractiveTransition {

  struct Timing {
    static let transition: NSTimeInterval = 0.5
  }

  lazy var panGestureRecognizer: UIPanGestureRecognizer = { [unowned self] in


  func transition(controller: LightboxController, show: Bool) {
    controller.view.backgroundColor = .blackColor()
    controller.view.alpha = show ? 1 : 0.9
    controller.collectionView.alpha = show ? 1 : 0.9
    lightboxController = controller

    if UIDevice.currentDevice().orientation != UIDeviceOrientation.LandscapeLeft
      && UIDevice.currentDevice().orientation != UIDeviceOrientation.LandscapeRight {
        if sourceViewCell != nil {
          self.sourceViewCell.lightboxView.imageView.center = CGPointMake(
            UIScreen.mainScreen().bounds.width/2, UIScreen.mainScreen().bounds.height/2)
