List<String> (@NotNull CharSequence line) { int offset = 0; List<String> result = new ArrayList<>(); while (offset < line.length()) { int tokenEnd = StringUtil.indexOf(line, '\t', offset); if (tokenEnd == -1) tokenEnd = line.length(); result.add(line.subSequence(offset, tokenEnd).toString()); offset = tokenEnd + 1; } return result; }