boolean (@NotNull IntList namesIds, @NotNull IntPredicate processor) { for (IntIterator it = namesIds.iterator(); it.hasNext(); ) { int nameId = it.nextInt(); int single = singularMapping.get(nameId); int[] multi; if (single != NULL_NAME_ID) { if (!processor.test(single)) return false; } else if ((multi = multiMapping.get(nameId)) != null) { if (multi.length == 2) { if (!processor.test(multi[0])) return false; if (!processor.test(multi[1])) return false; } else { for (int i = 1, len = multi[0]; i <= len; i++) { if (!processor.test(multi[i])) return false; } } } } return true; }