             countOfCards = Int(dataSource.koloda(kolodaNumberOfCards: self))
             
             if countOfCards - currentCardNumber > 0 {
-                
                 let countOfNeededCards = min(countOfVisibleCards, countOfCards - currentCardNumber)
                 
                 for index in 0..<countOfNeededCards {

    
    public func swipe(direction: SwipeResultDirection) {
        if !animating {
            
            if let frontCard = visibleCards.first {
                
                animating = true
                
                if visibleCards.count > 1 {

        }
        
        if !visibleCards.isEmpty {
            animateCardsAfterLoading { [weak self] in
                if let _self = self {
                    _self.visibleCards.last?.hidden = false
                    _self.animating = false
                    _self.delegate?.koloda(_self, didSwipedCardAtIndex: UInt(_self.currentCardNumber - 1), inDirection: direction)
                    _self.delegate?.koloda(_self, didShowCardAtIndex: UInt(_self.currentCardNumber))
                }
            }
        } else {
            animating = false
            delegate?.koloda(self, didSwipedCardAtIndex: UInt(self.currentCardNumber - 1), inDirection: direction)
            delegate?.koloda(kolodaDidRunOutOfCards: self)
        }
    }
    
    private func loadNextCard() {
