                     if let drop = drop { drop.layoutIfNeeded() }
                 }, completion: nil
             )
-            up(drop, after: 4.0)
         }
     }
     

                pan.setTranslation(CGPointZero, inView: window)
            }
        case .Ended:
            removable = true
            if topConstraint.constant > 0.0 {
                Drop.up(self, after: 0.0, interval: 0.1)
            } else {
                Drop.up(self, after: 2.0)
                topConstraint.constant = 0.0
                UIView.animateWithDuration(
                    NSTimeInterval(0.1),

    func pan(sender: AnyObject) {
        let pan = sender as! UIPanGestureRecognizer
        switch pan.state {
        case .Began:
            upTimer?.invalidate()
            upTimer = nil
        case .Changed:
            if let window = Drop.window() {
                let point = pan.translationInView(window)
                let location = pan.locationInView(window)
                
