                     0.33,
                     delay: 0,
                     options: UIViewAnimationOptions.CurveEaseInOut,
-                    animations: { () -> Void in
-                        self.swipeableView.frame = CGRectMake(swipableRect.origin.x,
+                    animations: { [weak self]() -> Void in
+                        self!.swipeableView.frame = CGRectMake(swipableRect.origin.x,
                             fadeAwayLine,
                             swipableRect.size.width,
                             swipableRect.size.height)
-                        self.swipeableView.alpha = 0.0
+                        self!.swipeableView.alpha = 0.0
                     }, completion:{ (finished: Bool) -> Void in
                         println("finished move and fade away")
                 } )

                fast enough for the swipe to work.
            */
            
            if ((-1.0 * swipableRect.origin.y < self.contentView.frame.size.height) && (velocity.y > -1500.0)) {
                UIView.animateWithDuration(0.5,
                    delay: 0,
                    usingSpringWithDamping: 0.42,
                    initialSpringVelocity: 0.0,
                    options: UIViewAnimationOptions.CurveEaseInOut,
                    animations: { () -> Void in
                        self.swipeableView.frame = self.contentView.frame
                        self.swipeableView.alpha = 1.0
                    }, completion: nil)
            } else {
                let fadeAwayLine = -1.0 * UIScreen.mainScreen().bounds.size.height / 1.5;

        panUpGestureRecognizer = UIPanGestureRecognizer(target: self, action: "didPanUp:");
        panUpGestureRecognizer?.delegate = self
        swipeableView!.image = UIImage(named: "derp.jpg")
        addGestureRecognizer(panUpGestureRecognizer!)
    }
    
    internal func didPanUp(gesture: UIGestureRecognizer) {
