final boolean noException = isNoException(token, tokens, i, j,
precededByWhitespace, followedByWhitespace);
if (noException && precededByWhitespace
&& token.equals(startSymbols[j])) {
symbolStack.push(new SymbolLocator(startSymbols[j], i));
break;
} else if (noException && followedByWhitespace
&& token.equals(endSymbols[j])) {
if (i > 1 && endSymbols[j].equals(")")
&& (numerals.matcher(tokens[i - 1].getToken()).matches()
&& !(!symbolStack.empty()
&& "(".equals(symbolStack.peek().symbol)))) {
} else {
if (symbolStack.empty()) {
symbolStack.push(new SymbolLocator(endSymbols[j], i));
break;
} else {
if (symbolStack.peek().symbol.equals(startSymbols[j])) {
symbolStack.pop();
break;
} else {
if (isEndSymbolUnique(endSymbols[j])) {
symbolStack.push(new SymbolLocator(endSymbols[j], i));
break;
} else {
if (j == endSymbols.length - 1) {
symbolStack.push(new SymbolLocator(endSymbols[j], i));
break;
}
}
}
}