             self.setContentOffset(CGPointMake(currentOffset - jumpDistance, self.contentOffset.y), animated: false)
         }
 
-        manualFocusCell = NSIndexPath(forItem: jumpToFocusIndex!, inSection: 0)
         setNeedsFocusUpdate()
     }
     

        
        return rootDataSource.collectionView(collectionView, cellForItemAtIndexPath: NSIndexPath(forItem: adjustedIndex, inSection: 0))
    }
    public func indexPathForPreferredFocusedViewInCollectionView(collectionView: UICollectionView) -> NSIndexPath? {
        assert(collectionView === self)
        return manualFocusCell
    }
    
//    public func collectionView(_ collectionView: UICollectionView,
//        didUpdateFocusInContext context: UICollectionViewFocusUpdateContext,
//        withAnimationCoordinator coordinator: UIFocusAnimationCoordinator) {
//            
//    }
    
    override public func didUpdateFocusInContext(context: UIFocusUpdateContext, withAnimationCoordinator coordinator: UIFocusAnimationCoordinator) {
        guard jumpFromIndex != nil else {
            return
        }
        
        jumpFromIndex = nil
        
        let jumpDistance = CGFloat(count) * (cellWidth + interitemSpacing)
        let currentOffset = self.contentOffset.x

            return false
        }
        
        focusHeading = context.focusHeading
        
        if focusHeading == .Left && to.item < buffer {
            jump = true
            manualFocusCell = NSIndexPath(forItem: to.item + count, inSection: 0)
        }
        
        if focusHeading == .Right && to.item >= buffer + count {
            jump = true
            manualFocusCell = NSIndexPath(forItem: to.item - count, inSection: 0)
        }
        
        return true
    }
    
    func cellMetricsCached() -> Bool {
        return cellWidth != 0
