text: /*
  author:		Daniel B. Kazmer (webshifted.com)
  version:	3.1.0
  */
  function nodeListener(a,b){var c=[],d=[],e=Math.round(new Date().getTime()/1e3),f=null,g=null;const h=m=>{m.forEach(n=>{if(1===n.nodeType)if(n.matches(a))c.push(n);else if(0<n.querySelectorAll(a).length){let o=n.querySelectorAll(a);o.forEach(p=>c.push(p))}})},i=m=>{1===m.nodeType&&m.matches(a)&&d.push(m)},j=()=>{null!=g&&(0<c.length||0<d.length)&&('add'===f&&0<c.length||'remove'===f&&0<d.length||null==f)&&g()};var k=new MutationObserver(m=>{m.forEach(n=>{0<n.addedNodes.length&&h(n.addedNodes),0<n.removedNodes.length&&i(n.removedNodes[0])}),j(),setTimeout(()=>{c=[],d=[]},0)});{MutationObserver.prototype.then=o=>{o instanceof Function?g=()=>o.call(k,c,d):console.warn('nodeListener: \'then\' method only accepts a function')},MutationObserver.prototype.on=(o,p)=>{'add'===o?(g=()=>p.call(k,c),f=o):'remove'===o?(g=()=>p.call(k,d),f=o):(console.warn('nodeListener: unaccepted or no event specified for \'on\' method'),setTimeout(()=>k.disconnect(),0))}}return k.observe(b||document.body,{attributes:!0,childList:!0,characterData:!0,subtree:!0}),k}