@Nullable
  private static Pair<PsiElement, String> evaluatePolyadicExpressions(@NotNull PsiElement expression,
                                                                      @NotNull Collection<PsiElement> visited,
                                                                      PsiExpression @NotNull ... operands) {
    StringBuilder sb = new StringBuilder();
    for (PsiExpression operand : operands) {
      Pair<PsiElement, String> pair = evaluateExpression(operand, visited);
      if (pair == null) return null;
      sb.append(pair.second);
    }
    return Pair.create(expression, sb.toString());
  }
@Nullable
  private static Pair<PsiElement, String> evaluatePolyadicExpressions(@NotNull PsiElement expression,
                                                                      @NotNull Collection<PsiElement> visited,
                                                                      PsiExpression @NotNull ... operands)