 	}
 	
 	func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
-        print("[FreshTab] cellForItemAtIndexPath -> row: \(indexPath.row)")
 		let cell = collectionView.dequeueReusableCellWithReuseIdentifier("TopSite", forIndexPath: indexPath) as! TopSiteViewCell
 		cell.tag = -1
 		cell.delegate = self

	}

	private func loadTopSitesWithLimit(limit: Int) -> Success {
        print("[FreshTab] loadTopSitesWithLimit")
		return self.profile.history.getTopSitesWithLimit(limit).bindQueue(dispatch_get_main_queue()) { result in
			//var results = [[String: String]]()
			if let r = result.successValue {

	}

    @objc private func cancelActions(sender: UITapGestureRecognizer) {
		if !isForgetMode {
			self.removeDeletedTopSites()
			
			// fire `didSelectRowAtIndexPath` when user click on a cell in news table
			let p = sender.locationInView(self.newsTableView)
			if let selectedIndex = self.newsTableView.indexPathForRowAtPoint(p) {
				self.tableView(self.newsTableView, didSelectRowAtIndexPath: selectedIndex)
			}
		}
		
	}
    
    private func removeDeletedTopSites(){
        
		if let cells = self.topSitesCollection?.visibleCells() as? [TopSiteViewCell] {
			for cell in cells {
				cell.isDeleteMode = false
			}
			
			self.topSitesIndexesToRemove.sortInPlace{a,b in a > b} //order in descending order to avoid index mismatches
			for index in self.topSitesIndexesToRemove {
				self.topSites.removeAtIndex(index)
			}
			
			self.topSitesIndexesToRemove.removeAll()
			self.topSitesCollection?.reloadData()
		}
    }

	private func constructForgetModeView() {
