                     if self.sectionChanges.count > 0 {
                         // if sections have changed, reload to update supplementary views
                         self.collectionView?.reloadData()
-
-
-
                     }
 
                     self.sectionChanges.removeAll()

    private typealias SectionChangeTuple = (changeType: NSFetchedResultsChangeType, sectionIndex: Int)
    private var sectionChanges = [SectionChangeTuple]()

    private typealias ObjectIndexPaths = [NSIndexPath]
    private typealias ObjectChangesDictionary = [NSFetchedResultsChangeType : ObjectIndexPaths]


    private var objectChanges = [ObjectChangesDictionary]()

    private lazy var bridgedDelegate: BridgedFetchedResultsDelegate = BridgedFetchedResultsDelegate(
        willChangeContent: { [unowned self] (controller) -> Void in

public final class TableViewFetchedResultsDelegateProvider <
    Item,
    CellFactory: TableViewCellFactoryType
    where CellFactory.Item == Item> {

    // MARK: Properties

