public boolean forEach(@NotNull KeyValueProcessor processor) {
    for (int i = 0; i < table.length; i += 2) {
      int key = table[i];
      int value = table[i + 1];
      if (key != NO_VALUE) {
        assert value != NO_VALUE : "value(table[" + (i + 1) + "]) = " + NO_VALUE + ", while key(table[" + i + "]) = " + key;
        if (!processor.process(key, value)) {
          return false;
        }
      }
    }
    return true;
  }
public boolean forEach(@NotNull KeyValueProcessor processor)