 	private var expandedNodes = [Node]()
 	private var shadowTable = [[Node]]()
 	private var lastSearchString = ""
+	private var isSearching: Bool = false
 	
 	private(set) var sortDirection = AppDefaults.timelineSortDirection {
 		didSet {

	
	var timelineFetcher: ArticleFetcher? {
		didSet {
			currentArticleIndexPath = nil
			if timelineFetcher is Feed {
				showFeedNames = false
			} else {
				showFeedNames = true
			}
			fetchAndReplaceArticlesSync()
			masterTimelineViewController?.reinitializeArticles()
		}
	}
	

	
	func searchArticles(_ searchString: String) {
		guard !searchString.isEmpty else {
			isSearching = false
			if let ip = currentMasterIndexPath, let node = nodeFor(ip), let fetcher = node.representedObject as? ArticleFetcher {
				timelineFetcher = fetcher
			}
			return
		}
		
		isSearching = true
		
		if searchString.count < 3 {
			timelineFetcher = nil
			return
		}
		
