public Pair<Integer,Integer> countNewlines(int column,String lexeme)
	{
    	if(lexeme.equals("")) return Pair.cons(0,-1);
		int startIndex = -1,nlCount = -1;
		while(startIndex != 0)
		{
			nlCount++;
			startIndex = lexeme.indexOf('\n',startIndex) + 1;
		}
		int lastStartIndex = lexeme.lastIndexOf('\n') + 1;
		int columnCount = lastStartIndex == 0 ? column : 0;
		for(startIndex = lexeme.indexOf('\t',lastStartIndex);startIndex != -1;startIndex = lexeme.indexOf('\t',lastStartIndex))
		{
			columnCount += startIndex - lastStartIndex;
			columnCount += tabStop - (columnCount % tabStop);
			lastStartIndex = startIndex + 1;
		}
		columnCount += lexeme.length() - lastStartIndex;
		
		//int pastNewline = ((lexeme.lastIndexOf('\n') == -1) ? column + lexeme.length() : (lexeme.length() - (lexeme.lastIndexOf('\n') + 1)));
		// DEBUG-X-BEGIN
		//System.err.println("Lexeme '" + lexeme + "' --- Newline count: " + nlCount + "; last newline: " + pastNewline);
		// DEBUG-X-END
		return Pair.cons(nlCount,columnCount);
	}