    private let collectionTableViewDataSource = CollectionTableViewDataSource<CollectionCell>()
    private let collectionPreviewTableViewDataSource = CollectionTableViewDataSource<CollectionPreviewCell>()

    private var dataSource: UITableViewDataSource? {
        didSet {
            self.tableView.dataSource = dataSource
            self.tableView.reloadData()
        }
    }

    private var storeLayout: StoreLayout = .Basic {
        didSet {