@Override
  @Nullable
  public V findMatchingValue(@NotNull DataContext dataContext, @NotNull String pattern) {
    return getValues(dataContext, pattern).stream().filter(value -> StringUtil.equals(pattern, getCommand(value))).findFirst().orElse(null);
  }
@Override
  @Nullable
  public V findMatchingValue(@NotNull DataContext dataContext, @NotNull String pattern)