@Override
	public int next() {
		int n = -1;
		if (start < cs.length()) {
			n = cs.charAt(start++);
			offset++;
			if (n == '\r') {
				lines++;
				columns = 0;
			} else if (n == '\n') {
				if (offset < 2 || cs.charAt(offset-2) != '\r') {
					lines++;
					columns = 0;
				}
			} else {
				columns++;
			}
		} else {
			start++;
			return -1;
		}
		return n;
	}