@Override
  public final @NotNull Map<PyType, PyType> getGenericSubstitutions(@NotNull PyClass cls, @NotNull TypeEvalContext context) {
    return withCustomContext(context, customContext -> {
      return getGenericSubstitutions(cls, customContext);
    });
  }
@Override
  public final @NotNull Map<PyType, PyType> getGenericSubstitutions(@NotNull PyClass cls, @NotNull TypeEvalContext context)