private void collect(File outputFile, final String qualifiedName) {
        final ClassData fileData = data.getClassData(qualifiedName);
        if (fileData != null) {
          final Object[] lines = fileData.getLines();
          if (lines != null) {
            final Object[] postProcessedLines = engine.postProcessExecutableLines(lines, editor);
            for (Object o : postProcessedLines) {
              if (o instanceof LineData lineData) {
                if (engine.isGeneratedCode(myProject, qualifiedName, lineData)) continue;
                final int line = (lineData).getLineNumber() - 1;
                final int lineNumberInCurrent;
                if (oldToNewLineMapping != null) {
                  if (!oldToNewLineMapping.containsKey(line)) continue;
                  lineNumberInCurrent = oldToNewLineMapping.get(line);
                }
                else {
                  // use id mapping
                  lineNumberInCurrent = line;
                }
                executableLines.put(line, lineData);
                classNames.put(line, qualifiedName);

                addHighlighter(markupModel, executableLines, suite, line, lineNumberInCurrent, qualifiedName);
              }
            }
          }
        }
        else if (outputFile != null && !CoverageDataManager.getInstance(myProject).isSubCoverageActive() &&
                 engine.includeUntouchedFileInCoverage(qualifiedName, outputFile, psiFile, suite)) {
          highlightNonCoveredFile(outputFile, markupModel, executableLines, suite, oldToNewLineMapping);
        }
      }
private void collect(File outputFile, final String qualifiedName)