@Override
  public int enumerate(final @Nullable Data value) {
    int id = idByValue.getOrDefault(value, NULL_ID);
    if (id == NULL_ID) {
      id = valueById.size() + 1;
      valueById.put(id, value);
      idByValue.put(value, id);
    }
    return id;
  }
@Override
  public int enumerate(final @Nullable Data value)