@Override
  public boolean tryInlineCall(@NotNull CFGBuilder builder, @NotNull PsiMethodCallExpression call) {
    if (!ASSERT_ALL.matches(call) || !MethodCallUtils.isVarArgCall(call)) return false;
    PsiExpression[] args = call.getArgumentList().getExpressions();
    for (int i = 0; i < args.length; i++) {
      PsiExpression arg = args[i];
      if (i == 0 && TypeUtils.isJavaLangString(arg.getType())) {
        builder.pushExpression(arg, NullabilityProblemKind.noProblem).pop();
      }
      else {
        builder.evaluateFunction(arg);
      }
    }
    DfaVariableValue result = builder.createTempVariable(PsiTypes.booleanType());
    builder.assignAndPop(result, DfTypes.FALSE);
    for (int i = 0; i < args.length; i++) {
      PsiExpression arg = args[i];
      if (i == 0 && TypeUtils.isJavaLangString(arg.getType())) continue;
      builder
        .doTry(call)
        .invokeFunction(0, arg)
        .pop()
        .catchAll()
        .assignAndPop(result, DfTypes.TRUE)
        .end();
    }
    PsiType throwable = JavaPsiFacade.getElementFactory(call.getProject())
                                     .createTypeByFQClassName("org.opentest4j.MultipleFailuresError", call.getResolveScope());
    builder.push(result)
           .ifConditionIs(true)
           .doThrow(throwable)
           .end()
           .pushUnknown(); // void method result
    return true;
  }
@Override
  public boolean tryInlineCall(@NotNull CFGBuilder builder, @NotNull PsiMethodCallExpression call)