private int[] initLineBreaks() {
		int[] tmp = new int[inputChars.length];
		if(inputChars.length==0) return tmp;
		tmp[0] = -1;
		int lineCnt = 1;
		char prev = 0;
		for (int i = 1; i != inputChars.length; i++) {
			char ch = inputChars[i];
			if ((ch == '\n' && prev != '\r') || ch == '\r'
				|| ch == '\u0085' || ch == '\u2028' || ch == '\u2029'){
				tmp[lineCnt++] = i;
			prev = ch;
			}
		}
		// trim
		return Arrays.copyOf(tmp, lineCnt);
	}