From ff5d14fb634d9073a961b7ec3f242d782b0d33a1 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Sat, 12 Nov 2022 16:52:00 +0100 Subject: [PATCH] can now have multiple triggers + Pattern.log now makes sense --- packages/core/fraction.mjs | 3 ++- packages/core/hap.mjs | 8 ++++++-- packages/core/pattern.mjs | 16 ++++++++++------ packages/core/repl.mjs | 12 +++++++----- packages/react/dist/index.cjs.js | 2 +- packages/react/dist/index.es.js | 5 +---- packages/react/src/hooks/useHighlighting.mjs | 1 - repl/README.md | 1 + repl/src/App.jsx | 6 ++++-- 9 files changed, 32 insertions(+), 22 deletions(-) diff --git a/packages/core/fraction.mjs b/packages/core/fraction.mjs index 5204395d..d28d051d 100644 --- a/packages/core/fraction.mjs +++ b/packages/core/fraction.mjs @@ -55,7 +55,8 @@ Fraction.prototype.min = function (other) { return this.lt(other) ? this : other; }; -Fraction.prototype.show = function () { +Fraction.prototype.show = function (/* excludeWhole = false */) { + // return this.toFraction(excludeWhole); return this.s * this.n + '/' + this.d; }; diff --git a/packages/core/hap.mjs b/packages/core/hap.mjs index a0107d87..ba95d132 100644 --- a/packages/core/hap.mjs +++ b/packages/core/hap.mjs @@ -85,9 +85,13 @@ export class Hap { ); } - showWhole() { + showWhole(compact = false) { return `${this.whole == undefined ? '~' : this.whole.show()}: ${ - typeof this.value === 'object' ? JSON.stringify(this.value) : this.value + typeof this.value === 'object' + ? compact + ? JSON.stringify(this.value).slice(1, -1).replaceAll('"', '').replaceAll(',', ' ') + : JSON.stringify(this.value) + : this.value }`; } diff --git a/packages/core/pattern.mjs b/packages/core/pattern.mjs index 3db6d720..c3211ee7 100644 --- a/packages/core/pattern.mjs +++ b/packages/core/pattern.mjs @@ -12,6 +12,7 @@ import { unionWithObj } from './value.mjs'; import { compose, removeUndefineds, flatten, id, listRange, curry, mod, numeralArgs, parseNumeral } from './util.mjs'; import drawLine from './drawLine.mjs'; +import { logger } from './logger.mjs'; let stringParser; // parser is expected to turn a string into a pattern @@ -1328,22 +1329,25 @@ export class Pattern { .unit('c') .slow(factor); } - onTrigger(onTrigger) { - return this._withHap((hap) => hap.setContext({ ...hap.context, onTrigger })); - } - log(func = id) { + onTrigger(onTrigger, dominant = true) { return this._withHap((hap) => hap.setContext({ ...hap.context, onTrigger: (...args) => { - if (hap.context.onTrigger) { + if (!dominant && hap.context.onTrigger) { hap.context.onTrigger(...args); } - console.log(func(...args)); + onTrigger(...args); }, + // we need this to know later if the default trigger should still fire + dominantTrigger: dominant, }), ); } + + log(func = (_, hap) => `[hap] ${hap.showWhole(true)}`) { + return this.onTrigger((...args) => logger(func(...args)), false); + } logValues(func = id) { return this.log((_, hap) => func(hap.value)); } diff --git a/packages/core/repl.mjs b/packages/core/repl.mjs index 978d3762..ae952cec 100644 --- a/packages/core/repl.mjs +++ b/packages/core/repl.mjs @@ -17,12 +17,14 @@ export function repl({ interval, onTrigger: async (hap, deadline, duration) => { try { - if (!hap.context.onTrigger) { - return await defaultOutput(hap, deadline, duration); + if (!hap.context.onTrigger || !hap.context.dominantTrigger) { + await defaultOutput(hap, deadline, duration); + } + if (hap.context.onTrigger) { + const cps = 1; + // call signature of output / onTrigger is different... + await hap.context.onTrigger(getTime() + deadline, hap, getTime(), cps); } - const cps = 1; // TODO: fix - // call signature of output / onTrigger is different... - return await hap.context.onTrigger(getTime() + deadline, hap, getTime(), cps); } catch (err) { logger(`[cyclist] error: ${err.message}`, 'error'); } diff --git a/packages/react/dist/index.cjs.js b/packages/react/dist/index.cjs.js index 74dc95f4..0cb5287f 100644 --- a/packages/react/dist/index.cjs.js +++ b/packages/react/dist/index.cjs.js @@ -1,4 +1,4 @@ -"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const ee=require("react"),br=require("@uiw/react-codemirror"),Be=require("@codemirror/view"),Dt=require("@codemirror/state"),Sr=require("@codemirror/lang-javascript"),re=require("@lezer/highlight"),Br=require("@uiw/codemirror-themes"),_r=require("react-hook-inview"),mi=require("@strudel.cycles/webaudio"),Ci=require("@strudel.cycles/core"),Ai=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function wr(e){if(e&&e.__esModule)return e;const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const i in e)if(i!=="default"){const u=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,u.get?u:{enumerable:!0,get:()=>e[i]})}}return t.default=e,Object.freeze(t)}const fe=Ai(ee),kr=Ai(br),Ir=wr(Ci),Pr=Br.createTheme({theme:"dark",settings:{background:"#222",foreground:"#75baff",caret:"#ffcc00",selection:"rgba(128, 203, 196, 0.5)",selectionMatch:"#036dd626",lineHighlight:"#00000050",gutterBackground:"transparent",gutterForeground:"#8a919966"},styles:[{tag:re.tags.keyword,color:"#c792ea"},{tag:re.tags.operator,color:"#89ddff"},{tag:re.tags.special(re.tags.variableName),color:"#eeffff"},{tag:re.tags.typeName,color:"#c3e88d"},{tag:re.tags.atom,color:"#f78c6c"},{tag:re.tags.number,color:"#c3e88d"},{tag:re.tags.definition(re.tags.variableName),color:"#82aaff"},{tag:re.tags.string,color:"#c3e88d"},{tag:re.tags.special(re.tags.string),color:"#c3e88d"},{tag:re.tags.comment,color:"#7d8799"},{tag:re.tags.variableName,color:"#c792ea"},{tag:re.tags.tagName,color:"#c3e88d"},{tag:re.tags.bracket,color:"#525154"},{tag:re.tags.meta,color:"#ffcb6b"},{tag:re.tags.attributeName,color:"#c792ea"},{tag:re.tags.propertyName,color:"#c792ea"},{tag:re.tags.className,color:"#decb6b"},{tag:re.tags.invalid,color:"#ffffff"}]});const kt=Dt.StateEffect.define(),Lr=Dt.StateField.define({create(){return Be.Decoration.none},update(e,t){try{for(let i of t.effects)if(i.is(kt))if(i.value){const u=Be.Decoration.mark({attributes:{style:"background-color: #FFCA2880"}});e=Be.Decoration.set([u.range(0,t.newDoc.length)])}else e=Be.Decoration.set([]);return e}catch(i){return console.warn("flash error",i),e}},provide:e=>Be.EditorView.decorations.from(e)}),Ei=e=>{e.dispatch({effects:kt.of(!0)}),setTimeout(()=>{e.dispatch({effects:kt.of(!1)})},200)},ct=Dt.StateEffect.define(),Nr=Dt.StateField.define({create(){return Be.Decoration.none},update(e,t){try{for(let i of t.effects)if(i.is(ct)){const u=i.value.map(n=>(n.context.locations||[]).map(({start:c,end:a})=>{const f=n.context.color||"#FFCA28";let p=t.newDoc.line(c.line).from+c.column,D=t.newDoc.line(a.line).from+a.column;const g=t.newDoc.length;return p>g||D>g?void 0:Be.Decoration.mark({attributes:{style:`outline: 1.5px solid ${f};`}}).range(p,D)})).flat().filter(Boolean)||[];e=Be.Decoration.set(u,!0)}return e}catch{return Be.Decoration.set([])}},provide:e=>Be.EditorView.decorations.from(e)}),Tr=[Sr.javascript(),Pr,Nr,Lr];function Fi({value:e,onChange:t,onViewChanged:i,onSelectionChange:u,options:n,editorDidMount:c}){const a=ee.useCallback(D=>{t?.(D)},[t]),f=ee.useCallback(D=>{i?.(D)},[i]),p=ee.useCallback(D=>{D.selectionSet&&u&&u?.(D.state.selection)},[u]);return fe.default.createElement(fe.default.Fragment,null,fe.default.createElement(kr.default,{value:e,onChange:a,onCreateEditor:f,onUpdate:p,extensions:Tr}))}function It(...e){return e.filter(Boolean).join(" ")}function vi({view:e,pattern:t,active:i,getTime:u}){const n=ee.useRef([]),c=ee.useRef();ee.useEffect(()=>{if(e)if(t&&i){let f=function(){try{const p=u(),g=[Math.max(c.current||p,p-1/10,0),p+1/60];c.current=g[1],n.current=n.current.filter(m=>m.whole.end>p);const v=t.queryArc(...g).filter(m=>m.hasOnset());n.current=n.current.concat(v),e.dispatch({effects:ct.of(n.current)})}catch{e.dispatch({effects:ct.of([])})}a=requestAnimationFrame(f)},a=requestAnimationFrame(f);return()=>{cancelAnimationFrame(a)}}else n.current=[],e.dispatch({effects:ct.of([])})},[t,i,e])}const Rr="_container_3i85k_1",Mr="_header_3i85k_5",Or="_buttons_3i85k_9",Vr="_button_3i85k_9",qr="_buttonDisabled_3i85k_17",Ur="_error_3i85k_21",jr="_body_3i85k_25",Le={container:Rr,header:Mr,buttons:Or,button:Vr,buttonDisabled:qr,error:Ur,body:jr};function ei({type:e}){return fe.default.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",className:"sc-h-5 sc-w-5",viewBox:"0 0 20 20",fill:"currentColor"},{refresh:fe.default.createElement("path",{fillRule:"evenodd",d:"M4 2a1 1 0 011 1v2.101a7.002 7.002 0 0111.601 2.566 1 1 0 11-1.885.666A5.002 5.002 0 005.999 7H9a1 1 0 010 2H4a1 1 0 01-1-1V3a1 1 0 011-1zm.008 9.057a1 1 0 011.276.61A5.002 5.002 0 0014.001 13H11a1 1 0 110-2h5a1 1 0 011 1v5a1 1 0 11-2 0v-2.101a7.002 7.002 0 01-11.601-2.566 1 1 0 01.61-1.276z",clipRule:"evenodd"}),play:fe.default.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM9.555 7.168A1 1 0 008 8v4a1 1 0 001.555.832l3-2a1 1 0 000-1.664l-3-2z",clipRule:"evenodd"}),pause:fe.default.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zM7 8a1 1 0 012 0v4a1 1 0 11-2 0V8zm5-1a1 1 0 00-1 1v4a1 1 0 102 0V8a1 1 0 00-1-1z",clipRule:"evenodd"})}[e])}function Wr(e,t,i=.05,u=.1,n=.1){let c=0,a=0,f=10**4,p=.01;const D=I=>i=I(i);n=n||u/2;const g=()=>{const I=e(),P=I+u+n;for(a===0&&(a=I+p);a=I&&t(a,i,c),a{A(),g(),v=setInterval(g,u*1e3)},A=()=>v!==void 0&&clearInterval(v);return{setDuration:D,start:m,stop:()=>{c=0,a=0,A()},pause:()=>A(),duration:i,getPhase:()=>a}}const xi="strudel.log";function Ne(e,t,i={}){console.log(`%c${e}`,"background-color: black;color:white;border-radius:15px"),typeof CustomEvent<"u"&&document.dispatchEvent(new CustomEvent(xi,{detail:{message:e,type:t,data:i}}))}Ne.key=xi;class Gr{worker;pattern;started=!1;cps=1;getTime;phase=0;constructor({interval:t,onTrigger:i,onToggle:u,onError:n,getTime:c,latency:a=.1}){this.getTime=c,this.onToggle=u,this.latency=a;const f=p=>Math.round(p*1e3)/1e3;this.clock=Wr(c,(p,D,g)=>{g===0&&(this.origin=p);const v=f(p-this.origin);this.phase=v-a;const m=f(v+D),A=c();try{this.pattern.queryArc(v,m).forEach(C=>{if(C.part.begin.equals(C.whole.begin)){const x=C.whole.begin+this.origin-A+a,I=C.duration*1;i?.(C,x,I)}})}catch(E){Ne(`[cyclist] error: ${E.message}`),n?.(E)}},t)}getPhase(t=!0){return this.phase-(t?this.latency:0)}setStarted(t){this.started=t,this.onToggle?.(t)}start(){if(!this.pattern)throw new Error("Scheduler: no pattern set! call .setPattern first.");Ne("[cyclist] start"),this.clock.start(),this.setStarted(!0)}pause(){Ne("[cyclist] pause"),this.clock.pause(),this.setStarted(!1)}stop(){Ne("[cyclist] stop"),this.clock.stop(),this.setStarted(!1)}setPattern(t,i=!1){this.pattern=t,i&&!this.started&&this.start()}setCps(t=1){this.cps=t}log(t,i,u){const n=u.filter(c=>c.hasOnset());console.log(`${t.toFixed(4)} - ${i.toFixed(4)} ${Array(n.length).fill("I").join("")}`)}}const{isPattern:zr,Pattern:Hr}=Ir;let Pt=!1;const Kr=async(...e)=>{Pt&&console.warn("evalScope was called more than once."),Pt=!0;const t=await Promise.allSettled(e),i=t.filter(u=>u.status==="fulfilled").map(u=>u.value);t.forEach((u,n)=>{u.status==="rejected"&&console.warn(`evalScope: module with index ${n} could not be loaded:`,u.reason)}),Object.assign(globalThis,...i,Hr.prototype.bootstrap())};function Qr(e,t={}){const{wrapExpression:i=!0,wrapAsync:u=!0}=t;i&&(e=`{${e}}`),u&&(e=`(async ()=>${e})()`);const n=`"use strict";return (${e})`;return Function(n)()}const Yr=async(e,t)=>{Pt||await Kr(),t&&(e=t(e));let u=await Qr(e,{wrapExpression:!!t});if(!zr(u)){console.log("evaluated",u);const n=`got "${typeof u}" instead of pattern`;throw new Error(n+(typeof u=="function"?", did you forget to call a function?":"."))}return{mode:"javascript",pattern:u}};function Xr({interval:e,defaultOutput:t,onSchedulerError:i,onEvalError:u,beforeEval:n,afterEval:c,getTime:a,transpiler:f,onToggle:p}){const D=new Gr({interval:e,onTrigger:async(E,C,x)=>{try{if(!E.context.onTrigger)return await t(E,C,x);const I=1;return await E.context.onTrigger(a()+C,E,a(),I)}catch(I){Ne(`[cyclist] error: ${I.message}`,"error")}},onError:i,getTime:a,onToggle:p});return{scheduler:D,evaluate:async(E,C=!0)=>{if(!E)throw new Error("no code to evaluate");try{n({code:E});const{pattern:x}=await Yr(E,f);return Ne("[eval] code updated"),D.setPattern(x,C),c({code:E,pattern:x}),x}catch(x){Ne(`[eval] error: ${x.message}`,"error"),u?.(x)}},start:()=>D.start(),stop:()=>D.stop(),pause:()=>D.pause()}}var $r=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},yi={},bi={};(function(e){(function t(i){var u,n,c,a,f,p;function D(F){var S={},B,w;for(B in F)F.hasOwnProperty(B)&&(w=F[B],typeof w=="object"&&w!==null?S[B]=D(w):S[B]=w);return S}function g(F,S){var B,w,W,N;for(w=F.length,W=0;w;)B=w>>>1,N=W+B,S(F[N])?w=B:(W=N+1,w-=B+1);return W}u={AssignmentExpression:"AssignmentExpression",AssignmentPattern:"AssignmentPattern",ArrayExpression:"ArrayExpression",ArrayPattern:"ArrayPattern",ArrowFunctionExpression:"ArrowFunctionExpression",AwaitExpression:"AwaitExpression",BlockStatement:"BlockStatement",BinaryExpression:"BinaryExpression",BreakStatement:"BreakStatement",CallExpression:"CallExpression",CatchClause:"CatchClause",ChainExpression:"ChainExpression",ClassBody:"ClassBody",ClassDeclaration:"ClassDeclaration",ClassExpression:"ClassExpression",ComprehensionBlock:"ComprehensionBlock",ComprehensionExpression:"ComprehensionExpression",ConditionalExpression:"ConditionalExpression",ContinueStatement:"ContinueStatement",DebuggerStatement:"DebuggerStatement",DirectiveStatement:"DirectiveStatement",DoWhileStatement:"DoWhileStatement",EmptyStatement:"EmptyStatement",ExportAllDeclaration:"ExportAllDeclaration",ExportDefaultDeclaration:"ExportDefaultDeclaration",ExportNamedDeclaration:"ExportNamedDeclaration",ExportSpecifier:"ExportSpecifier",ExpressionStatement:"ExpressionStatement",ForStatement:"ForStatement",ForInStatement:"ForInStatement",ForOfStatement:"ForOfStatement",FunctionDeclaration:"FunctionDeclaration",FunctionExpression:"FunctionExpression",GeneratorExpression:"GeneratorExpression",Identifier:"Identifier",IfStatement:"IfStatement",ImportExpression:"ImportExpression",ImportDeclaration:"ImportDeclaration",ImportDefaultSpecifier:"ImportDefaultSpecifier",ImportNamespaceSpecifier:"ImportNamespaceSpecifier",ImportSpecifier:"ImportSpecifier",Literal:"Literal",LabeledStatement:"LabeledStatement",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",MetaProperty:"MetaProperty",MethodDefinition:"MethodDefinition",ModuleSpecifier:"ModuleSpecifier",NewExpression:"NewExpression",ObjectExpression:"ObjectExpression",ObjectPattern:"ObjectPattern",PrivateIdentifier:"PrivateIdentifier",Program:"Program",Property:"Property",PropertyDefinition:"PropertyDefinition",RestElement:"RestElement",ReturnStatement:"ReturnStatement",SequenceExpression:"SequenceExpression",SpreadElement:"SpreadElement",Super:"Super",SwitchStatement:"SwitchStatement",SwitchCase:"SwitchCase",TaggedTemplateExpression:"TaggedTemplateExpression",TemplateElement:"TemplateElement",TemplateLiteral:"TemplateLiteral",ThisExpression:"ThisExpression",ThrowStatement:"ThrowStatement",TryStatement:"TryStatement",UnaryExpression:"UnaryExpression",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator",WhileStatement:"WhileStatement",WithStatement:"WithStatement",YieldExpression:"YieldExpression"},c={AssignmentExpression:["left","right"],AssignmentPattern:["left","right"],ArrayExpression:["elements"],ArrayPattern:["elements"],ArrowFunctionExpression:["params","body"],AwaitExpression:["argument"],BlockStatement:["body"],BinaryExpression:["left","right"],BreakStatement:["label"],CallExpression:["callee","arguments"],CatchClause:["param","body"],ChainExpression:["expression"],ClassBody:["body"],ClassDeclaration:["id","superClass","body"],ClassExpression:["id","superClass","body"],ComprehensionBlock:["left","right"],ComprehensionExpression:["blocks","filter","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DirectiveStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExportAllDeclaration:["source"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source"],ExportSpecifier:["exported","local"],ExpressionStatement:["expression"],ForStatement:["init","test","update","body"],ForInStatement:["left","right","body"],ForOfStatement:["left","right","body"],FunctionDeclaration:["id","params","body"],FunctionExpression:["id","params","body"],GeneratorExpression:["blocks","filter","body"],Identifier:[],IfStatement:["test","consequent","alternate"],ImportExpression:["source"],ImportDeclaration:["specifiers","source"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],Literal:[],LabeledStatement:["label","body"],LogicalExpression:["left","right"],MemberExpression:["object","property"],MetaProperty:["meta","property"],MethodDefinition:["key","value"],ModuleSpecifier:[],NewExpression:["callee","arguments"],ObjectExpression:["properties"],ObjectPattern:["properties"],PrivateIdentifier:[],Program:["body"],Property:["key","value"],PropertyDefinition:["key","value"],RestElement:["argument"],ReturnStatement:["argument"],SequenceExpression:["expressions"],SpreadElement:["argument"],Super:[],SwitchStatement:["discriminant","cases"],SwitchCase:["test","consequent"],TaggedTemplateExpression:["tag","quasi"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],YieldExpression:["argument"]},a={},f={},p={},n={Break:a,Skip:f,Remove:p};function v(F,S){this.parent=F,this.key=S}v.prototype.replace=function(S){this.parent[this.key]=S},v.prototype.remove=function(){return Array.isArray(this.parent)?(this.parent.splice(this.key,1),!0):(this.replace(null),!1)};function m(F,S,B,w){this.node=F,this.path=S,this.wrap=B,this.ref=w}function A(){}A.prototype.path=function(){var S,B,w,W,N,G;function q(R,j){if(Array.isArray(j))for(w=0,W=j.length;w=0;--B)if(F[B].node===S)return!0;return!1}A.prototype.traverse=function(S,B){var w,W,N,G,q,R,j,J,se,ie,Y,Ce;for(this.__initialize(S,B),Ce={},w=this.__worklist,W=this.__leavelist,w.push(new m(S,null,null,null)),W.push(new m(null,null,null,null));w.length;){if(N=w.pop(),N===Ce){if(N=W.pop(),R=this.__execute(B.leave,N),this.__state===a||R===a)return;continue}if(N.node){if(R=this.__execute(B.enter,N),this.__state===a||R===a)return;if(w.push(Ce),W.push(N),this.__state===f||R===f)continue;if(G=N.node,q=G.type||N.wrap,ie=this.__keys[q],!ie)if(this.__fallback)ie=this.__fallback(G);else throw new Error("Unknown node type "+q+".");for(J=ie.length;(J-=1)>=0;)if(j=ie[J],Y=G[j],!!Y){if(Array.isArray(Y)){for(se=Y.length;(se-=1)>=0;)if(!!Y[se]&&!x(W,Y[se])){if(C(q,ie[J]))N=new m(Y[se],[j,se],"Property",null);else if(E(Y[se]))N=new m(Y[se],[j,se],null,null);else continue;w.push(N)}}else if(E(Y)){if(x(W,Y))continue;w.push(new m(Y,j,null,null))}}}}},A.prototype.replace=function(S,B){var w,W,N,G,q,R,j,J,se,ie,Y,Ce,be;function T(Me){var Ke,Qe,$,ge;if(Me.ref.remove()){for(Qe=Me.ref.key,ge=Me.ref.parent,Ke=w.length;Ke--;)if($=w[Ke],$.ref&&$.ref.parent===ge){if($.ref.key=0;)if(be=se[j],ie=N[be],!!ie)if(Array.isArray(ie)){for(J=ie.length;(J-=1)>=0;)if(!!ie[J]){if(C(G,se[j]))R=new m(ie[J],[be,J],"Property",new v(ie,J));else if(E(ie[J]))R=new m(ie[J],[be,J],null,new v(ie,J));else continue;w.push(R)}}else E(ie)&&w.push(new m(ie,be,null,new v(N,be)))}}return Ce.root};function I(F,S){var B=new A;return B.traverse(F,S)}function P(F,S){var B=new A;return B.replace(F,S)}function O(F,S){var B;return B=g(S,function(W){return W.range[0]>F.range[0]}),F.extendedRange=[F.range[0],F.range[1]],B!==S.length&&(F.extendedRange[1]=S[B].range[0]),B-=1,B>=0&&(F.extendedRange[0]=S[B].range[1]),F}function y(F,S,B){var w=[],W,N,G,q;if(!F.range)throw new Error("attachComments needs range information");if(!B.length){if(S.length){for(G=0,N=S.length;GR.range[0]));)j.extendedRange[1]===R.range[0]?(R.leadingComments||(R.leadingComments=[]),R.leadingComments.push(j),w.splice(q,1)):q+=1;if(q===w.length)return n.Break;if(w[q].extendedRange[0]>R.range[1])return n.Skip}}),q=0,I(F,{leave:function(R){for(var j;qR.range[1])return n.Skip}}),F}return i.Syntax=u,i.traverse=I,i.replace=P,i.attachComments=y,i.VisitorKeys=c,i.VisitorOption=n,i.Controller=A,i.cloneEnvironment=function(){return t({})},i})(e)})(bi);var ht={},Si={exports:{}};(function(){function e(a){if(a==null)return!1;switch(a.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"Literal":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":return!0}return!1}function t(a){if(a==null)return!1;switch(a.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":return!0}return!1}function i(a){if(a==null)return!1;switch(a.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":return!0}return!1}function u(a){return i(a)||a!=null&&a.type==="FunctionDeclaration"}function n(a){switch(a.type){case"IfStatement":return a.alternate!=null?a.alternate:a.consequent;case"LabeledStatement":case"ForStatement":case"ForInStatement":case"WhileStatement":case"WithStatement":return a.body}return null}function c(a){var f;if(a.type!=="IfStatement"||a.alternate==null)return!1;f=a.consequent;do{if(f.type==="IfStatement"&&f.alternate==null)return!0;f=n(f)}while(f);return!1}Si.exports={isExpression:e,isStatement:i,isIterationStatement:t,isSourceElement:u,isProblematicIfStatement:c,trailingStatement:n}})();var Rt={exports:{}};(function(){var e,t,i,u,n,c;t={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,NonAsciiIdentifierPart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/},e={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]/,NonAsciiIdentifierPart:/[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/};function a(x){return 48<=x&&x<=57}function f(x){return 48<=x&&x<=57||97<=x&&x<=102||65<=x&&x<=70}function p(x){return x>=48&&x<=55}i=[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279];function D(x){return x===32||x===9||x===11||x===12||x===160||x>=5760&&i.indexOf(x)>=0}function g(x){return x===10||x===13||x===8232||x===8233}function v(x){if(x<=65535)return String.fromCharCode(x);var I=String.fromCharCode(Math.floor((x-65536)/1024)+55296),P=String.fromCharCode((x-65536)%1024+56320);return I+P}for(u=new Array(128),c=0;c<128;++c)u[c]=c>=97&&c<=122||c>=65&&c<=90||c===36||c===95;for(n=new Array(128),c=0;c<128;++c)n[c]=c>=97&&c<=122||c>=65&&c<=90||c>=48&&c<=57||c===36||c===95;function m(x){return x<128?u[x]:t.NonAsciiIdentifierStart.test(v(x))}function A(x){return x<128?n[x]:t.NonAsciiIdentifierPart.test(v(x))}function E(x){return x<128?u[x]:e.NonAsciiIdentifierStart.test(v(x))}function C(x){return x<128?n[x]:e.NonAsciiIdentifierPart.test(v(x))}Rt.exports={isDecimalDigit:a,isHexDigit:f,isOctalDigit:p,isWhiteSpace:D,isLineTerminator:g,isIdentifierStartES5:m,isIdentifierPartES5:A,isIdentifierStartES6:E,isIdentifierPartES6:C}})();var Bi={exports:{}};(function(){var e=Rt.exports;function t(m){switch(m){case"implements":case"interface":case"package":case"private":case"protected":case"public":case"static":case"let":return!0;default:return!1}}function i(m,A){return!A&&m==="yield"?!1:u(m,A)}function u(m,A){if(A&&t(m))return!0;switch(m.length){case 2:return m==="if"||m==="in"||m==="do";case 3:return m==="var"||m==="for"||m==="new"||m==="try";case 4:return m==="this"||m==="else"||m==="case"||m==="void"||m==="with"||m==="enum";case 5:return m==="while"||m==="break"||m==="catch"||m==="throw"||m==="const"||m==="yield"||m==="class"||m==="super";case 6:return m==="return"||m==="typeof"||m==="delete"||m==="switch"||m==="export"||m==="import";case 7:return m==="default"||m==="finally"||m==="extends";case 8:return m==="function"||m==="continue"||m==="debugger";case 10:return m==="instanceof";default:return!1}}function n(m,A){return m==="null"||m==="true"||m==="false"||i(m,A)}function c(m,A){return m==="null"||m==="true"||m==="false"||u(m,A)}function a(m){return m==="eval"||m==="arguments"}function f(m){var A,E,C;if(m.length===0||(C=m.charCodeAt(0),!e.isIdentifierStartES5(C)))return!1;for(A=1,E=m.length;A=E||(x=m.charCodeAt(A),!(56320<=x&&x<=57343)))return!1;C=p(C,x)}if(!I(C))return!1;I=e.isIdentifierPartES6}return!0}function g(m,A){return f(m)&&!n(m,A)}function v(m,A){return D(m)&&!c(m,A)}Bi.exports={isKeywordES5:i,isKeywordES6:u,isReservedWordES5:n,isReservedWordES6:c,isRestrictedWord:a,isIdentifierNameES5:f,isIdentifierNameES6:D,isIdentifierES5:g,isIdentifierES6:v}})();(function(){ht.ast=Si.exports,ht.code=Rt.exports,ht.keyword=Bi.exports})();var Xe={},Et={},ot={},lt={},ti;function Zr(){if(ti)return lt;ti=1;var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");return lt.encode=function(t){if(0<=t&&t>1;return p?-D:D}return ot.encode=function(p){var D="",g,v=c(p);do g=v&u,v>>>=t,v>0&&(g|=n),D+=e.encode(g);while(v>0);return D},ot.decode=function(p,D,g){var v=p.length,m=0,A=0,E,C;do{if(D>=v)throw new Error("Expected more digits in base 64 VLQ value.");if(C=e.decode(p.charCodeAt(D++)),C===-1)throw new Error("Invalid base64 digit: "+p.charAt(D-1));E=!!(C&n),C&=u,m=m+(C<=0;G--)W=w[G],W==="."?w.splice(G,1):W===".."?N++:N>0&&(W===""?(w.splice(G+1,N),N=0):(w.splice(G,2),N--));return F=w.join("/"),F===""&&(F=B?"/":"."),S?(S.path=F,c(S)):F}e.normalize=a;function f(y,F){y===""&&(y="."),F===""&&(F=".");var S=n(F),B=n(y);if(B&&(y=B.path||"/"),S&&!S.scheme)return B&&(S.scheme=B.scheme),c(S);if(S||F.match(u))return F;if(B&&!B.host&&!B.path)return B.host=F,c(B);var w=F.charAt(0)==="/"?F:a(y.replace(/\/+$/,"")+"/"+F);return B?(B.path=w,c(B)):w}e.join=f,e.isAbsolute=function(y){return y.charAt(0)==="/"||i.test(y)};function p(y,F){y===""&&(y="."),y=y.replace(/\/$/,"");for(var S=0;F.indexOf(y+"/")!==0;){var B=y.lastIndexOf("/");if(B<0||(y=y.slice(0,B),y.match(/^([^\/]+:\/)?\/*$/)))return F;++S}return Array(S+1).join("../")+F.substr(y.length+1)}e.relative=p;var D=function(){var y=Object.create(null);return!("__proto__"in y)}();function g(y){return y}function v(y){return A(y)?"$"+y:y}e.toSetString=D?g:v;function m(y){return A(y)?y.slice(1):y}e.fromSetString=D?g:m;function A(y){if(!y)return!1;var F=y.length;if(F<9||y.charCodeAt(F-1)!==95||y.charCodeAt(F-2)!==95||y.charCodeAt(F-3)!==111||y.charCodeAt(F-4)!==116||y.charCodeAt(F-5)!==111||y.charCodeAt(F-6)!==114||y.charCodeAt(F-7)!==112||y.charCodeAt(F-8)!==95||y.charCodeAt(F-9)!==95)return!1;for(var S=F-10;S>=0;S--)if(y.charCodeAt(S)!==36)return!1;return!0}function E(y,F,S){var B=x(y.source,F.source);return B!==0||(B=y.originalLine-F.originalLine,B!==0)||(B=y.originalColumn-F.originalColumn,B!==0||S)||(B=y.generatedColumn-F.generatedColumn,B!==0)||(B=y.generatedLine-F.generatedLine,B!==0)?B:x(y.name,F.name)}e.compareByOriginalPositions=E;function C(y,F,S){var B=y.generatedLine-F.generatedLine;return B!==0||(B=y.generatedColumn-F.generatedColumn,B!==0||S)||(B=x(y.source,F.source),B!==0)||(B=y.originalLine-F.originalLine,B!==0)||(B=y.originalColumn-F.originalColumn,B!==0)?B:x(y.name,F.name)}e.compareByGeneratedPositionsDeflated=C;function x(y,F){return y===F?0:y===null?1:F===null?-1:y>F?1:-1}function I(y,F){var S=y.generatedLine-F.generatedLine;return S!==0||(S=y.generatedColumn-F.generatedColumn,S!==0)||(S=x(y.source,F.source),S!==0)||(S=y.originalLine-F.originalLine,S!==0)||(S=y.originalColumn-F.originalColumn,S!==0)?S:x(y.name,F.name)}e.compareByGeneratedPositionsInflated=I;function P(y){return JSON.parse(y.replace(/^\)]}'[^\n]*\n/,""))}e.parseSourceMapInput=P;function O(y,F,S){if(F=F||"",y&&(y[y.length-1]!=="/"&&F[0]!=="/"&&(y+="/"),F=y+F),S){var B=n(S);if(!B)throw new Error("sourceMapURL could not be parsed");if(B.path){var w=B.path.lastIndexOf("/");w>=0&&(B.path=B.path.substring(0,w+1))}F=f(c(B),F)}return a(F)}e.computeSourceURL=O}(Ft)),Ft}var vt={},ui;function wi(){if(ui)return vt;ui=1;var e=tt(),t=Object.prototype.hasOwnProperty,i=typeof Map<"u";function u(){this._array=[],this._set=i?new Map:Object.create(null)}return u.fromArray=function(c,a){for(var f=new u,p=0,D=c.length;p=0)return a}else{var f=e.toSetString(c);if(t.call(this._set,f))return this._set[f]}throw new Error('"'+c+'" is not in the set.')},u.prototype.at=function(c){if(c>=0&&cc||a==c&&p>=f||e.compareByGeneratedPositionsInflated(u,n)<=0}function i(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}return i.prototype.unsortedForEach=function(n,c){this._array.forEach(n,c)},i.prototype.add=function(n){t(this._last,n)?(this._last=n,this._array.push(n)):(this._sorted=!1,this._array.push(n))},i.prototype.toArray=function(){return this._sorted||(this._array.sort(e.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},xt.MappingList=i,xt}var si;function ki(){if(si)return Et;si=1;var e=_i(),t=tt(),i=wi().ArraySet,u=Jr().MappingList;function n(c){c||(c={}),this._file=t.getArg(c,"file",null),this._sourceRoot=t.getArg(c,"sourceRoot",null),this._skipValidation=t.getArg(c,"skipValidation",!1),this._sources=new i,this._names=new i,this._mappings=new u,this._sourcesContents=null}return n.prototype._version=3,n.fromSourceMap=function(a){var f=a.sourceRoot,p=new n({file:a.file,sourceRoot:f});return a.eachMapping(function(D){var g={generated:{line:D.generatedLine,column:D.generatedColumn}};D.source!=null&&(g.source=D.source,f!=null&&(g.source=t.relative(f,g.source)),g.original={line:D.originalLine,column:D.originalColumn},D.name!=null&&(g.name=D.name)),p.addMapping(g)}),a.sources.forEach(function(D){var g=D;f!==null&&(g=t.relative(f,D)),p._sources.has(g)||p._sources.add(g);var v=a.sourceContentFor(D);v!=null&&p.setSourceContent(D,v)}),p},n.prototype.addMapping=function(a){var f=t.getArg(a,"generated"),p=t.getArg(a,"original",null),D=t.getArg(a,"source",null),g=t.getArg(a,"name",null);this._skipValidation||this._validateMapping(f,p,D,g),D!=null&&(D=String(D),this._sources.has(D)||this._sources.add(D)),g!=null&&(g=String(g),this._names.has(g)||this._names.add(g)),this._mappings.add({generatedLine:f.line,generatedColumn:f.column,originalLine:p!=null&&p.line,originalColumn:p!=null&&p.column,source:D,name:g})},n.prototype.setSourceContent=function(a,f){var p=a;this._sourceRoot!=null&&(p=t.relative(this._sourceRoot,p)),f!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[t.toSetString(p)]=f):this._sourcesContents&&(delete this._sourcesContents[t.toSetString(p)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))},n.prototype.applySourceMap=function(a,f,p){var D=f;if(f==null){if(a.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);D=a.file}var g=this._sourceRoot;g!=null&&(D=t.relative(g,D));var v=new i,m=new i;this._mappings.unsortedForEach(function(A){if(A.source===D&&A.originalLine!=null){var E=a.originalPositionFor({line:A.originalLine,column:A.originalColumn});E.source!=null&&(A.source=E.source,p!=null&&(A.source=t.join(p,A.source)),g!=null&&(A.source=t.relative(g,A.source)),A.originalLine=E.line,A.originalColumn=E.column,E.name!=null&&(A.name=E.name))}var C=A.source;C!=null&&!v.has(C)&&v.add(C);var x=A.name;x!=null&&!m.has(x)&&m.add(x)},this),this._sources=v,this._names=m,a.sources.forEach(function(A){var E=a.sourceContentFor(A);E!=null&&(p!=null&&(A=t.join(p,A)),g!=null&&(A=t.relative(g,A)),this.setSourceContent(A,E))},this)},n.prototype._validateMapping=function(a,f,p,D){if(f&&typeof f.line!="number"&&typeof f.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(a&&"line"in a&&"column"in a&&a.line>0&&a.column>=0&&!f&&!p&&!D)){if(a&&"line"in a&&"column"in a&&f&&"line"in f&&"column"in f&&a.line>0&&a.column>=0&&f.line>0&&f.column>=0&&p)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:a,source:p,original:f,name:D}))}},n.prototype._serializeMappings=function(){for(var a=0,f=1,p=0,D=0,g=0,v=0,m="",A,E,C,x,I=this._mappings.toArray(),P=0,O=I.length;P0){if(!t.compareByGeneratedPositionsInflated(E,I[P-1]))continue;A+=","}A+=e.encode(E.generatedColumn-a),a=E.generatedColumn,E.source!=null&&(x=this._sources.indexOf(E.source),A+=e.encode(x-v),v=x,A+=e.encode(E.originalLine-1-D),D=E.originalLine-1,A+=e.encode(E.originalColumn-p),p=E.originalColumn,E.name!=null&&(C=this._names.indexOf(E.name),A+=e.encode(C-g),g=C)),m+=A}return m},n.prototype._generateSourcesContent=function(a,f){return a.map(function(p){if(!this._sourcesContents)return null;f!=null&&(p=t.relative(f,p));var D=t.toSetString(p);return Object.prototype.hasOwnProperty.call(this._sourcesContents,D)?this._sourcesContents[D]:null},this)},n.prototype.toJSON=function(){var a={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(a.file=this._file),this._sourceRoot!=null&&(a.sourceRoot=this._sourceRoot),this._sourcesContents&&(a.sourcesContent=this._generateSourcesContent(a.sources,a.sourceRoot)),a},n.prototype.toString=function(){return JSON.stringify(this.toJSON())},Et.SourceMapGenerator=n,Et}var $e={},yt={},ai;function eu(){return ai||(ai=1,function(e){e.GREATEST_LOWER_BOUND=1,e.LEAST_UPPER_BOUND=2;function t(i,u,n,c,a,f){var p=Math.floor((u-i)/2)+i,D=a(n,c[p],!0);return D===0?p:D>0?u-p>1?t(p,u,n,c,a,f):f==e.LEAST_UPPER_BOUND?u1?t(i,p,n,c,a,f):f==e.LEAST_UPPER_BOUND?p:i<0?-1:i}e.search=function(u,n,c,a){if(n.length===0)return-1;var f=t(-1,n.length,u,n,c,a||e.GREATEST_LOWER_BOUND);if(f<0)return-1;for(;f-1>=0&&c(n[f],n[f-1],!0)===0;)--f;return f}}(yt)),yt}var bt={},oi;function tu(){if(oi)return bt;oi=1;function e(u,n,c){var a=u[n];u[n]=u[c],u[c]=a}function t(u,n){return Math.round(u+Math.random()*(n-u))}function i(u,n,c,a){if(c=0){var C=this._originalMappings[E];if(g.column===void 0)for(var x=C.originalLine;C&&C.originalLine===x;)A.push({line:e.getArg(C,"generatedLine",null),column:e.getArg(C,"generatedColumn",null),lastColumn:e.getArg(C,"lastGeneratedColumn",null)}),C=this._originalMappings[++E];else for(var I=C.originalColumn;C&&C.originalLine===v&&C.originalColumn==I;)A.push({line:e.getArg(C,"generatedLine",null),column:e.getArg(C,"generatedColumn",null),lastColumn:e.getArg(C,"lastGeneratedColumn",null)}),C=this._originalMappings[++E]}return A},$e.SourceMapConsumer=c;function a(D,g){var v=D;typeof D=="string"&&(v=e.parseSourceMapInput(D));var m=e.getArg(v,"version"),A=e.getArg(v,"sources"),E=e.getArg(v,"names",[]),C=e.getArg(v,"sourceRoot",null),x=e.getArg(v,"sourcesContent",null),I=e.getArg(v,"mappings"),P=e.getArg(v,"file",null);if(m!=this._version)throw new Error("Unsupported version: "+m);C&&(C=e.normalize(C)),A=A.map(String).map(e.normalize).map(function(O){return C&&e.isAbsolute(C)&&e.isAbsolute(O)?e.relative(C,O):O}),this._names=i.fromArray(E.map(String),!0),this._sources=i.fromArray(A,!0),this._absoluteSources=this._sources.toArray().map(function(O){return e.computeSourceURL(C,O,g)}),this.sourceRoot=C,this.sourcesContent=x,this._mappings=I,this._sourceMapURL=g,this.file=P}a.prototype=Object.create(c.prototype),a.prototype.consumer=c,a.prototype._findSourceIndex=function(D){var g=D;if(this.sourceRoot!=null&&(g=e.relative(this.sourceRoot,g)),this._sources.has(g))return this._sources.indexOf(g);var v;for(v=0;v1&&(w.source=x+N[1],x+=N[1],w.originalLine=E+N[2],E=w.originalLine,w.originalLine+=1,w.originalColumn=C+N[3],C=w.originalColumn,N.length>4&&(w.name=I+N[4],I+=N[4])),B.push(w),typeof w.originalLine=="number"&&S.push(w)}n(B,e.compareByGeneratedPositionsDeflated),this.__generatedMappings=B,n(S,e.compareByOriginalPositions),this.__originalMappings=S},a.prototype._findMapping=function(g,v,m,A,E,C){if(g[m]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+g[m]);if(g[A]<0)throw new TypeError("Column must be greater than or equal to 0, got "+g[A]);return t.search(g,v,E,C)},a.prototype.computeColumnSpans=function(){for(var g=0;g=0){var A=this._generatedMappings[m];if(A.generatedLine===v.generatedLine){var E=e.getArg(A,"source",null);E!==null&&(E=this._sources.at(E),E=e.computeSourceURL(this.sourceRoot,E,this._sourceMapURL));var C=e.getArg(A,"name",null);return C!==null&&(C=this._names.at(C)),{source:E,line:e.getArg(A,"originalLine",null),column:e.getArg(A,"originalColumn",null),name:C}}}return{source:null,line:null,column:null,name:null}},a.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(g){return g==null}):!1},a.prototype.sourceContentFor=function(g,v){if(!this.sourcesContent)return null;var m=this._findSourceIndex(g);if(m>=0)return this.sourcesContent[m];var A=g;this.sourceRoot!=null&&(A=e.relative(this.sourceRoot,A));var E;if(this.sourceRoot!=null&&(E=e.urlParse(this.sourceRoot))){var C=A.replace(/^file:\/\//,"");if(E.scheme=="file"&&this._sources.has(C))return this.sourcesContent[this._sources.indexOf(C)];if((!E.path||E.path=="/")&&this._sources.has("/"+A))return this.sourcesContent[this._sources.indexOf("/"+A)]}if(v)return null;throw new Error('"'+A+'" is not in the SourceMap.')},a.prototype.generatedPositionFor=function(g){var v=e.getArg(g,"source");if(v=this._findSourceIndex(v),v<0)return{line:null,column:null,lastColumn:null};var m={source:v,originalLine:e.getArg(g,"line"),originalColumn:e.getArg(g,"column")},A=this._findMapping(m,this._originalMappings,"originalLine","originalColumn",e.compareByOriginalPositions,e.getArg(g,"bias",c.GREATEST_LOWER_BOUND));if(A>=0){var E=this._originalMappings[A];if(E.source===m.source)return{line:e.getArg(E,"generatedLine",null),column:e.getArg(E,"generatedColumn",null),lastColumn:e.getArg(E,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},$e.BasicSourceMapConsumer=a;function p(D,g){var v=D;typeof D=="string"&&(v=e.parseSourceMapInput(D));var m=e.getArg(v,"version"),A=e.getArg(v,"sections");if(m!=this._version)throw new Error("Unsupported version: "+m);this._sources=new i,this._names=new i;var E={line:-1,column:0};this._sections=A.map(function(C){if(C.url)throw new Error("Support for url field in sections not implemented.");var x=e.getArg(C,"offset"),I=e.getArg(x,"line"),P=e.getArg(x,"column");if(I=0;p--)this.prepend(f[p]);else if(f[n]||typeof f=="string")this.children.unshift(f);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+f);return this},c.prototype.walk=function(f){for(var p,D=0,g=this.children.length;D0){for(p=[],D=0;D=6.0"},pu=[{name:"Yusuke Suzuki",email:"utatane.tea@gmail.com",web:"http://github.com/Constellation"}],du={type:"git",url:"http://github.com/estools/escodegen.git"},Du={estraverse:"^5.2.0",esutils:"^2.0.2",esprima:"^4.0.1",optionator:"^0.8.1"},gu={"source-map":"~0.6.1"},mu={acorn:"^7.3.1",bluebird:"^3.4.7","bower-registry-client":"^1.0.0",chai:"^4.2.0","chai-exclude":"^2.0.2","commonjs-everywhere":"^0.9.7",gulp:"^3.8.10","gulp-eslint":"^3.0.1","gulp-mocha":"^3.0.1",semver:"^5.1.0"},Cu="BSD-2-Clause",Au={test:"gulp travis","unit-test":"gulp test",lint:"gulp lint",release:"node tools/release.js","build-min":"./node_modules/.bin/cjsify -ma path: tools/entry-point.js > escodegen.browser.min.js",build:"./node_modules/.bin/cjsify -a path: tools/entry-point.js > escodegen.browser.js"},Eu={name:nu,description:su,homepage:au,main:ou,bin:lu,files:cu,version:hu,engines:fu,maintainers:pu,repository:du,dependencies:Du,optionalDependencies:gu,devDependencies:mu,license:Cu,scripts:Au};(function(e){(function(){var t,i,u,n,c,a,f,p,D,g,v,m,A,E,C,x,I,P,O,y,F,S,B,w,W,N;c=bi,a=ht,t=c.Syntax;function G(r){return ne.Expression.hasOwnProperty(r.type)}function q(r){return ne.Statement.hasOwnProperty(r.type)}i={Sequence:0,Yield:1,Assignment:1,Conditional:2,ArrowFunction:2,LogicalOR:3,LogicalAND:4,BitwiseOR:5,BitwiseXOR:6,BitwiseAND:7,Equality:8,Relational:9,BitwiseSHIFT:10,Additive:11,Multiplicative:12,Exponentiation:13,Await:14,Unary:14,Postfix:15,OptionalChaining:16,Call:17,New:18,TaggedTemplate:19,Member:20,Primary:21},u={"||":i.LogicalOR,"&&":i.LogicalAND,"|":i.BitwiseOR,"^":i.BitwiseXOR,"&":i.BitwiseAND,"==":i.Equality,"!=":i.Equality,"===":i.Equality,"!==":i.Equality,is:i.Equality,isnt:i.Equality,"<":i.Relational,">":i.Relational,"<=":i.Relational,">=":i.Relational,in:i.Relational,instanceof:i.Relational,"<<":i.BitwiseSHIFT,">>":i.BitwiseSHIFT,">>>":i.BitwiseSHIFT,"+":i.Additive,"-":i.Additive,"*":i.Multiplicative,"%":i.Multiplicative,"/":i.Multiplicative,"**":i.Exponentiation};var R=1,j=1<<1,J=1<<2,se=1<<3,ie=1<<4,Y=1<<5,Ce=j|J,be=R|j,T=R|j|J,Me=R,Ke=J,Qe=R|J,$=R,ge=R|Y,nt=0,hr=R|ie,fr=R|se;function zt(){return{indent:null,base:null,parse:null,comment:!1,format:{indent:{style:" ",base:0,adjustMultilineComment:!1},newline:` +"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const ee=require("react"),br=require("@uiw/react-codemirror"),Be=require("@codemirror/view"),Dt=require("@codemirror/state"),Sr=require("@codemirror/lang-javascript"),re=require("@lezer/highlight"),Br=require("@uiw/codemirror-themes"),_r=require("react-hook-inview"),mi=require("@strudel.cycles/webaudio"),Ci=require("@strudel.cycles/core"),Ai=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function wr(e){if(e&&e.__esModule)return e;const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const i in e)if(i!=="default"){const u=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,u.get?u:{enumerable:!0,get:()=>e[i]})}}return t.default=e,Object.freeze(t)}const fe=Ai(ee),kr=Ai(br),Ir=wr(Ci),Pr=Br.createTheme({theme:"dark",settings:{background:"#222",foreground:"#75baff",caret:"#ffcc00",selection:"rgba(128, 203, 196, 0.5)",selectionMatch:"#036dd626",lineHighlight:"#00000050",gutterBackground:"transparent",gutterForeground:"#8a919966"},styles:[{tag:re.tags.keyword,color:"#c792ea"},{tag:re.tags.operator,color:"#89ddff"},{tag:re.tags.special(re.tags.variableName),color:"#eeffff"},{tag:re.tags.typeName,color:"#c3e88d"},{tag:re.tags.atom,color:"#f78c6c"},{tag:re.tags.number,color:"#c3e88d"},{tag:re.tags.definition(re.tags.variableName),color:"#82aaff"},{tag:re.tags.string,color:"#c3e88d"},{tag:re.tags.special(re.tags.string),color:"#c3e88d"},{tag:re.tags.comment,color:"#7d8799"},{tag:re.tags.variableName,color:"#c792ea"},{tag:re.tags.tagName,color:"#c3e88d"},{tag:re.tags.bracket,color:"#525154"},{tag:re.tags.meta,color:"#ffcb6b"},{tag:re.tags.attributeName,color:"#c792ea"},{tag:re.tags.propertyName,color:"#c792ea"},{tag:re.tags.className,color:"#decb6b"},{tag:re.tags.invalid,color:"#ffffff"}]});const kt=Dt.StateEffect.define(),Lr=Dt.StateField.define({create(){return Be.Decoration.none},update(e,t){try{for(let i of t.effects)if(i.is(kt))if(i.value){const u=Be.Decoration.mark({attributes:{style:"background-color: #FFCA2880"}});e=Be.Decoration.set([u.range(0,t.newDoc.length)])}else e=Be.Decoration.set([]);return e}catch(i){return console.warn("flash error",i),e}},provide:e=>Be.EditorView.decorations.from(e)}),Ei=e=>{e.dispatch({effects:kt.of(!0)}),setTimeout(()=>{e.dispatch({effects:kt.of(!1)})},200)},ct=Dt.StateEffect.define(),Nr=Dt.StateField.define({create(){return Be.Decoration.none},update(e,t){try{for(let i of t.effects)if(i.is(ct)){const u=i.value.map(n=>(n.context.locations||[]).map(({start:c,end:a})=>{const f=n.context.color||"#FFCA28";let p=t.newDoc.line(c.line).from+c.column,D=t.newDoc.line(a.line).from+a.column;const g=t.newDoc.length;return p>g||D>g?void 0:Be.Decoration.mark({attributes:{style:`outline: 1.5px solid ${f};`}}).range(p,D)})).flat().filter(Boolean)||[];e=Be.Decoration.set(u,!0)}return e}catch{return Be.Decoration.set([])}},provide:e=>Be.EditorView.decorations.from(e)}),Tr=[Sr.javascript(),Pr,Nr,Lr];function Fi({value:e,onChange:t,onViewChanged:i,onSelectionChange:u,options:n,editorDidMount:c}){const a=ee.useCallback(D=>{t?.(D)},[t]),f=ee.useCallback(D=>{i?.(D)},[i]),p=ee.useCallback(D=>{D.selectionSet&&u&&u?.(D.state.selection)},[u]);return fe.default.createElement(fe.default.Fragment,null,fe.default.createElement(kr.default,{value:e,onChange:a,onCreateEditor:f,onUpdate:p,extensions:Tr}))}function It(...e){return e.filter(Boolean).join(" ")}function vi({view:e,pattern:t,active:i,getTime:u}){const n=ee.useRef([]),c=ee.useRef();ee.useEffect(()=>{if(e)if(t&&i){let f=function(){try{const p=u(),g=[Math.max(c.current||p,p-1/10,0),p+1/60];c.current=g[1],n.current=n.current.filter(m=>m.whole.end>p);const v=t.queryArc(...g).filter(m=>m.hasOnset());n.current=n.current.concat(v),e.dispatch({effects:ct.of(n.current)})}catch{e.dispatch({effects:ct.of([])})}a=requestAnimationFrame(f)},a=requestAnimationFrame(f);return()=>{cancelAnimationFrame(a)}}else n.current=[],e.dispatch({effects:ct.of([])})},[t,i,e])}const Rr="_container_3i85k_1",Mr="_header_3i85k_5",Or="_buttons_3i85k_9",Vr="_button_3i85k_9",qr="_buttonDisabled_3i85k_17",Ur="_error_3i85k_21",jr="_body_3i85k_25",Le={container:Rr,header:Mr,buttons:Or,button:Vr,buttonDisabled:qr,error:Ur,body:jr};function ei({type:e}){return fe.default.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",className:"sc-h-5 sc-w-5",viewBox:"0 0 20 20",fill:"currentColor"},{refresh:fe.default.createElement("path",{fillRule:"evenodd",d:"M4 2a1 1 0 011 1v2.101a7.002 7.002 0 0111.601 2.566 1 1 0 11-1.885.666A5.002 5.002 0 005.999 7H9a1 1 0 010 2H4a1 1 0 01-1-1V3a1 1 0 011-1zm.008 9.057a1 1 0 011.276.61A5.002 5.002 0 0014.001 13H11a1 1 0 110-2h5a1 1 0 011 1v5a1 1 0 11-2 0v-2.101a7.002 7.002 0 01-11.601-2.566 1 1 0 01.61-1.276z",clipRule:"evenodd"}),play:fe.default.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM9.555 7.168A1 1 0 008 8v4a1 1 0 001.555.832l3-2a1 1 0 000-1.664l-3-2z",clipRule:"evenodd"}),pause:fe.default.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zM7 8a1 1 0 012 0v4a1 1 0 11-2 0V8zm5-1a1 1 0 00-1 1v4a1 1 0 102 0V8a1 1 0 00-1-1z",clipRule:"evenodd"})}[e])}function Wr(e,t,i=.05,u=.1,n=.1){let c=0,a=0,f=10**4,p=.01;const D=I=>i=I(i);n=n||u/2;const g=()=>{const I=e(),P=I+u+n;for(a===0&&(a=I+p);a=I&&t(a,i,c),a{A(),g(),v=setInterval(g,u*1e3)},A=()=>v!==void 0&&clearInterval(v);return{setDuration:D,start:m,stop:()=>{c=0,a=0,A()},pause:()=>A(),duration:i,getPhase:()=>a}}const xi="strudel.log";function Ne(e,t,i={}){console.log(`%c${e}`,"background-color: black;color:white;border-radius:15px"),typeof CustomEvent<"u"&&document.dispatchEvent(new CustomEvent(xi,{detail:{message:e,type:t,data:i}}))}Ne.key=xi;class Gr{worker;pattern;started=!1;cps=1;getTime;phase=0;constructor({interval:t,onTrigger:i,onToggle:u,onError:n,getTime:c,latency:a=.1}){this.getTime=c,this.onToggle=u,this.latency=a;const f=p=>Math.round(p*1e3)/1e3;this.clock=Wr(c,(p,D,g)=>{g===0&&(this.origin=p);const v=f(p-this.origin);this.phase=v-a;const m=f(v+D),A=c();try{this.pattern.queryArc(v,m).forEach(C=>{if(C.part.begin.equals(C.whole.begin)){const x=C.whole.begin+this.origin-A+a,I=C.duration*1;i?.(C,x,I)}})}catch(E){Ne(`[cyclist] error: ${E.message}`),n?.(E)}},t)}getPhase(t=!0){return this.phase-(t?this.latency:0)}setStarted(t){this.started=t,this.onToggle?.(t)}start(){if(!this.pattern)throw new Error("Scheduler: no pattern set! call .setPattern first.");Ne("[cyclist] start"),this.clock.start(),this.setStarted(!0)}pause(){Ne("[cyclist] pause"),this.clock.pause(),this.setStarted(!1)}stop(){Ne("[cyclist] stop"),this.clock.stop(),this.setStarted(!1)}setPattern(t,i=!1){this.pattern=t,i&&!this.started&&this.start()}setCps(t=1){this.cps=t}log(t,i,u){const n=u.filter(c=>c.hasOnset());console.log(`${t.toFixed(4)} - ${i.toFixed(4)} ${Array(n.length).fill("I").join("")}`)}}const{isPattern:zr,Pattern:Hr}=Ir;let Pt=!1;const Kr=async(...e)=>{Pt&&console.warn("evalScope was called more than once."),Pt=!0;const t=await Promise.allSettled(e),i=t.filter(u=>u.status==="fulfilled").map(u=>u.value);t.forEach((u,n)=>{u.status==="rejected"&&console.warn(`evalScope: module with index ${n} could not be loaded:`,u.reason)}),Object.assign(globalThis,...i,Hr.prototype.bootstrap())};function Qr(e,t={}){const{wrapExpression:i=!0,wrapAsync:u=!0}=t;i&&(e=`{${e}}`),u&&(e=`(async ()=>${e})()`);const n=`"use strict";return (${e})`;return Function(n)()}const Yr=async(e,t)=>{Pt||await Kr(),t&&(e=t(e));let u=await Qr(e,{wrapExpression:!!t});if(!zr(u)){console.log("evaluated",u);const n=`got "${typeof u}" instead of pattern`;throw new Error(n+(typeof u=="function"?", did you forget to call a function?":"."))}return{mode:"javascript",pattern:u}};function Xr({interval:e,defaultOutput:t,onSchedulerError:i,onEvalError:u,beforeEval:n,afterEval:c,getTime:a,transpiler:f,onToggle:p}){const D=new Gr({interval:e,onTrigger:async(E,C,x)=>{try{(!E.context.onTrigger||!E.context.dominantTrigger)&&await t(E,C,x),E.context.onTrigger&&await E.context.onTrigger(a()+C,E,a(),1)}catch(I){Ne(`[cyclist] error: ${I.message}`,"error")}},onError:i,getTime:a,onToggle:p});return{scheduler:D,evaluate:async(E,C=!0)=>{if(!E)throw new Error("no code to evaluate");try{n({code:E});const{pattern:x}=await Yr(E,f);return Ne("[eval] code updated"),D.setPattern(x,C),c({code:E,pattern:x}),x}catch(x){Ne(`[eval] error: ${x.message}`,"error"),u?.(x)}},start:()=>D.start(),stop:()=>D.stop(),pause:()=>D.pause()}}var $r=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},yi={},bi={};(function(e){(function t(i){var u,n,c,a,f,p;function D(F){var S={},B,w;for(B in F)F.hasOwnProperty(B)&&(w=F[B],typeof w=="object"&&w!==null?S[B]=D(w):S[B]=w);return S}function g(F,S){var B,w,W,N;for(w=F.length,W=0;w;)B=w>>>1,N=W+B,S(F[N])?w=B:(W=N+1,w-=B+1);return W}u={AssignmentExpression:"AssignmentExpression",AssignmentPattern:"AssignmentPattern",ArrayExpression:"ArrayExpression",ArrayPattern:"ArrayPattern",ArrowFunctionExpression:"ArrowFunctionExpression",AwaitExpression:"AwaitExpression",BlockStatement:"BlockStatement",BinaryExpression:"BinaryExpression",BreakStatement:"BreakStatement",CallExpression:"CallExpression",CatchClause:"CatchClause",ChainExpression:"ChainExpression",ClassBody:"ClassBody",ClassDeclaration:"ClassDeclaration",ClassExpression:"ClassExpression",ComprehensionBlock:"ComprehensionBlock",ComprehensionExpression:"ComprehensionExpression",ConditionalExpression:"ConditionalExpression",ContinueStatement:"ContinueStatement",DebuggerStatement:"DebuggerStatement",DirectiveStatement:"DirectiveStatement",DoWhileStatement:"DoWhileStatement",EmptyStatement:"EmptyStatement",ExportAllDeclaration:"ExportAllDeclaration",ExportDefaultDeclaration:"ExportDefaultDeclaration",ExportNamedDeclaration:"ExportNamedDeclaration",ExportSpecifier:"ExportSpecifier",ExpressionStatement:"ExpressionStatement",ForStatement:"ForStatement",ForInStatement:"ForInStatement",ForOfStatement:"ForOfStatement",FunctionDeclaration:"FunctionDeclaration",FunctionExpression:"FunctionExpression",GeneratorExpression:"GeneratorExpression",Identifier:"Identifier",IfStatement:"IfStatement",ImportExpression:"ImportExpression",ImportDeclaration:"ImportDeclaration",ImportDefaultSpecifier:"ImportDefaultSpecifier",ImportNamespaceSpecifier:"ImportNamespaceSpecifier",ImportSpecifier:"ImportSpecifier",Literal:"Literal",LabeledStatement:"LabeledStatement",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",MetaProperty:"MetaProperty",MethodDefinition:"MethodDefinition",ModuleSpecifier:"ModuleSpecifier",NewExpression:"NewExpression",ObjectExpression:"ObjectExpression",ObjectPattern:"ObjectPattern",PrivateIdentifier:"PrivateIdentifier",Program:"Program",Property:"Property",PropertyDefinition:"PropertyDefinition",RestElement:"RestElement",ReturnStatement:"ReturnStatement",SequenceExpression:"SequenceExpression",SpreadElement:"SpreadElement",Super:"Super",SwitchStatement:"SwitchStatement",SwitchCase:"SwitchCase",TaggedTemplateExpression:"TaggedTemplateExpression",TemplateElement:"TemplateElement",TemplateLiteral:"TemplateLiteral",ThisExpression:"ThisExpression",ThrowStatement:"ThrowStatement",TryStatement:"TryStatement",UnaryExpression:"UnaryExpression",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator",WhileStatement:"WhileStatement",WithStatement:"WithStatement",YieldExpression:"YieldExpression"},c={AssignmentExpression:["left","right"],AssignmentPattern:["left","right"],ArrayExpression:["elements"],ArrayPattern:["elements"],ArrowFunctionExpression:["params","body"],AwaitExpression:["argument"],BlockStatement:["body"],BinaryExpression:["left","right"],BreakStatement:["label"],CallExpression:["callee","arguments"],CatchClause:["param","body"],ChainExpression:["expression"],ClassBody:["body"],ClassDeclaration:["id","superClass","body"],ClassExpression:["id","superClass","body"],ComprehensionBlock:["left","right"],ComprehensionExpression:["blocks","filter","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DirectiveStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExportAllDeclaration:["source"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source"],ExportSpecifier:["exported","local"],ExpressionStatement:["expression"],ForStatement:["init","test","update","body"],ForInStatement:["left","right","body"],ForOfStatement:["left","right","body"],FunctionDeclaration:["id","params","body"],FunctionExpression:["id","params","body"],GeneratorExpression:["blocks","filter","body"],Identifier:[],IfStatement:["test","consequent","alternate"],ImportExpression:["source"],ImportDeclaration:["specifiers","source"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],Literal:[],LabeledStatement:["label","body"],LogicalExpression:["left","right"],MemberExpression:["object","property"],MetaProperty:["meta","property"],MethodDefinition:["key","value"],ModuleSpecifier:[],NewExpression:["callee","arguments"],ObjectExpression:["properties"],ObjectPattern:["properties"],PrivateIdentifier:[],Program:["body"],Property:["key","value"],PropertyDefinition:["key","value"],RestElement:["argument"],ReturnStatement:["argument"],SequenceExpression:["expressions"],SpreadElement:["argument"],Super:[],SwitchStatement:["discriminant","cases"],SwitchCase:["test","consequent"],TaggedTemplateExpression:["tag","quasi"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],YieldExpression:["argument"]},a={},f={},p={},n={Break:a,Skip:f,Remove:p};function v(F,S){this.parent=F,this.key=S}v.prototype.replace=function(S){this.parent[this.key]=S},v.prototype.remove=function(){return Array.isArray(this.parent)?(this.parent.splice(this.key,1),!0):(this.replace(null),!1)};function m(F,S,B,w){this.node=F,this.path=S,this.wrap=B,this.ref=w}function A(){}A.prototype.path=function(){var S,B,w,W,N,G;function q(R,j){if(Array.isArray(j))for(w=0,W=j.length;w=0;--B)if(F[B].node===S)return!0;return!1}A.prototype.traverse=function(S,B){var w,W,N,G,q,R,j,J,se,ie,Y,Ce;for(this.__initialize(S,B),Ce={},w=this.__worklist,W=this.__leavelist,w.push(new m(S,null,null,null)),W.push(new m(null,null,null,null));w.length;){if(N=w.pop(),N===Ce){if(N=W.pop(),R=this.__execute(B.leave,N),this.__state===a||R===a)return;continue}if(N.node){if(R=this.__execute(B.enter,N),this.__state===a||R===a)return;if(w.push(Ce),W.push(N),this.__state===f||R===f)continue;if(G=N.node,q=G.type||N.wrap,ie=this.__keys[q],!ie)if(this.__fallback)ie=this.__fallback(G);else throw new Error("Unknown node type "+q+".");for(J=ie.length;(J-=1)>=0;)if(j=ie[J],Y=G[j],!!Y){if(Array.isArray(Y)){for(se=Y.length;(se-=1)>=0;)if(!!Y[se]&&!x(W,Y[se])){if(C(q,ie[J]))N=new m(Y[se],[j,se],"Property",null);else if(E(Y[se]))N=new m(Y[se],[j,se],null,null);else continue;w.push(N)}}else if(E(Y)){if(x(W,Y))continue;w.push(new m(Y,j,null,null))}}}}},A.prototype.replace=function(S,B){var w,W,N,G,q,R,j,J,se,ie,Y,Ce,be;function T(Me){var Ke,Qe,$,ge;if(Me.ref.remove()){for(Qe=Me.ref.key,ge=Me.ref.parent,Ke=w.length;Ke--;)if($=w[Ke],$.ref&&$.ref.parent===ge){if($.ref.key=0;)if(be=se[j],ie=N[be],!!ie)if(Array.isArray(ie)){for(J=ie.length;(J-=1)>=0;)if(!!ie[J]){if(C(G,se[j]))R=new m(ie[J],[be,J],"Property",new v(ie,J));else if(E(ie[J]))R=new m(ie[J],[be,J],null,new v(ie,J));else continue;w.push(R)}}else E(ie)&&w.push(new m(ie,be,null,new v(N,be)))}}return Ce.root};function I(F,S){var B=new A;return B.traverse(F,S)}function P(F,S){var B=new A;return B.replace(F,S)}function O(F,S){var B;return B=g(S,function(W){return W.range[0]>F.range[0]}),F.extendedRange=[F.range[0],F.range[1]],B!==S.length&&(F.extendedRange[1]=S[B].range[0]),B-=1,B>=0&&(F.extendedRange[0]=S[B].range[1]),F}function y(F,S,B){var w=[],W,N,G,q;if(!F.range)throw new Error("attachComments needs range information");if(!B.length){if(S.length){for(G=0,N=S.length;GR.range[0]));)j.extendedRange[1]===R.range[0]?(R.leadingComments||(R.leadingComments=[]),R.leadingComments.push(j),w.splice(q,1)):q+=1;if(q===w.length)return n.Break;if(w[q].extendedRange[0]>R.range[1])return n.Skip}}),q=0,I(F,{leave:function(R){for(var j;qR.range[1])return n.Skip}}),F}return i.Syntax=u,i.traverse=I,i.replace=P,i.attachComments=y,i.VisitorKeys=c,i.VisitorOption=n,i.Controller=A,i.cloneEnvironment=function(){return t({})},i})(e)})(bi);var ht={},Si={exports:{}};(function(){function e(a){if(a==null)return!1;switch(a.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"Literal":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":return!0}return!1}function t(a){if(a==null)return!1;switch(a.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":return!0}return!1}function i(a){if(a==null)return!1;switch(a.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":return!0}return!1}function u(a){return i(a)||a!=null&&a.type==="FunctionDeclaration"}function n(a){switch(a.type){case"IfStatement":return a.alternate!=null?a.alternate:a.consequent;case"LabeledStatement":case"ForStatement":case"ForInStatement":case"WhileStatement":case"WithStatement":return a.body}return null}function c(a){var f;if(a.type!=="IfStatement"||a.alternate==null)return!1;f=a.consequent;do{if(f.type==="IfStatement"&&f.alternate==null)return!0;f=n(f)}while(f);return!1}Si.exports={isExpression:e,isStatement:i,isIterationStatement:t,isSourceElement:u,isProblematicIfStatement:c,trailingStatement:n}})();var Rt={exports:{}};(function(){var e,t,i,u,n,c;t={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,NonAsciiIdentifierPart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/},e={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]/,NonAsciiIdentifierPart:/[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/};function a(x){return 48<=x&&x<=57}function f(x){return 48<=x&&x<=57||97<=x&&x<=102||65<=x&&x<=70}function p(x){return x>=48&&x<=55}i=[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279];function D(x){return x===32||x===9||x===11||x===12||x===160||x>=5760&&i.indexOf(x)>=0}function g(x){return x===10||x===13||x===8232||x===8233}function v(x){if(x<=65535)return String.fromCharCode(x);var I=String.fromCharCode(Math.floor((x-65536)/1024)+55296),P=String.fromCharCode((x-65536)%1024+56320);return I+P}for(u=new Array(128),c=0;c<128;++c)u[c]=c>=97&&c<=122||c>=65&&c<=90||c===36||c===95;for(n=new Array(128),c=0;c<128;++c)n[c]=c>=97&&c<=122||c>=65&&c<=90||c>=48&&c<=57||c===36||c===95;function m(x){return x<128?u[x]:t.NonAsciiIdentifierStart.test(v(x))}function A(x){return x<128?n[x]:t.NonAsciiIdentifierPart.test(v(x))}function E(x){return x<128?u[x]:e.NonAsciiIdentifierStart.test(v(x))}function C(x){return x<128?n[x]:e.NonAsciiIdentifierPart.test(v(x))}Rt.exports={isDecimalDigit:a,isHexDigit:f,isOctalDigit:p,isWhiteSpace:D,isLineTerminator:g,isIdentifierStartES5:m,isIdentifierPartES5:A,isIdentifierStartES6:E,isIdentifierPartES6:C}})();var Bi={exports:{}};(function(){var e=Rt.exports;function t(m){switch(m){case"implements":case"interface":case"package":case"private":case"protected":case"public":case"static":case"let":return!0;default:return!1}}function i(m,A){return!A&&m==="yield"?!1:u(m,A)}function u(m,A){if(A&&t(m))return!0;switch(m.length){case 2:return m==="if"||m==="in"||m==="do";case 3:return m==="var"||m==="for"||m==="new"||m==="try";case 4:return m==="this"||m==="else"||m==="case"||m==="void"||m==="with"||m==="enum";case 5:return m==="while"||m==="break"||m==="catch"||m==="throw"||m==="const"||m==="yield"||m==="class"||m==="super";case 6:return m==="return"||m==="typeof"||m==="delete"||m==="switch"||m==="export"||m==="import";case 7:return m==="default"||m==="finally"||m==="extends";case 8:return m==="function"||m==="continue"||m==="debugger";case 10:return m==="instanceof";default:return!1}}function n(m,A){return m==="null"||m==="true"||m==="false"||i(m,A)}function c(m,A){return m==="null"||m==="true"||m==="false"||u(m,A)}function a(m){return m==="eval"||m==="arguments"}function f(m){var A,E,C;if(m.length===0||(C=m.charCodeAt(0),!e.isIdentifierStartES5(C)))return!1;for(A=1,E=m.length;A=E||(x=m.charCodeAt(A),!(56320<=x&&x<=57343)))return!1;C=p(C,x)}if(!I(C))return!1;I=e.isIdentifierPartES6}return!0}function g(m,A){return f(m)&&!n(m,A)}function v(m,A){return D(m)&&!c(m,A)}Bi.exports={isKeywordES5:i,isKeywordES6:u,isReservedWordES5:n,isReservedWordES6:c,isRestrictedWord:a,isIdentifierNameES5:f,isIdentifierNameES6:D,isIdentifierES5:g,isIdentifierES6:v}})();(function(){ht.ast=Si.exports,ht.code=Rt.exports,ht.keyword=Bi.exports})();var Xe={},Et={},ot={},lt={},ti;function Zr(){if(ti)return lt;ti=1;var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");return lt.encode=function(t){if(0<=t&&t>1;return p?-D:D}return ot.encode=function(p){var D="",g,v=c(p);do g=v&u,v>>>=t,v>0&&(g|=n),D+=e.encode(g);while(v>0);return D},ot.decode=function(p,D,g){var v=p.length,m=0,A=0,E,C;do{if(D>=v)throw new Error("Expected more digits in base 64 VLQ value.");if(C=e.decode(p.charCodeAt(D++)),C===-1)throw new Error("Invalid base64 digit: "+p.charAt(D-1));E=!!(C&n),C&=u,m=m+(C<=0;G--)W=w[G],W==="."?w.splice(G,1):W===".."?N++:N>0&&(W===""?(w.splice(G+1,N),N=0):(w.splice(G,2),N--));return F=w.join("/"),F===""&&(F=B?"/":"."),S?(S.path=F,c(S)):F}e.normalize=a;function f(y,F){y===""&&(y="."),F===""&&(F=".");var S=n(F),B=n(y);if(B&&(y=B.path||"/"),S&&!S.scheme)return B&&(S.scheme=B.scheme),c(S);if(S||F.match(u))return F;if(B&&!B.host&&!B.path)return B.host=F,c(B);var w=F.charAt(0)==="/"?F:a(y.replace(/\/+$/,"")+"/"+F);return B?(B.path=w,c(B)):w}e.join=f,e.isAbsolute=function(y){return y.charAt(0)==="/"||i.test(y)};function p(y,F){y===""&&(y="."),y=y.replace(/\/$/,"");for(var S=0;F.indexOf(y+"/")!==0;){var B=y.lastIndexOf("/");if(B<0||(y=y.slice(0,B),y.match(/^([^\/]+:\/)?\/*$/)))return F;++S}return Array(S+1).join("../")+F.substr(y.length+1)}e.relative=p;var D=function(){var y=Object.create(null);return!("__proto__"in y)}();function g(y){return y}function v(y){return A(y)?"$"+y:y}e.toSetString=D?g:v;function m(y){return A(y)?y.slice(1):y}e.fromSetString=D?g:m;function A(y){if(!y)return!1;var F=y.length;if(F<9||y.charCodeAt(F-1)!==95||y.charCodeAt(F-2)!==95||y.charCodeAt(F-3)!==111||y.charCodeAt(F-4)!==116||y.charCodeAt(F-5)!==111||y.charCodeAt(F-6)!==114||y.charCodeAt(F-7)!==112||y.charCodeAt(F-8)!==95||y.charCodeAt(F-9)!==95)return!1;for(var S=F-10;S>=0;S--)if(y.charCodeAt(S)!==36)return!1;return!0}function E(y,F,S){var B=x(y.source,F.source);return B!==0||(B=y.originalLine-F.originalLine,B!==0)||(B=y.originalColumn-F.originalColumn,B!==0||S)||(B=y.generatedColumn-F.generatedColumn,B!==0)||(B=y.generatedLine-F.generatedLine,B!==0)?B:x(y.name,F.name)}e.compareByOriginalPositions=E;function C(y,F,S){var B=y.generatedLine-F.generatedLine;return B!==0||(B=y.generatedColumn-F.generatedColumn,B!==0||S)||(B=x(y.source,F.source),B!==0)||(B=y.originalLine-F.originalLine,B!==0)||(B=y.originalColumn-F.originalColumn,B!==0)?B:x(y.name,F.name)}e.compareByGeneratedPositionsDeflated=C;function x(y,F){return y===F?0:y===null?1:F===null?-1:y>F?1:-1}function I(y,F){var S=y.generatedLine-F.generatedLine;return S!==0||(S=y.generatedColumn-F.generatedColumn,S!==0)||(S=x(y.source,F.source),S!==0)||(S=y.originalLine-F.originalLine,S!==0)||(S=y.originalColumn-F.originalColumn,S!==0)?S:x(y.name,F.name)}e.compareByGeneratedPositionsInflated=I;function P(y){return JSON.parse(y.replace(/^\)]}'[^\n]*\n/,""))}e.parseSourceMapInput=P;function O(y,F,S){if(F=F||"",y&&(y[y.length-1]!=="/"&&F[0]!=="/"&&(y+="/"),F=y+F),S){var B=n(S);if(!B)throw new Error("sourceMapURL could not be parsed");if(B.path){var w=B.path.lastIndexOf("/");w>=0&&(B.path=B.path.substring(0,w+1))}F=f(c(B),F)}return a(F)}e.computeSourceURL=O}(Ft)),Ft}var vt={},ui;function wi(){if(ui)return vt;ui=1;var e=tt(),t=Object.prototype.hasOwnProperty,i=typeof Map<"u";function u(){this._array=[],this._set=i?new Map:Object.create(null)}return u.fromArray=function(c,a){for(var f=new u,p=0,D=c.length;p=0)return a}else{var f=e.toSetString(c);if(t.call(this._set,f))return this._set[f]}throw new Error('"'+c+'" is not in the set.')},u.prototype.at=function(c){if(c>=0&&cc||a==c&&p>=f||e.compareByGeneratedPositionsInflated(u,n)<=0}function i(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}return i.prototype.unsortedForEach=function(n,c){this._array.forEach(n,c)},i.prototype.add=function(n){t(this._last,n)?(this._last=n,this._array.push(n)):(this._sorted=!1,this._array.push(n))},i.prototype.toArray=function(){return this._sorted||(this._array.sort(e.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},xt.MappingList=i,xt}var si;function ki(){if(si)return Et;si=1;var e=_i(),t=tt(),i=wi().ArraySet,u=Jr().MappingList;function n(c){c||(c={}),this._file=t.getArg(c,"file",null),this._sourceRoot=t.getArg(c,"sourceRoot",null),this._skipValidation=t.getArg(c,"skipValidation",!1),this._sources=new i,this._names=new i,this._mappings=new u,this._sourcesContents=null}return n.prototype._version=3,n.fromSourceMap=function(a){var f=a.sourceRoot,p=new n({file:a.file,sourceRoot:f});return a.eachMapping(function(D){var g={generated:{line:D.generatedLine,column:D.generatedColumn}};D.source!=null&&(g.source=D.source,f!=null&&(g.source=t.relative(f,g.source)),g.original={line:D.originalLine,column:D.originalColumn},D.name!=null&&(g.name=D.name)),p.addMapping(g)}),a.sources.forEach(function(D){var g=D;f!==null&&(g=t.relative(f,D)),p._sources.has(g)||p._sources.add(g);var v=a.sourceContentFor(D);v!=null&&p.setSourceContent(D,v)}),p},n.prototype.addMapping=function(a){var f=t.getArg(a,"generated"),p=t.getArg(a,"original",null),D=t.getArg(a,"source",null),g=t.getArg(a,"name",null);this._skipValidation||this._validateMapping(f,p,D,g),D!=null&&(D=String(D),this._sources.has(D)||this._sources.add(D)),g!=null&&(g=String(g),this._names.has(g)||this._names.add(g)),this._mappings.add({generatedLine:f.line,generatedColumn:f.column,originalLine:p!=null&&p.line,originalColumn:p!=null&&p.column,source:D,name:g})},n.prototype.setSourceContent=function(a,f){var p=a;this._sourceRoot!=null&&(p=t.relative(this._sourceRoot,p)),f!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[t.toSetString(p)]=f):this._sourcesContents&&(delete this._sourcesContents[t.toSetString(p)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))},n.prototype.applySourceMap=function(a,f,p){var D=f;if(f==null){if(a.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);D=a.file}var g=this._sourceRoot;g!=null&&(D=t.relative(g,D));var v=new i,m=new i;this._mappings.unsortedForEach(function(A){if(A.source===D&&A.originalLine!=null){var E=a.originalPositionFor({line:A.originalLine,column:A.originalColumn});E.source!=null&&(A.source=E.source,p!=null&&(A.source=t.join(p,A.source)),g!=null&&(A.source=t.relative(g,A.source)),A.originalLine=E.line,A.originalColumn=E.column,E.name!=null&&(A.name=E.name))}var C=A.source;C!=null&&!v.has(C)&&v.add(C);var x=A.name;x!=null&&!m.has(x)&&m.add(x)},this),this._sources=v,this._names=m,a.sources.forEach(function(A){var E=a.sourceContentFor(A);E!=null&&(p!=null&&(A=t.join(p,A)),g!=null&&(A=t.relative(g,A)),this.setSourceContent(A,E))},this)},n.prototype._validateMapping=function(a,f,p,D){if(f&&typeof f.line!="number"&&typeof f.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(a&&"line"in a&&"column"in a&&a.line>0&&a.column>=0&&!f&&!p&&!D)){if(a&&"line"in a&&"column"in a&&f&&"line"in f&&"column"in f&&a.line>0&&a.column>=0&&f.line>0&&f.column>=0&&p)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:a,source:p,original:f,name:D}))}},n.prototype._serializeMappings=function(){for(var a=0,f=1,p=0,D=0,g=0,v=0,m="",A,E,C,x,I=this._mappings.toArray(),P=0,O=I.length;P0){if(!t.compareByGeneratedPositionsInflated(E,I[P-1]))continue;A+=","}A+=e.encode(E.generatedColumn-a),a=E.generatedColumn,E.source!=null&&(x=this._sources.indexOf(E.source),A+=e.encode(x-v),v=x,A+=e.encode(E.originalLine-1-D),D=E.originalLine-1,A+=e.encode(E.originalColumn-p),p=E.originalColumn,E.name!=null&&(C=this._names.indexOf(E.name),A+=e.encode(C-g),g=C)),m+=A}return m},n.prototype._generateSourcesContent=function(a,f){return a.map(function(p){if(!this._sourcesContents)return null;f!=null&&(p=t.relative(f,p));var D=t.toSetString(p);return Object.prototype.hasOwnProperty.call(this._sourcesContents,D)?this._sourcesContents[D]:null},this)},n.prototype.toJSON=function(){var a={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(a.file=this._file),this._sourceRoot!=null&&(a.sourceRoot=this._sourceRoot),this._sourcesContents&&(a.sourcesContent=this._generateSourcesContent(a.sources,a.sourceRoot)),a},n.prototype.toString=function(){return JSON.stringify(this.toJSON())},Et.SourceMapGenerator=n,Et}var $e={},yt={},ai;function eu(){return ai||(ai=1,function(e){e.GREATEST_LOWER_BOUND=1,e.LEAST_UPPER_BOUND=2;function t(i,u,n,c,a,f){var p=Math.floor((u-i)/2)+i,D=a(n,c[p],!0);return D===0?p:D>0?u-p>1?t(p,u,n,c,a,f):f==e.LEAST_UPPER_BOUND?u1?t(i,p,n,c,a,f):f==e.LEAST_UPPER_BOUND?p:i<0?-1:i}e.search=function(u,n,c,a){if(n.length===0)return-1;var f=t(-1,n.length,u,n,c,a||e.GREATEST_LOWER_BOUND);if(f<0)return-1;for(;f-1>=0&&c(n[f],n[f-1],!0)===0;)--f;return f}}(yt)),yt}var bt={},oi;function tu(){if(oi)return bt;oi=1;function e(u,n,c){var a=u[n];u[n]=u[c],u[c]=a}function t(u,n){return Math.round(u+Math.random()*(n-u))}function i(u,n,c,a){if(c=0){var C=this._originalMappings[E];if(g.column===void 0)for(var x=C.originalLine;C&&C.originalLine===x;)A.push({line:e.getArg(C,"generatedLine",null),column:e.getArg(C,"generatedColumn",null),lastColumn:e.getArg(C,"lastGeneratedColumn",null)}),C=this._originalMappings[++E];else for(var I=C.originalColumn;C&&C.originalLine===v&&C.originalColumn==I;)A.push({line:e.getArg(C,"generatedLine",null),column:e.getArg(C,"generatedColumn",null),lastColumn:e.getArg(C,"lastGeneratedColumn",null)}),C=this._originalMappings[++E]}return A},$e.SourceMapConsumer=c;function a(D,g){var v=D;typeof D=="string"&&(v=e.parseSourceMapInput(D));var m=e.getArg(v,"version"),A=e.getArg(v,"sources"),E=e.getArg(v,"names",[]),C=e.getArg(v,"sourceRoot",null),x=e.getArg(v,"sourcesContent",null),I=e.getArg(v,"mappings"),P=e.getArg(v,"file",null);if(m!=this._version)throw new Error("Unsupported version: "+m);C&&(C=e.normalize(C)),A=A.map(String).map(e.normalize).map(function(O){return C&&e.isAbsolute(C)&&e.isAbsolute(O)?e.relative(C,O):O}),this._names=i.fromArray(E.map(String),!0),this._sources=i.fromArray(A,!0),this._absoluteSources=this._sources.toArray().map(function(O){return e.computeSourceURL(C,O,g)}),this.sourceRoot=C,this.sourcesContent=x,this._mappings=I,this._sourceMapURL=g,this.file=P}a.prototype=Object.create(c.prototype),a.prototype.consumer=c,a.prototype._findSourceIndex=function(D){var g=D;if(this.sourceRoot!=null&&(g=e.relative(this.sourceRoot,g)),this._sources.has(g))return this._sources.indexOf(g);var v;for(v=0;v1&&(w.source=x+N[1],x+=N[1],w.originalLine=E+N[2],E=w.originalLine,w.originalLine+=1,w.originalColumn=C+N[3],C=w.originalColumn,N.length>4&&(w.name=I+N[4],I+=N[4])),B.push(w),typeof w.originalLine=="number"&&S.push(w)}n(B,e.compareByGeneratedPositionsDeflated),this.__generatedMappings=B,n(S,e.compareByOriginalPositions),this.__originalMappings=S},a.prototype._findMapping=function(g,v,m,A,E,C){if(g[m]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+g[m]);if(g[A]<0)throw new TypeError("Column must be greater than or equal to 0, got "+g[A]);return t.search(g,v,E,C)},a.prototype.computeColumnSpans=function(){for(var g=0;g=0){var A=this._generatedMappings[m];if(A.generatedLine===v.generatedLine){var E=e.getArg(A,"source",null);E!==null&&(E=this._sources.at(E),E=e.computeSourceURL(this.sourceRoot,E,this._sourceMapURL));var C=e.getArg(A,"name",null);return C!==null&&(C=this._names.at(C)),{source:E,line:e.getArg(A,"originalLine",null),column:e.getArg(A,"originalColumn",null),name:C}}}return{source:null,line:null,column:null,name:null}},a.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(g){return g==null}):!1},a.prototype.sourceContentFor=function(g,v){if(!this.sourcesContent)return null;var m=this._findSourceIndex(g);if(m>=0)return this.sourcesContent[m];var A=g;this.sourceRoot!=null&&(A=e.relative(this.sourceRoot,A));var E;if(this.sourceRoot!=null&&(E=e.urlParse(this.sourceRoot))){var C=A.replace(/^file:\/\//,"");if(E.scheme=="file"&&this._sources.has(C))return this.sourcesContent[this._sources.indexOf(C)];if((!E.path||E.path=="/")&&this._sources.has("/"+A))return this.sourcesContent[this._sources.indexOf("/"+A)]}if(v)return null;throw new Error('"'+A+'" is not in the SourceMap.')},a.prototype.generatedPositionFor=function(g){var v=e.getArg(g,"source");if(v=this._findSourceIndex(v),v<0)return{line:null,column:null,lastColumn:null};var m={source:v,originalLine:e.getArg(g,"line"),originalColumn:e.getArg(g,"column")},A=this._findMapping(m,this._originalMappings,"originalLine","originalColumn",e.compareByOriginalPositions,e.getArg(g,"bias",c.GREATEST_LOWER_BOUND));if(A>=0){var E=this._originalMappings[A];if(E.source===m.source)return{line:e.getArg(E,"generatedLine",null),column:e.getArg(E,"generatedColumn",null),lastColumn:e.getArg(E,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},$e.BasicSourceMapConsumer=a;function p(D,g){var v=D;typeof D=="string"&&(v=e.parseSourceMapInput(D));var m=e.getArg(v,"version"),A=e.getArg(v,"sections");if(m!=this._version)throw new Error("Unsupported version: "+m);this._sources=new i,this._names=new i;var E={line:-1,column:0};this._sections=A.map(function(C){if(C.url)throw new Error("Support for url field in sections not implemented.");var x=e.getArg(C,"offset"),I=e.getArg(x,"line"),P=e.getArg(x,"column");if(I=0;p--)this.prepend(f[p]);else if(f[n]||typeof f=="string")this.children.unshift(f);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+f);return this},c.prototype.walk=function(f){for(var p,D=0,g=this.children.length;D0){for(p=[],D=0;D=6.0"},pu=[{name:"Yusuke Suzuki",email:"utatane.tea@gmail.com",web:"http://github.com/Constellation"}],du={type:"git",url:"http://github.com/estools/escodegen.git"},Du={estraverse:"^5.2.0",esutils:"^2.0.2",esprima:"^4.0.1",optionator:"^0.8.1"},gu={"source-map":"~0.6.1"},mu={acorn:"^7.3.1",bluebird:"^3.4.7","bower-registry-client":"^1.0.0",chai:"^4.2.0","chai-exclude":"^2.0.2","commonjs-everywhere":"^0.9.7",gulp:"^3.8.10","gulp-eslint":"^3.0.1","gulp-mocha":"^3.0.1",semver:"^5.1.0"},Cu="BSD-2-Clause",Au={test:"gulp travis","unit-test":"gulp test",lint:"gulp lint",release:"node tools/release.js","build-min":"./node_modules/.bin/cjsify -ma path: tools/entry-point.js > escodegen.browser.min.js",build:"./node_modules/.bin/cjsify -a path: tools/entry-point.js > escodegen.browser.js"},Eu={name:nu,description:su,homepage:au,main:ou,bin:lu,files:cu,version:hu,engines:fu,maintainers:pu,repository:du,dependencies:Du,optionalDependencies:gu,devDependencies:mu,license:Cu,scripts:Au};(function(e){(function(){var t,i,u,n,c,a,f,p,D,g,v,m,A,E,C,x,I,P,O,y,F,S,B,w,W,N;c=bi,a=ht,t=c.Syntax;function G(r){return ne.Expression.hasOwnProperty(r.type)}function q(r){return ne.Statement.hasOwnProperty(r.type)}i={Sequence:0,Yield:1,Assignment:1,Conditional:2,ArrowFunction:2,LogicalOR:3,LogicalAND:4,BitwiseOR:5,BitwiseXOR:6,BitwiseAND:7,Equality:8,Relational:9,BitwiseSHIFT:10,Additive:11,Multiplicative:12,Exponentiation:13,Await:14,Unary:14,Postfix:15,OptionalChaining:16,Call:17,New:18,TaggedTemplate:19,Member:20,Primary:21},u={"||":i.LogicalOR,"&&":i.LogicalAND,"|":i.BitwiseOR,"^":i.BitwiseXOR,"&":i.BitwiseAND,"==":i.Equality,"!=":i.Equality,"===":i.Equality,"!==":i.Equality,is:i.Equality,isnt:i.Equality,"<":i.Relational,">":i.Relational,"<=":i.Relational,">=":i.Relational,in:i.Relational,instanceof:i.Relational,"<<":i.BitwiseSHIFT,">>":i.BitwiseSHIFT,">>>":i.BitwiseSHIFT,"+":i.Additive,"-":i.Additive,"*":i.Multiplicative,"%":i.Multiplicative,"/":i.Multiplicative,"**":i.Exponentiation};var R=1,j=1<<1,J=1<<2,se=1<<3,ie=1<<4,Y=1<<5,Ce=j|J,be=R|j,T=R|j|J,Me=R,Ke=J,Qe=R|J,$=R,ge=R|Y,nt=0,hr=R|ie,fr=R|se;function zt(){return{indent:null,base:null,parse:null,comment:!1,format:{indent:{style:" ",base:0,adjustMultilineComment:!1},newline:` `,space:" ",json:!1,renumber:!1,hexadecimal:!1,quotes:"single",escapeless:!1,compact:!1,parentheses:!0,semicolons:!0,safeConcatenation:!1,preserveBlankLines:!1},moz:{comprehensionExpressionStartsWithAssignment:!1,starlessGenerator:!1},sourceMap:null,sourceMapRoot:null,sourceMapWithCode:!1,directive:!1,raw:!0,verbatim:null,sourceCode:null}}function Oe(r,o){var s="";for(o|=0;o>0;o>>>=1,r+=r)o&1&&(s+=r);return s}function pr(r){return/[\r\n]/g.test(r)}function ce(r){var o=r.length;return o&&a.code.isLineTerminator(r.charCodeAt(o-1))}function Ht(r,o){var s;for(s in o)o.hasOwnProperty(s)&&(r[s]=o[s]);return r}function st(r,o){var s,l;function d(b){return typeof b=="object"&&b instanceof Object&&!(b instanceof RegExp)}for(s in o)o.hasOwnProperty(s)&&(l=o[s],d(l)?d(r[s])?st(r[s],l):r[s]=st({},l):r[s]=l);return r}function dr(r){var o,s,l,d,b;if(r!==r)throw new Error("Numeric literal whose value is NaN");if(r<0||r===0&&1/r<0)throw new Error("Numeric literal whose value is negative");if(r===1/0)return D?"null":g?"1e400":"1e+400";if(o=""+r,!g||o.length<3)return o;for(s=o.indexOf("."),!D&&o.charCodeAt(0)===48&&s===1&&(s=0,o=o.slice(1)),l=o,o=o.replace("e+","e"),d=0,(b=l.indexOf("e"))>0&&(d=+l.slice(b+1),l=l.slice(0,b)),s>=0&&(d-=l.length-s-1,l=+(l.slice(0,s)+l.slice(s+1))+""),b=0;l.charCodeAt(l.length+b-1)===48;)--b;return b!==0&&(d-=b,l=l.slice(0,b)),d!==0&&(l+="e"+d),(l.length1e12&&Math.floor(r)===r&&(l="0x"+r.toString(16)).length255?"\\u"+"0000".slice(s.length)+s:r===0&&!a.code.isDecimalDigit(o)?"\\0":r===11?"\\x0B":"\\x"+"00".slice(s.length)+s)}function mr(r){if(r===92)return"\\\\";if(r===10)return"\\n";if(r===13)return"\\r";if(r===8232)return"\\u2028";if(r===8233)return"\\u2029";throw new Error("Incorrectly classified character")}function Cr(r){var o,s,l,d;for(d=m==="double"?'"':"'",o=0,s=r.length;o126))){o+=gr(d,r.charCodeAt(s+1));continue}o+=String.fromCharCode(d)}if(k=!(m==="double"||m==="auto"&&_=0&&!a.code.isLineTerminator(r.charCodeAt(o));--o);return r.length-1-o}function Fr(r,o){var s,l,d,b,_,k,L,K;for(s=r.split(/\r\n|[\r\n]/),k=Number.MAX_VALUE,l=1,d=s.length;l_&&(k=_)}for(typeof o<"u"?(L=f,s[1][k]==="*"&&(o+=" "),f=o):(k&1&&--k,L=f),l=1,d=s.length;l0){if(b=o,w){for(d=r.leadingComments[0],o=[],K=d.extendedRange,oe=d.range,je=B.substring(K[0],oe[0]),Se=(je.match(/\n/g)||[]).length,Se>0?(o.push(Oe(` diff --git a/packages/react/dist/index.es.js b/packages/react/dist/index.es.js index bdc343e2..556137e5 100644 --- a/packages/react/dist/index.es.js +++ b/packages/react/dist/index.es.js @@ -303,10 +303,7 @@ function eu({ interval: e, onTrigger: async (E, C, x) => { try { - if (!E.context.onTrigger) - return await t(E, C, x); - const I = 1; - return await E.context.onTrigger(a() + C, E, a(), I); + (!E.context.onTrigger || !E.context.dominantTrigger) && await t(E, C, x), E.context.onTrigger && await E.context.onTrigger(a() + C, E, a(), 1); } catch (I) { Le(`[cyclist] error: ${I.message}`, "error"); } diff --git a/packages/react/src/hooks/useHighlighting.mjs b/packages/react/src/hooks/useHighlighting.mjs index f7296523..c9539044 100644 --- a/packages/react/src/hooks/useHighlighting.mjs +++ b/packages/react/src/hooks/useHighlighting.mjs @@ -22,7 +22,6 @@ function useHighlighting({ view, pattern, active, getTime }) { highlights.current = highlights.current.concat(haps); // add potential new onsets view.dispatch({ effects: setHighlights.of(highlights.current) }); // highlight all still active + new active haps } catch (err) { - // console.log('error in updateHighlights', err); view.dispatch({ effects: setHighlights.of([]) }); } frame = requestAnimationFrame(updateHighlights); diff --git a/repl/README.md b/repl/README.md index c1855f0b..ee7c4842 100644 --- a/repl/README.md +++ b/repl/README.md @@ -43,3 +43,4 @@ currently broken / buggy: - [x] highlighting seems too late (off by latency ?) - [x] highlighting sometimes drops highlights (zeldasRescue first note) - [ ] highlighting still sometimes drops highlights (zeldasRescue somtimes) +- [ ] highlighting out of range error is back (delete large chunk at the top while highlighting below is triggered) diff --git a/repl/src/App.jsx b/repl/src/App.jsx index 060f1515..d782160d 100644 --- a/repl/src/App.jsx +++ b/repl/src/App.jsx @@ -134,7 +134,7 @@ function App() { initialCode: '// LOADING', defaultOutput: webaudioOutput, getTime, - autolink: true + autolink: true, }); // init code @@ -182,14 +182,16 @@ function App() { const handleTogglePlay = async () => { await getAudioContext().resume(); // fixes no sound in ios webkit if (!started) { + logger('[repl] started. tip: you can also start by pressing ctrl+enter', 'highlight'); activateCode(); } else { + logger('[repl] stopped. tip: you can also stop by pressing ctrl+dot', 'highlight'); stop(); } }; const handleUpdate = () => { isDirty && activateCode(); - logger('Code updated! Tip: You can also update the code by pressing ctrl+enter.'); + logger('[repl] code updated! tip: you can also update the code by pressing ctrl+enter', 'highlight'); }; const handleShuffle = async () => {