@Override
  protected void surroundStatements(@NotNull ActionContext context,
                                    @NotNull PsiElement container,
                                    @NotNull PsiElement @NotNull [] statements,
                                    @NotNull ModPsiUpdater updater) throws IncorrectOperationException {
    PsiIfStatement ifStatement = surroundStatements(context.project(), container, statements, "");
    if (ifStatement == null) return;
    ifStatement = CodeInsightUtilCore.forcePsiPostprocessAndRestoreElement(ifStatement);
    if (ifStatement == null) return;

    final PsiJavaToken lParenth = ifStatement.getLParenth();
    assert lParenth != null;
    final TextRange range = lParenth.getTextRange();
    updater.moveCaretTo(range.getEndOffset());
  }
@Override
  protected void surroundStatements(@NotNull ActionContext context,
                                    @NotNull PsiElement container,
                                    @NotNull PsiElement @NotNull [] statements,
                                    @NotNull ModPsiUpdater updater)