                 let throwVelocity = max(velocityMag, velocityThreshold)
                 let directionVector = CGVector(dx: normalizedTrans.x*throwVelocity, dy: normalizedTrans.y*throwVelocity)
                 
-                swipeTopView(topView, direction: direction, location: location, directionVector: directionVector)
+                swipeTopView(topView, direction: directionSwiped, location: location, directionVector: directionVector)
 
 //                pushView(topView, fromPoint: location, inDirection: directionVector)
 //                removeFromViews(topView)
 //                didSwipe?(view: topView, inDirection: ZLSwipeableViewDirection.fromPoint(translation))
 //                loadViews()
-            } else {
+            }else {
                 snapView(topView, toPoint: convertPoint(center, fromView: superview))
                 didCancel?(view: topView)
             }

            unsnapView()
            attachView(topView, toPoint: location)
            swiping?(view: topView, atLocation: location, translation: translation)
        case .Ended, .Cancelled:
            detachView()
            let velocity = recognizer.velocityInView(self)
            let velocityMag = velocity.magnitude
            
            let directionChecked = ZLSwipeableViewDirection.fromPoint(translation) & direction != .None
            let signChecked = CGPoint.areInSameTheDirection(translation, p2: velocity)
            let translationChecked = abs(translation.x) > translationThreshold * bounds.width ||
                                     abs(translation.y) > translationThreshold * bounds.height

    static private let anchorViewWidth = CGFloat(1000)
    private var anchorView = UIView(frame: CGRect(x: 0, y: 0, width: anchorViewWidth, height: anchorViewWidth))
    private var anchorContainerView = UIView(frame: CGRect(x: 0, y: 0, width: 1, height: 1))
    
    func handleTap(recognizer: UITapGestureRecognizer) {
        let topView = recognizer.view!
        didTap?(view: topView)
    }
    
    func handlePan(recognizer: UIPanGestureRecognizer) {
        let translation = recognizer.translationInView(self)
