             tableView.estimatedRowHeight = 44
             tableView.rowHeight = UITableViewAutomaticDimension
             tableView.sectionHeaderHeight = UITableViewAutomaticDimension
-            tableView.dataSource = self.dataSource
-            self.dataSource.tableView = tableView
+            tableView.dataSource = self.tableDataSource
+            self.tableDataSource.tableView = tableView
         }
     }
     

            CatalogItem(title: "Mutable") { MutableViewModel() },
            CatalogStaticItem(reuseIdentifier: "Editing")
        ]
        self.dataSource.dataSource.innerDataSource.value = StaticDataSource(items: items)
        self.dataSource.reuseIdentifierForItem = {
            _, item in
            if let item = item as? CatalogStaticItem {
                return item.reuseIdentifier


    @IBOutlet var tableView: UITableView?
    
    let tableDataSource = TableViewDataSource()

    override func awakeFromNib() {
        super.awakeFromNib()
