     //  The function moveCardAtIndex(_:, direction:) moves the specified card of the index to the direction given
     //  (i.e. left or right).
     public func moveCardAtIndex(index: Int, toDirection direction: CardViewDirection) {
-        let cardView: EPCardView = self.cardViews[index]
+        let cardView: EPCardView = self.deck[index]
         
         switch direction {
         case .Right:

    private func calculateCardAlphas() {
        var tmpComputedCardAlphas: [CGFloat] = []
        
        for (i, _) in self.cardViews.enumerate() {
            var tmpCardAlpha = 1 - CGFloat(i) * self.deckViewAnimationManager.deckViewCardAlphaDelta
            
            if tmpCardAlpha > 1.0 {

                cardView.addSubview(leftButton)
            }
            
            self.deck.append(cardView)
        }
        
        self.applyCardViewsInitialTransformation()
        
        for var i=self.deck.count-1; i>=0; i-- {
            let cardView: EPCardView = self.deck[i]
            cardView.alpha = self.cardAlphas[i]
            self.addSubview(cardView)
        }
