@Nullable
  public <T> ExtractMethodSettings<T> showExtractMethodDialog(final Project project,
                                                          final String defaultName,
                                                          final CodeFragment fragment,
                                                          final T[] visibilityVariants,
                                                          final ExtractMethodValidator validator,
                                                          final ExtractMethodDecorator<T> decorator,
                                                          final FileType type, String helpId) {
    return new ExtractMethodSettings<T>() {
      @Override
      public @NotNull String getMethodName() {
        return defaultName;
      }

      @Override
      public AbstractVariableData @NotNull [] getAbstractVariableData() {
        return new AbstractVariableData[0];
      }

      @Override
      public @Nullable T getVisibility() {
        return null;
      }
    };
  }
@Nullable
  public <T> ExtractMethodSettings<T> showExtractMethodDialog(final Project project,
                                                          final String defaultName,
                                                          final CodeFragment fragment,
                                                          final T[] visibilityVariants,
                                                          final ExtractMethodValidator validator,
                                                          final ExtractMethodDecorator<T> decorator,
                                                          final FileType type, String helpId)