private TreeMap<String, Integer> getTopN(ArrayList<Entry<String, Integer>> list) {
		TreeMap<String, Integer> keywords = new TreeMap<String, Integer>();

		//baseline criteria
		for(int i = 0; i<Settings.baseKeywords.length; i++){
			keywords.put(Settings.baseKeywords[i], 10000);
		}
		
		//top list
		for(Entry<String, Integer>   entry   :   list){
			String hash = entry.getKey();
			int freq = entry.getValue();
			boolean inBase = false;
			for(String basehash:Settings.baseKeywords){
				if(hash.replace("#", "").equals(basehash.toLowerCase())){
					inBase = true;
					break;
				}
			}
			if(!inBase){
				keywords.put(hash, freq);
			}
			if(keywords.size()>Settings.keywordMax) break;
		}
		
		return keywords;
	}