 }
 
 
-class CollectionViewCoordinator<CollectionType, DataSource: DataSourceProvider where DataSource.ItemType == CollectionType, DataSource.DataSourceDelegate == DataSourceProviderCollectionViewAdapter<CollectionType>> : NSObject, UICollectionViewDataSource {
+public class CollectionViewCoordinator<CollectionType, DataSource: DataSourceProvider where DataSource.ItemType == CollectionType, DataSource.DataSourceDelegate == DataSourceProviderCollectionViewAdapter<CollectionType>> : NSObject, UICollectionViewDataSource {
     
     let collectionView: UICollectionView
     

    }
    
    
    func providerDidInsertSectionAtIndex(index: Int) {
        
        let change = (DataSourceChangeType.Insert, index)
        
        sectionChanges.append(change)
    }
    
    func providerDidDeleteSectionAtIndex(index: Int) {
        
        let change = (DataSourceChangeType.Delete, index)
        

        self.objectChanges.removeAll(keepCapacity: true)
    }
    
    public func shouldReloadCollectionViewToPreventKnownIssue() -> Bool {
        
        var shouldReload: Bool = false
        
