@Contract(value = "null, _, _, _ -> null; !null, _, _, _ -> new", pure = true)
  @Nullable
  public static InjectedLanguage create(@Nullable String id, String prefix, String suffix, boolean isDynamic) {
    return id == null ? null : new InjectedLanguage(id, prefix == null ? "" : prefix, suffix == null ? "" : suffix, isDynamic);
  }
@Contract(value = "null, _, _, _ -> null; !null, _, _, _ -> new", pure = true)
  @Nullable
  public static InjectedLanguage create(@Nullable String id, String prefix, String suffix, boolean isDynamic)