function evadeHtmlCommentTest(src) {
    const replaceFn = match => (match[0] === '<' ? '< ! --' : '-- >');
    return src.replace(htmlCommentPattern, replaceFn);
  }
An optional transform to place ahead of `rejectHtmlComments` to evade *that*
rejection. However, it may change the meaning of the program.

This evasion replaces each alleged html comment with the space-separated
JavaScript operator sequence that it may mean, assuming that it appears
outside of a comment or literal string, in source code where the JS
parser makes no special case for html comments (like module source code).
In that case, this evasion preserves the meaning of the program, though it
does change the souce column numbers on each effected line.

If the html comment appeared in a literal (a string literal, regexp literal,
or a template literal), then this evasion will change the meaning of the
program by changing the text of that literal.

If the html comment appeared in a JavaScript comment, then this evasion does
not change the meaning of the program because it only changes the contents of
those comments.

@param { string } src
@returns { string }