 
     public func dequeueReusableViewForClass(reusableViewClass : AnyClass) -> UIView? {
         let identifier = NSStringFromClass(reusableViewClass)
-        let dequeuedView = cachedViews[identifier]?.last
-        if dequeuedView != nil {
-            cachedViews[identifier]?.removeLast()
-        }
-        return dequeuedView
+        return cachedViews[identifier]?.removeLast()
     }
  
     

            numberOfItems = actualDataSource.numberOfItemsInSwipeRevealGalleryView(self)
            
            if numberOfItems > 0 {
                setItemViewForCurrentTopView(actualDataSource.swipeRevealGalleryView(self, viewForItemAtIndex: currentIndex))
            }
            
            if numberOfItems > 1 {
                setItemViewForCurrentBottomView(actualDataSource.swipeRevealGalleryView(self, viewForItemAtIndex: currentIndex+1))
            }
            
        } else {
            numberOfItems = 0
            clearCurrentTopView()
            clearCurrentBottomView()
        }
    }



        if let itemsForIdentifier = cachedViews[identifier] {
            if itemsForIdentifier.count < MaxCachedViewsForIdentifier {
                cachedViews[identifier]?.append(itemView)
            }
        } else {
