static CharInToken charIndexToCharInToken(LS tok, int charIndex) { int i = 0, idx = 0, lTok; while (i < l(tok) && idx+(lTok = l(tok.get(i))) <= charIndex) { idx += lTok; i++; } ret CharInToken(tok, i, charIndex-idx); }