public static <T> T @NotNull [] newArray(@NotNull Class<T> type, int length) {
    //noinspection unchecked
    return (T[])Array.newInstance(type, length);
  }
public static <T> T @NotNull [] newArray(@NotNull Class<T> type, int length)