soonjs 0.0.22 → 0.0.23

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.
Files changed (39) hide show
  1. package/dist/deps/{acorn-tklbyr11e.js → acorn-1oc5bnxht.js} +10 -10
  2. package/dist/deps/acorn-8dcdyq2ew.js +2895 -0
  3. package/dist/deps/angular-46ezrk1u4.js +1 -0
  4. package/dist/deps/angular-s1xz11ikt.js +1448 -0
  5. package/dist/deps/babel-0wg32lzwx.js +6844 -0
  6. package/dist/deps/{babel-48ei1aig4.js → babel-ukpqzojf5.js} +10 -10
  7. package/dist/deps/estree-kdvyujfa4.js +4265 -0
  8. package/dist/deps/{estree-4o5bj9gvd.js → estree-keanyt70z.js} +23 -23
  9. package/dist/deps/flow-0bur80d37.js +26221 -0
  10. package/dist/deps/{flow-xlruu7boa.js → flow-ugrhj6801.js} +15 -15
  11. package/dist/deps/glimmer-fj2j8ttlo.js +2756 -0
  12. package/dist/deps/{glimmer-kyfivr6g7.js → glimmer-g89edvgvf.js} +18 -18
  13. package/dist/deps/{graphql-xojtytb2p.js → graphql-amtjbpo5r.js} +12 -12
  14. package/dist/deps/graphql-y9qq36k5p.js +1212 -0
  15. package/dist/deps/html-2g2e1kuqu.js +2623 -0
  16. package/dist/deps/{html-jal5w2b1p.js → html-flg3eek30.js} +17 -17
  17. package/dist/deps/markdown-4jfu7be9n.js +3058 -0
  18. package/dist/deps/{markdown-qhqqns7vp.js → markdown-7x2u7akwf.js} +40 -40
  19. package/dist/deps/meriyah-3gk7mqup6.js +2320 -0
  20. package/dist/deps/meriyah-6mdlkd9e4.js +4 -0
  21. package/dist/deps/{postcss-vq400h6ym.js → postcss-2wa48tg1s.js} +21 -21
  22. package/dist/deps/postcss-zmmc2gk0l.js +4664 -0
  23. package/dist/deps/soon-id-4bhrd5e6a.js +30 -0
  24. package/dist/deps/soon-id-exfiforio.js +1 -0
  25. package/dist/deps/typescript-bgdn0fi0y.js +12794 -0
  26. package/dist/deps/{typescript-jihynpl9y.js → typescript-q1t5ixgyo.js} +11 -11
  27. package/dist/deps/yaml-ajia8oazz.js +4088 -0
  28. package/dist/deps/{yaml-auqgv4vnk.js → yaml-wpxyjc78l.js} +26 -26
  29. package/dist/index.cjs +15 -0
  30. package/dist/index.js +2217 -9
  31. package/dist/vite-plugin-soon-client.cjs +249 -0
  32. package/dist/vite-plugin-soon-client.js +48725 -152
  33. package/dist/vite-plugin-soon-server.cjs +272 -0
  34. package/dist/vite-plugin-soon-server.d.ts +1 -0
  35. package/dist/vite-plugin-soon-server.js +3276 -19
  36. package/package.json +18 -1
  37. package/dist/deps/angular-m17t0gdsi.js +0 -1
  38. package/dist/deps/meriyah-sl495y757.js +0 -4
  39. package/dist/deps/soon-id-gmzr57ufv.js +0 -1
