@NotNull
  private static @InspectionMessage String getMultiCalleeProblemMessage(@NotNull List<PyType> argumentTypes,
                                                                        @NotNull List<PyTypeCheckerInspection.AnalyzeCalleeResults> calleesResults,
                                                                        @NotNull TypeEvalContext context,
                                                                        boolean isOnTheFly) {
    final String actualTypesRepresentation = getMultiCalleeActualTypesRepresentation(argumentTypes, context);
    final String expectedTypesRepresentation = getMultiCalleePossibleExpectedTypesRepresentation(calleesResults, context, isOnTheFly);

    if (isOnTheFly) {
      return new HtmlBuilder()
        .append(PyPsiBundle.message("INSP.type.checker.unexpected.types.prefix")).br().appendRaw(actualTypesRepresentation).br()
        .append(PyPsiBundle.message("INSP.type.checker.expected.types.prefix")).br().appendRaw(expectedTypesRepresentation)
        .wrapWith("html").toString();
    }
    else {
      return PyPsiBundle.message("INSP.type.checker.unexpected.types.prefix") + " " + actualTypesRepresentation + " " +
             PyPsiBundle.message("INSP.type.checker.expected.types.prefix") + " " +
             expectedTypesRepresentation;
    }
  }
@NotNull
  private static @InspectionMessage String getMultiCalleeProblemMessage(@NotNull List<PyType> argumentTypes,
                                                                        @NotNull List<PyTypeCheckerInspection.AnalyzeCalleeResults> calleesResults,
                                                                        @NotNull TypeEvalContext context,
                                                                        boolean isOnTheFly)