def METHOD_NAME(
    self,
    it: Iterable[str],
    line: str
) -> Tuple[Optional[Report], str]:
    """ Parses UndefinedBehaviorSanitizer output message. """
    match = self.line_re.match(line)
    if not match:
        return None, line
    report_file = get_or_create_file(
        os.path.abspath(match.group('path')), self._file_cache)
    report_line = int(match.group('line'))
    report_col = int(match.group('column'))
    line = get_next(it)
    stack_traces, events, line = self.parse_stack_trace(it, line)
    message = match.group('message').strip()
    for check, patterns in self.checks.items():
        if any(pattern.search(message) for pattern in patterns):
            checker_name = f"{self.checker_name}.{check}"
            break
    report = self.create_report(
        events, report_file, report_line, report_col,
        message, stack_traces, checker_name)
    return report, line