@Override
  public Ref<PyType> getParameterType(final @NotNull PyNamedParameter param,
                                      final @NotNull PyFunction func,
                                      @NotNull TypeEvalContext context) {
    final String name = param.getName();
    if (name != null) {
      final String typeName = PySignatureCacheManager.getInstance(param.getProject()).findParameterType(func, name);
      if (typeName != null) {
        final PyType type = PyTypeParser.getTypeByName(param, typeName, context);
        if (type != null) {
          return Ref.create(PyDynamicallyEvaluatedType.create(type));
        }
      }
    }
    return null;
  }
@Override
  public Ref<PyType> getParameterType(final @NotNull PyNamedParameter param,
                                      final @NotNull PyFunction func,
                                      @NotNull TypeEvalContext context)