@NotNull
  @Override
  public Map<PyType, PyType> getGenericSubstitutions(@NotNull PyClass cls, @NotNull TypeEvalContext context) {
    final PyClass classStub = as(PyiUtil.getPythonStub(cls), PyClass.class);
    if (classStub != null) {
      return new PyTypingTypeProvider().getGenericSubstitutions(classStub, context);
    }
    return Collections.emptyMap();
  }
@NotNull
  @Override
  public Map<PyType, PyType> getGenericSubstitutions(@NotNull PyClass cls, @NotNull TypeEvalContext context)