public static HashMap<Float, Integer> mapHitsToScore(File inputFile) throws Exception
	{
		System.out.println("PARSING: " + inputFile.getAbsolutePath());
		BufferedReader reader = 
			inputFile.getName().toUpperCase().endsWith("GZ") ?
				new BufferedReader(new InputStreamReader( 
						new GZIPInputStream( new FileInputStream( inputFile) ) ))
				:
					new BufferedReader(new FileReader(inputFile));
			
		HashMap<Float, Integer> counts = new HashMap<Float, Integer>();
		
		
		for( String s= reader.readLine(); s != null; s = reader.readLine())
		{
			s = s.trim();
			
			if( s.endsWith("0 hits found"))
			{
				addToMap(counts, 0);
			}
			else if( s.endsWith("hits found"))
			{
				s = reader.readLine();
				StringTokenizer sToken = new StringTokenizer(s);
				
				for( int x=0; x < 11; x++)
					sToken.nextToken();
				
				addToMap(counts, Float.parseFloat(sToken.nextToken()));
				
				if( sToken.hasMoreTokens())
					throw new Exception("Unexpected token " + sToken.nextToken());
			}
		}
		
		reader.close();
		return counts;
	}