@ttmg/cli 0.0.11 → 0.0.12-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/dist/acorn-BdJAsJ8B.js +2 -0
- package/dist/acorn-BdJAsJ8B.js.map +1 -0
- package/dist/angular-NBOYSdm_.js +2 -0
- package/dist/angular-NBOYSdm_.js.map +1 -0
- package/dist/babel-Cz9UyhT1.js +2 -0
- package/dist/babel-Cz9UyhT1.js.map +1 -0
- package/dist/estree-Cpw1IbUG.js +2 -0
- package/dist/estree-Cpw1IbUG.js.map +1 -0
- package/dist/flow-CEifwVfD.js +2 -0
- package/dist/flow-CEifwVfD.js.map +1 -0
- package/dist/glimmer-HhuN0Cpa.js +2 -0
- package/dist/glimmer-HhuN0Cpa.js.map +1 -0
- package/dist/graphql-C0LdZ-FR.js +2 -0
- package/dist/graphql-C0LdZ-FR.js.map +1 -0
- package/dist/html-CTo_n3CO.js +2 -0
- package/dist/html-CTo_n3CO.js.map +1 -0
- package/dist/index-C5TRyXT-.js +2 -0
- package/dist/index-C5TRyXT-.js.map +1 -0
- package/dist/index.cjs +3 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.js +57 -1
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +3 -0
- package/dist/index.mjs.map +1 -0
- package/dist/markdown-BCWKCKF0.js +2 -0
- package/dist/markdown-BCWKCKF0.js.map +1 -0
- package/dist/meriyah-CkXe63E7.js +2 -0
- package/dist/meriyah-CkXe63E7.js.map +1 -0
- package/dist/postcss-BX--ySLa.js +2 -0
- package/dist/postcss-BX--ySLa.js.map +1 -0
- package/dist/types/src/h5/index.d.ts +3 -0
- package/dist/types/src/index.d.ts +2 -0
- package/dist/types/src/libs/centerQRCode.d.ts +1 -0
- package/dist/types/src/libs/getDesktopPath.d.ts +1 -0
- package/dist/types/src/libs/getLocalIP.d.ts +1 -0
- package/dist/types/src/libs/index.d.ts +4 -0
- package/dist/types/src/libs/openUrl.d.ts +1 -0
- package/dist/types/src/libs/program.d.ts +3 -0
- package/dist/types/src/native/dev/config/index.d.ts +1 -0
- package/dist/types/src/native/dev/index.d.ts +2 -0
- package/dist/types/src/native/dev/utils/devServer.d.ts +2 -0
- package/dist/types/src/native/dev/utils/getClientKey.d.ts +4 -0
- package/dist/types/src/native/dev/utils/getSchema.d.ts +1 -0
- package/dist/types/src/native/dev/utils/index.d.ts +3 -0
- package/dist/types/src/native/index.d.ts +1 -0
- package/dist/typescript-ztdoDXBH.js +2 -0
- package/dist/typescript-ztdoDXBH.js.map +1 -0
- package/dist/yaml-CIIYxOPp.js +2 -0
- package/dist/yaml-CIIYxOPp.js.map +1 -0
- package/package.json +19 -16
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var t=Object.defineProperty,e=t=>{throw TypeError(t)},r=(e,r)=>{for(var a in r)t(e,a,{get:r[a],enumerable:!0})},a=(t,r,a)=>r.has(t)||e("Cannot "+a),n=(t,e,r)=>(a(t,e,"read from private field"),e.get(t)),s=(t,r,a)=>r.has(t)?e("Cannot add the same private member more than once"):r instanceof WeakSet?r.add(t):r.set(t,a),i=(t,e,r,n)=>(a(t,e,"write to private field"),e.set(t,r),r),o={};r(o,{languages:()=>$t,parsers:()=>Ut,printers:()=>Hr});var l=(t,e,r,a)=>{if(!t||null!=e)return e.replaceAll?e.replaceAll(r,a):r.global?e.replace(r,a):e.split(r).join(a)},c="string",u="array",h="cursor",p="indent",d="align",m="trim",g="group",f="fill",b="if-break",y="indent-if-break",v="line-suffix",S="line-suffix-boundary",w="line",k="label",T="break-parent",E=new Set([h,p,d,m,g,f,b,y,v,S,w,k,T]),N=(t,e,r)=>{if(!t||null!=e)return Array.isArray(e)||"string"==typeof e?e[r<0?e.length+r:r]:e.at(r)};var P=function(t){if("string"==typeof t)return c;if(Array.isArray(t))return u;if(!t)return;let{type:e}=t;return E.has(e)?e:void 0};function A(t){let e=null===t?"null":typeof t;if("string"!==e&&"object"!==e)return`Unexpected doc '${e}', \nExpected it to be 'string' or 'object'.`;if(P(t))throw new Error("doc is valid.");let r=Object.prototype.toString.call(t);if("[object Object]"!==r)return`Unexpected doc '${r}'.`;let a=(t=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(t))([...E].map(t=>`'${t}'`));return`Unexpected doc.type '${t.type}'.\nExpected it to be ${a}.`}var x=class extends Error{name="InvalidDocError";constructor(t){super(A(t)),this.doc=t}};function D(t,e){if("string"==typeof t)return e(t);let r=new Map;return a(t);function a(t){if(r.has(t))return r.get(t);let n=function(t){switch(P(t)){case u:return e(t.map(a));case f:return e({...t,parts:t.parts.map(a)});case b:return e({...t,breakContents:a(t.breakContents),flatContents:a(t.flatContents)});case g:{let{expandedStates:r,contents:n}=t;return r?(r=r.map(a),n=r[0]):n=a(n),e({...t,contents:n,expandedStates:r})}case d:case p:case y:case k:case v:return e({...t,contents:a(t.contents)});case c:case h:case m:case S:case w:case T:return e(t);default:throw new x(t)}}(t);return r.set(t,n),n}}var C=()=>{};function L(t){return{type:p,contents:t}}function q(t,e={}){return C(e.expandedStates),{type:g,id:e.id,contents:t,break:!!e.shouldBreak,expandedStates:e.expandedStates}}function _(t){return function(t,e){return{type:d,contents:e,n:t}}(-1,t)}function O(t){return{type:f,parts:t}}function I(t,e="",r={}){return{type:b,breakContents:t,flatContents:e,groupId:r.groupId}}var B={type:T},V={type:w},R={type:w,soft:!0},$=[{type:w,hard:!0},B],U=[{type:w,hard:!0,literal:!0},B];function H(t,e){let r=[];for(let a=0;a<e.length;a++)0!==a&&r.push(t),r.push(e[a]);return r}var F="'";var z=function(t,e){let r=!0===e||e===F?F:'"',a=r===F?'"':F,n=0,s=0;for(let e of t)e===r?n++:e===a&&s++;return n>s?a:r};var M;M=new WeakMap;var j=new class{constructor(t){s(this,M),i(this,M,new Set(t))}getLeadingWhitespaceCount(t){let e=n(this,M),r=0;for(let a=0;a<t.length&&e.has(t.charAt(a));a++)r++;return r}getTrailingWhitespaceCount(t){let e=n(this,M),r=0;for(let a=t.length-1;a>=0&&e.has(t.charAt(a));a--)r++;return r}getLeadingWhitespace(t){let e=this.getLeadingWhitespaceCount(t);return t.slice(0,e)}getTrailingWhitespace(t){let e=this.getTrailingWhitespaceCount(t);return t.slice(t.length-e)}hasLeadingWhitespace(t){return n(this,M).has(t.charAt(0))}hasTrailingWhitespace(t){return n(this,M).has(N(!1,t,-1))}trimStart(t){let e=this.getLeadingWhitespaceCount(t);return t.slice(e)}trimEnd(t){let e=this.getTrailingWhitespaceCount(t);return t.slice(0,t.length-e)}trim(t){return this.trimEnd(this.trimStart(t))}split(t,e=!1){let r=`[${function(t){if("string"!=typeof t)throw new TypeError("Expected a string");return t.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}([...n(this,M)].join(""))}]+`,a=new RegExp(e?`(${r})`:r,"u");return t.split(a)}hasWhitespaceCharacter(t){let e=n(this,M);return Array.prototype.some.call(t,t=>e.has(t))}hasNonWhitespaceCharacter(t){let e=n(this,M);return Array.prototype.some.call(t,t=>!e.has(t))}isWhitespaceOnly(t){let e=n(this,M);return Array.prototype.every.call(t,t=>e.has(t))}}(["\t","\n","\f","\r"," "]);var W=function(t){return Array.isArray(t)&&t.length>0},G=class extends Error{name="UnexpectedNodeError";constructor(t,e,r="type"){super(`Unexpected ${e} node ${r}: ${JSON.stringify(t[r])}.`),this.node=t}};function K(t,e,r){if("TextNode"===t.type){let a=t.chars.trim();if(!a)return null;"style"===r.tag&&1===r.children.length&&r.children[0]===t?e.chars="":e.chars=j.split(a).join(" ")}"ElementNode"===t.type&&(delete e.startTag,delete e.openTag,delete e.parts,delete e.endTag,delete e.closeTag,delete e.nameNode,delete e.body,delete e.blockParamNodes,delete e.params,delete e.path),"Block"===t.type&&(delete e.blockParamNodes,delete e.params),"AttrNode"===t.type&&"class"===t.name.toLowerCase()&&delete e.value,"PathExpression"===t.type&&(e.head=t.head.original)}K.ignoredProperties=new Set(["loc","selfClosing"]);var Q=K;var J=function(t){let{node:e}=t;if("TextNode"!==e.type)return;let{parent:r}=t;if("ElementNode"!==r.type||"style"!==r.tag||1!==r.children.length||r.children[0]!==e)return;let a=r.attributes.find(t=>"AttrNode"===t.type&&"lang"===t.name);return a&&("TextNode"!==a.value.type||""!==a.value.chars&&"css"!==a.value.chars)?void 0:async t=>{let r=await t(e.chars,{parser:"css"});return r?[$,r,_(R)]:[]}},Y=null;function Z(t){if(null!==Y&&(Y.property,1)){let t=Y;return Y=Z.prototype=null,t}return Y=Z.prototype=t??Object.create(null),new Z}for(let t=0;t<=10;t++)Z();var X=function(t,e="type"){return function(t){Z(t)}(t),function(r){let a=r[e],n=t[a];if(!Array.isArray(n))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:r});return n}}({Template:["body"],Block:["body"],MustacheStatement:["path","params","hash"],BlockStatement:["path","params","hash","program","inverse"],ElementModifierStatement:["path","params","hash"],CommentStatement:[],MustacheCommentStatement:[],ElementNode:["attributes","modifiers","children","comments"],AttrNode:["value"],TextNode:[],ConcatStatement:["parts"],SubExpression:["path","params","hash"],PathExpression:[],StringLiteral:[],BooleanLiteral:[],NumberLiteral:[],NullLiteral:[],UndefinedLiteral:[],Hash:["pairs"],HashPair:["value"]});function tt(t){return t.loc.start.offset}function et(t){return t.loc.end.offset}var rt=new Set(["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]);function at(t){return t.toUpperCase()===t}function nt(t){return!0===t.selfClosing||function(t){return rt.has(t.toLowerCase())&&!at(t[0])}(t.tag)||function(t){return"ElementNode"===t.type&&"string"==typeof t.tag&&!t.tag.startsWith(":")&&(at(t.tag[0])||t.tag.includes("."))}(t)&&t.children.every(t=>st(t))}function st(t){return"TextNode"===t.type&&!/\S/u.test(t.chars)}function it(t){return"MustacheCommentStatement"===(null==t?void 0:t.type)&&"string"==typeof t.value&&"prettier-ignore"===t.value.trim()}function ot(t,e){return tt(t)-tt(e)}function lt(t,e,r){let{node:a}=t,n=a.children.every(t=>st(t));return"ignore"===e.htmlWhitespaceSensitivity&&n?"":t.map(({isFirst:t})=>{let a=r();return t&&"ignore"===e.htmlWhitespaceSensitivity?[R,a]:a},"children")}function ct(t){return nt(t)?I([R,"/>"],[" />",R]):I([R,">"],">")}function ut(t){var e;return[t.trusting?"{{{":"{{",null!=(e=t.strip)&&e.open?"~":""]}function ht(t){var e;let r=t.trusting?"}}}":"}}";return[null!=(e=t.strip)&&e.close?"~":"",r]}function pt(t){return[ut(t),t.openStrip.open?"~":"","#"]}function dt(t){let e=ht(t);return[t.openStrip.close?"~":"",e]}function mt(t){return[ut(t),t.closeStrip.open?"~":"","/"]}function gt(t){let e=ht(t);return[t.closeStrip.close?"~":"",e]}function ft(t){return[ut(t),t.inverseStrip.open?"~":""]}function bt(t){let e=ht(t);return[t.inverseStrip.close?"~":"",e]}function yt(t,e){let{node:r}=t,a=[],n=_t(t,e);return n&&a.push(q(n)),W(r.program.blockParams)&&a.push(Ot(r.program)),q([pt(r),qt(t,e),a.length>0?L([V,H(V,a)]):"",R,dt(r)])}function vt(t,e){return["ignore"===e.htmlWhitespaceSensitivity?$:"",ft(t),"else",bt(t)]}var St=(t,e)=>"VarHead"===t.head.type&&"VarHead"===e.head.type&&t.head.name===e.head.name;function wt(t,e){let{node:r,grandparent:a}=t;return q([ft(a),["else"," ",a.inverse.body[0].path.head.name],L([V,q(_t(t,e)),...W(r.program.blockParams)?[V,Ot(r.program)]:[]]),R,bt(a)])}function kt(t,e,r){let{node:a}=t;return"ignore"===e.htmlWhitespaceSensitivity?[Tt(a)?R:$,mt(a),r("path"),gt(a)]:[mt(a),r("path"),gt(a)]}function Tt(t){return"BlockStatement"===t.type&&t.program.body.every(t=>st(t))}function Et(t){return"BlockStatement"===t.type&&t.inverse}function Nt(t,e,r){let{node:a}=t;if(Tt(a))return"";let n=r("program");return"ignore"===e.htmlWhitespaceSensitivity?L([$,n]):L(n)}function Pt(t,e,r){let{node:a}=t,n=r("inverse"),s="ignore"===e.htmlWhitespaceSensitivity?[$,n]:n;return function(t){return Et(t)&&1===t.inverse.body.length&&"BlockStatement"===t.inverse.body[0].type&&St(t.inverse.body[0].path,t.path)}(a)?s:Et(a)?[vt(a,e),L(s)]:""}function At(t){return H(V,j.split(t))}function xt(t){return(t="string"==typeof t?t:"").split("\n").length-1}function Dt(t=0){return Array.from({length:Math.min(t,2)}).fill($)}function Ct(t,e){let r=qt(t,e),a=_t(t,e);return a?L([r,V,q(a)]):r}function Lt(t,e){let r=qt(t,e),a=_t(t,e);return a?[L([r,V,a]),R]:r}function qt(t,e){return e("path")}function _t(t,e){var r;let{node:a}=t,n=[];return a.params.length>0&&n.push(...t.map(e,"params")),(null==(r=a.hash)?void 0:r.pairs.length)>0&&n.push(e("hash")),0===n.length?"":H(V,n)}function Ot(t){return["as |",t.blockParams.join(" "),"|"]}var It=new Set("!\"#%&'()*+,./;<=>@[\\]^`{|}~"),Bt=new Set(["true","false","null","undefined"]),Vt=(t,e)=>(0!==e||!t.startsWith("@"))&&(0!==e&&Bt.has(t)||/\s/u.test(t)||/^\d/u.test(t)||Array.prototype.some.call(t,t=>It.has(t)));var Rt={print:function(t,e,r){var a,n,s,i,o,c,u,h,p;let{node:d}=t;switch(d.type){case"Block":case"Program":case"Template":return q(t.map(r,"body"));case"ElementNode":{let n=q(function(t,e){let{node:r}=t,a=["attributes","modifiers","comments"].filter(t=>W(r[t])),n=a.flatMap(t=>r[t]).sort(ot);for(let r of a)t.each(({node:t})=>{let r=n.indexOf(t);n.splice(r,1,[V,e()])},r);return W(r.blockParams)&&n.push(V,Ot(r)),["<",r.tag,L(n),ct(r)]}(t,r)),s="ignore"===e.htmlWhitespaceSensitivity&&"ElementNode"===(null==(a=t.next)?void 0:a.type)?R:"";if(nt(d))return[n,s];let i=["</",d.tag,">"];return 0===d.children.length?[n,L(i),s]:"ignore"===e.htmlWhitespaceSensitivity?[n,L(lt(t,e,r)),$,L(i),s]:[n,L(q(lt(t,e,r))),L(i),s]}case"BlockStatement":return function(t){var e;let{grandparent:r,node:a}=t;return 1===(null==(e=null==r?void 0:r.inverse)?void 0:e.body.length)&&r.inverse.body[0]===a&&St(r.inverse.body[0].path,r.path)}(t)?[wt(t,r),Nt(t,e,r),Pt(t,e,r)]:[yt(t,r),q([Nt(t,e,r),Pt(t,e,r),kt(t,e,r)])];case"ElementModifierStatement":return q(["{{",Lt(t,r),"}}"]);case"MustacheStatement":return q([ut(d),Lt(t,r),ht(d)]);case"SubExpression":return q(["(",Ct(t,r),R,")"]);case"AttrNode":{let{name:t,value:a}=d,n="TextNode"===a.type;if(n&&""===a.chars&&tt(a)===et(a))return t;let s=n?z(a.chars,e.singleQuote):"ConcatStatement"===a.type?z(a.parts.map(t=>"TextNode"===t.type?t.chars:"").join(""),e.singleQuote):"",i=r("value");return[t,"=",s,"class"===t&&s?q(L(i)):i,s]}case"ConcatStatement":return t.map(r,"parts");case"Hash":return H(V,t.map(r,"pairs"));case"HashPair":return[d.key,"=",r("value")];case"TextNode":{if("pre"===t.parent.tag||"style"===t.parent.tag)return d.chars;let r=l(!1,d.chars,"{{",String.raw`\{{`),a=function(t){for(let e=0;e<2;e++){let r=t.getParentNode(e);if("AttrNode"===(null==r?void 0:r.type))return r.name.toLowerCase()}}(t);if(a){if("class"===a){let e=r.trim().split(/\s+/u).join(" "),a=!1,i=!1;return"ConcatStatement"===t.parent.type&&("MustacheStatement"===(null==(n=t.previous)?void 0:n.type)&&/^\s/u.test(r)&&(a=!0),"MustacheStatement"===(null==(s=t.next)?void 0:s.type)&&/\s$/u.test(r)&&""!==e&&(i=!0)),[a?V:"",e,i?V:""]}return function(t,e=U){return D(t,t=>"string"==typeof t?H(e,t.split("\n")):t)}(r)}let m=j.isWhitespaceOnly(r),{isFirst:g,isLast:f}=t;if("ignore"!==e.htmlWhitespaceSensitivity){let e=f&&"Template"===t.parent.type,a=g&&"Template"===t.parent.type;if(m){if(a||e)return"";let t=[V],n=xt(r);return n&&(t=Dt(n)),f&&(t=t.map(t=>_(t))),t}let n=j.getLeadingWhitespace(r),s=[];if(n){s=[V];let t=xt(n);t&&(s=Dt(t)),r=r.slice(n.length)}let i=j.getTrailingWhitespace(r),o=[];if(i){if(!e){o=[V];let t=xt(i);t&&(o=Dt(t)),f&&(o=o.map(t=>_(t)))}r=r.slice(0,-i.length)}return[...s,O(At(r)),...o]}let b=xt(r),y=function(t){t="string"==typeof t?t:"";let e=(t.match(/^([^\S\n\r]*[\n\r])+/gu)||[])[0]||"";return xt(e)}(r),v=function(t){t="string"==typeof t?t:"";let e=(t.match(/([\n\r][^\S\n\r]*)+$/gu)||[])[0]||"";return xt(e)}(r);if((g||f)&&m&&("Block"===t.parent.type||"ElementNode"===t.parent.type||"Template"===t.parent.type))return"";m&&b?(y=Math.min(b,2),v=0):(("BlockStatement"===(null==(i=t.next)?void 0:i.type)||"ElementNode"===(null==(o=t.next)?void 0:o.type))&&(v=Math.max(v,1)),("BlockStatement"===(null==(c=t.previous)?void 0:c.type)||"ElementNode"===(null==(u=t.previous)?void 0:u.type))&&(y=Math.max(y,1)));let S="",w="";return 0===v&&"MustacheStatement"===(null==(h=t.next)?void 0:h.type)&&(w=" "),0===y&&"MustacheStatement"===(null==(p=t.previous)?void 0:p.type)&&(S=" "),g&&(y=0,S=""),f&&(v=0,w=""),j.hasLeadingWhitespace(r)&&(r=S+j.trimStart(r)),j.hasTrailingWhitespace(r)&&(r=j.trimEnd(r)+w),[...Dt(y),O(At(r)),...Dt(v)]}case"MustacheCommentStatement":{let t=tt(d),r=et(d),a="~"===e.originalText.charAt(t+2),n="~"===e.originalText.charAt(r-3),s=d.value.includes("}}")?"--":"";return["{{",a?"~":"","!",s,d.value,s,n?"~":"","}}"]}case"PathExpression":return function(t){return 0===t.tail.length&&t.original.includes("/")?t.original:[t.head.original,...t.tail].map((t,e)=>Vt(t,e)?`[${t}]`:t).join(".")}(d);case"BooleanLiteral":case"NumberLiteral":return String(d.value);case"CommentStatement":return["\x3c!--",d.value,"--\x3e"];case"StringLiteral":return function(t,e){let{node:{value:r}}=t,a=z(r,function(t){let{ancestors:e}=t,r=e.findIndex(t=>"SubExpression"!==t.type);return-1!==r&&"ConcatStatement"===e[r+1].type&&"AttrNode"===e[r+2].type}(t)?!e.singleQuote:e.singleQuote);return[a,l(!1,r,a,`\\${a}`),a]}(t,e);case"UndefinedLiteral":return"undefined";case"NullLiteral":return"null";default:throw new G(d,"Handlebars")}},massageAstNode:Q,hasPrettierIgnore:function(t){return it(t.node)||t.isInArray&&("children"===t.key||"body"===t.key||"parts"===t.key)&&it(t.siblings[t.index-2])},getVisitorKeys:X,embed:J},$t=[{name:"Handlebars",type:"markup",extensions:[".handlebars",".hbs"],tmScope:"text.html.handlebars",aceMode:"handlebars",aliases:["hbs","htmlbars"],parsers:["glimmer"],vscodeLanguageIds:["handlebars"],linguistLanguageId:155}],Ut={};r(Ut,{glimmer:()=>Ur});var Ht=Object.assign,Ft=console;var zt=function(){var t=function(t,e,r,a){for(r=r||{},a=t.length;a--;r[t[a]]=e);return r},e=[2,44],r=[1,20],a=[5,14,15,19,29,34,39,44,47,48,52,56,60],n=[1,35],s=[1,38],i=[1,30],o=[1,31],l=[1,32],c=[1,33],u=[1,34],h=[1,37],p=[14,15,19,29,34,39,44,47,48,52,56,60],d=[14,15,19,29,34,44,47,48,52,56,60],m=[15,18],g=[14,15,19,29,34,47,48,52,56,60],f=[33,64,71,79,80,81,82,83,84],b=[23,33,55,64,67,71,74,79,80,81,82,83,84],y=[1,51],v=[23,33,55,64,67,71,74,79,80,81,82,83,84,86],S=[2,43],w=[55,64,71,79,80,81,82,83,84],k=[1,58],T=[1,59],E=[1,66],N=[33,64,71,74,79,80,81,82,83,84],P=[23,64,71,79,80,81,82,83,84],A=[1,76],x=[64,67,71,79,80,81,82,83,84],D=[33,74],C=[23,33,55,67,71,74],L=[1,106],q=[1,118],_=[71,76],O={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,partialBlock:12,content:13,COMMENT:14,CONTENT:15,openRawBlock:16,rawBlock_repetition0:17,END_RAW_BLOCK:18,OPEN_RAW_BLOCK:19,helperName:20,openRawBlock_repetition0:21,openRawBlock_option0:22,CLOSE_RAW_BLOCK:23,openBlock:24,block_option0:25,closeBlock:26,openInverse:27,block_option1:28,OPEN_BLOCK:29,openBlock_repetition0:30,openBlock_option0:31,openBlock_option1:32,CLOSE:33,OPEN_INVERSE:34,openInverse_repetition0:35,openInverse_option0:36,openInverse_option1:37,openInverseChain:38,OPEN_INVERSE_CHAIN:39,openInverseChain_repetition0:40,openInverseChain_option0:41,openInverseChain_option1:42,inverseAndProgram:43,INVERSE:44,inverseChain:45,inverseChain_option0:46,OPEN_ENDBLOCK:47,OPEN:48,expr:49,mustache_repetition0:50,mustache_option0:51,OPEN_UNESCAPED:52,mustache_repetition1:53,mustache_option1:54,CLOSE_UNESCAPED:55,OPEN_PARTIAL:56,partial_repetition0:57,partial_option0:58,openPartialBlock:59,OPEN_PARTIAL_BLOCK:60,openPartialBlock_repetition0:61,openPartialBlock_option0:62,sexpr:63,OPEN_SEXPR:64,sexpr_repetition0:65,sexpr_option0:66,CLOSE_SEXPR:67,hash:68,hash_repetition_plus0:69,hashSegment:70,ID:71,EQUALS:72,blockParams:73,OPEN_BLOCK_PARAMS:74,blockParams_repetition_plus0:75,CLOSE_BLOCK_PARAMS:76,path:77,dataName:78,STRING:79,NUMBER:80,BOOLEAN:81,UNDEFINED:82,NULL:83,DATA:84,pathSegments:85,SEP:86,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",14:"COMMENT",15:"CONTENT",18:"END_RAW_BLOCK",19:"OPEN_RAW_BLOCK",23:"CLOSE_RAW_BLOCK",29:"OPEN_BLOCK",33:"CLOSE",34:"OPEN_INVERSE",39:"OPEN_INVERSE_CHAIN",44:"INVERSE",47:"OPEN_ENDBLOCK",48:"OPEN",52:"OPEN_UNESCAPED",55:"CLOSE_UNESCAPED",56:"OPEN_PARTIAL",60:"OPEN_PARTIAL_BLOCK",64:"OPEN_SEXPR",67:"CLOSE_SEXPR",71:"ID",72:"EQUALS",74:"OPEN_BLOCK_PARAMS",76:"CLOSE_BLOCK_PARAMS",79:"STRING",80:"NUMBER",81:"BOOLEAN",82:"UNDEFINED",83:"NULL",84:"DATA",86:"SEP"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[49,1],[49,1],[63,5],[68,1],[70,3],[73,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[78,2],[77,1],[85,3],[85,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[50,0],[50,2],[51,0],[51,1],[53,0],[53,2],[54,0],[54,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[65,0],[65,2],[66,0],[66,1],[69,1],[69,2],[75,1],[75,2]],performAction:function(t,e,r,a,n,s,i){var o=s.length-1;switch(n){case 1:return s[o-1];case 2:this.$=a.prepareProgram(s[o]);break;case 3:case 4:case 5:case 6:case 7:case 8:case 20:case 27:case 28:case 33:case 34:this.$=s[o];break;case 9:this.$={type:"CommentStatement",value:a.stripComment(s[o]),strip:a.stripFlags(s[o],s[o]),loc:a.locInfo(this._$)};break;case 10:this.$={type:"ContentStatement",original:s[o],value:s[o],loc:a.locInfo(this._$)};break;case 11:this.$=a.prepareRawBlock(s[o-2],s[o-1],s[o],this._$);break;case 12:this.$={path:s[o-3],params:s[o-2],hash:s[o-1]};break;case 13:this.$=a.prepareBlock(s[o-3],s[o-2],s[o-1],s[o],!1,this._$);break;case 14:this.$=a.prepareBlock(s[o-3],s[o-2],s[o-1],s[o],!0,this._$);break;case 15:this.$={open:s[o-5],path:s[o-4],params:s[o-3],hash:s[o-2],blockParams:s[o-1],strip:a.stripFlags(s[o-5],s[o])};break;case 16:case 17:this.$={path:s[o-4],params:s[o-3],hash:s[o-2],blockParams:s[o-1],strip:a.stripFlags(s[o-5],s[o])};break;case 18:this.$={strip:a.stripFlags(s[o-1],s[o-1]),program:s[o]};break;case 19:var l=a.prepareBlock(s[o-2],s[o-1],s[o],s[o],!1,this._$),c=a.prepareProgram([l],s[o-1].loc);c.chained=!0,this.$={strip:s[o-2].strip,program:c,chain:!0};break;case 21:this.$={path:s[o-1],strip:a.stripFlags(s[o-2],s[o])};break;case 22:case 23:this.$=a.prepareMustache(s[o-3],s[o-2],s[o-1],s[o-4],a.stripFlags(s[o-4],s[o]),this._$);break;case 24:this.$={type:"PartialStatement",name:s[o-3],params:s[o-2],hash:s[o-1],indent:"",strip:a.stripFlags(s[o-4],s[o]),loc:a.locInfo(this._$)};break;case 25:this.$=a.preparePartialBlock(s[o-2],s[o-1],s[o],this._$);break;case 26:this.$={path:s[o-3],params:s[o-2],hash:s[o-1],strip:a.stripFlags(s[o-4],s[o])};break;case 29:this.$={type:"SubExpression",path:s[o-3],params:s[o-2],hash:s[o-1],loc:a.locInfo(this._$)};break;case 30:this.$={type:"Hash",pairs:s[o],loc:a.locInfo(this._$)};break;case 31:this.$={type:"HashPair",key:a.id(s[o-2]),value:s[o],loc:a.locInfo(this._$)};break;case 32:this.$=a.id(s[o-1]);break;case 35:this.$={type:"StringLiteral",value:s[o],original:s[o],loc:a.locInfo(this._$)};break;case 36:this.$={type:"NumberLiteral",value:Number(s[o]),original:Number(s[o]),loc:a.locInfo(this._$)};break;case 37:this.$={type:"BooleanLiteral",value:"true"===s[o],original:"true"===s[o],loc:a.locInfo(this._$)};break;case 38:this.$={type:"UndefinedLiteral",original:void 0,value:void 0,loc:a.locInfo(this._$)};break;case 39:this.$={type:"NullLiteral",original:null,value:null,loc:a.locInfo(this._$)};break;case 40:this.$=a.preparePath(!0,s[o],this._$);break;case 41:this.$=a.preparePath(!1,s[o],this._$);break;case 42:s[o-2].push({part:a.id(s[o]),original:s[o],separator:s[o-1]}),this.$=s[o-2];break;case 43:this.$=[{part:a.id(s[o]),original:s[o]}];break;case 44:case 46:case 48:case 56:case 62:case 68:case 76:case 80:case 84:case 88:case 92:this.$=[];break;case 45:case 47:case 49:case 57:case 63:case 69:case 77:case 81:case 85:case 89:case 93:case 97:case 99:s[o-1].push(s[o]);break;case 96:case 98:this.$=[s[o]]}},table:[t([5,14,15,19,29,34,48,52,56,60],e,{3:1,4:2,6:3}),{1:[3]},{5:[1,4]},t([5,39,44,47],[2,2],{7:5,8:6,9:7,10:8,11:9,12:10,13:11,24:15,27:16,16:17,59:19,14:[1,12],15:r,19:[1,23],29:[1,21],34:[1,22],48:[1,13],52:[1,14],56:[1,18],60:[1,24]}),{1:[2,1]},t(a,[2,45]),t(a,[2,3]),t(a,[2,4]),t(a,[2,5]),t(a,[2,6]),t(a,[2,7]),t(a,[2,8]),t(a,[2,9]),{20:26,49:25,63:27,64:n,71:s,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},{20:26,49:39,63:27,64:n,71:s,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},t(p,e,{6:3,4:40}),t(d,e,{6:3,4:41}),t(m,[2,46],{17:42}),{20:26,49:43,63:27,64:n,71:s,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},t(g,e,{6:3,4:44}),t([5,14,15,18,19,29,34,39,44,47,48,52,56,60],[2,10]),{20:45,71:s,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},{20:46,71:s,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},{20:47,71:s,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},{20:26,49:48,63:27,64:n,71:s,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},t(f,[2,76],{50:49}),t(b,[2,27]),t(b,[2,28]),t(b,[2,33]),t(b,[2,34]),t(b,[2,35]),t(b,[2,36]),t(b,[2,37]),t(b,[2,38]),t(b,[2,39]),{20:26,49:50,63:27,64:n,71:s,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},t(b,[2,41],{86:y}),{71:s,85:52},t(v,S),t(w,[2,80],{53:53}),{25:54,38:56,39:k,43:57,44:T,45:55,47:[2,52]},{28:60,43:61,44:T,47:[2,54]},{13:63,15:r,18:[1,62]},t(f,[2,84],{57:64}),{26:65,47:E},t(N,[2,56],{30:67}),t(N,[2,62],{35:68}),t(P,[2,48],{21:69}),t(f,[2,88],{61:70}),{20:26,33:[2,78],49:72,51:71,63:27,64:n,68:73,69:74,70:75,71:A,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},t(x,[2,92],{65:77}),{71:[1,78]},t(b,[2,40],{86:y}),{20:26,49:80,54:79,55:[2,82],63:27,64:n,68:81,69:74,70:75,71:A,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},{26:82,47:E},{47:[2,53]},t(p,e,{6:3,4:83}),{47:[2,20]},{20:84,71:s,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},t(g,e,{6:3,4:85}),{26:86,47:E},{47:[2,55]},t(a,[2,11]),t(m,[2,47]),{20:26,33:[2,86],49:88,58:87,63:27,64:n,68:89,69:74,70:75,71:A,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},t(a,[2,25]),{20:90,71:s,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},t(D,[2,58],{20:26,63:27,77:28,78:29,85:36,69:74,70:75,31:91,49:92,68:93,64:n,71:A,79:i,80:o,81:l,82:c,83:u,84:h}),t(D,[2,64],{20:26,63:27,77:28,78:29,85:36,69:74,70:75,36:94,49:95,68:96,64:n,71:A,79:i,80:o,81:l,82:c,83:u,84:h}),{20:26,22:97,23:[2,50],49:98,63:27,64:n,68:99,69:74,70:75,71:A,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},{20:26,33:[2,90],49:101,62:100,63:27,64:n,68:102,69:74,70:75,71:A,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},{33:[1,103]},t(f,[2,77]),{33:[2,79]},t([23,33,55,67,74],[2,30],{70:104,71:[1,105]}),t(C,[2,96]),t(v,S,{72:L}),{20:26,49:108,63:27,64:n,66:107,67:[2,94],68:109,69:74,70:75,71:A,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},t(v,[2,42]),{55:[1,110]},t(w,[2,81]),{55:[2,83]},t(a,[2,13]),{38:56,39:k,43:57,44:T,45:112,46:111,47:[2,74]},t(N,[2,68],{40:113}),{47:[2,18]},t(a,[2,14]),{33:[1,114]},t(f,[2,85]),{33:[2,87]},{33:[1,115]},{32:116,33:[2,60],73:117,74:q},t(N,[2,57]),t(D,[2,59]),{33:[2,66],37:119,73:120,74:q},t(N,[2,63]),t(D,[2,65]),{23:[1,121]},t(P,[2,49]),{23:[2,51]},{33:[1,122]},t(f,[2,89]),{33:[2,91]},t(a,[2,22]),t(C,[2,97]),{72:L},{20:26,49:123,63:27,64:n,71:s,77:28,78:29,79:i,80:o,81:l,82:c,83:u,84:h,85:36},{67:[1,124]},t(x,[2,93]),{67:[2,95]},t(a,[2,23]),{47:[2,19]},{47:[2,75]},t(D,[2,70],{20:26,63:27,77:28,78:29,85:36,69:74,70:75,41:125,49:126,68:127,64:n,71:A,79:i,80:o,81:l,82:c,83:u,84:h}),t(a,[2,24]),t(a,[2,21]),{33:[1,128]},{33:[2,61]},{71:[1,130],75:129},{33:[1,131]},{33:[2,67]},t(m,[2,12]),t(g,[2,26]),t(C,[2,31]),t(b,[2,29]),{33:[2,72],42:132,73:133,74:q},t(N,[2,69]),t(D,[2,71]),t(p,[2,15]),{71:[1,135],76:[1,134]},t(_,[2,98]),t(d,[2,16]),{33:[1,136]},{33:[2,73]},{33:[2,32]},t(_,[2,99]),t(p,[2,17])],defaultActions:{4:[2,1],55:[2,53],57:[2,20],61:[2,55],73:[2,79],81:[2,83],85:[2,18],89:[2,87],99:[2,51],102:[2,91],109:[2,95],111:[2,19],112:[2,75],117:[2,61],120:[2,67],133:[2,73],134:[2,32]},parseError:function(t,e){if(!e.recoverable){var r=new Error(t);throw r.hash=e,r}this.trace(t)},parse:function(t){var e=this,r=[0],a=[null],n=[],s=this.table,i="",o=0,l=0,c=n.slice.call(arguments,1),u=Object.create(this.lexer),h={yy:{}};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(h.yy[p]=this.yy[p]);u.setInput(t,h.yy),h.yy.lexer=u,h.yy.parser=this,typeof u.yylloc>"u"&&(u.yylloc={});var d=u.yylloc;n.push(d);var m=u.options&&u.options.ranges;"function"==typeof h.yy.parseError?this.parseError=h.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var g,f,b,y,v,S,w,k,T,E=function(){var t;return"number"!=typeof(t=u.lex()||1)&&(t=e.symbols_[t]||t),t},N={};;){if(b=r[r.length-1],this.defaultActions[b]?y=this.defaultActions[b]:((null===g||typeof g>"u")&&(g=E()),y=s[b]&&s[b][g]),typeof y>"u"||!y.length||!y[0]){var P="";for(S in T=[],s[b])this.terminals_[S]&&S>2&&T.push("'"+this.terminals_[S]+"'");P=u.showPosition?"Parse error on line "+(o+1)+":\n"+u.showPosition()+"\nExpecting "+T.join(", ")+", got '"+(this.terminals_[g]||g)+"'":"Parse error on line "+(o+1)+": Unexpected "+(1==g?"end of input":"'"+(this.terminals_[g]||g)+"'"),this.parseError(P,{text:u.match,token:this.terminals_[g]||g,line:u.yylineno,loc:d,expected:T})}if(y[0]instanceof Array&&y.length>1)throw new Error("Parse Error: multiple actions possible at state: "+b+", token: "+g);switch(y[0]){case 1:r.push(g),a.push(u.yytext),n.push(u.yylloc),r.push(y[1]),g=null,f?(g=f,f=null):(l=u.yyleng,i=u.yytext,o=u.yylineno,d=u.yylloc);break;case 2:if(w=this.productions_[y[1]][1],N.$=a[a.length-w],N._$={first_line:n[n.length-(w||1)].first_line,last_line:n[n.length-1].last_line,first_column:n[n.length-(w||1)].first_column,last_column:n[n.length-1].last_column},m&&(N._$.range=[n[n.length-(w||1)].range[0],n[n.length-1].range[1]]),typeof(v=this.performAction.apply(N,[i,l,o,h.yy,y[1],a,n].concat(c)))<"u")return v;w&&(r=r.slice(0,-1*w*2),a=a.slice(0,-1*w),n=n.slice(0,-1*w)),r.push(this.productions_[y[1]][0]),a.push(N.$),n.push(N._$),k=s[r[r.length-2]][r[r.length-1]],r.push(k);break;case 3:return!0}}return!0}},I={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,r=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var a=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),r.length-1&&(this.yylineno-=r.length-1);var n=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:r?(r.length===a.length?this.yylloc.first_column:0)+a[a.length-r.length].length-r[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var r,a,n;if(this.options.backtrack_lexer&&(n={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(n.yylloc.range=this.yylloc.range.slice(0))),(a=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=a.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:a?a[a.length-1].length-a[a.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],r=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;if(this._backtrack){for(var s in n)this[s]=n[s];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,r,a;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var n=this._currentRules(),s=0;s<n.length;s++)if((r=this._input.match(this.rules[n[s]]))&&(!e||r[0].length>e[0].length)){if(e=r,a=s,this.options.backtrack_lexer){if(!1!==(t=this.test_match(r,n[s])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,n[a]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(t,e,r,a){function n(t,r){return e.yytext=e.yytext.substring(t,e.yyleng-r+t)}switch(r){case 0:if("\\\\"===e.yytext.slice(-2)?(n(0,1),this.begin("mu")):"\\"===e.yytext.slice(-1)?(n(0,1),this.begin("emu")):this.begin("mu"),e.yytext)return 15;break;case 1:case 5:return 15;case 2:return this.popState(),15;case 3:return this.begin("raw"),15;case 4:return this.popState(),"raw"===this.conditionStack[this.conditionStack.length-1]?15:(n(5,9),18);case 6:case 22:return this.popState(),14;case 7:return 64;case 8:return 67;case 9:return 19;case 10:return this.popState(),this.begin("raw"),23;case 11:return 56;case 12:return 60;case 13:return 29;case 14:return 47;case 15:case 16:return this.popState(),44;case 17:return 34;case 18:return 39;case 19:return 52;case 20:case 23:return 48;case 21:this.unput(e.yytext),this.popState(),this.begin("com");break;case 24:return 72;case 25:case 26:case 41:return 71;case 27:return 86;case 28:break;case 29:return this.popState(),55;case 30:return this.popState(),33;case 31:return e.yytext=n(1,2).replace(/\\"/g,'"'),79;case 32:return e.yytext=n(1,2).replace(/\\'/g,"'"),79;case 33:return 84;case 34:case 35:return 81;case 36:return 82;case 37:return 83;case 38:return 80;case 39:return 74;case 40:return 76;case 42:return e.yytext=e.yytext.replace(/\\([\\\]])/g,"$1"),71;case 43:return"INVALID";case 44:return 5}},rules:[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],conditions:{mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}}};function B(){this.yy={}}return O.lexer=I,B.prototype=O,O.Parser=B,new B}(),Mt=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function jt(t,e){var r,a,n,s,i=e&&e.loc;i&&(r=i.start.line,a=i.end.line,n=i.start.column,s=i.end.column,t+=" - "+r+":"+n);for(var o=Error.prototype.constructor.call(this,t),l=0;l<Mt.length;l++)this[Mt[l]]=o[Mt[l]];Error.captureStackTrace&&Error.captureStackTrace(this,jt);try{i&&(this.lineNumber=r,this.endLineNumber=a,Object.defineProperty?(Object.defineProperty(this,"column",{value:n,enumerable:!0}),Object.defineProperty(this,"endColumn",{value:s,enumerable:!0})):(this.column=n,this.endColumn=s))}catch{}}jt.prototype=new Error;var Wt=jt;function Gt(){this.parents=[]}function Kt(t){this.acceptRequired(t,"path"),this.acceptArray(t.params),this.acceptKey(t,"hash")}function Qt(t){Kt.call(this,t),this.acceptKey(t,"program"),this.acceptKey(t,"inverse")}function Jt(t){this.acceptRequired(t,"name"),this.acceptArray(t.params),this.acceptKey(t,"hash")}Gt.prototype={constructor:Gt,mutating:!1,acceptKey:function(t,e){var r=this.accept(t[e]);if(this.mutating){if(r&&!Gt.prototype[r.type])throw new Wt('Unexpected node type "'+r.type+'" found when accepting '+e+" on "+t.type);t[e]=r}},acceptRequired:function(t,e){if(this.acceptKey(t,e),!t[e])throw new Wt(t.type+" requires "+e)},acceptArray:function(t){for(var e=0,r=t.length;e<r;e++)this.acceptKey(t,e),t[e]||(t.splice(e,1),e--,r--)},accept:function(t){if(t){if(!this[t.type])throw new Wt("Unknown type: "+t.type,t);this.current&&this.parents.unshift(this.current),this.current=t;var e=this[t.type](t);if(this.current=this.parents.shift(),!this.mutating||e)return e;if(!1!==e)return t}},Program:function(t){this.acceptArray(t.body)},MustacheStatement:Kt,Decorator:Kt,BlockStatement:Qt,DecoratorBlock:Qt,PartialStatement:Jt,PartialBlockStatement:function(t){Jt.call(this,t),this.acceptKey(t,"program")},ContentStatement:function(){},CommentStatement:function(){},SubExpression:Kt,PathExpression:function(){},StringLiteral:function(){},NumberLiteral:function(){},BooleanLiteral:function(){},UndefinedLiteral:function(){},NullLiteral:function(){},Hash:function(t){this.acceptArray(t.pairs)},HashPair:function(t){this.acceptRequired(t,"value")}};var Yt=Gt;function Zt(t){void 0===t&&(t={}),this.options=t}function Xt(t,e,r){void 0===e&&(e=t.length);var a=t[e-1],n=t[e-2];return a?"ContentStatement"===a.type?(n||!r?/\r?\n\s*?$/:/(^|\r?\n)\s*?$/).test(a.original):void 0:r}function te(t,e,r){void 0===e&&(e=-1);var a=t[e+1],n=t[e+2];return a?"ContentStatement"===a.type?(n||!r?/^\s*?\r?\n/:/^\s*?(\r?\n|$)/).test(a.original):void 0:r}function ee(t,e,r){var a=t[null==e?0:e+1];if(a&&"ContentStatement"===a.type&&(r||!a.rightStripped)){var n=a.value;a.value=a.value.replace(r?/^\s+/:/^[ \t]*\r?\n?/,""),a.rightStripped=a.value!==n}}function re(t,e,r){var a=t[null==e?t.length-1:e-1];if(a&&"ContentStatement"===a.type&&(r||!a.leftStripped)){var n=a.value;return a.value=a.value.replace(r?/\s+$/:/[ \t]+$/,""),a.leftStripped=a.value!==n,a.leftStripped}}Zt.prototype=new Yt,Zt.prototype.Program=function(t){var e=!this.options.ignoreStandalone,r=!this.isRootSeen;this.isRootSeen=!0;for(var a=t.body,n=0,s=a.length;n<s;n++){var i=a[n],o=this.accept(i);if(o){var l=Xt(a,n,r),c=te(a,n,r),u=o.openStandalone&&l,h=o.closeStandalone&&c,p=o.inlineStandalone&&l&&c;o.close&&ee(a,n,!0),o.open&&re(a,n,!0),e&&p&&(ee(a,n),re(a,n)&&"PartialStatement"===i.type&&(i.indent=/([ \t]+$)/.exec(a[n-1].original)[1])),e&&u&&(ee((i.program||i.inverse).body),re(a,n)),e&&h&&(ee(a,n),re((i.inverse||i.program).body))}}return t},Zt.prototype.BlockStatement=Zt.prototype.DecoratorBlock=Zt.prototype.PartialBlockStatement=function(t){this.accept(t.program),this.accept(t.inverse);var e=t.program||t.inverse,r=t.program&&t.inverse,a=r,n=r;if(r&&r.chained)for(a=r.body[0].program;n.chained;)n=n.body[n.body.length-1].program;var s={open:t.openStrip.open,close:t.closeStrip.close,openStandalone:te(e.body),closeStandalone:Xt((a||e).body)};if(t.openStrip.close&&ee(e.body,null,!0),r){var i=t.inverseStrip;i.open&&re(e.body,null,!0),i.close&&ee(a.body,null,!0),t.closeStrip.open&&re(n.body,null,!0),!this.options.ignoreStandalone&&Xt(e.body)&&te(a.body)&&(re(e.body),ee(a.body))}else t.closeStrip.open&&re(e.body,null,!0);return s},Zt.prototype.Decorator=Zt.prototype.MustacheStatement=function(t){return t.strip},Zt.prototype.PartialStatement=Zt.prototype.CommentStatement=function(t){var e=t.strip||{};return{inlineStandalone:!0,open:e.open,close:e.close}};var ae=Zt,ne={};function se(t,e){if(e=e.path?e.path.original:e,t.path.original!==e){var r={loc:t.path.loc};throw new Wt(t.path.original+" doesn't match "+e,r)}}function ie(t,e){this.source=t,this.start={line:e.first_line,column:e.first_column},this.end={line:e.last_line,column:e.last_column}}function oe(t){return/^\[.*\]$/.test(t)?t.substring(1,t.length-1):t}function le(t,e){return{open:"~"===t.charAt(2),close:"~"===e.charAt(e.length-3)}}function ce(t){return t.replace(/^\{\{~?!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function ue(t,e,r){r=this.locInfo(r);for(var a=t?"@":"",n=[],s=0,i=0,o=e.length;i<o;i++){var l=e[i].part,c=e[i].original!==l;if(a+=(e[i].separator||"")+l,c||".."!==l&&"."!==l&&"this"!==l)n.push(l);else{if(n.length>0)throw new Wt("Invalid path: "+a,{loc:r});".."===l&&s++}}return{type:"PathExpression",data:t,depth:s,parts:n,original:a,loc:r}}function he(t,e,r,a,n,s){var i=a.charAt(3)||a.charAt(2),o="{"!==i&&"&"!==i;return{type:/\*/.test(a)?"Decorator":"MustacheStatement",path:t,params:e,hash:r,escaped:o,strip:n,loc:this.locInfo(s)}}function pe(t,e,r,a){se(t,r);var n={type:"Program",body:e,strip:{},loc:a=this.locInfo(a)};return{type:"BlockStatement",path:t.path,params:t.params,hash:t.hash,program:n,openStrip:{},inverseStrip:{},closeStrip:{},loc:a}}function de(t,e,r,a,n,s){a&&a.path&&se(t,a);var i,o,l=/\*/.test(t.open);if(e.blockParams=t.blockParams,r){if(l)throw new Wt("Unexpected inverse block on decorator",r);r.chain&&(r.program.body[0].closeStrip=a.strip),o=r.strip,i=r.program}return n&&(n=i,i=e,e=n),{type:l?"DecoratorBlock":"BlockStatement",path:t.path,params:t.params,hash:t.hash,program:e,inverse:i,openStrip:t.strip,inverseStrip:o,closeStrip:a&&a.strip,loc:this.locInfo(s)}}function me(t,e){if(!e&&t.length){var r=t[0].loc,a=t[t.length-1].loc;r&&a&&(e={source:r.source,start:{line:r.start.line,column:r.start.column},end:{line:a.end.line,column:a.end.column}})}return{type:"Program",body:t,strip:{},loc:e}}function ge(t,e,r,a){return se(t,r),{type:"PartialBlockStatement",name:t.path,params:t.params,hash:t.hash,program:e,openStrip:t.strip,closeStrip:r&&r.strip,loc:this.locInfo(a)}}r(ne,{SourceLocation:()=>ie,id:()=>oe,prepareBlock:()=>de,prepareMustache:()=>he,preparePartialBlock:()=>ge,preparePath:()=>ue,prepareProgram:()=>me,prepareRawBlock:()=>pe,stripComment:()=>ce,stripFlags:()=>le});var fe,be={};for(fe in ne)Object.prototype.hasOwnProperty.call(ne,fe)&&(be[fe]=ne[fe]);function ye(t,e){return"Program"===t.type?t:(zt.yy=be,zt.yy.locInfo=function(t){return new ie(e&&e.srcName,t)},zt.parse(t))}function ve(t,e){var r=ye(t,e);return new ae(e).accept(r)}var Se={Aacute:"Á",aacute:"á",Abreve:"Ă",abreve:"ă",ac:"∾",acd:"∿",acE:"∾̳",Acirc:"Â",acirc:"â",acute:"´",Acy:"А",acy:"а",AElig:"Æ",aelig:"æ",af:"",Afr:"𝔄",afr:"𝔞",Agrave:"À",agrave:"à",alefsym:"ℵ",aleph:"ℵ",Alpha:"Α",alpha:"α",Amacr:"Ā",amacr:"ā",amalg:"⨿",amp:"&",AMP:"&",andand:"⩕",And:"⩓",and:"∧",andd:"⩜",andslope:"⩘",andv:"⩚",ang:"∠",ange:"⦤",angle:"∠",angmsdaa:"⦨",angmsdab:"⦩",angmsdac:"⦪",angmsdad:"⦫",angmsdae:"⦬",angmsdaf:"⦭",angmsdag:"⦮",angmsdah:"⦯",angmsd:"∡",angrt:"∟",angrtvb:"⊾",angrtvbd:"⦝",angsph:"∢",angst:"Å",angzarr:"⍼",Aogon:"Ą",aogon:"ą",Aopf:"𝔸",aopf:"𝕒",apacir:"⩯",ap:"≈",apE:"⩰",ape:"≊",apid:"≋",apos:"'",ApplyFunction:"",approx:"≈",approxeq:"≊",Aring:"Å",aring:"å",Ascr:"𝒜",ascr:"𝒶",Assign:"≔",ast:"*",asymp:"≈",asympeq:"≍",Atilde:"Ã",atilde:"ã",Auml:"Ä",auml:"ä",awconint:"∳",awint:"⨑",backcong:"≌",backepsilon:"϶",backprime:"‵",backsim:"∽",backsimeq:"⋍",Backslash:"∖",Barv:"⫧",barvee:"⊽",barwed:"⌅",Barwed:"⌆",barwedge:"⌅",bbrk:"⎵",bbrktbrk:"⎶",bcong:"≌",Bcy:"Б",bcy:"б",bdquo:"„",becaus:"∵",because:"∵",Because:"∵",bemptyv:"⦰",bepsi:"϶",bernou:"ℬ",Bernoullis:"ℬ",Beta:"Β",beta:"β",beth:"ℶ",between:"≬",Bfr:"𝔅",bfr:"𝔟",bigcap:"⋂",bigcirc:"◯",bigcup:"⋃",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",bigvee:"⋁",bigwedge:"⋀",bkarow:"⤍",blacklozenge:"⧫",blacksquare:"▪",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",blacktriangleright:"▸",blank:"␣",blk12:"▒",blk14:"░",blk34:"▓",block:"█",bne:"=⃥",bnequiv:"≡⃥",bNot:"⫭",bnot:"⌐",Bopf:"𝔹",bopf:"𝕓",bot:"⊥",bottom:"⊥",bowtie:"⋈",boxbox:"⧉",boxdl:"┐",boxdL:"╕",boxDl:"╖",boxDL:"╗",boxdr:"┌",boxdR:"╒",boxDr:"╓",boxDR:"╔",boxh:"─",boxH:"═",boxhd:"┬",boxHd:"╤",boxhD:"╥",boxHD:"╦",boxhu:"┴",boxHu:"╧",boxhU:"╨",boxHU:"╩",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxul:"┘",boxuL:"╛",boxUl:"╜",boxUL:"╝",boxur:"└",boxuR:"╘",boxUr:"╙",boxUR:"╚",boxv:"│",boxV:"║",boxvh:"┼",boxvH:"╪",boxVh:"╫",boxVH:"╬",boxvl:"┤",boxvL:"╡",boxVl:"╢",boxVL:"╣",boxvr:"├",boxvR:"╞",boxVr:"╟",boxVR:"╠",bprime:"‵",breve:"˘",Breve:"˘",brvbar:"¦",bscr:"𝒷",Bscr:"ℬ",bsemi:"⁏",bsim:"∽",bsime:"⋍",bsolb:"⧅",bsol:"\\",bsolhsub:"⟈",bull:"•",bullet:"•",bump:"≎",bumpE:"⪮",bumpe:"≏",Bumpeq:"≎",bumpeq:"≏",Cacute:"Ć",cacute:"ć",capand:"⩄",capbrcup:"⩉",capcap:"⩋",cap:"∩",Cap:"⋒",capcup:"⩇",capdot:"⩀",CapitalDifferentialD:"ⅅ",caps:"∩︀",caret:"⁁",caron:"ˇ",Cayleys:"ℭ",ccaps:"⩍",Ccaron:"Č",ccaron:"č",Ccedil:"Ç",ccedil:"ç",Ccirc:"Ĉ",ccirc:"ĉ",Cconint:"∰",ccups:"⩌",ccupssm:"⩐",Cdot:"Ċ",cdot:"ċ",cedil:"¸",Cedilla:"¸",cemptyv:"⦲",cent:"¢",centerdot:"·",CenterDot:"·",cfr:"𝔠",Cfr:"ℭ",CHcy:"Ч",chcy:"ч",check:"✓",checkmark:"✓",Chi:"Χ",chi:"χ",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",CircleDot:"⊙",circledR:"®",circledS:"Ⓢ",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",cir:"○",cirE:"⧃",cire:"≗",cirfnint:"⨐",cirmid:"⫯",cirscir:"⧂",ClockwiseContourIntegral:"∲",CloseCurlyDoubleQuote:"”",CloseCurlyQuote:"’",clubs:"♣",clubsuit:"♣",colon:":",Colon:"∷",Colone:"⩴",colone:"≔",coloneq:"≔",comma:",",commat:"@",comp:"∁",compfn:"∘",complement:"∁",complexes:"ℂ",cong:"≅",congdot:"⩭",Congruent:"≡",conint:"∮",Conint:"∯",ContourIntegral:"∮",copf:"𝕔",Copf:"ℂ",coprod:"∐",Coproduct:"∐",copy:"©",COPY:"©",copysr:"℗",CounterClockwiseContourIntegral:"∳",crarr:"↵",cross:"✗",Cross:"⨯",Cscr:"𝒞",cscr:"𝒸",csub:"⫏",csube:"⫑",csup:"⫐",csupe:"⫒",ctdot:"⋯",cudarrl:"⤸",cudarrr:"⤵",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cularrp:"⤽",cupbrcap:"⩈",cupcap:"⩆",CupCap:"≍",cup:"∪",Cup:"⋓",cupcup:"⩊",cupdot:"⊍",cupor:"⩅",cups:"∪︀",curarr:"↷",curarrm:"⤼",curlyeqprec:"⋞",curlyeqsucc:"⋟",curlyvee:"⋎",curlywedge:"⋏",curren:"¤",curvearrowleft:"↶",curvearrowright:"↷",cuvee:"⋎",cuwed:"⋏",cwconint:"∲",cwint:"∱",cylcty:"⌭",dagger:"†",Dagger:"‡",daleth:"ℸ",darr:"↓",Darr:"↡",dArr:"⇓",dash:"‐",Dashv:"⫤",dashv:"⊣",dbkarow:"⤏",dblac:"˝",Dcaron:"Ď",dcaron:"ď",Dcy:"Д",dcy:"д",ddagger:"‡",ddarr:"⇊",DD:"ⅅ",dd:"ⅆ",DDotrahd:"⤑",ddotseq:"⩷",deg:"°",Del:"∇",Delta:"Δ",delta:"δ",demptyv:"⦱",dfisht:"⥿",Dfr:"𝔇",dfr:"𝔡",dHar:"⥥",dharl:"⇃",dharr:"⇂",DiacriticalAcute:"´",DiacriticalDot:"˙",DiacriticalDoubleAcute:"˝",DiacriticalGrave:"`",DiacriticalTilde:"˜",diam:"⋄",diamond:"⋄",Diamond:"⋄",diamondsuit:"♦",diams:"♦",die:"¨",DifferentialD:"ⅆ",digamma:"ϝ",disin:"⋲",div:"÷",divide:"÷",divideontimes:"⋇",divonx:"⋇",DJcy:"Ђ",djcy:"ђ",dlcorn:"⌞",dlcrop:"⌍",dollar:"$",Dopf:"𝔻",dopf:"𝕕",Dot:"¨",dot:"˙",DotDot:"⃜",doteq:"≐",doteqdot:"≑",DotEqual:"≐",dotminus:"∸",dotplus:"∔",dotsquare:"⊡",doublebarwedge:"⌆",DoubleContourIntegral:"∯",DoubleDot:"¨",DoubleDownArrow:"⇓",DoubleLeftArrow:"⇐",DoubleLeftRightArrow:"⇔",DoubleLeftTee:"⫤",DoubleLongLeftArrow:"⟸",DoubleLongLeftRightArrow:"⟺",DoubleLongRightArrow:"⟹",DoubleRightArrow:"⇒",DoubleRightTee:"⊨",DoubleUpArrow:"⇑",DoubleUpDownArrow:"⇕",DoubleVerticalBar:"∥",DownArrowBar:"⤓",downarrow:"↓",DownArrow:"↓",Downarrow:"⇓",DownArrowUpArrow:"⇵",DownBreve:"̑",downdownarrows:"⇊",downharpoonleft:"⇃",downharpoonright:"⇂",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVectorBar:"⥖",DownLeftVector:"↽",DownRightTeeVector:"⥟",DownRightVectorBar:"⥗",DownRightVector:"⇁",DownTeeArrow:"↧",DownTee:"⊤",drbkarow:"⤐",drcorn:"⌟",drcrop:"⌌",Dscr:"𝒟",dscr:"𝒹",DScy:"Ѕ",dscy:"ѕ",dsol:"⧶",Dstrok:"Đ",dstrok:"đ",dtdot:"⋱",dtri:"▿",dtrif:"▾",duarr:"⇵",duhar:"⥯",dwangle:"⦦",DZcy:"Џ",dzcy:"џ",dzigrarr:"⟿",Eacute:"É",eacute:"é",easter:"⩮",Ecaron:"Ě",ecaron:"ě",Ecirc:"Ê",ecirc:"ê",ecir:"≖",ecolon:"≕",Ecy:"Э",ecy:"э",eDDot:"⩷",Edot:"Ė",edot:"ė",eDot:"≑",ee:"ⅇ",efDot:"≒",Efr:"𝔈",efr:"𝔢",eg:"⪚",Egrave:"È",egrave:"è",egs:"⪖",egsdot:"⪘",el:"⪙",Element:"∈",elinters:"⏧",ell:"ℓ",els:"⪕",elsdot:"⪗",Emacr:"Ē",emacr:"ē",empty:"∅",emptyset:"∅",EmptySmallSquare:"◻",emptyv:"∅",EmptyVerySmallSquare:"▫",emsp13:" ",emsp14:" ",emsp:" ",ENG:"Ŋ",eng:"ŋ",ensp:" ",Eogon:"Ę",eogon:"ę",Eopf:"𝔼",eopf:"𝕖",epar:"⋕",eparsl:"⧣",eplus:"⩱",epsi:"ε",Epsilon:"Ε",epsilon:"ε",epsiv:"ϵ",eqcirc:"≖",eqcolon:"≕",eqsim:"≂",eqslantgtr:"⪖",eqslantless:"⪕",Equal:"⩵",equals:"=",EqualTilde:"≂",equest:"≟",Equilibrium:"⇌",equiv:"≡",equivDD:"⩸",eqvparsl:"⧥",erarr:"⥱",erDot:"≓",escr:"ℯ",Escr:"ℰ",esdot:"≐",Esim:"⩳",esim:"≂",Eta:"Η",eta:"η",ETH:"Ð",eth:"ð",Euml:"Ë",euml:"ë",euro:"€",excl:"!",exist:"∃",Exists:"∃",expectation:"ℰ",exponentiale:"ⅇ",ExponentialE:"ⅇ",fallingdotseq:"≒",Fcy:"Ф",fcy:"ф",female:"♀",ffilig:"ffi",fflig:"ff",ffllig:"ffl",Ffr:"𝔉",ffr:"𝔣",filig:"fi",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",fjlig:"fj",flat:"♭",fllig:"fl",fltns:"▱",fnof:"ƒ",Fopf:"𝔽",fopf:"𝕗",forall:"∀",ForAll:"∀",fork:"⋔",forkv:"⫙",Fouriertrf:"ℱ",fpartint:"⨍",frac12:"½",frac13:"⅓",frac14:"¼",frac15:"⅕",frac16:"⅙",frac18:"⅛",frac23:"⅔",frac25:"⅖",frac34:"¾",frac35:"⅗",frac38:"⅜",frac45:"⅘",frac56:"⅚",frac58:"⅝",frac78:"⅞",frasl:"⁄",frown:"⌢",fscr:"𝒻",Fscr:"ℱ",gacute:"ǵ",Gamma:"Γ",gamma:"γ",Gammad:"Ϝ",gammad:"ϝ",gap:"⪆",Gbreve:"Ğ",gbreve:"ğ",Gcedil:"Ģ",Gcirc:"Ĝ",gcirc:"ĝ",Gcy:"Г",gcy:"г",Gdot:"Ġ",gdot:"ġ",ge:"≥",gE:"≧",gEl:"⪌",gel:"⋛",geq:"≥",geqq:"≧",geqslant:"⩾",gescc:"⪩",ges:"⩾",gesdot:"⪀",gesdoto:"⪂",gesdotol:"⪄",gesl:"⋛︀",gesles:"⪔",Gfr:"𝔊",gfr:"𝔤",gg:"≫",Gg:"⋙",ggg:"⋙",gimel:"ℷ",GJcy:"Ѓ",gjcy:"ѓ",gla:"⪥",gl:"≷",glE:"⪒",glj:"⪤",gnap:"⪊",gnapprox:"⪊",gne:"⪈",gnE:"≩",gneq:"⪈",gneqq:"≩",gnsim:"⋧",Gopf:"𝔾",gopf:"𝕘",grave:"`",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterGreater:"⪢",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",Gscr:"𝒢",gscr:"ℊ",gsim:"≳",gsime:"⪎",gsiml:"⪐",gtcc:"⪧",gtcir:"⩺",gt:">",GT:">",Gt:"≫",gtdot:"⋗",gtlPar:"⦕",gtquest:"⩼",gtrapprox:"⪆",gtrarr:"⥸",gtrdot:"⋗",gtreqless:"⋛",gtreqqless:"⪌",gtrless:"≷",gtrsim:"≳",gvertneqq:"≩︀",gvnE:"≩︀",Hacek:"ˇ",hairsp:" ",half:"½",hamilt:"ℋ",HARDcy:"Ъ",hardcy:"ъ",harrcir:"⥈",harr:"↔",hArr:"⇔",harrw:"↭",Hat:"^",hbar:"ℏ",Hcirc:"Ĥ",hcirc:"ĥ",hearts:"♥",heartsuit:"♥",hellip:"…",hercon:"⊹",hfr:"𝔥",Hfr:"ℌ",HilbertSpace:"ℋ",hksearow:"⤥",hkswarow:"⤦",hoarr:"⇿",homtht:"∻",hookleftarrow:"↩",hookrightarrow:"↪",hopf:"𝕙",Hopf:"ℍ",horbar:"―",HorizontalLine:"─",hscr:"𝒽",Hscr:"ℋ",hslash:"ℏ",Hstrok:"Ħ",hstrok:"ħ",HumpDownHump:"≎",HumpEqual:"≏",hybull:"⁃",hyphen:"‐",Iacute:"Í",iacute:"í",ic:"",Icirc:"Î",icirc:"î",Icy:"И",icy:"и",Idot:"İ",IEcy:"Е",iecy:"е",iexcl:"¡",iff:"⇔",ifr:"𝔦",Ifr:"ℑ",Igrave:"Ì",igrave:"ì",ii:"ⅈ",iiiint:"⨌",iiint:"∭",iinfin:"⧜",iiota:"℩",IJlig:"IJ",ijlig:"ij",Imacr:"Ī",imacr:"ī",image:"ℑ",ImaginaryI:"ⅈ",imagline:"ℐ",imagpart:"ℑ",imath:"ı",Im:"ℑ",imof:"⊷",imped:"Ƶ",Implies:"⇒",incare:"℅",in:"∈",infin:"∞",infintie:"⧝",inodot:"ı",intcal:"⊺",int:"∫",Int:"∬",integers:"ℤ",Integral:"∫",intercal:"⊺",Intersection:"⋂",intlarhk:"⨗",intprod:"⨼",InvisibleComma:"",InvisibleTimes:"",IOcy:"Ё",iocy:"ё",Iogon:"Į",iogon:"į",Iopf:"𝕀",iopf:"𝕚",Iota:"Ι",iota:"ι",iprod:"⨼",iquest:"¿",iscr:"𝒾",Iscr:"ℐ",isin:"∈",isindot:"⋵",isinE:"⋹",isins:"⋴",isinsv:"⋳",isinv:"∈",it:"",Itilde:"Ĩ",itilde:"ĩ",Iukcy:"І",iukcy:"і",Iuml:"Ï",iuml:"ï",Jcirc:"Ĵ",jcirc:"ĵ",Jcy:"Й",jcy:"й",Jfr:"𝔍",jfr:"𝔧",jmath:"ȷ",Jopf:"𝕁",jopf:"𝕛",Jscr:"𝒥",jscr:"𝒿",Jsercy:"Ј",jsercy:"ј",Jukcy:"Є",jukcy:"є",Kappa:"Κ",kappa:"κ",kappav:"ϰ",Kcedil:"Ķ",kcedil:"ķ",Kcy:"К",kcy:"к",Kfr:"𝔎",kfr:"𝔨",kgreen:"ĸ",KHcy:"Х",khcy:"х",KJcy:"Ќ",kjcy:"ќ",Kopf:"𝕂",kopf:"𝕜",Kscr:"𝒦",kscr:"𝓀",lAarr:"⇚",Lacute:"Ĺ",lacute:"ĺ",laemptyv:"⦴",lagran:"ℒ",Lambda:"Λ",lambda:"λ",lang:"⟨",Lang:"⟪",langd:"⦑",langle:"⟨",lap:"⪅",Laplacetrf:"ℒ",laquo:"«",larrb:"⇤",larrbfs:"⤟",larr:"←",Larr:"↞",lArr:"⇐",larrfs:"⤝",larrhk:"↩",larrlp:"↫",larrpl:"⤹",larrsim:"⥳",larrtl:"↢",latail:"⤙",lAtail:"⤛",lat:"⪫",late:"⪭",lates:"⪭︀",lbarr:"⤌",lBarr:"⤎",lbbrk:"❲",lbrace:"{",lbrack:"[",lbrke:"⦋",lbrksld:"⦏",lbrkslu:"⦍",Lcaron:"Ľ",lcaron:"ľ",Lcedil:"Ļ",lcedil:"ļ",lceil:"⌈",lcub:"{",Lcy:"Л",lcy:"л",ldca:"⤶",ldquo:"“",ldquor:"„",ldrdhar:"⥧",ldrushar:"⥋",ldsh:"↲",le:"≤",lE:"≦",LeftAngleBracket:"⟨",LeftArrowBar:"⇤",leftarrow:"←",LeftArrow:"←",Leftarrow:"⇐",LeftArrowRightArrow:"⇆",leftarrowtail:"↢",LeftCeiling:"⌈",LeftDoubleBracket:"⟦",LeftDownTeeVector:"⥡",LeftDownVectorBar:"⥙",LeftDownVector:"⇃",LeftFloor:"⌊",leftharpoondown:"↽",leftharpoonup:"↼",leftleftarrows:"⇇",leftrightarrow:"↔",LeftRightArrow:"↔",Leftrightarrow:"⇔",leftrightarrows:"⇆",leftrightharpoons:"⇋",leftrightsquigarrow:"↭",LeftRightVector:"⥎",LeftTeeArrow:"↤",LeftTee:"⊣",LeftTeeVector:"⥚",leftthreetimes:"⋋",LeftTriangleBar:"⧏",LeftTriangle:"⊲",LeftTriangleEqual:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVectorBar:"⥘",LeftUpVector:"↿",LeftVectorBar:"⥒",LeftVector:"↼",lEg:"⪋",leg:"⋚",leq:"≤",leqq:"≦",leqslant:"⩽",lescc:"⪨",les:"⩽",lesdot:"⩿",lesdoto:"⪁",lesdotor:"⪃",lesg:"⋚︀",lesges:"⪓",lessapprox:"⪅",lessdot:"⋖",lesseqgtr:"⋚",lesseqqgtr:"⪋",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",lessgtr:"≶",LessLess:"⪡",lesssim:"≲",LessSlantEqual:"⩽",LessTilde:"≲",lfisht:"⥼",lfloor:"⌊",Lfr:"𝔏",lfr:"𝔩",lg:"≶",lgE:"⪑",lHar:"⥢",lhard:"↽",lharu:"↼",lharul:"⥪",lhblk:"▄",LJcy:"Љ",ljcy:"љ",llarr:"⇇",ll:"≪",Ll:"⋘",llcorner:"⌞",Lleftarrow:"⇚",llhard:"⥫",lltri:"◺",Lmidot:"Ŀ",lmidot:"ŀ",lmoustache:"⎰",lmoust:"⎰",lnap:"⪉",lnapprox:"⪉",lne:"⪇",lnE:"≨",lneq:"⪇",lneqq:"≨",lnsim:"⋦",loang:"⟬",loarr:"⇽",lobrk:"⟦",longleftarrow:"⟵",LongLeftArrow:"⟵",Longleftarrow:"⟸",longleftrightarrow:"⟷",LongLeftRightArrow:"⟷",Longleftrightarrow:"⟺",longmapsto:"⟼",longrightarrow:"⟶",LongRightArrow:"⟶",Longrightarrow:"⟹",looparrowleft:"↫",looparrowright:"↬",lopar:"⦅",Lopf:"𝕃",lopf:"𝕝",loplus:"⨭",lotimes:"⨴",lowast:"∗",lowbar:"_",LowerLeftArrow:"↙",LowerRightArrow:"↘",loz:"◊",lozenge:"◊",lozf:"⧫",lpar:"(",lparlt:"⦓",lrarr:"⇆",lrcorner:"⌟",lrhar:"⇋",lrhard:"⥭",lrm:"",lrtri:"⊿",lsaquo:"‹",lscr:"𝓁",Lscr:"ℒ",lsh:"↰",Lsh:"↰",lsim:"≲",lsime:"⪍",lsimg:"⪏",lsqb:"[",lsquo:"‘",lsquor:"‚",Lstrok:"Ł",lstrok:"ł",ltcc:"⪦",ltcir:"⩹",lt:"<",LT:"<",Lt:"≪",ltdot:"⋖",lthree:"⋋",ltimes:"⋉",ltlarr:"⥶",ltquest:"⩻",ltri:"◃",ltrie:"⊴",ltrif:"◂",ltrPar:"⦖",lurdshar:"⥊",luruhar:"⥦",lvertneqq:"≨︀",lvnE:"≨︀",macr:"¯",male:"♂",malt:"✠",maltese:"✠",Map:"⤅",map:"↦",mapsto:"↦",mapstodown:"↧",mapstoleft:"↤",mapstoup:"↥",marker:"▮",mcomma:"⨩",Mcy:"М",mcy:"м",mdash:"—",mDDot:"∺",measuredangle:"∡",MediumSpace:" ",Mellintrf:"ℳ",Mfr:"𝔐",mfr:"𝔪",mho:"℧",micro:"µ",midast:"*",midcir:"⫰",mid:"∣",middot:"·",minusb:"⊟",minus:"−",minusd:"∸",minusdu:"⨪",MinusPlus:"∓",mlcp:"⫛",mldr:"…",mnplus:"∓",models:"⊧",Mopf:"𝕄",mopf:"𝕞",mp:"∓",mscr:"𝓂",Mscr:"ℳ",mstpos:"∾",Mu:"Μ",mu:"μ",multimap:"⊸",mumap:"⊸",nabla:"∇",Nacute:"Ń",nacute:"ń",nang:"∠⃒",nap:"≉",napE:"⩰̸",napid:"≋̸",napos:"ʼn",napprox:"≉",natural:"♮",naturals:"ℕ",natur:"♮",nbsp:" ",nbump:"≎̸",nbumpe:"≏̸",ncap:"⩃",Ncaron:"Ň",ncaron:"ň",Ncedil:"Ņ",ncedil:"ņ",ncong:"≇",ncongdot:"⩭̸",ncup:"⩂",Ncy:"Н",ncy:"н",ndash:"–",nearhk:"⤤",nearr:"↗",neArr:"⇗",nearrow:"↗",ne:"≠",nedot:"≐̸",NegativeMediumSpace:"",NegativeThickSpace:"",NegativeThinSpace:"",NegativeVeryThinSpace:"",nequiv:"≢",nesear:"⤨",nesim:"≂̸",NestedGreaterGreater:"≫",NestedLessLess:"≪",NewLine:"\n",nexist:"∄",nexists:"∄",Nfr:"𝔑",nfr:"𝔫",ngE:"≧̸",nge:"≱",ngeq:"≱",ngeqq:"≧̸",ngeqslant:"⩾̸",nges:"⩾̸",nGg:"⋙̸",ngsim:"≵",nGt:"≫⃒",ngt:"≯",ngtr:"≯",nGtv:"≫̸",nharr:"↮",nhArr:"⇎",nhpar:"⫲",ni:"∋",nis:"⋼",nisd:"⋺",niv:"∋",NJcy:"Њ",njcy:"њ",nlarr:"↚",nlArr:"⇍",nldr:"‥",nlE:"≦̸",nle:"≰",nleftarrow:"↚",nLeftarrow:"⇍",nleftrightarrow:"↮",nLeftrightarrow:"⇎",nleq:"≰",nleqq:"≦̸",nleqslant:"⩽̸",nles:"⩽̸",nless:"≮",nLl:"⋘̸",nlsim:"≴",nLt:"≪⃒",nlt:"≮",nltri:"⋪",nltrie:"⋬",nLtv:"≪̸",nmid:"∤",NoBreak:"",NonBreakingSpace:" ",nopf:"𝕟",Nopf:"ℕ",Not:"⫬",not:"¬",NotCongruent:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotEqualTilde:"≂̸",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotGreaterFullEqual:"≧̸",NotGreaterGreater:"≫̸",NotGreaterLess:"≹",NotGreaterSlantEqual:"⩾̸",NotGreaterTilde:"≵",NotHumpDownHump:"≎̸",NotHumpEqual:"≏̸",notin:"∉",notindot:"⋵̸",notinE:"⋹̸",notinva:"∉",notinvb:"⋷",notinvc:"⋶",NotLeftTriangleBar:"⧏̸",NotLeftTriangle:"⋪",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotLessGreater:"≸",NotLessLess:"≪̸",NotLessSlantEqual:"⩽̸",NotLessTilde:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",notni:"∌",notniva:"∌",notnivb:"⋾",notnivc:"⋽",NotPrecedes:"⊀",NotPrecedesEqual:"⪯̸",NotPrecedesSlantEqual:"⋠",NotReverseElement:"∌",NotRightTriangleBar:"⧐̸",NotRightTriangle:"⋫",NotRightTriangleEqual:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",NotSubset:"⊂⃒",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsEqual:"⪰̸",NotSucceedsSlantEqual:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",NotSupersetEqual:"⊉",NotTilde:"≁",NotTildeEqual:"≄",NotTildeFullEqual:"≇",NotTildeTilde:"≉",NotVerticalBar:"∤",nparallel:"∦",npar:"∦",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",npr:"⊀",nprcue:"⋠",nprec:"⊀",npreceq:"⪯̸",npre:"⪯̸",nrarrc:"⤳̸",nrarr:"↛",nrArr:"⇏",nrarrw:"↝̸",nrightarrow:"↛",nRightarrow:"⇏",nrtri:"⋫",nrtrie:"⋭",nsc:"⊁",nsccue:"⋡",nsce:"⪰̸",Nscr:"𝒩",nscr:"𝓃",nshortmid:"∤",nshortparallel:"∦",nsim:"≁",nsime:"≄",nsimeq:"≄",nsmid:"∤",nspar:"∦",nsqsube:"⋢",nsqsupe:"⋣",nsub:"⊄",nsubE:"⫅̸",nsube:"⊈",nsubset:"⊂⃒",nsubseteq:"⊈",nsubseteqq:"⫅̸",nsucc:"⊁",nsucceq:"⪰̸",nsup:"⊅",nsupE:"⫆̸",nsupe:"⊉",nsupset:"⊃⃒",nsupseteq:"⊉",nsupseteqq:"⫆̸",ntgl:"≹",Ntilde:"Ñ",ntilde:"ñ",ntlg:"≸",ntriangleleft:"⋪",ntrianglelefteq:"⋬",ntriangleright:"⋫",ntrianglerighteq:"⋭",Nu:"Ν",nu:"ν",num:"#",numero:"№",numsp:" ",nvap:"≍⃒",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",nvge:"≥⃒",nvgt:">⃒",nvHarr:"⤄",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwarhk:"⤣",nwarr:"↖",nwArr:"⇖",nwarrow:"↖",nwnear:"⤧",Oacute:"Ó",oacute:"ó",oast:"⊛",Ocirc:"Ô",ocirc:"ô",ocir:"⊚",Ocy:"О",ocy:"о",odash:"⊝",Odblac:"Ő",odblac:"ő",odiv:"⨸",odot:"⊙",odsold:"⦼",OElig:"Œ",oelig:"œ",ofcir:"⦿",Ofr:"𝔒",ofr:"𝔬",ogon:"˛",Ograve:"Ò",ograve:"ò",ogt:"⧁",ohbar:"⦵",ohm:"Ω",oint:"∮",olarr:"↺",olcir:"⦾",olcross:"⦻",oline:"‾",olt:"⧀",Omacr:"Ō",omacr:"ō",Omega:"Ω",omega:"ω",Omicron:"Ο",omicron:"ο",omid:"⦶",ominus:"⊖",Oopf:"𝕆",oopf:"𝕠",opar:"⦷",OpenCurlyDoubleQuote:"“",OpenCurlyQuote:"‘",operp:"⦹",oplus:"⊕",orarr:"↻",Or:"⩔",or:"∨",ord:"⩝",order:"ℴ",orderof:"ℴ",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oS:"Ⓢ",Oscr:"𝒪",oscr:"ℴ",Oslash:"Ø",oslash:"ø",osol:"⊘",Otilde:"Õ",otilde:"õ",otimesas:"⨶",Otimes:"⨷",otimes:"⊗",Ouml:"Ö",ouml:"ö",ovbar:"⌽",OverBar:"‾",OverBrace:"⏞",OverBracket:"⎴",OverParenthesis:"⏜",para:"¶",parallel:"∥",par:"∥",parsim:"⫳",parsl:"⫽",part:"∂",PartialD:"∂",Pcy:"П",pcy:"п",percnt:"%",period:".",permil:"‰",perp:"⊥",pertenk:"‱",Pfr:"𝔓",pfr:"𝔭",Phi:"Φ",phi:"φ",phiv:"ϕ",phmmat:"ℳ",phone:"☎",Pi:"Π",pi:"π",pitchfork:"⋔",piv:"ϖ",planck:"ℏ",planckh:"ℎ",plankv:"ℏ",plusacir:"⨣",plusb:"⊞",pluscir:"⨢",plus:"+",plusdo:"∔",plusdu:"⨥",pluse:"⩲",PlusMinus:"±",plusmn:"±",plussim:"⨦",plustwo:"⨧",pm:"±",Poincareplane:"ℌ",pointint:"⨕",popf:"𝕡",Popf:"ℙ",pound:"£",prap:"⪷",Pr:"⪻",pr:"≺",prcue:"≼",precapprox:"⪷",prec:"≺",preccurlyeq:"≼",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",preceq:"⪯",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",pre:"⪯",prE:"⪳",precsim:"≾",prime:"′",Prime:"″",primes:"ℙ",prnap:"⪹",prnE:"⪵",prnsim:"⋨",prod:"∏",Product:"∏",profalar:"⌮",profline:"⌒",profsurf:"⌓",prop:"∝",Proportional:"∝",Proportion:"∷",propto:"∝",prsim:"≾",prurel:"⊰",Pscr:"𝒫",pscr:"𝓅",Psi:"Ψ",psi:"ψ",puncsp:" ",Qfr:"𝔔",qfr:"𝔮",qint:"⨌",qopf:"𝕢",Qopf:"ℚ",qprime:"⁗",Qscr:"𝒬",qscr:"𝓆",quaternions:"ℍ",quatint:"⨖",quest:"?",questeq:"≟",quot:'"',QUOT:'"',rAarr:"⇛",race:"∽̱",Racute:"Ŕ",racute:"ŕ",radic:"√",raemptyv:"⦳",rang:"⟩",Rang:"⟫",rangd:"⦒",range:"⦥",rangle:"⟩",raquo:"»",rarrap:"⥵",rarrb:"⇥",rarrbfs:"⤠",rarrc:"⤳",rarr:"→",Rarr:"↠",rArr:"⇒",rarrfs:"⤞",rarrhk:"↪",rarrlp:"↬",rarrpl:"⥅",rarrsim:"⥴",Rarrtl:"⤖",rarrtl:"↣",rarrw:"↝",ratail:"⤚",rAtail:"⤜",ratio:"∶",rationals:"ℚ",rbarr:"⤍",rBarr:"⤏",RBarr:"⤐",rbbrk:"❳",rbrace:"}",rbrack:"]",rbrke:"⦌",rbrksld:"⦎",rbrkslu:"⦐",Rcaron:"Ř",rcaron:"ř",Rcedil:"Ŗ",rcedil:"ŗ",rceil:"⌉",rcub:"}",Rcy:"Р",rcy:"р",rdca:"⤷",rdldhar:"⥩",rdquo:"”",rdquor:"”",rdsh:"↳",real:"ℜ",realine:"ℛ",realpart:"ℜ",reals:"ℝ",Re:"ℜ",rect:"▭",reg:"®",REG:"®",ReverseElement:"∋",ReverseEquilibrium:"⇋",ReverseUpEquilibrium:"⥯",rfisht:"⥽",rfloor:"⌋",rfr:"𝔯",Rfr:"ℜ",rHar:"⥤",rhard:"⇁",rharu:"⇀",rharul:"⥬",Rho:"Ρ",rho:"ρ",rhov:"ϱ",RightAngleBracket:"⟩",RightArrowBar:"⇥",rightarrow:"→",RightArrow:"→",Rightarrow:"⇒",RightArrowLeftArrow:"⇄",rightarrowtail:"↣",RightCeiling:"⌉",RightDoubleBracket:"⟧",RightDownTeeVector:"⥝",RightDownVectorBar:"⥕",RightDownVector:"⇂",RightFloor:"⌋",rightharpoondown:"⇁",rightharpoonup:"⇀",rightleftarrows:"⇄",rightleftharpoons:"⇌",rightrightarrows:"⇉",rightsquigarrow:"↝",RightTeeArrow:"↦",RightTee:"⊢",RightTeeVector:"⥛",rightthreetimes:"⋌",RightTriangleBar:"⧐",RightTriangle:"⊳",RightTriangleEqual:"⊵",RightUpDownVector:"⥏",RightUpTeeVector:"⥜",RightUpVectorBar:"⥔",RightUpVector:"↾",RightVectorBar:"⥓",RightVector:"⇀",ring:"˚",risingdotseq:"≓",rlarr:"⇄",rlhar:"⇌",rlm:"",rmoustache:"⎱",rmoust:"⎱",rnmid:"⫮",roang:"⟭",roarr:"⇾",robrk:"⟧",ropar:"⦆",ropf:"𝕣",Ropf:"ℝ",roplus:"⨮",rotimes:"⨵",RoundImplies:"⥰",rpar:")",rpargt:"⦔",rppolint:"⨒",rrarr:"⇉",Rrightarrow:"⇛",rsaquo:"›",rscr:"𝓇",Rscr:"ℛ",rsh:"↱",Rsh:"↱",rsqb:"]",rsquo:"’",rsquor:"’",rthree:"⋌",rtimes:"⋊",rtri:"▹",rtrie:"⊵",rtrif:"▸",rtriltri:"⧎",RuleDelayed:"⧴",ruluhar:"⥨",rx:"℞",Sacute:"Ś",sacute:"ś",sbquo:"‚",scap:"⪸",Scaron:"Š",scaron:"š",Sc:"⪼",sc:"≻",sccue:"≽",sce:"⪰",scE:"⪴",Scedil:"Ş",scedil:"ş",Scirc:"Ŝ",scirc:"ŝ",scnap:"⪺",scnE:"⪶",scnsim:"⋩",scpolint:"⨓",scsim:"≿",Scy:"С",scy:"с",sdotb:"⊡",sdot:"⋅",sdote:"⩦",searhk:"⤥",searr:"↘",seArr:"⇘",searrow:"↘",sect:"§",semi:";",seswar:"⤩",setminus:"∖",setmn:"∖",sext:"✶",Sfr:"𝔖",sfr:"𝔰",sfrown:"⌢",sharp:"♯",SHCHcy:"Щ",shchcy:"щ",SHcy:"Ш",shcy:"ш",ShortDownArrow:"↓",ShortLeftArrow:"←",shortmid:"∣",shortparallel:"∥",ShortRightArrow:"→",ShortUpArrow:"↑",shy:"",Sigma:"Σ",sigma:"σ",sigmaf:"ς",sigmav:"ς",sim:"∼",simdot:"⩪",sime:"≃",simeq:"≃",simg:"⪞",simgE:"⪠",siml:"⪝",simlE:"⪟",simne:"≆",simplus:"⨤",simrarr:"⥲",slarr:"←",SmallCircle:"∘",smallsetminus:"∖",smashp:"⨳",smeparsl:"⧤",smid:"∣",smile:"⌣",smt:"⪪",smte:"⪬",smtes:"⪬︀",SOFTcy:"Ь",softcy:"ь",solbar:"⌿",solb:"⧄",sol:"/",Sopf:"𝕊",sopf:"𝕤",spades:"♠",spadesuit:"♠",spar:"∥",sqcap:"⊓",sqcaps:"⊓︀",sqcup:"⊔",sqcups:"⊔︀",Sqrt:"√",sqsub:"⊏",sqsube:"⊑",sqsubset:"⊏",sqsubseteq:"⊑",sqsup:"⊐",sqsupe:"⊒",sqsupset:"⊐",sqsupseteq:"⊒",square:"□",Square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",squarf:"▪",squ:"□",squf:"▪",srarr:"→",Sscr:"𝒮",sscr:"𝓈",ssetmn:"∖",ssmile:"⌣",sstarf:"⋆",Star:"⋆",star:"☆",starf:"★",straightepsilon:"ϵ",straightphi:"ϕ",strns:"¯",sub:"⊂",Sub:"⋐",subdot:"⪽",subE:"⫅",sube:"⊆",subedot:"⫃",submult:"⫁",subnE:"⫋",subne:"⊊",subplus:"⪿",subrarr:"⥹",subset:"⊂",Subset:"⋐",subseteq:"⊆",subseteqq:"⫅",SubsetEqual:"⊆",subsetneq:"⊊",subsetneqq:"⫋",subsim:"⫇",subsub:"⫕",subsup:"⫓",succapprox:"⪸",succ:"≻",succcurlyeq:"≽",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",succeq:"⪰",succnapprox:"⪺",succneqq:"⪶",succnsim:"⋩",succsim:"≿",SuchThat:"∋",sum:"∑",Sum:"∑",sung:"♪",sup1:"¹",sup2:"²",sup3:"³",sup:"⊃",Sup:"⋑",supdot:"⪾",supdsub:"⫘",supE:"⫆",supe:"⊇",supedot:"⫄",Superset:"⊃",SupersetEqual:"⊇",suphsol:"⟉",suphsub:"⫗",suplarr:"⥻",supmult:"⫂",supnE:"⫌",supne:"⊋",supplus:"⫀",supset:"⊃",Supset:"⋑",supseteq:"⊇",supseteqq:"⫆",supsetneq:"⊋",supsetneqq:"⫌",supsim:"⫈",supsub:"⫔",supsup:"⫖",swarhk:"⤦",swarr:"↙",swArr:"⇙",swarrow:"↙",swnwar:"⤪",szlig:"ß",Tab:"\t",target:"⌖",Tau:"Τ",tau:"τ",tbrk:"⎴",Tcaron:"Ť",tcaron:"ť",Tcedil:"Ţ",tcedil:"ţ",Tcy:"Т",tcy:"т",tdot:"⃛",telrec:"⌕",Tfr:"𝔗",tfr:"𝔱",there4:"∴",therefore:"∴",Therefore:"∴",Theta:"Θ",theta:"θ",thetasym:"ϑ",thetav:"ϑ",thickapprox:"≈",thicksim:"∼",ThickSpace:" ",ThinSpace:" ",thinsp:" ",thkap:"≈",thksim:"∼",THORN:"Þ",thorn:"þ",tilde:"˜",Tilde:"∼",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",timesbar:"⨱",timesb:"⊠",times:"×",timesd:"⨰",tint:"∭",toea:"⤨",topbot:"⌶",topcir:"⫱",top:"⊤",Topf:"𝕋",topf:"𝕥",topfork:"⫚",tosa:"⤩",tprime:"‴",trade:"™",TRADE:"™",triangle:"▵",triangledown:"▿",triangleleft:"◃",trianglelefteq:"⊴",triangleq:"≜",triangleright:"▹",trianglerighteq:"⊵",tridot:"◬",trie:"≜",triminus:"⨺",TripleDot:"⃛",triplus:"⨹",trisb:"⧍",tritime:"⨻",trpezium:"⏢",Tscr:"𝒯",tscr:"𝓉",TScy:"Ц",tscy:"ц",TSHcy:"Ћ",tshcy:"ћ",Tstrok:"Ŧ",tstrok:"ŧ",twixt:"≬",twoheadleftarrow:"↞",twoheadrightarrow:"↠",Uacute:"Ú",uacute:"ú",uarr:"↑",Uarr:"↟",uArr:"⇑",Uarrocir:"⥉",Ubrcy:"Ў",ubrcy:"ў",Ubreve:"Ŭ",ubreve:"ŭ",Ucirc:"Û",ucirc:"û",Ucy:"У",ucy:"у",udarr:"⇅",Udblac:"Ű",udblac:"ű",udhar:"⥮",ufisht:"⥾",Ufr:"𝔘",ufr:"𝔲",Ugrave:"Ù",ugrave:"ù",uHar:"⥣",uharl:"↿",uharr:"↾",uhblk:"▀",ulcorn:"⌜",ulcorner:"⌜",ulcrop:"⌏",ultri:"◸",Umacr:"Ū",umacr:"ū",uml:"¨",UnderBar:"_",UnderBrace:"⏟",UnderBracket:"⎵",UnderParenthesis:"⏝",Union:"⋃",UnionPlus:"⊎",Uogon:"Ų",uogon:"ų",Uopf:"𝕌",uopf:"𝕦",UpArrowBar:"⤒",uparrow:"↑",UpArrow:"↑",Uparrow:"⇑",UpArrowDownArrow:"⇅",updownarrow:"↕",UpDownArrow:"↕",Updownarrow:"⇕",UpEquilibrium:"⥮",upharpoonleft:"↿",upharpoonright:"↾",uplus:"⊎",UpperLeftArrow:"↖",UpperRightArrow:"↗",upsi:"υ",Upsi:"ϒ",upsih:"ϒ",Upsilon:"Υ",upsilon:"υ",UpTeeArrow:"↥",UpTee:"⊥",upuparrows:"⇈",urcorn:"⌝",urcorner:"⌝",urcrop:"⌎",Uring:"Ů",uring:"ů",urtri:"◹",Uscr:"𝒰",uscr:"𝓊",utdot:"⋰",Utilde:"Ũ",utilde:"ũ",utri:"▵",utrif:"▴",uuarr:"⇈",Uuml:"Ü",uuml:"ü",uwangle:"⦧",vangrt:"⦜",varepsilon:"ϵ",varkappa:"ϰ",varnothing:"∅",varphi:"ϕ",varpi:"ϖ",varpropto:"∝",varr:"↕",vArr:"⇕",varrho:"ϱ",varsigma:"ς",varsubsetneq:"⊊︀",varsubsetneqq:"⫋︀",varsupsetneq:"⊋︀",varsupsetneqq:"⫌︀",vartheta:"ϑ",vartriangleleft:"⊲",vartriangleright:"⊳",vBar:"⫨",Vbar:"⫫",vBarv:"⫩",Vcy:"В",vcy:"в",vdash:"⊢",vDash:"⊨",Vdash:"⊩",VDash:"⊫",Vdashl:"⫦",veebar:"⊻",vee:"∨",Vee:"⋁",veeeq:"≚",vellip:"⋮",verbar:"|",Verbar:"‖",vert:"|",Vert:"‖",VerticalBar:"∣",VerticalLine:"|",VerticalSeparator:"❘",VerticalTilde:"≀",VeryThinSpace:" ",Vfr:"𝔙",vfr:"𝔳",vltri:"⊲",vnsub:"⊂⃒",vnsup:"⊃⃒",Vopf:"𝕍",vopf:"𝕧",vprop:"∝",vrtri:"⊳",Vscr:"𝒱",vscr:"𝓋",vsubnE:"⫋︀",vsubne:"⊊︀",vsupnE:"⫌︀",vsupne:"⊋︀",Vvdash:"⊪",vzigzag:"⦚",Wcirc:"Ŵ",wcirc:"ŵ",wedbar:"⩟",wedge:"∧",Wedge:"⋀",wedgeq:"≙",weierp:"℘",Wfr:"𝔚",wfr:"𝔴",Wopf:"𝕎",wopf:"𝕨",wp:"℘",wr:"≀",wreath:"≀",Wscr:"𝒲",wscr:"𝓌",xcap:"⋂",xcirc:"◯",xcup:"⋃",xdtri:"▽",Xfr:"𝔛",xfr:"𝔵",xharr:"⟷",xhArr:"⟺",Xi:"Ξ",xi:"ξ",xlarr:"⟵",xlArr:"⟸",xmap:"⟼",xnis:"⋻",xodot:"⨀",Xopf:"𝕏",xopf:"𝕩",xoplus:"⨁",xotime:"⨂",xrarr:"⟶",xrArr:"⟹",Xscr:"𝒳",xscr:"𝓍",xsqcup:"⨆",xuplus:"⨄",xutri:"△",xvee:"⋁",xwedge:"⋀",Yacute:"Ý",yacute:"ý",YAcy:"Я",yacy:"я",Ycirc:"Ŷ",ycirc:"ŷ",Ycy:"Ы",ycy:"ы",yen:"¥",Yfr:"𝔜",yfr:"𝔶",YIcy:"Ї",yicy:"ї",Yopf:"𝕐",yopf:"𝕪",Yscr:"𝒴",yscr:"𝓎",YUcy:"Ю",yucy:"ю",yuml:"ÿ",Yuml:"Ÿ",Zacute:"Ź",zacute:"ź",Zcaron:"Ž",zcaron:"ž",Zcy:"З",zcy:"з",Zdot:"Ż",zdot:"ż",zeetrf:"ℨ",ZeroWidthSpace:"",Zeta:"Ζ",zeta:"ζ",zfr:"𝔷",Zfr:"ℨ",ZHcy:"Ж",zhcy:"ж",zigrarr:"⇝",zopf:"𝕫",Zopf:"ℤ",Zscr:"𝒵",zscr:"𝓏",zwj:"",zwnj:""},we=/^#[xX]([A-Fa-f0-9]+)$/,ke=/^#([0-9]+)$/,Te=/^([A-Za-z0-9]+)$/,Ee=function(){function t(t){this.named=t}return t.prototype.parse=function(t){if(t){var e=t.match(we);if(e)return String.fromCharCode(parseInt(e[1],16));if(e=t.match(ke))return String.fromCharCode(parseInt(e[1],10));if(e=t.match(Te))return this.named[e[1]]}},t}(),Ne=/[\t\n\f ]/,Pe=/[A-Za-z]/,Ae=/\r\n?/g;function xe(t){return Ne.test(t)}function De(t){return Pe.test(t)}var Ce=function(){function t(t,e,r){void 0===r&&(r="precompile"),this.delegate=t,this.entityParser=e,this.mode=r,this.state="beforeData",this.line=-1,this.column=-1,this.input="",this.index=-1,this.tagNameBuffer="",this.states={beforeData:function(){var t=this.peek();if("<"!==t||this.isIgnoredEndTag()){if("precompile"===this.mode&&"\n"===t){var e=this.tagNameBuffer.toLowerCase();("pre"===e||"textarea"===e)&&this.consume()}this.transitionTo("data"),this.delegate.beginData()}else this.transitionTo("tagOpen"),this.markTagStart(),this.consume()},data:function(){var t=this.peek(),e=this.tagNameBuffer;"<"!==t||this.isIgnoredEndTag()?"&"===t&&"script"!==e&&"style"!==e?(this.consume(),this.delegate.appendToData(this.consumeCharRef()||"&")):(this.consume(),this.delegate.appendToData(t)):(this.delegate.finishData(),this.transitionTo("tagOpen"),this.markTagStart(),this.consume())},tagOpen:function(){var t=this.consume();"!"===t?this.transitionTo("markupDeclarationOpen"):"/"===t?this.transitionTo("endTagOpen"):("@"===t||":"===t||De(t))&&(this.transitionTo("tagName"),this.tagNameBuffer="",this.delegate.beginStartTag(),this.appendToTagName(t))},markupDeclarationOpen:function(){var t=this.consume();"-"===t&&"-"===this.peek()?(this.consume(),this.transitionTo("commentStart"),this.delegate.beginComment()):"DOCTYPE"===t.toUpperCase()+this.input.substring(this.index,this.index+6).toUpperCase()&&(this.consume(),this.consume(),this.consume(),this.consume(),this.consume(),this.consume(),this.transitionTo("doctype"),this.delegate.beginDoctype&&this.delegate.beginDoctype())},doctype:function(){xe(this.consume())&&this.transitionTo("beforeDoctypeName")},beforeDoctypeName:function(){var t=this.consume();xe(t)||(this.transitionTo("doctypeName"),this.delegate.appendToDoctypeName&&this.delegate.appendToDoctypeName(t.toLowerCase()))},doctypeName:function(){var t=this.consume();xe(t)?this.transitionTo("afterDoctypeName"):">"===t?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypeName&&this.delegate.appendToDoctypeName(t.toLowerCase())},afterDoctypeName:function(){var t=this.consume();if(!xe(t))if(">"===t)this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData");else{var e=t.toUpperCase()+this.input.substring(this.index,this.index+5).toUpperCase(),r="PUBLIC"===e.toUpperCase(),a="SYSTEM"===e.toUpperCase();(r||a)&&(this.consume(),this.consume(),this.consume(),this.consume(),this.consume(),this.consume()),r?this.transitionTo("afterDoctypePublicKeyword"):a&&this.transitionTo("afterDoctypeSystemKeyword")}},afterDoctypePublicKeyword:function(){var t=this.peek();xe(t)?(this.transitionTo("beforeDoctypePublicIdentifier"),this.consume()):'"'===t?(this.transitionTo("doctypePublicIdentifierDoubleQuoted"),this.consume()):"'"===t?(this.transitionTo("doctypePublicIdentifierSingleQuoted"),this.consume()):">"===t&&(this.consume(),this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData"))},doctypePublicIdentifierDoubleQuoted:function(){var t=this.consume();'"'===t?this.transitionTo("afterDoctypePublicIdentifier"):">"===t?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypePublicIdentifier&&this.delegate.appendToDoctypePublicIdentifier(t)},doctypePublicIdentifierSingleQuoted:function(){var t=this.consume();"'"===t?this.transitionTo("afterDoctypePublicIdentifier"):">"===t?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypePublicIdentifier&&this.delegate.appendToDoctypePublicIdentifier(t)},afterDoctypePublicIdentifier:function(){var t=this.consume();xe(t)?this.transitionTo("betweenDoctypePublicAndSystemIdentifiers"):">"===t?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):'"'===t?this.transitionTo("doctypeSystemIdentifierDoubleQuoted"):"'"===t&&this.transitionTo("doctypeSystemIdentifierSingleQuoted")},betweenDoctypePublicAndSystemIdentifiers:function(){var t=this.consume();xe(t)||(">"===t?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):'"'===t?this.transitionTo("doctypeSystemIdentifierDoubleQuoted"):"'"===t&&this.transitionTo("doctypeSystemIdentifierSingleQuoted"))},doctypeSystemIdentifierDoubleQuoted:function(){var t=this.consume();'"'===t?this.transitionTo("afterDoctypeSystemIdentifier"):">"===t?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypeSystemIdentifier&&this.delegate.appendToDoctypeSystemIdentifier(t)},doctypeSystemIdentifierSingleQuoted:function(){var t=this.consume();"'"===t?this.transitionTo("afterDoctypeSystemIdentifier"):">"===t?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypeSystemIdentifier&&this.delegate.appendToDoctypeSystemIdentifier(t)},afterDoctypeSystemIdentifier:function(){var t=this.consume();xe(t)||">"===t&&(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData"))},commentStart:function(){var t=this.consume();"-"===t?this.transitionTo("commentStartDash"):">"===t?(this.delegate.finishComment(),this.transitionTo("beforeData")):(this.delegate.appendToCommentData(t),this.transitionTo("comment"))},commentStartDash:function(){var t=this.consume();"-"===t?this.transitionTo("commentEnd"):">"===t?(this.delegate.finishComment(),this.transitionTo("beforeData")):(this.delegate.appendToCommentData("-"),this.transitionTo("comment"))},comment:function(){var t=this.consume();"-"===t?this.transitionTo("commentEndDash"):this.delegate.appendToCommentData(t)},commentEndDash:function(){var t=this.consume();"-"===t?this.transitionTo("commentEnd"):(this.delegate.appendToCommentData("-"+t),this.transitionTo("comment"))},commentEnd:function(){var t=this.consume();">"===t?(this.delegate.finishComment(),this.transitionTo("beforeData")):(this.delegate.appendToCommentData("--"+t),this.transitionTo("comment"))},tagName:function(){var t=this.consume();xe(t)?this.transitionTo("beforeAttributeName"):"/"===t?this.transitionTo("selfClosingStartTag"):">"===t?(this.delegate.finishTag(),this.transitionTo("beforeData")):this.appendToTagName(t)},endTagName:function(){var t=this.consume();xe(t)?(this.transitionTo("beforeAttributeName"),this.tagNameBuffer=""):"/"===t?(this.transitionTo("selfClosingStartTag"),this.tagNameBuffer=""):">"===t?(this.delegate.finishTag(),this.transitionTo("beforeData"),this.tagNameBuffer=""):this.appendToTagName(t)},beforeAttributeName:function(){var t=this.peek();xe(t)?this.consume():"/"===t?(this.transitionTo("selfClosingStartTag"),this.consume()):">"===t?(this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):"="===t?(this.delegate.reportSyntaxError("attribute name cannot start with equals sign"),this.transitionTo("attributeName"),this.delegate.beginAttribute(),this.consume(),this.delegate.appendToAttributeName(t)):(this.transitionTo("attributeName"),this.delegate.beginAttribute())},attributeName:function(){var t=this.peek();xe(t)?(this.transitionTo("afterAttributeName"),this.consume()):"/"===t?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("selfClosingStartTag")):"="===t?(this.transitionTo("beforeAttributeValue"),this.consume()):">"===t?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):'"'===t||"'"===t||"<"===t?(this.delegate.reportSyntaxError(t+" is not a valid character within attribute names"),this.consume(),this.delegate.appendToAttributeName(t)):(this.consume(),this.delegate.appendToAttributeName(t))},afterAttributeName:function(){var t=this.peek();xe(t)?this.consume():"/"===t?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("selfClosingStartTag")):"="===t?(this.consume(),this.transitionTo("beforeAttributeValue")):">"===t?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.transitionTo("attributeName"),this.delegate.beginAttribute(),this.consume(),this.delegate.appendToAttributeName(t))},beforeAttributeValue:function(){var t=this.peek();xe(t)?this.consume():'"'===t?(this.transitionTo("attributeValueDoubleQuoted"),this.delegate.beginAttributeValue(!0),this.consume()):"'"===t?(this.transitionTo("attributeValueSingleQuoted"),this.delegate.beginAttributeValue(!0),this.consume()):">"===t?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):(this.transitionTo("attributeValueUnquoted"),this.delegate.beginAttributeValue(!1),this.consume(),this.delegate.appendToAttributeValue(t))},attributeValueDoubleQuoted:function(){var t=this.consume();'"'===t?(this.delegate.finishAttributeValue(),this.transitionTo("afterAttributeValueQuoted")):"&"===t?this.delegate.appendToAttributeValue(this.consumeCharRef()||"&"):this.delegate.appendToAttributeValue(t)},attributeValueSingleQuoted:function(){var t=this.consume();"'"===t?(this.delegate.finishAttributeValue(),this.transitionTo("afterAttributeValueQuoted")):"&"===t?this.delegate.appendToAttributeValue(this.consumeCharRef()||"&"):this.delegate.appendToAttributeValue(t)},attributeValueUnquoted:function(){var t=this.peek();xe(t)?(this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("beforeAttributeName")):"/"===t?(this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("selfClosingStartTag")):"&"===t?(this.consume(),this.delegate.appendToAttributeValue(this.consumeCharRef()||"&")):">"===t?(this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):(this.consume(),this.delegate.appendToAttributeValue(t))},afterAttributeValueQuoted:function(){var t=this.peek();xe(t)?(this.consume(),this.transitionTo("beforeAttributeName")):"/"===t?(this.consume(),this.transitionTo("selfClosingStartTag")):">"===t?(this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):this.transitionTo("beforeAttributeName")},selfClosingStartTag:function(){">"===this.peek()?(this.consume(),this.delegate.markTagAsSelfClosing(),this.delegate.finishTag(),this.transitionTo("beforeData")):this.transitionTo("beforeAttributeName")},endTagOpen:function(){var t=this.consume();("@"===t||":"===t||De(t))&&(this.transitionTo("endTagName"),this.tagNameBuffer="",this.delegate.beginEndTag(),this.appendToTagName(t))}},this.reset()}return t.prototype.reset=function(){this.transitionTo("beforeData"),this.input="",this.tagNameBuffer="",this.index=0,this.line=1,this.column=0,this.delegate.reset()},t.prototype.transitionTo=function(t){this.state=t},t.prototype.tokenize=function(t){this.reset(),this.tokenizePart(t),this.tokenizeEOF()},t.prototype.tokenizePart=function(t){for(this.input+=function(t){return t.replace(Ae,"\n")}(t);this.index<this.input.length;){var e=this.states[this.state];if(void 0===e)throw new Error("unhandled state "+this.state);e.call(this)}},t.prototype.tokenizeEOF=function(){this.flushData()},t.prototype.flushData=function(){"data"===this.state&&(this.delegate.finishData(),this.transitionTo("beforeData"))},t.prototype.peek=function(){return this.input.charAt(this.index)},t.prototype.consume=function(){var t=this.peek();return this.index++,"\n"===t?(this.line++,this.column=0):this.column++,t},t.prototype.consumeCharRef=function(){var t=this.input.indexOf(";",this.index);if(-1!==t){var e=this.input.slice(this.index,t),r=this.entityParser.parse(e);if(r){for(var a=e.length;a;)this.consume(),a--;return this.consume(),r}}},t.prototype.markTagStart=function(){this.delegate.tagOpen()},t.prototype.appendToTagName=function(t){this.tagNameBuffer+=t,this.delegate.appendToTagName(t)},t.prototype.isIgnoredEndTag=function(){var t=this.tagNameBuffer;return"title"===t&&"</title>"!==this.input.substring(this.index,this.index+8)||"style"===t&&"</style>"!==this.input.substring(this.index,this.index+8)||"script"===t&&"<\/script>"!==this.input.substring(this.index,this.index+9)},t}(),Le=new Set(["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]);function qe(t){return!!t&&t.length>0}function _e(t){return 0===t.length?void 0:t[t.length-1]}var Oe=Object.freeze({line:1,column:0}),Ie=Object.freeze({source:"(synthetic)",start:Oe,end:Oe}),Be=Object.freeze({source:"(nonexistent)",start:Oe,end:Oe}),Ve=Object.freeze({source:"(broken)",start:Oe,end:Oe}),Re=class{constructor(t){this._whens=t}first(t){for(let e of this._whens){let r=e.match(t);if(qe(r))return r[0]}return null}},$e=class{get(t,e){let r=this._map.get(t);return r||(r=e(),this._map.set(t,r),r)}add(t,e){this._map.set(t,e)}match(t){let e=function(t){switch(t){case"Broken":case"InternalsSynthetic":case"NonExistent":return"IS_INVISIBLE";default:return t}}(t),r=[],a=this._map.get(e),n=this._map.get("MATCH_ANY");return a&&r.push(a),n&&r.push(n),r}constructor(){this._map=new Map}};function Ue(t){return t(new Fe).validate()}var He,Fe=class{validate(){return(t,e)=>this.matchFor(t.kind,e.kind)(t,e)}matchFor(t,e){let r=this._whens.match(t);return qe(r),new Re(r).first(e)}when(t,e,r){return this._whens.get(t,()=>new $e).add(e,r),this}constructor(){this._whens=new $e}},ze=class t{static synthetic(e){let r=Me.synthetic(e);return new t({loc:r,chars:e})}static load(e,r){return new t({loc:Me.load(e,r[1]),chars:r[0]})}constructor(t){this.loc=t.loc,this.chars=t.chars}getString(){return this.chars}serialize(){return[this.chars,this.loc.serialize()]}},Me=class t{static get NON_EXISTENT(){return new Qe("NonExistent",Be).wrap()}static load(e,r){return"number"==typeof r?t.forCharPositions(e,r,r):"string"==typeof r?t.synthetic(r):Array.isArray(r)?t.forCharPositions(e,r[0],r[1]):"NonExistent"===r?t.NON_EXISTENT:"Broken"===r?t.broken(Ve):void function(t,e="unexpected unreachable branch"){throw Ft.log("unreachable",t),Ft.log(`${e} :: ${JSON.stringify(t)} (${t})`),new Error("code reached unreachable")}(r)}static forHbsLoc(t,e){let r=new tr(t,e.start),a=new tr(t,e.end);return new Ke(t,{start:r,end:a},e).wrap()}static forCharPositions(t,e,r){let a=new Xe(t,e),n=new Xe(t,r);return new je(t,{start:a,end:n}).wrap()}static synthetic(t){return new Qe("InternalsSynthetic",Be,t).wrap()}static broken(t=Ve){return new Qe("Broken",t).wrap()}constructor(t){var e;this.data=t,this.isInvisible="CharPosition"!==(e=t.kind)&&"HbsPosition"!==e}getStart(){return this.data.getStart().wrap()}getEnd(){return this.data.getEnd().wrap()}get loc(){let t=this.data.toHbsSpan();return null===t?Ve:t.toHbsLoc()}get module(){return this.data.getModule()}get startPosition(){return this.loc.start}get endPosition(){return this.loc.end}toJSON(){return this.loc}withStart(t){return Je(t.data,this.data.getEnd())}withEnd(t){return Je(this.data.getStart(),t.data)}asString(){return this.data.asString()}toSlice(t){let e=this.data.asString();return JSON.stringify(e),JSON.stringify(t),new ze({loc:this,chars:t||e})}get start(){return this.loc.start}set start(t){this.data.locDidUpdate({start:t})}get end(){return this.loc.end}set end(t){this.data.locDidUpdate({end:t})}get source(){return this.module}collapse(t){switch(t){case"start":return this.getStart().collapsed();case"end":return this.getEnd().collapsed()}}extend(t){return Je(this.data.getStart(),t.data.getEnd())}serialize(){return this.data.serialize()}slice({skipStart:t=0,skipEnd:e=0}){return Je(this.getStart().move(t).data,this.getEnd().move(-e).data)}sliceStartChars({skipStart:t=0,chars:e}){return Je(this.getStart().move(t).data,this.getStart().move(t+e).data)}sliceEndChars({skipEnd:t=0,chars:e}){return Je(this.getEnd().move(t-e).data,this.getStart().move(-t).data)}},je=class{constructor(t,e){s(this,He),this.source=t,this.charPositions=e,this.kind="CharPosition",i(this,He,null)}wrap(){return new Me(this)}asString(){return this.source.slice(this.charPositions.start.charPos,this.charPositions.end.charPos)}getModule(){return this.source.module}getStart(){return this.charPositions.start}getEnd(){return this.charPositions.end}locDidUpdate(){}toHbsSpan(){let t=n(this,He);if(null===t){let e=this.charPositions.start.toHbsPos(),r=this.charPositions.end.toHbsPos();t=i(this,He,null===e||null===r?Ye:new Ke(this.source,{start:e,end:r}))}return t===Ye?null:t}serialize(){let{start:{charPos:t},end:{charPos:e}}=this.charPositions;return t===e?t:[t,e]}toCharPosSpan(){return this}};He=new WeakMap;var We,Ge,Ke=class{constructor(t,e,r=null){s(this,We),s(this,Ge),this.source=t,this.hbsPositions=e,this.kind="HbsPosition",i(this,We,null),i(this,Ge,r)}serialize(){let t=this.toCharPosSpan();return null===t?"Broken":t.wrap().serialize()}wrap(){return new Me(this)}updateProvided(t,e){n(this,Ge)&&(n(this,Ge)[e]=t),i(this,We,null),i(this,Ge,{start:t,end:t})}locDidUpdate({start:t,end:e}){void 0!==t&&(this.updateProvided(t,"start"),this.hbsPositions.start=new tr(this.source,t,null)),void 0!==e&&(this.updateProvided(e,"end"),this.hbsPositions.end=new tr(this.source,e,null))}asString(){let t=this.toCharPosSpan();return null===t?"":t.asString()}getModule(){return this.source.module}getStart(){return this.hbsPositions.start}getEnd(){return this.hbsPositions.end}toHbsLoc(){return{start:this.hbsPositions.start.hbsPos,end:this.hbsPositions.end.hbsPos}}toHbsSpan(){return this}toCharPosSpan(){let t=n(this,We);if(null===t){let e=this.hbsPositions.start.toCharPos(),r=this.hbsPositions.end.toCharPos();if(!e||!r)return t=i(this,We,Ye),null;t=i(this,We,new je(this.source,{start:e,end:r}))}return t===Ye?null:t}};We=new WeakMap,Ge=new WeakMap;var Qe=class{constructor(t,e,r=null){this.kind=t,this.loc=e,this.string=r}serialize(){switch(this.kind){case"Broken":case"NonExistent":return this.kind;case"InternalsSynthetic":return this.string||""}}wrap(){return new Me(this)}asString(){return this.string||""}locDidUpdate({start:t,end:e}){void 0!==t&&(this.loc.start=t),void 0!==e&&(this.loc.end=e)}getModule(){return"an unknown module"}getStart(){return new er(this.kind,this.loc.start)}getEnd(){return new er(this.kind,this.loc.end)}toCharPosSpan(){return this}toHbsSpan(){return null}toHbsLoc(){return Ve}},Je=Ue(t=>t.when("HbsPosition","HbsPosition",(t,e)=>new Ke(t.source,{start:t,end:e}).wrap()).when("CharPosition","CharPosition",(t,e)=>new je(t.source,{start:t,end:e}).wrap()).when("CharPosition","HbsPosition",(t,e)=>{let r=e.toCharPos();return null===r?new Qe("Broken",Ve).wrap():Je(t,r)}).when("HbsPosition","CharPosition",(t,e)=>{let r=t.toCharPos();return null===r?new Qe("Broken",Ve).wrap():Je(r,e)}).when("IS_INVISIBLE","MATCH_ANY",t=>new Qe(t.kind,Ve).wrap()).when("MATCH_ANY","IS_INVISIBLE",(t,e)=>new Qe(e.kind,Ve).wrap())),Ye="BROKEN",Ze=class t{static forHbsPos(t,e){return new tr(t,e,null).wrap()}static broken(t=Oe){return new er("Broken",t).wrap()}constructor(t){this.data=t}get offset(){let t=this.data.toCharPos();return null===t?null:t.offset}eql(t){return rr(this.data,t.data)}until(t){return Je(this.data,t.data)}move(e){let r=this.data.toCharPos();if(null===r)return t.broken();{let a=r.offset+e;return r.source.validate(a)?new Xe(r.source,a).wrap():t.broken()}}collapsed(){return Je(this.data,this.data)}toJSON(){return this.data.toJSON()}},Xe=class{constructor(t,e){this.source=t,this.charPos=e,this.kind="CharPosition",this._locPos=null}toCharPos(){return this}toJSON(){let t=this.toHbsPos();return null===t?Oe:t.toJSON()}wrap(){return new Ze(this)}get offset(){return this.charPos}toHbsPos(){let t=this._locPos;if(null===t){let e=this.source.hbsPosFor(this.charPos);this._locPos=t=null===e?Ye:new tr(this.source,e,this.charPos)}return t===Ye?null:t}},tr=class{constructor(t,e,r=null){this.source=t,this.hbsPos=e,this.kind="HbsPosition",this._charPos=null===r?null:new Xe(t,r)}toCharPos(){let t=this._charPos;if(null===t){let e=this.source.charPosFor(this.hbsPos);this._charPos=t=null===e?Ye:new Xe(this.source,e)}return t===Ye?null:t}toJSON(){return this.hbsPos}wrap(){return new Ze(this)}toHbsPos(){return this}},er=class{constructor(t,e){this.kind=t,this.pos=e}toCharPos(){return null}toJSON(){return this.pos}wrap(){return new Ze(this)}get offset(){return null}},rr=Ue(t=>t.when("HbsPosition","HbsPosition",({hbsPos:t},{hbsPos:e})=>t.column===e.column&&t.line===e.line).when("CharPosition","CharPosition",({charPos:t},{charPos:e})=>t===e).when("CharPosition","HbsPosition",({offset:t},e)=>{var r;return t===(null==(r=e.toCharPos())?void 0:r.offset)}).when("HbsPosition","CharPosition",(t,{offset:e})=>{var r;return(null==(r=t.toCharPos())?void 0:r.offset)===e}).when("MATCH_ANY","MATCH_ANY",()=>!1)),ar=class t{static from(e,r={}){var a;return new t(e,null==(a=r.meta)?void 0:a.moduleName)}constructor(t,e="an unknown module"){this.source=t,this.module=e}validate(t){return t>=0&&t<=this.source.length}slice(t,e){return this.source.slice(t,e)}offsetFor(t,e){return Ze.forHbsPos(this,{line:t,column:e})}spanFor({start:t,end:e}){return Me.forHbsLoc(this,{start:{line:t.line,column:t.column},end:{line:e.line,column:e.column}})}hbsPosFor(t){let e=0,r=0;if(t>this.source.length)return null;for(;;){let a=this.source.indexOf("\n",r);if(t<=a||-1===a)return{line:e+1,column:t-r};e+=1,r=a+1}}charPosFor(t){let{line:e,column:r}=t,a=this.source.length,n=0,s=0;for(;s<a;){let t=this.source.indexOf("\n",s);if(-1===t&&(t=this.source.length),n===e-1)return s+r>t?t:s+r;if(-1===t)return 0;n+=1,s=t+1}return a}};function nr(t,e){let{module:r,loc:a}=e,{line:n,column:s}=a.start,i=e.asString(),o=i?`\n\n|\n| ${i.split("\n").join("\n| ")}\n|\n\n`:"",l=new Error(`${t}: ${o}(error occurred in '${r}' @ line ${n} : column ${s})`);return l.name="SyntaxError",l.location=e,l.code=i,l}var sr={Template:["body"],Block:["body"],MustacheStatement:["path","params","hash"],BlockStatement:["path","params","hash","program","inverse"],ElementModifierStatement:["path","params","hash"],CommentStatement:[],MustacheCommentStatement:[],ElementNode:["attributes","modifiers","children","comments"],AttrNode:["value"],TextNode:[],ConcatStatement:["parts"],SubExpression:["path","params","hash"],PathExpression:[],StringLiteral:[],BooleanLiteral:[],NumberLiteral:[],NullLiteral:[],UndefinedLiteral:[],Hash:["pairs"],HashPair:["value"]},ir=function(){function t(t,e,r,a){let n=Error.call(this,t);this.key=a,this.message=t,this.node=e,this.parent=r,n.stack&&(this.stack=n.stack)}return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}();function or(t,e,r){return new ir("Cannot remove a node unless it is part of an array",t,e,r)}function lr(t,e){return new ir("Replacing and removing in key handlers is not yet supported.",t,null,e)}var cr,ur=class{constructor(t,e=null,r=null){this.node=t,this.parent=e,this.parentKey=r}get parentNode(){return this.parent?this.parent.node:null}parents(){return{[Symbol.iterator]:()=>new hr(this)}}},hr=class{constructor(t){this.path=t}next(){return this.path.parent?(this.path=this.path.parent,{done:!1,value:this.path}):{done:!0,value:null}}};function pr(t){return"function"==typeof t?t:t.enter}function dr(t){return"function"==typeof t?void 0:t.exit}function mr(t,e){let r,a,n,{node:s,parent:i,parentKey:o}=e,l=function(t,e){if(t.Program&&("Template"===e&&!t.Template||"Block"===e&&!t.Block))return t.Program;let r=t[e];return void 0!==r?r:t.All}(t,s.type);if(void 0!==l&&(r=pr(l),a=dr(l)),void 0!==r&&(n=r(s,e)),null!=n){if(JSON.stringify(s)!==JSON.stringify(n))return Array.isArray(n)?(br(t,n,i,o),n):mr(t,new ur(n,i,o))||n;n=void 0}if(void 0===n){let r=sr[s.type];for(let a=0;a<r.length;a++)fr(t,l,e,r[a]);void 0!==a&&(n=a(s,e))}return n}function gr(t,e,r){t[e]=r}function fr(t,e,r,a){let n,s,{node:i}=r,o=i[a];if(o){if(void 0!==e){let t=function(t,e){let r="function"!=typeof t?t.keys:void 0;if(void 0===r)return;let a=r[e];return void 0!==a?a:r.All}(e,a);void 0!==t&&(n=pr(t),s=dr(t))}if(void 0!==n&&void 0!==n(i,a))throw lr(i,a);if(Array.isArray(o))br(t,o,r,a);else{let e=mr(t,new ur(o,r,a));void 0!==e&&function(t,e,r,a){if(null===a)throw or(r,t,e);if(Array.isArray(a)){if(1!==a.length)throw 0===a.length?or(r,t,e):function(t,e,r){return new ir("Cannot replace a node with multiple nodes unless it is part of an array",t,e,r)}(r,t,e);gr(t,e,a[0])}else gr(t,e,a)}(i,a,o,e)}if(void 0!==s&&void 0!==s(i,a))throw lr(i,a)}}function br(t,e,r,a){for(let n=0;n<e.length;n++){let s=e[n],i=mr(t,new ur(s,r,a));void 0!==i&&(n+=yr(e,n,i)-1)}}function yr(t,e,r){return null===r?(t.splice(e,1),0):Array.isArray(r)?(t.splice(e,1,...r),r.length):(t.splice(e,1,r),1)}function vr(t,e){mr(e,new ur(t))}function Sr(t,e){(function(t){switch(t.type){case"Block":case"Template":return t.body;case"ElementNode":return t.children}})(t).push(e)}function wr(t){return"StringLiteral"===t.type||"BooleanLiteral"===t.type||"NumberLiteral"===t.type||"NullLiteral"===t.type||"UndefinedLiteral"===t.type}function kr(){return cr||(cr=new ar("","(synthetic)")),cr}function Tr(t,e,r){return xr.literal({type:t,value:e,loc:Er(r||null)})}function Er(...t){if(1===t.length){let e=t[0];return e&&"object"==typeof e?Me.forHbsLoc(kr(),e):Me.forHbsLoc(kr(),Ie)}{let[e,r,a,n,s]=t,i=s?new ar("",s):kr();return Me.forHbsLoc(i,{start:{line:e,column:r},end:{line:a||e,column:n||r}})}}var Nr=function(t,e){return xr.head({original:t,loc:Er(e||null)})};Pr("StringLiteral"),Pr("BooleanLiteral"),Pr("NumberLiteral");function Pr(t){return function(e,r){return Tr(t,e,r)}}var Ar={close:!1,open:!1},xr=new class{pos({line:t,column:e}){return{line:t,column:e}}blockItself({body:t,params:e,chained:r=!1,loc:a}){return{type:"Block",body:t,params:e,get blockParams(){return this.params.map(t=>t.name)},set blockParams(t){this.params=t.map(t=>xr.var({name:t,loc:Me.synthetic(t)}))},chained:r,loc:a}}template({body:t,blockParams:e,loc:r}){return{type:"Template",body:t,blockParams:e,loc:r}}mustache({path:t,params:e,hash:r,trusting:a,loc:n,strip:s=Ar}){return function({path:t,params:e,hash:r,trusting:a,strip:n,loc:s}){let i={type:"MustacheStatement",path:t,params:e,hash:r,trusting:a,strip:n,loc:s};return Object.defineProperty(i,"escaped",{enumerable:!1,get(){return!this.trusting},set(t){this.trusting=!t}}),i}({path:t,params:e,hash:r,trusting:a,strip:s,loc:n})}block({path:t,params:e,hash:r,defaultBlock:a,elseBlock:n=null,loc:s,openStrip:i=Ar,inverseStrip:o=Ar,closeStrip:l=Ar}){return{type:"BlockStatement",path:t,params:e,hash:r,program:a,inverse:n,loc:s,openStrip:i,inverseStrip:o,closeStrip:l}}comment({value:t,loc:e}){return{type:"CommentStatement",value:t,loc:e}}mustacheComment({value:t,loc:e}){return{type:"MustacheCommentStatement",value:t,loc:e}}concat({parts:t,loc:e}){return{type:"ConcatStatement",parts:t,loc:e}}element({path:t,selfClosing:e,attributes:r,modifiers:a,params:n,comments:s,children:i,openTag:o,closeTag:l,loc:c}){let u=e;return{type:"ElementNode",path:t,attributes:r,modifiers:a,params:n,comments:s,children:i,openTag:o,closeTag:l,loc:c,get tag(){return this.path.original},set tag(t){this.path.original=t},get blockParams(){return this.params.map(t=>t.name)},set blockParams(t){this.params=t.map(t=>xr.var({name:t,loc:Me.synthetic(t)}))},get selfClosing(){return u},set selfClosing(t){u=t,this.closeTag=t?null:Me.synthetic(`</${this.tag}>`)}}}elementModifier({path:t,params:e,hash:r,loc:a}){return{type:"ElementModifierStatement",path:t,params:e,hash:r,loc:a}}attr({name:t,value:e,loc:r}){return{type:"AttrNode",name:t,value:e,loc:r}}text({chars:t,loc:e}){return{type:"TextNode",chars:t,loc:e}}sexpr({path:t,params:e,hash:r,loc:a}){return{type:"SubExpression",path:t,params:e,hash:r,loc:a}}path({head:t,tail:e,loc:r}){return function({head:t,tail:e,loc:r}){let a={type:"PathExpression",head:t,tail:e,get original(){return[this.head.original,...this.tail].join(".")},set original(t){let[e,...r]=t.split(".");this.head=Nr(e,this.head.loc),this.tail=r},loc:r};return Object.defineProperty(a,"parts",{enumerable:!1,get(){let t=this.original.split(".");return"this"===t[0]?t.shift():t[0].startsWith("@")&&(t[0]=t[0].slice(1)),Object.freeze(t)},set(t){var e;let r=[...t];"this"===r[0]||null!=(e=r[0])&&e.startsWith("@")||("ThisHead"===this.head.type?r.unshift("this"):"AtHead"===this.head.type&&(r[0]=`@${r[0]}`)),this.original=r.join(".")}}),Object.defineProperty(a,"this",{enumerable:!1,get(){return"ThisHead"===this.head.type}}),Object.defineProperty(a,"data",{enumerable:!1,get(){return"AtHead"===this.head.type}}),a}({head:t,tail:e,loc:r})}head({original:t,loc:e}){return"this"===t?this.this({loc:e}):"@"===t[0]?this.atName({name:t,loc:e}):this.var({name:t,loc:e})}this({loc:t}){return{type:"ThisHead",get original(){return"this"},loc:t}}atName({name:t,loc:e}){let r="",a={type:"AtHead",get name(){return r},set name(t){t[0],t.indexOf("."),r=t},get original(){return this.name},set original(t){this.name=t},loc:e};return a.name=t,a}var({name:t,loc:e}){let r="",a={type:"VarHead",get name(){return r},set name(t){t[0],t.indexOf("."),r=t},get original(){return this.name},set original(t){this.name=t},loc:e};return a.name=t,a}hash({pairs:t,loc:e}){return{type:"Hash",pairs:t,loc:e}}pair({key:t,value:e,loc:r}){return{type:"HashPair",key:t,value:e,loc:r}}literal({type:t,value:e,loc:r}){return function({type:t,value:e,loc:r}){let a={type:t,value:e,loc:r};return Object.defineProperty(a,"original",{enumerable:!1,get(){return this.value},set(t){this.value=t}}),a}({type:t,value:e,loc:r})}},Dr=class{constructor(t,e=new Ee(Se),r="precompile"){this.elementStack=[],this.currentAttribute=null,this.currentNode=null,this.source=t,this.lines=t.source.split(/\r\n?|\n/u),this.tokenizer=new Ce(this,e,r)}offset(){let{line:t,column:e}=this.tokenizer;return this.source.offsetFor(t,e)}pos({line:t,column:e}){return this.source.offsetFor(t,e)}finish(t){return Ht({},t,{loc:t.start.until(this.offset())})}get currentAttr(){return this.currentAttribute}get currentTag(){let t=this.currentNode;return t&&("StartTag"===t.type||t.type),t}get currentStartTag(){let t=this.currentNode;return t&&t.type,t}get currentEndTag(){let t=this.currentNode;return t&&t.type,t}get currentComment(){let t=this.currentNode;return t&&t.type,t}get currentData(){let t=this.currentNode;return t&&t.type,t}acceptNode(t){return this[t.type](t)}currentElement(){return _e(this.elementStack)}sourceForNode(t,e){let r,a,n,s=t.loc.start.line-1,i=s-1,o=t.loc.start.column,l=[];for(e?(a=e.loc.end.line-1,n=e.loc.end.column):(a=t.loc.end.line-1,n=t.loc.end.column);i<a;)i++,r=this.lines[i],i===s?s===a?l.push(r.slice(o,n)):l.push(r.slice(o)):i===a?l.push(r.slice(0,n)):l.push(r);return l.join("\n")}},Cr=class extends Dr{parse(t,e){var r;t.loc;let a=xr.template({body:[],blockParams:e,loc:this.source.spanFor(t.loc)}),n=this.parseProgram(a,t);return null==(r=this.pendingError)||r.eof(n.loc.getEnd()),n}Program(t,e){t.loc;let r=xr.blockItself({body:[],params:e,chained:t.chained,loc:this.source.spanFor(t.loc)});return this.parseProgram(r,t)}parseProgram(t,e){if(0===e.body.length)return t;let r;try{this.elementStack.push(t);for(let t of e.body)this.acceptNode(t)}finally{r=this.elementStack.pop()}if(t!==r){if("ElementNode"===(null==r?void 0:r.type))throw nr(`Unclosed element \`${r.tag}\``,r.loc);t.type}return t}BlockStatement(t){var e;if("comment"===this.tokenizer.state)return t.loc,void this.appendToCommentData(this.sourceForNode(t));if("data"!==this.tokenizer.state&&"beforeData"!==this.tokenizer.state)throw nr("A block may only be used inside an HTML element or another block.",this.source.spanFor(t.loc));let r,{path:a,params:n,hash:s}=Lr(this,t),i=this.source.spanFor(t.loc),o=[];if(null!=(e=t.program.blockParams)&&e.length){let e=s.loc.collapse("end");e=t.program.loc?e.withEnd(this.source.spanFor(t.program.loc).getStart()):t.program.body[0]?e.withEnd(this.source.spanFor(t.program.body[0].loc).getStart()):e.withEnd(i.getEnd()),r=_r(this.source,t,e);let a=e.asString(),n=a.indexOf("|")+1,l=a.indexOf("|",n);for(let r of t.program.blockParams){let t,s;t=n>=l?-1:a.indexOf(r,n),-1===t||t+r.length>l?(n=l,s=this.source.spanFor(Be)):(n=t,s=e.sliceStartChars({skipStart:n,chars:r.length}),n+=r.length),o.push(xr.var({name:r,loc:s}))}}else r=_r(this.source,t,i);let l=this.Program(r.program,o),c=r.inverse?this.Program(r.inverse,[]):null,u=xr.block({path:a,params:n,hash:s,defaultBlock:l,elseBlock:c,loc:this.source.spanFor(t.loc),openStrip:t.openStrip,inverseStrip:t.inverseStrip,closeStrip:t.closeStrip});Sr(this.currentElement(),u)}MustacheStatement(t){var e;null==(e=this.pendingError)||e.mustache(this.source.spanFor(t.loc));let{tokenizer:r}=this;if("comment"===r.state)return void this.appendToCommentData(this.sourceForNode(t));let a,{escaped:n,loc:s,strip:i}=t;if("original"in t.path&&"...attributes"===t.path.original)throw nr("Illegal use of ...attributes",this.source.spanFor(t.loc));if(wr(t.path))a=xr.mustache({path:this.acceptNode(t.path),params:[],hash:xr.hash({pairs:[],loc:this.source.spanFor(t.path.loc).collapse("end")}),trusting:!n,loc:this.source.spanFor(s),strip:i});else{let{path:e,params:r,hash:o}=Lr(this,t);a=xr.mustache({path:e,params:r,hash:o,trusting:!n,loc:this.source.spanFor(s),strip:i})}switch(r.state){case"tagOpen":case"tagName":throw nr("Cannot use mustaches in an elements tagname",a.loc);case"beforeAttributeName":qr(this.currentStartTag,a);break;case"attributeName":case"afterAttributeName":this.beginAttributeValue(!1),this.finishAttributeValue(),qr(this.currentStartTag,a),r.transitionTo("beforeAttributeName");break;case"afterAttributeValueQuoted":qr(this.currentStartTag,a),r.transitionTo("beforeAttributeName");break;case"beforeAttributeValue":this.beginAttributeValue(!1),this.appendDynamicAttributeValuePart(a),r.transitionTo("attributeValueUnquoted");break;case"attributeValueDoubleQuoted":case"attributeValueSingleQuoted":case"attributeValueUnquoted":this.appendDynamicAttributeValuePart(a);break;default:Sr(this.currentElement(),a)}return a}appendDynamicAttributeValuePart(t){this.finalizeTextPart();let e=this.currentAttr;e.isDynamic=!0,e.parts.push(t)}finalizeTextPart(){let t=this.currentAttr.currentPart;null!==t&&(this.currentAttr.parts.push(t),this.startTextPart())}startTextPart(){this.currentAttr.currentPart=null}ContentStatement(t){(function(t,e){let r=e.loc.start.line,a=e.loc.start.column,n=function(t,e){if(""===e)return{lines:t.split("\n").length-1,columns:0};let[r]=t.split(e),a=r.split(/\n/u),n=a.length-1;return{lines:n,columns:a[n].length}}(e.original,e.value);r+=n.lines,n.lines?a=n.columns:a+=n.columns,t.line=r,t.column=a})(this.tokenizer,t),this.tokenizer.tokenizePart(t.value),this.tokenizer.flushData()}CommentStatement(t){let{tokenizer:e}=this;if("comment"===e.state)return this.appendToCommentData(this.sourceForNode(t)),null;let{value:r,loc:a}=t,n=xr.mustacheComment({value:r,loc:this.source.spanFor(a)});switch(e.state){case"beforeAttributeName":case"afterAttributeName":this.currentStartTag.comments.push(n);break;case"beforeData":case"data":Sr(this.currentElement(),n);break;default:throw nr(`Using a Handlebars comment when in the \`${e.state}\` state is not supported`,this.source.spanFor(t.loc))}return n}PartialStatement(t){throw nr("Handlebars partials are not supported",this.source.spanFor(t.loc))}PartialBlockStatement(t){throw nr("Handlebars partial blocks are not supported",this.source.spanFor(t.loc))}Decorator(t){throw nr("Handlebars decorators are not supported",this.source.spanFor(t.loc))}DecoratorBlock(t){throw nr("Handlebars decorator blocks are not supported",this.source.spanFor(t.loc))}SubExpression(t){let{path:e,params:r,hash:a}=Lr(this,t);return xr.sexpr({path:e,params:r,hash:a,loc:this.source.spanFor(t.loc)})}PathExpression(t){let e,{original:r}=t;if(-1!==r.indexOf("/")){if("./"===r.slice(0,2))throw nr('Using "./" is not supported in Glimmer and unnecessary',this.source.spanFor(t.loc));if("../"===r.slice(0,3))throw nr('Changing context using "../" is not supported in Glimmer',this.source.spanFor(t.loc));if(-1!==r.indexOf("."))throw nr("Mixing '.' and '/' in paths is not supported in Glimmer; use only '.' to separate property paths",this.source.spanFor(t.loc));e=[t.parts.join("/")]}else{if("."===r)throw nr("'.' is not a supported path in Glimmer; check for a path with a trailing '.'",this.source.spanFor(t.loc));e=t.parts}let a,n=!1;if(/^this(?:\..+)?$/u.test(r)&&(n=!0),n)a=xr.this({loc:this.source.spanFor({start:t.loc.start,end:{line:t.loc.start.line,column:t.loc.start.column+4}})});else if(t.data){let r=e.shift();if(void 0===r)throw nr("Attempted to parse a path expression, but it was not valid. Paths beginning with @ must start with a-z.",this.source.spanFor(t.loc));a=xr.atName({name:`@${r}`,loc:this.source.spanFor({start:t.loc.start,end:{line:t.loc.start.line,column:t.loc.start.column+r.length+1}})})}else{let r=e.shift();if(void 0===r)throw nr("Attempted to parse a path expression, but it was not valid. Paths must start with a-z or A-Z.",this.source.spanFor(t.loc));a=xr.var({name:r,loc:this.source.spanFor({start:t.loc.start,end:{line:t.loc.start.line,column:t.loc.start.column+r.length}})})}return xr.path({head:a,tail:e,loc:this.source.spanFor(t.loc)})}Hash(t){let e=t.pairs.map(t=>xr.pair({key:t.key,value:this.acceptNode(t.value),loc:this.source.spanFor(t.loc)}));return xr.hash({pairs:e,loc:this.source.spanFor(t.loc)})}StringLiteral(t){return xr.literal({type:"StringLiteral",value:t.value,loc:this.source.spanFor(t.loc)})}BooleanLiteral(t){return xr.literal({type:"BooleanLiteral",value:t.value,loc:this.source.spanFor(t.loc)})}NumberLiteral(t){return xr.literal({type:"NumberLiteral",value:t.value,loc:this.source.spanFor(t.loc)})}UndefinedLiteral(t){return xr.literal({type:"UndefinedLiteral",value:void 0,loc:this.source.spanFor(t.loc)})}NullLiteral(t){return xr.literal({type:"NullLiteral",value:null,loc:this.source.spanFor(t.loc)})}constructor(...t){super(...t),this.pendingError=null}};function Lr(t,e){let r;switch(e.path.type){case"PathExpression":r=t.PathExpression(e.path);break;case"SubExpression":r=t.SubExpression(e.path);break;case"StringLiteral":case"UndefinedLiteral":case"NullLiteral":case"NumberLiteral":case"BooleanLiteral":{let r;throw r="BooleanLiteral"===e.path.type?e.path.original.toString():"StringLiteral"===e.path.type?`"${e.path.original}"`:"NullLiteral"===e.path.type?"null":"NumberLiteral"===e.path.type?e.path.value.toString():"undefined",nr(`${e.path.type} "${"StringLiteral"===e.path.type?e.path.original:r}" cannot be called as a sub-expression, replace (${r}) with ${r}`,t.source.spanFor(e.path.loc))}}let a=e.params.map(e=>t.acceptNode(e)),n=qe(a)?_e(a).loc:r.loc;return{path:r,params:a,hash:e.hash?t.Hash(e.hash):xr.hash({pairs:[],loc:t.source.spanFor(n).collapse("end")})}}function qr(t,e){let{path:r,params:a,hash:n,loc:s}=e;if(wr(r)){let a=`{{${i=r,"UndefinedLiteral"===i.type?"undefined":JSON.stringify(i.value)}}}`;throw nr(`In <${t.name} ... ${a} ..., ${a} is not a valid modifier`,e.loc)}var i;let o=xr.elementModifier({path:r,params:a,hash:n,loc:s});t.modifiers.push(o)}function _r(t,e,r){if(!e.program.loc){let a=N(!1,e.program.body,0),n=N(!1,e.program.body,-1);if(a&&n)e.program.loc={...a.loc,end:n.loc.end};else{let a=t.spanFor(e.loc);e.program.loc=r.withEnd(a.getEnd())}}let a=t.spanFor(e.program.loc).getEnd();return e.inverse&&!e.inverse.loc&&(e.inverse.loc=a.collapsed()),e}function Or(t){return/[\t\n\f ]/u.test(t)}var Ir=class extends Cr{reset(){this.currentNode=null}beginComment(){this.currentNode={type:"CommentStatement",value:"",start:this.source.offsetFor(this.tagOpenLine,this.tagOpenColumn)}}appendToCommentData(t){this.currentComment.value+=t}finishComment(){Sr(this.currentElement(),xr.comment(this.finish(this.currentComment)))}beginData(){this.currentNode={type:"TextNode",chars:"",start:this.offset()}}appendToData(t){this.currentData.chars+=t}finishData(){Sr(this.currentElement(),xr.text(this.finish(this.currentData)))}tagOpen(){this.tagOpenLine=this.tokenizer.line,this.tagOpenColumn=this.tokenizer.column}beginStartTag(){this.currentNode={type:"StartTag",name:"",nameStart:null,nameEnd:null,attributes:[],modifiers:[],comments:[],params:[],selfClosing:!1,start:this.source.offsetFor(this.tagOpenLine,this.tagOpenColumn)}}beginEndTag(){this.currentNode={type:"EndTag",name:"",start:this.source.offsetFor(this.tagOpenLine,this.tagOpenColumn)}}finishTag(){let t=this.finish(this.currentTag);if("StartTag"===t.type){if(this.finishStartTag(),":"===t.name)throw nr("Invalid named block named detected, you may have created a named block without a name, or you may have began your name with a number. Named blocks must have names that are at least one character long, and begin with a lower case letter",this.source.spanFor({start:this.currentTag.start.toJSON(),end:this.offset().toJSON()}));(Le.has(t.name)||t.selfClosing)&&this.finishEndTag(!0)}else t.type,t.type,this.finishEndTag(!1)}finishStartTag(){let{name:t,nameStart:e,nameEnd:r}=this.currentStartTag,a=e.until(r),[n,...s]=t.split("."),i=xr.path({head:xr.head({original:n,loc:a.sliceStartChars({chars:n.length})}),tail:s,loc:a}),{attributes:o,modifiers:l,comments:c,params:u,selfClosing:h,loc:p}=this.finish(this.currentStartTag),d=xr.element({path:i,selfClosing:h,attributes:o,modifiers:l,comments:c,params:u,children:[],openTag:p,closeTag:h?null:Me.broken(),loc:p});this.elementStack.push(d)}finishEndTag(t){let{start:e}=this.currentTag,r=this.finish(this.currentTag),a=this.elementStack.pop();this.validateEndTag(r,a,t);let n=this.currentElement();t?a.closeTag=null:a.selfClosing?a.closeTag:a.closeTag=e.until(this.offset()),a.loc=a.loc.withEnd(this.offset()),Sr(n,xr.element(a))}markTagAsSelfClosing(){let t=this.currentTag;if("StartTag"!==t.type)throw nr("Invalid end tag: closing tag must not be self-closing",this.source.spanFor({start:t.start.toJSON(),end:this.offset().toJSON()}));t.selfClosing=!0}appendToTagName(t){let e=this.currentTag;if(e.name+=t,"StartTag"===e.type){let t=this.offset();null===e.nameStart&&(e.nameEnd,e.nameStart=t.move(-1)),e.nameEnd=t}}beginAttribute(){let t=this.offset();this.currentAttribute={name:"",parts:[],currentPart:null,isQuoted:!1,isDynamic:!1,start:t,valueSpan:t.collapsed()}}appendToAttributeName(t){this.currentAttr.name+=t,"as"===this.currentAttr.name&&this.parsePossibleBlockParams()}beginAttributeValue(t){this.currentAttr.isQuoted=t,this.startTextPart(),this.currentAttr.valueSpan=this.offset().collapsed()}appendToAttributeValue(t){let e=this.currentAttr.parts,r=e[e.length-1],a=this.currentAttr.currentPart;if(a)a.chars+=t,a.loc=a.loc.withEnd(this.offset());else{let e=this.offset();e="\n"===t?r?r.loc.getEnd():this.currentAttr.valueSpan.getStart():e.move(-1),this.currentAttr.currentPart=xr.text({chars:t,loc:e.collapsed()})}}finishAttributeValue(){this.finalizeTextPart();let t=this.currentTag,e=this.offset();if("EndTag"===t.type)throw nr("Invalid end tag: closing tag must not have attributes",this.source.spanFor({start:t.start.toJSON(),end:e.toJSON()}));let{name:r,parts:a,start:n,isQuoted:s,isDynamic:i,valueSpan:o}=this.currentAttr;if(r.startsWith("|")&&0===a.length&&!s&&!i)throw nr("Invalid block parameters syntax: block parameters must be preceded by the `as` keyword",n.until(n.move(r.length)));let l=this.assembleAttributeValue(a,s,i,n.until(e));l.loc=o.withEnd(e);let c=xr.attr({name:r,value:l,loc:n.until(e)});this.currentStartTag.attributes.push(c)}parsePossibleBlockParams(){let t=/[!"#%&'()*+./;<=>@[\\\]^`{|}~]/u;this.tokenizer.state;let e,r=this.currentStartTag,a=this.currentAttr,n={state:"PossibleAs"},s={PossibleAs:t=>{if(n.state,Or(t))n={state:"BeforeStartPipe"},this.tokenizer.transitionTo("afterAttributeName"),this.tokenizer.consume();else{if("|"===t)throw nr('Invalid block parameters syntax: expecting at least one space character between "as" and "|"',a.start.until(this.offset().move(1)));n={state:"Done"}}},BeforeStartPipe:t=>{n.state,Or(t)?this.tokenizer.consume():"|"===t?(n={state:"BeforeBlockParamName"},this.tokenizer.transitionTo("beforeAttributeName"),this.tokenizer.consume()):n={state:"Done"}},BeforeBlockParamName:t=>{if(n.state,Or(t))this.tokenizer.consume();else if(""===t)n={state:"Done"},this.pendingError={mustache(t){throw nr("Invalid block parameters syntax: mustaches cannot be used inside parameters list",t)},eof(t){throw nr('Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list',a.start.until(t))}};else if("|"===t){if(0===r.params.length)throw nr("Invalid block parameters syntax: empty parameters list, expecting at least one identifier",a.start.until(this.offset().move(1)));n={state:"AfterEndPipe"},this.tokenizer.consume()}else{if(">"===t||"/"===t)throw nr('Invalid block parameters syntax: incomplete parameters list, expecting "|" but the tag was closed prematurely',a.start.until(this.offset().move(1)));n={state:"BlockParamName",name:t,start:this.offset()},this.tokenizer.consume()}},BlockParamName:e=>{if(n.state,""===e)n={state:"Done"},this.pendingError={mustache(t){throw nr("Invalid block parameters syntax: mustaches cannot be used inside parameters list",t)},eof(t){throw nr('Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list',a.start.until(t))}};else if("|"===e||Or(e)){let a=n.start.until(this.offset());if("this"===n.name||t.test(n.name))throw nr(`Invalid block parameters syntax: invalid identifier name \`${n.name}\``,a);r.params.push(xr.var({name:n.name,loc:a})),n="|"===e?{state:"AfterEndPipe"}:{state:"BeforeBlockParamName"},this.tokenizer.consume()}else{if(">"===e||"/"===e)throw nr('Invalid block parameters syntax: expecting "|" but the tag was closed prematurely',a.start.until(this.offset().move(1)));n.name+=e,this.tokenizer.consume()}},AfterEndPipe:t=>{n.state,Or(t)?this.tokenizer.consume():""===t?(n={state:"Done"},this.pendingError={mustache(t){throw nr("Invalid block parameters syntax: modifiers cannot follow parameters list",t)},eof(t){throw nr('Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list',a.start.until(t))}}):">"===t||"/"===t?n={state:"Done"}:(n={state:"Error",message:'Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list',start:this.offset()},this.tokenizer.consume())},Error:t=>{if(n.state,""===t||"/"===t||">"===t||Or(t))throw nr(n.message,n.start.until(this.offset()));this.tokenizer.consume()},Done:()=>{}};do{e=this.tokenizer.peek(),s[n.state](e)}while("Done"!==n.state&&""!==e);n.state}reportSyntaxError(t){throw nr(t,this.offset().collapsed())}assembleConcatenatedValue(t){let e=0===(a=t).length?void 0:a[0],r=_e(t);var a;return xr.concat({parts:t,loc:this.source.spanFor(e.loc).extend(this.source.spanFor(r.loc))})}validateEndTag(t,e,r){if(Le.has(t.name)&&!r)throw nr(`<${t.name}> elements do not need end tags. You should remove it`,t.loc);if("ElementNode"!==e.type)throw nr(`Closing tag </${t.name}> without an open tag`,t.loc);if(e.tag!==t.name)throw nr(`Closing tag </${t.name}> did not match last open tag <${e.tag}> (on line ${e.loc.startPosition.line})`,t.loc)}assembleAttributeValue(t,e,r,a){if(r){if(e)return this.assembleConcatenatedValue(t);{let[e,r]=t;if(void 0===r||"TextNode"===r.type&&"/"===r.chars)return e;throw nr("An unquoted attribute value must be a string or a mustache, preceded by whitespace or a '=' character, and followed by whitespace, a '>' character, or '/>'",a)}}return qe(t)?t[0]:xr.text({chars:"",loc:a})}constructor(...t){super(...t),this.tagOpenLine=0,this.tagOpenColumn=0}},Br={},Vr=class extends Ee{constructor(){super({})}parse(){}};var Rr=function(t,e){let r=new SyntaxError(t+" ("+e.loc.start.line+":"+e.loc.start.column+")");return Object.assign(r,e)};var $r={mode:"codemod",plugins:{ast:[()=>({name:"glimmerPrettierParsePlugin",visitor:{All(t){(t=>{let{start:e,end:r}=t.loc;e.offset=t.loc.getStart().offset,r.offset=t.loc.getEnd().offset})(t),function(t){let e=t.children??t.body;if(e)for(let t=0;t<e.length-1;t++)"TextNode"===e[t].type&&"MustacheStatement"===e[t+1].type&&(e[t].chars=e[t].chars.replace(/\\$/u,"\\\\"))}(t)}}})]}};var Ur={parse:function(t){let e;try{e=function(t,e={}){var r,a,n;let s,i,o,l=e.mode||"precompile";"string"==typeof t?(s=new ar(t,null==(r=e.meta)?void 0:r.moduleName),i="codemod"===l?ye(t,e.parseOptions):ve(t,e.parseOptions)):t instanceof ar?(s=t,i="codemod"===l?ye(t.source,e.parseOptions):ve(t.source,e.parseOptions)):(s=new ar("",null==(a=e.meta)?void 0:a.moduleName),i=t),"codemod"===l&&(o=new Vr);let c=Me.forCharPositions(s,0,s.source.length);i.loc={source:"(program)",start:c.startPosition,end:c.endPosition};let u=new Ir(s,o,l).parse(i,e.locals??[]);if(null!=(n=e.plugins)&&n.ast)for(let t of e.plugins.ast)vr(u,t(Ht({},e,{syntax:Br},{plugins:void 0})).visitor);return u}(t,$r)}catch(t){let e=function(t){let{location:e,hash:r}=t;if(e){let{start:t,end:r}=e;return"number"!=typeof r.line?{start:t}:e}if(r){let{loc:{last_line:t,last_column:e}}=r;return{start:{line:t,column:e+1}}}}(t);if(e){let r=function(t){let{message:e}=t,r=e.split("\n");return r.length>=4&&/^Parse error on line \d+:$/u.test(r[0])&&/^-*\^$/u.test(N(!1,r,-2))?N(!1,r,-1):r.length>=4&&/:\s?$/u.test(r[0])&&/^\(error occurred in '.*?' @ line \d+ : column \d+\)$/u.test(N(!1,r,-1))&&""===r[1]&&""===N(!1,r,-2)&&r.slice(2,-2).every(t=>t.startsWith("|"))?r[0].trim().slice(0,-1):e}(t);throw Rr(r,{loc:e,cause:t})}throw t}return e},astFormat:"glimmer",locStart:tt,locEnd:et},Hr={glimmer:Rt},Fr=o;exports.default=Fr,exports.languages=$t,exports.parsers=Ut,exports.printers=Hr;
|
|
2
|
+
//# sourceMappingURL=glimmer-HhuN0Cpa.js.map
|