void (@NotNull CharSequence text, int start, int end) { assert 0 <= start && start <= end && end <= text.length() : "Text length: " + text.length() + ", start: " + start + ", end: " + end; CharacterIterator characterIterator = null; for (int i = start; i < end; i++) { if (text.charAt(i) >= COMPLEX_CHAR_START) { characterIterator = new CharSequenceIterator(text, start, end); break; } } doStart(text, null, characterIterator, start, end); }