 class FriendsDataSource: TableDataSource {
   var cells = [CellInfo]()
 
+  var selectedFriends = [String]()
+
   func reload(completion: @escaping () -> Void) {
     if cells.isEmpty {
       Facebook.getTaggableFriends(limit: .none) { (friend) in
-        self.cells.append(FriendCellInfo(name: friend.display_name,
-                          picture: friend.picture_url, selected: false))
+        self.cells.append(FriendCellInfo(fbid: friend.fbid,
+                                         name: friend.display_name,
+                                         picture: friend.picture_url))
         onMain {
           completion()
         }

  func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell,
                 forRowAt indexPath: IndexPath) {
    let cellInfo = dataSource.cells[safe: indexPath.row] as! FriendCellInfo
    cell.accessoryType = cellInfo.selected ? .checkmark : .none
  }

  func tableView(_ tableView: UITableView, willSelectRowAt indexPath: IndexPath)

  func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath)
      -> UITableViewCell {
    guard
      let cellInfo = dataSource.cells[safe: indexPath.row] as? FriendCellInfo,
      let cell =
          tableView.dequeueReusableCell(withIdentifier: cellInfo.cellIdentifier,
                                        for: indexPath)
