int (int patternIndex, int startFrom, @NotNull ErrorState errorState) { if (startFrom >= myName.length() || myHasHumps && isLowerCase(patternIndex, errorState) && !(patternIndex > 0 && isWordSeparator(patternIndex - 1, errorState))) { return -1; } int nextWordStart = startFrom; while (true) { nextWordStart = nextWord(myName, nextWordStart, isAsciiName); if (nextWordStart >= myName.length()) { return -1; } if (charEquals(patternIndex, nextWordStart, true, true, errorState)) { return nextWordStart; } } }