   var blurEffectView: UIVisualEffectView!
   
   var tweetTableView: UITableView!
+  var photosTableView: UITableView!
+  var favoritesTableView: UITableView!
   
   var segmentedControl: UISegmentedControl!
   

    self.segmentedControlContainer.frame = self.computeSegmentedControlContainerFrame()
    
    self.tweetTableView.frame = self.computeTableViewFrame(tableView: tweetTableView)
    
    self.mainScrollView.contentSize = CGSize(
      width: view.bounds.width,
      height: stickyheaderContainerViewHeight + profileHeaderViewHeight + segmentedControlContainer.bounds.height + tweetTableView.bounds.height)
    
    self.mainScrollView.scrollIndicatorInsets = computeMainScrollViewIndicatorInsets()
  }

// MARK: UITableViewDelegates & DataSources
extension TwitterProfileViewController: UITableViewDelegate, UITableViewDataSource {
  func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    switch tableView {
    case self.tweetTableView:
      return 30
    case self.photosTableView:
      return 10
    case self.favoritesTableView:
      return 0
    default:
      return 10
    }
  }
  
  func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    switch tableView {
    case self.tweetTableView:
      let cell = tableView.dequeueReusableCell(withIdentifier: "tweetCell", for: indexPath)
      cell.textLabel?.text = "Row \(indexPath.row)"
      return cell
      
    case self.photosTableView:
      let cell = tableView.dequeueReusableCell(withIdentifier: "photoCell", for: indexPath)
      cell.textLabel?.text = "Photo \(indexPath.row)"
      return cell
      
    case self.favoritesTableView:
      let cell = tableView.dequeueReusableCell(withIdentifier: "favCell", for: indexPath)
      cell.textLabel?.text = "Fav \(indexPath.row)"
      return cell
      
    default:
      return UITableViewCell()
    }
  }
}