@@ -1,18 +1,18 @@
1
- var pn=Object.defineProperty;var dn=(t,e,r)=>e in t?pn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var w=(t,e,r)=>dn(t,typeof e!="symbol"?e+"":e,r);var mn=Object.defineProperty,Er=t=>{throw TypeError(t)},Pe=(t,e)=>{for(var r in e)mn(t,r,{get:e[r],enumerable:!0})},vr=(t,e,r)=>e.has(t)||Er("Cannot "+r),nt=(t,e,r)=>(vr(t,e,"read from private field"),e.get(t)),fn=(t,e,r)=>e.has(t)?Er("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),gn=(t,e,r,n)=>(vr(t,e,"write to private field"),e.set(t,r),r),Cr={};Pe(Cr,{languages:()=>Ca,parsers:()=>jr,printers:()=>iu});var bn=(t,e,r,n)=>{if(!(t&&e==null))return e.replaceAll?e.replaceAll(r,n):r.global?e.replace(r,n):e.split(r).join(n)},Sr=bn,wr="string",Br="array",kr="cursor",Fe="indent",Le="align",xr="trim",_e="group",qe="fill",Ie="if-break",Tr="indent-if-break",Nr="line-suffix",Pr="line-suffix-boundary",St="line",Fr="label",Oe="break-parent",Lr=new Set([kr,Fe,Le,xr,_e,qe,Ie,Tr,Nr,Pr,St,Fr,Oe]);function yn(t){if(typeof t=="string")return wr;if(Array.isArray(t))return Br;if(!t)return;let{type:e}=t;if(Lr.has(e))return e}var _r=yn,An=t=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(t);function Dn(t){let e=t===null?"null":typeof t;if(e!=="string"&&e!=="object")return`Unexpected doc '${e}',
2
- Expected it to be 'string' or 'object'.`;if(_r(t))throw new Error("doc is valid.");let r=Object.prototype.toString.call(t);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=An([...Lr].map(a=>`'${a}'`));return`Unexpected doc.type '${t.type}'.
3
- Expected it to be ${n}.`}var En=class extends Error{constructor(e){super(Dn(e));w(this,"name","InvalidDocError");this.doc=e}},vn=En,Cn=()=>{},Sn=Cn;function O(t){return{type:Fe,contents:t}}function wn(t,e){return{type:Le,contents:e,n:t}}function R(t,e={}){return Sn(e.expandedStates),{type:_e,id:e.id,contents:t,break:!!e.shouldBreak,expandedStates:e.expandedStates}}function Xe(t){return wn(-1,t)}function Ze(t){return{type:qe,parts:t}}function tr(t,e="",r={}){return{type:Ie,breakContents:t,flatContents:e,groupId:r.groupId}}var qr={type:Oe},Bn={type:St,hard:!0},kn={type:St,hard:!0,literal:!0},L={type:St},K={type:St,soft:!0},wt=[Bn,qr],xn=[kn,qr];function Ot(t,e){let r=[];for(let n=0;n<e.length;n++)n!==0&&r.push(t),r.push(e[n]);return r}var Tn=(t,e,r)=>{if(!(t&&e==null))return Array.isArray(e)||typeof e=="string"?e[r<0?e.length+r:r]:e.at(r)},Tt=Tn;function Nn(t,e){if(typeof t=="string")return e(t);let r=new Map;return n(t);function n(s){if(r.has(s))return r.get(s);let u=a(s);return r.set(s,u),u}function a(s){switch(_r(s)){case Br:return e(s.map(n));case qe:return e({...s,parts:s.parts.map(n)});case Ie:return e({...s,breakContents:n(s.breakContents),flatContents:n(s.flatContents)});case _e:{let{expandedStates:u,contents:i}=s;return u?(u=u.map(n),i=u[0]):i=n(i),e({...s,contents:i,expandedStates:u})}case Le:case Fe:case Tr:case Fr:case Nr:return e({...s,contents:n(s.contents)});case wr:case kr:case xr:case Pr:case St:case Oe:return e(s);default:throw new vn(s)}}}function Pn(t,e=xn){return Nn(t,r=>typeof r=="string"?Ot(e,r.split(`
4
- `)):r)}var zt="'",er='"';function Fn(t,e){let r=e===!0||e===zt?zt:er,n=r===zt?er:zt,a=0,s=0;for(let u of t)u===r?a++:u===n&&s++;return a>s?n:r}var De=Fn;function Ln(t){if(typeof t!="string")throw new TypeError("Expected a string");return t.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var z,_n=class{constructor(t){fn(this,z),gn(this,z,new Set(t))}getLeadingWhitespaceCount(t){let e=nt(this,z),r=0;for(let n=0;n<t.length&&e.has(t.charAt(n));n++)r++;return r}getTrailingWhitespaceCount(t){let e=nt(this,z),r=0;for(let n=t.length-1;n>=0&&e.has(t.charAt(n));n--)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 nt(this,z).has(t.charAt(0))}hasTrailingWhitespace(t){return nt(this,z).has(Tt(!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=`[${Ln([...nt(this,z)].join(""))}]+`,n=new RegExp(e?`(${r})`:r,"u");return t.split(n)}hasWhitespaceCharacter(t){let e=nt(this,z);return Array.prototype.some.call(t,r=>e.has(r))}hasNonWhitespaceCharacter(t){let e=nt(this,z);return Array.prototype.some.call(t,r=>!e.has(r))}isWhitespaceOnly(t){let e=nt(this,z);return Array.prototype.every.call(t,r=>e.has(r))}};z=new WeakMap;var qn=_n,In=[" ",`
5
- `,"\f","\r"," "],On=new qn(In),Z=On;function $n(t){return Array.isArray(t)&&t.length>0}var Xt=$n,Vn=class extends Error{constructor(e,r,n="type"){super(`Unexpected ${r} node ${n}: ${JSON.stringify(e[n])}.`);w(this,"name","UnexpectedNodeError");this.node=e}},Rn=Vn;function Ir(t,e){if(t.type==="TextNode"){let r=t.chars.trim();if(!r)return null;e.chars=Z.split(r).join(" ")}t.type==="ElementNode"&&(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),t.type==="Block"&&(delete e.blockParamNodes,delete e.params),t.type==="AttrNode"&&t.name.toLowerCase()==="class"&&delete e.value,t.type==="PathExpression"&&(e.head=t.head.original)}Ir.ignoredProperties=new Set(["loc","selfClosing"]);var Un=Ir,kt=null;function Nt(t){if(kt!==null&&typeof kt.property){let e=kt;return kt=Nt.prototype=null,e}return kt=Nt.prototype=t??Object.create(null),new Nt}var Hn=10;for(let t=0;t<=Hn;t++)Nt();function Mn(t){return Nt(t)}function zn(t,e="type"){Mn(t);function r(n){let a=n[e],s=t[a];if(!Array.isArray(s))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return s}return r}var jn=zn,Gn={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"]},Wn=jn(Gn),Kn=Wn;function Lt(t){return t.loc.start.offset}function Ee(t){return t.loc.end.offset}var Qn=new Set(["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]);function Or(t){return t.toUpperCase()===t}function Jn(t){return t.type==="ElementNode"&&typeof t.tag=="string"&&!t.tag.startsWith(":")&&(Or(t.tag[0])||t.tag.includes("."))}function Yn(t){return Qn.has(t.toLowerCase())&&!Or(t[0])}function $r(t){return t.selfClosing===!0||Yn(t.tag)||Jn(t)&&t.children.every(e=>$e(e))}function $e(t){return t.type==="TextNode"&&!/\S/u.test(t.chars)}function rr(t){return(t==null?void 0:t.type)==="MustacheCommentStatement"&&typeof t.value=="string"&&t.value.trim()==="prettier-ignore"}function Xn(t){return rr(t.node)||t.isInArray&&(t.key==="children"||t.key==="body"||t.key==="parts")&&rr(t.siblings[t.index-2])}var Vr=2;function Zn(t,e,r){var n,a,s,u,i,l,g,h,m;let{node:A}=t;switch(A.type){case"Block":case"Program":case"Template":return R(t.map(r,"body"));case"ElementNode":{let y=R(ea(t,r)),C=e.htmlWhitespaceSensitivity==="ignore"&&((n=t.next)==null?void 0:n.type)==="ElementNode"?K:"";if($r(A))return[y,C];let T=["</",A.tag,">"];return A.children.length===0?[y,O(T),C]:e.htmlWhitespaceSensitivity==="ignore"?[y,O(nr(t,e,r)),wt,O(T),C]:[y,O(R(nr(t,e,r))),O(T),C]}case"BlockStatement":return ia(t)?[oa(t,r),ur(t,r,e),ir(t,r,e)]:[sa(t,r),R([ur(t,r,e),ir(t,r,e),la(t,r,e)])];case"ElementModifierStatement":return R(["{{",lr(t,r),"}}"]);case"MustacheStatement":return R([Zt(A),lr(t,r),te(A)]);case"SubExpression":return R(["(",ga(t,r),K,")"]);case"AttrNode":{let{name:y,value:C}=A,T=C.type==="TextNode";if(T&&C.chars===""&&Lt(C)===Ee(C))return y;let x=T?De(C.chars,e.singleQuote):C.type==="ConcatStatement"?De(C.parts.map(U=>U.type==="TextNode"?U.chars:"").join(""),e.singleQuote):"",B=r("value");return[y,"=",x,y==="class"&&x?R(O(B)):B,x]}case"ConcatStatement":return t.map(r,"parts");case"Hash":return Ot(L,t.map(r,"pairs"));case"HashPair":return[A.key,"=",r("value")];case"TextNode":{let y=Sr(!1,A.chars,"{{",String.raw`\{{`),C=ha(t);if(C){if(C==="class"){let Y=y.trim().split(/\s+/u).join(" "),tt=!1,$=!1;return t.parent.type==="ConcatStatement"&&(((a=t.previous)==null?void 0:a.type)==="MustacheStatement"&&/^\s/u.test(y)&&(tt=!0),((s=t.next)==null?void 0:s.type)==="MustacheStatement"&&/\s$/u.test(y)&&Y!==""&&($=!0)),[tt?L:"",Y,$?L:""]}return Pn(y)}let T=Z.isWhitespaceOnly(y),{isFirst:x,isLast:B}=t;if(e.htmlWhitespaceSensitivity!=="ignore"){let Y=B&&t.parent.type==="Template",tt=x&&t.parent.type==="Template";if(T){if(tt||Y)return"";let P=[L],rt=Dt(y);return rt&&(P=xt(rt)),B&&(P=P.map(Vt=>Xe(Vt))),P}let $=Z.getLeadingWhitespace(y),ft=[];if($){ft=[L];let P=Dt($);P&&(ft=xt(P)),y=y.slice($.length)}let V=Z.getTrailingWhitespace(y),et=[];if(V){if(!Y){et=[L];let P=Dt(V);P&&(et=xt(P)),B&&(et=et.map(rt=>Xe(rt)))}y=y.slice(0,-V.length)}return[...ft,Ze(or(y)),...et]}let U=Dt(y),j=pa(y),J=da(y);if((x||B)&&T&&(t.parent.type==="Block"||t.parent.type==="ElementNode"||t.parent.type==="Template"))return"";T&&U?(j=Math.min(U,Vr),J=0):((((u=t.next)==null?void 0:u.type)==="BlockStatement"||((i=t.next)==null?void 0:i.type)==="ElementNode")&&(J=Math.max(J,1)),(((l=t.previous)==null?void 0:l.type)==="BlockStatement"||((g=t.previous)==null?void 0:g.type)==="ElementNode")&&(j=Math.max(j,1)));let dt="",mt="";return J===0&&((h=t.next)==null?void 0:h.type)==="MustacheStatement"&&(mt=" "),j===0&&((m=t.previous)==null?void 0:m.type)==="MustacheStatement"&&(dt=" "),x&&(j=0,dt=""),B&&(J=0,mt=""),Z.hasLeadingWhitespace(y)&&(y=dt+Z.trimStart(y)),Z.hasTrailingWhitespace(y)&&(y=Z.trimEnd(y)+mt),[...xt(j),Ze(or(y)),...xt(J)]}case"MustacheCommentStatement":{let y=Lt(A),C=Ee(A),T=e.originalText.charAt(y+2)==="~",x=e.originalText.charAt(C-3)==="~",B=A.value.includes("}}")?"--":"";return["{{",T?"~":"","!",B,A.value,B,x?"~":"","}}"]}case"PathExpression":return Da(A);case"BooleanLiteral":return String(A.value);case"CommentStatement":return["<!--",A.value,"-->"];case"StringLiteral":return ma(t,e);case"NumberLiteral":return String(A.value);case"UndefinedLiteral":return"undefined";case"NullLiteral":return"null";case"AtHead":case"VarHead":case"ThisHead":default:throw new Rn(A,"Handlebars")}}function ta(t,e){return Lt(t)-Lt(e)}function ea(t,e){let{node:r}=t,n=["attributes","modifiers","comments"].filter(s=>Xt(r[s])),a=n.flatMap(s=>r[s]).sort(ta);for(let s of n)t.each(({node:u})=>{let i=a.indexOf(u);a.splice(i,1,[L,e()])},s);return Xt(r.blockParams)&&a.push(L,Re(r)),["<",r.tag,O(a),ra(r)]}function nr(t,e,r){let{node:n}=t,a=n.children.every(s=>$e(s));return e.htmlWhitespaceSensitivity==="ignore"&&a?"":t.map(({isFirst:s})=>{let u=r();return s&&e.htmlWhitespaceSensitivity==="ignore"?[K,u]:u},"children")}function ra(t){return $r(t)?tr([K,"/>"],[" />",K]):tr([K,">"],">")}function Zt(t){var e;let r=t.trusting?"{{{":"{{",n=(e=t.strip)!=null&&e.open?"~":"";return[r,n]}function te(t){var e;let r=t.trusting?"}}}":"}}";return[(e=t.strip)!=null&&e.close?"~":"",r]}function na(t){let e=Zt(t),r=t.openStrip.open?"~":"";return[e,r,"#"]}function aa(t){let e=te(t);return[t.openStrip.close?"~":"",e]}function ar(t){let e=Zt(t),r=t.closeStrip.open?"~":"";return[e,r,"/"]}function sr(t){let e=te(t);return[t.closeStrip.close?"~":"",e]}function Rr(t){let e=Zt(t),r=t.inverseStrip.open?"~":"";return[e,r]}function Ur(t){let e=te(t);return[t.inverseStrip.close?"~":"",e]}function sa(t,e){let{node:r}=t,n=[],a=ee(t,e);return a&&n.push(R(a)),Xt(r.program.blockParams)&&n.push(Re(r.program)),R([na(r),Ve(t,e),n.length>0?O([L,Ot(L,n)]):"",K,aa(r)])}function ua(t,e){return[e.htmlWhitespaceSensitivity==="ignore"?wt:"",Rr(t),"else",Ur(t)]}var Hr=(t,e)=>t.head.type==="VarHead"&&e.head.type==="VarHead"&&t.head.name===e.head.name;function ia(t){var e;let{grandparent:r,node:n}=t;return((e=r==null?void 0:r.inverse)==null?void 0:e.body.length)===1&&r.inverse.body[0]===n&&Hr(r.inverse.body[0].path,r.path)}function oa(t,e){let{node:r,grandparent:n}=t;return R([Rr(n),["else"," ",n.inverse.body[0].path.head.name],O([L,R(ee(t,e)),...Xt(r.program.blockParams)?[L,Re(r.program)]:[]]),K,Ur(n)])}function la(t,e,r){let{node:n}=t;return r.htmlWhitespaceSensitivity==="ignore"?[Mr(n)?K:wt,ar(n),e("path"),sr(n)]:[ar(n),e("path"),sr(n)]}function Mr(t){return t.type==="BlockStatement"&&t.program.body.every(e=>$e(e))}function ca(t){return zr(t)&&t.inverse.body.length===1&&t.inverse.body[0].type==="BlockStatement"&&Hr(t.inverse.body[0].path,t.path)}function zr(t){return t.type==="BlockStatement"&&t.inverse}function ur(t,e,r){let{node:n}=t;if(Mr(n))return"";let a=e("program");return r.htmlWhitespaceSensitivity==="ignore"?O([wt,a]):O(a)}function ir(t,e,r){let{node:n}=t,a=e("inverse"),s=r.htmlWhitespaceSensitivity==="ignore"?[wt,a]:a;return ca(n)?s:zr(n)?[ua(n,r),O(s)]:""}function or(t){return Ot(L,Z.split(t))}function ha(t){for(let e=0;e<2;e++){let r=t.getParentNode(e);if((r==null?void 0:r.type)==="AttrNode")return r.name.toLowerCase()}}function Dt(t){return t=typeof t=="string"?t:"",t.split(`
6
- `).length-1}function pa(t){t=typeof t=="string"?t:"";let e=(t.match(/^([^\S\n\r]*[\n\r])+/gu)||[])[0]||"";return Dt(e)}function da(t){t=typeof t=="string"?t:"";let e=(t.match(/([\n\r][^\S\n\r]*)+$/gu)||[])[0]||"";return Dt(e)}function xt(t=0){return Array.from({length:Math.min(t,Vr)}).fill(wt)}function ma(t,e){let{node:{value:r}}=t,n=De(r,fa(t)?!e.singleQuote:e.singleQuote);return[n,Sr(!1,r,n,`\\${n}`),n]}function fa(t){let{ancestors:e}=t,r=e.findIndex(n=>n.type!=="SubExpression");return r!==-1&&e[r+1].type==="ConcatStatement"&&e[r+2].type==="AttrNode"}function ga(t,e){let r=Ve(t,e),n=ee(t,e);return n?O([r,L,R(n)]):r}function lr(t,e){let r=Ve(t,e),n=ee(t,e);return n?[O([r,L,n]),K]:r}function Ve(t,e){return e("path")}function ee(t,e){var r;let{node:n}=t,a=[];return n.params.length>0&&a.push(...t.map(e,"params")),((r=n.hash)==null?void 0:r.pairs.length)>0&&a.push(e("hash")),a.length===0?"":Ot(L,a)}function Re(t){return["as |",t.blockParams.join(" "),"|"]}var ba=new Set("!\"#%&'()*+,./;<=>@[\\]^`{|}~"),ya=new Set(["true","false","null","undefined"]),Aa=(t,e)=>e===0&&t.startsWith("@")?!1:e!==0&&ya.has(t)||/\s/u.test(t)||/^\d/u.test(t)||Array.prototype.some.call(t,r=>ba.has(r));function Da(t){return t.tail.length===0&&t.original.includes("/")?t.original:[t.head.original,...t.tail].map((e,r)=>Aa(e,r)?`[${e}]`:e).join(".")}var Ea={print:Zn,massageAstNode:Un,hasPrettierIgnore:Xn,getVisitorKeys:Kn},va=Ea,Ca=[{linguistLanguageId:155,name:"Handlebars",type:"markup",color:"#f7931e",aliases:["hbs","htmlbars"],extensions:[".handlebars",".hbs"],tmScope:"text.html.handlebars",aceMode:"handlebars",parsers:["glimmer"],vscodeLanguageIds:["handlebars"]}],jr={};Pe(jr,{glimmer:()=>uu});function S(t,e){if(!t)throw new Error(e||"assertion failure")}function M(t){Fa.warn(`DEPRECATION: ${t}`)}function Ue(t){if(t==null)throw new Error("Expected value to be present");return t}function Sa(t,e){if(t==null)throw new Error(e);return t}function Bt(t){return t.length>0}function ve(t,e="unexpected empty list"){if(!Bt(t))throw new Error(e)}function _t(t,e="unexpected empty list"){return ve(t,e),t}function He(t){return t.length===0?void 0:t[t.length-1]}function wa(t){return t.length===0?void 0:t[0]}var Me=function(t){return t[t.MAX_SMI=1073741823]="MAX_SMI",t[t.MIN_SMI=-1073741824]="MIN_SMI",t[t.SIGN_BIT=-536870913]="SIGN_BIT",t[t.MAX_INT=536870911]="MAX_INT",t[t.MIN_INT=-536870912]="MIN_INT",t[t.FALSE_HANDLE=0]="FALSE_HANDLE",t[t.TRUE_HANDLE=1]="TRUE_HANDLE",t[t.NULL_HANDLE=2]="NULL_HANDLE",t[t.UNDEFINED_HANDLE=3]="UNDEFINED_HANDLE",t[t.ENCODED_FALSE_HANDLE=0]="ENCODED_FALSE_HANDLE",t[t.ENCODED_TRUE_HANDLE=1]="ENCODED_TRUE_HANDLE",t[t.ENCODED_NULL_HANDLE=2]="ENCODED_NULL_HANDLE",t[t.ENCODED_UNDEFINED_HANDLE=3]="ENCODED_UNDEFINED_HANDLE",t}({});function Ba(t){return t&Me.SIGN_BIT}function ka(t){return t|~Me.SIGN_BIT}function xa(t){return~t}function Ta(t){return~t}function Na(t){return t|=0,t<0?Ba(t):xa(t)}function Pa(t){return t|=0,t>Me.SIGN_BIT?Ta(t):ka(t)}[1,-1].forEach(t=>Pa(Na(t)));var Gr=Object.assign,Fa=console,cr=console;function La(t,e="unexpected unreachable branch"){throw cr.log("unreachable",t),cr.log(`${e} :: ${JSON.stringify(t)} (${t})`),new Error("code reached unreachable")}var _a=function(){var t=function(G,p,b,d){for(b=b||{},d=G.length;d--;b[G[d]]=p);return b},e=[2,44],r=[1,20],n=[5,14,15,19,29,34,39,44,47,48,52,56,60],a=[1,35],s=[1,38],u=[1,30],i=[1,31],l=[1,32],g=[1,33],h=[1,34],m=[1,37],A=[14,15,19,29,34,39,44,47,48,52,56,60],y=[14,15,19,29,34,44,47,48,52,56,60],C=[15,18],T=[14,15,19,29,34,47,48,52,56,60],x=[33,64,71,79,80,81,82,83,84],B=[23,33,55,64,67,71,74,79,80,81,82,83,84],U=[1,51],j=[23,33,55,64,67,71,74,79,80,81,82,83,84,86],J=[2,43],dt=[55,64,71,79,80,81,82,83,84],mt=[1,58],Y=[1,59],tt=[1,66],$=[33,64,71,74,79,80,81,82,83,84],ft=[23,64,71,79,80,81,82,83,84],V=[1,76],et=[64,67,71,79,80,81,82,83,84],P=[33,74],rt=[23,33,55,67,71,74],Vt=[1,106],se=[1,118],Qe=[71,76],ue={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(G,p,b,d,E,o,_){var c=o.length-1;switch(E){case 1:return o[c-1];case 2:this.$=d.prepareProgram(o[c]);break;case 3:case 4:case 5:case 6:case 7:case 8:case 20:case 27:case 28:case 33:case 34:this.$=o[c];break;case 9:this.$={type:"CommentStatement",value:d.stripComment(o[c]),strip:d.stripFlags(o[c],o[c]),loc:d.locInfo(this._$)};break;case 10:this.$={type:"ContentStatement",original:o[c],value:o[c],loc:d.locInfo(this._$)};break;case 11:this.$=d.prepareRawBlock(o[c-2],o[c-1],o[c],this._$);break;case 12:this.$={path:o[c-3],params:o[c-2],hash:o[c-1]};break;case 13:this.$=d.prepareBlock(o[c-3],o[c-2],o[c-1],o[c],!1,this._$);break;case 14:this.$=d.prepareBlock(o[c-3],o[c-2],o[c-1],o[c],!0,this._$);break;case 15:this.$={open:o[c-5],path:o[c-4],params:o[c-3],hash:o[c-2],blockParams:o[c-1],strip:d.stripFlags(o[c-5],o[c])};break;case 16:case 17:this.$={path:o[c-4],params:o[c-3],hash:o[c-2],blockParams:o[c-1],strip:d.stripFlags(o[c-5],o[c])};break;case 18:this.$={strip:d.stripFlags(o[c-1],o[c-1]),program:o[c]};break;case 19:var Rt=d.prepareBlock(o[c-2],o[c-1],o[c],o[c],!1,this._$),Ut=d.prepareProgram([Rt],o[c-1].loc);Ut.chained=!0,this.$={strip:o[c-2].strip,program:Ut,chain:!0};break;case 21:this.$={path:o[c-1],strip:d.stripFlags(o[c-2],o[c])};break;case 22:case 23:this.$=d.prepareMustache(o[c-3],o[c-2],o[c-1],o[c-4],d.stripFlags(o[c-4],o[c]),this._$);break;case 24:this.$={type:"PartialStatement",name:o[c-3],params:o[c-2],hash:o[c-1],indent:"",strip:d.stripFlags(o[c-4],o[c]),loc:d.locInfo(this._$)};break;case 25:this.$=d.preparePartialBlock(o[c-2],o[c-1],o[c],this._$);break;case 26:this.$={path:o[c-3],params:o[c-2],hash:o[c-1],strip:d.stripFlags(o[c-4],o[c])};break;case 29:this.$={type:"SubExpression",path:o[c-3],params:o[c-2],hash:o[c-1],loc:d.locInfo(this._$)};break;case 30:this.$={type:"Hash",pairs:o[c],loc:d.locInfo(this._$)};break;case 31:this.$={type:"HashPair",key:d.id(o[c-2]),value:o[c],loc:d.locInfo(this._$)};break;case 32:this.$=d.id(o[c-1]);break;case 35:this.$={type:"StringLiteral",value:o[c],original:o[c],loc:d.locInfo(this._$)};break;case 36:this.$={type:"NumberLiteral",value:Number(o[c]),original:Number(o[c]),loc:d.locInfo(this._$)};break;case 37:this.$={type:"BooleanLiteral",value:o[c]==="true",original:o[c]==="true",loc:d.locInfo(this._$)};break;case 38:this.$={type:"UndefinedLiteral",original:void 0,value:void 0,loc:d.locInfo(this._$)};break;case 39:this.$={type:"NullLiteral",original:null,value:null,loc:d.locInfo(this._$)};break;case 40:this.$=d.preparePath(!0,o[c],this._$);break;case 41:this.$=d.preparePath(!1,o[c],this._$);break;case 42:o[c-2].push({part:d.id(o[c]),original:o[c],separator:o[c-1]}),this.$=o[c-2];break;case 43:this.$=[{part:d.id(o[c]),original:o[c]}];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:o[c-1].push(o[c]);break;case 96:case 98:this.$=[o[c]];break}},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(n,[2,45]),t(n,[2,3]),t(n,[2,4]),t(n,[2,5]),t(n,[2,6]),t(n,[2,7]),t(n,[2,8]),t(n,[2,9]),{20:26,49:25,63:27,64:a,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},{20:26,49:39,63:27,64:a,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(A,e,{6:3,4:40}),t(y,e,{6:3,4:41}),t(C,[2,46],{17:42}),{20:26,49:43,63:27,64:a,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(T,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:u,80:i,81:l,82:g,83:h,84:m,85:36},{20:46,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},{20:47,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},{20:26,49:48,63:27,64:a,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(x,[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:a,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(B,[2,41],{86:U}),{71:s,85:52},t(j,J),t(dt,[2,80],{53:53}),{25:54,38:56,39:mt,43:57,44:Y,45:55,47:[2,52]},{28:60,43:61,44:Y,47:[2,54]},{13:63,15:r,18:[1,62]},t(x,[2,84],{57:64}),{26:65,47:tt},t($,[2,56],{30:67}),t($,[2,62],{35:68}),t(ft,[2,48],{21:69}),t(x,[2,88],{61:70}),{20:26,33:[2,78],49:72,51:71,63:27,64:a,68:73,69:74,70:75,71:V,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(et,[2,92],{65:77}),{71:[1,78]},t(B,[2,40],{86:U}),{20:26,49:80,54:79,55:[2,82],63:27,64:a,68:81,69:74,70:75,71:V,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},{26:82,47:tt},{47:[2,53]},t(A,e,{6:3,4:83}),{47:[2,20]},{20:84,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(T,e,{6:3,4:85}),{26:86,47:tt},{47:[2,55]},t(n,[2,11]),t(C,[2,47]),{20:26,33:[2,86],49:88,58:87,63:27,64:a,68:89,69:74,70:75,71:V,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(n,[2,25]),{20:90,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(P,[2,58],{20:26,63:27,77:28,78:29,85:36,69:74,70:75,31:91,49:92,68:93,64:a,71:V,79:u,80:i,81:l,82:g,83:h,84:m}),t(P,[2,64],{20:26,63:27,77:28,78:29,85:36,69:74,70:75,36:94,49:95,68:96,64:a,71:V,79:u,80:i,81:l,82:g,83:h,84:m}),{20:26,22:97,23:[2,50],49:98,63:27,64:a,68:99,69:74,70:75,71:V,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},{20:26,33:[2,90],49:101,62:100,63:27,64:a,68:102,69:74,70:75,71:V,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},{33:[1,103]},t(x,[2,77]),{33:[2,79]},t([23,33,55,67,74],[2,30],{70:104,71:[1,105]}),t(rt,[2,96]),t(j,J,{72:Vt}),{20:26,49:108,63:27,64:a,66:107,67:[2,94],68:109,69:74,70:75,71:V,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(j,[2,42]),{55:[1,110]},t(dt,[2,81]),{55:[2,83]},t(n,[2,13]),{38:56,39:mt,43:57,44:Y,45:112,46:111,47:[2,74]},t($,[2,68],{40:113}),{47:[2,18]},t(n,[2,14]),{33:[1,114]},t(x,[2,85]),{33:[2,87]},{33:[1,115]},{32:116,33:[2,60],73:117,74:se},t($,[2,57]),t(P,[2,59]),{33:[2,66],37:119,73:120,74:se},t($,[2,63]),t(P,[2,65]),{23:[1,121]},t(ft,[2,49]),{23:[2,51]},{33:[1,122]},t(x,[2,89]),{33:[2,91]},t(n,[2,22]),t(rt,[2,97]),{72:Vt},{20:26,49:123,63:27,64:a,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},{67:[1,124]},t(et,[2,93]),{67:[2,95]},t(n,[2,23]),{47:[2,19]},{47:[2,75]},t(P,[2,70],{20:26,63:27,77:28,78:29,85:36,69:74,70:75,41:125,49:126,68:127,64:a,71:V,79:u,80:i,81:l,82:g,83:h,84:m}),t(n,[2,24]),t(n,[2,21]),{33:[1,128]},{33:[2,61]},{71:[1,130],75:129},{33:[1,131]},{33:[2,67]},t(C,[2,12]),t(T,[2,26]),t(rt,[2,31]),t(B,[2,29]),{33:[2,72],42:132,73:133,74:se},t($,[2,69]),t(P,[2,71]),t(A,[2,15]),{71:[1,135],76:[1,134]},t(Qe,[2,98]),t(y,[2,16]),{33:[1,136]},{33:[2,73]},{33:[2,32]},t(Qe,[2,99]),t(A,[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(G,p){if(p.recoverable)this.trace(G);else{var b=new Error(G);throw b.hash=p,b}},parse:function(G){var p=this,b=[0],d=[null],E=[],o=this.table,_="",c=0,Rt=0,Ut=0,on=2,Je=1,ln=E.slice.call(arguments,1),N=Object.create(this.lexer),lt={yy:{}};for(var oe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,oe)&&(lt.yy[oe]=this.yy[oe]);N.setInput(G,lt.yy),lt.yy.lexer=N,lt.yy.parser=this,typeof N.yylloc>"u"&&(N.yylloc={});var le=N.yylloc;E.push(le);var cn=N.options&&N.options.ranges;typeof lt.yy.parseError=="function"?this.parseError=lt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var hn=function(){var bt;return bt=N.lex()||Je,typeof bt!="number"&&(bt=p.symbols_[bt]||bt),bt},q,ce,ct,H,ou,he,gt={},Ht,X,Ye,Mt;;){if(ct=b[b.length-1],this.defaultActions[ct]?H=this.defaultActions[ct]:((q===null||typeof q>"u")&&(q=hn()),H=o[ct]&&o[ct][q]),typeof H>"u"||!H.length||!H[0]){var pe="";Mt=[];for(Ht in o[ct])this.terminals_[Ht]&&Ht>on&&Mt.push("'"+this.terminals_[Ht]+"'");N.showPosition?pe="Parse error on line "+(c+1)+`:
1
+ "use strict";var mn=Object.defineProperty;var fn=(t,e,r)=>e in t?mn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var w=(t,e,r)=>fn(t,typeof e!="symbol"?e+"":e,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var gn=Object.defineProperty,vr=t=>{throw TypeError(t)},Pe=(t,e)=>{for(var r in e)gn(t,r,{get:e[r],enumerable:!0})},Cr=(t,e,r)=>e.has(t)||vr("Cannot "+r),nt=(t,e,r)=>(Cr(t,e,"read from private field"),e.get(t)),bn=(t,e,r)=>e.has(t)?vr("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),yn=(t,e,r,n)=>(Cr(t,e,"write to private field"),e.set(t,r),r),Sr={};Pe(Sr,{languages:()=>Gr,parsers:()=>Ue,printers:()=>on});var An=(t,e,r,n)=>{if(!(t&&e==null))return e.replaceAll?e.replaceAll(r,n):r.global?e.replace(r,n):e.split(r).join(n)},wr=An,Br="string",kr="array",xr="cursor",Fe="indent",Le="align",Tr="trim",_e="group",qe="fill",Ie="if-break",Nr="indent-if-break",Pr="line-suffix",Fr="line-suffix-boundary",St="line",Lr="label",Oe="break-parent",_r=new Set([xr,Fe,Le,Tr,_e,qe,Ie,Nr,Pr,Fr,St,Lr,Oe]);function Dn(t){if(typeof t=="string")return Br;if(Array.isArray(t))return kr;if(!t)return;let{type:e}=t;if(_r.has(e))return e}var qr=Dn,En=t=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(t);function vn(t){let e=t===null?"null":typeof t;if(e!=="string"&&e!=="object")return`Unexpected doc '${e}',
2
+ Expected it to be 'string' or 'object'.`;if(qr(t))throw new Error("doc is valid.");let r=Object.prototype.toString.call(t);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=En([..._r].map(a=>`'${a}'`));return`Unexpected doc.type '${t.type}'.
3
+ Expected it to be ${n}.`}var Cn=class extends Error{constructor(e){super(vn(e));w(this,"name","InvalidDocError");this.doc=e}},Sn=Cn,wn=()=>{},Bn=wn;function O(t){return{type:Fe,contents:t}}function kn(t,e){return{type:Le,contents:e,n:t}}function R(t,e={}){return Bn(e.expandedStates),{type:_e,id:e.id,contents:t,break:!!e.shouldBreak,expandedStates:e.expandedStates}}function Ze(t){return kn(-1,t)}function tr(t){return{type:qe,parts:t}}function er(t,e="",r={}){return{type:Ie,breakContents:t,flatContents:e,groupId:r.groupId}}var Ir={type:Oe},xn={type:St,hard:!0},Tn={type:St,hard:!0,literal:!0},L={type:St},K={type:St,soft:!0},wt=[xn,Ir],Nn=[Tn,Ir];function Ot(t,e){let r=[];for(let n=0;n<e.length;n++)n!==0&&r.push(t),r.push(e[n]);return r}var Pn=(t,e,r)=>{if(!(t&&e==null))return Array.isArray(e)||typeof e=="string"?e[r<0?e.length+r:r]:e.at(r)},Tt=Pn;function Fn(t,e){if(typeof t=="string")return e(t);let r=new Map;return n(t);function n(s){if(r.has(s))return r.get(s);let u=a(s);return r.set(s,u),u}function a(s){switch(qr(s)){case kr:return e(s.map(n));case qe:return e({...s,parts:s.parts.map(n)});case Ie:return e({...s,breakContents:n(s.breakContents),flatContents:n(s.flatContents)});case _e:{let{expandedStates:u,contents:i}=s;return u?(u=u.map(n),i=u[0]):i=n(i),e({...s,contents:i,expandedStates:u})}case Le:case Fe:case Nr:case Lr:case Pr:return e({...s,contents:n(s.contents)});case Br:case xr:case Tr:case Fr:case St:case Oe:return e(s);default:throw new Sn(s)}}}function Ln(t,e=Nn){return Fn(t,r=>typeof r=="string"?Ot(e,r.split(`
4
+ `)):r)}var zt="'",rr='"';function _n(t,e){let r=e===!0||e===zt?zt:rr,n=r===zt?rr:zt,a=0,s=0;for(let u of t)u===r?a++:u===n&&s++;return a>s?n:r}var De=_n;function qn(t){if(typeof t!="string")throw new TypeError("Expected a string");return t.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var z,In=class{constructor(t){bn(this,z),yn(this,z,new Set(t))}getLeadingWhitespaceCount(t){let e=nt(this,z),r=0;for(let n=0;n<t.length&&e.has(t.charAt(n));n++)r++;return r}getTrailingWhitespaceCount(t){let e=nt(this,z),r=0;for(let n=t.length-1;n>=0&&e.has(t.charAt(n));n--)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 nt(this,z).has(t.charAt(0))}hasTrailingWhitespace(t){return nt(this,z).has(Tt(!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=`[${qn([...nt(this,z)].join(""))}]+`,n=new RegExp(e?`(${r})`:r,"u");return t.split(n)}hasWhitespaceCharacter(t){let e=nt(this,z);return Array.prototype.some.call(t,r=>e.has(r))}hasNonWhitespaceCharacter(t){let e=nt(this,z);return Array.prototype.some.call(t,r=>!e.has(r))}isWhitespaceOnly(t){let e=nt(this,z);return Array.prototype.every.call(t,r=>e.has(r))}};z=new WeakMap;var On=In,$n=[" ",`
5
+ `,"\f","\r"," "],Vn=new On($n),Z=Vn;function Rn(t){return Array.isArray(t)&&t.length>0}var Xt=Rn,Un=class extends Error{constructor(e,r,n="type"){super(`Unexpected ${r} node ${n}: ${JSON.stringify(e[n])}.`);w(this,"name","UnexpectedNodeError");this.node=e}},Hn=Un;function Or(t,e){if(t.type==="TextNode"){let r=t.chars.trim();if(!r)return null;e.chars=Z.split(r).join(" ")}t.type==="ElementNode"&&(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),t.type==="Block"&&(delete e.blockParamNodes,delete e.params),t.type==="AttrNode"&&t.name.toLowerCase()==="class"&&delete e.value,t.type==="PathExpression"&&(e.head=t.head.original)}Or.ignoredProperties=new Set(["loc","selfClosing"]);var Mn=Or,kt=null;function Nt(t){if(kt!==null&&typeof kt.property){let e=kt;return kt=Nt.prototype=null,e}return kt=Nt.prototype=t??Object.create(null),new Nt}var zn=10;for(let t=0;t<=zn;t++)Nt();function jn(t){return Nt(t)}function Gn(t,e="type"){jn(t);function r(n){let a=n[e],s=t[a];if(!Array.isArray(s))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return s}return r}var Wn=Gn,Kn={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"]},Qn=Wn(Kn),Jn=Qn;function Lt(t){return t.loc.start.offset}function Ee(t){return t.loc.end.offset}var Yn=new Set(["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]);function $r(t){return t.toUpperCase()===t}function Xn(t){return t.type==="ElementNode"&&typeof t.tag=="string"&&!t.tag.startsWith(":")&&($r(t.tag[0])||t.tag.includes("."))}function Zn(t){return Yn.has(t.toLowerCase())&&!$r(t[0])}function Vr(t){return t.selfClosing===!0||Zn(t.tag)||Xn(t)&&t.children.every(e=>$e(e))}function $e(t){return t.type==="TextNode"&&!/\S/u.test(t.chars)}function nr(t){return(t==null?void 0:t.type)==="MustacheCommentStatement"&&typeof t.value=="string"&&t.value.trim()==="prettier-ignore"}function ta(t){return nr(t.node)||t.isInArray&&(t.key==="children"||t.key==="body"||t.key==="parts")&&nr(t.siblings[t.index-2])}var Rr=2;function ea(t,e,r){var n,a,s,u,i,l,g,h,m;let{node:A}=t;switch(A.type){case"Block":case"Program":case"Template":return R(t.map(r,"body"));case"ElementNode":{let y=R(na(t,r)),C=e.htmlWhitespaceSensitivity==="ignore"&&((n=t.next)==null?void 0:n.type)==="ElementNode"?K:"";if(Vr(A))return[y,C];let T=["</",A.tag,">"];return A.children.length===0?[y,O(T),C]:e.htmlWhitespaceSensitivity==="ignore"?[y,O(ar(t,e,r)),wt,O(T),C]:[y,O(R(ar(t,e,r))),O(T),C]}case"BlockStatement":return la(t)?[ca(t,r),ir(t,r,e),or(t,r,e)]:[ia(t,r),R([ir(t,r,e),or(t,r,e),ha(t,r,e)])];case"ElementModifierStatement":return R(["{{",cr(t,r),"}}"]);case"MustacheStatement":return R([Zt(A),cr(t,r),te(A)]);case"SubExpression":return R(["(",ya(t,r),K,")"]);case"AttrNode":{let{name:y,value:C}=A,T=C.type==="TextNode";if(T&&C.chars===""&&Lt(C)===Ee(C))return y;let x=T?De(C.chars,e.singleQuote):C.type==="ConcatStatement"?De(C.parts.map(U=>U.type==="TextNode"?U.chars:"").join(""),e.singleQuote):"",B=r("value");return[y,"=",x,y==="class"&&x?R(O(B)):B,x]}case"ConcatStatement":return t.map(r,"parts");case"Hash":return Ot(L,t.map(r,"pairs"));case"HashPair":return[A.key,"=",r("value")];case"TextNode":{let y=wr(!1,A.chars,"{{",String.raw`\{{`),C=da(t);if(C){if(C==="class"){let Y=y.trim().split(/\s+/u).join(" "),tt=!1,$=!1;return t.parent.type==="ConcatStatement"&&(((a=t.previous)==null?void 0:a.type)==="MustacheStatement"&&/^\s/u.test(y)&&(tt=!0),((s=t.next)==null?void 0:s.type)==="MustacheStatement"&&/\s$/u.test(y)&&Y!==""&&($=!0)),[tt?L:"",Y,$?L:""]}return Ln(y)}let T=Z.isWhitespaceOnly(y),{isFirst:x,isLast:B}=t;if(e.htmlWhitespaceSensitivity!=="ignore"){let Y=B&&t.parent.type==="Template",tt=x&&t.parent.type==="Template";if(T){if(tt||Y)return"";let P=[L],rt=Dt(y);return rt&&(P=xt(rt)),B&&(P=P.map(Vt=>Ze(Vt))),P}let $=Z.getLeadingWhitespace(y),ft=[];if($){ft=[L];let P=Dt($);P&&(ft=xt(P)),y=y.slice($.length)}let V=Z.getTrailingWhitespace(y),et=[];if(V){if(!Y){et=[L];let P=Dt(V);P&&(et=xt(P)),B&&(et=et.map(rt=>Ze(rt)))}y=y.slice(0,-V.length)}return[...ft,tr(lr(y)),...et]}let U=Dt(y),j=ma(y),J=fa(y);if((x||B)&&T&&(t.parent.type==="Block"||t.parent.type==="ElementNode"||t.parent.type==="Template"))return"";T&&U?(j=Math.min(U,Rr),J=0):((((u=t.next)==null?void 0:u.type)==="BlockStatement"||((i=t.next)==null?void 0:i.type)==="ElementNode")&&(J=Math.max(J,1)),(((l=t.previous)==null?void 0:l.type)==="BlockStatement"||((g=t.previous)==null?void 0:g.type)==="ElementNode")&&(j=Math.max(j,1)));let dt="",mt="";return J===0&&((h=t.next)==null?void 0:h.type)==="MustacheStatement"&&(mt=" "),j===0&&((m=t.previous)==null?void 0:m.type)==="MustacheStatement"&&(dt=" "),x&&(j=0,dt=""),B&&(J=0,mt=""),Z.hasLeadingWhitespace(y)&&(y=dt+Z.trimStart(y)),Z.hasTrailingWhitespace(y)&&(y=Z.trimEnd(y)+mt),[...xt(j),tr(lr(y)),...xt(J)]}case"MustacheCommentStatement":{let y=Lt(A),C=Ee(A),T=e.originalText.charAt(y+2)==="~",x=e.originalText.charAt(C-3)==="~",B=A.value.includes("}}")?"--":"";return["{{",T?"~":"","!",B,A.value,B,x?"~":"","}}"]}case"PathExpression":return va(A);case"BooleanLiteral":return String(A.value);case"CommentStatement":return["<!--",A.value,"-->"];case"StringLiteral":return ga(t,e);case"NumberLiteral":return String(A.value);case"UndefinedLiteral":return"undefined";case"NullLiteral":return"null";case"AtHead":case"VarHead":case"ThisHead":default:throw new Hn(A,"Handlebars")}}function ra(t,e){return Lt(t)-Lt(e)}function na(t,e){let{node:r}=t,n=["attributes","modifiers","comments"].filter(s=>Xt(r[s])),a=n.flatMap(s=>r[s]).sort(ra);for(let s of n)t.each(({node:u})=>{let i=a.indexOf(u);a.splice(i,1,[L,e()])},s);return Xt(r.blockParams)&&a.push(L,Re(r)),["<",r.tag,O(a),aa(r)]}function ar(t,e,r){let{node:n}=t,a=n.children.every(s=>$e(s));return e.htmlWhitespaceSensitivity==="ignore"&&a?"":t.map(({isFirst:s})=>{let u=r();return s&&e.htmlWhitespaceSensitivity==="ignore"?[K,u]:u},"children")}function aa(t){return Vr(t)?er([K,"/>"],[" />",K]):er([K,">"],">")}function Zt(t){var e;let r=t.trusting?"{{{":"{{",n=(e=t.strip)!=null&&e.open?"~":"";return[r,n]}function te(t){var e;let r=t.trusting?"}}}":"}}";return[(e=t.strip)!=null&&e.close?"~":"",r]}function sa(t){let e=Zt(t),r=t.openStrip.open?"~":"";return[e,r,"#"]}function ua(t){let e=te(t);return[t.openStrip.close?"~":"",e]}function sr(t){let e=Zt(t),r=t.closeStrip.open?"~":"";return[e,r,"/"]}function ur(t){let e=te(t);return[t.closeStrip.close?"~":"",e]}function Ur(t){let e=Zt(t),r=t.inverseStrip.open?"~":"";return[e,r]}function Hr(t){let e=te(t);return[t.inverseStrip.close?"~":"",e]}function ia(t,e){let{node:r}=t,n=[],a=ee(t,e);return a&&n.push(R(a)),Xt(r.program.blockParams)&&n.push(Re(r.program)),R([sa(r),Ve(t,e),n.length>0?O([L,Ot(L,n)]):"",K,ua(r)])}function oa(t,e){return[e.htmlWhitespaceSensitivity==="ignore"?wt:"",Ur(t),"else",Hr(t)]}var Mr=(t,e)=>t.head.type==="VarHead"&&e.head.type==="VarHead"&&t.head.name===e.head.name;function la(t){var e;let{grandparent:r,node:n}=t;return((e=r==null?void 0:r.inverse)==null?void 0:e.body.length)===1&&r.inverse.body[0]===n&&Mr(r.inverse.body[0].path,r.path)}function ca(t,e){let{node:r,grandparent:n}=t;return R([Ur(n),["else"," ",n.inverse.body[0].path.head.name],O([L,R(ee(t,e)),...Xt(r.program.blockParams)?[L,Re(r.program)]:[]]),K,Hr(n)])}function ha(t,e,r){let{node:n}=t;return r.htmlWhitespaceSensitivity==="ignore"?[zr(n)?K:wt,sr(n),e("path"),ur(n)]:[sr(n),e("path"),ur(n)]}function zr(t){return t.type==="BlockStatement"&&t.program.body.every(e=>$e(e))}function pa(t){return jr(t)&&t.inverse.body.length===1&&t.inverse.body[0].type==="BlockStatement"&&Mr(t.inverse.body[0].path,t.path)}function jr(t){return t.type==="BlockStatement"&&t.inverse}function ir(t,e,r){let{node:n}=t;if(zr(n))return"";let a=e("program");return r.htmlWhitespaceSensitivity==="ignore"?O([wt,a]):O(a)}function or(t,e,r){let{node:n}=t,a=e("inverse"),s=r.htmlWhitespaceSensitivity==="ignore"?[wt,a]:a;return pa(n)?s:jr(n)?[oa(n,r),O(s)]:""}function lr(t){return Ot(L,Z.split(t))}function da(t){for(let e=0;e<2;e++){let r=t.getParentNode(e);if((r==null?void 0:r.type)==="AttrNode")return r.name.toLowerCase()}}function Dt(t){return t=typeof t=="string"?t:"",t.split(`
6
+ `).length-1}function ma(t){t=typeof t=="string"?t:"";let e=(t.match(/^([^\S\n\r]*[\n\r])+/gu)||[])[0]||"";return Dt(e)}function fa(t){t=typeof t=="string"?t:"";let e=(t.match(/([\n\r][^\S\n\r]*)+$/gu)||[])[0]||"";return Dt(e)}function xt(t=0){return Array.from({length:Math.min(t,Rr)}).fill(wt)}function ga(t,e){let{node:{value:r}}=t,n=De(r,ba(t)?!e.singleQuote:e.singleQuote);return[n,wr(!1,r,n,`\\${n}`),n]}function ba(t){let{ancestors:e}=t,r=e.findIndex(n=>n.type!=="SubExpression");return r!==-1&&e[r+1].type==="ConcatStatement"&&e[r+2].type==="AttrNode"}function ya(t,e){let r=Ve(t,e),n=ee(t,e);return n?O([r,L,R(n)]):r}function cr(t,e){let r=Ve(t,e),n=ee(t,e);return n?[O([r,L,n]),K]:r}function Ve(t,e){return e("path")}function ee(t,e){var r;let{node:n}=t,a=[];return n.params.length>0&&a.push(...t.map(e,"params")),((r=n.hash)==null?void 0:r.pairs.length)>0&&a.push(e("hash")),a.length===0?"":Ot(L,a)}function Re(t){return["as |",t.blockParams.join(" "),"|"]}var Aa=new Set("!\"#%&'()*+,./;<=>@[\\]^`{|}~"),Da=new Set(["true","false","null","undefined"]),Ea=(t,e)=>e===0&&t.startsWith("@")?!1:e!==0&&Da.has(t)||/\s/u.test(t)||/^\d/u.test(t)||Array.prototype.some.call(t,r=>Aa.has(r));function va(t){return t.tail.length===0&&t.original.includes("/")?t.original:[t.head.original,...t.tail].map((e,r)=>Ea(e,r)?`[${e}]`:e).join(".")}var Ca={print:ea,massageAstNode:Mn,hasPrettierIgnore:ta,getVisitorKeys:Jn},Sa=Ca,Gr=[{linguistLanguageId:155,name:"Handlebars",type:"markup",color:"#f7931e",aliases:["hbs","htmlbars"],extensions:[".handlebars",".hbs"],tmScope:"text.html.handlebars",aceMode:"handlebars",parsers:["glimmer"],vscodeLanguageIds:["handlebars"]}],Ue={};Pe(Ue,{glimmer:()=>iu});function S(t,e){if(!t)throw new Error(e||"assertion failure")}function M(t){La.warn(`DEPRECATION: ${t}`)}function He(t){if(t==null)throw new Error("Expected value to be present");return t}function wa(t,e){if(t==null)throw new Error(e);return t}function Bt(t){return t.length>0}function ve(t,e="unexpected empty list"){if(!Bt(t))throw new Error(e)}function _t(t,e="unexpected empty list"){return ve(t,e),t}function Me(t){return t.length===0?void 0:t[t.length-1]}function Ba(t){return t.length===0?void 0:t[0]}var ze=function(t){return t[t.MAX_SMI=1073741823]="MAX_SMI",t[t.MIN_SMI=-1073741824]="MIN_SMI",t[t.SIGN_BIT=-536870913]="SIGN_BIT",t[t.MAX_INT=536870911]="MAX_INT",t[t.MIN_INT=-536870912]="MIN_INT",t[t.FALSE_HANDLE=0]="FALSE_HANDLE",t[t.TRUE_HANDLE=1]="TRUE_HANDLE",t[t.NULL_HANDLE=2]="NULL_HANDLE",t[t.UNDEFINED_HANDLE=3]="UNDEFINED_HANDLE",t[t.ENCODED_FALSE_HANDLE=0]="ENCODED_FALSE_HANDLE",t[t.ENCODED_TRUE_HANDLE=1]="ENCODED_TRUE_HANDLE",t[t.ENCODED_NULL_HANDLE=2]="ENCODED_NULL_HANDLE",t[t.ENCODED_UNDEFINED_HANDLE=3]="ENCODED_UNDEFINED_HANDLE",t}({});function ka(t){return t&ze.SIGN_BIT}function xa(t){return t|~ze.SIGN_BIT}function Ta(t){return~t}function Na(t){return~t}function Pa(t){return t|=0,t<0?ka(t):Ta(t)}function Fa(t){return t|=0,t>ze.SIGN_BIT?Na(t):xa(t)}[1,-1].forEach(t=>Fa(Pa(t)));var Wr=Object.assign,La=console,hr=console;function _a(t,e="unexpected unreachable branch"){throw hr.log("unreachable",t),hr.log(`${e} :: ${JSON.stringify(t)} (${t})`),new Error("code reached unreachable")}var qa=function(){var t=function(G,p,b,d){for(b=b||{},d=G.length;d--;b[G[d]]=p);return b},e=[2,44],r=[1,20],n=[5,14,15,19,29,34,39,44,47,48,52,56,60],a=[1,35],s=[1,38],u=[1,30],i=[1,31],l=[1,32],g=[1,33],h=[1,34],m=[1,37],A=[14,15,19,29,34,39,44,47,48,52,56,60],y=[14,15,19,29,34,44,47,48,52,56,60],C=[15,18],T=[14,15,19,29,34,47,48,52,56,60],x=[33,64,71,79,80,81,82,83,84],B=[23,33,55,64,67,71,74,79,80,81,82,83,84],U=[1,51],j=[23,33,55,64,67,71,74,79,80,81,82,83,84,86],J=[2,43],dt=[55,64,71,79,80,81,82,83,84],mt=[1,58],Y=[1,59],tt=[1,66],$=[33,64,71,74,79,80,81,82,83,84],ft=[23,64,71,79,80,81,82,83,84],V=[1,76],et=[64,67,71,79,80,81,82,83,84],P=[33,74],rt=[23,33,55,67,71,74],Vt=[1,106],se=[1,118],Je=[71,76],ue={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(G,p,b,d,E,o,_){var c=o.length-1;switch(E){case 1:return o[c-1];case 2:this.$=d.prepareProgram(o[c]);break;case 3:case 4:case 5:case 6:case 7:case 8:case 20:case 27:case 28:case 33:case 34:this.$=o[c];break;case 9:this.$={type:"CommentStatement",value:d.stripComment(o[c]),strip:d.stripFlags(o[c],o[c]),loc:d.locInfo(this._$)};break;case 10:this.$={type:"ContentStatement",original:o[c],value:o[c],loc:d.locInfo(this._$)};break;case 11:this.$=d.prepareRawBlock(o[c-2],o[c-1],o[c],this._$);break;case 12:this.$={path:o[c-3],params:o[c-2],hash:o[c-1]};break;case 13:this.$=d.prepareBlock(o[c-3],o[c-2],o[c-1],o[c],!1,this._$);break;case 14:this.$=d.prepareBlock(o[c-3],o[c-2],o[c-1],o[c],!0,this._$);break;case 15:this.$={open:o[c-5],path:o[c-4],params:o[c-3],hash:o[c-2],blockParams:o[c-1],strip:d.stripFlags(o[c-5],o[c])};break;case 16:case 17:this.$={path:o[c-4],params:o[c-3],hash:o[c-2],blockParams:o[c-1],strip:d.stripFlags(o[c-5],o[c])};break;case 18:this.$={strip:d.stripFlags(o[c-1],o[c-1]),program:o[c]};break;case 19:var Rt=d.prepareBlock(o[c-2],o[c-1],o[c],o[c],!1,this._$),Ut=d.prepareProgram([Rt],o[c-1].loc);Ut.chained=!0,this.$={strip:o[c-2].strip,program:Ut,chain:!0};break;case 21:this.$={path:o[c-1],strip:d.stripFlags(o[c-2],o[c])};break;case 22:case 23:this.$=d.prepareMustache(o[c-3],o[c-2],o[c-1],o[c-4],d.stripFlags(o[c-4],o[c]),this._$);break;case 24:this.$={type:"PartialStatement",name:o[c-3],params:o[c-2],hash:o[c-1],indent:"",strip:d.stripFlags(o[c-4],o[c]),loc:d.locInfo(this._$)};break;case 25:this.$=d.preparePartialBlock(o[c-2],o[c-1],o[c],this._$);break;case 26:this.$={path:o[c-3],params:o[c-2],hash:o[c-1],strip:d.stripFlags(o[c-4],o[c])};break;case 29:this.$={type:"SubExpression",path:o[c-3],params:o[c-2],hash:o[c-1],loc:d.locInfo(this._$)};break;case 30:this.$={type:"Hash",pairs:o[c],loc:d.locInfo(this._$)};break;case 31:this.$={type:"HashPair",key:d.id(o[c-2]),value:o[c],loc:d.locInfo(this._$)};break;case 32:this.$=d.id(o[c-1]);break;case 35:this.$={type:"StringLiteral",value:o[c],original:o[c],loc:d.locInfo(this._$)};break;case 36:this.$={type:"NumberLiteral",value:Number(o[c]),original:Number(o[c]),loc:d.locInfo(this._$)};break;case 37:this.$={type:"BooleanLiteral",value:o[c]==="true",original:o[c]==="true",loc:d.locInfo(this._$)};break;case 38:this.$={type:"UndefinedLiteral",original:void 0,value:void 0,loc:d.locInfo(this._$)};break;case 39:this.$={type:"NullLiteral",original:null,value:null,loc:d.locInfo(this._$)};break;case 40:this.$=d.preparePath(!0,o[c],this._$);break;case 41:this.$=d.preparePath(!1,o[c],this._$);break;case 42:o[c-2].push({part:d.id(o[c]),original:o[c],separator:o[c-1]}),this.$=o[c-2];break;case 43:this.$=[{part:d.id(o[c]),original:o[c]}];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:o[c-1].push(o[c]);break;case 96:case 98:this.$=[o[c]];break}},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(n,[2,45]),t(n,[2,3]),t(n,[2,4]),t(n,[2,5]),t(n,[2,6]),t(n,[2,7]),t(n,[2,8]),t(n,[2,9]),{20:26,49:25,63:27,64:a,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},{20:26,49:39,63:27,64:a,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(A,e,{6:3,4:40}),t(y,e,{6:3,4:41}),t(C,[2,46],{17:42}),{20:26,49:43,63:27,64:a,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(T,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:u,80:i,81:l,82:g,83:h,84:m,85:36},{20:46,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},{20:47,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},{20:26,49:48,63:27,64:a,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(x,[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:a,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(B,[2,41],{86:U}),{71:s,85:52},t(j,J),t(dt,[2,80],{53:53}),{25:54,38:56,39:mt,43:57,44:Y,45:55,47:[2,52]},{28:60,43:61,44:Y,47:[2,54]},{13:63,15:r,18:[1,62]},t(x,[2,84],{57:64}),{26:65,47:tt},t($,[2,56],{30:67}),t($,[2,62],{35:68}),t(ft,[2,48],{21:69}),t(x,[2,88],{61:70}),{20:26,33:[2,78],49:72,51:71,63:27,64:a,68:73,69:74,70:75,71:V,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(et,[2,92],{65:77}),{71:[1,78]},t(B,[2,40],{86:U}),{20:26,49:80,54:79,55:[2,82],63:27,64:a,68:81,69:74,70:75,71:V,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},{26:82,47:tt},{47:[2,53]},t(A,e,{6:3,4:83}),{47:[2,20]},{20:84,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(T,e,{6:3,4:85}),{26:86,47:tt},{47:[2,55]},t(n,[2,11]),t(C,[2,47]),{20:26,33:[2,86],49:88,58:87,63:27,64:a,68:89,69:74,70:75,71:V,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(n,[2,25]),{20:90,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(P,[2,58],{20:26,63:27,77:28,78:29,85:36,69:74,70:75,31:91,49:92,68:93,64:a,71:V,79:u,80:i,81:l,82:g,83:h,84:m}),t(P,[2,64],{20:26,63:27,77:28,78:29,85:36,69:74,70:75,36:94,49:95,68:96,64:a,71:V,79:u,80:i,81:l,82:g,83:h,84:m}),{20:26,22:97,23:[2,50],49:98,63:27,64:a,68:99,69:74,70:75,71:V,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},{20:26,33:[2,90],49:101,62:100,63:27,64:a,68:102,69:74,70:75,71:V,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},{33:[1,103]},t(x,[2,77]),{33:[2,79]},t([23,33,55,67,74],[2,30],{70:104,71:[1,105]}),t(rt,[2,96]),t(j,J,{72:Vt}),{20:26,49:108,63:27,64:a,66:107,67:[2,94],68:109,69:74,70:75,71:V,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},t(j,[2,42]),{55:[1,110]},t(dt,[2,81]),{55:[2,83]},t(n,[2,13]),{38:56,39:mt,43:57,44:Y,45:112,46:111,47:[2,74]},t($,[2,68],{40:113}),{47:[2,18]},t(n,[2,14]),{33:[1,114]},t(x,[2,85]),{33:[2,87]},{33:[1,115]},{32:116,33:[2,60],73:117,74:se},t($,[2,57]),t(P,[2,59]),{33:[2,66],37:119,73:120,74:se},t($,[2,63]),t(P,[2,65]),{23:[1,121]},t(ft,[2,49]),{23:[2,51]},{33:[1,122]},t(x,[2,89]),{33:[2,91]},t(n,[2,22]),t(rt,[2,97]),{72:Vt},{20:26,49:123,63:27,64:a,71:s,77:28,78:29,79:u,80:i,81:l,82:g,83:h,84:m,85:36},{67:[1,124]},t(et,[2,93]),{67:[2,95]},t(n,[2,23]),{47:[2,19]},{47:[2,75]},t(P,[2,70],{20:26,63:27,77:28,78:29,85:36,69:74,70:75,41:125,49:126,68:127,64:a,71:V,79:u,80:i,81:l,82:g,83:h,84:m}),t(n,[2,24]),t(n,[2,21]),{33:[1,128]},{33:[2,61]},{71:[1,130],75:129},{33:[1,131]},{33:[2,67]},t(C,[2,12]),t(T,[2,26]),t(rt,[2,31]),t(B,[2,29]),{33:[2,72],42:132,73:133,74:se},t($,[2,69]),t(P,[2,71]),t(A,[2,15]),{71:[1,135],76:[1,134]},t(Je,[2,98]),t(y,[2,16]),{33:[1,136]},{33:[2,73]},{33:[2,32]},t(Je,[2,99]),t(A,[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(G,p){if(p.recoverable)this.trace(G);else{var b=new Error(G);throw b.hash=p,b}},parse:function(G){var p=this,b=[0],d=[null],E=[],o=this.table,_="",c=0,Rt=0,Ut=0,cn=2,Ye=1,hn=E.slice.call(arguments,1),N=Object.create(this.lexer),lt={yy:{}};for(var oe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,oe)&&(lt.yy[oe]=this.yy[oe]);N.setInput(G,lt.yy),lt.yy.lexer=N,lt.yy.parser=this,typeof N.yylloc>"u"&&(N.yylloc={});var le=N.yylloc;E.push(le);var pn=N.options&&N.options.ranges;typeof lt.yy.parseError=="function"?this.parseError=lt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var dn=function(){var bt;return bt=N.lex()||Ye,typeof bt!="number"&&(bt=p.symbols_[bt]||bt),bt},q,ce,ct,H,lu,he,gt={},Ht,X,Xe,Mt;;){if(ct=b[b.length-1],this.defaultActions[ct]?H=this.defaultActions[ct]:((q===null||typeof q>"u")&&(q=dn()),H=o[ct]&&o[ct][q]),typeof H>"u"||!H.length||!H[0]){var pe="";Mt=[];for(Ht in o[ct])this.terminals_[Ht]&&Ht>cn&&Mt.push("'"+this.terminals_[Ht]+"'");N.showPosition?pe="Parse error on line "+(c+1)+`:
7
7
  `+N.showPosition()+`
8
- Expecting `+Mt.join(", ")+", got '"+(this.terminals_[q]||q)+"'":pe="Parse error on line "+(c+1)+": Unexpected "+(q==Je?"end of input":"'"+(this.terminals_[q]||q)+"'"),this.parseError(pe,{text:N.match,token:this.terminals_[q]||q,line:N.yylineno,loc:le,expected:Mt})}if(H[0]instanceof Array&&H.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ct+", token: "+q);switch(H[0]){case 1:b.push(q),d.push(N.yytext),E.push(N.yylloc),b.push(H[1]),q=null,ce?(q=ce,ce=null):(Rt=N.yyleng,_=N.yytext,c=N.yylineno,le=N.yylloc,Ut>0);break;case 2:if(X=this.productions_[H[1]][1],gt.$=d[d.length-X],gt._$={first_line:E[E.length-(X||1)].first_line,last_line:E[E.length-1].last_line,first_column:E[E.length-(X||1)].first_column,last_column:E[E.length-1].last_column},cn&&(gt._$.range=[E[E.length-(X||1)].range[0],E[E.length-1].range[1]]),he=this.performAction.apply(gt,[_,Rt,c,lt.yy,H[1],d,E].concat(ln)),typeof he<"u")return he;X&&(b=b.slice(0,-1*X*2),d=d.slice(0,-1*X),E=E.slice(0,-1*X)),b.push(this.productions_[H[1]][0]),d.push(gt.$),E.push(gt._$),Ye=o[b[b.length-2]][b[b.length-1]],b.push(Ye);break;case 3:return!0}}return!0}},un=function(){var G={EOF:1,parseError:function(p,b){if(this.yy.parser)this.yy.parser.parseError(p,b);else throw new Error(p)},setInput:function(p,b){return this.yy=b||this.yy||{},this._input=p,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 p=this._input[0];this.yytext+=p,this.yyleng++,this.offset++,this.match+=p,this.matched+=p;var b=p.match(/(?:\r\n?|\n).*/g);return b?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),p},unput:function(p){var b=p.length,d=p.split(/(?:\r\n?|\n)/g);this._input=p+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var E=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),d.length-1&&(this.yylineno-=d.length-1);var o=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:d?(d.length===E.length?this.yylloc.first_column:0)+E[E.length-d.length].length-d[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[o[0],o[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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).
8
+ Expecting `+Mt.join(", ")+", got '"+(this.terminals_[q]||q)+"'":pe="Parse error on line "+(c+1)+": Unexpected "+(q==Ye?"end of input":"'"+(this.terminals_[q]||q)+"'"),this.parseError(pe,{text:N.match,token:this.terminals_[q]||q,line:N.yylineno,loc:le,expected:Mt})}if(H[0]instanceof Array&&H.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ct+", token: "+q);switch(H[0]){case 1:b.push(q),d.push(N.yytext),E.push(N.yylloc),b.push(H[1]),q=null,ce?(q=ce,ce=null):(Rt=N.yyleng,_=N.yytext,c=N.yylineno,le=N.yylloc,Ut>0);break;case 2:if(X=this.productions_[H[1]][1],gt.$=d[d.length-X],gt._$={first_line:E[E.length-(X||1)].first_line,last_line:E[E.length-1].last_line,first_column:E[E.length-(X||1)].first_column,last_column:E[E.length-1].last_column},pn&&(gt._$.range=[E[E.length-(X||1)].range[0],E[E.length-1].range[1]]),he=this.performAction.apply(gt,[_,Rt,c,lt.yy,H[1],d,E].concat(hn)),typeof he<"u")return he;X&&(b=b.slice(0,-1*X*2),d=d.slice(0,-1*X),E=E.slice(0,-1*X)),b.push(this.productions_[H[1]][0]),d.push(gt.$),E.push(gt._$),Xe=o[b[b.length-2]][b[b.length-1]],b.push(Xe);break;case 3:return!0}}return!0}},ln=function(){var G={EOF:1,parseError:function(p,b){if(this.yy.parser)this.yy.parser.parseError(p,b);else throw new Error(p)},setInput:function(p,b){return this.yy=b||this.yy||{},this._input=p,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 p=this._input[0];this.yytext+=p,this.yyleng++,this.offset++,this.match+=p,this.matched+=p;var b=p.match(/(?:\r\n?|\n).*/g);return b?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),p},unput:function(p){var b=p.length,d=p.split(/(?:\r\n?|\n)/g);this._input=p+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var E=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),d.length-1&&(this.yylineno-=d.length-1);var o=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:d?(d.length===E.length?this.yylloc.first_column:0)+E[E.length-d.length].length-d[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[o[0],o[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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).
9
9
  `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(p){this.unput(this.match.slice(p))},pastInput:function(){var p=this.matched.substr(0,this.matched.length-this.match.length);return(p.length>20?"...":"")+p.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var p=this.match;return p.length<20&&(p+=this._input.substr(0,20-p.length)),(p.substr(0,20)+(p.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var p=this.pastInput(),b=new Array(p.length+1).join("-");return p+this.upcomingInput()+`
10
10
  `+b+"^"},test_match:function(p,b){var d,E,o;if(this.options.backtrack_lexer&&(o={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&&(o.yylloc.range=this.yylloc.range.slice(0))),E=p[0].match(/(?:\r\n?|\n).*/g),E&&(this.yylineno+=E.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:E?E[E.length-1].length-E[E.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+p[0].length},this.yytext+=p[0],this.match+=p[0],this.matches=p,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(p[0].length),this.matched+=p[0],d=this.performAction.call(this,this.yy,this,b,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),d)return d;if(this._backtrack){for(var _ in o)this[_]=o[_];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var p,b,d,E;this._more||(this.yytext="",this.match="");for(var o=this._currentRules(),_=0;_<o.length;_++)if(d=this._input.match(this.rules[o[_]]),d&&(!b||d[0].length>b[0].length)){if(b=d,E=_,this.options.backtrack_lexer){if(p=this.test_match(d,o[_]),p!==!1)return p;if(this._backtrack){b=!1;continue}else return!1}else if(!this.options.flex)break}return b?(p=this.test_match(b,o[E]),p!==!1?p:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
11
- `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var p=this.next();return p||this.lex()},begin:function(p){this.conditionStack.push(p)},popState:function(){var p=this.conditionStack.length-1;return p>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(p){return p=this.conditionStack.length-1-Math.abs(p||0),p>=0?this.conditionStack[p]:"INITIAL"},pushState:function(p){this.begin(p)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(p,b,d,E){function o(_,c){return b.yytext=b.yytext.substring(_,b.yyleng-c+_)}switch(d){case 0:if(b.yytext.slice(-2)==="\\\\"?(o(0,1),this.begin("mu")):b.yytext.slice(-1)==="\\"?(o(0,1),this.begin("emu")):this.begin("mu"),b.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;case 3:return this.begin("raw"),15;case 4:return this.popState(),this.conditionStack[this.conditionStack.length-1]==="raw"?15:(o(5,9),18);case 5:return 15;case 6: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:return this.popState(),44;case 16:return this.popState(),44;case 17:return 34;case 18:return 39;case 19:return 52;case 20:return 48;case 21:this.unput(b.yytext),this.popState(),this.begin("com");break;case 22:return this.popState(),14;case 23:return 48;case 24:return 72;case 25:return 71;case 26:return 71;case 27:return 86;case 28:break;case 29:return this.popState(),55;case 30:return this.popState(),33;case 31:return b.yytext=o(1,2).replace(/\\"/g,'"'),79;case 32:return b.yytext=o(1,2).replace(/\\'/g,"'"),79;case 33:return 84;case 34:return 81;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 41:return 71;case 42:return b.yytext=b.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}}};return G}();ue.lexer=un;function ie(){this.yy={}}return ie.prototype=ue,ue.Parser=ie,new ie}(),de=_a,me=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function ze(t,e){var r=e&&e.loc,n,a,s,u;r&&(n=r.start.line,a=r.end.line,s=r.start.column,u=r.end.column,t+=" - "+n+":"+s);for(var i=Error.prototype.constructor.call(this,t),l=0;l<me.length;l++)this[me[l]]=i[me[l]];Error.captureStackTrace&&Error.captureStackTrace(this,ze);try{r&&(this.lineNumber=n,this.endLineNumber=a,Object.defineProperty?(Object.defineProperty(this,"column",{value:s,enumerable:!0}),Object.defineProperty(this,"endColumn",{value:u,enumerable:!0})):(this.column=s,this.endColumn=u))}catch{}}ze.prototype=new Error;var Et=ze;function Kt(){this.parents=[]}Kt.prototype={constructor:Kt,mutating:!1,acceptKey:function(t,e){var r=this.accept(t[e]);if(this.mutating){if(r&&!Kt.prototype[r.type])throw new Et('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 Et(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 Et("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(e!==!1)return t}},Program:function(t){this.acceptArray(t.body)},MustacheStatement:Qt,Decorator:Qt,BlockStatement:hr,DecoratorBlock:hr,PartialStatement:pr,PartialBlockStatement:function(t){pr.call(this,t),this.acceptKey(t,"program")},ContentStatement:function(){},CommentStatement:function(){},SubExpression:Qt,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")}};function Qt(t){this.acceptRequired(t,"path"),this.acceptArray(t.params),this.acceptKey(t,"hash")}function hr(t){Qt.call(this,t),this.acceptKey(t,"program"),this.acceptKey(t,"inverse")}function pr(t){this.acceptRequired(t,"name"),this.acceptArray(t.params),this.acceptKey(t,"hash")}var qa=Kt;function Q(t){t===void 0&&(t={}),this.options=t}Q.prototype=new qa;Q.prototype.Program=function(t){var e=!this.options.ignoreStandalone,r=!this.isRootSeen;this.isRootSeen=!0;for(var n=t.body,a=0,s=n.length;a<s;a++){var u=n[a],i=this.accept(u);if(i){var l=Ce(n,a,r),g=Se(n,a,r),h=i.openStandalone&&l,m=i.closeStandalone&&g,A=i.inlineStandalone&&l&&g;i.close&&ht(n,a,!0),i.open&&at(n,a,!0),e&&A&&(ht(n,a),at(n,a)&&u.type==="PartialStatement"&&(u.indent=/([ \t]+$)/.exec(n[a-1].original)[1])),e&&h&&(ht((u.program||u.inverse).body),at(n,a)),e&&m&&(ht(n,a),at((u.inverse||u.program).body))}}return t};Q.prototype.BlockStatement=Q.prototype.DecoratorBlock=Q.prototype.PartialBlockStatement=function(t){this.accept(t.program),this.accept(t.inverse);var e=t.program||t.inverse,r=t.program&&t.inverse,n=r,a=r;if(r&&r.chained)for(n=r.body[0].program;a.chained;)a=a.body[a.body.length-1].program;var s={open:t.openStrip.open,close:t.closeStrip.close,openStandalone:Se(e.body),closeStandalone:Ce((n||e).body)};if(t.openStrip.close&&ht(e.body,null,!0),r){var u=t.inverseStrip;u.open&&at(e.body,null,!0),u.close&&ht(n.body,null,!0),t.closeStrip.open&&at(a.body,null,!0),!this.options.ignoreStandalone&&Ce(e.body)&&Se(n.body)&&(at(e.body),ht(n.body))}else t.closeStrip.open&&at(e.body,null,!0);return s};Q.prototype.Decorator=Q.prototype.MustacheStatement=function(t){return t.strip};Q.prototype.PartialStatement=Q.prototype.CommentStatement=function(t){var e=t.strip||{};return{inlineStandalone:!0,open:e.open,close:e.close}};function Ce(t,e,r){e===void 0&&(e=t.length);var n=t[e-1],a=t[e-2];if(!n)return r;if(n.type==="ContentStatement")return(a||!r?/\r?\n\s*?$/:/(^|\r?\n)\s*?$/).test(n.original)}function Se(t,e,r){e===void 0&&(e=-1);var n=t[e+1],a=t[e+2];if(!n)return r;if(n.type==="ContentStatement")return(a||!r?/^\s*?\r?\n/:/^\s*?(\r?\n|$)/).test(n.original)}function ht(t,e,r){var n=t[e==null?0:e+1];if(!(!n||n.type!=="ContentStatement"||!r&&n.rightStripped)){var a=n.value;n.value=n.value.replace(r?/^\s+/:/^[ \t]*\r?\n?/,""),n.rightStripped=n.value!==a}}function at(t,e,r){var n=t[e==null?t.length-1:e-1];if(!(!n||n.type!=="ContentStatement"||!r&&n.leftStripped)){var a=n.value;return n.value=n.value.replace(r?/\s+$/:/[ \t]+$/,""),n.leftStripped=n.value!==a,n.leftStripped}}var Ia=Q,Jt={};Pe(Jt,{SourceLocation:()=>Wr,id:()=>Oa,prepareBlock:()=>Ma,prepareMustache:()=>Ua,preparePartialBlock:()=>ja,preparePath:()=>Ra,prepareProgram:()=>za,prepareRawBlock:()=>Ha,stripComment:()=>Va,stripFlags:()=>$a});function je(t,e){if(e=e.path?e.path.original:e,t.path.original!==e){var r={loc:t.path.loc};throw new Et(t.path.original+" doesn't match "+e,r)}}function Wr(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 Oa(t){return/^\[.*\]$/.test(t)?t.substring(1,t.length-1):t}function $a(t,e){return{open:t.charAt(2)==="~",close:e.charAt(e.length-3)==="~"}}function Va(t){return t.replace(/^\{\{~?!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function Ra(t,e,r){r=this.locInfo(r);for(var n=t?"@":"",a=[],s=0,u=0,i=e.length;u<i;u++){var l=e[u].part,g=e[u].original!==l;if(n+=(e[u].separator||"")+l,!g&&(l===".."||l==="."||l==="this")){if(a.length>0)throw new Et("Invalid path: "+n,{loc:r});l===".."&&s++}else a.push(l)}return{type:"PathExpression",data:t,depth:s,parts:a,original:n,loc:r}}function Ua(t,e,r,n,a,s){var u=n.charAt(3)||n.charAt(2),i=u!=="{"&&u!=="&",l=/\*/.test(n);return{type:l?"Decorator":"MustacheStatement",path:t,params:e,hash:r,escaped:i,strip:a,loc:this.locInfo(s)}}function Ha(t,e,r,n){je(t,r),n=this.locInfo(n);var a={type:"Program",body:e,strip:{},loc:n};return{type:"BlockStatement",path:t.path,params:t.params,hash:t.hash,program:a,openStrip:{},inverseStrip:{},closeStrip:{},loc:n}}function Ma(t,e,r,n,a,s){n&&n.path&&je(t,n);var u=/\*/.test(t.open);e.blockParams=t.blockParams;var i,l;if(r){if(u)throw new Et("Unexpected inverse block on decorator",r);r.chain&&(r.program.body[0].closeStrip=n.strip),l=r.strip,i=r.program}return a&&(a=i,i=e,e=a),{type:u?"DecoratorBlock":"BlockStatement",path:t.path,params:t.params,hash:t.hash,program:e,inverse:i,openStrip:t.strip,inverseStrip:l,closeStrip:n&&n.strip,loc:this.locInfo(s)}}function za(t,e){if(!e&&t.length){var r=t[0].loc,n=t[t.length-1].loc;r&&n&&(e={source:r.source,start:{line:r.start.line,column:r.start.column},end:{line:n.end.line,column:n.end.column}})}return{type:"Program",body:t,strip:{},loc:e}}function ja(t,e,r,n){return je(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(n)}}var Kr={};for(jt in Jt)Object.prototype.hasOwnProperty.call(Jt,jt)&&(Kr[jt]=Jt[jt]);var jt;function we(t,e){if(t.type==="Program")return t;de.yy=Kr,de.yy.locInfo=function(n){return new Wr(e&&e.srcName,n)};var r=de.parse(t);return r}function dr(t,e){var r=we(t,e),n=new Ia(e);return n.accept(r)}var Ga={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:`
12
- `,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:" ",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:"‌"},Wa=/^#[xX]([A-Fa-f0-9]+)$/,Ka=/^#([0-9]+)$/,Qa=/^([A-Za-z0-9]+)$/,Qr=function(){function t(e){this.named=e}return t.prototype.parse=function(e){if(e){var r=e.match(Wa);if(r)return String.fromCharCode(parseInt(r[1],16));if(r=e.match(Ka),r)return String.fromCharCode(parseInt(r[1],10));if(r=e.match(Qa),r)return this.named[r[1]]}},t}(),Ja=/[\t\n\f ]/,Ya=/[A-Za-z]/,Xa=/\r\n?/g;function F(t){return Ja.test(t)}function mr(t){return Ya.test(t)}function Za(t){return t.replace(Xa,`
13
- `)}var ts=function(){function t(e,r,n){n===void 0&&(n="precompile"),this.delegate=e,this.entityParser=r,this.mode=n,this.state="beforeData",this.line=-1,this.column=-1,this.input="",this.index=-1,this.tagNameBuffer="",this.states={beforeData:function(){var a=this.peek();if(a==="<"&&!this.isIgnoredEndTag())this.transitionTo("tagOpen"),this.markTagStart(),this.consume();else{if(this.mode==="precompile"&&a===`
14
- `){var s=this.tagNameBuffer.toLowerCase();(s==="pre"||s==="textarea")&&this.consume()}this.transitionTo("data"),this.delegate.beginData()}},data:function(){var a=this.peek(),s=this.tagNameBuffer;a==="<"&&!this.isIgnoredEndTag()?(this.delegate.finishData(),this.transitionTo("tagOpen"),this.markTagStart(),this.consume()):a==="&"&&s!=="script"&&s!=="style"?(this.consume(),this.delegate.appendToData(this.consumeCharRef()||"&")):(this.consume(),this.delegate.appendToData(a))},tagOpen:function(){var a=this.consume();a==="!"?this.transitionTo("markupDeclarationOpen"):a==="/"?this.transitionTo("endTagOpen"):(a==="@"||a===":"||mr(a))&&(this.transitionTo("tagName"),this.tagNameBuffer="",this.delegate.beginStartTag(),this.appendToTagName(a))},markupDeclarationOpen:function(){var a=this.consume();if(a==="-"&&this.peek()==="-")this.consume(),this.transitionTo("commentStart"),this.delegate.beginComment();else{var s=a.toUpperCase()+this.input.substring(this.index,this.index+6).toUpperCase();s==="DOCTYPE"&&(this.consume(),this.consume(),this.consume(),this.consume(),this.consume(),this.consume(),this.transitionTo("doctype"),this.delegate.beginDoctype&&this.delegate.beginDoctype())}},doctype:function(){var a=this.consume();F(a)&&this.transitionTo("beforeDoctypeName")},beforeDoctypeName:function(){var a=this.consume();F(a)||(this.transitionTo("doctypeName"),this.delegate.appendToDoctypeName&&this.delegate.appendToDoctypeName(a.toLowerCase()))},doctypeName:function(){var a=this.consume();F(a)?this.transitionTo("afterDoctypeName"):a===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypeName&&this.delegate.appendToDoctypeName(a.toLowerCase())},afterDoctypeName:function(){var a=this.consume();if(!F(a))if(a===">")this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData");else{var s=a.toUpperCase()+this.input.substring(this.index,this.index+5).toUpperCase(),u=s.toUpperCase()==="PUBLIC",i=s.toUpperCase()==="SYSTEM";(u||i)&&(this.consume(),this.consume(),this.consume(),this.consume(),this.consume(),this.consume()),u?this.transitionTo("afterDoctypePublicKeyword"):i&&this.transitionTo("afterDoctypeSystemKeyword")}},afterDoctypePublicKeyword:function(){var a=this.peek();F(a)?(this.transitionTo("beforeDoctypePublicIdentifier"),this.consume()):a==='"'?(this.transitionTo("doctypePublicIdentifierDoubleQuoted"),this.consume()):a==="'"?(this.transitionTo("doctypePublicIdentifierSingleQuoted"),this.consume()):a===">"&&(this.consume(),this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData"))},doctypePublicIdentifierDoubleQuoted:function(){var a=this.consume();a==='"'?this.transitionTo("afterDoctypePublicIdentifier"):a===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypePublicIdentifier&&this.delegate.appendToDoctypePublicIdentifier(a)},doctypePublicIdentifierSingleQuoted:function(){var a=this.consume();a==="'"?this.transitionTo("afterDoctypePublicIdentifier"):a===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypePublicIdentifier&&this.delegate.appendToDoctypePublicIdentifier(a)},afterDoctypePublicIdentifier:function(){var a=this.consume();F(a)?this.transitionTo("betweenDoctypePublicAndSystemIdentifiers"):a===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):a==='"'?this.transitionTo("doctypeSystemIdentifierDoubleQuoted"):a==="'"&&this.transitionTo("doctypeSystemIdentifierSingleQuoted")},betweenDoctypePublicAndSystemIdentifiers:function(){var a=this.consume();F(a)||(a===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):a==='"'?this.transitionTo("doctypeSystemIdentifierDoubleQuoted"):a==="'"&&this.transitionTo("doctypeSystemIdentifierSingleQuoted"))},doctypeSystemIdentifierDoubleQuoted:function(){var a=this.consume();a==='"'?this.transitionTo("afterDoctypeSystemIdentifier"):a===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypeSystemIdentifier&&this.delegate.appendToDoctypeSystemIdentifier(a)},doctypeSystemIdentifierSingleQuoted:function(){var a=this.consume();a==="'"?this.transitionTo("afterDoctypeSystemIdentifier"):a===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypeSystemIdentifier&&this.delegate.appendToDoctypeSystemIdentifier(a)},afterDoctypeSystemIdentifier:function(){var a=this.consume();F(a)||a===">"&&(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData"))},commentStart:function(){var a=this.consume();a==="-"?this.transitionTo("commentStartDash"):a===">"?(this.delegate.finishComment(),this.transitionTo("beforeData")):(this.delegate.appendToCommentData(a),this.transitionTo("comment"))},commentStartDash:function(){var a=this.consume();a==="-"?this.transitionTo("commentEnd"):a===">"?(this.delegate.finishComment(),this.transitionTo("beforeData")):(this.delegate.appendToCommentData("-"),this.transitionTo("comment"))},comment:function(){var a=this.consume();a==="-"?this.transitionTo("commentEndDash"):this.delegate.appendToCommentData(a)},commentEndDash:function(){var a=this.consume();a==="-"?this.transitionTo("commentEnd"):(this.delegate.appendToCommentData("-"+a),this.transitionTo("comment"))},commentEnd:function(){var a=this.consume();a===">"?(this.delegate.finishComment(),this.transitionTo("beforeData")):(this.delegate.appendToCommentData("--"+a),this.transitionTo("comment"))},tagName:function(){var a=this.consume();F(a)?this.transitionTo("beforeAttributeName"):a==="/"?this.transitionTo("selfClosingStartTag"):a===">"?(this.delegate.finishTag(),this.transitionTo("beforeData")):this.appendToTagName(a)},endTagName:function(){var a=this.consume();F(a)?(this.transitionTo("beforeAttributeName"),this.tagNameBuffer=""):a==="/"?(this.transitionTo("selfClosingStartTag"),this.tagNameBuffer=""):a===">"?(this.delegate.finishTag(),this.transitionTo("beforeData"),this.tagNameBuffer=""):this.appendToTagName(a)},beforeAttributeName:function(){var a=this.peek();if(F(a)){this.consume();return}else a==="/"?(this.transitionTo("selfClosingStartTag"),this.consume()):a===">"?(this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):a==="="?(this.delegate.reportSyntaxError("attribute name cannot start with equals sign"),this.transitionTo("attributeName"),this.delegate.beginAttribute(),this.consume(),this.delegate.appendToAttributeName(a)):(this.transitionTo("attributeName"),this.delegate.beginAttribute())},attributeName:function(){var a=this.peek();F(a)?(this.transitionTo("afterAttributeName"),this.consume()):a==="/"?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("selfClosingStartTag")):a==="="?(this.transitionTo("beforeAttributeValue"),this.consume()):a===">"?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):a==='"'||a==="'"||a==="<"?(this.delegate.reportSyntaxError(a+" is not a valid character within attribute names"),this.consume(),this.delegate.appendToAttributeName(a)):(this.consume(),this.delegate.appendToAttributeName(a))},afterAttributeName:function(){var a=this.peek();if(F(a)){this.consume();return}else a==="/"?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("selfClosingStartTag")):a==="="?(this.consume(),this.transitionTo("beforeAttributeValue")):a===">"?(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(a))},beforeAttributeValue:function(){var a=this.peek();F(a)?this.consume():a==='"'?(this.transitionTo("attributeValueDoubleQuoted"),this.delegate.beginAttributeValue(!0),this.consume()):a==="'"?(this.transitionTo("attributeValueSingleQuoted"),this.delegate.beginAttributeValue(!0),this.consume()):a===">"?(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(a))},attributeValueDoubleQuoted:function(){var a=this.consume();a==='"'?(this.delegate.finishAttributeValue(),this.transitionTo("afterAttributeValueQuoted")):a==="&"?this.delegate.appendToAttributeValue(this.consumeCharRef()||"&"):this.delegate.appendToAttributeValue(a)},attributeValueSingleQuoted:function(){var a=this.consume();a==="'"?(this.delegate.finishAttributeValue(),this.transitionTo("afterAttributeValueQuoted")):a==="&"?this.delegate.appendToAttributeValue(this.consumeCharRef()||"&"):this.delegate.appendToAttributeValue(a)},attributeValueUnquoted:function(){var a=this.peek();F(a)?(this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("beforeAttributeName")):a==="/"?(this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("selfClosingStartTag")):a==="&"?(this.consume(),this.delegate.appendToAttributeValue(this.consumeCharRef()||"&")):a===">"?(this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):(this.consume(),this.delegate.appendToAttributeValue(a))},afterAttributeValueQuoted:function(){var a=this.peek();F(a)?(this.consume(),this.transitionTo("beforeAttributeName")):a==="/"?(this.consume(),this.transitionTo("selfClosingStartTag")):a===">"?(this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):this.transitionTo("beforeAttributeName")},selfClosingStartTag:function(){var a=this.peek();a===">"?(this.consume(),this.delegate.markTagAsSelfClosing(),this.delegate.finishTag(),this.transitionTo("beforeData")):this.transitionTo("beforeAttributeName")},endTagOpen:function(){var a=this.consume();(a==="@"||a===":"||mr(a))&&(this.transitionTo("endTagName"),this.tagNameBuffer="",this.delegate.beginEndTag(),this.appendToTagName(a))}},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(e){this.state=e},t.prototype.tokenize=function(e){this.reset(),this.tokenizePart(e),this.tokenizeEOF()},t.prototype.tokenizePart=function(e){for(this.input+=Za(e);this.index<this.input.length;){var r=this.states[this.state];if(r!==void 0)r.call(this);else throw new Error("unhandled state "+this.state)}},t.prototype.tokenizeEOF=function(){this.flushData()},t.prototype.flushData=function(){this.state==="data"&&(this.delegate.finishData(),this.transitionTo("beforeData"))},t.prototype.peek=function(){return this.input.charAt(this.index)},t.prototype.consume=function(){var e=this.peek();return this.index++,e===`
15
- `?(this.line++,this.column=0):this.column++,e},t.prototype.consumeCharRef=function(){var e=this.input.indexOf(";",this.index);if(e!==-1){var r=this.input.slice(this.index,e),n=this.entityParser.parse(r);if(n){for(var a=r.length;a;)this.consume(),a--;return this.consume(),n}}},t.prototype.markTagStart=function(){this.delegate.tagOpen()},t.prototype.appendToTagName=function(e){this.tagNameBuffer+=e,this.delegate.appendToTagName(e)},t.prototype.isIgnoredEndTag=function(){var e=this.tagNameBuffer;return e==="title"&&this.input.substring(this.index,this.index+8)!=="</title>"||e==="style"&&this.input.substring(this.index,this.index+8)!=="</style>"||e==="script"&&this.input.substring(this.index,this.index+9)!=="<\/script>"},t}(),Be=new Set(["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]);function es(t){var e;return Be.has(t.toLowerCase())&&((e=t[0])==null?void 0:e.toLowerCase())===t[0]}var it=Object.freeze({line:1,column:0}),rs=Object.freeze({source:"(synthetic)",start:it,end:it}),Pt=Object.freeze({source:"(nonexistent)",start:it,end:it}),st=Object.freeze({source:"(broken)",start:it,end:it}),v=function(t){return t.CharPosition="CharPosition",t.HbsPosition="HbsPosition",t.InternalsSynthetic="InternalsSynthetic",t.NonExistent="NonExistent",t.Broken="Broken",t}({}),qt="MATCH_ANY",ke="IS_INVISIBLE",ns=class{constructor(t){w(this,"_whens");this._whens=t}first(t){for(let e of this._whens){let r=e.match(t);if(Bt(r))return r[0]}return null}},fr=class{constructor(){w(this,"_map",new Map)}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=ss(t),r=[],n=this._map.get(e),a=this._map.get(qt);return n&&r.push(n),a&&r.push(a),r}};function Jr(t){return t(new as).check()}var as=class{constructor(){w(this,"_whens",new fr)}check(){return(t,e)=>this.matchFor(t.kind,e.kind)(t,e)}matchFor(t,e){let r=this._whens.match(t);S(Bt(r),`no match defined for (${t}, ${e}) and no AnyMatch defined either`);let n=new ns(r).first(e);return S(n!==null,`no match defined for (${t}, ${e}) and no AnyMatch defined either`),n}when(t,e,r){return this._whens.get(t,()=>new fr).add(e,r),this}};function ss(t){switch(t){case v.Broken:case v.InternalsSynthetic:case v.NonExistent:return ke;default:return t}}var us=class xe{constructor(e){w(this,"chars");w(this,"loc");this.loc=e.loc,this.chars=e.chars}static synthetic(e){let r=I.synthetic(e);return new xe({loc:r,chars:e})}static load(e,r){return new xe({loc:I.load(e,r[1]),chars:r[0]})}getString(){return this.chars}serialize(){return[this.chars,this.loc.serialize()]}},I=class At{constructor(e){w(this,"isInvisible");this.data=e,this.isInvisible=e.kind!==v.CharPosition&&e.kind!==v.HbsPosition}static get NON_EXISTENT(){return new pt(v.NonExistent,Pt).wrap()}static load(e,r){if(typeof r=="number")return At.forCharPositions(e,r,r);if(typeof r=="string")return At.synthetic(r);if(Array.isArray(r))return At.forCharPositions(e,r[0],r[1]);if(r===v.NonExistent)return At.NON_EXISTENT;if(r===v.Broken)return At.broken(st);La(r)}static forHbsLoc(e,r){let n=new Ct(e,r.start),a=new Ct(e,r.end);return new We(e,{start:n,end:a},r).wrap()}static forCharPositions(e,r,n){let a=new It(e,r),s=new It(e,n);return new Ge(e,{start:a,end:s}).wrap()}static synthetic(e){return new pt(v.InternalsSynthetic,Pt,e).wrap()}static broken(e=st){return new pt(v.Broken,e).wrap()}getStart(){return this.data.getStart().wrap()}getEnd(){return this.data.getEnd().wrap()}get loc(){let e=this.data.toHbsSpan();return e===null?st:e.toHbsLoc()}get module(){return this.data.getModule()}get startPosition(){return this.loc.start}get endPosition(){return this.loc.end}toJSON(){return this.loc}withStart(e){return W(e.data,this.data.getEnd())}withEnd(e){return W(this.data.getStart(),e.data)}asString(){return this.data.asString()}toSlice(e){let r=this.data.asString();return new us({loc:this,chars:e||r})}get start(){return this.loc.start}set start(e){this.data.locDidUpdate({start:e})}get end(){return this.loc.end}set end(e){this.data.locDidUpdate({end:e})}get source(){return this.module}collapse(e){switch(e){case"start":return this.getStart().collapsed();case"end":return this.getEnd().collapsed()}}extend(e){return W(this.data.getStart(),e.data.getEnd())}serialize(){return this.data.serialize()}slice({skipStart:e=0,skipEnd:r=0}){return W(this.getStart().move(e).data,this.getEnd().move(-r).data)}sliceStartChars({skipStart:e=0,chars:r}){return W(this.getStart().move(e).data,this.getStart().move(e+r).data)}sliceEndChars({skipEnd:e=0,chars:r}){return W(this.getEnd().move(e-r).data,this.getStart().move(-e).data)}},Ge=class{constructor(t,e){w(this,"kind",v.CharPosition);w(this,"_locPosSpan",null);this.source=t,this.charPositions=e}wrap(){return new I(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=this._locPosSpan;if(t===null){let e=this.charPositions.start.toHbsPos(),r=this.charPositions.end.toHbsPos();e===null||r===null?t=this._locPosSpan=ot:t=this._locPosSpan=new We(this.source,{start:e,end:r})}return t===ot?null:t}serialize(){let{start:{charPos:t},end:{charPos:e}}=this.charPositions;return t===e?t:[t,e]}toCharPosSpan(){return this}},We=class{constructor(t,e,r=null){w(this,"kind",v.HbsPosition);w(this,"_charPosSpan",null);w(this,"_providedHbsLoc");this.source=t,this.hbsPositions=e,this._providedHbsLoc=r}serialize(){let t=this.toCharPosSpan();return t===null?v.Broken:t.wrap().serialize()}wrap(){return new I(this)}updateProvided(t,e){this._providedHbsLoc&&(this._providedHbsLoc[e]=t),this._charPosSpan=null,this._providedHbsLoc={start:t,end:t}}locDidUpdate({start:t,end:e}){t!==void 0&&(this.updateProvided(t,"start"),this.hbsPositions.start=new Ct(this.source,t,null)),e!==void 0&&(this.updateProvided(e,"end"),this.hbsPositions.end=new Ct(this.source,e,null))}asString(){let t=this.toCharPosSpan();return t===null?"":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=this._charPosSpan;if(t===null){let e=this.hbsPositions.start.toCharPos(),r=this.hbsPositions.end.toCharPos();if(e&&r)t=this._charPosSpan=new Ge(this.source,{start:e,end:r});else return t=this._charPosSpan=ot,null}return t===ot?null:t}},pt=class{constructor(t,e,r=null){this.kind=t,this.loc=e,this.string=r}serialize(){switch(this.kind){case v.Broken:case v.NonExistent:return this.kind;case v.InternalsSynthetic:return this.string||""}}wrap(){return new I(this)}asString(){return this.string||""}locDidUpdate({start:t,end:e}){t!==void 0&&(this.loc.start=t),e!==void 0&&(this.loc.end=e)}getModule(){return"an unknown module"}getStart(){return new Ne(this.kind,this.loc.start)}getEnd(){return new Ne(this.kind,this.loc.end)}toCharPosSpan(){return this}toHbsSpan(){return null}toHbsLoc(){return st}},W=Jr(t=>t.when(v.HbsPosition,v.HbsPosition,(e,r)=>new We(e.source,{start:e,end:r}).wrap()).when(v.CharPosition,v.CharPosition,(e,r)=>new Ge(e.source,{start:e,end:r}).wrap()).when(v.CharPosition,v.HbsPosition,(e,r)=>{let n=r.toCharPos();return n===null?new pt(v.Broken,st).wrap():W(e,n)}).when(v.HbsPosition,v.CharPosition,(e,r)=>{let n=e.toCharPos();return n===null?new pt(v.Broken,st).wrap():W(n,r)}).when(ke,qt,e=>new pt(e.kind,st).wrap()).when(qt,ke,(e,r)=>new pt(r.kind,st).wrap())),ot="BROKEN",re=class Te{static forHbsPos(e,r){return new Ct(e,r,null).wrap()}static broken(e=it){return new Ne(v.Broken,e).wrap()}constructor(e){this.data=e}get offset(){let e=this.data.toCharPos();return e===null?null:e.offset}eql(e){return is(this.data,e.data)}until(e){return W(this.data,e.data)}move(e){let r=this.data.toCharPos();if(r===null)return Te.broken();{let n=r.offset+e;return r.source.check(n)?new It(r.source,n).wrap():Te.broken()}}collapsed(){return W(this.data,this.data)}toJSON(){return this.data.toJSON()}},It=class{constructor(t,e){w(this,"kind",v.CharPosition);w(this,"_locPos",null);this.source=t,this.charPos=e}toCharPos(){return this}toJSON(){let t=this.toHbsPos();return t===null?it:t.toJSON()}wrap(){return new re(this)}get offset(){return this.charPos}toHbsPos(){let t=this._locPos;if(t===null){let e=this.source.hbsPosFor(this.charPos);e===null?this._locPos=t=ot:this._locPos=t=new Ct(this.source,e,this.charPos)}return t===ot?null:t}},Ct=class{constructor(t,e,r=null){w(this,"kind",v.HbsPosition);w(this,"_charPos");this.source=t,this.hbsPos=e,this._charPos=r===null?null:new It(t,r)}toCharPos(){let t=this._charPos;if(t===null){let e=this.source.charPosFor(this.hbsPos);e===null?this._charPos=t=ot:this._charPos=t=new It(this.source,e)}return t===ot?null:t}toJSON(){return this.hbsPos}wrap(){return new re(this)}toHbsPos(){return this}},Ne=class{constructor(t,e){this.kind=t,this.pos=e}toCharPos(){return null}toJSON(){return this.pos}wrap(){return new re(this)}get offset(){return null}},is=Jr(t=>t.when(v.HbsPosition,v.HbsPosition,({hbsPos:e},{hbsPos:r})=>e.column===r.column&&e.line===r.line).when(v.CharPosition,v.CharPosition,({charPos:e},{charPos:r})=>e===r).when(v.CharPosition,v.HbsPosition,({offset:e},r)=>{var n;return e===((n=r.toCharPos())==null?void 0:n.offset)}).when(v.HbsPosition,v.CharPosition,(e,{offset:r})=>{var n;return((n=e.toCharPos())==null?void 0:n.offset)===r}).when(qt,qt,()=>!1)),Ft=class Yr{static from(e,r={}){var n;return new Yr(e,(n=r.meta)==null?void 0:n.moduleName)}constructor(e,r="an unknown module"){this.source=e,this.module=r}check(e){return e>=0&&e<=this.source.length}slice(e,r){return this.source.slice(e,r)}offsetFor(e,r){return re.forHbsPos(this,{line:e,column:r})}spanFor({start:e,end:r}){return I.forHbsLoc(this,{start:{line:e.line,column:e.column},end:{line:r.line,column:r.column}})}hbsPosFor(e){let r=0,n=0;if(e>this.source.length)return null;for(;;){let a=this.source.indexOf(`
11
+ `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var p=this.next();return p||this.lex()},begin:function(p){this.conditionStack.push(p)},popState:function(){var p=this.conditionStack.length-1;return p>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(p){return p=this.conditionStack.length-1-Math.abs(p||0),p>=0?this.conditionStack[p]:"INITIAL"},pushState:function(p){this.begin(p)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(p,b,d,E){function o(_,c){return b.yytext=b.yytext.substring(_,b.yyleng-c+_)}switch(d){case 0:if(b.yytext.slice(-2)==="\\\\"?(o(0,1),this.begin("mu")):b.yytext.slice(-1)==="\\"?(o(0,1),this.begin("emu")):this.begin("mu"),b.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;case 3:return this.begin("raw"),15;case 4:return this.popState(),this.conditionStack[this.conditionStack.length-1]==="raw"?15:(o(5,9),18);case 5:return 15;case 6: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:return this.popState(),44;case 16:return this.popState(),44;case 17:return 34;case 18:return 39;case 19:return 52;case 20:return 48;case 21:this.unput(b.yytext),this.popState(),this.begin("com");break;case 22:return this.popState(),14;case 23:return 48;case 24:return 72;case 25:return 71;case 26:return 71;case 27:return 86;case 28:break;case 29:return this.popState(),55;case 30:return this.popState(),33;case 31:return b.yytext=o(1,2).replace(/\\"/g,'"'),79;case 32:return b.yytext=o(1,2).replace(/\\'/g,"'"),79;case 33:return 84;case 34:return 81;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 41:return 71;case 42:return b.yytext=b.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}}};return G}();ue.lexer=ln;function ie(){this.yy={}}return ie.prototype=ue,ue.Parser=ie,new ie}(),de=qa,me=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function je(t,e){var r=e&&e.loc,n,a,s,u;r&&(n=r.start.line,a=r.end.line,s=r.start.column,u=r.end.column,t+=" - "+n+":"+s);for(var i=Error.prototype.constructor.call(this,t),l=0;l<me.length;l++)this[me[l]]=i[me[l]];Error.captureStackTrace&&Error.captureStackTrace(this,je);try{r&&(this.lineNumber=n,this.endLineNumber=a,Object.defineProperty?(Object.defineProperty(this,"column",{value:s,enumerable:!0}),Object.defineProperty(this,"endColumn",{value:u,enumerable:!0})):(this.column=s,this.endColumn=u))}catch{}}je.prototype=new Error;var Et=je;function Kt(){this.parents=[]}Kt.prototype={constructor:Kt,mutating:!1,acceptKey:function(t,e){var r=this.accept(t[e]);if(this.mutating){if(r&&!Kt.prototype[r.type])throw new Et('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 Et(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 Et("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(e!==!1)return t}},Program:function(t){this.acceptArray(t.body)},MustacheStatement:Qt,Decorator:Qt,BlockStatement:pr,DecoratorBlock:pr,PartialStatement:dr,PartialBlockStatement:function(t){dr.call(this,t),this.acceptKey(t,"program")},ContentStatement:function(){},CommentStatement:function(){},SubExpression:Qt,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")}};function Qt(t){this.acceptRequired(t,"path"),this.acceptArray(t.params),this.acceptKey(t,"hash")}function pr(t){Qt.call(this,t),this.acceptKey(t,"program"),this.acceptKey(t,"inverse")}function dr(t){this.acceptRequired(t,"name"),this.acceptArray(t.params),this.acceptKey(t,"hash")}var Ia=Kt;function Q(t){t===void 0&&(t={}),this.options=t}Q.prototype=new Ia;Q.prototype.Program=function(t){var e=!this.options.ignoreStandalone,r=!this.isRootSeen;this.isRootSeen=!0;for(var n=t.body,a=0,s=n.length;a<s;a++){var u=n[a],i=this.accept(u);if(i){var l=Ce(n,a,r),g=Se(n,a,r),h=i.openStandalone&&l,m=i.closeStandalone&&g,A=i.inlineStandalone&&l&&g;i.close&&ht(n,a,!0),i.open&&at(n,a,!0),e&&A&&(ht(n,a),at(n,a)&&u.type==="PartialStatement"&&(u.indent=/([ \t]+$)/.exec(n[a-1].original)[1])),e&&h&&(ht((u.program||u.inverse).body),at(n,a)),e&&m&&(ht(n,a),at((u.inverse||u.program).body))}}return t};Q.prototype.BlockStatement=Q.prototype.DecoratorBlock=Q.prototype.PartialBlockStatement=function(t){this.accept(t.program),this.accept(t.inverse);var e=t.program||t.inverse,r=t.program&&t.inverse,n=r,a=r;if(r&&r.chained)for(n=r.body[0].program;a.chained;)a=a.body[a.body.length-1].program;var s={open:t.openStrip.open,close:t.closeStrip.close,openStandalone:Se(e.body),closeStandalone:Ce((n||e).body)};if(t.openStrip.close&&ht(e.body,null,!0),r){var u=t.inverseStrip;u.open&&at(e.body,null,!0),u.close&&ht(n.body,null,!0),t.closeStrip.open&&at(a.body,null,!0),!this.options.ignoreStandalone&&Ce(e.body)&&Se(n.body)&&(at(e.body),ht(n.body))}else t.closeStrip.open&&at(e.body,null,!0);return s};Q.prototype.Decorator=Q.prototype.MustacheStatement=function(t){return t.strip};Q.prototype.PartialStatement=Q.prototype.CommentStatement=function(t){var e=t.strip||{};return{inlineStandalone:!0,open:e.open,close:e.close}};function Ce(t,e,r){e===void 0&&(e=t.length);var n=t[e-1],a=t[e-2];if(!n)return r;if(n.type==="ContentStatement")return(a||!r?/\r?\n\s*?$/:/(^|\r?\n)\s*?$/).test(n.original)}function Se(t,e,r){e===void 0&&(e=-1);var n=t[e+1],a=t[e+2];if(!n)return r;if(n.type==="ContentStatement")return(a||!r?/^\s*?\r?\n/:/^\s*?(\r?\n|$)/).test(n.original)}function ht(t,e,r){var n=t[e==null?0:e+1];if(!(!n||n.type!=="ContentStatement"||!r&&n.rightStripped)){var a=n.value;n.value=n.value.replace(r?/^\s+/:/^[ \t]*\r?\n?/,""),n.rightStripped=n.value!==a}}function at(t,e,r){var n=t[e==null?t.length-1:e-1];if(!(!n||n.type!=="ContentStatement"||!r&&n.leftStripped)){var a=n.value;return n.value=n.value.replace(r?/\s+$/:/[ \t]+$/,""),n.leftStripped=n.value!==a,n.leftStripped}}var Oa=Q,Jt={};Pe(Jt,{SourceLocation:()=>Kr,id:()=>$a,prepareBlock:()=>za,prepareMustache:()=>Ha,preparePartialBlock:()=>Ga,preparePath:()=>Ua,prepareProgram:()=>ja,prepareRawBlock:()=>Ma,stripComment:()=>Ra,stripFlags:()=>Va});function Ge(t,e){if(e=e.path?e.path.original:e,t.path.original!==e){var r={loc:t.path.loc};throw new Et(t.path.original+" doesn't match "+e,r)}}function Kr(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 $a(t){return/^\[.*\]$/.test(t)?t.substring(1,t.length-1):t}function Va(t,e){return{open:t.charAt(2)==="~",close:e.charAt(e.length-3)==="~"}}function Ra(t){return t.replace(/^\{\{~?!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function Ua(t,e,r){r=this.locInfo(r);for(var n=t?"@":"",a=[],s=0,u=0,i=e.length;u<i;u++){var l=e[u].part,g=e[u].original!==l;if(n+=(e[u].separator||"")+l,!g&&(l===".."||l==="."||l==="this")){if(a.length>0)throw new Et("Invalid path: "+n,{loc:r});l===".."&&s++}else a.push(l)}return{type:"PathExpression",data:t,depth:s,parts:a,original:n,loc:r}}function Ha(t,e,r,n,a,s){var u=n.charAt(3)||n.charAt(2),i=u!=="{"&&u!=="&",l=/\*/.test(n);return{type:l?"Decorator":"MustacheStatement",path:t,params:e,hash:r,escaped:i,strip:a,loc:this.locInfo(s)}}function Ma(t,e,r,n){Ge(t,r),n=this.locInfo(n);var a={type:"Program",body:e,strip:{},loc:n};return{type:"BlockStatement",path:t.path,params:t.params,hash:t.hash,program:a,openStrip:{},inverseStrip:{},closeStrip:{},loc:n}}function za(t,e,r,n,a,s){n&&n.path&&Ge(t,n);var u=/\*/.test(t.open);e.blockParams=t.blockParams;var i,l;if(r){if(u)throw new Et("Unexpected inverse block on decorator",r);r.chain&&(r.program.body[0].closeStrip=n.strip),l=r.strip,i=r.program}return a&&(a=i,i=e,e=a),{type:u?"DecoratorBlock":"BlockStatement",path:t.path,params:t.params,hash:t.hash,program:e,inverse:i,openStrip:t.strip,inverseStrip:l,closeStrip:n&&n.strip,loc:this.locInfo(s)}}function ja(t,e){if(!e&&t.length){var r=t[0].loc,n=t[t.length-1].loc;r&&n&&(e={source:r.source,start:{line:r.start.line,column:r.start.column},end:{line:n.end.line,column:n.end.column}})}return{type:"Program",body:t,strip:{},loc:e}}function Ga(t,e,r,n){return Ge(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(n)}}var Qr={};for(jt in Jt)Object.prototype.hasOwnProperty.call(Jt,jt)&&(Qr[jt]=Jt[jt]);var jt;function we(t,e){if(t.type==="Program")return t;de.yy=Qr,de.yy.locInfo=function(n){return new Kr(e&&e.srcName,n)};var r=de.parse(t);return r}function mr(t,e){var r=we(t,e),n=new Oa(e);return n.accept(r)}var Wa={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:`
12
+ `,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:" ",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:"‌"},Ka=/^#[xX]([A-Fa-f0-9]+)$/,Qa=/^#([0-9]+)$/,Ja=/^([A-Za-z0-9]+)$/,Jr=function(){function t(e){this.named=e}return t.prototype.parse=function(e){if(e){var r=e.match(Ka);if(r)return String.fromCharCode(parseInt(r[1],16));if(r=e.match(Qa),r)return String.fromCharCode(parseInt(r[1],10));if(r=e.match(Ja),r)return this.named[r[1]]}},t}(),Ya=/[\t\n\f ]/,Xa=/[A-Za-z]/,Za=/\r\n?/g;function F(t){return Ya.test(t)}function fr(t){return Xa.test(t)}function ts(t){return t.replace(Za,`
13
+ `)}var es=function(){function t(e,r,n){n===void 0&&(n="precompile"),this.delegate=e,this.entityParser=r,this.mode=n,this.state="beforeData",this.line=-1,this.column=-1,this.input="",this.index=-1,this.tagNameBuffer="",this.states={beforeData:function(){var a=this.peek();if(a==="<"&&!this.isIgnoredEndTag())this.transitionTo("tagOpen"),this.markTagStart(),this.consume();else{if(this.mode==="precompile"&&a===`
14
+ `){var s=this.tagNameBuffer.toLowerCase();(s==="pre"||s==="textarea")&&this.consume()}this.transitionTo("data"),this.delegate.beginData()}},data:function(){var a=this.peek(),s=this.tagNameBuffer;a==="<"&&!this.isIgnoredEndTag()?(this.delegate.finishData(),this.transitionTo("tagOpen"),this.markTagStart(),this.consume()):a==="&"&&s!=="script"&&s!=="style"?(this.consume(),this.delegate.appendToData(this.consumeCharRef()||"&")):(this.consume(),this.delegate.appendToData(a))},tagOpen:function(){var a=this.consume();a==="!"?this.transitionTo("markupDeclarationOpen"):a==="/"?this.transitionTo("endTagOpen"):(a==="@"||a===":"||fr(a))&&(this.transitionTo("tagName"),this.tagNameBuffer="",this.delegate.beginStartTag(),this.appendToTagName(a))},markupDeclarationOpen:function(){var a=this.consume();if(a==="-"&&this.peek()==="-")this.consume(),this.transitionTo("commentStart"),this.delegate.beginComment();else{var s=a.toUpperCase()+this.input.substring(this.index,this.index+6).toUpperCase();s==="DOCTYPE"&&(this.consume(),this.consume(),this.consume(),this.consume(),this.consume(),this.consume(),this.transitionTo("doctype"),this.delegate.beginDoctype&&this.delegate.beginDoctype())}},doctype:function(){var a=this.consume();F(a)&&this.transitionTo("beforeDoctypeName")},beforeDoctypeName:function(){var a=this.consume();F(a)||(this.transitionTo("doctypeName"),this.delegate.appendToDoctypeName&&this.delegate.appendToDoctypeName(a.toLowerCase()))},doctypeName:function(){var a=this.consume();F(a)?this.transitionTo("afterDoctypeName"):a===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypeName&&this.delegate.appendToDoctypeName(a.toLowerCase())},afterDoctypeName:function(){var a=this.consume();if(!F(a))if(a===">")this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData");else{var s=a.toUpperCase()+this.input.substring(this.index,this.index+5).toUpperCase(),u=s.toUpperCase()==="PUBLIC",i=s.toUpperCase()==="SYSTEM";(u||i)&&(this.consume(),this.consume(),this.consume(),this.consume(),this.consume(),this.consume()),u?this.transitionTo("afterDoctypePublicKeyword"):i&&this.transitionTo("afterDoctypeSystemKeyword")}},afterDoctypePublicKeyword:function(){var a=this.peek();F(a)?(this.transitionTo("beforeDoctypePublicIdentifier"),this.consume()):a==='"'?(this.transitionTo("doctypePublicIdentifierDoubleQuoted"),this.consume()):a==="'"?(this.transitionTo("doctypePublicIdentifierSingleQuoted"),this.consume()):a===">"&&(this.consume(),this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData"))},doctypePublicIdentifierDoubleQuoted:function(){var a=this.consume();a==='"'?this.transitionTo("afterDoctypePublicIdentifier"):a===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypePublicIdentifier&&this.delegate.appendToDoctypePublicIdentifier(a)},doctypePublicIdentifierSingleQuoted:function(){var a=this.consume();a==="'"?this.transitionTo("afterDoctypePublicIdentifier"):a===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypePublicIdentifier&&this.delegate.appendToDoctypePublicIdentifier(a)},afterDoctypePublicIdentifier:function(){var a=this.consume();F(a)?this.transitionTo("betweenDoctypePublicAndSystemIdentifiers"):a===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):a==='"'?this.transitionTo("doctypeSystemIdentifierDoubleQuoted"):a==="'"&&this.transitionTo("doctypeSystemIdentifierSingleQuoted")},betweenDoctypePublicAndSystemIdentifiers:function(){var a=this.consume();F(a)||(a===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):a==='"'?this.transitionTo("doctypeSystemIdentifierDoubleQuoted"):a==="'"&&this.transitionTo("doctypeSystemIdentifierSingleQuoted"))},doctypeSystemIdentifierDoubleQuoted:function(){var a=this.consume();a==='"'?this.transitionTo("afterDoctypeSystemIdentifier"):a===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypeSystemIdentifier&&this.delegate.appendToDoctypeSystemIdentifier(a)},doctypeSystemIdentifierSingleQuoted:function(){var a=this.consume();a==="'"?this.transitionTo("afterDoctypeSystemIdentifier"):a===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypeSystemIdentifier&&this.delegate.appendToDoctypeSystemIdentifier(a)},afterDoctypeSystemIdentifier:function(){var a=this.consume();F(a)||a===">"&&(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData"))},commentStart:function(){var a=this.consume();a==="-"?this.transitionTo("commentStartDash"):a===">"?(this.delegate.finishComment(),this.transitionTo("beforeData")):(this.delegate.appendToCommentData(a),this.transitionTo("comment"))},commentStartDash:function(){var a=this.consume();a==="-"?this.transitionTo("commentEnd"):a===">"?(this.delegate.finishComment(),this.transitionTo("beforeData")):(this.delegate.appendToCommentData("-"),this.transitionTo("comment"))},comment:function(){var a=this.consume();a==="-"?this.transitionTo("commentEndDash"):this.delegate.appendToCommentData(a)},commentEndDash:function(){var a=this.consume();a==="-"?this.transitionTo("commentEnd"):(this.delegate.appendToCommentData("-"+a),this.transitionTo("comment"))},commentEnd:function(){var a=this.consume();a===">"?(this.delegate.finishComment(),this.transitionTo("beforeData")):(this.delegate.appendToCommentData("--"+a),this.transitionTo("comment"))},tagName:function(){var a=this.consume();F(a)?this.transitionTo("beforeAttributeName"):a==="/"?this.transitionTo("selfClosingStartTag"):a===">"?(this.delegate.finishTag(),this.transitionTo("beforeData")):this.appendToTagName(a)},endTagName:function(){var a=this.consume();F(a)?(this.transitionTo("beforeAttributeName"),this.tagNameBuffer=""):a==="/"?(this.transitionTo("selfClosingStartTag"),this.tagNameBuffer=""):a===">"?(this.delegate.finishTag(),this.transitionTo("beforeData"),this.tagNameBuffer=""):this.appendToTagName(a)},beforeAttributeName:function(){var a=this.peek();if(F(a)){this.consume();return}else a==="/"?(this.transitionTo("selfClosingStartTag"),this.consume()):a===">"?(this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):a==="="?(this.delegate.reportSyntaxError("attribute name cannot start with equals sign"),this.transitionTo("attributeName"),this.delegate.beginAttribute(),this.consume(),this.delegate.appendToAttributeName(a)):(this.transitionTo("attributeName"),this.delegate.beginAttribute())},attributeName:function(){var a=this.peek();F(a)?(this.transitionTo("afterAttributeName"),this.consume()):a==="/"?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("selfClosingStartTag")):a==="="?(this.transitionTo("beforeAttributeValue"),this.consume()):a===">"?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):a==='"'||a==="'"||a==="<"?(this.delegate.reportSyntaxError(a+" is not a valid character within attribute names"),this.consume(),this.delegate.appendToAttributeName(a)):(this.consume(),this.delegate.appendToAttributeName(a))},afterAttributeName:function(){var a=this.peek();if(F(a)){this.consume();return}else a==="/"?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("selfClosingStartTag")):a==="="?(this.consume(),this.transitionTo("beforeAttributeValue")):a===">"?(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(a))},beforeAttributeValue:function(){var a=this.peek();F(a)?this.consume():a==='"'?(this.transitionTo("attributeValueDoubleQuoted"),this.delegate.beginAttributeValue(!0),this.consume()):a==="'"?(this.transitionTo("attributeValueSingleQuoted"),this.delegate.beginAttributeValue(!0),this.consume()):a===">"?(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(a))},attributeValueDoubleQuoted:function(){var a=this.consume();a==='"'?(this.delegate.finishAttributeValue(),this.transitionTo("afterAttributeValueQuoted")):a==="&"?this.delegate.appendToAttributeValue(this.consumeCharRef()||"&"):this.delegate.appendToAttributeValue(a)},attributeValueSingleQuoted:function(){var a=this.consume();a==="'"?(this.delegate.finishAttributeValue(),this.transitionTo("afterAttributeValueQuoted")):a==="&"?this.delegate.appendToAttributeValue(this.consumeCharRef()||"&"):this.delegate.appendToAttributeValue(a)},attributeValueUnquoted:function(){var a=this.peek();F(a)?(this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("beforeAttributeName")):a==="/"?(this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("selfClosingStartTag")):a==="&"?(this.consume(),this.delegate.appendToAttributeValue(this.consumeCharRef()||"&")):a===">"?(this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):(this.consume(),this.delegate.appendToAttributeValue(a))},afterAttributeValueQuoted:function(){var a=this.peek();F(a)?(this.consume(),this.transitionTo("beforeAttributeName")):a==="/"?(this.consume(),this.transitionTo("selfClosingStartTag")):a===">"?(this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):this.transitionTo("beforeAttributeName")},selfClosingStartTag:function(){var a=this.peek();a===">"?(this.consume(),this.delegate.markTagAsSelfClosing(),this.delegate.finishTag(),this.transitionTo("beforeData")):this.transitionTo("beforeAttributeName")},endTagOpen:function(){var a=this.consume();(a==="@"||a===":"||fr(a))&&(this.transitionTo("endTagName"),this.tagNameBuffer="",this.delegate.beginEndTag(),this.appendToTagName(a))}},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(e){this.state=e},t.prototype.tokenize=function(e){this.reset(),this.tokenizePart(e),this.tokenizeEOF()},t.prototype.tokenizePart=function(e){for(this.input+=ts(e);this.index<this.input.length;){var r=this.states[this.state];if(r!==void 0)r.call(this);else throw new Error("unhandled state "+this.state)}},t.prototype.tokenizeEOF=function(){this.flushData()},t.prototype.flushData=function(){this.state==="data"&&(this.delegate.finishData(),this.transitionTo("beforeData"))},t.prototype.peek=function(){return this.input.charAt(this.index)},t.prototype.consume=function(){var e=this.peek();return this.index++,e===`
15
+ `?(this.line++,this.column=0):this.column++,e},t.prototype.consumeCharRef=function(){var e=this.input.indexOf(";",this.index);if(e!==-1){var r=this.input.slice(this.index,e),n=this.entityParser.parse(r);if(n){for(var a=r.length;a;)this.consume(),a--;return this.consume(),n}}},t.prototype.markTagStart=function(){this.delegate.tagOpen()},t.prototype.appendToTagName=function(e){this.tagNameBuffer+=e,this.delegate.appendToTagName(e)},t.prototype.isIgnoredEndTag=function(){var e=this.tagNameBuffer;return e==="title"&&this.input.substring(this.index,this.index+8)!=="</title>"||e==="style"&&this.input.substring(this.index,this.index+8)!=="</style>"||e==="script"&&this.input.substring(this.index,this.index+9)!=="<\/script>"},t}(),Be=new Set(["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]);function rs(t){var e;return Be.has(t.toLowerCase())&&((e=t[0])==null?void 0:e.toLowerCase())===t[0]}var it=Object.freeze({line:1,column:0}),ns=Object.freeze({source:"(synthetic)",start:it,end:it}),Pt=Object.freeze({source:"(nonexistent)",start:it,end:it}),st=Object.freeze({source:"(broken)",start:it,end:it}),v=function(t){return t.CharPosition="CharPosition",t.HbsPosition="HbsPosition",t.InternalsSynthetic="InternalsSynthetic",t.NonExistent="NonExistent",t.Broken="Broken",t}({}),qt="MATCH_ANY",ke="IS_INVISIBLE",as=class{constructor(t){w(this,"_whens");this._whens=t}first(t){for(let e of this._whens){let r=e.match(t);if(Bt(r))return r[0]}return null}},gr=class{constructor(){w(this,"_map",new Map)}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=us(t),r=[],n=this._map.get(e),a=this._map.get(qt);return n&&r.push(n),a&&r.push(a),r}};function Yr(t){return t(new ss).check()}var ss=class{constructor(){w(this,"_whens",new gr)}check(){return(t,e)=>this.matchFor(t.kind,e.kind)(t,e)}matchFor(t,e){let r=this._whens.match(t);S(Bt(r),`no match defined for (${t}, ${e}) and no AnyMatch defined either`);let n=new as(r).first(e);return S(n!==null,`no match defined for (${t}, ${e}) and no AnyMatch defined either`),n}when(t,e,r){return this._whens.get(t,()=>new gr).add(e,r),this}};function us(t){switch(t){case v.Broken:case v.InternalsSynthetic:case v.NonExistent:return ke;default:return t}}var is=class xe{constructor(e){w(this,"chars");w(this,"loc");this.loc=e.loc,this.chars=e.chars}static synthetic(e){let r=I.synthetic(e);return new xe({loc:r,chars:e})}static load(e,r){return new xe({loc:I.load(e,r[1]),chars:r[0]})}getString(){return this.chars}serialize(){return[this.chars,this.loc.serialize()]}},I=class At{constructor(e){w(this,"isInvisible");this.data=e,this.isInvisible=e.kind!==v.CharPosition&&e.kind!==v.HbsPosition}static get NON_EXISTENT(){return new pt(v.NonExistent,Pt).wrap()}static load(e,r){if(typeof r=="number")return At.forCharPositions(e,r,r);if(typeof r=="string")return At.synthetic(r);if(Array.isArray(r))return At.forCharPositions(e,r[0],r[1]);if(r===v.NonExistent)return At.NON_EXISTENT;if(r===v.Broken)return At.broken(st);_a(r)}static forHbsLoc(e,r){let n=new Ct(e,r.start),a=new Ct(e,r.end);return new Ke(e,{start:n,end:a},r).wrap()}static forCharPositions(e,r,n){let a=new It(e,r),s=new It(e,n);return new We(e,{start:a,end:s}).wrap()}static synthetic(e){return new pt(v.InternalsSynthetic,Pt,e).wrap()}static broken(e=st){return new pt(v.Broken,e).wrap()}getStart(){return this.data.getStart().wrap()}getEnd(){return this.data.getEnd().wrap()}get loc(){let e=this.data.toHbsSpan();return e===null?st:e.toHbsLoc()}get module(){return this.data.getModule()}get startPosition(){return this.loc.start}get endPosition(){return this.loc.end}toJSON(){return this.loc}withStart(e){return W(e.data,this.data.getEnd())}withEnd(e){return W(this.data.getStart(),e.data)}asString(){return this.data.asString()}toSlice(e){let r=this.data.asString();return new is({loc:this,chars:e||r})}get start(){return this.loc.start}set start(e){this.data.locDidUpdate({start:e})}get end(){return this.loc.end}set end(e){this.data.locDidUpdate({end:e})}get source(){return this.module}collapse(e){switch(e){case"start":return this.getStart().collapsed();case"end":return this.getEnd().collapsed()}}extend(e){return W(this.data.getStart(),e.data.getEnd())}serialize(){return this.data.serialize()}slice({skipStart:e=0,skipEnd:r=0}){return W(this.getStart().move(e).data,this.getEnd().move(-r).data)}sliceStartChars({skipStart:e=0,chars:r}){return W(this.getStart().move(e).data,this.getStart().move(e+r).data)}sliceEndChars({skipEnd:e=0,chars:r}){return W(this.getEnd().move(e-r).data,this.getStart().move(-e).data)}},We=class{constructor(t,e){w(this,"kind",v.CharPosition);w(this,"_locPosSpan",null);this.source=t,this.charPositions=e}wrap(){return new I(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=this._locPosSpan;if(t===null){let e=this.charPositions.start.toHbsPos(),r=this.charPositions.end.toHbsPos();e===null||r===null?t=this._locPosSpan=ot:t=this._locPosSpan=new Ke(this.source,{start:e,end:r})}return t===ot?null:t}serialize(){let{start:{charPos:t},end:{charPos:e}}=this.charPositions;return t===e?t:[t,e]}toCharPosSpan(){return this}},Ke=class{constructor(t,e,r=null){w(this,"kind",v.HbsPosition);w(this,"_charPosSpan",null);w(this,"_providedHbsLoc");this.source=t,this.hbsPositions=e,this._providedHbsLoc=r}serialize(){let t=this.toCharPosSpan();return t===null?v.Broken:t.wrap().serialize()}wrap(){return new I(this)}updateProvided(t,e){this._providedHbsLoc&&(this._providedHbsLoc[e]=t),this._charPosSpan=null,this._providedHbsLoc={start:t,end:t}}locDidUpdate({start:t,end:e}){t!==void 0&&(this.updateProvided(t,"start"),this.hbsPositions.start=new Ct(this.source,t,null)),e!==void 0&&(this.updateProvided(e,"end"),this.hbsPositions.end=new Ct(this.source,e,null))}asString(){let t=this.toCharPosSpan();return t===null?"":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=this._charPosSpan;if(t===null){let e=this.hbsPositions.start.toCharPos(),r=this.hbsPositions.end.toCharPos();if(e&&r)t=this._charPosSpan=new We(this.source,{start:e,end:r});else return t=this._charPosSpan=ot,null}return t===ot?null:t}},pt=class{constructor(t,e,r=null){this.kind=t,this.loc=e,this.string=r}serialize(){switch(this.kind){case v.Broken:case v.NonExistent:return this.kind;case v.InternalsSynthetic:return this.string||""}}wrap(){return new I(this)}asString(){return this.string||""}locDidUpdate({start:t,end:e}){t!==void 0&&(this.loc.start=t),e!==void 0&&(this.loc.end=e)}getModule(){return"an unknown module"}getStart(){return new Ne(this.kind,this.loc.start)}getEnd(){return new Ne(this.kind,this.loc.end)}toCharPosSpan(){return this}toHbsSpan(){return null}toHbsLoc(){return st}},W=Yr(t=>t.when(v.HbsPosition,v.HbsPosition,(e,r)=>new Ke(e.source,{start:e,end:r}).wrap()).when(v.CharPosition,v.CharPosition,(e,r)=>new We(e.source,{start:e,end:r}).wrap()).when(v.CharPosition,v.HbsPosition,(e,r)=>{let n=r.toCharPos();return n===null?new pt(v.Broken,st).wrap():W(e,n)}).when(v.HbsPosition,v.CharPosition,(e,r)=>{let n=e.toCharPos();return n===null?new pt(v.Broken,st).wrap():W(n,r)}).when(ke,qt,e=>new pt(e.kind,st).wrap()).when(qt,ke,(e,r)=>new pt(r.kind,st).wrap())),ot="BROKEN",re=class Te{static forHbsPos(e,r){return new Ct(e,r,null).wrap()}static broken(e=it){return new Ne(v.Broken,e).wrap()}constructor(e){this.data=e}get offset(){let e=this.data.toCharPos();return e===null?null:e.offset}eql(e){return os(this.data,e.data)}until(e){return W(this.data,e.data)}move(e){let r=this.data.toCharPos();if(r===null)return Te.broken();{let n=r.offset+e;return r.source.check(n)?new It(r.source,n).wrap():Te.broken()}}collapsed(){return W(this.data,this.data)}toJSON(){return this.data.toJSON()}},It=class{constructor(t,e){w(this,"kind",v.CharPosition);w(this,"_locPos",null);this.source=t,this.charPos=e}toCharPos(){return this}toJSON(){let t=this.toHbsPos();return t===null?it:t.toJSON()}wrap(){return new re(this)}get offset(){return this.charPos}toHbsPos(){let t=this._locPos;if(t===null){let e=this.source.hbsPosFor(this.charPos);e===null?this._locPos=t=ot:this._locPos=t=new Ct(this.source,e,this.charPos)}return t===ot?null:t}},Ct=class{constructor(t,e,r=null){w(this,"kind",v.HbsPosition);w(this,"_charPos");this.source=t,this.hbsPos=e,this._charPos=r===null?null:new It(t,r)}toCharPos(){let t=this._charPos;if(t===null){let e=this.source.charPosFor(this.hbsPos);e===null?this._charPos=t=ot:this._charPos=t=new It(this.source,e)}return t===ot?null:t}toJSON(){return this.hbsPos}wrap(){return new re(this)}toHbsPos(){return this}},Ne=class{constructor(t,e){this.kind=t,this.pos=e}toCharPos(){return null}toJSON(){return this.pos}wrap(){return new re(this)}get offset(){return null}},os=Yr(t=>t.when(v.HbsPosition,v.HbsPosition,({hbsPos:e},{hbsPos:r})=>e.column===r.column&&e.line===r.line).when(v.CharPosition,v.CharPosition,({charPos:e},{charPos:r})=>e===r).when(v.CharPosition,v.HbsPosition,({offset:e},r)=>{var n;return e===((n=r.toCharPos())==null?void 0:n.offset)}).when(v.HbsPosition,v.CharPosition,(e,{offset:r})=>{var n;return((n=e.toCharPos())==null?void 0:n.offset)===r}).when(qt,qt,()=>!1)),Ft=class Xr{static from(e,r={}){var n;return new Xr(e,(n=r.meta)==null?void 0:n.moduleName)}constructor(e,r="an unknown module"){this.source=e,this.module=r}check(e){return e>=0&&e<=this.source.length}slice(e,r){return this.source.slice(e,r)}offsetFor(e,r){return re.forHbsPos(this,{line:e,column:r})}spanFor({start:e,end:r}){return I.forHbsLoc(this,{start:{line:e.line,column:e.column},end:{line:r.line,column:r.column}})}hbsPosFor(e){let r=0,n=0;if(e>this.source.length)return null;for(;;){let a=this.source.indexOf(`
16
16
  `,n);if(e<=a||a===-1)return{line:r+1,column:e-n};r+=1,n=a+1}}charPosFor(e){let{line:r,column:n}=e,a=this.source.length,s=0,u=0;for(;u<a;){let i=this.source.indexOf(`
17
17
  `,u);if(i===-1&&(i=this.source.length),s===r-1)return u+n>i?i:u+n;if(i===-1)return 0;s+=1,u=i+1}return a}};function D(t,e){let{module:r,loc:n}=e,{line:a,column:s}=n.start,u=e.asString(),i=u?`
18
18
 
@@ -22,9 +22,9 @@ Expecting `+Mt.join(", ")+", got '"+(this.terminals_[q]||q)+"'":pe="Parse error
22
22
  | `)}
23
23
  |
24
24
 
25
- `:"",l=new Error(`${t}: ${i}(error occurred in '${r}' @ line ${a} : column ${s})`);return l.name="SyntaxError",l.location=e,l.code=u,l}var os={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"]},Ke=function(){t.prototype=Object.create(Error.prototype),t.prototype.constructor=t;function t(e,r,n,a){let s=Error.call(this,e);this.key=a,this.message=e,this.node=r,this.parent=n,s.stack&&(this.stack=s.stack)}return t}();function gr(t,e,r){return new Ke("Cannot remove a node unless it is part of an array",t,e,r)}function ls(t,e,r){return new Ke("Cannot replace a node with multiple nodes unless it is part of an array",t,e,r)}function br(t,e){return new Ke("Replacing and removing in key handlers is not yet supported.",t,null,e)}var ne=class{constructor(t,e=null,r=null){w(this,"node");w(this,"parent");w(this,"parentKey");this.node=t,this.parent=e,this.parentKey=r}get parentNode(){return this.parent?this.parent.node:null}parents(){return{[Symbol.iterator]:()=>new cs(this)}}},cs=class{constructor(t){w(this,"path");this.path=t}next(){return this.path.parent?(this.path=this.path.parent,{done:!1,value:this.path}):{done:!0,value:null}}};function Xr(t){return typeof t=="function"?t:t.enter}function Zr(t){if(typeof t!="function")return t.exit}function hs(t,e){let r=typeof t!="function"?t.keys:void 0;if(r===void 0)return;let n=r[e];return n!==void 0?n:r.All}function ps(t,e){if(t.Program&&(e==="Template"&&!t.Template||e==="Block"&&!t.Block))return M(`The 'Program' visitor node is deprecated. Use 'Template' or 'Block' instead (node was '${e}') `),t.Program;let r=t[e];return r!==void 0?r:t.All}function ae(t,e){let{node:r,parent:n,parentKey:a}=e,s=ps(t,r.type),u,i;s!==void 0&&(u=Xr(s),i=Zr(s));let l;if(u!==void 0&&(l=u(r,e)),l!=null)if(JSON.stringify(r)===JSON.stringify(l))l=void 0;else{if(Array.isArray(l))return tn(t,l,n,a),l;{let g=new ne(l,n,a);return ae(t,g)||l}}if(l===void 0){let g=os[r.type];for(let h=0;h<g.length;h++){let m=g[h];ms(t,s,e,m)}i!==void 0&&(l=i(r,e))}return l}function ds(t,e){return t[e]}function yr(t,e,r){t[e]=r}function ms(t,e,r,n){let{node:a}=r,s=ds(a,n);if(!s)return;let u,i;if(e!==void 0){let l=hs(e,n);l!==void 0&&(u=Xr(l),i=Zr(l))}if(u!==void 0&&u(a,n)!==void 0)throw br(a,n);if(Array.isArray(s))tn(t,s,r,n);else{let l=new ne(s,r,n),g=ae(t,l);g!==void 0&&fs(a,n,s,g)}if(i!==void 0&&i(a,n)!==void 0)throw br(a,n)}function tn(t,e,r,n){for(let a=0;a<e.length;a++){let s=Ue(e[a]),u=new ne(s,r,n),i=ae(t,u);i!==void 0&&(a+=gs(e,a,i)-1)}}function fs(t,e,r,n){if(n===null)throw gr(r,t,e);if(Array.isArray(n))if(n.length===1)yr(t,e,n[0]);else throw n.length===0?gr(r,t,e):ls(r,t,e);else yr(t,e,n)}function gs(t,e,r){return r===null?(t.splice(e,1),0):Array.isArray(r)?(t.splice(e,1,...r),r.length):(t.splice(e,1,r),1)}function bs(t,e){let r=new ne(t);ae(e,r)}function ys(t){switch(t.type){case"Block":case"Template":return t.body;case"ElementNode":return t.children}}function vt(t,e){ys(t).push(e)}function en(t){return t.type==="StringLiteral"||t.type==="BooleanLiteral"||t.type==="NumberLiteral"||t.type==="NullLiteral"||t.type==="UndefinedLiteral"}function As(t){return t.type==="UndefinedLiteral"?"undefined":JSON.stringify(t.value)}var fe;function ge(){return fe||(fe=new Ft("","(synthetic)")),fe}function Ds(t,e=[],r=$t([]),n=!1,a,s){return f.mustache({path:ut(t),params:e,hash:r,trusting:n,strip:s,loc:k(a||null)})}function Es(t,e,r,n,a=null,s,u,i,l){let g,h=null;return n.type==="Template"?(M("b.program is deprecated. Use b.blockItself instead."),g=f.blockItself({params:nn(n.blockParams),body:n.body,loc:n.loc})):g=n,(a==null?void 0:a.type)==="Template"?(M("b.program is deprecated. Use b.blockItself instead."),S(a.blockParams.length===0,"{{else}} block cannot have block params"),h=f.blockItself({params:[],body:a.body,loc:a.loc})):h=a,f.block({path:ut(t),params:e||[],hash:r||$t([]),defaultBlock:g,elseBlock:h,loc:k(s||null),openStrip:u,inverseStrip:i,closeStrip:l})}function vs(t,e,r,n){return f.elementModifier({path:ut(t),params:e||[],hash:r||$t([]),loc:k(n||null)})}function Cs(t,e){return f.comment({value:t,loc:k(e||null)})}function Ss(t,e){return f.mustacheComment({value:t,loc:k(e||null)})}function ws(t,e){if(!Bt(t))throw new Error("b.concat requires at least one part");return f.concat({parts:t,loc:k(e||null)})}function Bs(t,e={}){let{attrs:r,blockParams:n,modifiers:a,comments:s,children:u,openTag:i,closeTag:l,loc:g}=e,h,m;typeof t=="string"?t.endsWith("/")?(h=ut(t.slice(0,-1)),m=!0):h=ut(t):"type"in t?(S(t.type==="PathExpression",`Invalid tag type ${t.type}`),h=t):"path"in t?(S(t.path.type==="PathExpression",`Invalid tag type ${t.path.type}`),h=t.path,m=t.selfClosing):(h=ut(t.name),m=t.selfClosing),m&&S(l==null,"Cannot build a self-closing tag with a closeTag source location");let A=n==null?void 0:n.map(C=>typeof C=="string"?rn(C):C),y=null;return l?y=k(l||null):l===void 0&&(y=m||es(h.original)?null:k(null)),f.element({path:h,selfClosing:m||!1,attributes:r||[],params:A||[],modifiers:a||[],comments:s||[],children:u||[],openTag:k(i||null),closeTag:y,loc:k(g||null)})}function ks(t,e,r){return f.attr({name:t,value:e,loc:k(r||null)})}function xs(t="",e){return f.text({chars:t,loc:k(e||null)})}function Ts(t,e=[],r=$t([]),n){return f.sexpr({path:ut(t),params:e,hash:r,loc:k(n||null)})}function Ns(t,e){let[r,...n]=_t(t.split(".")),a=f.head({original:r,loc:k(e||null)});return f.path({head:a,tail:n,loc:k(e||null)})}function Ps(t){return f.this({loc:k(t||null)})}function Fs(t,e){return f.atName({name:t,loc:k(e||null)})}function rn(t,e){return f.var({name:t,loc:k(e||null)})}function Ls(t,e){return f.head({original:t,loc:k(e||null)})}function _s(t,e=[],r){return f.path({head:t,tail:e,loc:k(r||null)})}function ut(t,e){let r=k(e||null);if(typeof t!="string"){if("type"in t)return t;{S(t.head.indexOf(".")===-1,"builder.path({ head, tail }) should not be called with a head with dots in it");let{head:s,tail:u}=t;return f.path({head:f.head({original:s,loc:r.sliceStartChars({chars:s.length})}),tail:u,loc:k(e||null)})}}let{head:n,tail:a}=Ns(t,r);return f.path({head:n,tail:a,loc:r})}function Yt(t,e,r){return f.literal({type:t,value:e,loc:k(r||null)})}function $t(t=[],e){return f.hash({pairs:t,loc:k(e||null)})}function qs(t,e,r){return f.pair({key:t,value:e,loc:k(r||null)})}function Is(t,e,r){return M("b.program is deprecated. Use b.template or b.blockItself instead."),e&&e.length?an(t,e,!1,r):sn(t,[],r)}function nn(t){return t.map(e=>typeof e=="string"?f.var({name:e,loc:I.synthetic(e)}):e)}function an(t=[],e=[],r=!1,n){return f.blockItself({body:t,params:nn(e),chained:r,loc:k(n||null)})}function sn(t=[],e=[],r){return f.template({body:t,blockParams:e,loc:k(r||null)})}function Os(t,e){return f.pos({line:t,column:e})}function k(...t){if(t.length===1){let e=t[0];return e&&typeof e=="object"?I.forHbsLoc(ge(),e):I.forHbsLoc(ge(),rs)}else{let[e,r,n,a,s]=t,u=s?new Ft("",s):ge();return I.forHbsLoc(u,{start:{line:e,column:r},end:{line:n||e,column:a||r}})}}var $s={mustache:Ds,block:Es,comment:Cs,mustacheComment:Ss,element:Bs,elementModifier:vs,attr:ks,text:xs,sexpr:Ts,concat:ws,hash:$t,pair:qs,literal:Yt,program:Is,blockItself:an,template:sn,loc:k,pos:Os,path:ut,fullPath:_s,head:Ls,at:Fs,var:rn,this:Ps,string:be("StringLiteral"),boolean:be("BooleanLiteral"),number:be("NumberLiteral"),undefined(){return Yt("UndefinedLiteral",void 0)},null(){return Yt("NullLiteral",null)}};function be(t){return function(e,r){return Yt(t,e,r)}}function Vs({path:t,params:e,hash:r,trusting:n,strip:a,loc:s}){let u={type:"MustacheStatement",path:t,params:e,hash:r,trusting:n,strip:a,loc:s};return Object.defineProperty(u,"escaped",{enumerable:!1,get(){return M("The escaped property on mustache nodes is deprecated, use trusting instead"),!this.trusting},set(i){M("The escaped property on mustache nodes is deprecated, use trusting instead"),this.trusting=!i}}),u}function Rs({head:t,tail:e,loc:r}){let n={type:"PathExpression",head:t,tail:e,get original(){return[this.head.original,...this.tail].join(".")},set original(a){let[s,...u]=_t(a.split("."));this.head=$s.head(s,this.head.loc),this.tail=u},loc:r};return Object.defineProperty(n,"parts",{enumerable:!1,get(){M("The parts property on path nodes is deprecated, use head and tail instead");let a=_t(this.original.split("."));return a[0]==="this"?a.shift():a[0].startsWith("@")&&(a[0]=a[0].slice(1)),Object.freeze(a)},set(a){var s;M("The parts property on mustache nodes is deprecated, use head and tail instead");let u=[...a];u[0]!=="this"&&!((s=u[0])!=null&&s.startsWith("@"))&&(this.head.type==="ThisHead"?u.unshift("this"):this.head.type==="AtHead"&&(u[0]=`@${u[0]}`)),this.original=u.join(".")}}),Object.defineProperty(n,"this",{enumerable:!1,get(){return M("The this property on path nodes is deprecated, use head.type instead"),this.head.type==="ThisHead"}}),Object.defineProperty(n,"data",{enumerable:!1,get(){return M("The data property on path nodes is deprecated, use head.type instead"),this.head.type==="AtHead"}}),n}function Us({type:t,value:e,loc:r}){let n={type:t,value:e,loc:r};return Object.defineProperty(n,"original",{enumerable:!1,get(){return M("The original property on literal nodes is deprecated, use value instead"),this.value},set(a){M("The original property on literal nodes is deprecated, use value instead"),this.value=a}}),n}var Gt={close:!1,open:!1},Hs=class{pos({line:t,column:e}){return{line:t,column:e}}blockItself({body:t,params:e,chained:r=!1,loc:n}){return{type:"Block",body:t,params:e,get blockParams(){return this.params.map(a=>a.name)},set blockParams(a){this.params=a.map(s=>f.var({name:s,loc:I.synthetic(s)}))},chained:r,loc:n}}template({body:t,blockParams:e,loc:r}){return{type:"Template",body:t,blockParams:e,loc:r}}mustache({path:t,params:e,hash:r,trusting:n,loc:a,strip:s=Gt}){return Vs({path:t,params:e,hash:r,trusting:n,strip:s,loc:a})}block({path:t,params:e,hash:r,defaultBlock:n,elseBlock:a=null,loc:s,openStrip:u=Gt,inverseStrip:i=Gt,closeStrip:l=Gt}){return{type:"BlockStatement",path:t,params:e,hash:r,program:n,inverse:a,loc:s,openStrip:u,inverseStrip:i,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:n,params:a,comments:s,children:u,openTag:i,closeTag:l,loc:g}){let h=e;return{type:"ElementNode",path:t,attributes:r,modifiers:n,params:a,comments:s,children:u,openTag:i,closeTag:l,loc:g,get tag(){return this.path.original},set tag(m){this.path.original=m},get blockParams(){return this.params.map(m=>m.name)},set blockParams(m){this.params=m.map(A=>f.var({name:A,loc:I.synthetic(A)}))},get selfClosing(){return h},set selfClosing(m){h=m,m?this.closeTag=null:this.closeTag=I.synthetic(`</${this.tag}>`)}}}elementModifier({path:t,params:e,hash:r,loc:n}){return{type:"ElementModifierStatement",path:t,params:e,hash:r,loc:n}}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:n}){return{type:"SubExpression",path:t,params:e,hash:r,loc:n}}path({head:t,tail:e,loc:r}){return Rs({head:t,tail:e,loc:r})}head({original:t,loc:e}){return t==="this"?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="",n={type:"AtHead",get name(){return r},set name(a){S(a[0]==="@","call builders.at() with a string that starts with '@'"),S(a.indexOf(".")===-1,"builder.at() should not be called with a name with dots in it"),r=a},get original(){return this.name},set original(a){this.name=a},loc:e};return n.name=t,n}var({name:t,loc:e}){let r="",n={type:"VarHead",get name(){return r},set name(a){S(a!=="this","You called builders.var() with 'this'. Call builders.this instead"),S(a[0]!=="@",`You called builders.var() with '${t}'. Call builders.at('${t}') instead`),S(a.indexOf(".")===-1,"builder.var() should not be called with a name with dots in it"),r=a},get original(){return this.name},set original(a){this.name=a},loc:e};return n.name=t,n}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 Us({type:t,value:e,loc:r})}},f=new Hs,Ms=class{constructor(t,e=new Qr(Ga),r="precompile"){w(this,"elementStack",[]);w(this,"lines");w(this,"source");w(this,"currentAttribute",null);w(this,"currentNode",null);w(this,"tokenizer");this.source=t,this.lines=t.source.split(/\r\n?|\n/u),this.tokenizer=new ts(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 Gr({},t,{loc:t.start.until(this.offset())})}get currentAttr(){return Sa(this.currentAttribute,"expected attribute")}get currentTag(){let t=this.currentNode;return S(t&&(t.type==="StartTag"||t.type==="EndTag"),"expected tag"),t}get currentStartTag(){let t=this.currentNode;return S(t&&t.type==="StartTag","expected start tag"),t}get currentEndTag(){let t=this.currentNode;return S(t&&t.type==="EndTag","expected end tag"),t}get currentComment(){let t=this.currentNode;return S(t&&t.type==="CommentStatement","expected a comment"),t}get currentData(){let t=this.currentNode;return S(t&&t.type==="TextNode","expected a text node"),t}acceptNode(t){return this[t.type](t)}currentElement(){return He(_t(this.elementStack))}sourceForNode(t,e){let r=t.loc.start.line-1,n=r-1,a=t.loc.start.column,s=[],u,i,l;for(e?(i=e.loc.end.line-1,l=e.loc.end.column):(i=t.loc.end.line-1,l=t.loc.end.column);n<i;)n++,u=Ue(this.lines[n]),n===r?r===i?s.push(u.slice(a,l)):s.push(u.slice(a)):n===i?s.push(u.slice(0,l)):s.push(u);return s.join(`
26
- `)}},Ar="beforeAttributeName",zs="attributeValueUnquoted",js=class extends Ms{constructor(){super(...arguments);w(this,"pendingError",null)}parse(e,r){var n;let a=f.template({body:[],blockParams:r,loc:this.source.spanFor(e.loc)}),s=this.parseProgram(a,e);return(n=this.pendingError)==null||n.eof(s.loc.getEnd()),s}Program(e,r){S(Array.isArray(r),"[BUG] Program in parser unexpectedly called without block params");let n=f.blockItself({body:[],params:r,chained:e.chained,loc:this.source.spanFor(e.loc)});return this.parseProgram(n,e)}parseProgram(e,r){if(r.body.length===0)return e;let n;try{this.elementStack.push(e);for(let a of r.body)this.acceptNode(a)}finally{n=this.elementStack.pop()}if(e!==n){if((n==null?void 0:n.type)==="ElementNode")throw D(`Unclosed element \`${n.tag}\``,n.loc);S(n!==void 0,"[BUG] empty parser elementStack"),S(!1,`[BUG] mismatched parser elementStack node: ${e.type}`)}return e}BlockStatement(e){var r;if(this.tokenizer.state==="comment"){this.appendToCommentData(this.sourceForNode(e));return}if(this.tokenizer.state!=="data"&&this.tokenizer.state!=="beforeData")throw D("A block may only be used inside an HTML element or another block.",this.source.spanFor(e.loc));let{path:n,params:a,hash:s}=ye(this,e),u=this.source.spanFor(e.loc),i=[];if((r=e.program.blockParams)!=null&&r.length){let A=s.loc.collapse("end");e.program.loc?A=A.withEnd(this.source.spanFor(e.program.loc).getStart()):e.program.body[0]?A=A.withEnd(this.source.spanFor(e.program.body[0].loc).getStart()):A=A.withEnd(u.getEnd());let y=A.asString(),C=y.indexOf("|")+1,T=y.indexOf("|",C);for(let x of e.program.blockParams){let B,U;C>=T?B=-1:B=y.indexOf(x,C),B===-1||B+x.length>T?(C=T,U=this.source.spanFor(Pt)):(C=B,U=A.sliceStartChars({skipStart:C,chars:x.length}),C+=x.length),i.push(f.var({name:x,loc:U}))}}e.program.loc||(e.program.loc=Pt),e.inverse&&!e.inverse.loc&&(e.inverse.loc=Pt);let l=this.Program(e.program,i),g=e.inverse?this.Program(e.inverse,[]):null,h=f.block({path:n,params:a,hash:s,defaultBlock:l,elseBlock:g,loc:this.source.spanFor(e.loc),openStrip:e.openStrip,inverseStrip:e.inverseStrip,closeStrip:e.closeStrip}),m=this.currentElement();vt(m,h)}MustacheStatement(e){var r;(r=this.pendingError)==null||r.mustache(this.source.spanFor(e.loc));let{tokenizer:n}=this;if(n.state==="comment"){this.appendToCommentData(this.sourceForNode(e));return}let a,{escaped:s,loc:u,strip:i}=e;if("original"in e.path&&e.path.original==="...attributes")throw D("Illegal use of ...attributes",this.source.spanFor(e.loc));if(en(e.path))a=f.mustache({path:this.acceptNode(e.path),params:[],hash:f.hash({pairs:[],loc:this.source.spanFor(e.path.loc).collapse("end")}),trusting:!s,loc:this.source.spanFor(u),strip:i});else{let{path:l,params:g,hash:h}=ye(this,e);a=f.mustache({path:l,params:g,hash:h,trusting:!s,loc:this.source.spanFor(u),strip:i})}switch(n.state){case"tagOpen":case"tagName":throw D("Cannot use mustaches in an elements tagname",a.loc);case"beforeAttributeName":Ae(this.currentStartTag,a);break;case"attributeName":case"afterAttributeName":this.beginAttributeValue(!1),this.finishAttributeValue(),Ae(this.currentStartTag,a),n.transitionTo(Ar);break;case"afterAttributeValueQuoted":Ae(this.currentStartTag,a),n.transitionTo(Ar);break;case"beforeAttributeValue":this.beginAttributeValue(!1),this.appendDynamicAttributeValuePart(a),n.transitionTo(zs);break;case"attributeValueDoubleQuoted":case"attributeValueSingleQuoted":case"attributeValueUnquoted":this.appendDynamicAttributeValuePart(a);break;default:vt(this.currentElement(),a)}return a}appendDynamicAttributeValuePart(e){this.finalizeTextPart();let r=this.currentAttr;r.isDynamic=!0,r.parts.push(e)}finalizeTextPart(){let e=this.currentAttr.currentPart;e!==null&&(this.currentAttr.parts.push(e),this.startTextPart())}startTextPart(){this.currentAttr.currentPart=null}ContentStatement(e){Ws(this.tokenizer,e),this.tokenizer.tokenizePart(e.value),this.tokenizer.flushData()}CommentStatement(e){let{tokenizer:r}=this;if(r.state==="comment")return this.appendToCommentData(this.sourceForNode(e)),null;let{value:n,loc:a}=e,s=f.mustacheComment({value:n,loc:this.source.spanFor(a)});switch(r.state){case"beforeAttributeName":case"afterAttributeName":this.currentStartTag.comments.push(s);break;case"beforeData":case"data":vt(this.currentElement(),s);break;default:throw D(`Using a Handlebars comment when in the \`${r.state}\` state is not supported`,this.source.spanFor(e.loc))}return s}PartialStatement(e){throw D("Handlebars partials are not supported",this.source.spanFor(e.loc))}PartialBlockStatement(e){throw D("Handlebars partial blocks are not supported",this.source.spanFor(e.loc))}Decorator(e){throw D("Handlebars decorators are not supported",this.source.spanFor(e.loc))}DecoratorBlock(e){throw D("Handlebars decorator blocks are not supported",this.source.spanFor(e.loc))}SubExpression(e){let{path:r,params:n,hash:a}=ye(this,e);return f.sexpr({path:r,params:n,hash:a,loc:this.source.spanFor(e.loc)})}PathExpression(e){let{original:r}=e,n;if(r.indexOf("/")!==-1){if(r.slice(0,2)==="./")throw D('Using "./" is not supported in Glimmer and unnecessary',this.source.spanFor(e.loc));if(r.slice(0,3)==="../")throw D('Changing context using "../" is not supported in Glimmer',this.source.spanFor(e.loc));if(r.indexOf(".")!==-1)throw D("Mixing '.' and '/' in paths is not supported in Glimmer; use only '.' to separate property paths",this.source.spanFor(e.loc));n=[e.parts.join("/")]}else{if(r===".")throw D("'.' is not a supported path in Glimmer; check for a path with a trailing '.'",this.source.spanFor(e.loc));n=e.parts}let a=!1;/^this(?:\..+)?$/u.test(r)&&(a=!0);let s;if(a)s=f.this({loc:this.source.spanFor({start:e.loc.start,end:{line:e.loc.start.line,column:e.loc.start.column+4}})});else if(e.data){let u=n.shift();if(u===void 0)throw D("Attempted to parse a path expression, but it was not valid. Paths beginning with @ must start with a-z.",this.source.spanFor(e.loc));s=f.atName({name:`@${u}`,loc:this.source.spanFor({start:e.loc.start,end:{line:e.loc.start.line,column:e.loc.start.column+u.length+1}})})}else{let u=n.shift();if(u===void 0)throw D("Attempted to parse a path expression, but it was not valid. Paths must start with a-z or A-Z.",this.source.spanFor(e.loc));s=f.var({name:u,loc:this.source.spanFor({start:e.loc.start,end:{line:e.loc.start.line,column:e.loc.start.column+u.length}})})}return f.path({head:s,tail:n,loc:this.source.spanFor(e.loc)})}Hash(e){let r=e.pairs.map(n=>f.pair({key:n.key,value:this.acceptNode(n.value),loc:this.source.spanFor(n.loc)}));return f.hash({pairs:r,loc:this.source.spanFor(e.loc)})}StringLiteral(e){return f.literal({type:"StringLiteral",value:e.value,loc:this.source.spanFor(e.loc)})}BooleanLiteral(e){return f.literal({type:"BooleanLiteral",value:e.value,loc:this.source.spanFor(e.loc)})}NumberLiteral(e){return f.literal({type:"NumberLiteral",value:e.value,loc:this.source.spanFor(e.loc)})}UndefinedLiteral(e){return f.literal({type:"UndefinedLiteral",value:void 0,loc:this.source.spanFor(e.loc)})}NullLiteral(e){return f.literal({type:"NullLiteral",value:null,loc:this.source.spanFor(e.loc)})}};function Gs(t,e){if(e==="")return{lines:t.split(`
27
- `).length-1,columns:0};let[r]=t.split(e),n=r.split(/\n/u),a=n.length-1;return{lines:a,columns:Ue(n[a]).length}}function Ws(t,e){let r=e.loc.start.line,n=e.loc.start.column,a=Gs(e.original,e.value);r=r+a.lines,a.lines?n=a.columns:n=n+a.columns,t.line=r,t.column=n}function ye(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 u;throw e.path.type==="BooleanLiteral"?u=e.path.original.toString():e.path.type==="StringLiteral"?u=`"${e.path.original}"`:e.path.type==="NullLiteral"?u="null":e.path.type==="NumberLiteral"?u=e.path.value.toString():u="undefined",D(`${e.path.type} "${e.path.type==="StringLiteral"?e.path.original:u}" cannot be called as a sub-expression, replace (${u}) with ${u}`,t.source.spanFor(e.path.loc))}}let n=e.params?e.params.map(u=>t.acceptNode(u)):[],a=Bt(n)?He(n).loc:r.loc,s=e.hash?t.Hash(e.hash):f.hash({pairs:[],loc:t.source.spanFor(a).collapse("end")});return{path:r,params:n,hash:s}}function Ae(t,e){let{path:r,params:n,hash:a,loc:s}=e;if(en(r)){let i=`{{${As(r)}}}`,l=`<${t.name} ... ${i} ...`;throw D(`In ${l}, ${i} is not a valid modifier`,e.loc)}let u=f.elementModifier({path:r,params:n,hash:a,loc:s});t.modifiers.push(u)}function yt(t){return/[\t\n\f ]/u.test(t)}var Ks=class extends js{constructor(){super(...arguments);w(this,"tagOpenLine",0);w(this,"tagOpenColumn",0)}reset(){this.currentNode=null}beginComment(){this.currentNode={type:"CommentStatement",value:"",start:this.source.offsetFor(this.tagOpenLine,this.tagOpenColumn)}}appendToCommentData(e){this.currentComment.value+=e}finishComment(){vt(this.currentElement(),f.comment(this.finish(this.currentComment)))}beginData(){this.currentNode={type:"TextNode",chars:"",start:this.offset()}}appendToData(e){this.currentData.chars+=e}finishData(){vt(this.currentElement(),f.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 e=this.finish(this.currentTag);if(e.type==="StartTag"){if(this.finishStartTag(),e.name===":")throw D("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()}));(Be.has(e.name)||e.selfClosing)&&this.finishEndTag(!0)}else e.type==="EndTag"&&this.finishEndTag(!1)}finishStartTag(){let{name:e,nameStart:r,nameEnd:n}=this.currentStartTag;S(e!=="","tag name cannot be empty"),S(r!==null,"nameStart unexpectedly null"),S(n!==null,"nameEnd unexpectedly null");let a=r.until(n),[s,...u]=_t(e.split(".")),i=f.path({head:f.head({original:s,loc:a.sliceStartChars({chars:s.length})}),tail:u,loc:a}),{attributes:l,modifiers:g,comments:h,params:m,selfClosing:A,loc:y}=this.finish(this.currentStartTag),C=f.element({path:i,selfClosing:A,attributes:l,modifiers:g,comments:h,params:m,children:[],openTag:y,closeTag:A?null:I.broken(),loc:y});this.elementStack.push(C)}finishEndTag(e){let{start:r}=this.currentTag,n=this.finish(this.currentTag),a=this.elementStack.pop();this.validateEndTag(n,a,e);let s=this.currentElement();e?a.closeTag=null:a.selfClosing?S(a.closeTag===null,"element.closeTag unexpectedly present"):a.closeTag=r.until(this.offset()),a.loc=a.loc.withEnd(this.offset()),vt(s,f.element(a))}markTagAsSelfClosing(){let e=this.currentTag;if(e.type==="StartTag")e.selfClosing=!0;else throw D("Invalid end tag: closing tag must not be self-closing",this.source.spanFor({start:e.start.toJSON(),end:this.offset().toJSON()}))}appendToTagName(e){let r=this.currentTag;if(r.name+=e,r.type==="StartTag"){let n=this.offset();r.nameStart===null&&(S(r.nameEnd===null,"nameStart and nameEnd must both be null"),r.nameStart=n.move(-1)),r.nameEnd=n}}beginAttribute(){let e=this.offset();this.currentAttribute={name:"",parts:[],currentPart:null,isQuoted:!1,isDynamic:!1,start:e,valueSpan:e.collapsed()}}appendToAttributeName(e){this.currentAttr.name+=e,this.currentAttr.name==="as"&&this.parsePossibleBlockParams()}beginAttributeValue(e){this.currentAttr.isQuoted=e,this.startTextPart(),this.currentAttr.valueSpan=this.offset().collapsed()}appendToAttributeValue(e){let r=this.currentAttr.parts,n=r[r.length-1],a=this.currentAttr.currentPart;if(a)a.chars+=e,a.loc=a.loc.withEnd(this.offset());else{let s=this.offset();e===`
28
- `?s=n?n.loc.getEnd():this.currentAttr.valueSpan.getStart():s=s.move(-1),this.currentAttr.currentPart=f.text({chars:e,loc:s.collapsed()})}}finishAttributeValue(){this.finalizeTextPart();let e=this.currentTag,r=this.offset();if(e.type==="EndTag")throw D("Invalid end tag: closing tag must not have attributes",this.source.spanFor({start:e.start.toJSON(),end:r.toJSON()}));let{name:n,parts:a,start:s,isQuoted:u,isDynamic:i,valueSpan:l}=this.currentAttr;if(n.startsWith("|")&&a.length===0&&!u&&!i)throw D("Invalid block parameters syntax: block parameters must be preceded by the `as` keyword",s.until(s.move(n.length)));let g=this.assembleAttributeValue(a,u,i,s.until(r));g.loc=l.withEnd(r);let h=f.attr({name:n,value:g,loc:s.until(r)});this.currentStartTag.attributes.push(h)}parsePossibleBlockParams(){let e="beforeAttributeName",r="attributeName",n="afterAttributeName",a=/[!"#%&'()*+./;<=>@[\\\]^`{|}~]/u;S(this.tokenizer.state===r,"must be in TokenizerState.attributeName");let s=this.currentStartTag,u=this.currentAttr,i={state:"PossibleAs"},l={PossibleAs:h=>{if(S(i.state==="PossibleAs","bug in block params parser"),yt(h))i={state:"BeforeStartPipe"},this.tokenizer.transitionTo(n),this.tokenizer.consume();else{if(h==="|")throw D('Invalid block parameters syntax: expecting at least one space character between "as" and "|"',u.start.until(this.offset().move(1)));i={state:"Done"}}},BeforeStartPipe:h=>{S(i.state==="BeforeStartPipe","bug in block params parser"),yt(h)?this.tokenizer.consume():h==="|"?(i={state:"BeforeBlockParamName"},this.tokenizer.transitionTo(e),this.tokenizer.consume()):i={state:"Done"}},BeforeBlockParamName:h=>{if(S(i.state==="BeforeBlockParamName","bug in block params parser"),yt(h))this.tokenizer.consume();else if(h==="")i={state:"Done"},this.pendingError={mustache(m){throw D("Invalid block parameters syntax: mustaches cannot be used inside parameters list",m)},eof(m){throw D('Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list',u.start.until(m))}};else if(h==="|"){if(s.params.length===0)throw D("Invalid block parameters syntax: empty parameters list, expecting at least one identifier",u.start.until(this.offset().move(1)));i={state:"AfterEndPipe"},this.tokenizer.consume()}else{if(h===">"||h==="/")throw D('Invalid block parameters syntax: incomplete parameters list, expecting "|" but the tag was closed prematurely',u.start.until(this.offset().move(1)));i={state:"BlockParamName",name:h,start:this.offset()},this.tokenizer.consume()}},BlockParamName:h=>{if(S(i.state==="BlockParamName","bug in block params parser"),h==="")i={state:"Done"},this.pendingError={mustache(m){throw D("Invalid block parameters syntax: mustaches cannot be used inside parameters list",m)},eof(m){throw D('Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list',u.start.until(m))}};else if(h==="|"||yt(h)){let m=i.start.until(this.offset());if(i.name==="this"||a.test(i.name))throw D(`Invalid block parameters syntax: invalid identifier name \`${i.name}\``,m);s.params.push(f.var({name:i.name,loc:m})),i=h==="|"?{state:"AfterEndPipe"}:{state:"BeforeBlockParamName"},this.tokenizer.consume()}else{if(h===">"||h==="/")throw D('Invalid block parameters syntax: expecting "|" but the tag was closed prematurely',u.start.until(this.offset().move(1)));i.name+=h,this.tokenizer.consume()}},AfterEndPipe:h=>{S(i.state==="AfterEndPipe","bug in block params parser"),yt(h)?this.tokenizer.consume():h===""?(i={state:"Done"},this.pendingError={mustache(m){throw D("Invalid block parameters syntax: modifiers cannot follow parameters list",m)},eof(m){throw D('Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list',u.start.until(m))}}):h===">"||h==="/"?i={state:"Done"}:(i={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:h=>{if(S(i.state==="Error","bug in block params parser"),h===""||h==="/"||h===">"||yt(h))throw D(i.message,i.start.until(this.offset()));this.tokenizer.consume()},Done:()=>{S(!1,"This should never be called")}},g;do g=this.tokenizer.peek(),l[i.state](g);while(i.state!=="Done"&&g!=="");S(i.state==="Done","bug in block params parser")}reportSyntaxError(e){throw D(e,this.offset().collapsed())}assembleConcatenatedValue(e){for(let a of e)if(a.type!=="MustacheStatement"&&a.type!=="TextNode")throw D(`Unsupported node in quoted attribute value: ${a.type}`,a.loc);ve(e,"the concatenation parts of an element should not be empty");let r=wa(e),n=He(e);return f.concat({parts:e,loc:this.source.spanFor(r.loc).extend(this.source.spanFor(n.loc))})}validateEndTag(e,r,n){if(Be.has(e.name)&&!n)throw D(`<${e.name}> elements do not need end tags. You should remove it`,e.loc);if(r.tag===void 0)throw D(`Closing tag </${e.name}> without an open tag`,e.loc);if(r.tag!==e.name)throw D(`Closing tag </${e.name}> did not match last open tag <${r.tag}> (on line ${r.loc.startPosition.line})`,e.loc)}assembleAttributeValue(e,r,n,a){if(n){if(r)return this.assembleConcatenatedValue(e);{ve(e);let[s,u]=e;if(u===void 0||u.type==="TextNode"&&u.chars==="/")return s;throw D("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)}}else return Bt(e)?e[0]:f.text({chars:"",loc:a})}},Qs={},Js=class extends Qr{constructor(){super({})}parse(){}};function Ys(t,e={}){var r,n,a;let s=e.mode||"precompile",u,i;typeof t=="string"?(u=new Ft(t,(r=e.meta)==null?void 0:r.moduleName),s==="codemod"?i=we(t,e.parseOptions):i=dr(t,e.parseOptions)):t instanceof Ft?(u=t,s==="codemod"?i=we(t.source,e.parseOptions):i=dr(t.source,e.parseOptions)):(u=new Ft("",(n=e.meta)==null?void 0:n.moduleName),i=t);let l;s==="codemod"&&(l=new Js);let g=I.forCharPositions(u,0,u.source.length);i.loc={source:"(program)",start:g.startPosition,end:g.endPosition};let h=new Ks(u,l,s).parse(i,e.locals??[]);if((a=e==null?void 0:e.plugins)!=null&&a.ast)for(let m of e.plugins.ast){let A=Gr({},e,{syntax:Qs},{plugins:void 0}),y=m(A);bs(h,y.visitor)}return h}(function(t){return t.Helper="Helper",t.Modifier="Modifier",t.Component="Component",t})({});var Wt=`
29
- `,Dr="\r",Xs=function(){function t(e){this.length=e.length;for(var r=[0],n=0;n<e.length;)switch(e[n]){case Wt:n+=Wt.length,r.push(n);break;case Dr:n+=Dr.length,e[n]===Wt&&(n+=Wt.length),r.push(n);break;default:n++;break}this.offsets=r}return t.prototype.locationForIndex=function(e){if(e<0||e>this.length)return null;for(var r=0,n=this.offsets;n[r+1]<=e;)r++;var a=e-n[r];return{line:r,column:a}},t.prototype.indexForLocation=function(e){var r=e.line,n=e.column;return r<0||r>=this.offsets.length||n<0||n>this.lengthOfLine(r)?null:this.offsets[r]+n},t.prototype.lengthOfLine=function(e){var r=this.offsets[e],n=e===this.offsets.length-1?this.length:this.offsets[e+1];return n-r},t}();function Zs(t,e){let r=new SyntaxError(t+" ("+e.loc.start.line+":"+e.loc.start.column+")");return Object.assign(r,e)}var tu=Zs;function eu(t){let e=t.children??t.body;if(e)for(let r=0;r<e.length-1;r++)e[r].type==="TextNode"&&e[r+1].type==="MustacheStatement"&&(e[r].chars=e[r].chars.replace(/\\$/u,"\\\\"))}function ru(t){let e=new Xs(t),r=({line:a,column:s})=>e.indexForLocation({line:a-1,column:s}),n=a=>{let{start:s,end:u}=a.loc;s.offset=r(s),u.offset=r(u)};return()=>({name:"prettierParsePlugin",visitor:{All(a){n(a),eu(a)}}})}function nu(t){let e;try{e=Ys(t,{mode:"codemod",plugins:{ast:[ru(t)]}})}catch(r){let n=su(r);if(n){let a=au(r);throw tu(a,{loc:n,cause:r})}throw r}return e}function au(t){let{message:e}=t,r=e.split(`
30
- `);return r.length>=4&&/^Parse error on line \d+:$/u.test(r[0])&&/^-*\^$/u.test(Tt(!1,r,-2))?Tt(!1,r,-1):r.length>=4&&/:\s?$/u.test(r[0])&&/^\(error occurred in '.*?' @ line \d+ : column \d+\)$/u.test(Tt(!1,r,-1))&&r[1]===""&&Tt(!1,r,-2)===""&&r.slice(2,-2).every(n=>n.startsWith("|"))?r[0].trim().slice(0,-1):e}function su(t){let{location:e,hash:r}=t;if(e){let{start:n,end:a}=e;return typeof a.line!="number"?{start:n}:e}if(r){let{loc:{last_line:n,last_column:a}}=r;return{start:{line:n,column:a+1}}}}var uu={parse:nu,astFormat:"glimmer",locStart:Lt,locEnd:Ee},iu={glimmer:va},cu=Cr;export{cu as default,Ca as languages,jr as parsers,iu as printers};
25
+ `:"",l=new Error(`${t}: ${i}(error occurred in '${r}' @ line ${a} : column ${s})`);return l.name="SyntaxError",l.location=e,l.code=u,l}var ls={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"]},Qe=function(){t.prototype=Object.create(Error.prototype),t.prototype.constructor=t;function t(e,r,n,a){let s=Error.call(this,e);this.key=a,this.message=e,this.node=r,this.parent=n,s.stack&&(this.stack=s.stack)}return t}();function br(t,e,r){return new Qe("Cannot remove a node unless it is part of an array",t,e,r)}function cs(t,e,r){return new Qe("Cannot replace a node with multiple nodes unless it is part of an array",t,e,r)}function yr(t,e){return new Qe("Replacing and removing in key handlers is not yet supported.",t,null,e)}var ne=class{constructor(t,e=null,r=null){w(this,"node");w(this,"parent");w(this,"parentKey");this.node=t,this.parent=e,this.parentKey=r}get parentNode(){return this.parent?this.parent.node:null}parents(){return{[Symbol.iterator]:()=>new hs(this)}}},hs=class{constructor(t){w(this,"path");this.path=t}next(){return this.path.parent?(this.path=this.path.parent,{done:!1,value:this.path}):{done:!0,value:null}}};function Zr(t){return typeof t=="function"?t:t.enter}function tn(t){if(typeof t!="function")return t.exit}function ps(t,e){let r=typeof t!="function"?t.keys:void 0;if(r===void 0)return;let n=r[e];return n!==void 0?n:r.All}function ds(t,e){if(t.Program&&(e==="Template"&&!t.Template||e==="Block"&&!t.Block))return M(`The 'Program' visitor node is deprecated. Use 'Template' or 'Block' instead (node was '${e}') `),t.Program;let r=t[e];return r!==void 0?r:t.All}function ae(t,e){let{node:r,parent:n,parentKey:a}=e,s=ds(t,r.type),u,i;s!==void 0&&(u=Zr(s),i=tn(s));let l;if(u!==void 0&&(l=u(r,e)),l!=null)if(JSON.stringify(r)===JSON.stringify(l))l=void 0;else{if(Array.isArray(l))return en(t,l,n,a),l;{let g=new ne(l,n,a);return ae(t,g)||l}}if(l===void 0){let g=ls[r.type];for(let h=0;h<g.length;h++){let m=g[h];fs(t,s,e,m)}i!==void 0&&(l=i(r,e))}return l}function ms(t,e){return t[e]}function Ar(t,e,r){t[e]=r}function fs(t,e,r,n){let{node:a}=r,s=ms(a,n);if(!s)return;let u,i;if(e!==void 0){let l=ps(e,n);l!==void 0&&(u=Zr(l),i=tn(l))}if(u!==void 0&&u(a,n)!==void 0)throw yr(a,n);if(Array.isArray(s))en(t,s,r,n);else{let l=new ne(s,r,n),g=ae(t,l);g!==void 0&&gs(a,n,s,g)}if(i!==void 0&&i(a,n)!==void 0)throw yr(a,n)}function en(t,e,r,n){for(let a=0;a<e.length;a++){let s=He(e[a]),u=new ne(s,r,n),i=ae(t,u);i!==void 0&&(a+=bs(e,a,i)-1)}}function gs(t,e,r,n){if(n===null)throw br(r,t,e);if(Array.isArray(n))if(n.length===1)Ar(t,e,n[0]);else throw n.length===0?br(r,t,e):cs(r,t,e);else Ar(t,e,n)}function bs(t,e,r){return r===null?(t.splice(e,1),0):Array.isArray(r)?(t.splice(e,1,...r),r.length):(t.splice(e,1,r),1)}function ys(t,e){let r=new ne(t);ae(e,r)}function As(t){switch(t.type){case"Block":case"Template":return t.body;case"ElementNode":return t.children}}function vt(t,e){As(t).push(e)}function rn(t){return t.type==="StringLiteral"||t.type==="BooleanLiteral"||t.type==="NumberLiteral"||t.type==="NullLiteral"||t.type==="UndefinedLiteral"}function Ds(t){return t.type==="UndefinedLiteral"?"undefined":JSON.stringify(t.value)}var fe;function ge(){return fe||(fe=new Ft("","(synthetic)")),fe}function Es(t,e=[],r=$t([]),n=!1,a,s){return f.mustache({path:ut(t),params:e,hash:r,trusting:n,strip:s,loc:k(a||null)})}function vs(t,e,r,n,a=null,s,u,i,l){let g,h=null;return n.type==="Template"?(M("b.program is deprecated. Use b.blockItself instead."),g=f.blockItself({params:an(n.blockParams),body:n.body,loc:n.loc})):g=n,(a==null?void 0:a.type)==="Template"?(M("b.program is deprecated. Use b.blockItself instead."),S(a.blockParams.length===0,"{{else}} block cannot have block params"),h=f.blockItself({params:[],body:a.body,loc:a.loc})):h=a,f.block({path:ut(t),params:e||[],hash:r||$t([]),defaultBlock:g,elseBlock:h,loc:k(s||null),openStrip:u,inverseStrip:i,closeStrip:l})}function Cs(t,e,r,n){return f.elementModifier({path:ut(t),params:e||[],hash:r||$t([]),loc:k(n||null)})}function Ss(t,e){return f.comment({value:t,loc:k(e||null)})}function ws(t,e){return f.mustacheComment({value:t,loc:k(e||null)})}function Bs(t,e){if(!Bt(t))throw new Error("b.concat requires at least one part");return f.concat({parts:t,loc:k(e||null)})}function ks(t,e={}){let{attrs:r,blockParams:n,modifiers:a,comments:s,children:u,openTag:i,closeTag:l,loc:g}=e,h,m;typeof t=="string"?t.endsWith("/")?(h=ut(t.slice(0,-1)),m=!0):h=ut(t):"type"in t?(S(t.type==="PathExpression",`Invalid tag type ${t.type}`),h=t):"path"in t?(S(t.path.type==="PathExpression",`Invalid tag type ${t.path.type}`),h=t.path,m=t.selfClosing):(h=ut(t.name),m=t.selfClosing),m&&S(l==null,"Cannot build a self-closing tag with a closeTag source location");let A=n==null?void 0:n.map(C=>typeof C=="string"?nn(C):C),y=null;return l?y=k(l||null):l===void 0&&(y=m||rs(h.original)?null:k(null)),f.element({path:h,selfClosing:m||!1,attributes:r||[],params:A||[],modifiers:a||[],comments:s||[],children:u||[],openTag:k(i||null),closeTag:y,loc:k(g||null)})}function xs(t,e,r){return f.attr({name:t,value:e,loc:k(r||null)})}function Ts(t="",e){return f.text({chars:t,loc:k(e||null)})}function Ns(t,e=[],r=$t([]),n){return f.sexpr({path:ut(t),params:e,hash:r,loc:k(n||null)})}function Ps(t,e){let[r,...n]=_t(t.split(".")),a=f.head({original:r,loc:k(e||null)});return f.path({head:a,tail:n,loc:k(e||null)})}function Fs(t){return f.this({loc:k(t||null)})}function Ls(t,e){return f.atName({name:t,loc:k(e||null)})}function nn(t,e){return f.var({name:t,loc:k(e||null)})}function _s(t,e){return f.head({original:t,loc:k(e||null)})}function qs(t,e=[],r){return f.path({head:t,tail:e,loc:k(r||null)})}function ut(t,e){let r=k(e||null);if(typeof t!="string"){if("type"in t)return t;{S(t.head.indexOf(".")===-1,"builder.path({ head, tail }) should not be called with a head with dots in it");let{head:s,tail:u}=t;return f.path({head:f.head({original:s,loc:r.sliceStartChars({chars:s.length})}),tail:u,loc:k(e||null)})}}let{head:n,tail:a}=Ps(t,r);return f.path({head:n,tail:a,loc:r})}function Yt(t,e,r){return f.literal({type:t,value:e,loc:k(r||null)})}function $t(t=[],e){return f.hash({pairs:t,loc:k(e||null)})}function Is(t,e,r){return f.pair({key:t,value:e,loc:k(r||null)})}function Os(t,e,r){return M("b.program is deprecated. Use b.template or b.blockItself instead."),e&&e.length?sn(t,e,!1,r):un(t,[],r)}function an(t){return t.map(e=>typeof e=="string"?f.var({name:e,loc:I.synthetic(e)}):e)}function sn(t=[],e=[],r=!1,n){return f.blockItself({body:t,params:an(e),chained:r,loc:k(n||null)})}function un(t=[],e=[],r){return f.template({body:t,blockParams:e,loc:k(r||null)})}function $s(t,e){return f.pos({line:t,column:e})}function k(...t){if(t.length===1){let e=t[0];return e&&typeof e=="object"?I.forHbsLoc(ge(),e):I.forHbsLoc(ge(),ns)}else{let[e,r,n,a,s]=t,u=s?new Ft("",s):ge();return I.forHbsLoc(u,{start:{line:e,column:r},end:{line:n||e,column:a||r}})}}var Vs={mustache:Es,block:vs,comment:Ss,mustacheComment:ws,element:ks,elementModifier:Cs,attr:xs,text:Ts,sexpr:Ns,concat:Bs,hash:$t,pair:Is,literal:Yt,program:Os,blockItself:sn,template:un,loc:k,pos:$s,path:ut,fullPath:qs,head:_s,at:Ls,var:nn,this:Fs,string:be("StringLiteral"),boolean:be("BooleanLiteral"),number:be("NumberLiteral"),undefined(){return Yt("UndefinedLiteral",void 0)},null(){return Yt("NullLiteral",null)}};function be(t){return function(e,r){return Yt(t,e,r)}}function Rs({path:t,params:e,hash:r,trusting:n,strip:a,loc:s}){let u={type:"MustacheStatement",path:t,params:e,hash:r,trusting:n,strip:a,loc:s};return Object.defineProperty(u,"escaped",{enumerable:!1,get(){return M("The escaped property on mustache nodes is deprecated, use trusting instead"),!this.trusting},set(i){M("The escaped property on mustache nodes is deprecated, use trusting instead"),this.trusting=!i}}),u}function Us({head:t,tail:e,loc:r}){let n={type:"PathExpression",head:t,tail:e,get original(){return[this.head.original,...this.tail].join(".")},set original(a){let[s,...u]=_t(a.split("."));this.head=Vs.head(s,this.head.loc),this.tail=u},loc:r};return Object.defineProperty(n,"parts",{enumerable:!1,get(){M("The parts property on path nodes is deprecated, use head and tail instead");let a=_t(this.original.split("."));return a[0]==="this"?a.shift():a[0].startsWith("@")&&(a[0]=a[0].slice(1)),Object.freeze(a)},set(a){var s;M("The parts property on mustache nodes is deprecated, use head and tail instead");let u=[...a];u[0]!=="this"&&!((s=u[0])!=null&&s.startsWith("@"))&&(this.head.type==="ThisHead"?u.unshift("this"):this.head.type==="AtHead"&&(u[0]=`@${u[0]}`)),this.original=u.join(".")}}),Object.defineProperty(n,"this",{enumerable:!1,get(){return M("The this property on path nodes is deprecated, use head.type instead"),this.head.type==="ThisHead"}}),Object.defineProperty(n,"data",{enumerable:!1,get(){return M("The data property on path nodes is deprecated, use head.type instead"),this.head.type==="AtHead"}}),n}function Hs({type:t,value:e,loc:r}){let n={type:t,value:e,loc:r};return Object.defineProperty(n,"original",{enumerable:!1,get(){return M("The original property on literal nodes is deprecated, use value instead"),this.value},set(a){M("The original property on literal nodes is deprecated, use value instead"),this.value=a}}),n}var Gt={close:!1,open:!1},Ms=class{pos({line:t,column:e}){return{line:t,column:e}}blockItself({body:t,params:e,chained:r=!1,loc:n}){return{type:"Block",body:t,params:e,get blockParams(){return this.params.map(a=>a.name)},set blockParams(a){this.params=a.map(s=>f.var({name:s,loc:I.synthetic(s)}))},chained:r,loc:n}}template({body:t,blockParams:e,loc:r}){return{type:"Template",body:t,blockParams:e,loc:r}}mustache({path:t,params:e,hash:r,trusting:n,loc:a,strip:s=Gt}){return Rs({path:t,params:e,hash:r,trusting:n,strip:s,loc:a})}block({path:t,params:e,hash:r,defaultBlock:n,elseBlock:a=null,loc:s,openStrip:u=Gt,inverseStrip:i=Gt,closeStrip:l=Gt}){return{type:"BlockStatement",path:t,params:e,hash:r,program:n,inverse:a,loc:s,openStrip:u,inverseStrip:i,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:n,params:a,comments:s,children:u,openTag:i,closeTag:l,loc:g}){let h=e;return{type:"ElementNode",path:t,attributes:r,modifiers:n,params:a,comments:s,children:u,openTag:i,closeTag:l,loc:g,get tag(){return this.path.original},set tag(m){this.path.original=m},get blockParams(){return this.params.map(m=>m.name)},set blockParams(m){this.params=m.map(A=>f.var({name:A,loc:I.synthetic(A)}))},get selfClosing(){return h},set selfClosing(m){h=m,m?this.closeTag=null:this.closeTag=I.synthetic(`</${this.tag}>`)}}}elementModifier({path:t,params:e,hash:r,loc:n}){return{type:"ElementModifierStatement",path:t,params:e,hash:r,loc:n}}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:n}){return{type:"SubExpression",path:t,params:e,hash:r,loc:n}}path({head:t,tail:e,loc:r}){return Us({head:t,tail:e,loc:r})}head({original:t,loc:e}){return t==="this"?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="",n={type:"AtHead",get name(){return r},set name(a){S(a[0]==="@","call builders.at() with a string that starts with '@'"),S(a.indexOf(".")===-1,"builder.at() should not be called with a name with dots in it"),r=a},get original(){return this.name},set original(a){this.name=a},loc:e};return n.name=t,n}var({name:t,loc:e}){let r="",n={type:"VarHead",get name(){return r},set name(a){S(a!=="this","You called builders.var() with 'this'. Call builders.this instead"),S(a[0]!=="@",`You called builders.var() with '${t}'. Call builders.at('${t}') instead`),S(a.indexOf(".")===-1,"builder.var() should not be called with a name with dots in it"),r=a},get original(){return this.name},set original(a){this.name=a},loc:e};return n.name=t,n}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 Hs({type:t,value:e,loc:r})}},f=new Ms,zs=class{constructor(t,e=new Jr(Wa),r="precompile"){w(this,"elementStack",[]);w(this,"lines");w(this,"source");w(this,"currentAttribute",null);w(this,"currentNode",null);w(this,"tokenizer");this.source=t,this.lines=t.source.split(/\r\n?|\n/u),this.tokenizer=new es(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 Wr({},t,{loc:t.start.until(this.offset())})}get currentAttr(){return wa(this.currentAttribute,"expected attribute")}get currentTag(){let t=this.currentNode;return S(t&&(t.type==="StartTag"||t.type==="EndTag"),"expected tag"),t}get currentStartTag(){let t=this.currentNode;return S(t&&t.type==="StartTag","expected start tag"),t}get currentEndTag(){let t=this.currentNode;return S(t&&t.type==="EndTag","expected end tag"),t}get currentComment(){let t=this.currentNode;return S(t&&t.type==="CommentStatement","expected a comment"),t}get currentData(){let t=this.currentNode;return S(t&&t.type==="TextNode","expected a text node"),t}acceptNode(t){return this[t.type](t)}currentElement(){return Me(_t(this.elementStack))}sourceForNode(t,e){let r=t.loc.start.line-1,n=r-1,a=t.loc.start.column,s=[],u,i,l;for(e?(i=e.loc.end.line-1,l=e.loc.end.column):(i=t.loc.end.line-1,l=t.loc.end.column);n<i;)n++,u=He(this.lines[n]),n===r?r===i?s.push(u.slice(a,l)):s.push(u.slice(a)):n===i?s.push(u.slice(0,l)):s.push(u);return s.join(`
26
+ `)}},Dr="beforeAttributeName",js="attributeValueUnquoted",Gs=class extends zs{constructor(){super(...arguments);w(this,"pendingError",null)}parse(e,r){var n;let a=f.template({body:[],blockParams:r,loc:this.source.spanFor(e.loc)}),s=this.parseProgram(a,e);return(n=this.pendingError)==null||n.eof(s.loc.getEnd()),s}Program(e,r){S(Array.isArray(r),"[BUG] Program in parser unexpectedly called without block params");let n=f.blockItself({body:[],params:r,chained:e.chained,loc:this.source.spanFor(e.loc)});return this.parseProgram(n,e)}parseProgram(e,r){if(r.body.length===0)return e;let n;try{this.elementStack.push(e);for(let a of r.body)this.acceptNode(a)}finally{n=this.elementStack.pop()}if(e!==n){if((n==null?void 0:n.type)==="ElementNode")throw D(`Unclosed element \`${n.tag}\``,n.loc);S(n!==void 0,"[BUG] empty parser elementStack"),S(!1,`[BUG] mismatched parser elementStack node: ${e.type}`)}return e}BlockStatement(e){var r;if(this.tokenizer.state==="comment"){this.appendToCommentData(this.sourceForNode(e));return}if(this.tokenizer.state!=="data"&&this.tokenizer.state!=="beforeData")throw D("A block may only be used inside an HTML element or another block.",this.source.spanFor(e.loc));let{path:n,params:a,hash:s}=ye(this,e),u=this.source.spanFor(e.loc),i=[];if((r=e.program.blockParams)!=null&&r.length){let A=s.loc.collapse("end");e.program.loc?A=A.withEnd(this.source.spanFor(e.program.loc).getStart()):e.program.body[0]?A=A.withEnd(this.source.spanFor(e.program.body[0].loc).getStart()):A=A.withEnd(u.getEnd());let y=A.asString(),C=y.indexOf("|")+1,T=y.indexOf("|",C);for(let x of e.program.blockParams){let B,U;C>=T?B=-1:B=y.indexOf(x,C),B===-1||B+x.length>T?(C=T,U=this.source.spanFor(Pt)):(C=B,U=A.sliceStartChars({skipStart:C,chars:x.length}),C+=x.length),i.push(f.var({name:x,loc:U}))}}e.program.loc||(e.program.loc=Pt),e.inverse&&!e.inverse.loc&&(e.inverse.loc=Pt);let l=this.Program(e.program,i),g=e.inverse?this.Program(e.inverse,[]):null,h=f.block({path:n,params:a,hash:s,defaultBlock:l,elseBlock:g,loc:this.source.spanFor(e.loc),openStrip:e.openStrip,inverseStrip:e.inverseStrip,closeStrip:e.closeStrip}),m=this.currentElement();vt(m,h)}MustacheStatement(e){var r;(r=this.pendingError)==null||r.mustache(this.source.spanFor(e.loc));let{tokenizer:n}=this;if(n.state==="comment"){this.appendToCommentData(this.sourceForNode(e));return}let a,{escaped:s,loc:u,strip:i}=e;if("original"in e.path&&e.path.original==="...attributes")throw D("Illegal use of ...attributes",this.source.spanFor(e.loc));if(rn(e.path))a=f.mustache({path:this.acceptNode(e.path),params:[],hash:f.hash({pairs:[],loc:this.source.spanFor(e.path.loc).collapse("end")}),trusting:!s,loc:this.source.spanFor(u),strip:i});else{let{path:l,params:g,hash:h}=ye(this,e);a=f.mustache({path:l,params:g,hash:h,trusting:!s,loc:this.source.spanFor(u),strip:i})}switch(n.state){case"tagOpen":case"tagName":throw D("Cannot use mustaches in an elements tagname",a.loc);case"beforeAttributeName":Ae(this.currentStartTag,a);break;case"attributeName":case"afterAttributeName":this.beginAttributeValue(!1),this.finishAttributeValue(),Ae(this.currentStartTag,a),n.transitionTo(Dr);break;case"afterAttributeValueQuoted":Ae(this.currentStartTag,a),n.transitionTo(Dr);break;case"beforeAttributeValue":this.beginAttributeValue(!1),this.appendDynamicAttributeValuePart(a),n.transitionTo(js);break;case"attributeValueDoubleQuoted":case"attributeValueSingleQuoted":case"attributeValueUnquoted":this.appendDynamicAttributeValuePart(a);break;default:vt(this.currentElement(),a)}return a}appendDynamicAttributeValuePart(e){this.finalizeTextPart();let r=this.currentAttr;r.isDynamic=!0,r.parts.push(e)}finalizeTextPart(){let e=this.currentAttr.currentPart;e!==null&&(this.currentAttr.parts.push(e),this.startTextPart())}startTextPart(){this.currentAttr.currentPart=null}ContentStatement(e){Ks(this.tokenizer,e),this.tokenizer.tokenizePart(e.value),this.tokenizer.flushData()}CommentStatement(e){let{tokenizer:r}=this;if(r.state==="comment")return this.appendToCommentData(this.sourceForNode(e)),null;let{value:n,loc:a}=e,s=f.mustacheComment({value:n,loc:this.source.spanFor(a)});switch(r.state){case"beforeAttributeName":case"afterAttributeName":this.currentStartTag.comments.push(s);break;case"beforeData":case"data":vt(this.currentElement(),s);break;default:throw D(`Using a Handlebars comment when in the \`${r.state}\` state is not supported`,this.source.spanFor(e.loc))}return s}PartialStatement(e){throw D("Handlebars partials are not supported",this.source.spanFor(e.loc))}PartialBlockStatement(e){throw D("Handlebars partial blocks are not supported",this.source.spanFor(e.loc))}Decorator(e){throw D("Handlebars decorators are not supported",this.source.spanFor(e.loc))}DecoratorBlock(e){throw D("Handlebars decorator blocks are not supported",this.source.spanFor(e.loc))}SubExpression(e){let{path:r,params:n,hash:a}=ye(this,e);return f.sexpr({path:r,params:n,hash:a,loc:this.source.spanFor(e.loc)})}PathExpression(e){let{original:r}=e,n;if(r.indexOf("/")!==-1){if(r.slice(0,2)==="./")throw D('Using "./" is not supported in Glimmer and unnecessary',this.source.spanFor(e.loc));if(r.slice(0,3)==="../")throw D('Changing context using "../" is not supported in Glimmer',this.source.spanFor(e.loc));if(r.indexOf(".")!==-1)throw D("Mixing '.' and '/' in paths is not supported in Glimmer; use only '.' to separate property paths",this.source.spanFor(e.loc));n=[e.parts.join("/")]}else{if(r===".")throw D("'.' is not a supported path in Glimmer; check for a path with a trailing '.'",this.source.spanFor(e.loc));n=e.parts}let a=!1;/^this(?:\..+)?$/u.test(r)&&(a=!0);let s;if(a)s=f.this({loc:this.source.spanFor({start:e.loc.start,end:{line:e.loc.start.line,column:e.loc.start.column+4}})});else if(e.data){let u=n.shift();if(u===void 0)throw D("Attempted to parse a path expression, but it was not valid. Paths beginning with @ must start with a-z.",this.source.spanFor(e.loc));s=f.atName({name:`@${u}`,loc:this.source.spanFor({start:e.loc.start,end:{line:e.loc.start.line,column:e.loc.start.column+u.length+1}})})}else{let u=n.shift();if(u===void 0)throw D("Attempted to parse a path expression, but it was not valid. Paths must start with a-z or A-Z.",this.source.spanFor(e.loc));s=f.var({name:u,loc:this.source.spanFor({start:e.loc.start,end:{line:e.loc.start.line,column:e.loc.start.column+u.length}})})}return f.path({head:s,tail:n,loc:this.source.spanFor(e.loc)})}Hash(e){let r=e.pairs.map(n=>f.pair({key:n.key,value:this.acceptNode(n.value),loc:this.source.spanFor(n.loc)}));return f.hash({pairs:r,loc:this.source.spanFor(e.loc)})}StringLiteral(e){return f.literal({type:"StringLiteral",value:e.value,loc:this.source.spanFor(e.loc)})}BooleanLiteral(e){return f.literal({type:"BooleanLiteral",value:e.value,loc:this.source.spanFor(e.loc)})}NumberLiteral(e){return f.literal({type:"NumberLiteral",value:e.value,loc:this.source.spanFor(e.loc)})}UndefinedLiteral(e){return f.literal({type:"UndefinedLiteral",value:void 0,loc:this.source.spanFor(e.loc)})}NullLiteral(e){return f.literal({type:"NullLiteral",value:null,loc:this.source.spanFor(e.loc)})}};function Ws(t,e){if(e==="")return{lines:t.split(`
27
+ `).length-1,columns:0};let[r]=t.split(e),n=r.split(/\n/u),a=n.length-1;return{lines:a,columns:He(n[a]).length}}function Ks(t,e){let r=e.loc.start.line,n=e.loc.start.column,a=Ws(e.original,e.value);r=r+a.lines,a.lines?n=a.columns:n=n+a.columns,t.line=r,t.column=n}function ye(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 u;throw e.path.type==="BooleanLiteral"?u=e.path.original.toString():e.path.type==="StringLiteral"?u=`"${e.path.original}"`:e.path.type==="NullLiteral"?u="null":e.path.type==="NumberLiteral"?u=e.path.value.toString():u="undefined",D(`${e.path.type} "${e.path.type==="StringLiteral"?e.path.original:u}" cannot be called as a sub-expression, replace (${u}) with ${u}`,t.source.spanFor(e.path.loc))}}let n=e.params?e.params.map(u=>t.acceptNode(u)):[],a=Bt(n)?Me(n).loc:r.loc,s=e.hash?t.Hash(e.hash):f.hash({pairs:[],loc:t.source.spanFor(a).collapse("end")});return{path:r,params:n,hash:s}}function Ae(t,e){let{path:r,params:n,hash:a,loc:s}=e;if(rn(r)){let i=`{{${Ds(r)}}}`,l=`<${t.name} ... ${i} ...`;throw D(`In ${l}, ${i} is not a valid modifier`,e.loc)}let u=f.elementModifier({path:r,params:n,hash:a,loc:s});t.modifiers.push(u)}function yt(t){return/[\t\n\f ]/u.test(t)}var Qs=class extends Gs{constructor(){super(...arguments);w(this,"tagOpenLine",0);w(this,"tagOpenColumn",0)}reset(){this.currentNode=null}beginComment(){this.currentNode={type:"CommentStatement",value:"",start:this.source.offsetFor(this.tagOpenLine,this.tagOpenColumn)}}appendToCommentData(e){this.currentComment.value+=e}finishComment(){vt(this.currentElement(),f.comment(this.finish(this.currentComment)))}beginData(){this.currentNode={type:"TextNode",chars:"",start:this.offset()}}appendToData(e){this.currentData.chars+=e}finishData(){vt(this.currentElement(),f.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 e=this.finish(this.currentTag);if(e.type==="StartTag"){if(this.finishStartTag(),e.name===":")throw D("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()}));(Be.has(e.name)||e.selfClosing)&&this.finishEndTag(!0)}else e.type==="EndTag"&&this.finishEndTag(!1)}finishStartTag(){let{name:e,nameStart:r,nameEnd:n}=this.currentStartTag;S(e!=="","tag name cannot be empty"),S(r!==null,"nameStart unexpectedly null"),S(n!==null,"nameEnd unexpectedly null");let a=r.until(n),[s,...u]=_t(e.split(".")),i=f.path({head:f.head({original:s,loc:a.sliceStartChars({chars:s.length})}),tail:u,loc:a}),{attributes:l,modifiers:g,comments:h,params:m,selfClosing:A,loc:y}=this.finish(this.currentStartTag),C=f.element({path:i,selfClosing:A,attributes:l,modifiers:g,comments:h,params:m,children:[],openTag:y,closeTag:A?null:I.broken(),loc:y});this.elementStack.push(C)}finishEndTag(e){let{start:r}=this.currentTag,n=this.finish(this.currentTag),a=this.elementStack.pop();this.validateEndTag(n,a,e);let s=this.currentElement();e?a.closeTag=null:a.selfClosing?S(a.closeTag===null,"element.closeTag unexpectedly present"):a.closeTag=r.until(this.offset()),a.loc=a.loc.withEnd(this.offset()),vt(s,f.element(a))}markTagAsSelfClosing(){let e=this.currentTag;if(e.type==="StartTag")e.selfClosing=!0;else throw D("Invalid end tag: closing tag must not be self-closing",this.source.spanFor({start:e.start.toJSON(),end:this.offset().toJSON()}))}appendToTagName(e){let r=this.currentTag;if(r.name+=e,r.type==="StartTag"){let n=this.offset();r.nameStart===null&&(S(r.nameEnd===null,"nameStart and nameEnd must both be null"),r.nameStart=n.move(-1)),r.nameEnd=n}}beginAttribute(){let e=this.offset();this.currentAttribute={name:"",parts:[],currentPart:null,isQuoted:!1,isDynamic:!1,start:e,valueSpan:e.collapsed()}}appendToAttributeName(e){this.currentAttr.name+=e,this.currentAttr.name==="as"&&this.parsePossibleBlockParams()}beginAttributeValue(e){this.currentAttr.isQuoted=e,this.startTextPart(),this.currentAttr.valueSpan=this.offset().collapsed()}appendToAttributeValue(e){let r=this.currentAttr.parts,n=r[r.length-1],a=this.currentAttr.currentPart;if(a)a.chars+=e,a.loc=a.loc.withEnd(this.offset());else{let s=this.offset();e===`
28
+ `?s=n?n.loc.getEnd():this.currentAttr.valueSpan.getStart():s=s.move(-1),this.currentAttr.currentPart=f.text({chars:e,loc:s.collapsed()})}}finishAttributeValue(){this.finalizeTextPart();let e=this.currentTag,r=this.offset();if(e.type==="EndTag")throw D("Invalid end tag: closing tag must not have attributes",this.source.spanFor({start:e.start.toJSON(),end:r.toJSON()}));let{name:n,parts:a,start:s,isQuoted:u,isDynamic:i,valueSpan:l}=this.currentAttr;if(n.startsWith("|")&&a.length===0&&!u&&!i)throw D("Invalid block parameters syntax: block parameters must be preceded by the `as` keyword",s.until(s.move(n.length)));let g=this.assembleAttributeValue(a,u,i,s.until(r));g.loc=l.withEnd(r);let h=f.attr({name:n,value:g,loc:s.until(r)});this.currentStartTag.attributes.push(h)}parsePossibleBlockParams(){let e="beforeAttributeName",r="attributeName",n="afterAttributeName",a=/[!"#%&'()*+./;<=>@[\\\]^`{|}~]/u;S(this.tokenizer.state===r,"must be in TokenizerState.attributeName");let s=this.currentStartTag,u=this.currentAttr,i={state:"PossibleAs"},l={PossibleAs:h=>{if(S(i.state==="PossibleAs","bug in block params parser"),yt(h))i={state:"BeforeStartPipe"},this.tokenizer.transitionTo(n),this.tokenizer.consume();else{if(h==="|")throw D('Invalid block parameters syntax: expecting at least one space character between "as" and "|"',u.start.until(this.offset().move(1)));i={state:"Done"}}},BeforeStartPipe:h=>{S(i.state==="BeforeStartPipe","bug in block params parser"),yt(h)?this.tokenizer.consume():h==="|"?(i={state:"BeforeBlockParamName"},this.tokenizer.transitionTo(e),this.tokenizer.consume()):i={state:"Done"}},BeforeBlockParamName:h=>{if(S(i.state==="BeforeBlockParamName","bug in block params parser"),yt(h))this.tokenizer.consume();else if(h==="")i={state:"Done"},this.pendingError={mustache(m){throw D("Invalid block parameters syntax: mustaches cannot be used inside parameters list",m)},eof(m){throw D('Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list',u.start.until(m))}};else if(h==="|"){if(s.params.length===0)throw D("Invalid block parameters syntax: empty parameters list, expecting at least one identifier",u.start.until(this.offset().move(1)));i={state:"AfterEndPipe"},this.tokenizer.consume()}else{if(h===">"||h==="/")throw D('Invalid block parameters syntax: incomplete parameters list, expecting "|" but the tag was closed prematurely',u.start.until(this.offset().move(1)));i={state:"BlockParamName",name:h,start:this.offset()},this.tokenizer.consume()}},BlockParamName:h=>{if(S(i.state==="BlockParamName","bug in block params parser"),h==="")i={state:"Done"},this.pendingError={mustache(m){throw D("Invalid block parameters syntax: mustaches cannot be used inside parameters list",m)},eof(m){throw D('Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list',u.start.until(m))}};else if(h==="|"||yt(h)){let m=i.start.until(this.offset());if(i.name==="this"||a.test(i.name))throw D(`Invalid block parameters syntax: invalid identifier name \`${i.name}\``,m);s.params.push(f.var({name:i.name,loc:m})),i=h==="|"?{state:"AfterEndPipe"}:{state:"BeforeBlockParamName"},this.tokenizer.consume()}else{if(h===">"||h==="/")throw D('Invalid block parameters syntax: expecting "|" but the tag was closed prematurely',u.start.until(this.offset().move(1)));i.name+=h,this.tokenizer.consume()}},AfterEndPipe:h=>{S(i.state==="AfterEndPipe","bug in block params parser"),yt(h)?this.tokenizer.consume():h===""?(i={state:"Done"},this.pendingError={mustache(m){throw D("Invalid block parameters syntax: modifiers cannot follow parameters list",m)},eof(m){throw D('Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list',u.start.until(m))}}):h===">"||h==="/"?i={state:"Done"}:(i={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:h=>{if(S(i.state==="Error","bug in block params parser"),h===""||h==="/"||h===">"||yt(h))throw D(i.message,i.start.until(this.offset()));this.tokenizer.consume()},Done:()=>{S(!1,"This should never be called")}},g;do g=this.tokenizer.peek(),l[i.state](g);while(i.state!=="Done"&&g!=="");S(i.state==="Done","bug in block params parser")}reportSyntaxError(e){throw D(e,this.offset().collapsed())}assembleConcatenatedValue(e){for(let a of e)if(a.type!=="MustacheStatement"&&a.type!=="TextNode")throw D(`Unsupported node in quoted attribute value: ${a.type}`,a.loc);ve(e,"the concatenation parts of an element should not be empty");let r=Ba(e),n=Me(e);return f.concat({parts:e,loc:this.source.spanFor(r.loc).extend(this.source.spanFor(n.loc))})}validateEndTag(e,r,n){if(Be.has(e.name)&&!n)throw D(`<${e.name}> elements do not need end tags. You should remove it`,e.loc);if(r.tag===void 0)throw D(`Closing tag </${e.name}> without an open tag`,e.loc);if(r.tag!==e.name)throw D(`Closing tag </${e.name}> did not match last open tag <${r.tag}> (on line ${r.loc.startPosition.line})`,e.loc)}assembleAttributeValue(e,r,n,a){if(n){if(r)return this.assembleConcatenatedValue(e);{ve(e);let[s,u]=e;if(u===void 0||u.type==="TextNode"&&u.chars==="/")return s;throw D("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)}}else return Bt(e)?e[0]:f.text({chars:"",loc:a})}},Js={},Ys=class extends Jr{constructor(){super({})}parse(){}};function Xs(t,e={}){var r,n,a;let s=e.mode||"precompile",u,i;typeof t=="string"?(u=new Ft(t,(r=e.meta)==null?void 0:r.moduleName),s==="codemod"?i=we(t,e.parseOptions):i=mr(t,e.parseOptions)):t instanceof Ft?(u=t,s==="codemod"?i=we(t.source,e.parseOptions):i=mr(t.source,e.parseOptions)):(u=new Ft("",(n=e.meta)==null?void 0:n.moduleName),i=t);let l;s==="codemod"&&(l=new Ys);let g=I.forCharPositions(u,0,u.source.length);i.loc={source:"(program)",start:g.startPosition,end:g.endPosition};let h=new Qs(u,l,s).parse(i,e.locals??[]);if((a=e==null?void 0:e.plugins)!=null&&a.ast)for(let m of e.plugins.ast){let A=Wr({},e,{syntax:Js},{plugins:void 0}),y=m(A);ys(h,y.visitor)}return h}(function(t){return t.Helper="Helper",t.Modifier="Modifier",t.Component="Component",t})({});var Wt=`
29
+ `,Er="\r",Zs=function(){function t(e){this.length=e.length;for(var r=[0],n=0;n<e.length;)switch(e[n]){case Wt:n+=Wt.length,r.push(n);break;case Er:n+=Er.length,e[n]===Wt&&(n+=Wt.length),r.push(n);break;default:n++;break}this.offsets=r}return t.prototype.locationForIndex=function(e){if(e<0||e>this.length)return null;for(var r=0,n=this.offsets;n[r+1]<=e;)r++;var a=e-n[r];return{line:r,column:a}},t.prototype.indexForLocation=function(e){var r=e.line,n=e.column;return r<0||r>=this.offsets.length||n<0||n>this.lengthOfLine(r)?null:this.offsets[r]+n},t.prototype.lengthOfLine=function(e){var r=this.offsets[e],n=e===this.offsets.length-1?this.length:this.offsets[e+1];return n-r},t}();function tu(t,e){let r=new SyntaxError(t+" ("+e.loc.start.line+":"+e.loc.start.column+")");return Object.assign(r,e)}var eu=tu;function ru(t){let e=t.children??t.body;if(e)for(let r=0;r<e.length-1;r++)e[r].type==="TextNode"&&e[r+1].type==="MustacheStatement"&&(e[r].chars=e[r].chars.replace(/\\$/u,"\\\\"))}function nu(t){let e=new Zs(t),r=({line:a,column:s})=>e.indexForLocation({line:a-1,column:s}),n=a=>{let{start:s,end:u}=a.loc;s.offset=r(s),u.offset=r(u)};return()=>({name:"prettierParsePlugin",visitor:{All(a){n(a),ru(a)}}})}function au(t){let e;try{e=Xs(t,{mode:"codemod",plugins:{ast:[nu(t)]}})}catch(r){let n=uu(r);if(n){let a=su(r);throw eu(a,{loc:n,cause:r})}throw r}return e}function su(t){let{message:e}=t,r=e.split(`
30
+ `);return r.length>=4&&/^Parse error on line \d+:$/u.test(r[0])&&/^-*\^$/u.test(Tt(!1,r,-2))?Tt(!1,r,-1):r.length>=4&&/:\s?$/u.test(r[0])&&/^\(error occurred in '.*?' @ line \d+ : column \d+\)$/u.test(Tt(!1,r,-1))&&r[1]===""&&Tt(!1,r,-2)===""&&r.slice(2,-2).every(n=>n.startsWith("|"))?r[0].trim().slice(0,-1):e}function uu(t){let{location:e,hash:r}=t;if(e){let{start:n,end:a}=e;return typeof a.line!="number"?{start:n}:e}if(r){let{loc:{last_line:n,last_column:a}}=r;return{start:{line:n,column:a+1}}}}var iu={parse:au,astFormat:"glimmer",locStart:Lt,locEnd:Ee},on={glimmer:Sa},ou=Sr;exports.default=ou;exports.languages=Gr;exports.parsers=Ue;exports.printers=on;