UNPKG

doremi-script

Version:

Letter music notation processor

1 lines 28.2 kB
window.PR_SHOULD_USE_CONTINUATION=true;window.PR_TAB_WIDTH=8;window.PR_normalizedHtml=window.PR=window.prettyPrintOne=window.prettyPrint=void 0;window._pr_isIE6=function(){var a=navigator&&navigator.userAgent&&navigator.userAgent.match(/\bMSIE ([6789])\./);a=a?+a[1]:false;window._pr_isIE6=function(){return a};return a};(function(){var g="break continue do else for if return while ";var d=g+"auto case char const default double enum extern float goto int long register short signed sizeof static struct switch typedef union unsigned void volatile ";var r=d+"catch class delete false import new operator private protected public this throw true try typeof ";var W=r+"alignof align_union asm axiom bool concept concept_map const_cast constexpr decltype dynamic_cast explicit export friend inline late_check mutable namespace nullptr reinterpret_cast static_assert static_cast template typeid typename using virtual wchar_t where ";var n=r+"abstract boolean byte extends final finally implements import instanceof null native package strictfp super synchronized throws transient ";var ab=n+"as base by checked decimal delegate descending dynamic event fixed foreach from group implicit in interface internal into is lock object out override orderby params partial readonly ref sbyte sealed stackalloc string select uint ulong unchecked unsafe ushort var ";var ai="all and by catch class else extends false finally for if in is isnt loop new no not null of off on or return super then true try unless until when while yes ";var V=r+"debugger eval export function get null set undefined var with Infinity NaN ";var ag="caller delete die do dump elsif eval exit foreach for goto if import last local my next no our print package redo require sub undef unless until use wantarray while BEGIN END ";var D=g+"and as assert class def del elif except exec finally from global import in is lambda nonlocal not or pass print raise try with yield False True None ";var T=g+"alias and begin case class def defined elsif end ensure false in module next nil not or redo rescue retry self super then true undef unless until when yield BEGIN END ";var m=g+"case done elif esac eval fi function in local set then until ";var al=(W+ab+V+ag+D+T+m);var aa="str";var Q="kwd";var j="com";var H="typ";var L="lit";var an="pun";var Y="pln";var o="tag";var e="dec";var R="src";var X="atn";var B="atv";var p="nocode";var t=function(){var ap=["!","!=","!==","#","%","%=","&","&&","&&=","&=","(","*","*=","+=",",","-=","->","/","/=",":","::",";","<","<<","<<=","<=","=","==","===",">",">=",">>",">>=",">>>",">>>=","?","@","[","^","^=","^^","^^=","{","|","|=","||","||=","~","break","case","continue","delete","do","else","finally","instanceof","return","throw","try","typeof"];var aq="(?:^^|[+-]";for(var ao=0;ao<ap.length;++ao){aq+="|"+ap[ao].replace(/([^=<>:&a-z])/g,"\\$1")}aq+=")\\s*";return aq}();var i=/&/g;var y=/</g;var h=/>/g;var b=/\"/g;function q(ao){return ao.replace(i,"&amp;").replace(y,"&lt;").replace(h,"&gt;").replace(b,"&quot;")}function N(ao){return ao.replace(i,"&amp;").replace(y,"&lt;").replace(h,"&gt;")}var ak=/&lt;/g;var U=/&gt;/g;var ac=/&apos;/g;var J=/&quot;/g;var ah=/&amp;/g;var v=/&nbsp;/g;function am(at){var aq=at.indexOf("&");if(aq<0){return at}for(--aq;(aq=at.indexOf("&#",aq+1))>=0;){var ao=at.indexOf(";",aq);if(ao>=0){var ap=at.substring(aq+3,ao);var au=10;if(ap&&ap.charAt(0)==="x"){ap=ap.substring(1);au=16}var ar=parseInt(ap,au);if(!isNaN(ar)){at=(at.substring(0,aq)+String.fromCharCode(ar)+at.substring(ao+1))}}}return at.replace(ak,"<").replace(U,">").replace(ac,"'").replace(J,'"').replace(v," ").replace(ah,"&")}function ad(ao){return"XMP"===ao.tagName}var z=/[\r\n]/g;function S(aq,ap){if("PRE"===aq.tagName){return true}if(!z.test(ap)){return true}var ao="";if(aq.currentStyle){ao=aq.currentStyle.whiteSpace}else{if(window.getComputedStyle){ao=window.getComputedStyle(aq,null).whiteSpace}}return !ao||ao==="pre"}function w(aw,aq,au){switch(aw.nodeType){case 1:var av=aw.tagName.toLowerCase();aq.push("<",av);var ax=aw.attributes;var ar=ax.length;if(ar){if(au){var at=[];for(var ao=ar;--ao>=0;){at[ao]=ax[ao]}at.sort(function(az,aA){return(az.name<aA.name)?-1:az.name===aA.name?0:1});ax=at}for(var ao=0;ao<ar;++ao){var ap=ax[ao];if(!ap.specified){continue}aq.push(" ",ap.name.toLowerCase(),'="',q(ap.value),'"')}}aq.push(">");for(var ay=aw.firstChild;ay;ay=ay.nextSibling){w(ay,aq,au)}if(aw.firstChild||!/^(?:br|link|img)$/.test(av)){aq.push("</",av,">")}break;case 3:case 4:aq.push(N(aw.nodeValue));break}}function f(aw){var at=0;var ax=false;var aq=false;for(var ap=0,au=aw.length;ap<au;++ap){var ar=aw[ap];if(ar.ignoreCase){aq=true}else{if(/[a-z]/i.test(ar.source.replace(/\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi,""))){ax=true;aq=false;break}}}function ay(aB){if(aB.charAt(0)!=="\\"){return aB.charCodeAt(0)}switch(aB.charAt(1)){case"b":return 8;case"t":return 9;case"n":return 10;case"v":return 11;case"f":return 12;case"r":return 13;case"u":case"x":return parseInt(aB.substring(2),16)||aB.charCodeAt(1);case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":return parseInt(aB.substring(1),8);default:return aB.charCodeAt(1)}}function av(aC){if(aC<32){return(aC<16?"\\x0":"\\x")+aC.toString(16)}var aB=String.fromCharCode(aC);if(aB==="\\"||aB==="-"||aB==="["||aB==="]"){aB="\\"+aB}return aB}function az(aL){var aJ=aL.substring(1,aL.length-1).match(new RegExp("\\\\u[0-9A-Fa-f]{4}|\\\\x[0-9A-Fa-f]{2}|\\\\[0-3][0-7]{0,2}|\\\\[0-7]{1,2}|\\\\[\\s\\S]|-|[^-\\\\]","g"));var aN=[];var aO=[];var aG=aJ[0]==="^";for(var aI=aG?1:0,aK=aJ.length;aI<aK;++aI){var aE=aJ[aI];switch(aE){case"\\B":case"\\b":case"\\D":case"\\d":case"\\S":case"\\s":case"\\W":case"\\w":aN.push(aE);continue}var aB=ay(aE);var aH;if(aI+2<aK&&"-"===aJ[aI+1]){aH=ay(aJ[aI+2]);aI+=2}else{aH=aB}aO.push([aB,aH]);if(!(aH<65||aB>122)){if(!(aH<65||aB>90)){aO.push([Math.max(65,aB)|32,Math.min(aH,90)|32])}if(!(aH<97||aB>122)){aO.push([Math.max(97,aB)&~32,Math.min(aH,122)&~32])}}}aO.sort(function(aP,aQ){return(aP[0]-aQ[0])||(aQ[1]-aP[1])});var aF=[];var aM=[NaN,NaN];for(var aI=0;aI<aO.length;++aI){var aD=aO[aI];if(aD[0]<=aM[1]+1){aM[1]=Math.max(aM[1],aD[1])}else{aF.push(aM=aD)}}var aC=["["];if(aG){aC.push("^")}aC.push.apply(aC,aN);for(var aI=0;aI<aF.length;++aI){var aD=aF[aI];aC.push(av(aD[0]));if(aD[1]>aD[0]){if(aD[1]+1>aD[0]){aC.push("-")}aC.push(av(aD[1]))}}aC.push("]");return aC.join("")}function ao(aF){var aH=aF.source.match(new RegExp("(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)","g"));var aG=aH.length;var aD=[];for(var aC=0,aE=0;aC<aG;++aC){var aI=aH[aC];if(aI==="("){++aE}else{if("\\"===aI.charAt(0)){var aB=+aI.substring(1);if(aB&&aB<=aE){aD[aB]=-1}}}}for(var aC=1;aC<aD.length;++aC){if(-1===aD[aC]){aD[aC]=++at}}for(var aC=0,aE=0;aC<aG;++aC){var aI=aH[aC];if(aI==="("){++aE;if(aD[aE]===undefined){aH[aC]="(?:"}}else{if("\\"===aI.charAt(0)){var aB=+aI.substring(1);if(aB&&aB<=aE){aH[aC]="\\"+aD[aE]}}}}for(var aC=0,aE=0;aC<aG;++aC){if("^"===aH[aC]&&"^"!==aH[aC+1]){aH[aC]=""}}if(aF.ignoreCase&&ax){for(var aC=0;aC<aG;++aC){var aI=aH[aC];var aJ=aI.charAt(0);if(aI.length>=2&&aJ==="["){aH[aC]=az(aI)}else{if(aJ!=="\\"){aH[aC]=aI.replace(/[a-zA-Z]/g,function(aL){var aK=aL.charCodeAt(0);return"["+String.fromCharCode(aK&~32,aK|32)+"]"})}}}}return aH.join("")}var aA=[];for(var ap=0,au=aw.length;ap<au;++ap){var ar=aw[ap];if(ar.global||ar.multiline){throw new Error(""+ar)}aA.push("(?:"+ao(ar)+")")}return new RegExp(aA.join("|"),aq?"gi":"g")}var K=null;function E(ar){if(null===K){var at=document.createElement("PRE");at.appendChild(document.createTextNode('<!DOCTYPE foo PUBLIC "foo bar">\n<foo />'));K=!/</.test(at.innerHTML)}if(K){var ao=ar.innerHTML;if(ad(ar)){ao=N(ao)}else{if(!S(ar,ao)){ao=ao.replace(/(<br\s*\/?>)[\r\n]+/g,"$1").replace(/(?:[\r\n]+[ \t]*)+/g," ")}}return ao}var aq=[];for(var ap=ar.firstChild;ap;ap=ap.nextSibling){w(ap,aq)}return aq.join("")}function G(aq){var ap=" ";var ao=0;return function(ay){var au=null;var at=0;for(var ar=0,aw=ay.length;ar<aw;++ar){var av=ay.charAt(ar);switch(av){case"\t":if(!au){au=[]}au.push(ay.substring(at,ar));var ax=aq-(ao%aq);ao+=ax;for(;ax>=0;ax-=ap.length){au.push(ap.substring(0,ax))}at=ar+1;break;case"\n":ao=0;break;default:++ao}}if(!au){return ay}au.push(ay.substring(at));return au.join("")}}var x=new RegExp("[^<]+|<!--[\\s\\S]*?-->|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>|</?[a-zA-Z](?:[^>\"']|'[^']*'|\"[^\"]*\")*>|<","g");var a=/^<\!--/;var P=/^<!\[CDATA\[/;var M=/^<br\b/i;var I=/^<(\/?)([a-zA-Z][a-zA-Z0-9]*)/;function ae(ar){var az=ar.match(x);var aA=[];var ao=0;var av=[];if(az){for(var at=0,aw=az.length;at<aw;++at){var ax=az[at];if(ax.length>1&&ax.charAt(0)==="<"){if(a.test(ax)){continue}if(P.test(ax)){aA.push(ax.substring(9,ax.length-3));ao+=ax.length-12}else{if(M.test(ax)){aA.push("\n");++ao}else{if(ax.indexOf(p)>=0&&c(ax)){var aq=ax.match(I)[2];var ay=1;var au;end_tag_loop:for(au=at+1;au<aw;++au){var aB=az[au].match(I);if(aB&&aB[2]===aq){if(aB[1]==="/"){if(--ay===0){break end_tag_loop}}else{++ay}}}if(au<aw){av.push(ao,az.slice(at,au+1).join(""));at=au}else{av.push(ao,ax)}}else{av.push(ao,ax)}}}}else{var ap=am(ax);aA.push(ap);ao+=ap.length}}}return{source:aA.join(""),tags:av}}function c(ao){return !!ao.replace(/\s(\w+)\s*=\s*(?:\"([^\"]*)\"|'([^\']*)'|(\S+))/g,' $1="$2$3$4"').match(/[cC][lL][aA][sS][sS]=\"[^\"]*\bnocode\b/)}function O(at,ap,ar,aq){if(!ap){return}var ao={source:ap,basePos:at};ar(ao);aq.push.apply(aq,ao.decorations)}function A(ao,av){var ar={};var aq;(function(){var aC=ao.concat(av);var aB=[];var aF={};for(var aw=0,az=aC.length;aw<az;++aw){var aD=aC[aw];var aA=aD[3];if(aA){for(var aE=aA.length;--aE>=0;){ar[aA.charAt(aE)]=aD}}var ay=aD[1];var ax=""+ay;if(!aF.hasOwnProperty(ax)){aB.push(ay);aF[ax]=null}}aB.push(/[\0-\uffff]/);aq=f(aB)})();var au=av.length;var at=/\S/;var ap=function(aP){var aG=aP.source,ay=aP.basePos;var aO=[ay,Y];var aB=0;var aK=aG.match(aq)||[];var az={};for(var aL=0,aM=aK.length;aL<aM;++aL){var aw=aK[aL];var aA=az[aw];var aJ=void 0;var aI;if(typeof aA==="string"){aI=false}else{var aD=ar[aw.charAt(0)];if(aD){aJ=aw.match(aD[1]);aA=aD[0]}else{for(var aE=0;aE<au;++aE){aD=av[aE];aJ=aw.match(aD[1]);if(aJ){aA=aD[0];break}}if(!aJ){aA=Y}}aI=aA.length>=5&&"lang-"===aA.substring(0,5);if(aI&&!(aJ&&typeof aJ[1]==="string")){aI=false;aA=R}if(!aI){az[aw]=aA}}var aF=aB;aB+=aw.length;if(!aI){aO.push(ay+aF,aA)}else{var aC=aJ[1];var aH=aw.indexOf(aC);var aN=aH+aC.length;if(aJ[2]){aN=aw.length-aJ[2].length;aH=aN-aC.length}var ax=aA.substring(5);O(ay+aF,aw.substring(0,aH),ap,aO);O(ay+aF+aH,aC,C(ax,aC),aO);O(ay+aF+aN,aw.substring(aN),ap,aO)}}aP.decorations=aO};return ap}function aj(ap){var at=[],au=[];if(ap.tripleQuotedStrings){at.push([aa,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,"'\""])}else{if(ap.multiLineStrings){at.push([aa,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,"'\"`"])}else{at.push([aa,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,"\"'"])}}if(ap.verbatimStrings){au.push([aa,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null])}var aq=ap.hashComments;if(aq){if(ap.cStyleComments){if(aq>1){at.push([j,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,"#"])}else{at.push([j,/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"])}au.push([aa,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,null])}else{at.push([j,/^#[^\r\n]*/,null,"#"])}}if(ap.cStyleComments){au.push([j,/^\/\/[^\r\n]*/,null]);au.push([j,/^\/\*[\s\S]*?(?:\*\/|$)/,null])}if(ap.regexLiterals){var ao=("/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/");au.push(["lang-regex",new RegExp("^"+t+"("+ao+")")])}var ar=ap.keywords.replace(/^\s+|\s+$/g,"");if(ar.length){au.push([Q,new RegExp("^(?:"+ar.replace(/\s+/g,"|")+")\\b"),null])}at.push([Y,/^\s+/,null," \r\n\t\xA0"]);au.push([L,/^@[a-z_$][a-z_$@0-9]*/i,null],[H,/^@?[A-Z]+[a-z][A-Za-z_$@0-9]*/,null],[Y,/^[a-z_$][a-z_$@0-9]*/i,null],[L,new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*","i"),null,"0123456789"],[an,/^.[^\s\w\.$@\'\"\`\/\#]*/,null]);return A(at,au)}var u=aj({keywords:al,hashComments:true,cStyleComments:true,multiLineStrings:true,regexLiterals:true});function k(aO){var aE=aO.source;var aG=aO.extractedTags;var aL=aO.decorations;var aH=aO.numberLines;var av=aO.sourceNode;var aJ=[];var aB=0;var ax=null;var az=null;var aM=0;var aN=0;var aK=G(window.PR_TAB_WIDTH);var ay=/([\r\n ]) /g;var aw=/(^| ) /gm;var ar=/\r\n?|\n/g;var ao=/[ \r\n]$/;var aq=true;var ap=window._pr_isIE6();var aA=(ap?(av&&av.tagName==="PRE"?(ap===6?"&#160;\r\n":ap===7?"&#160;<br />\r":ap===8?"&#160;<br />":"&#160;\r"):"&#160;<br />"):"<br />");var at;if(aH){var aF=[];for(var aD=0;aD<10;++aD){aF[aD]=aA+'</li><li class="L'+aD+'">'}var aC=typeof aH==="number"?aH-1:0;aJ.push('<ol class="linenums"><li class="L',(aC)%10,'"');if(aC){aJ.push(' value="',aC+1,'"')}aJ.push(">");at=function(){var aP=aF[++aC%10];return ax?("</span>"+aP+'<span class="'+ax+'">'):aP}}else{at=aA}function aI(aQ){if(aQ>aB){if(ax&&ax!==az){aJ.push("</span>");ax=null}if(!ax&&az){ax=az;aJ.push('<span class="',ax,'">')}var aP=N(aK(aE.substring(aB,aQ))).replace(aq?aw:ay,"$1&#160;");aq=ao.test(aP);aJ.push(aP.replace(ar,at));aB=aQ}}while(true){var au;if(aM<aG.length){if(aN<aL.length){au=aG[aM]<=aL[aN]}else{au=true}}else{au=false}if(au){aI(aG[aM]);if(ax){aJ.push("</span>");ax=null}aJ.push(aG[aM+1]);aM+=2}else{if(aN<aL.length){aI(aL[aN]);az=aL[aN+1];aN+=2}else{break}}}aI(aE.length);if(ax){aJ.push("</span>")}if(aH){aJ.push("</li></ol>")}aO.prettyPrintedHtml=aJ.join("")}var af={};function l(ao,ap){for(var ar=ap.length;--ar>=0;){var aq=ap[ar];if(!af.hasOwnProperty(aq)){af[aq]=ao}else{if("console" in window){console.warn("cannot override language handler %s",aq)}}}}function C(ao,ap){if(!(ao&&af.hasOwnProperty(ao))){ao=/^\s*</.test(ap)?"default-markup":"default-code"}return af[ao]}l(u,["default-code"]);l(A([],[[Y,/^[^<?]+/],[e,/^<!\w[^>]*(?:>|$)/],[j,/^<\!--[\s\S]*?(?:-\->|$)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],[an,/^(?:<[%?]|[%?]>)/],["lang-",/^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-js",/^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]);l(A([[Y,/^[\s]+/,null," \t\r\n"],[B,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,"\"'"]],[[o,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[X,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[an,/^[=<>\/]+/],["lang-js",/^on\w+\s*=\s*\"([^\"]+)\"/i],["lang-js",/^on\w+\s*=\s*\'([^\']+)\'/i],["lang-js",/^on\w+\s*=\s*([^\"\'>\s]+)/i],["lang-css",/^style\s*=\s*\"([^\"]+)\"/i],["lang-css",/^style\s*=\s*\'([^\']+)\'/i],["lang-css",/^style\s*=\s*([^\"\'>\s]+)/i]]),["in.tag"]);l(A([],[[B,/^[\s\S]+/]]),["uq.val"]);l(aj({keywords:W,hashComments:true,cStyleComments:true}),["c","cc","cpp","cxx","cyc","m"]);l(aj({keywords:"null true false"}),["json"]);l(aj({keywords:ab,hashComments:true,cStyleComments:true,verbatimStrings:true}),["cs"]);l(aj({keywords:n,cStyleComments:true}),["java"]);l(aj({keywords:m,hashComments:true,multiLineStrings:true}),["bsh","csh","sh"]);l(aj({keywords:D,hashComments:true,multiLineStrings:true,tripleQuotedStrings:true}),["cv","py"]);l(aj({keywords:ag,hashComments:true,multiLineStrings:true,regexLiterals:true}),["perl","pl","pm"]);l(aj({keywords:T,hashComments:true,multiLineStrings:true,regexLiterals:true}),["rb"]);l(aj({keywords:V,cStyleComments:true,regexLiterals:true}),["js"]);l(aj({keywords:ai,hashComments:3,cStyleComments:true,multilineStrings:true,tripleQuotedStrings:true,regexLiterals:true}),["coffee"]);l(A([],[[aa,/^[\s\S]+/]]),["regex"]);function s(ap){var au=ap.sourceCodeHtml;var at=ap.langExtension;ap.prettyPrintedHtml=au;try{var aq=ae(au);var ao=aq.source;ap.source=ao;ap.basePos=0;ap.extractedTags=aq.tags;C(at,ao)(ap);k(ap)}catch(ar){if("console" in window){console.log(ar&&ar.stack?ar.stack:ar)}}}function F(ao,ap,aq){var ar={sourceCodeHtml:ao,langExtension:ap,numberLines:aq};s(ar);return ar.prettyPrintedHtml}function Z(ay){function aA(aB){return document.getElementsByTagName(aB)}var ax=[aA("pre"),aA("code"),aA("xmp")];var az=[];for(var ao=0;ao<ax.length;++ao){for(var ap=0,au=ax[ao].length;ap<au;++ap){az.push(ax[ao][ap])}}ax=null;var aq=Date;if(!aq.now){aq={now:function(){return(new Date).getTime()}}}var ar=0;var av;function at(){var aC=(window.PR_SHOULD_USE_CONTINUATION?aq.now()+250:Infinity);for(;ar<az.length&&aq.now()<aC;ar++){var aB=az[ar];if(aB.className&&aB.className.indexOf("prettyprint")>=0){var aF=aB.className.match(/\blang-(\w+)\b/);if(aF){aF=aF[1]}var aH=false;for(var aE=aB.parentNode;aE;aE=aE.parentNode){if((aE.tagName==="pre"||aE.tagName==="code"||aE.tagName==="xmp")&&aE.className&&aE.className.indexOf("prettyprint")>=0){aH=true;break}}if(!aH){var aG=E(aB);aG=aG.replace(/(?:\r\n?|\n)$/,"");var aD=aB.className.match(/\blinenums\b(?::(\d+))?/);av={sourceCodeHtml:aG,langExtension:aF,sourceNode:aB,numberLines:aD?aD[1]&&aD[1].length?+aD[1]:true:false};s(av);aw()}}}if(ar<az.length){setTimeout(at,250)}else{if(ay){ay()}}}function aw(){var aE=av.prettyPrintedHtml;if(!aE){return}var aB=av.sourceNode;if(!ad(aB)){aB.innerHTML=aE}else{var aD=document.createElement("PRE");for(var aC=0;aC<aB.attributes.length;++aC){var aF=aB.attributes[aC];if(aF.specified){var aG=aF.name.toLowerCase();if(aG==="class"){aD.className=aF.value}else{aD.setAttribute(aF.name,aF.value)}}}aD.innerHTML=aE;aB.parentNode.replaceChild(aD,aB);aB=aD}}at()}window.PR_normalizedHtml=w;window.prettyPrintOne=F;window.prettyPrint=Z;window.PR={combinePrefixPatterns:f,createSimpleLexer:A,registerLangHandler:l,sourceDecorator:aj,PR_ATTRIB_NAME:X,PR_ATTRIB_VALUE:B,PR_COMMENT:j,PR_DECLARATION:e,PR_KEYWORD:Q,PR_LITERAL:L,PR_NOCODE:p,PR_PLAIN:Y,PR_PUNCTUATION:an,PR_SOURCE:R,PR_STRING:aa,PR_TAG:o,PR_TYPE:H}})();PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[ \t\r\n\f]+/,null," \t\r\n\f"]],[[PR.PR_STRING,/^\"(?:[^\n\r\f\\\"]|\\(?:\r\n?|\n|\f)|\\[\s\S])*\"/,null],[PR.PR_STRING,/^\'(?:[^\n\r\f\\\']|\\(?:\r\n?|\n|\f)|\\[\s\S])*\'/,null],["lang-css-str",/^url\(([^\)\"\']*)\)/i],[PR.PR_KEYWORD,/^(?:url|rgb|\!important|@import|@page|@media|@charset|inherit)(?=[^\-\w]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|(?:\\[0-9a-f]+ ?))(?:[_a-z0-9\-]|\\(?:\\[0-9a-f]+ ?))*)\s*:/i],[PR.PR_COMMENT,/^\/\*[^*]*\*+(?:[^\/*][^*]*\*+)*\//],[PR.PR_COMMENT,/^(?:<!--|-->)/],[PR.PR_LITERAL,/^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],[PR.PR_LITERAL,/^#(?:[0-9a-f]{3}){1,2}/i],[PR.PR_PLAIN,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i],[PR.PR_PUNCTUATION,/^[^\s\w\'\"]+/]]),["css"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_KEYWORD,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i]]),["css-kw"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_STRING,/^[^\)\"\']+/]]),["css-str"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[\t\n\x0B\x0C\r ]+/,null,"\t\n\x0B\x0C\r "],[PR.PR_STRING,/^\"(?:[^\"\\\n\x0C\r]|\\[\s\S])*(?:\"|$)/,null,'"'],[PR.PR_STRING,/^\'(?:[^\'\\\n\x0C\r]|\\[^&])\'?/,null,"'"],[PR.PR_LITERAL,/^(?:0o[0-7]+|0x[\da-f]+|\d+(?:\.\d+)?(?:e[+\-]?\d+)?)/i,null,"0123456789"]],[[PR.PR_COMMENT,/^(?:(?:--+(?:[^\r\n\x0C]*)?)|(?:\{-(?:[^-]|-+[^-\}])*-\}))/],[PR.PR_KEYWORD,/^(?:case|class|data|default|deriving|do|else|if|import|in|infix|infixl|infixr|instance|let|module|newtype|of|then|type|where|_)(?=[^a-zA-Z0-9\']|$)/,null],[PR.PR_PLAIN,/^(?:[A-Z][\w\']*\.)*[a-zA-Z][\w\']*/],[PR.PR_PUNCTUATION,/^[^\t\n\x0B\x0C\r a-zA-Z0-9\'\"]+/]]),["hs"]);PR.registerLangHandler(PR.createSimpleLexer([["opn",/^\(+/,null,"("],["clo",/^\)+/,null,")"],[PR.PR_COMMENT,/^;[^\r\n]*/,null,";"],[PR.PR_PLAIN,/^[\t\n\r \xA0]+/,null,"\t\n\r \xA0"],[PR.PR_STRING,/^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/,null,'"']],[[PR.PR_KEYWORD,/^(?:block|c[ad]+r|catch|con[ds]|def(?:ine|un)|do|eq|eql|equal|equalp|eval-when|flet|format|go|if|labels|lambda|let|load-time-value|locally|macrolet|multiple-value-call|nil|progn|progv|quote|require|return-from|setq|symbol-macrolet|t|tagbody|the|throw|unwind)\b/,null],[PR.PR_LITERAL,/^[+\-]?(?:[0#]x[0-9a-f]+|\d+\/\d+|(?:\.\d+|\d+(?:\.\d*)?)(?:[ed][+\-]?\d+)?)/i],[PR.PR_LITERAL,/^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/],[PR.PR_PLAIN,/^-*(?:[a-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i],[PR.PR_PUNCTUATION,/^[^\w\t\n\r \xA0()\"\\\';]+/]]),["cl","el","lisp","scm"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[\t\n\r \xA0]+/,null,"\t\n\r \xA0"],[PR.PR_STRING,/^(?:\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)|\'(?:[^\'\\]|\\[\s\S])*(?:\'|$))/,null,"\"'"]],[[PR.PR_COMMENT,/^--(?:\[(=*)\[[\s\S]*?(?:\]\1\]|$)|[^\r\n]*)/],[PR.PR_STRING,/^\[(=*)\[[\s\S]*?(?:\]\1\]|$)/],[PR.PR_KEYWORD,/^(?:and|break|do|else|elseif|end|false|for|function|if|in|local|nil|not|or|repeat|return|then|true|until|while)\b/,null],[PR.PR_LITERAL,/^[+-]?(?:0x[\da-f]+|(?:(?:\.\d+|\d+(?:\.\d*)?)(?:e[+\-]?\d+)?))/i],[PR.PR_PLAIN,/^[a-z_]\w*/i],[PR.PR_PUNCTUATION,/^[^\w\t\n\r \xA0][^\w\t\n\r \xA0\"\'\-\+=]*/]]),["lua"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[\t\n\r \xA0]+/,null,"\t\n\r \xA0"],[PR.PR_COMMENT,/^#(?:if[\t\n\r \xA0]+(?:[a-z_$][\w\']*|``[^\r\n\t`]*(?:``|$))|else|endif|light)/i,null,"#"],[PR.PR_STRING,/^(?:\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)|\'(?:[^\'\\]|\\[\s\S])(?:\'|$))/,null,"\"'"]],[[PR.PR_COMMENT,/^(?:\/\/[^\r\n]*|\(\*[\s\S]*?\*\))/],[PR.PR_KEYWORD,/^(?:abstract|and|as|assert|begin|class|default|delegate|do|done|downcast|downto|elif|else|end|exception|extern|false|finally|for|fun|function|if|in|inherit|inline|interface|internal|lazy|let|match|member|module|mutable|namespace|new|null|of|open|or|override|private|public|rec|return|static|struct|then|to|true|try|type|upcast|use|val|void|when|while|with|yield|asr|land|lor|lsl|lsr|lxor|mod|sig|atomic|break|checked|component|const|constraint|constructor|continue|eager|event|external|fixed|functor|global|include|method|mixin|object|parallel|process|protected|pure|sealed|trait|virtual|volatile)\b/],[PR.PR_LITERAL,/^[+\-]?(?:0x[\da-f]+|(?:(?:\.\d+|\d+(?:\.\d*)?)(?:e[+\-]?\d+)?))/i],[PR.PR_PLAIN,/^(?:[a-z_][\w']*[!?#]?|``[^\r\n\t`]*(?:``|$))/i],[PR.PR_PUNCTUATION,/^[^\t\n\r \xA0\"\'\w]+/]]),["fs","ml"]);PR.registerLangHandler(PR.createSimpleLexer([],[]),["none"]);PR.registerLangHandler(PR.sourceDecorator({keywords:("bool bytes default double enum extend extensions false fixed32 fixed64 float group import int32 int64 max message option optional package repeated required returns rpc service sfixed32 sfixed64 sint32 sint64 string syntax to true uint32 uint64"),cStyleComments:true}),["proto"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[\t\n\r \xA0]+/,null,"\t\n\r \xA0"],[PR.PR_STRING,/^(?:"(?:(?:""(?:""?(?!")|[^\\"]|\\.)*"{0,3})|(?:[^"\r\n\\]|\\.)*"?))/,null,'"'],[PR.PR_LITERAL,/^`(?:[^\r\n\\`]|\\.)*`?/,null,"`"],[PR.PR_PUNCTUATION,/^[!#%&()*+,\-:;<=>?@\[\\\]^{|}~]+/,null,"!#%&()*+,-:;<=>?@[\\]^{|}~"]],[[PR.PR_STRING,/^'(?:[^\r\n\\']|\\(?:'|[^\r\n']+))'/],[PR.PR_LITERAL,/^'[a-zA-Z_$][\w$]*(?!['$\w])/],[PR.PR_KEYWORD,/^(?:abstract|case|catch|class|def|do|else|extends|final|finally|for|forSome|if|implicit|import|lazy|match|new|object|override|package|private|protected|requires|return|sealed|super|throw|trait|try|type|val|var|while|with|yield)\b/],[PR.PR_LITERAL,/^(?:true|false|null|this)\b/],[PR.PR_LITERAL,/^(?:(?:0(?:[0-7]+|X[0-9A-F]+))L?|(?:(?:0|[1-9][0-9]*)(?:(?:\.[0-9]+)?(?:E[+\-]?[0-9]+)?F?|L?))|\\.[0-9]+(?:E[+\-]?[0-9]+)?F?)/i],[PR.PR_TYPE,/^[$_]*[A-Z][_$A-Z0-9]*[a-z][\w$]*/],[PR.PR_PLAIN,/^[$a-zA-Z_][\w$]*/],[PR.PR_COMMENT,/^\/(?:\/.*|\*(?:\/|\**[^*/])*(?:\*+\/?)?)/],[PR.PR_PUNCTUATION,/^(?:\.+|\/)/]]),["scala"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[\t\n\r \xA0]+/,null,"\t\n\r \xA0"],[PR.PR_STRING,/^(?:"(?:[^\"\\]|\\.)*"|'(?:[^\'\\]|\\.)*')/,null,"\"'"]],[[PR.PR_COMMENT,/^(?:--[^\r\n]*|\/\*[\s\S]*?(?:\*\/|$))/],[PR.PR_KEYWORD,/^(?:ADD|ALL|ALTER|AND|ANY|AS|ASC|AUTHORIZATION|BACKUP|BEGIN|BETWEEN|BREAK|BROWSE|BULK|BY|CASCADE|CASE|CHECK|CHECKPOINT|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMN|COMMIT|COMPUTE|CONSTRAINT|CONTAINS|CONTAINSTABLE|CONTINUE|CONVERT|CREATE|CROSS|CURRENT|CURRENT_DATE|CURRENT_TIME|CURRENT_TIMESTAMP|CURRENT_USER|CURSOR|DATABASE|DBCC|DEALLOCATE|DECLARE|DEFAULT|DELETE|DENY|DESC|DISK|DISTINCT|DISTRIBUTED|DOUBLE|DROP|DUMMY|DUMP|ELSE|END|ERRLVL|ESCAPE|EXCEPT|EXEC|EXECUTE|EXISTS|EXIT|FETCH|FILE|FILLFACTOR|FOR|FOREIGN|FREETEXT|FREETEXTTABLE|FROM|FULL|FUNCTION|GOTO|GRANT|GROUP|HAVING|HOLDLOCK|IDENTITY|IDENTITYCOL|IDENTITY_INSERT|IF|IN|INDEX|INNER|INSERT|INTERSECT|INTO|IS|JOIN|KEY|KILL|LEFT|LIKE|LINENO|LOAD|NATIONAL|NOCHECK|NONCLUSTERED|NOT|NULL|NULLIF|OF|OFF|OFFSETS|ON|OPEN|OPENDATASOURCE|OPENQUERY|OPENROWSET|OPENXML|OPTION|OR|ORDER|OUTER|OVER|PERCENT|PLAN|PRECISION|PRIMARY|PRINT|PROC|PROCEDURE|PUBLIC|RAISERROR|READ|READTEXT|RECONFIGURE|REFERENCES|REPLICATION|RESTORE|RESTRICT|RETURN|REVOKE|RIGHT|ROLLBACK|ROWCOUNT|ROWGUIDCOL|RULE|SAVE|SCHEMA|SELECT|SESSION_USER|SET|SETUSER|SHUTDOWN|SOME|STATISTICS|SYSTEM_USER|TABLE|TEXTSIZE|THEN|TO|TOP|TRAN|TRANSACTION|TRIGGER|TRUNCATE|TSEQUAL|UNION|UNIQUE|UPDATE|UPDATETEXT|USE|USER|VALUES|VARYING|VIEW|WAITFOR|WHEN|WHERE|WHILE|WITH|WRITETEXT)(?=[^\w-]|$)/i,null],[PR.PR_LITERAL,/^[+-]?(?:0x[\da-f]+|(?:(?:\.\d+|\d+(?:\.\d*)?)(?:e[+\-]?\d+)?))/i],[PR.PR_PLAIN,/^[a-z_][\w-]*/i],[PR.PR_PUNCTUATION,/^[^\w\t\n\r \xA0\"\'][^\w\t\n\r \xA0+\-\"\']*/]]),["sql"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[\t\n\r \xA0]+/,null,"\t\n\r \xA0"],[PR.PR_COMMENT,/^%[^\r\n]*/,null,"%"]],[[PR.PR_DECLARATION,/^\\([egx]?def|(new|renew|provide)(command|environment))\b/],[PR.PR_KEYWORD,/^\\[a-zA-Z@:]+/],[PR.PR_KEYWORD,/^\\./],[PR.PR_TYPE,/^[$&]/],[PR.PR_LITERAL,/[+-]?(?:\.\d+|\d+(?:\.\d*)?)(cm|em|ex|in|pc|pt|bp|mm)/i],[PR.PR_PUNCTUATION,/^[{}()\[\]=]+/]]),["latex","tex"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[\t\n\r \xA0\u2028\u2029]+/,null,"\t\n\r \xA0\u2028\u2029"],[PR.PR_STRING,/^(?:[\"\u201C\u201D](?:[^\"\u201C\u201D]|[\"\u201C\u201D]{2})(?:[\"\u201C\u201D]c|$)|[\"\u201C\u201D](?:[^\"\u201C\u201D]|[\"\u201C\u201D]{2})*(?:[\"\u201C\u201D]|$))/i,null,'"\u201C\u201D'],[PR.PR_COMMENT,/^[\'\u2018\u2019][^\r\n\u2028\u2029]*/,null,"'\u2018\u2019"]],[[PR.PR_KEYWORD,/^(?:AddHandler|AddressOf|Alias|And|AndAlso|Ansi|As|Assembly|Auto|Boolean|ByRef|Byte|ByVal|Call|Case|Catch|CBool|CByte|CChar|CDate|CDbl|CDec|Char|CInt|Class|CLng|CObj|Const|CShort|CSng|CStr|CType|Date|Decimal|Declare|Default|Delegate|Dim|DirectCast|Do|Double|Each|Else|ElseIf|End|EndIf|Enum|Erase|Error|Event|Exit|Finally|For|Friend|Function|Get|GetType|GoSub|GoTo|Handles|If|Implements|Imports|In|Inherits|Integer|Interface|Is|Let|Lib|Like|Long|Loop|Me|Mod|Module|MustInherit|MustOverride|MyBase|MyClass|Namespace|New|Next|Not|NotInheritable|NotOverridable|Object|On|Option|Optional|Or|OrElse|Overloads|Overridable|Overrides|ParamArray|Preserve|Private|Property|Protected|Public|RaiseEvent|ReadOnly|ReDim|RemoveHandler|Resume|Return|Select|Set|Shadows|Shared|Short|Single|Static|Step|Stop|String|Structure|Sub|SyncLock|Then|Throw|To|Try|TypeOf|Unicode|Until|Variant|Wend|When|While|With|WithEvents|WriteOnly|Xor|EndIf|GoSub|Let|Variant|Wend)\b/i,null],[PR.PR_COMMENT,/^REM[^\r\n\u2028\u2029]*/i],[PR.PR_LITERAL,/^(?:True\b|False\b|Nothing\b|\d+(?:E[+\-]?\d+[FRD]?|[FRDSIL])?|(?:&H[0-9A-F]+|&O[0-7]+)[SIL]?|\d*\.\d+(?:E[+\-]?\d+)?[FRD]?|#\s+(?:\d+[\-\/]\d+[\-\/]\d+(?:\s+\d+:\d+(?::\d+)?(\s*(?:AM|PM))?)?|\d+:\d+(?::\d+)?(\s*(?:AM|PM))?)\s+#)/i],[PR.PR_PLAIN,/^(?:(?:[a-z]|_\w)\w*|\[(?:[a-z]|_\w)\w*\])/i],[PR.PR_PUNCTUATION,/^[^\w\t\n\r \"\'\[\]\xA0\u2018\u2019\u201C\u201D\u2028\u2029]+/],[PR.PR_PUNCTUATION,/^(?:\[|\])/]]),["vb","vbs"]);StackExchange.prettify={applyCodeStyling:window.prettyPrint};