var TinySyntaxHighlighter={currentStyle:"",initialize:function(){for(var t=document.getElementsByTagName("code"),n=0;n<t.length;n++)TinySyntaxHighlighter.highlightBlock(t[n])},highlightBlock:function(n){var t=n.className.match("language-([a-zA-Z]+)");t!=null&&t.length===2&&TinySyntaxHighlighter[n.className]&&(n.innerHTML=TinySyntaxHighlighter.highlightSyntax(n.textContent||n.innerText,TinySyntaxHighlighter[n.className]))},highlightSyntax:function(n,t){var i,f;this.currentStyle="";var r=t.states[0],l=t.styles[0].name,u=[];for(TinySyntaxHighlighter.openStyle(u,t,r.style),i=0;i<n.length;){var o=null,e=-1,s=null,h=null,c=n.substring(i);for(f in r.transitions)f!=="asLinq"&&(s=c.match(r.transitions[f].expression))!=null&&(e==-1||s.index<e)&&(o=r.transitions[f],h=s,e=s.index);if(o){u.push(TinySyntaxHighlighter.htmlEncode(n.substring(i,i+e)));TinySyntaxHighlighter.openStyle(u,t,o.style);u.push(TinySyntaxHighlighter.htmlEncode(h[0]));i=i+e+h[0].length;r=null;for(f in t.states)if(t.states[f].name==o.state){r=t.states[f];break}if(r==null)throw"Invalid state name specified in a syntax definition!";TinySyntaxHighlighter.openStyle(u,t,r.style)}else u.push(TinySyntaxHighlighter.htmlEncode(n.substring(i))),i=n.length}return TinySyntaxHighlighter.openStyle(u,t,""),u.join("")},openStyle:function(n,t,i){var f,u,r,e;if(this.currentStyle!=i){for(this.currentStyle!=""&&(this.currentStyle="",n.push("<\/span>")),f=0;f<t.styles.length;f++)if(u=t.styles[f],u.name==i){if(r="<span",u.style){r=r+' style="';for(e in u.style)r=r+e.replace(/_/g,"-")+":"+u.style[e]+";";r=r+'"'}r=r+">";this.currentStyle=i;n.push(r);return}if(i!="")throw"Invalid style name specified in a syntax definition!";}},htmlEncode:function(n){return n.replace(/&/g,"&amp;").replace(new RegExp('"',"g"),"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\r\n/g,"<br />").replace(/\n\r/g,"<br />").replace(/\n/g,"<br />").replace(/\r/g,"<br />")}};