docs: protected final void setError(int newPosition, int errorNumberItem,
        HashMap<String, Integer> errorListItem, boolean currentExisting)
        throws IOException {
      if (!closed) {
        if (currentExisting) {
          newErrorNumber[newPosition] += errorNumberItem;
          HashMap<String, Integer> item = newErrorList[newPosition];
          for (Entry<String, Integer> entry : errorListItem.entrySet()) {
            if (item.containsKey(entry.getKey())) {
              item.put(entry.getKey(),
                  item.get(entry.getKey()) + entry.getValue());
            } else {
              item.put(entry.getKey(), entry.getValue());
            }
          }
        } else {
          newErrorNumber[newPosition] = errorNumberItem;
          newErrorList[newPosition] = errorListItem;
        }
      } else {
        throw new IOException("already closed");
      }
    }