window.Rainbow&&(window.Rainbow.linecount=function(k){this.splitLines=function(b){var c=[[]];b=b.childNodes;for(var f=0;f<b.length;f++){var a=b[f],d=[],e=c[c.length-1];if(3===a.nodeType)d=a.nodeValue.split("\n");else for(var g=a.innerHTML.split("\n"),h=0;h<g.length;h++){var j=a.cloneNode();j.innerHTML=g[h];d.push(j.outerHTML)}e.push(d[0]||"&#8203;");for(a=0;a<d.length-1;a++)c.push([d[a+1]||"&#8203;"])}return c};k.onHighlight(function(b){var c=document.createElement("table");c.className="rainbow";
c.setAttribute("data-language",b.getAttribute("data-language"));for(var f=this.splitLines(b),a=0;a<f.length;a++){var d=f[a],e=a+1,g=c.insertRow(-1);g.className="line line-"+e;var h=g.insertCell(-1);h.className="line-number";h.setAttribute("data-line-number",e);e=g.insertCell(-1);e.className="line-code";e.innerHTML=d.join("")}b=b.parentNode;b.innerHTML="";b.appendChild(c)})}(window.Rainbow));