@Contract(pure = true)
  public static @NotNull String join(int @NotNull [] values, @NotNull String separator) {
    if (values.length == 0) return "";

    final StringBuilder result = new StringBuilder();
    for (int i = 0; i < values.length; i++) {
      if (i > 0) result.append(separator);
      result.append(values[i]);
    }
    return result.toString();
  }
@Contract(pure = true)
  public static @NotNull String join(int @NotNull [] values, @NotNull String separator)