static Multimap<String, Range<Integer>> extractHighlightRanges(Map<String, List<String>> highlight) {
        if (highlight == null || highlight.isEmpty()) {
            return ImmutableListMultimap.of();
        }
        final ImmutableListMultimap.Builder<String, Range<Integer>> builder = ImmutableListMultimap.builder();
        highlight.forEach((key, value) -> extractRange(value).forEach(range -> builder.put(key, range)));
        return builder.build();
    }
@Test
    public void multipleHighlights() throws Exception {
        final Map<String, List<String>> highlights = ImmutableMap.of(
                "message", ImmutableList.of("/<em>usr</em>/sbin/cron[22390]: (root) CMD (/<em>usr</em>/libexec/atrun)"),
                "full_message", ImmutableList.of("<78>Aug 22 10:40:00 /<em>usr</em>/sbin/cron[22390]: (root) CMD (/<em>usr</em>/libexec/atrun)")
        );

        final Multimap<String, Range<Integer>> result = HighlightParser.extractHighlightRanges(highlights);

        assertThat(result).isNotNull();
        assertThat(result.get("message"))
                .isNotEmpty()
                .containsExactly(
                        Range.closed(1, 4),
                        Range.closed(36, 39)
                );
        assertThat(result.get("full_message"))
                .isNotEmpty()
                .containsExactly(
                        Range.closed(21, 24),
                        Range.closed(56, 59)
                );
    }