code: function acceptNode(node) {
    var parent = node.parentElement;
    var isMath = (parent && parent.getAttribute && parent.getAttribute('class')) ? parent.getAttribute('class').includes('katex') || parent.getAttribute('class').includes('MathJax') : false;
    return parent &&
           parent.nodeName !== 'SCRIPT' &&
           parent.nodeName !== 'STYLE' &&
           parent.nodeName !== 'CODE' &&
           parent.nodeName !== 'PRE' &&
           parent.nodeName !== 'SPAN' &&
           parent.nodeName !== 'D-HEADER' &&
           parent.nodeName !== 'D-BYLINE' &&
           parent.nodeName !== 'D-MATH' &&
           parent.nodeName !== 'D-CODE' &&
           parent.nodeName !== 'D-BIBLIOGRAPHY' &&
           parent.nodeName !== 'D-FOOTER' &&
           parent.nodeName !== 'D-APPENDIX' &&
           parent.nodeName !== 'D-FRONTMATTER' &&
           parent.nodeName !== 'D-TOC' &&
           parent.nodeType !== 8 && //comment nodes
           !isMath;
  }
docs: 2018-07-11 shancarter@ and ludwigschubert@ no longer know what this was meant to accomplish if it was trying to not replace text in any child nodes of those listed here, then it does not accomplish that.