typebulb 0.13.2 → 0.13.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/agents/claude/client.js +4 -4
- package/dist/index.js +4 -4
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -252,7 +252,7 @@ To render a bulb live inline, wrap the **entire** bulb — frontmatter and all b
|
|
|
252
252
|
|
|
253
253
|
The agent mirror turns that block into a live, sandboxed app, with a *breakout ↗* control that saves it as a `.bulb.md` in the `typebulbs/` folder — editable with hot reload, and sandboxed unless you trust it. Embedded bulbs are client-only — no `server.ts`, no `tb.fs`/`tb.ai`, no storage.
|
|
254
254
|
|
|
255
|
-
**
|
|
255
|
+
**Iterating on an embed?** Re-emit under the *same* `name:` to refine it (a different `name:` starts a separate bulb) — the mirror keeps the latest version live and folds each earlier one into an expandable stub in place, so the transcript shows the bulb's evolution, not a stack of repeated renders. Same move fixes a broken embed.
|
|
256
256
|
|
|
257
257
|
**A broken embed reads back.** Emit it and move on; embeds usually just work. If the user says one broke, the mirror has already forwarded its compile/runtime error to `typebulb logs claude`, name-tagged (`[embed <name>]`) — pull it from there and fix, instead of asking the user to copy-paste.
|
|
258
258
|
|
|
@@ -282,7 +282,7 @@ The host owns a bulb's **width**; you own its **height**.
|
|
|
282
282
|
- **`tb.ai()` takes more than the basics** — the full shape is `tb.ai({ messages, system?, reasoning?, provider?, model?, webSearch? })` → `Promise<{ text }>` (non-streaming). `webSearch` defaults **on** in the CLI (you supply your own key); pass `webSearch: false` to turn it off.
|
|
283
283
|
- **`tb.theme` drives the `html[data-theme]` attribute** — style off that selector (`html[data-theme="dark"] { … }`); don't read `tb.theme` to branch your rendering.
|
|
284
284
|
- **`color-scheme` is set for you** — the host always applies `html[data-theme="dark"] { color-scheme: dark }` / `html[data-theme="light"] { color-scheme: light }` on top of your `styles.css`.
|
|
285
|
-
- **Math renders
|
|
285
|
+
- **Math (KaTeX) renders in your replies** — write inline `$…$` / display `$$…$$` (prefer `$y = x^2$` over inline-code or a Unicode `y = x²`). The mirror's KaTeX renders only in prose and doesn't reach inside a fenced block (bulb, mermaid, svg, code).
|
|
286
286
|
- **`tb.json<T>(n)` is generic** — `tb.json<Album[]>(0)` returns typed parsed JSON; `tb.data(n)` returns the raw string.
|
|
287
287
|
- **`tb.proxy()` is for same-origin Web Worker / WASM loads** — e.g. ffmpeg or tesseract: `tb.proxy("https://unpkg.com/...")` routes the CDN URL through the local server's origin.
|
|
288
288
|
- **Prefer an `index.html` fragment** over a full HTML document — usually just the mount stub (`<div id="root"></div>`).
|
|
@@ -25,8 +25,8 @@ Consider installing the package or pass your own 'workerFactory' to ELK's constr
|
|
|
25
25
|
https://github.com/highlightjs/highlight.js/issues/2277`),ir=Jt,hr=Rn),Z===void 0&&(Z=!0);let mr={code:hr,language:ir};wr("before:highlight",mr);let Ns=mr.result?mr.result:L(mr.language,mr.code,Z);return Ns.code=mr.code,wr("after:highlight",Ns),Ns}function L(Jt,Rn,Z,hr){let ir=Object.create(null);function mr(sn,Lr){return sn.keywords[Lr]}function Ns(){if(!ur.keywords){mc.addText(wo);return}let sn=0;ur.keywordPatternRe.lastIndex=0;let Lr=ur.keywordPatternRe.exec(wo),Bi="";for(;Lr;){Bi+=wo.substring(sn,Lr.index);let Os=Xu.case_insensitive?Lr[0].toLowerCase():Lr[0],Nu=mr(ur,Os);if(Nu){let[f1,bg]=Nu;if(mc.addText(Bi),Bi="",ir[Os]=(ir[Os]||0)+1,ir[Os]<=qdn&&(Vh+=bg),f1.startsWith("_"))Bi+=Lr[0];else{let mg=Xu.classNameAliases[f1]||f1;Ii(Lr[0],mg)}}else Bi+=Lr[0];sn=ur.keywordPatternRe.lastIndex,Lr=ur.keywordPatternRe.exec(wo)}Bi+=wo.substring(sn),mc.addText(Bi)}function Bn(){if(wo==="")return;let sn=null;if(typeof ur.subLanguage=="string"){if(!o[ur.subLanguage]){mc.addText(wo);return}sn=L(ur.subLanguage,wo,!0,Gs[ur.subLanguage]),Gs[ur.subLanguage]=sn._top}else sn=Q(wo,ur.subLanguage.length?ur.subLanguage:null);ur.relevance>0&&(Vh+=sn.relevance),mc.__addSublanguage(sn._emitter,sn.language)}function Oi(){ur.subLanguage!=null?Bn():Ns(),wo=""}function Ii(sn,Lr){sn!==""&&(mc.startScope(Lr),mc.addText(sn),mc.endScope())}function Wu(sn,Lr){let Bi=1,Os=Lr.length-1;for(;Bi<=Os;){if(!sn._emit[Bi]){Bi++;continue}let Nu=Xu.classNameAliases[sn[Bi]]||sn[Bi],f1=Lr[Bi];Nu?Ii(f1,Nu):(wo=f1,Ns(),wo=""),Bi++}}function Yu(sn,Lr){return sn.scope&&typeof sn.scope=="string"&&mc.openNode(Xu.classNameAliases[sn.scope]||sn.scope),sn.beginScope&&(sn.beginScope._wrap?(Ii(wo,Xu.classNameAliases[sn.beginScope._wrap]||sn.beginScope._wrap),wo=""):sn.beginScope._multi&&(Wu(sn.beginScope,Lr),wo="")),ur=Object.create(sn,{parent:{value:ur}}),ur}function Ml(sn,Lr,Bi){let Os=cdn(sn.endRe,Bi);if(Os){if(sn["on:end"]){let Nu=new Ute(sn);sn["on:end"](Lr,Nu),Nu.isMatchIgnored&&(Os=!1)}if(Os){for(;sn.endsParent&&sn.parent;)sn=sn.parent;return sn}}if(sn.endsWithParent)return Ml(sn.parent,Lr,Bi)}function Bu(sn){return ur.matcher.regexIndex===0?(wo+=sn[0],1):(Bl=!0,0)}function ha(sn){let Lr=sn[0],Bi=sn.rule,Os=new Ute(Bi),Nu=[Bi.__beforeBegin,Bi["on:begin"]];for(let f1 of Nu)if(f1&&(f1(sn,Os),Os.isMatchIgnored))return Bu(Lr);return Bi.skip?wo+=Lr:(Bi.excludeBegin&&(wo+=Lr),Oi(),!Bi.returnBegin&&!Bi.excludeBegin&&(wo=Lr)),Yu(Bi,sn),Bi.returnBegin?0:Lr.length}function Yh(sn){let Lr=sn[0],Bi=Rn.substring(sn.index),Os=Ml(ur,sn,Bi);if(!Os)return B7t;let Nu=ur;ur.endScope&&ur.endScope._wrap?(Oi(),Ii(Lr,ur.endScope._wrap)):ur.endScope&&ur.endScope._multi?(Oi(),Wu(ur.endScope,sn)):Nu.skip?wo+=Lr:(Nu.returnEnd||Nu.excludeEnd||(wo+=Lr),Oi(),Nu.excludeEnd&&(wo=Lr));do ur.scope&&mc.closeNode(),!ur.skip&&!ur.subLanguage&&(Vh+=ur.relevance),ur=ur.parent;while(ur!==Os.parent);return Os.starts&&Yu(Os.starts,sn),Nu.returnEnd?0:Lr.length}function u1(){let sn=[];for(let Lr=ur;Lr!==Xu;Lr=Lr.parent)Lr.scope&&sn.unshift(Lr.scope);sn.forEach(Lr=>mc.openNode(Lr))}let Za={};function Lu(sn,Lr){let Bi=Lr&&Lr[0];if(wo+=sn,Bi==null)return Oi(),0;if(Za.type==="begin"&&Lr.type==="end"&&Za.index===Lr.index&&Bi===""){if(wo+=Rn.slice(Lr.index,Lr.index+1),!g){let Os=new Error(`0 width match regex (${Jt})`);throw Os.languageName=Jt,Os.badRule=Za.rule,Os}return 1}if(Za=Lr,Lr.type==="begin")return ha(Lr);if(Lr.type==="illegal"&&!Z){let Os=new Error('Illegal lexeme "'+Bi+'" for mode "'+(ur.scope||"<unnamed>")+'"');throw Os.mode=ur,Os}else if(Lr.type==="end"){let Os=Yh(Lr);if(Os!==B7t)return Os}if(Lr.type==="illegal"&&Bi==="")return wo+=`
|
|
26
26
|
`,1;if(l1>1e5&&l1>Lr.index*3)throw new Error("potential infinite loop, way more iterations than matches");return wo+=Bi,Bi.length}let Xu=nt(Jt);if(!Xu)throw kC(m.replace("{}",Jt)),new Error('Unknown language: "'+Jt+'"');let Xh=Hdn(Xu),a1="",ur=hr||Xh,Gs={},mc=new A.__emitter(A);u1();let wo="",Vh=0,Dl=0,l1=0,Bl=!1;try{if(Xu.__emitTokens)Xu.__emitTokens(Rn,mc);else{for(ur.matcher.considerAll();;){l1++,Bl?Bl=!1:ur.matcher.considerAll(),ur.matcher.lastIndex=Dl;let sn=ur.matcher.exec(Rn);if(!sn)break;let Lr=Rn.substring(Dl,sn.index),Bi=Lu(Lr,sn);Dl=sn.index+Bi}Lu(Rn.substring(Dl))}return mc.finalize(),a1=mc.toHTML(),{language:Jt,value:a1,relevance:Vh,illegal:!1,_emitter:mc,_top:ur}}catch(sn){if(sn.message&&sn.message.includes("Illegal"))return{language:Jt,value:$7e(Rn),illegal:!0,relevance:0,_illegalBy:{message:sn.message,index:Dl,context:Rn.slice(Dl-100,Dl+100),mode:sn.mode,resultSoFar:a1},_emitter:mc};if(g)return{language:Jt,value:$7e(Rn),illegal:!1,relevance:0,errorRaised:sn,_emitter:mc,_top:ur};throw sn}}function R(Jt){let Rn={value:$7e(Jt),illegal:!1,relevance:0,_top:v,_emitter:new A.__emitter(A)};return Rn._emitter.addText(Jt),Rn}function Q(Jt,Rn){Rn=Rn||A.languages||Object.keys(o);let Z=R(Jt),hr=Rn.filter(nt).filter(Xt).map(Oi=>L(Oi,Jt,!1));hr.unshift(Z);let ir=hr.sort((Oi,Ii)=>{if(Oi.relevance!==Ii.relevance)return Ii.relevance-Oi.relevance;if(Oi.language&&Ii.language){if(nt(Oi.language).supersetOf===Ii.language)return 1;if(nt(Ii.language).supersetOf===Oi.language)return-1}return 0}),[mr,Ns]=ir,Bn=mr;return Bn.secondBest=Ns,Bn}function U(Jt,Rn,Z){let hr=Rn&&a[Rn]||Z;Jt.classList.add("hljs"),Jt.classList.add(`language-${hr}`)}function W(Jt){let Rn=null,Z=T(Jt);if(I(Z))return;if(wr("before:highlightElement",{el:Jt,language:Z}),Jt.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",Jt);return}if(Jt.children.length>0&&(A.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(Jt)),A.throwUnescapedHTML))throw new q7e("One of your code blocks includes unescaped HTML.",Jt.innerHTML);Rn=Jt;let hr=Rn.textContent,ir=Z?B(hr,{language:Z,ignoreIllegals:!0}):Q(hr);Jt.innerHTML=ir.value,Jt.dataset.highlighted="yes",U(Jt,Z,ir.language),Jt.result={language:ir.language,re:ir.relevance,relevance:ir.relevance},ir.secondBest&&(Jt.secondBest={language:ir.secondBest.language,relevance:ir.secondBest.relevance}),wr("after:highlightElement",{el:Jt,result:ir,text:hr})}function ne(Jt){A=D7t(A,Jt)}let he=()=>{ie(),AM("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function Ee(){ie(),AM("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let Oe=!1;function ie(){function Jt(){ie()}if(document.readyState==="loading"){Oe||window.addEventListener("DOMContentLoaded",Jt,!1),Oe=!0;return}document.querySelectorAll(A.cssSelector).forEach(W)}function Ie(Jt,Rn){let Z=null;try{Z=Rn(s)}catch(hr){if(kC("Language definition for '{}' could not be registered.".replace("{}",Jt)),g)kC(hr);else throw hr;Z=v}Z.name||(Z.name=Jt),o[Jt]=Z,Z.rawDefinition=Rn.bind(null,s),Z.aliases&&Ce(Z.aliases,{languageName:Jt})}function He(Jt){delete o[Jt];for(let Rn of Object.keys(a))a[Rn]===Jt&&delete a[Rn]}function kt(){return Object.keys(o)}function nt(Jt){return Jt=(Jt||"").toLowerCase(),o[Jt]||o[a[Jt]]}function Ce(Jt,{languageName:Rn}){typeof Jt=="string"&&(Jt=[Jt]),Jt.forEach(Z=>{a[Z.toLowerCase()]=Rn})}function Xt(Jt){let Rn=nt(Jt);return Rn&&!Rn.disableAutodetect}function tn(Jt){Jt["before:highlightBlock"]&&!Jt["before:highlightElement"]&&(Jt["before:highlightElement"]=Rn=>{Jt["before:highlightBlock"](Object.assign({block:Rn.el},Rn))}),Jt["after:highlightBlock"]&&!Jt["after:highlightElement"]&&(Jt["after:highlightElement"]=Rn=>{Jt["after:highlightBlock"](Object.assign({block:Rn.el},Rn))})}function Sn(Jt){tn(Jt),d.push(Jt)}function ai(Jt){let Rn=d.indexOf(Jt);Rn!==-1&&d.splice(Rn,1)}function wr(Jt,Rn){let Z=Jt;d.forEach(function(hr){hr[Z]&&hr[Z](Rn)})}function Ji(Jt){return AM("10.7.0","highlightBlock will be removed entirely in v12.0"),AM("10.7.0","Please use highlightElement now."),W(Jt)}Object.assign(s,{highlight:B,highlightAuto:Q,highlightAll:ie,highlightElement:W,highlightBlock:Ji,configure:ne,initHighlighting:he,initHighlightingOnLoad:Ee,registerLanguage:Ie,unregisterLanguage:He,listLanguages:kt,getLanguage:nt,registerAliases:Ce,autoDetection:Xt,inherit:D7t,addPlugin:Sn,removePlugin:ai}),s.debugMode=function(){g=!1},s.safeMode=function(){g=!0},s.versionString=Gdn,s.regex={concat:xC,lookahead:O7t,either:J7e,optional:sdn,anyNumberOfTimes:idn};for(let Jt in Jte)typeof Jte[Jt]=="object"&&L7t(Jte[Jt]);return Object.assign(s,Jte),s},vM=q7t({});vM.newInstance=()=>q7t({});J7t.exports=vM;vM.HighlightJS=vM;vM.default=vM});var Skt=Gi((K9e,W9e)=>{(function(s,o){typeof K9e=="object"&&typeof W9e<"u"?W9e.exports=o():typeof define=="function"&&define.amd?define(o):(s=typeof globalThis<"u"?globalThis:s||self,s.resolveURI=o())})(K9e,(function(){"use strict";let s=/^[\w+.-]+:\/\//,o=/^([\w+.-]+:)\/\/([^@/#?]*@)?([^:/#?]*)(:\d+)?(\/[^#?]*)?(\?[^#]*)?(#.*)?/,a=/^file:(?:\/\/((?![a-z]:)[^/#?]*)?)?(\/?[^#?]*)(\?[^#]*)?(#.*)?/i;function d(ne){return s.test(ne)}function g(ne){return ne.startsWith("//")}function m(ne){return ne.startsWith("/")}function v(ne){return ne.startsWith("file:")}function A(ne){return/^[.?#]/.test(ne)}function I(ne){let he=o.exec(ne);return B(he[1],he[2]||"",he[3],he[4]||"",he[5]||"/",he[6]||"",he[7]||"")}function T(ne){let he=a.exec(ne),Ee=he[2];return B("file:","",he[1]||"","",m(Ee)?Ee:"/"+Ee,he[3]||"",he[4]||"")}function B(ne,he,Ee,Oe,ie,Ie,He){return{scheme:ne,user:he,host:Ee,port:Oe,path:ie,query:Ie,hash:He,type:7}}function L(ne){if(g(ne)){let Ee=I("http:"+ne);return Ee.scheme="",Ee.type=6,Ee}if(m(ne)){let Ee=I("http://foo.com"+ne);return Ee.scheme="",Ee.host="",Ee.type=5,Ee}if(v(ne))return T(ne);if(d(ne))return I(ne);let he=I("http://foo.com/"+ne);return he.scheme="",he.host="",he.type=ne?ne.startsWith("?")?3:ne.startsWith("#")?2:4:1,he}function R(ne){if(ne.endsWith("/.."))return ne;let he=ne.lastIndexOf("/");return ne.slice(0,he+1)}function Q(ne,he){U(he,he.type),ne.path==="/"?ne.path=he.path:ne.path=R(he.path)+ne.path}function U(ne,he){let Ee=he<=4,Oe=ne.path.split("/"),ie=1,Ie=0,He=!1;for(let nt=1;nt<Oe.length;nt++){let Ce=Oe[nt];if(!Ce){He=!0;continue}if(He=!1,Ce!=="."){if(Ce===".."){Ie?(He=!0,Ie--,ie--):Ee&&(Oe[ie++]=Ce);continue}Oe[ie++]=Ce,Ie++}}let kt="";for(let nt=1;nt<ie;nt++)kt+="/"+Oe[nt];(!kt||He&&!kt.endsWith("/.."))&&(kt+="/"),ne.path=kt}function W(ne,he){if(!ne&&!he)return"";let Ee=L(ne),Oe=Ee.type;if(he&&Oe!==7){let Ie=L(he),He=Ie.type;switch(Oe){case 1:Ee.hash=Ie.hash;case 2:Ee.query=Ie.query;case 3:case 4:Q(Ee,Ie);case 5:Ee.user=Ie.user,Ee.host=Ie.host,Ee.port=Ie.port;case 6:Ee.scheme=Ie.scheme}He>Oe&&(Oe=He)}U(Ee,Oe);let ie=Ee.query+Ee.hash;switch(Oe){case 2:case 3:return ie;case 4:{let Ie=Ee.path.slice(1);return Ie?A(he||ne)&&!A(Ie)?"./"+Ie+ie:Ie+ie:ie||"."}case 5:return Ee.path+ie;default:return Ee.scheme+"//"+Ee.user+Ee.host+Ee.port+Ee.path+ie}}return W}))});var qne=Gi($4=>{"use strict";var ebn=$4&&$4.__extends||(function(){var s=function(o,a){return s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,g){d.__proto__=g}||function(d,g){for(var m in g)g.hasOwnProperty(m)&&(d[m]=g[m])},s(o,a)};return function(o,a){s(o,a);function d(){this.constructor=o}o.prototype=a===null?Object.create(a):(d.prototype=a.prototype,new d)}})();Object.defineProperty($4,"__esModule",{value:!0});$4.DetailContext=$4.NoopContext=$4.VError=void 0;var Nkt=(function(s){ebn(o,s);function o(a,d){var g=s.call(this,d)||this;return g.path=a,Object.setPrototypeOf(g,o.prototype),g}return o})(Error);$4.VError=Nkt;var tbn=(function(){function s(){}return s.prototype.fail=function(o,a,d){return!1},s.prototype.unionResolver=function(){return this},s.prototype.createContext=function(){return this},s.prototype.resolveUnion=function(o){},s})();$4.NoopContext=tbn;var Okt=(function(){function s(){this._propNames=[""],this._messages=[null],this._score=0}return s.prototype.fail=function(o,a,d){return this._propNames.push(o),this._messages.push(a),this._score+=d,!1},s.prototype.unionResolver=function(){return new nbn},s.prototype.resolveUnion=function(o){for(var a,d,g=o,m=null,v=0,A=g.contexts;v<A.length;v++){var I=A[v];(!m||I._score>=m._score)&&(m=I)}m&&m._score>0&&((a=this._propNames).push.apply(a,m._propNames),(d=this._messages).push.apply(d,m._messages))},s.prototype.getError=function(o){for(var a=[],d=this._propNames.length-1;d>=0;d--){var g=this._propNames[d];o+=typeof g=="number"?"["+g+"]":g?"."+g:"";var m=this._messages[d];m&&a.push(o+" "+m)}return new Nkt(o,a.join("; "))},s.prototype.getErrorDetail=function(o){for(var a=[],d=this._propNames.length-1;d>=0;d--){var g=this._propNames[d];o+=typeof g=="number"?"["+g+"]":g?"."+g:"";var m=this._messages[d];m&&a.push({path:o,message:m})}for(var v=null,d=a.length-1;d>=0;d--)v&&(a[d].nested=[v]),v=a[d];return v},s})();$4.DetailContext=Okt;var nbn=(function(){function s(){this.contexts=[]}return s.prototype.createContext=function(){var o=new Okt;return this.contexts.push(o),o},s})()});var oke=Gi(ei=>{"use strict";var Ob=ei&&ei.__extends||(function(){var s=function(o,a){return s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,g){d.__proto__=g}||function(d,g){for(var m in g)g.hasOwnProperty(m)&&(d[m]=g[m])},s(o,a)};return function(o,a){s(o,a);function d(){this.constructor=o}o.prototype=a===null?Object.create(a):(d.prototype=a.prototype,new d)}})();Object.defineProperty(ei,"__esModule",{value:!0});ei.basicTypes=ei.BasicType=ei.TParamList=ei.TParam=ei.param=ei.TFunc=ei.func=ei.TProp=ei.TOptional=ei.opt=ei.TIface=ei.iface=ei.TEnumLiteral=ei.enumlit=ei.TEnumType=ei.enumtype=ei.TIntersection=ei.intersection=ei.TUnion=ei.union=ei.TTuple=ei.tuple=ei.TArray=ei.array=ei.TLiteral=ei.lit=ei.TName=ei.name=ei.TType=void 0;var Pkt=qne(),dg=(function(){function s(){}return s})();ei.TType=dg;function K7(s){return typeof s=="string"?Fkt(s):s}function tke(s,o){var a=s[o];if(!a)throw new Error("Unknown type "+o);return a}function Fkt(s){return new nke(s)}ei.name=Fkt;var nke=(function(s){Ob(o,s);function o(a){var d=s.call(this)||this;return d.name=a,d._failMsg="is not a "+a,d}return o.prototype.getChecker=function(a,d,g){var m=this,v=tke(a,this.name),A=v.getChecker(a,d,g);return v instanceof zh||v instanceof o?A:function(I,T){return A(I,T)?!0:T.fail(null,m._failMsg,0)}},o})(dg);ei.TName=nke;function rbn(s){return new rke(s)}ei.lit=rbn;var rke=(function(s){Ob(o,s);function o(a){var d=s.call(this)||this;return d.value=a,d.name=JSON.stringify(a),d._failMsg="is not "+d.name,d}return o.prototype.getChecker=function(a,d){var g=this;return function(m,v){return m===g.value?!0:v.fail(null,g._failMsg,-1)}},o})(dg);ei.TLiteral=rke;function ibn(s){return new $kt(K7(s))}ei.array=ibn;var $kt=(function(s){Ob(o,s);function o(a){var d=s.call(this)||this;return d.ttype=a,d}return o.prototype.getChecker=function(a,d){var g=this.ttype.getChecker(a,d);return function(m,v){if(!Array.isArray(m))return v.fail(null,"is not an array",0);for(var A=0;A<m.length;A++){var I=g(m[A],v);if(!I)return v.fail(A,null,1)}return!0}},o})(dg);ei.TArray=$kt;function sbn(){for(var s=[],o=0;o<arguments.length;o++)s[o]=arguments[o];return new Hkt(s.map(function(a){return K7(a)}))}ei.tuple=sbn;var Hkt=(function(s){Ob(o,s);function o(a){var d=s.call(this)||this;return d.ttypes=a,d}return o.prototype.getChecker=function(a,d){var g=this.ttypes.map(function(v){return v.getChecker(a,d)}),m=function(v,A){if(!Array.isArray(v))return A.fail(null,"is not an array",0);for(var I=0;I<g.length;I++){var T=g[I](v[I],A);if(!T)return A.fail(I,null,1)}return!0};return d?function(v,A){return m(v,A)?v.length<=g.length?!0:A.fail(g.length,"is extraneous",2):!1}:m},o})(dg);ei.TTuple=Hkt;function obn(){for(var s=[],o=0;o<arguments.length;o++)s[o]=arguments[o];return new Qkt(s.map(function(a){return K7(a)}))}ei.union=obn;var Qkt=(function(s){Ob(o,s);function o(a){var d=s.call(this)||this;d.ttypes=a;var g=a.map(function(v){return v instanceof nke||v instanceof rke?v.name:null}).filter(function(v){return v}),m=a.length-g.length;return g.length?(m>0&&g.push(m+" more"),d._failMsg="is none of "+g.join(", ")):d._failMsg="is none of "+m+" types",d}return o.prototype.getChecker=function(a,d){var g=this,m=this.ttypes.map(function(v){return v.getChecker(a,d)});return function(v,A){for(var I=A.unionResolver(),T=0;T<m.length;T++){var B=m[T](v,I.createContext());if(B)return!0}return A.resolveUnion(I),A.fail(null,g._failMsg,0)}},o})(dg);ei.TUnion=Qkt;function cbn(){for(var s=[],o=0;o<arguments.length;o++)s[o]=arguments[o];return new Gkt(s.map(function(a){return K7(a)}))}ei.intersection=cbn;var Gkt=(function(s){Ob(o,s);function o(a){var d=s.call(this)||this;return d.ttypes=a,d}return o.prototype.getChecker=function(a,d){var g=new Set,m=this.ttypes.map(function(v){return v.getChecker(a,d,g)});return function(v,A){var I=m.every(function(T){return T(v,A)});return I?!0:A.fail(null,null,0)}},o})(dg);ei.TIntersection=Gkt;function ubn(s){return new ike(s)}ei.enumtype=ubn;var ike=(function(s){Ob(o,s);function o(a){var d=s.call(this)||this;return d.members=a,d.validValues=new Set,d._failMsg="is not a valid enum value",d.validValues=new Set(Object.keys(a).map(function(g){return a[g]})),d}return o.prototype.getChecker=function(a,d){var g=this;return function(m,v){return g.validValues.has(m)?!0:v.fail(null,g._failMsg,0)}},o})(dg);ei.TEnumType=ike;function abn(s,o){return new qkt(s,o)}ei.enumlit=abn;var qkt=(function(s){Ob(o,s);function o(a,d){var g=s.call(this)||this;return g.enumName=a,g.prop=d,g._failMsg="is not "+a+"."+d,g}return o.prototype.getChecker=function(a,d){var g=this,m=tke(a,this.enumName);if(!(m instanceof ike))throw new Error("Type "+this.enumName+" used in enumlit is not an enum type");var v=m.members[this.prop];if(!m.members.hasOwnProperty(this.prop))throw new Error("Unknown value "+this.enumName+"."+this.prop+" used in enumlit");return function(A,I){return A===v?!0:I.fail(null,g._failMsg,-1)}},o})(dg);ei.TEnumLiteral=qkt;function lbn(s){return Object.keys(s).map(function(o){return fbn(o,s[o])})}function fbn(s,o){return o instanceof ske?new eke(s,o.ttype,!0):new eke(s,K7(o),!1)}function hbn(s,o){return new Jkt(s,lbn(o))}ei.iface=hbn;var Jkt=(function(s){Ob(o,s);function o(a,d){var g=s.call(this)||this;return g.bases=a,g.props=d,g.propSet=new Set(d.map(function(m){return m.name})),g}return o.prototype.getChecker=function(a,d,g){var m=this,v=this.bases.map(function(R){return tke(a,R).getChecker(a,d)}),A=this.props.map(function(R){return R.ttype.getChecker(a,d)}),I=new Pkt.NoopContext,T=this.props.map(function(R,Q){return!R.isOpt&&!A[Q](void 0,I)}),B=function(R,Q){if(typeof R!="object"||R===null)return Q.fail(null,"is not an object",0);for(var U=0;U<v.length;U++)if(!v[U](R,Q))return!1;for(var U=0;U<A.length;U++){var W=m.props[U].name,ne=R[W];if(ne===void 0){if(T[U])return Q.fail(W,"is missing",1)}else{var he=A[U](ne,Q);if(!he)return Q.fail(W,null,1)}}return!0};if(!d)return B;var L=this.propSet;return g&&(this.propSet.forEach(function(R){return g.add(R)}),L=g),function(R,Q){if(!B(R,Q))return!1;for(var U in R)if(!L.has(U))return Q.fail(U,"is extraneous",2);return!0}},o})(dg);ei.TIface=Jkt;function dbn(s){return new ske(K7(s))}ei.opt=dbn;var ske=(function(s){Ob(o,s);function o(a){var d=s.call(this)||this;return d.ttype=a,d}return o.prototype.getChecker=function(a,d){var g=this.ttype.getChecker(a,d);return function(m,v){return m===void 0||g(m,v)}},o})(dg);ei.TOptional=ske;var eke=(function(){function s(o,a,d){this.name=o,this.ttype=a,this.isOpt=d}return s})();ei.TProp=eke;function pbn(s){for(var o=[],a=1;a<arguments.length;a++)o[a-1]=arguments[a];return new Ukt(new Kkt(o),K7(s))}ei.func=pbn;var Ukt=(function(s){Ob(o,s);function o(a,d){var g=s.call(this)||this;return g.paramList=a,g.result=d,g}return o.prototype.getChecker=function(a,d){return function(g,m){return typeof g=="function"?!0:m.fail(null,"is not a function",0)}},o})(dg);ei.TFunc=Ukt;function gbn(s,o,a){return new zkt(s,K7(o),!!a)}ei.param=gbn;var zkt=(function(){function s(o,a,d){this.name=o,this.ttype=a,this.isOpt=d}return s})();ei.TParam=zkt;var Kkt=(function(s){Ob(o,s);function o(a){var d=s.call(this)||this;return d.params=a,d}return o.prototype.getChecker=function(a,d){var g=this,m=this.params.map(function(T){return T.ttype.getChecker(a,d)}),v=new Pkt.NoopContext,A=this.params.map(function(T,B){return!T.isOpt&&!m[B](void 0,v)}),I=function(T,B){if(!Array.isArray(T))return B.fail(null,"is not an array",0);for(var L=0;L<m.length;L++){var R=g.params[L];if(T[L]===void 0){if(A[L])return B.fail(R.name,"is missing",1)}else{var Q=m[L](T[L],B);if(!Q)return B.fail(R.name,null,1)}}return!0};return d?function(T,B){return I(T,B)?T.length<=m.length?!0:B.fail(m.length,"is extraneous",2):!1}:I},o})(dg);ei.TParamList=Kkt;var zh=(function(s){Ob(o,s);function o(a,d){var g=s.call(this)||this;return g.validator=a,g.message=d,g}return o.prototype.getChecker=function(a,d){var g=this;return function(m,v){return g.validator(m)?!0:v.fail(null,g.message,0)}},o})(dg);ei.BasicType=zh;ei.basicTypes={any:new zh(function(s){return!0},"is invalid"),number:new zh(function(s){return typeof s=="number"},"is not a number"),object:new zh(function(s){return typeof s=="object"&&s},"is not an object"),boolean:new zh(function(s){return typeof s=="boolean"},"is not a boolean"),string:new zh(function(s){return typeof s=="string"},"is not a string"),symbol:new zh(function(s){return typeof s=="symbol"},"is not a symbol"),void:new zh(function(s){return s==null},"is not void"),undefined:new zh(function(s){return s===void 0},"is not undefined"),null:new zh(function(s){return s===null},"is not null"),never:new zh(function(s){return!1},"is unexpected"),Date:new zh(jkt("[object Date]"),"is not a Date"),RegExp:new zh(jkt("[object RegExp]"),"is not a RegExp")};var bbn=Object.prototype.toString;function jkt(s){return function(o){return typeof o=="object"&&o&&bbn.call(o)===s}}typeof Buffer<"u"&&(ei.basicTypes.Buffer=new zh(function(s){return Buffer.isBuffer(s)},"is not a Buffer"));var mbn=function(s){ei.basicTypes[s.name]=new zh(function(o){return o instanceof s},"is not a "+s.name)};for(Jne=0,Z9e=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,ArrayBuffer];Jne<Z9e.length;Jne++)Rkt=Z9e[Jne],mbn(Rkt);var Rkt,Jne,Z9e});var cke=Gi(Po=>{"use strict";var wbn=Po&&Po.__spreadArrays||function(){for(var s=0,o=0,a=arguments.length;o<a;o++)s+=arguments[o].length;for(var d=Array(s),g=0,o=0;o<a;o++)for(var m=arguments[o],v=0,A=m.length;v<A;v++,g++)d[g]=m[v];return d};Object.defineProperty(Po,"__esModule",{value:!0});Po.Checker=Po.createCheckers=void 0;var v$=oke(),NM=qne(),Du=oke();Object.defineProperty(Po,"TArray",{enumerable:!0,get:function(){return Du.TArray}});Object.defineProperty(Po,"TEnumType",{enumerable:!0,get:function(){return Du.TEnumType}});Object.defineProperty(Po,"TEnumLiteral",{enumerable:!0,get:function(){return Du.TEnumLiteral}});Object.defineProperty(Po,"TFunc",{enumerable:!0,get:function(){return Du.TFunc}});Object.defineProperty(Po,"TIface",{enumerable:!0,get:function(){return Du.TIface}});Object.defineProperty(Po,"TLiteral",{enumerable:!0,get:function(){return Du.TLiteral}});Object.defineProperty(Po,"TName",{enumerable:!0,get:function(){return Du.TName}});Object.defineProperty(Po,"TOptional",{enumerable:!0,get:function(){return Du.TOptional}});Object.defineProperty(Po,"TParam",{enumerable:!0,get:function(){return Du.TParam}});Object.defineProperty(Po,"TParamList",{enumerable:!0,get:function(){return Du.TParamList}});Object.defineProperty(Po,"TProp",{enumerable:!0,get:function(){return Du.TProp}});Object.defineProperty(Po,"TTuple",{enumerable:!0,get:function(){return Du.TTuple}});Object.defineProperty(Po,"TType",{enumerable:!0,get:function(){return Du.TType}});Object.defineProperty(Po,"TUnion",{enumerable:!0,get:function(){return Du.TUnion}});Object.defineProperty(Po,"TIntersection",{enumerable:!0,get:function(){return Du.TIntersection}});Object.defineProperty(Po,"array",{enumerable:!0,get:function(){return Du.array}});Object.defineProperty(Po,"enumlit",{enumerable:!0,get:function(){return Du.enumlit}});Object.defineProperty(Po,"enumtype",{enumerable:!0,get:function(){return Du.enumtype}});Object.defineProperty(Po,"func",{enumerable:!0,get:function(){return Du.func}});Object.defineProperty(Po,"iface",{enumerable:!0,get:function(){return Du.iface}});Object.defineProperty(Po,"lit",{enumerable:!0,get:function(){return Du.lit}});Object.defineProperty(Po,"name",{enumerable:!0,get:function(){return Du.name}});Object.defineProperty(Po,"opt",{enumerable:!0,get:function(){return Du.opt}});Object.defineProperty(Po,"param",{enumerable:!0,get:function(){return Du.param}});Object.defineProperty(Po,"tuple",{enumerable:!0,get:function(){return Du.tuple}});Object.defineProperty(Po,"union",{enumerable:!0,get:function(){return Du.union}});Object.defineProperty(Po,"intersection",{enumerable:!0,get:function(){return Du.intersection}});Object.defineProperty(Po,"BasicType",{enumerable:!0,get:function(){return Du.BasicType}});var Abn=qne();Object.defineProperty(Po,"VError",{enumerable:!0,get:function(){return Abn.VError}});function vbn(){for(var s=[],o=0;o<arguments.length;o++)s[o]=arguments[o];for(var a=Object.assign.apply(Object,wbn([{},v$.basicTypes],s)),d={},g=0,m=s;g<m.length;g++)for(var v=m[g],A=0,I=Object.keys(v);A<I.length;A++){var T=I[A];d[T]=new Wkt(a,v[T])}return d}Po.createCheckers=vbn;var Wkt=(function(){function s(o,a,d){if(d===void 0&&(d="value"),this.suite=o,this.ttype=a,this._path=d,this.props=new Map,a instanceof v$.TIface)for(var g=0,m=a.props;g<m.length;g++){var v=m[g];this.props.set(v.name,v.ttype)}this.checkerPlain=this.ttype.getChecker(o,!1),this.checkerStrict=this.ttype.getChecker(o,!0)}return s.prototype.setReportedPath=function(o){this._path=o},s.prototype.check=function(o){return this._doCheck(this.checkerPlain,o)},s.prototype.test=function(o){return this.checkerPlain(o,new NM.NoopContext)},s.prototype.validate=function(o){return this._doValidate(this.checkerPlain,o)},s.prototype.strictCheck=function(o){return this._doCheck(this.checkerStrict,o)},s.prototype.strictTest=function(o){return this.checkerStrict(o,new NM.NoopContext)},s.prototype.strictValidate=function(o){return this._doValidate(this.checkerStrict,o)},s.prototype.getProp=function(o){var a=this.props.get(o);if(!a)throw new Error("Type has no property "+o);return new s(this.suite,a,this._path+"."+o)},s.prototype.methodArgs=function(o){var a=this._getMethod(o);return new s(this.suite,a.paramList)},s.prototype.methodResult=function(o){var a=this._getMethod(o);return new s(this.suite,a.result)},s.prototype.getArgs=function(){if(!(this.ttype instanceof v$.TFunc))throw new Error("getArgs() applied to non-function");return new s(this.suite,this.ttype.paramList)},s.prototype.getResult=function(){if(!(this.ttype instanceof v$.TFunc))throw new Error("getResult() applied to non-function");return new s(this.suite,this.ttype.result)},s.prototype.getType=function(){return this.ttype},s.prototype._doCheck=function(o,a){var d=new NM.NoopContext;if(!o(a,d)){var g=new NM.DetailContext;throw o(a,g),g.getError(this._path)}},s.prototype._doValidate=function(o,a){var d=new NM.NoopContext;if(o(a,d))return null;var g=new NM.DetailContext;return o(a,g),g.getErrorDetail(this._path)},s.prototype._getMethod=function(o){var a=this.props.get(o);if(!a)throw new Error("Type has no property "+o);if(!(a instanceof v$.TFunc))throw new Error("Property "+o+" is not a method");return a},s})();Po.Checker=Wkt});var LEt=Gi(W$=>{"use strict";W$.__esModule=!0;W$.LinesAndColumns=void 0;var bre=`
|
|
27
27
|
`,DEt="\r",BEt=(function(){function s(o){this.string=o;for(var a=[0],d=0;d<o.length;)switch(o[d]){case bre:d+=bre.length,a.push(d);break;case DEt:d+=DEt.length,o[d]===bre&&(d+=bre.length),a.push(d);break;default:d++;break}this.offsets=a}return s.prototype.locationForIndex=function(o){if(o<0||o>this.string.length)return null;for(var a=0,d=this.offsets;d[a+1]<=o;)a++;var g=o-d[a];return{line:a,column:g}},s.prototype.indexForLocation=function(o){var a=o.line,d=o.column;return a<0||a>=this.offsets.length||d<0||d>this.lengthOfLine(a)?null:this.offsets[a]+d},s.prototype.lengthOfLine=function(o){var a=this.offsets[o],d=o===this.offsets.length-1?this.string.length:this.offsets[o+1];return d-a},s})();W$.LinesAndColumns=BEt;W$.default=BEt});var nH=Gi((Xar,JEt)=>{"use strict";var fwn="2.0.0",hwn=Number.MAX_SAFE_INTEGER||9007199254740991,dwn=16,pwn=250,gwn=["major","premajor","minor","preminor","patch","prepatch","prerelease"];JEt.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:dwn,MAX_SAFE_BUILD_LENGTH:pwn,MAX_SAFE_INTEGER:hwn,RELEASE_TYPES:gwn,SEMVER_SPEC_VERSION:fwn,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var rH=Gi((Var,UEt)=>{"use strict";var bwn=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...s)=>console.error("SEMVER",...s):()=>{};UEt.exports=bwn});var UM=Gi((Q4,zEt)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:Xke,MAX_SAFE_BUILD_LENGTH:mwn,MAX_LENGTH:wwn}=nH(),Awn=rH();Q4=zEt.exports={};var vwn=Q4.re=[],ywn=Q4.safeRe=[],Pr=Q4.src=[],kwn=Q4.safeSrc=[],Fr=Q4.t={},xwn=0,Vke="[a-zA-Z0-9-]",Ewn=[["\\s",1],["\\d",wwn],[Vke,mwn]],Cwn=s=>{for(let[o,a]of Ewn)s=s.split(`${o}*`).join(`${o}{0,${a}}`).split(`${o}+`).join(`${o}{1,${a}}`);return s},Qs=(s,o,a)=>{let d=Cwn(o),g=xwn++;Awn(s,g,o),Fr[s]=g,Pr[g]=o,kwn[g]=d,vwn[g]=new RegExp(o,a?"g":void 0),ywn[g]=new RegExp(d,a?"g":void 0)};Qs("NUMERICIDENTIFIER","0|[1-9]\\d*");Qs("NUMERICIDENTIFIERLOOSE","\\d+");Qs("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Vke}*`);Qs("MAINVERSION",`(${Pr[Fr.NUMERICIDENTIFIER]})\\.(${Pr[Fr.NUMERICIDENTIFIER]})\\.(${Pr[Fr.NUMERICIDENTIFIER]})`);Qs("MAINVERSIONLOOSE",`(${Pr[Fr.NUMERICIDENTIFIERLOOSE]})\\.(${Pr[Fr.NUMERICIDENTIFIERLOOSE]})\\.(${Pr[Fr.NUMERICIDENTIFIERLOOSE]})`);Qs("PRERELEASEIDENTIFIER",`(?:${Pr[Fr.NONNUMERICIDENTIFIER]}|${Pr[Fr.NUMERICIDENTIFIER]})`);Qs("PRERELEASEIDENTIFIERLOOSE",`(?:${Pr[Fr.NONNUMERICIDENTIFIER]}|${Pr[Fr.NUMERICIDENTIFIERLOOSE]})`);Qs("PRERELEASE",`(?:-(${Pr[Fr.PRERELEASEIDENTIFIER]}(?:\\.${Pr[Fr.PRERELEASEIDENTIFIER]})*))`);Qs("PRERELEASELOOSE",`(?:-?(${Pr[Fr.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${Pr[Fr.PRERELEASEIDENTIFIERLOOSE]})*))`);Qs("BUILDIDENTIFIER",`${Vke}+`);Qs("BUILD",`(?:\\+(${Pr[Fr.BUILDIDENTIFIER]}(?:\\.${Pr[Fr.BUILDIDENTIFIER]})*))`);Qs("FULLPLAIN",`v?${Pr[Fr.MAINVERSION]}${Pr[Fr.PRERELEASE]}?${Pr[Fr.BUILD]}?`);Qs("FULL",`^${Pr[Fr.FULLPLAIN]}$`);Qs("LOOSEPLAIN",`[v=\\s]*${Pr[Fr.MAINVERSIONLOOSE]}${Pr[Fr.PRERELEASELOOSE]}?${Pr[Fr.BUILD]}?`);Qs("LOOSE",`^${Pr[Fr.LOOSEPLAIN]}$`);Qs("GTLT","((?:<|>)?=?)");Qs("XRANGEIDENTIFIERLOOSE",`${Pr[Fr.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);Qs("XRANGEIDENTIFIER",`${Pr[Fr.NUMERICIDENTIFIER]}|x|X|\\*`);Qs("XRANGEPLAIN",`[v=\\s]*(${Pr[Fr.XRANGEIDENTIFIER]})(?:\\.(${Pr[Fr.XRANGEIDENTIFIER]})(?:\\.(${Pr[Fr.XRANGEIDENTIFIER]})(?:${Pr[Fr.PRERELEASE]})?${Pr[Fr.BUILD]}?)?)?`);Qs("XRANGEPLAINLOOSE",`[v=\\s]*(${Pr[Fr.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Pr[Fr.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Pr[Fr.XRANGEIDENTIFIERLOOSE]})(?:${Pr[Fr.PRERELEASELOOSE]})?${Pr[Fr.BUILD]}?)?)?`);Qs("XRANGE",`^${Pr[Fr.GTLT]}\\s*${Pr[Fr.XRANGEPLAIN]}$`);Qs("XRANGELOOSE",`^${Pr[Fr.GTLT]}\\s*${Pr[Fr.XRANGEPLAINLOOSE]}$`);Qs("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Xke}})(?:\\.(\\d{1,${Xke}}))?(?:\\.(\\d{1,${Xke}}))?`);Qs("COERCE",`${Pr[Fr.COERCEPLAIN]}(?:$|[^\\d])`);Qs("COERCEFULL",Pr[Fr.COERCEPLAIN]+`(?:${Pr[Fr.PRERELEASE]})?(?:${Pr[Fr.BUILD]})?(?:$|[^\\d])`);Qs("COERCERTL",Pr[Fr.COERCE],!0);Qs("COERCERTLFULL",Pr[Fr.COERCEFULL],!0);Qs("LONETILDE","(?:~>?)");Qs("TILDETRIM",`(\\s*)${Pr[Fr.LONETILDE]}\\s+`,!0);Q4.tildeTrimReplace="$1~";Qs("TILDE",`^${Pr[Fr.LONETILDE]}${Pr[Fr.XRANGEPLAIN]}$`);Qs("TILDELOOSE",`^${Pr[Fr.LONETILDE]}${Pr[Fr.XRANGEPLAINLOOSE]}$`);Qs("LONECARET","(?:\\^)");Qs("CARETTRIM",`(\\s*)${Pr[Fr.LONECARET]}\\s+`,!0);Q4.caretTrimReplace="$1^";Qs("CARET",`^${Pr[Fr.LONECARET]}${Pr[Fr.XRANGEPLAIN]}$`);Qs("CARETLOOSE",`^${Pr[Fr.LONECARET]}${Pr[Fr.XRANGEPLAINLOOSE]}$`);Qs("COMPARATORLOOSE",`^${Pr[Fr.GTLT]}\\s*(${Pr[Fr.LOOSEPLAIN]})$|^$`);Qs("COMPARATOR",`^${Pr[Fr.GTLT]}\\s*(${Pr[Fr.FULLPLAIN]})$|^$`);Qs("COMPARATORTRIM",`(\\s*)${Pr[Fr.GTLT]}\\s*(${Pr[Fr.LOOSEPLAIN]}|${Pr[Fr.XRANGEPLAIN]})`,!0);Q4.comparatorTrimReplace="$1$2$3";Qs("HYPHENRANGE",`^\\s*(${Pr[Fr.XRANGEPLAIN]})\\s+-\\s+(${Pr[Fr.XRANGEPLAIN]})\\s*$`);Qs("HYPHENRANGELOOSE",`^\\s*(${Pr[Fr.XRANGEPLAINLOOSE]})\\s+-\\s+(${Pr[Fr.XRANGEPLAINLOOSE]})\\s*$`);Qs("STAR","(<|>)?=?\\s*\\*");Qs("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");Qs("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var mre=Gi((Zar,KEt)=>{"use strict";var Iwn=Object.freeze({loose:!0}),Swn=Object.freeze({}),Twn=s=>s?typeof s!="object"?Iwn:s:Swn;KEt.exports=Twn});var Zke=Gi((elr,XEt)=>{"use strict";var WEt=/^[0-9]+$/,YEt=(s,o)=>{if(typeof s=="number"&&typeof o=="number")return s===o?0:s<o?-1:1;let a=WEt.test(s),d=WEt.test(o);return a&&d&&(s=+s,o=+o),s===o?0:a&&!d?-1:d&&!a?1:s<o?-1:1},_wn=(s,o)=>YEt(o,s);XEt.exports={compareIdentifiers:YEt,rcompareIdentifiers:_wn}});var Kh=Gi((tlr,ZEt)=>{"use strict";var wre=rH(),{MAX_LENGTH:VEt,MAX_SAFE_INTEGER:Are}=nH(),{safeRe:vre,t:yre}=UM(),Mwn=mre(),{compareIdentifiers:exe}=Zke(),txe=class s{constructor(o,a){if(a=Mwn(a),o instanceof s){if(o.loose===!!a.loose&&o.includePrerelease===!!a.includePrerelease)return o;o=o.version}else if(typeof o!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof o}".`);if(o.length>VEt)throw new TypeError(`version is longer than ${VEt} characters`);wre("SemVer",o,a),this.options=a,this.loose=!!a.loose,this.includePrerelease=!!a.includePrerelease;let d=o.trim().match(a.loose?vre[yre.LOOSE]:vre[yre.FULL]);if(!d)throw new TypeError(`Invalid Version: ${o}`);if(this.raw=o,this.major=+d[1],this.minor=+d[2],this.patch=+d[3],this.major>Are||this.major<0)throw new TypeError("Invalid major version");if(this.minor>Are||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>Are||this.patch<0)throw new TypeError("Invalid patch version");d[4]?this.prerelease=d[4].split(".").map(g=>{if(/^[0-9]+$/.test(g)){let m=+g;if(m>=0&&m<Are)return m}return g}):this.prerelease=[],this.build=d[5]?d[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(o){if(wre("SemVer.compare",this.version,this.options,o),!(o instanceof s)){if(typeof o=="string"&&o===this.version)return 0;o=new s(o,this.options)}return o.version===this.version?0:this.compareMain(o)||this.comparePre(o)}compareMain(o){return o instanceof s||(o=new s(o,this.options)),this.major<o.major?-1:this.major>o.major?1:this.minor<o.minor?-1:this.minor>o.minor?1:this.patch<o.patch?-1:this.patch>o.patch?1:0}comparePre(o){if(o instanceof s||(o=new s(o,this.options)),this.prerelease.length&&!o.prerelease.length)return-1;if(!this.prerelease.length&&o.prerelease.length)return 1;if(!this.prerelease.length&&!o.prerelease.length)return 0;let a=0;do{let d=this.prerelease[a],g=o.prerelease[a];if(wre("prerelease compare",a,d,g),d===void 0&&g===void 0)return 0;if(g===void 0)return 1;if(d===void 0)return-1;if(d===g)continue;return exe(d,g)}while(++a)}compareBuild(o){o instanceof s||(o=new s(o,this.options));let a=0;do{let d=this.build[a],g=o.build[a];if(wre("build compare",a,d,g),d===void 0&&g===void 0)return 0;if(g===void 0)return 1;if(d===void 0)return-1;if(d===g)continue;return exe(d,g)}while(++a)}inc(o,a,d){if(o.startsWith("pre")){if(!a&&d===!1)throw new Error("invalid increment argument: identifier is empty");if(a){let g=`-${a}`.match(this.options.loose?vre[yre.PRERELEASELOOSE]:vre[yre.PRERELEASE]);if(!g||g[1]!==a)throw new Error(`invalid identifier: ${a}`)}}switch(o){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",a,d);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",a,d);break;case"prepatch":this.prerelease.length=0,this.inc("patch",a,d),this.inc("pre",a,d);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",a,d),this.inc("pre",a,d);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let g=Number(d)?1:0;if(this.prerelease.length===0)this.prerelease=[g];else{let m=this.prerelease.length;for(;--m>=0;)typeof this.prerelease[m]=="number"&&(this.prerelease[m]++,m=-2);if(m===-1){if(a===this.prerelease.join(".")&&d===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(g)}}if(a){let m=[a,g];d===!1&&(m=[a]),exe(this.prerelease[0],a)===0?isNaN(this.prerelease[1])&&(this.prerelease=m):this.prerelease=m}break}default:throw new Error(`invalid increment argument: ${o}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};ZEt.exports=txe});var LC=Gi((nlr,tCt)=>{"use strict";var eCt=Kh(),Dwn=(s,o,a=!1)=>{if(s instanceof eCt)return s;try{return new eCt(s,o)}catch(d){if(!a)return null;throw d}};tCt.exports=Dwn});var rCt=Gi((rlr,nCt)=>{"use strict";var Bwn=LC(),Lwn=(s,o)=>{let a=Bwn(s,o);return a?a.version:null};nCt.exports=Lwn});var sCt=Gi((ilr,iCt)=>{"use strict";var Nwn=LC(),Own=(s,o)=>{let a=Nwn(s.trim().replace(/^[=v]+/,""),o);return a?a.version:null};iCt.exports=Own});var uCt=Gi((slr,cCt)=>{"use strict";var oCt=Kh(),jwn=(s,o,a,d,g)=>{typeof a=="string"&&(g=d,d=a,a=void 0);try{return new oCt(s instanceof oCt?s.version:s,a).inc(o,d,g).version}catch{return null}};cCt.exports=jwn});var fCt=Gi((olr,lCt)=>{"use strict";var aCt=LC(),Rwn=(s,o)=>{let a=aCt(s,null,!0),d=aCt(o,null,!0),g=a.compare(d);if(g===0)return null;let m=g>0,v=m?a:d,A=m?d:a,I=!!v.prerelease.length;if(!!A.prerelease.length&&!I){if(!A.patch&&!A.minor)return"major";if(A.compareMain(v)===0)return A.minor&&!A.patch?"minor":"patch"}let B=I?"pre":"";return a.major!==d.major?B+"major":a.minor!==d.minor?B+"minor":a.patch!==d.patch?B+"patch":"prerelease"};lCt.exports=Rwn});var dCt=Gi((clr,hCt)=>{"use strict";var Pwn=Kh(),Fwn=(s,o)=>new Pwn(s,o).major;hCt.exports=Fwn});var gCt=Gi((ulr,pCt)=>{"use strict";var $wn=Kh(),Hwn=(s,o)=>new $wn(s,o).minor;pCt.exports=Hwn});var mCt=Gi((alr,bCt)=>{"use strict";var Qwn=Kh(),Gwn=(s,o)=>new Qwn(s,o).patch;bCt.exports=Gwn});var ACt=Gi((llr,wCt)=>{"use strict";var qwn=LC(),Jwn=(s,o)=>{let a=qwn(s,o);return a&&a.prerelease.length?a.prerelease:null};wCt.exports=Jwn});var l2=Gi((flr,yCt)=>{"use strict";var vCt=Kh(),Uwn=(s,o,a)=>new vCt(s,a).compare(new vCt(o,a));yCt.exports=Uwn});var xCt=Gi((hlr,kCt)=>{"use strict";var zwn=l2(),Kwn=(s,o,a)=>zwn(o,s,a);kCt.exports=Kwn});var CCt=Gi((dlr,ECt)=>{"use strict";var Wwn=l2(),Ywn=(s,o)=>Wwn(s,o,!0);ECt.exports=Ywn});var kre=Gi((plr,SCt)=>{"use strict";var ICt=Kh(),Xwn=(s,o,a)=>{let d=new ICt(s,a),g=new ICt(o,a);return d.compare(g)||d.compareBuild(g)};SCt.exports=Xwn});var _Ct=Gi((glr,TCt)=>{"use strict";var Vwn=kre(),Zwn=(s,o)=>s.sort((a,d)=>Vwn(a,d,o));TCt.exports=Zwn});var DCt=Gi((blr,MCt)=>{"use strict";var e3n=kre(),t3n=(s,o)=>s.sort((a,d)=>e3n(d,a,o));MCt.exports=t3n});var iH=Gi((mlr,BCt)=>{"use strict";var n3n=l2(),r3n=(s,o,a)=>n3n(s,o,a)>0;BCt.exports=r3n});var xre=Gi((wlr,LCt)=>{"use strict";var i3n=l2(),s3n=(s,o,a)=>i3n(s,o,a)<0;LCt.exports=s3n});var nxe=Gi((Alr,NCt)=>{"use strict";var o3n=l2(),c3n=(s,o,a)=>o3n(s,o,a)===0;NCt.exports=c3n});var rxe=Gi((vlr,OCt)=>{"use strict";var u3n=l2(),a3n=(s,o,a)=>u3n(s,o,a)!==0;OCt.exports=a3n});var Ere=Gi((ylr,jCt)=>{"use strict";var l3n=l2(),f3n=(s,o,a)=>l3n(s,o,a)>=0;jCt.exports=f3n});var Cre=Gi((klr,RCt)=>{"use strict";var h3n=l2(),d3n=(s,o,a)=>h3n(s,o,a)<=0;RCt.exports=d3n});var ixe=Gi((xlr,PCt)=>{"use strict";var p3n=nxe(),g3n=rxe(),b3n=iH(),m3n=Ere(),w3n=xre(),A3n=Cre(),v3n=(s,o,a,d)=>{switch(o){case"===":return typeof s=="object"&&(s=s.version),typeof a=="object"&&(a=a.version),s===a;case"!==":return typeof s=="object"&&(s=s.version),typeof a=="object"&&(a=a.version),s!==a;case"":case"=":case"==":return p3n(s,a,d);case"!=":return g3n(s,a,d);case">":return b3n(s,a,d);case">=":return m3n(s,a,d);case"<":return w3n(s,a,d);case"<=":return A3n(s,a,d);default:throw new TypeError(`Invalid operator: ${o}`)}};PCt.exports=v3n});var $Ct=Gi((Elr,FCt)=>{"use strict";var y3n=Kh(),k3n=LC(),{safeRe:Ire,t:Sre}=UM(),x3n=(s,o)=>{if(s instanceof y3n)return s;if(typeof s=="number"&&(s=String(s)),typeof s!="string")return null;o=o||{};let a=null;if(!o.rtl)a=s.match(o.includePrerelease?Ire[Sre.COERCEFULL]:Ire[Sre.COERCE]);else{let I=o.includePrerelease?Ire[Sre.COERCERTLFULL]:Ire[Sre.COERCERTL],T;for(;(T=I.exec(s))&&(!a||a.index+a[0].length!==s.length);)(!a||T.index+T[0].length!==a.index+a[0].length)&&(a=T),I.lastIndex=T.index+T[1].length+T[2].length;I.lastIndex=-1}if(a===null)return null;let d=a[2],g=a[3]||"0",m=a[4]||"0",v=o.includePrerelease&&a[5]?`-${a[5]}`:"",A=o.includePrerelease&&a[6]?`+${a[6]}`:"";return k3n(`${d}.${g}.${m}${v}${A}`,o)};FCt.exports=x3n});var QCt=Gi((Clr,HCt)=>{"use strict";var sxe=class{constructor(){this.max=1e3,this.map=new Map}get(o){let a=this.map.get(o);if(a!==void 0)return this.map.delete(o),this.map.set(o,a),a}delete(o){return this.map.delete(o)}set(o,a){if(!this.delete(o)&&a!==void 0){if(this.map.size>=this.max){let g=this.map.keys().next().value;this.delete(g)}this.map.set(o,a)}return this}};HCt.exports=sxe});var f2=Gi((Ilr,UCt)=>{"use strict";var E3n=/\s+/g,oxe=class s{constructor(o,a){if(a=I3n(a),o instanceof s)return o.loose===!!a.loose&&o.includePrerelease===!!a.includePrerelease?o:new s(o.raw,a);if(o instanceof cxe)return this.raw=o.value,this.set=[[o]],this.formatted=void 0,this;if(this.options=a,this.loose=!!a.loose,this.includePrerelease=!!a.includePrerelease,this.raw=o.trim().replace(E3n," "),this.set=this.raw.split("||").map(d=>this.parseRange(d.trim())).filter(d=>d.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let d=this.set[0];if(this.set=this.set.filter(g=>!qCt(g[0])),this.set.length===0)this.set=[d];else if(this.set.length>1){for(let g of this.set)if(g.length===1&&L3n(g[0])){this.set=[g];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let o=0;o<this.set.length;o++){o>0&&(this.formatted+="||");let a=this.set[o];for(let d=0;d<a.length;d++)d>0&&(this.formatted+=" "),this.formatted+=a[d].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(o){let d=((this.options.includePrerelease&&D3n)|(this.options.loose&&B3n))+":"+o,g=GCt.get(d);if(g)return g;let m=this.options.loose,v=m?ep[Wh.HYPHENRANGELOOSE]:ep[Wh.HYPHENRANGE];o=o.replace(v,G3n(this.options.includePrerelease)),Ta("hyphen replace",o),o=o.replace(ep[Wh.COMPARATORTRIM],T3n),Ta("comparator trim",o),o=o.replace(ep[Wh.TILDETRIM],_3n),Ta("tilde trim",o),o=o.replace(ep[Wh.CARETTRIM],M3n),Ta("caret trim",o);let A=o.split(" ").map(L=>N3n(L,this.options)).join(" ").split(/\s+/).map(L=>Q3n(L,this.options));m&&(A=A.filter(L=>(Ta("loose invalid filter",L,this.options),!!L.match(ep[Wh.COMPARATORLOOSE])))),Ta("range list",A);let I=new Map,T=A.map(L=>new cxe(L,this.options));for(let L of T){if(qCt(L))return[L];I.set(L.value,L)}I.size>1&&I.has("")&&I.delete("");let B=[...I.values()];return GCt.set(d,B),B}intersects(o,a){if(!(o instanceof s))throw new TypeError("a Range is required");return this.set.some(d=>JCt(d,a)&&o.set.some(g=>JCt(g,a)&&d.every(m=>g.every(v=>m.intersects(v,a)))))}test(o){if(!o)return!1;if(typeof o=="string")try{o=new S3n(o,this.options)}catch{return!1}for(let a=0;a<this.set.length;a++)if(q3n(this.set[a],o,this.options))return!0;return!1}};UCt.exports=oxe;var C3n=QCt(),GCt=new C3n,I3n=mre(),cxe=sH(),Ta=rH(),S3n=Kh(),{safeRe:ep,t:Wh,comparatorTrimReplace:T3n,tildeTrimReplace:_3n,caretTrimReplace:M3n}=UM(),{FLAG_INCLUDE_PRERELEASE:D3n,FLAG_LOOSE:B3n}=nH(),qCt=s=>s.value==="<0.0.0-0",L3n=s=>s.value==="",JCt=(s,o)=>{let a=!0,d=s.slice(),g=d.pop();for(;a&&d.length;)a=d.every(m=>g.intersects(m,o)),g=d.pop();return a},N3n=(s,o)=>(s=s.replace(ep[Wh.BUILD],""),Ta("comp",s,o),s=R3n(s,o),Ta("caret",s),s=O3n(s,o),Ta("tildes",s),s=F3n(s,o),Ta("xrange",s),s=H3n(s,o),Ta("stars",s),s),tp=s=>!s||s.toLowerCase()==="x"||s==="*",O3n=(s,o)=>s.trim().split(/\s+/).map(a=>j3n(a,o)).join(" "),j3n=(s,o)=>{let a=o.loose?ep[Wh.TILDELOOSE]:ep[Wh.TILDE];return s.replace(a,(d,g,m,v,A)=>{Ta("tilde",s,d,g,m,v,A);let I;return tp(g)?I="":tp(m)?I=`>=${g}.0.0 <${+g+1}.0.0-0`:tp(v)?I=`>=${g}.${m}.0 <${g}.${+m+1}.0-0`:A?(Ta("replaceTilde pr",A),I=`>=${g}.${m}.${v}-${A} <${g}.${+m+1}.0-0`):I=`>=${g}.${m}.${v} <${g}.${+m+1}.0-0`,Ta("tilde return",I),I})},R3n=(s,o)=>s.trim().split(/\s+/).map(a=>P3n(a,o)).join(" "),P3n=(s,o)=>{Ta("caret",s,o);let a=o.loose?ep[Wh.CARETLOOSE]:ep[Wh.CARET],d=o.includePrerelease?"-0":"";return s.replace(a,(g,m,v,A,I)=>{Ta("caret",s,g,m,v,A,I);let T;return tp(m)?T="":tp(v)?T=`>=${m}.0.0${d} <${+m+1}.0.0-0`:tp(A)?m==="0"?T=`>=${m}.${v}.0${d} <${m}.${+v+1}.0-0`:T=`>=${m}.${v}.0${d} <${+m+1}.0.0-0`:I?(Ta("replaceCaret pr",I),m==="0"?v==="0"?T=`>=${m}.${v}.${A}-${I} <${m}.${v}.${+A+1}-0`:T=`>=${m}.${v}.${A}-${I} <${m}.${+v+1}.0-0`:T=`>=${m}.${v}.${A}-${I} <${+m+1}.0.0-0`):(Ta("no pr"),m==="0"?v==="0"?T=`>=${m}.${v}.${A}${d} <${m}.${v}.${+A+1}-0`:T=`>=${m}.${v}.${A}${d} <${m}.${+v+1}.0-0`:T=`>=${m}.${v}.${A} <${+m+1}.0.0-0`),Ta("caret return",T),T})},F3n=(s,o)=>(Ta("replaceXRanges",s,o),s.split(/\s+/).map(a=>$3n(a,o)).join(" ")),$3n=(s,o)=>{s=s.trim();let a=o.loose?ep[Wh.XRANGELOOSE]:ep[Wh.XRANGE];return s.replace(a,(d,g,m,v,A,I)=>{Ta("xRange",s,d,g,m,v,A,I);let T=tp(m),B=T||tp(v),L=B||tp(A),R=L;return g==="="&&R&&(g=""),I=o.includePrerelease?"-0":"",T?g===">"||g==="<"?d="<0.0.0-0":d="*":g&&R?(B&&(v=0),A=0,g===">"?(g=">=",B?(m=+m+1,v=0,A=0):(v=+v+1,A=0)):g==="<="&&(g="<",B?m=+m+1:v=+v+1),g==="<"&&(I="-0"),d=`${g+m}.${v}.${A}${I}`):B?d=`>=${m}.0.0${I} <${+m+1}.0.0-0`:L&&(d=`>=${m}.${v}.0${I} <${m}.${+v+1}.0-0`),Ta("xRange return",d),d})},H3n=(s,o)=>(Ta("replaceStars",s,o),s.trim().replace(ep[Wh.STAR],"")),Q3n=(s,o)=>(Ta("replaceGTE0",s,o),s.trim().replace(ep[o.includePrerelease?Wh.GTE0PRE:Wh.GTE0],"")),G3n=s=>(o,a,d,g,m,v,A,I,T,B,L,R)=>(tp(d)?a="":tp(g)?a=`>=${d}.0.0${s?"-0":""}`:tp(m)?a=`>=${d}.${g}.0${s?"-0":""}`:v?a=`>=${a}`:a=`>=${a}${s?"-0":""}`,tp(T)?I="":tp(B)?I=`<${+T+1}.0.0-0`:tp(L)?I=`<${T}.${+B+1}.0-0`:R?I=`<=${T}.${B}.${L}-${R}`:s?I=`<${T}.${B}.${+L+1}-0`:I=`<=${I}`,`${a} ${I}`.trim()),q3n=(s,o,a)=>{for(let d=0;d<s.length;d++)if(!s[d].test(o))return!1;if(o.prerelease.length&&!a.includePrerelease){for(let d=0;d<s.length;d++)if(Ta(s[d].semver),s[d].semver!==cxe.ANY&&s[d].semver.prerelease.length>0){let g=s[d].semver;if(g.major===o.major&&g.minor===o.minor&&g.patch===o.patch)return!0}return!1}return!0}});var sH=Gi((Slr,VCt)=>{"use strict";var oH=Symbol("SemVer ANY"),lxe=class s{static get ANY(){return oH}constructor(o,a){if(a=zCt(a),o instanceof s){if(o.loose===!!a.loose)return o;o=o.value}o=o.trim().split(/\s+/).join(" "),axe("comparator",o,a),this.options=a,this.loose=!!a.loose,this.parse(o),this.semver===oH?this.value="":this.value=this.operator+this.semver.version,axe("comp",this)}parse(o){let a=this.options.loose?KCt[WCt.COMPARATORLOOSE]:KCt[WCt.COMPARATOR],d=o.match(a);if(!d)throw new TypeError(`Invalid comparator: ${o}`);this.operator=d[1]!==void 0?d[1]:"",this.operator==="="&&(this.operator=""),d[2]?this.semver=new YCt(d[2],this.options.loose):this.semver=oH}toString(){return this.value}test(o){if(axe("Comparator.test",o,this.options.loose),this.semver===oH||o===oH)return!0;if(typeof o=="string")try{o=new YCt(o,this.options)}catch{return!1}return uxe(o,this.operator,this.semver,this.options)}intersects(o,a){if(!(o instanceof s))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new XCt(o.value,a).test(this.value):o.operator===""?o.value===""?!0:new XCt(this.value,a).test(o.semver):(a=zCt(a),a.includePrerelease&&(this.value==="<0.0.0-0"||o.value==="<0.0.0-0")||!a.includePrerelease&&(this.value.startsWith("<0.0.0")||o.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&o.operator.startsWith(">")||this.operator.startsWith("<")&&o.operator.startsWith("<")||this.semver.version===o.semver.version&&this.operator.includes("=")&&o.operator.includes("=")||uxe(this.semver,"<",o.semver,a)&&this.operator.startsWith(">")&&o.operator.startsWith("<")||uxe(this.semver,">",o.semver,a)&&this.operator.startsWith("<")&&o.operator.startsWith(">")))}};VCt.exports=lxe;var zCt=mre(),{safeRe:KCt,t:WCt}=UM(),uxe=ixe(),axe=rH(),YCt=Kh(),XCt=f2()});var cH=Gi((Tlr,ZCt)=>{"use strict";var J3n=f2(),U3n=(s,o,a)=>{try{o=new J3n(o,a)}catch{return!1}return o.test(s)};ZCt.exports=U3n});var tIt=Gi((_lr,eIt)=>{"use strict";var z3n=f2(),K3n=(s,o)=>new z3n(s,o).set.map(a=>a.map(d=>d.value).join(" ").trim().split(" "));eIt.exports=K3n});var rIt=Gi((Mlr,nIt)=>{"use strict";var W3n=Kh(),Y3n=f2(),X3n=(s,o,a)=>{let d=null,g=null,m=null;try{m=new Y3n(o,a)}catch{return null}return s.forEach(v=>{m.test(v)&&(!d||g.compare(v)===-1)&&(d=v,g=new W3n(d,a))}),d};nIt.exports=X3n});var sIt=Gi((Dlr,iIt)=>{"use strict";var V3n=Kh(),Z3n=f2(),eAn=(s,o,a)=>{let d=null,g=null,m=null;try{m=new Z3n(o,a)}catch{return null}return s.forEach(v=>{m.test(v)&&(!d||g.compare(v)===1)&&(d=v,g=new V3n(d,a))}),d};iIt.exports=eAn});var uIt=Gi((Blr,cIt)=>{"use strict";var fxe=Kh(),tAn=f2(),oIt=iH(),nAn=(s,o)=>{s=new tAn(s,o);let a=new fxe("0.0.0");if(s.test(a)||(a=new fxe("0.0.0-0"),s.test(a)))return a;a=null;for(let d=0;d<s.set.length;++d){let g=s.set[d],m=null;g.forEach(v=>{let A=new fxe(v.semver.version);switch(v.operator){case">":A.prerelease.length===0?A.patch++:A.prerelease.push(0),A.raw=A.format();case"":case">=":(!m||oIt(A,m))&&(m=A);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${v.operator}`)}}),m&&(!a||oIt(a,m))&&(a=m)}return a&&s.test(a)?a:null};cIt.exports=nAn});var lIt=Gi((Llr,aIt)=>{"use strict";var rAn=f2(),iAn=(s,o)=>{try{return new rAn(s,o).range||"*"}catch{return null}};aIt.exports=iAn});var Tre=Gi((Nlr,pIt)=>{"use strict";var sAn=Kh(),dIt=sH(),{ANY:oAn}=dIt,cAn=f2(),uAn=cH(),fIt=iH(),hIt=xre(),aAn=Cre(),lAn=Ere(),fAn=(s,o,a,d)=>{s=new sAn(s,d),o=new cAn(o,d);let g,m,v,A,I;switch(a){case">":g=fIt,m=aAn,v=hIt,A=">",I=">=";break;case"<":g=hIt,m=lAn,v=fIt,A="<",I="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(uAn(s,o,d))return!1;for(let T=0;T<o.set.length;++T){let B=o.set[T],L=null,R=null;if(B.forEach(Q=>{Q.semver===oAn&&(Q=new dIt(">=0.0.0")),L=L||Q,R=R||Q,g(Q.semver,L.semver,d)?L=Q:v(Q.semver,R.semver,d)&&(R=Q)}),L.operator===A||L.operator===I||(!R.operator||R.operator===A)&&m(s,R.semver))return!1;if(R.operator===I&&v(s,R.semver))return!1}return!0};pIt.exports=fAn});var bIt=Gi((Olr,gIt)=>{"use strict";var hAn=Tre(),dAn=(s,o,a)=>hAn(s,o,">",a);gIt.exports=dAn});var wIt=Gi((jlr,mIt)=>{"use strict";var pAn=Tre(),gAn=(s,o,a)=>pAn(s,o,"<",a);mIt.exports=gAn});var yIt=Gi((Rlr,vIt)=>{"use strict";var AIt=f2(),bAn=(s,o,a)=>(s=new AIt(s,a),o=new AIt(o,a),s.intersects(o,a));vIt.exports=bAn});var xIt=Gi((Plr,kIt)=>{"use strict";var mAn=cH(),wAn=l2();kIt.exports=(s,o,a)=>{let d=[],g=null,m=null,v=s.sort((B,L)=>wAn(B,L,a));for(let B of v)mAn(B,o,a)?(m=B,g||(g=B)):(m&&d.push([g,m]),m=null,g=null);g&&d.push([g,null]);let A=[];for(let[B,L]of d)B===L?A.push(B):!L&&B===v[0]?A.push("*"):L?B===v[0]?A.push(`<=${L}`):A.push(`${B} - ${L}`):A.push(`>=${B}`);let I=A.join(" || "),T=typeof o.raw=="string"?o.raw:String(o);return I.length<T.length?I:o}});var _It=Gi((Flr,TIt)=>{"use strict";var EIt=f2(),dxe=sH(),{ANY:hxe}=dxe,uH=cH(),pxe=l2(),AAn=(s,o,a={})=>{if(s===o)return!0;s=new EIt(s,a),o=new EIt(o,a);let d=!1;e:for(let g of s.set){for(let m of o.set){let v=yAn(g,m,a);if(d=d||v!==null,v)continue e}if(d)return!1}return!0},vAn=[new dxe(">=0.0.0-0")],CIt=[new dxe(">=0.0.0")],yAn=(s,o,a)=>{if(s===o)return!0;if(s.length===1&&s[0].semver===hxe){if(o.length===1&&o[0].semver===hxe)return!0;a.includePrerelease?s=vAn:s=CIt}if(o.length===1&&o[0].semver===hxe){if(a.includePrerelease)return!0;o=CIt}let d=new Set,g,m;for(let Q of s)Q.operator===">"||Q.operator===">="?g=IIt(g,Q,a):Q.operator==="<"||Q.operator==="<="?m=SIt(m,Q,a):d.add(Q.semver);if(d.size>1)return null;let v;if(g&&m){if(v=pxe(g.semver,m.semver,a),v>0)return null;if(v===0&&(g.operator!==">="||m.operator!=="<="))return null}for(let Q of d){if(g&&!uH(Q,String(g),a)||m&&!uH(Q,String(m),a))return null;for(let U of o)if(!uH(Q,String(U),a))return!1;return!0}let A,I,T,B,L=m&&!a.includePrerelease&&m.semver.prerelease.length?m.semver:!1,R=g&&!a.includePrerelease&&g.semver.prerelease.length?g.semver:!1;L&&L.prerelease.length===1&&m.operator==="<"&&L.prerelease[0]===0&&(L=!1);for(let Q of o){if(B=B||Q.operator===">"||Q.operator===">=",T=T||Q.operator==="<"||Q.operator==="<=",g){if(R&&Q.semver.prerelease&&Q.semver.prerelease.length&&Q.semver.major===R.major&&Q.semver.minor===R.minor&&Q.semver.patch===R.patch&&(R=!1),Q.operator===">"||Q.operator===">="){if(A=IIt(g,Q,a),A===Q&&A!==g)return!1}else if(g.operator===">="&&!uH(g.semver,String(Q),a))return!1}if(m){if(L&&Q.semver.prerelease&&Q.semver.prerelease.length&&Q.semver.major===L.major&&Q.semver.minor===L.minor&&Q.semver.patch===L.patch&&(L=!1),Q.operator==="<"||Q.operator==="<="){if(I=SIt(m,Q,a),I===Q&&I!==m)return!1}else if(m.operator==="<="&&!uH(m.semver,String(Q),a))return!1}if(!Q.operator&&(m||g)&&v!==0)return!1}return!(g&&T&&!m&&v!==0||m&&B&&!g&&v!==0||R||L)},IIt=(s,o,a)=>{if(!s)return o;let d=pxe(s.semver,o.semver,a);return d>0?s:d<0||o.operator===">"&&s.operator===">="?o:s},SIt=(s,o,a)=>{if(!s)return o;let d=pxe(s.semver,o.semver,a);return d<0?s:d>0||o.operator==="<"&&s.operator==="<="?o:s};TIt.exports=AAn});var LIt=Gi(($lr,BIt)=>{"use strict";var gxe=UM(),MIt=nH(),kAn=Kh(),DIt=Zke(),xAn=LC(),EAn=rCt(),CAn=sCt(),IAn=uCt(),SAn=fCt(),TAn=dCt(),_An=gCt(),MAn=mCt(),DAn=ACt(),BAn=l2(),LAn=xCt(),NAn=CCt(),OAn=kre(),jAn=_Ct(),RAn=DCt(),PAn=iH(),FAn=xre(),$An=nxe(),HAn=rxe(),QAn=Ere(),GAn=Cre(),qAn=ixe(),JAn=$Ct(),UAn=sH(),zAn=f2(),KAn=cH(),WAn=tIt(),YAn=rIt(),XAn=sIt(),VAn=uIt(),ZAn=lIt(),e4n=Tre(),t4n=bIt(),n4n=wIt(),r4n=yIt(),i4n=xIt(),s4n=_It();BIt.exports={parse:xAn,valid:EAn,clean:CAn,inc:IAn,diff:SAn,major:TAn,minor:_An,patch:MAn,prerelease:DAn,compare:BAn,rcompare:LAn,compareLoose:NAn,compareBuild:OAn,sort:jAn,rsort:RAn,gt:PAn,lt:FAn,eq:$An,neq:HAn,gte:QAn,lte:GAn,cmp:qAn,coerce:JAn,Comparator:UAn,Range:zAn,satisfies:KAn,toComparators:WAn,maxSatisfying:YAn,minSatisfying:XAn,minVersion:VAn,validRange:ZAn,outside:e4n,gtr:t4n,ltr:n4n,intersects:r4n,simplifyRange:i4n,subset:s4n,SemVer:kAn,re:gxe.re,src:gxe.src,tokens:gxe.t,SEMVER_SPEC_VERSION:MIt.SEMVER_SPEC_VERSION,RELEASE_TYPES:MIt.RELEASE_TYPES,compareIdentifiers:DIt.compareIdentifiers,rcompareIdentifiers:DIt.rcompareIdentifiers}});function Tvt(s){return(""+s).match(/\.([a-zA-Z_$][0-9a-zA-Z_$]*)[^\.]*$/)[1]}var kee=s=>typeof s=="string"?s:Tvt(s);var _vt=s=>s.replace(/([A-Z])/g,"-$1").toLowerCase();function Mvt(s,o){let a;return function(...d){return clearTimeout(a),new Promise(g=>{a=setTimeout(()=>g(s.apply(this,d)),o)})}}function Dvt(s,o){let a=[];for(let d=0;d<s.length&&o(s[d],d);d++)a.push(s[d]);return a}function Bvt(s,o){for(let a of o)Object.defineProperty(s,a,{value:s[a],writable:!1,configurable:!1,enumerable:!0})}var Ccn=new Set(["animate","animateMotion","animateTransform","circle","clipPath","defs","ellipse","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","filter","foreignObject","g","image","line","linearGradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialGradient","rect","set","stop","svg","symbol","text","textPath","tspan","use","view"]),Icn=new Set(["attributeName","baseFrequency","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","xChannelSelector","yChannelSelector"]),Svt=new Map([["strokeDashArray",{kebab:"stroke-dasharray",react:"strokeDasharray"}],["strokeDashOffset",{kebab:"stroke-dashoffset",react:"strokeDashoffset"}],["strokeLineCap",{kebab:"stroke-linecap",react:"strokeLinecap"}],["strokeLineJoin",{kebab:"stroke-linejoin",react:"strokeLinejoin"}],["strokeMiterLimit",{kebab:"stroke-miterlimit",react:"strokeMiterlimit"}]]),Scn=new Set(["acceptCharset","autoComplete","autoPlay","bgColor","colSpan","crossOrigin","dateTime","dirName","encType","formAction","formEncType","formMethod","formNoValidate","formTarget","hrefLang","httpEquiv","isMap","maxLength","minLength","noValidate","playsInline","readOnly","referrerPolicy","rowSpan","srcDoc","srcLang","srcSet","useMap","autoCapitalize","autoFocus","contentEditable","enterKeyHint","exportParts","inputMode","itemId","itemProp","itemRef","itemScope","itemType","popOver","spellCheck","tabIndex","virtualKeyboardPolicy","writingSuggestions"]),Lvt=s=>Ccn.has(s),Tcn=s=>Icn.has(s),Nvt=s=>Scn.has(s),Ovt=s=>/^on[A-Z]/.test(s),jvt=s=>/^(aria)[A-Z]/.test(s),_cn=s=>/^(data)[A-Z]/.test(s),Mcn=s=>!Tcn(s)&&!Nvt(s)&&!_cn(s),Rvt=(s,o)=>Nvt(s)?s.toLowerCase():o&&Svt.has(s)?Svt.get(s).kebab:o&&Mcn(s)?_vt(s):s;var Dcn=Object.defineProperty,Bcn=(s,o,a)=>o in s?Dcn(s,o,{enumerable:!0,configurable:!0,writable:!0,value:a}):s[o]=a,vs=(s,o,a)=>Bcn(s,typeof o!="symbol"?o+"":o,a);function Pvt(s){return!!s&&typeof s=="object"&&"attributes"in s&&"nodeName"in s}var Lcn=new Set(["checked","selected","disabled","readonly","multiple","required"]),Fvt=class{constructor(s){vs(this,"_transformer"),this._transformer=s}renderVNode(s){if(!Pvt(s))return s;let o=this._transformer,a=s,d=a.attributes,g={},m=Lvt(a.nodeName);for(let L in d){if(L==="key"||L==="onMounted"||L.startsWith("with"))continue;let R=d[L];if(jvt(L)){g[L.replace("aria","aria-").toLowerCase()]=R;continue}if(Lcn.has(L)){g[L]=!!R;continue}o.transformAttributeName?g[o.transformAttributeName(L,m)]=R:g[L]=R}g=o.transformAttributes?o.transformAttributes(a.nodeName,g):g;let v=d["with"+this.rendererName],A=a.children.map(L=>this.renderVNode(L)),I=v&&"hook"in v,T=v&&"component"in v;d.key!==void 0&&(g.key=d.key);let B=I?o.transformHook(v,a.nodeName,g,A):T?o.tranformComponent(v,a.nodeName,g,A):o.transformElement(a.nodeName,g,A);return d.onMounted?o.transformOnMounted(B,d.onMounted,g):B}};var dF={};V_(dF,{Component:()=>uF,Fragment:()=>hF,cloneElement:()=>iye,createContext:()=>$cn,createElement:()=>m4,createRef:()=>Ocn,h:()=>m4,hydrate:()=>i5t,isValidElement:()=>qvt,options:()=>Ju,render:()=>r5t,toChildArray:()=>Zvt});var lF,Ju,Gvt,qvt,aC,$vt,Jvt,Uvt,zvt,eye,Y6e,X6e,Kvt,aF={},Wvt=[],Ncn=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,fF=Array.isArray;function b4(s,o){for(var a in o)s[a]=o[a];return s}function tye(s){s&&s.parentNode&&s.parentNode.removeChild(s)}function m4(s,o,a){var d,g,m,v={};for(m in o)m=="key"?d=o[m]:m=="ref"?g=o[m]:v[m]=o[m];if(arguments.length>2&&(v.children=arguments.length>3?lF.call(arguments,2):a),typeof s=="function"&&s.defaultProps!=null)for(m in s.defaultProps)v[m]===void 0&&(v[m]=s.defaultProps[m]);return cF(s,v,d,g,null)}function cF(s,o,a,d,g){var m={type:s,props:o,key:a,ref:d,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:g??++Gvt,__i:-1,__u:0};return g==null&&Ju.vnode!=null&&Ju.vnode(m),m}function Ocn(){return{current:null}}function hF(s){return s.children}function uF(s,o){this.props=s,this.context=o}function Z_(s,o){if(o==null)return s.__?Z_(s.__,s.__i+1):null;for(var a;o<s.__k.length;o++)if((a=s.__k[o])!=null&&a.__e!=null)return a.__e;return typeof s.type=="function"?Z_(s):null}function Yvt(s){var o,a;if((s=s.__)!=null&&s.__c!=null){for(s.__e=s.__c.base=null,o=0;o<s.__k.length;o++)if((a=s.__k[o])!=null&&a.__e!=null){s.__e=s.__c.base=a.__e;break}return Yvt(s)}}function V6e(s){(!s.__d&&(s.__d=!0)&&aC.push(s)&&!Eee.__r++||$vt!=Ju.debounceRendering)&&(($vt=Ju.debounceRendering)||Jvt)(Eee)}function Eee(){for(var s,o,a,d,g,m,v,A=1;aC.length;)aC.length>A&&aC.sort(Uvt),s=aC.shift(),A=aC.length,s.__d&&(a=void 0,d=void 0,g=(d=(o=s).__v).__e,m=[],v=[],o.__P&&((a=b4({},d)).__v=d.__v+1,Ju.vnode&&Ju.vnode(a),nye(o.__P,a,d,o.__n,o.__P.namespaceURI,32&d.__u?[g]:null,m,g??Z_(d),!!(32&d.__u),v),a.__v=d.__v,a.__.__k[a.__i]=a,e5t(m,a,v),d.__e=d.__=null,a.__e!=g&&Yvt(a)));Eee.__r=0}function Xvt(s,o,a,d,g,m,v,A,I,T,B){var L,R,Q,U,W,ne,he,Ee=d&&d.__k||Wvt,Oe=o.length;for(I=jcn(a,o,Ee,I,Oe),L=0;L<Oe;L++)(Q=a.__k[L])!=null&&(R=Q.__i==-1?aF:Ee[Q.__i]||aF,Q.__i=L,ne=nye(s,Q,R,g,m,v,A,I,T,B),U=Q.__e,Q.ref&&R.ref!=Q.ref&&(R.ref&&rye(R.ref,null,Q),B.push(Q.ref,Q.__c||U,Q)),W==null&&U!=null&&(W=U),(he=!!(4&Q.__u))||R.__k===Q.__k?I=Vvt(Q,I,s,he):typeof Q.type=="function"&&ne!==void 0?I=ne:U&&(I=U.nextSibling),Q.__u&=-7);return a.__e=W,I}function jcn(s,o,a,d,g){var m,v,A,I,T,B=a.length,L=B,R=0;for(s.__k=new Array(g),m=0;m<g;m++)(v=o[m])!=null&&typeof v!="boolean"&&typeof v!="function"?(I=m+R,(v=s.__k[m]=typeof v=="string"||typeof v=="number"||typeof v=="bigint"||v.constructor==String?cF(null,v,null,null,null):fF(v)?cF(hF,{children:v},null,null,null):v.constructor==null&&v.__b>0?cF(v.type,v.props,v.key,v.ref?v.ref:null,v.__v):v).__=s,v.__b=s.__b+1,A=null,(T=v.__i=Rcn(v,a,I,L))!=-1&&(L--,(A=a[T])&&(A.__u|=2)),A==null||A.__v==null?(T==-1&&(g>B?R--:g<B&&R++),typeof v.type!="function"&&(v.__u|=4)):T!=I&&(T==I-1?R--:T==I+1?R++:(T>I?R--:R++,v.__u|=4))):s.__k[m]=null;if(L)for(m=0;m<B;m++)(A=a[m])!=null&&(2&A.__u)==0&&(A.__e==d&&(d=Z_(A)),n5t(A,A));return d}function Vvt(s,o,a,d){var g,m;if(typeof s.type=="function"){for(g=s.__k,m=0;g&&m<g.length;m++)g[m]&&(g[m].__=s,o=Vvt(g[m],o,a,d));return o}s.__e!=o&&(d&&(o&&s.type&&!o.parentNode&&(o=Z_(s)),a.insertBefore(s.__e,o||null)),o=s.__e);do o=o&&o.nextSibling;while(o!=null&&o.nodeType==8);return o}function Zvt(s,o){return o=o||[],s==null||typeof s=="boolean"||(fF(s)?s.some(function(a){Zvt(a,o)}):o.push(s)),o}function Rcn(s,o,a,d){var g,m,v,A=s.key,I=s.type,T=o[a],B=T!=null&&(2&T.__u)==0;if(T===null&&s.key==null||B&&A==T.key&&I==T.type)return a;if(d>(B?1:0)){for(g=a-1,m=a+1;g>=0||m<o.length;)if((T=o[v=g>=0?g--:m++])!=null&&(2&T.__u)==0&&A==T.key&&I==T.type)return v}return-1}function Hvt(s,o,a){o[0]=="-"?s.setProperty(o,a??""):s[o]=a==null?"":typeof a!="number"||Ncn.test(o)?a:a+"px"}function xee(s,o,a,d,g){var m,v;e:if(o=="style")if(typeof a=="string")s.style.cssText=a;else{if(typeof d=="string"&&(s.style.cssText=d=""),d)for(o in d)a&&o in a||Hvt(s.style,o,"");if(a)for(o in a)d&&a[o]==d[o]||Hvt(s.style,o,a[o])}else if(o[0]=="o"&&o[1]=="n")m=o!=(o=o.replace(zvt,"$1")),v=o.toLowerCase(),o=v in s||o=="onFocusOut"||o=="onFocusIn"?v.slice(2):o.slice(2),s.l||(s.l={}),s.l[o+m]=a,a?d?a.u=d.u:(a.u=eye,s.addEventListener(o,m?X6e:Y6e,m)):s.removeEventListener(o,m?X6e:Y6e,m);else{if(g=="http://www.w3.org/2000/svg")o=o.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if(o!="width"&&o!="height"&&o!="href"&&o!="list"&&o!="form"&&o!="tabIndex"&&o!="download"&&o!="rowSpan"&&o!="colSpan"&&o!="role"&&o!="popover"&&o in s)try{s[o]=a??"";break e}catch{}typeof a=="function"||(a==null||a===!1&&o[4]!="-"?s.removeAttribute(o):s.setAttribute(o,o=="popover"&&a==1?"":a))}}function Qvt(s){return function(o){if(this.l){var a=this.l[o.type+s];if(o.t==null)o.t=eye++;else if(o.t<a.u)return;return a(Ju.event?Ju.event(o):o)}}}function nye(s,o,a,d,g,m,v,A,I,T){var B,L,R,Q,U,W,ne,he,Ee,Oe,ie,Ie,He,kt,nt,Ce,Xt,tn=o.type;if(o.constructor!=null)return null;128&a.__u&&(I=!!(32&a.__u),m=[A=o.__e=a.__e]),(B=Ju.__b)&&B(o);e:if(typeof tn=="function")try{if(he=o.props,Ee="prototype"in tn&&tn.prototype.render,Oe=(B=tn.contextType)&&d[B.__c],ie=B?Oe?Oe.props.value:B.__:d,a.__c?ne=(L=o.__c=a.__c).__=L.__E:(Ee?o.__c=L=new tn(he,ie):(o.__c=L=new uF(he,ie),L.constructor=tn,L.render=Fcn),Oe&&Oe.sub(L),L.props=he,L.state||(L.state={}),L.context=ie,L.__n=d,R=L.__d=!0,L.__h=[],L._sb=[]),Ee&&L.__s==null&&(L.__s=L.state),Ee&&tn.getDerivedStateFromProps!=null&&(L.__s==L.state&&(L.__s=b4({},L.__s)),b4(L.__s,tn.getDerivedStateFromProps(he,L.__s))),Q=L.props,U=L.state,L.__v=o,R)Ee&&tn.getDerivedStateFromProps==null&&L.componentWillMount!=null&&L.componentWillMount(),Ee&&L.componentDidMount!=null&&L.__h.push(L.componentDidMount);else{if(Ee&&tn.getDerivedStateFromProps==null&&he!==Q&&L.componentWillReceiveProps!=null&&L.componentWillReceiveProps(he,ie),!L.__e&&L.shouldComponentUpdate!=null&&L.shouldComponentUpdate(he,L.__s,ie)===!1||o.__v==a.__v){for(o.__v!=a.__v&&(L.props=he,L.state=L.__s,L.__d=!1),o.__e=a.__e,o.__k=a.__k,o.__k.some(function(Sn){Sn&&(Sn.__=o)}),Ie=0;Ie<L._sb.length;Ie++)L.__h.push(L._sb[Ie]);L._sb=[],L.__h.length&&v.push(L);break e}L.componentWillUpdate!=null&&L.componentWillUpdate(he,L.__s,ie),Ee&&L.componentDidUpdate!=null&&L.__h.push(function(){L.componentDidUpdate(Q,U,W)})}if(L.context=ie,L.props=he,L.__P=s,L.__e=!1,He=Ju.__r,kt=0,Ee){for(L.state=L.__s,L.__d=!1,He&&He(o),B=L.render(L.props,L.state,L.context),nt=0;nt<L._sb.length;nt++)L.__h.push(L._sb[nt]);L._sb=[]}else do L.__d=!1,He&&He(o),B=L.render(L.props,L.state,L.context),L.state=L.__s;while(L.__d&&++kt<25);L.state=L.__s,L.getChildContext!=null&&(d=b4(b4({},d),L.getChildContext())),Ee&&!R&&L.getSnapshotBeforeUpdate!=null&&(W=L.getSnapshotBeforeUpdate(Q,U)),Ce=B,B!=null&&B.type===hF&&B.key==null&&(Ce=t5t(B.props.children)),A=Xvt(s,fF(Ce)?Ce:[Ce],o,a,d,g,m,v,A,I,T),L.base=o.__e,o.__u&=-161,L.__h.length&&v.push(L),ne&&(L.__E=L.__=null)}catch(Sn){if(o.__v=null,I||m!=null)if(Sn.then){for(o.__u|=I?160:128;A&&A.nodeType==8&&A.nextSibling;)A=A.nextSibling;m[m.indexOf(A)]=null,o.__e=A}else{for(Xt=m.length;Xt--;)tye(m[Xt]);Z6e(o)}else o.__e=a.__e,o.__k=a.__k,Sn.then||Z6e(o);Ju.__e(Sn,o,a)}else m==null&&o.__v==a.__v?(o.__k=a.__k,o.__e=a.__e):A=o.__e=Pcn(a.__e,o,a,d,g,m,v,I,T);return(B=Ju.diffed)&&B(o),128&o.__u?void 0:A}function Z6e(s){s&&s.__c&&(s.__c.__e=!0),s&&s.__k&&s.__k.forEach(Z6e)}function e5t(s,o,a){for(var d=0;d<a.length;d++)rye(a[d],a[++d],a[++d]);Ju.__c&&Ju.__c(o,s),s.some(function(g){try{s=g.__h,g.__h=[],s.some(function(m){m.call(g)})}catch(m){Ju.__e(m,g.__v)}})}function t5t(s){return typeof s!="object"||s==null||s.__b&&s.__b>0?s:fF(s)?s.map(t5t):b4({},s)}function Pcn(s,o,a,d,g,m,v,A,I){var T,B,L,R,Q,U,W,ne=a.props,he=o.props,Ee=o.type;if(Ee=="svg"?g="http://www.w3.org/2000/svg":Ee=="math"?g="http://www.w3.org/1998/Math/MathML":g||(g="http://www.w3.org/1999/xhtml"),m!=null){for(T=0;T<m.length;T++)if((Q=m[T])&&"setAttribute"in Q==!!Ee&&(Ee?Q.localName==Ee:Q.nodeType==3)){s=Q,m[T]=null;break}}if(s==null){if(Ee==null)return document.createTextNode(he);s=document.createElementNS(g,Ee,he.is&&he),A&&(Ju.__m&&Ju.__m(o,m),A=!1),m=null}if(Ee==null)ne===he||A&&s.data==he||(s.data=he);else{if(m=m&&lF.call(s.childNodes),ne=a.props||aF,!A&&m!=null)for(ne={},T=0;T<s.attributes.length;T++)ne[(Q=s.attributes[T]).name]=Q.value;for(T in ne)if(Q=ne[T],T!="children"){if(T=="dangerouslySetInnerHTML")L=Q;else if(!(T in he)){if(T=="value"&&"defaultValue"in he||T=="checked"&&"defaultChecked"in he)continue;xee(s,T,null,Q,g)}}for(T in he)Q=he[T],T=="children"?R=Q:T=="dangerouslySetInnerHTML"?B=Q:T=="value"?U=Q:T=="checked"?W=Q:A&&typeof Q!="function"||ne[T]===Q||xee(s,T,Q,ne[T],g);if(B)A||L&&(B.__html==L.__html||B.__html==s.innerHTML)||(s.innerHTML=B.__html),o.__k=[];else if(L&&(s.innerHTML=""),Xvt(o.type=="template"?s.content:s,fF(R)?R:[R],o,a,d,Ee=="foreignObject"?"http://www.w3.org/1999/xhtml":g,m,v,m?m[0]:a.__k&&Z_(a,0),A,I),m!=null)for(T=m.length;T--;)tye(m[T]);A||(T="value",Ee=="progress"&&U==null?s.removeAttribute("value"):U!=null&&(U!==s[T]||Ee=="progress"&&!U||Ee=="option"&&U!=ne[T])&&xee(s,T,U,ne[T],g),T="checked",W!=null&&W!=s[T]&&xee(s,T,W,ne[T],g))}return s}function rye(s,o,a){try{if(typeof s=="function"){var d=typeof s.__u=="function";d&&s.__u(),d&&o==null||(s.__u=s(o))}else s.current=o}catch(g){Ju.__e(g,a)}}function n5t(s,o,a){var d,g;if(Ju.unmount&&Ju.unmount(s),(d=s.ref)&&(d.current&&d.current!=s.__e||rye(d,null,o)),(d=s.__c)!=null){if(d.componentWillUnmount)try{d.componentWillUnmount()}catch(m){Ju.__e(m,o)}d.base=d.__P=null}if(d=s.__k)for(g=0;g<d.length;g++)d[g]&&n5t(d[g],o,a||typeof s.type!="function");a||tye(s.__e),s.__c=s.__=s.__e=void 0}function Fcn(s,o,a){return this.constructor(s,a)}function r5t(s,o,a){var d,g,m,v;o==document&&(o=document.documentElement),Ju.__&&Ju.__(s,o),g=(d=typeof a=="function")?null:a&&a.__k||o.__k,m=[],v=[],nye(o,s=(!d&&a||o).__k=m4(hF,null,[s]),g||aF,aF,o.namespaceURI,!d&&a?[a]:g?null:o.firstChild?lF.call(o.childNodes):null,m,!d&&a?a:g?g.__e:o.firstChild,d,v),e5t(m,s,v)}function i5t(s,o){r5t(s,o,i5t)}function iye(s,o,a){var d,g,m,v,A=b4({},s.props);for(m in s.type&&s.type.defaultProps&&(v=s.type.defaultProps),o)m=="key"?d=o[m]:m=="ref"?g=o[m]:A[m]=o[m]===void 0&&v!=null?v[m]:o[m];return arguments.length>2&&(A.children=arguments.length>3?lF.call(arguments,2):a),cF(s.type,A,d||s.key,g||s.ref,null)}function $cn(s){function o(a){var d,g;return this.getChildContext||(d=new Set,(g={})[o.__c]=this,this.getChildContext=function(){return g},this.componentWillUnmount=function(){d=null},this.shouldComponentUpdate=function(m){this.props.value!=m.value&&d.forEach(function(v){v.__e=!0,V6e(v)})},this.sub=function(m){d.add(m);var v=m.componentWillUnmount;m.componentWillUnmount=function(){d&&d.delete(m),v&&v.call(m)}}),a.children}return o.__c="__cC"+Kvt++,o.__=s,o.Provider=o.__l=(o.Consumer=function(a,d){return a.children(d)}).contextType=o,o}lF=Wvt.slice,Ju={__e:function(s,o,a,d){for(var g,m,v;o=o.__;)if((g=o.__c)&&!g.__)try{if((m=g.constructor)&&m.getDerivedStateFromError!=null&&(g.setState(m.getDerivedStateFromError(s)),v=g.__d),g.componentDidCatch!=null&&(g.componentDidCatch(s,d||{}),v=g.__d),v)return g.__E=g}catch(A){s=A}throw s}},Gvt=0,qvt=function(s){return s!=null&&s.constructor==null},uF.prototype.setState=function(s,o){var a;a=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=b4({},this.state),typeof s=="function"&&(s=s(b4({},a),this.props)),s&&b4(a,s),s!=null&&this.__v&&(o&&this._sb.push(o),V6e(this))},uF.prototype.forceUpdate=function(s){this.__v&&(this.__e=!0,s&&this.__h.push(s),V6e(this))},uF.prototype.render=hF,aC=[],Jvt=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Uvt=function(s,o){return s.__v.__b-o.__v.__b},Eee.__r=0,zvt=/(PointerCapture)$|Capture$/i,eye=0,Y6e=Qvt(!1),X6e=Qvt(!0),Kvt=0;var See={};V_(See,{useCallback:()=>Gcn,useContext:()=>qcn,useDebugValue:()=>Jcn,useEffect:()=>Hcn,useErrorBoundary:()=>Ucn,useId:()=>zcn,useImperativeHandle:()=>Qcn,useLayoutEffect:()=>Iee,useMemo:()=>uye,useReducer:()=>g5t,useRef:()=>cye,useState:()=>p5t});var Z5,Uu,sye,s5t,eM=0,d5t=[],xl=Ju,o5t=xl.__b,c5t=xl.__r,u5t=xl.diffed,a5t=xl.__c,l5t=xl.unmount,f5t=xl.__;function lC(s,o){xl.__h&&xl.__h(Uu,s,eM||o),eM=0;var a=Uu.__H||(Uu.__H={__:[],__h:[]});return s>=a.__.length&&a.__.push({}),a.__[s]}function p5t(s){return eM=1,g5t(b5t,s)}function g5t(s,o,a){var d=lC(Z5++,2);if(d.t=s,!d.__c&&(d.__=[a?a(o):b5t(void 0,o),function(A){var I=d.__N?d.__N[0]:d.__[0],T=d.t(I,A);I!==T&&(d.__N=[T,d.__[1]],d.__c.setState({}))}],d.__c=Uu,!Uu.__f)){var g=function(A,I,T){if(!d.__c.__H)return!0;var B=d.__c.__H.__.filter(function(R){return!!R.__c});if(B.every(function(R){return!R.__N}))return!m||m.call(this,A,I,T);var L=d.__c.props!==A;return B.forEach(function(R){if(R.__N){var Q=R.__[0];R.__=R.__N,R.__N=void 0,Q!==R.__[0]&&(L=!0)}}),m&&m.call(this,A,I,T)||L};Uu.__f=!0;var m=Uu.shouldComponentUpdate,v=Uu.componentWillUpdate;Uu.componentWillUpdate=function(A,I,T){if(this.__e){var B=m;m=void 0,g(A,I,T),m=B}v&&v.call(this,A,I,T)},Uu.shouldComponentUpdate=g}return d.__N||d.__}function Hcn(s,o){var a=lC(Z5++,3);!xl.__s&&aye(a.__H,o)&&(a.__=s,a.u=o,Uu.__H.__h.push(a))}function Iee(s,o){var a=lC(Z5++,4);!xl.__s&&aye(a.__H,o)&&(a.__=s,a.u=o,Uu.__h.push(a))}function cye(s){return eM=5,uye(function(){return{current:s}},[])}function Qcn(s,o,a){eM=6,Iee(function(){if(typeof s=="function"){var d=s(o());return function(){s(null),d&&typeof d=="function"&&d()}}if(s)return s.current=o(),function(){return s.current=null}},a==null?a:a.concat(s))}function uye(s,o){var a=lC(Z5++,7);return aye(a.__H,o)&&(a.__=s(),a.__H=o,a.__h=s),a.__}function Gcn(s,o){return eM=8,uye(function(){return s},o)}function qcn(s){var o=Uu.context[s.__c],a=lC(Z5++,9);return a.c=s,o?(a.__==null&&(a.__=!0,o.sub(Uu)),o.props.value):s.__}function Jcn(s,o){xl.useDebugValue&&xl.useDebugValue(o?o(s):s)}function Ucn(s){var o=lC(Z5++,10),a=p5t();return o.__=s,Uu.componentDidCatch||(Uu.componentDidCatch=function(d,g){o.__&&o.__(d,g),a[1](d)}),[a[0],function(){a[1](void 0)}]}function zcn(){var s=lC(Z5++,11);if(!s.__){for(var o=Uu.__v;o!==null&&!o.__m&&o.__!==null;)o=o.__;var a=o.__m||(o.__m=[0,0]);s.__="P"+a[0]+"-"+a[1]++}return s.__}function Kcn(){for(var s;s=d5t.shift();)if(s.__P&&s.__H)try{s.__H.__h.forEach(Cee),s.__H.__h.forEach(oye),s.__H.__h=[]}catch(o){s.__H.__h=[],xl.__e(o,s.__v)}}xl.__b=function(s){Uu=null,o5t&&o5t(s)},xl.__=function(s,o){s&&o.__k&&o.__k.__m&&(s.__m=o.__k.__m),f5t&&f5t(s,o)},xl.__r=function(s){c5t&&c5t(s),Z5=0;var o=(Uu=s.__c).__H;o&&(sye===Uu?(o.__h=[],Uu.__h=[],o.__.forEach(function(a){a.__N&&(a.__=a.__N),a.u=a.__N=void 0})):(o.__h.forEach(Cee),o.__h.forEach(oye),o.__h=[],Z5=0)),sye=Uu},xl.diffed=function(s){u5t&&u5t(s);var o=s.__c;o&&o.__H&&(o.__H.__h.length&&(d5t.push(o)!==1&&s5t===xl.requestAnimationFrame||((s5t=xl.requestAnimationFrame)||Wcn)(Kcn)),o.__H.__.forEach(function(a){a.u&&(a.__H=a.u),a.u=void 0})),sye=Uu=null},xl.__c=function(s,o){o.some(function(a){try{a.__h.forEach(Cee),a.__h=a.__h.filter(function(d){return!d.__||oye(d)})}catch(d){o.some(function(g){g.__h&&(g.__h=[])}),o=[],xl.__e(d,a.__v)}}),a5t&&a5t(s,o)},xl.unmount=function(s){l5t&&l5t(s);var o,a=s.__c;a&&a.__H&&(a.__H.__.forEach(function(d){try{Cee(d)}catch(g){o=g}}),a.__H=void 0,o&&xl.__e(o,a.__v))};var h5t=typeof requestAnimationFrame=="function";function Wcn(s){var o,a=function(){clearTimeout(d),h5t&&cancelAnimationFrame(o),setTimeout(s)},d=setTimeout(a,35);h5t&&(o=requestAnimationFrame(a))}function Cee(s){var o=Uu,a=s.__c;typeof a=="function"&&(s.__c=void 0,a()),Uu=o}function oye(s){var o=Uu;s.__c=s.__(),Uu=o}function aye(s,o){return!s||s.length!==o.length||o.some(function(a,d){return a!==s[d]})}function b5t(s,o){return typeof o=="function"?o(s):o}var Ycn=({onMounted:s,preactElement:o})=>{let a=cye(null);return Iee(()=>s(a.current),[]),iye(o,{ref:a})};function m5t(s){return!!(s&&typeof s=="object"&&"current"in s)}var Xcn=({hookConfig:s,tag:o,elementProps:a,elementChildren:d})=>{let{hook:g,options:m}=s,v=g(m??{}),A=m5t(v?.[0])?v[0]:m5t(v)?v:null,I=A?{...a,ref:A}:a;return m4(o,I,d)},Vcn=({componentConfig:s,elementProps:o,elementChildren:a})=>{let{component:d,componentProps:g={}}=s,m={...g,...o};return m4(d,m,a)},Zcn=()=>({transformElement:(s,o,a)=>m4(s,o,a),transformHook:(s,o,a,d)=>m4(Xcn,{elementProps:a,elementChildren:d,hookConfig:s,tag:o}),tranformComponent:(s,o,a,d)=>m4(Vcn,{elementProps:a,elementChildren:d,componentConfig:s}),transformAttributeName:(s,o)=>Ovt(s)?s:Rvt(s,o),transformOnMounted:(s,o,a)=>m4(Ycn,{onMounted:o,preactElement:s})}),eun=class extends Fvt{constructor(s){super(Zcn()),vs(this,"_dependencies"),vs(this,"_PreactLib"),this._dependencies={...s,mountCallback:s.mountCallback??((o,a)=>{this._PreactLib.render(o,a)})},this._PreactLib=this._dependencies.PreactLib}get rendererName(){return"Preact"}patch(s,o){let a=this.renderVNode(s);return this._dependencies.mountCallback(a,o),o}unmount(s){this._PreactLib.render(null,s)}},tun=()=>new eun({PreactLib:dF,PreactHooksLib:See}),nun=class{constructor(s){vs(this,"_host"),this._host=s}load(){lye()&&this._host.deserialize(window.localStorage.getItem(this._host.key))}save(){if(lye()){let s=this._host.serialize();window.localStorage.setItem(this._host.key,s)}}clear(){lye()&&window.localStorage.removeItem(this._host.key)}};function lye(){return window.localStorage!=null}var run=class{constructor(s){vs(this,"_host"),vs(this,"_localStorage"),this._host=s,this._localStorage=this.createStorage(),this._host.autoPersist&&this._localStorage.load()}serialize(){return this._host.root.serializer.serialize()}deserialize(s){this._host.root.serializer.deserialize(s),this._host.refresh()}load(){this._localStorage.load()}save(){this._localStorage.save()}clear(){this._localStorage.clear()}createStorage(){return new nun({key:this._host.id,serialize:()=>JSON.stringify(this.serialize()),deserialize:s=>this.deserialize(JSON.parse(s))})}},iun=/\[&\s+/,sun=/\s+(?=[^\]]*\]:)/g,w5t=/\[[^\]]+\]:\S+/g,oun=s=>s.startsWith("[& ")?s.trim().replace(iun,"[&_").replace(sun,"_"):s.trim();var cun=class{constructor(){vs(this,"_elementClasses",new Set)}addClass(s){let a=(typeof s=="string"?[s]:Array.isArray(s)?s:[]).flatMap(d=>{if(!d)return[];let g=Array.from(d.matchAll(w5t),A=>A[0]),v=d.replace(w5t," ").trim().split(/\s+/g).filter(Boolean);return[...g,...v]}).filter(Boolean);for(let d of a){let g=E5t.addClass(d,!1);this._elementClasses.add(g)}}getClassString(){return[...this._elementClasses].join(" ")}},uun=class{constructor(){vs(this,"_classes",new Set),vs(this,"_stickyClasses",new Set)}addClass(s,o){let a=oun(s);return o?this._stickyClasses.add(a):this._classes.add(a),a}async flushClasses(s){s&&(await s.generate(this._classes,this._stickyClasses),this._classes.clear(),this._stickyClasses.clear())}},E5t=new uun;var aun=class{constructor(){vs(this,"styles")}addStyle(s){lun(s)&&(this.styles??(this.styles={}),Object.assign(this.styles,s))}},lun=s=>typeof s=="object"&&s!==null&&!Array.isArray(s)&&!(s instanceof Date),hye=s=>typeof s=="object"&&s!==null&&!Array.isArray(s)&&!(s instanceof Date)&&!("nodeName"in s)&&!("view"in s),C5t=s=>s.flatMap(o=>Array.isArray(o)?C5t(o):o!=null&&!hye(o)?[o]:[]);function fun(...s){let o=new cun,a=new aun,d={};for(let m of s)if(m)for(let v in m){let A=m[v];v==="class"?o.addClass(A):v==="style"?a.addStyle(A):v==="key"?A!=null&&(d.key=A):A!=null&&(d[v]=A)}d.style=a.styles;let g=o.getClassString();return g&&(d.class=g),d}function h3(s,...o){let a=o.findIndex(v=>v!=null&&!hye(v)&&typeof v!="boolean"),d=a<0?o.length:a,g=fun(...o.slice(0,d).filter(hye)),m=C5t(o.slice(d));return{nodeName:s,attributes:g,children:m,key:g.key}}function tM(...s){return h3("a",...s)}function Y0(...s){return h3("button",...s)}function I5t(...s){return h3("details",...s)}function Vi(...s){return h3("div",...s)}function hun(...s){return h3("input",...s)}function I7(...s){return h3("pre",...s)}function zu(...s){return h3("span",...s)}function S5t(...s){return h3("summary",...s)}async function T5t(s,o,a,d){if(d())return{cancel:!0,updates:[]};let g=o.firstSegment,m=g?o.remainder:o;if(await s.component.onNavigate(o,a)===!1||d())return{cancel:!0,updates:[]};let v=[];if(g){let A=s.children.find(T=>T.routeSegment===g)?.router;if(!A)return{cancel:!0,updates:[]};for(let T of dun(A).reverse()){if(await T.component.onNavigate(o,a)===!1||d())return{cancel:!0,updates:[]};v.push({router:T,segment:g})}let I=await T5t(A,m,a,d);if(I.cancel)return{cancel:!0,updates:[]};v.push(...I.updates)}return d()?{cancel:!0,updates:[]}:(v.push({router:s,segment:g}),{cancel:!1,updates:v})}var dun=s=>Dvt(s.rootToHereRouters.reverse().slice(1),o=>o.isTransparent),w4=class C7{constructor(o,a=""){if(vs(this,"segments"),vs(this,"query"),Array.isArray(o)){this.segments=o.filter(Boolean),this.query=a;return}let[d,g]=o.split("?"),m=d.replace(/^\/+/g,"").replace(/\/+$/g,"");this.segments=m?m.split("/"):[],this.query=a||g||""}get pathOnly(){return new C7(this.segments)}get firstSegment(){return this.segments[0]}get remainder(){return new C7(this.segments.slice(1),this.query)}withQuery(o){let a=o.replace(/^\?/,"");return new C7(this.segments,a)}concat(o){let a=o instanceof C7?o:new C7(o);return new C7([...this.segments,...a.segments],a.query||this.query)}toString(){return"/"+this.segments.join("/")+(this.query?`?${this.query}`:"")}equals(o){return this.query!==o.query||this.segments.length!==o.segments.length?!1:this.segments.every((a,d)=>a===o.segments[d])}relativeTo(o){return o.segments.length===0?this:o.segments.every((d,g)=>this.segments[g]===d)?new C7(this.segments.slice(o.segments.length),this.query):this}},pun=class{constructor(s){vs(this,"_component"),vs(this,"_activeSegment",""),vs(this,"_navigationVersion",0),vs(this,"_inFlight"),vs(this,"routeService"),this._component=s}navigate(s,o="PUSH"){let a=s instanceof w4?s:new w4(s),d=this.root,g=d.activeLeaf.rootToHereRouters,m=a.pathOnly,v=a.query,I=this.rootToHereRoute.concat(m).withQuery(v),T=this.getInFlight(I);if(T)return T;let B=this.bumpNavigationVersion();if(this.shouldShortCircuit(I,o))return Promise.resolve(!0);let L=(async()=>{let R=await T5t(this.root,I,o,B);if(R.cancel)return!1;for(let{router:Q,segment:U}of R.updates)Q._activeSegment=U;return this.root.routeService.currentRoute=I,this.root.routeService?.syncHistory(o),this.clearActiveSegments(g),this.fireRouterUpdateEvent(),this.fireNavigated(),!0})();return d._inFlight={route:I,promise:L},L.finally(()=>{d._inFlight?.promise===L&&(d._inFlight=void 0)}),L}get component(){return this._component}fireRouterUpdateEvent(){let s=this.root.routeService?.currentRoute;s&&this.component.update({cause:"router",key:"route",value:s.toString()})}bumpNavigationVersion(){this.root._navigationVersion++;let s=this.root._navigationVersion;return()=>s!==this.root._navigationVersion}getInFlight(s){return this.root._inFlight?.route.equals(s)?this.root._inFlight.promise:void 0}shouldShortCircuit(s,o){let a=this.root.routeService?.currentRoute;return o!=="POP"&&a?s.equals(a):!1}fireNavigated(){this.root.activeLeaf.rootToHereRouters.forEach(s=>s.component.onNavigated())}clearActiveSegments(s){let o=this.root.activeLeaf.rootToHereRouters;s.filter(a=>!o.includes(a)).forEach(a=>a._activeSegment="")}get activeSegment(){return this._activeSegment}get activeLeaf(){if(this.isActive)return this.activeChild?.router.activeLeaf??this}get isActive(){return this.parent?this.parent.activeChild?.router===this:!0}get parent(){let s=this.component.ctx.parent;for(;s&&!dye(s);)s=s.ctx.parent;return s?s.router:void 0}get rootToHereRouters(){let s=[];for(let o=this;o;o=o.parent)s.unshift(o);return s}get rootToHereRoute(){let s=this.rootToHereRouters.filter(o=>!o.isTransparent).map(o=>o.component.routeSegment);return new w4(s)}get root(){return this.parent?this.parent.root:this}get children(){return this.component.ctx.children.flatMap(s=>dye(s)?s.router.isTransparent?s.router.children:[s]:[])}child(s){return this.children.find(o=>o.routeSegment===s)}get activeChild(){return this.child(this.activeSegment)}get isTransparent(){return this.component.routeSegment===""}link(s,...o){let a=s instanceof w4?s:new w4(s),d=this.root.routeService?.basePath.concat(this.rootToHereRoute).concat(a).toString();return tM({href:d,onClick:g=>{g.preventDefault(),this.navigate(a)}},...o)}};function dye(s){return typeof s=="object"&&s!==null&&"router"in s&&s.router instanceof pun}var Tee={push(s){window.history.pushState({},"",s.toString()),window.dispatchEvent(new PopStateEvent("popstate",{state:{}}))},replace(s){window.history.replaceState({},"",s.toString()),window.dispatchEvent(new PopStateEvent("popstate",{state:{}}))},back(){window.history.back()},listen(s){window.addEventListener("popstate",()=>{s(new w4(window.location.pathname+window.location.search),"POP")})},get location(){return new w4(window.location.pathname+window.location.search)}},gun=class{constructor(s){this.service=s,vs(this,"_registered",!1)}ensureListener(){this.service.root.parent||this._registered||(this._registered=!0,Tee.listen((s,o)=>{o==="POP"&&this.service.navigateAbsolute(s,"POP")}))}sync(s){if(s==="POP")return;let o=this.service.basePath.concat(this.service.currentRoute);o.equals(Tee.location)?Tee.replace(o):Tee.push(o)}},bun=class{constructor(s={}){vs(this,"_basePath"),vs(this,"_history"),vs(this,"_root"),vs(this,"currentRoute",new w4("")),this._basePath=new w4(s.basePath??"")}get basePath(){return this._basePath}get root(){return this._root}syncHistory(s){this._history?.sync(s)}init(s){let o=s.root;if(!dye(o))return;o.router.routeService=this,this._root=o.router,this._history=new gun(this),this._history.ensureListener();let a=window.location;this.navigateAbsolute(new w4(a.pathname+a.search),"POP")}navigateAbsolute(s,o){let a=s.relativeTo(this._basePath);return this.root.navigate(a,o)}},mun=class{constructor(s,o=[]){this.app=s,vs(this,"_pluginData",[]),vs(this,"_rendered",!1);for(let a of o){let d=a.create?.(s);this._pluginData.push({plugin:a,instance:d})}}onRendered(){if(!this._rendered){this._rendered=!0;for(let{plugin:s,instance:o}of this._pluginData)s.onRendered?.(o)}}onUpdated(s){for(let{plugin:o,instance:a}of this._pluginData)o.onUpdated?.(a,s)}},_5t=class{constructor(s){vs(this,"_lock",!1),vs(this,"_pending",!1),vs(this,"serializer"),vs(this,"renderer"),vs(this,"routeService"),vs(this,"_root"),vs(this,"_props"),vs(this,"_rootElement",null),vs(this,"_id"),vs(this,"_saveDebounce"),vs(this,"_plugins"),this._id=s.id,this._root=s.root,this._props=s,this.renderer=s.renderer??tun(),this._rootElement=document.getElementById(s.id),this._saveDebounce=Mvt(()=>this.save(),200),this.serializer=new run({id:s.id,root:this._root,refresh:()=>this.render(),autoPersist:s.autoPersist??!1}),this.routeService=s.routeService??new bun,this.routeService.init(this),this._root.ctx.attach(this),this._plugins=new mun(this,s.plugins??[]),this.render()}get containerId(){return this._id}get root(){return this._root}render(){if(this._lock){this._pending=!0;return}this._lock=!0,this._pending=!1,requestAnimationFrame(async()=>{try{let s=this._root.view();await E5t.flushClasses(this._props.cssAdapter),this.renderer.patch(s,this._rootElement),this.root.ctx.markRendered(),this._plugins.onRendered()}finally{this._lock=!1,this._pending&&(this._pending=!1,this.render())}})}update(s){!this.serializer||!this._plugins||(this._plugins.onUpdated(s),this._saveDebounce(),this.render())}save(){this._props.autoPersist&&this.serializer.save()}},A5t=["ctx","serializer","serializerMap","validator","router"],v5t=(s,o)=>{try{return typeof s[o]=="function"}catch{return!0}},wun=(s,o)=>{for(let a=s;a;a=Object.getPrototypeOf(a)){let d=Object.getOwnPropertyDescriptor(a,o);if(d)return!!d.set||!!d.writable}return!0},y5t=s=>{let o=new Set;for(let a of Object.keys(s))!A5t.includes(a)&&wun(s,a)&&!a.startsWith("_")&&!v5t(s,a)&&o.add(a);for(let a=Object.getPrototypeOf(s);a&&a!==Object.prototype;a=Object.getPrototypeOf(a))for(let d of Object.getOwnPropertyNames(a)){if(o.has(d)||A5t.includes(d))continue;let g=Object.getOwnPropertyDescriptor(a,d);g.get&&g.set&&!v5t(s,d)&&o.add(d)}return[...o]},M5t=class D5t{constructor(o){vs(this,"_app"),vs(this,"_parent"),vs(this,"_state","detached"),vs(this,"_component"),vs(this,"_componentId"),this._component=o,this._componentId=D5t._globalComponentId++}get component(){return this._component}get state(){return this._state}get componentId(){return this._componentId}get parent(){return this._parent}get app(){return this._app}attach(o){this.attachInternal(o,this.parent)}attachInternal(o,a,d=!1){this.attachTraverse(o,a),d&&this.traversePostOrder(g=>g.onDeserialized()),o&&this.traversePreOrder(g=>{g.ctx.state==="detached"&&(g.ctx._state="updating",g.onAttached())})}attachTraverse(o,a){this._app=o,this._parent=a;for(let d of this.children)d.ctx.attachTraverse(o,this.component)}update(o){this.attachInternal(this.app,this.parent,o?.cause==="serializer"),this.state==="rendered"&&(this._state="updating");let a={...o,component:this.component};for(let d of this.rootToHere.reverse())d.onUpdated(a);this._app?.update(a)}traversePreOrder(o,a=new Set){this.throwOnDupe(a),o(this.component);for(let d of this.children)d.ctx.traversePreOrder(o,a)}traversePostOrder(o,a=new Set){this.throwOnDupe(a);for(let d of this.children)d.ctx.traversePostOrder(o,a);o(this.component)}markRendered(){this.traversePreOrder(o=>{o.ctx._state="rendered",o.onRendered()})}get root(){let o=this.component;for(;o?.ctx?.parent;)o=o.ctx.parent;return o}get rootToHere(){let o=[],a=this.component;for(;a;)o.unshift(a),a=a.ctx.parent;return o}get children(){return y5t(this.component).flatMap(o=>{let a=this.component[o];return a instanceof El?[a]:Array.isArray(a)?a.filter(d=>d instanceof El):[]})}get keys(){return y5t(this.component)}throwOnDupe(o){if(o.has(this.component)){let a=this.rootToHere.map(d=>`${d.constructor.name}-${d.ctx.componentId}`).join(" -> ");throw new Error(`Component graph invariant violated: duplicate reference or cycle at Path: ${a}
|
|
28
|
-
Hint: use a get-only property or a private field (_ or #) for back references.`)}o.add(this.component)}childrenKeys(){return this.keys.filter(o=>this.component[o]instanceof El)}childByKey(o){if(!this.keys.includes(o))return;let a=this.component[o];return a instanceof El?a:void 0}childKey(o){return this.keys.find(a=>this.component[a]===o)}qualify(o){return`${kee(o)}-${this._componentId}`}};vs(M5t,"_globalComponentId",1);var Aun=M5t,vun=new Map([[Date,{toJSON:s=>s instanceof Date?s.toISOString():s,fromJSON:s=>{if(s==null)return s;let o=s instanceof Date?s:new Date(s);return isNaN(o.getTime())?void 0:o}}]]),fye=s=>vun.get(s),yun=class{constructor(s){this.component=s,vs(this,"fromJSON",(o,a)=>{if(!o)return a;let d=fye(o);if(d?.fromJSON)return d.fromJSON(a);let g=new o;return g instanceof El&&g.serializer.deserializeInternal(a),g})}get keys(){let s=this.component.serializerMap;return this.component.ctx.keys.filter(o=>s[o]!==null)}serialize(){let s={},o=this.component.serializerMap;for(let a of this.keys){let d=this.component[a];if(d instanceof El)s[a]=d.serializer.serialize();else if(Array.isArray(d))s[a]=d.map(g=>{if(g instanceof El)return g.serializer.serialize();let m=g?.constructor?fye(g.constructor):void 0;return m?.toJSON?m.toJSON(g):x5t(g)});else if(k5t(d)||_ee(d))s[a]=d;else if(a in o){let g=fye(o[a]);s[a]=g?.toJSON?g.toJSON(d):x5t(d)}}return s}deserialize(s){this.deserializeInternal(s),this.component.update({cause:"serializer"})}deserializeInternal(s){if(!s)return;let o=this.component.serializerMap,a=new Set([...this.component.ctx.keys,...Object.keys(o)]),d=this.component;for(let[g,m]of Object.entries(s)){if(o[g]===null||!a.has(g))continue;let v=o[g],A=d[g];if(v){if(Array.isArray(v)&&Array.isArray(m)){let I=v[0];d[g]=m.map((T,B)=>{let L=A?.[B];return L instanceof El?(L.serializer.deserializeInternal(T),L):this.fromJSON(I,T)});continue}if(!Array.isArray(v)&&!Array.isArray(m)){A instanceof El?(A.serializer.deserializeInternal(m),d[g]=A):d[g]=this.fromJSON(v,m);continue}d[g]=m;continue}if(A instanceof El){A.serializer.deserializeInternal(m);continue}if(Array.isArray(A)&&Array.isArray(m)){if(!v){d[g]=m;continue}let I=Math.min(A.length,m.length);for(let T=0;T<I;T++){let B=A[T],L=m[T];B instanceof El?B.serializer.deserializeInternal(L):_ee(B)&&_ee(L)?Object.assign(B,L):A[T]=L}continue}(k5t(m)||_ee(m)||Array.isArray(m))&&(d[g]=m)}}},k5t=s=>s==null||typeof s!="object"&&typeof s!="function",_ee=s=>{let o=s&&typeof s=="object"?Object.getPrototypeOf(s):null;return o===Object.prototype||o===null},x5t=s=>JSON.parse(JSON.stringify(s)),El=class{constructor(){vs(this,"ctx",new Aun(this)),vs(this,"serializer",new yun(this)),vs(this,"serializerMap",{}),Bvt(this,["ctx","serializer"])}view(...s){return Vi(this.constructor.name)}update(s){this.ctx.update(s)}onAttached(){}onUpdated(s){}onRendered(){}async onValidate(){return[]}async onNavigate(s,o){}onNavigated(){}onDeserialized(){}},B5t=(s,o)=>s[kee(o)],kun=(s,o,a)=>{let d=kee(o);a!=B5t(s,o)&&(s[d]=a,s.update({cause:"input",key:d,value:a}))};function xun(s,o){return{value:String(B5t(s,o)??""),onInput:a=>kun(s,o,a.target.value)}}function L5t(s){let{id:o,target:a,prop:d,attrs:g}=s;return hun({type:"text",id:o,...g,...xun(a,d)})}function N5t(...s){return h3("path",...s)}function O5t(...s){return h3("rect",...s)}function j5t(...s){return h3("svg",...s)}function Mee(s){return Vi({class:"bulb-filter-control"},L5t({target:s.target,prop:s.prop,id:s.id,attrs:{class:"bulb-filter",placeholder:s.placeholder,ariaLabel:s.placeholder,onKeyDown:s.onKeyDown}}),s.hasValue?Y0({class:"bulb-filter-clear",type:"button",title:"Clear filter",ariaLabel:"Clear filter",onClick:o=>{o.stopPropagation(),s.onClear()}},"\xD7"):null)}function R5t(s,o){let a=!0,d=g=>{g.target?.closest(s)||o()};return setTimeout(()=>{a&&document.addEventListener("click",d)},0),()=>{a=!1,document.removeEventListener("click",d)}}var pye=class extends El{open=!1;#e;get parent(){return this.ctx.parent}beginOpen(){this.parent.closePopups(this),this.open=!0}armClose(){this.#e?.(),this.#e=R5t(this.keepOpenSelector,()=>this.close())}close(){this.#e?.(),this.#e=void 0,this.open&&(this.open=!1,this.onClosed(),this.update())}onClosed(){}},nM=class extends pye{filter="";highlighted=0;onClosed(){this.filter="",this.highlighted=0}focusFilter(){setTimeout(()=>document.getElementById(this.filterId)?.focus())}clearFilter(){this.filter="",this.highlighted=0,this.update(),this.focusFilter()}moveHighlight(o){let a=this.itemCount();a&&(this.highlighted=Math.max(0,Math.min(this.highlighted+o,a-1)),this.update(),setTimeout(()=>this.listEl()?.children[this.highlighted]?.scrollIntoView({block:"nearest"})))}activateHighlighted(){let o=this.itemCount();o&&this.onActivate(Math.max(0,Math.min(this.highlighted,o-1)))}onFilterKey(o){o.key==="Escape"?this.close():o.key==="ArrowDown"?(o.preventDefault(),this.moveHighlight(1)):o.key==="ArrowUp"?(o.preventDefault(),this.moveHighlight(-1)):o.key==="Enter"?(o.preventDefault(),this.activateHighlighted()):this.highlighted=0}};var Gd=s=>typeof s=="string"?s:void 0;var gye=s=>`turn-${s%5}`;function Dee(s){let o=Math.max(0,Date.now()-s);return o<6e4?"now":o<36e5?`${Math.floor(o/6e4)}m`:o<864e5?`${Math.floor(o/36e5)}h`:o<7*864e5?`${Math.floor(o/864e5)}d`:new Date(s).toLocaleDateString()}function P5t(s){return s<1e3?`${s}`:s<1e4?`${(s/1e3).toFixed(1)}k`:s<1e6?`${Math.round(s/1e3)}k`:`${(s/1e6).toFixed(1)}M`}function Bee(s,o){return s.length>o?s.slice(0,o).trimEnd()+"\u2026":s}function e6(s){return s.replace(/\\/g,"/").toLowerCase()}function bye(s){return s.replace(/[/\\]+$/,"").split(/[/\\]/).pop()??""}function Lee(s){return bye(s).replace(/\.bulb\.md$/,"")}var Nee=class extends nM{sessions=[];keepOpenSelector=".sid-wrap";filterId="session-filter";itemCount(){return this.filtered().length}listEl(){return document.getElementById("session-list")}onActivate(o){let a=this.filtered()[o];a&&this.pick(a.sessionId)}filtered(){let o=this.filter.trim().toLowerCase();return o?this.sessions.filter(a=>a.preview.toLowerCase().includes(o)):this.sessions}currentIndex(){let a=this.filtered().findIndex(d=>d.sessionId===this.parent.sessionId);return a<0?0:a}onAttached(){tb.server.listSessions().then(o=>{this.sessions=o,this.parent.updateTitle(),this.update()}).catch(()=>{})}currentPreview(){return this.sessions.find(o=>o.sessionId===this.parent.sessionId)?.preview?.trim()??""}async show(){this.beginOpen(),this.highlighted=this.currentIndex(),this.update(),this.focusFilter();try{this.sessions=await tb.server.listSessions(),this.highlighted=this.currentIndex(),this.parent.updateTitle(),this.update()}catch(o){console.error("[
|
|
29
|
-
Session: ${o.sessionId}`;return Vi({class:"sid-wrap"},Y0({class:"pill",title:g,onClick:m=>{m.stopPropagation(),this.open?this.close():this.show()}},d),this.open?this.picker():null)}picker(){let o=this.filtered();return Vi({class:"picker"},Mee({target:this,prop:()=>this.filter,id:"session-filter",placeholder:"Filter sessions\u2026",hasValue:!!this.filter,onKeyDown:a=>this.onFilterKey(a),onClear:()=>this.clearFilter()}),o.length===0?Vi({class:"picker-empty"},this.filter?"No match.":"No sessions yet \u2014 start one in your terminal."):Vi({id:"session-list",class:"picker-list"},o.map((a,d)=>this.pickerRow(a,d))))}pickerRow(o,a){let d=o.sessionId===this.parent.sessionId;return Vi({class:["picker-row",a===this.highlighted?"active":"",d?"current":""],onMouseEnter:()=>{this.highlighted!==a&&(this.highlighted=a,this.update())},onClick:()=>this.pick(o.sessionId)},zu({class:"picker-dot"}),zu({class:"picker-preview"},o.preview||"(no preview)"),zu({class:"picker-time"},Dee(o.mtime)))}};var Oee=class extends El{get parent(){return this.ctx.parent}view(){let o=this.parent.tokens,a=o.in+o.out+o.cached+o.cacheCreate;return a<=0?zu({class:"token-wrap"}):zu({class:"token-wrap"},zu({class:"token"},`${P5t(a)} tokens`))}};var F5t=(...s)=>j5t({viewBox:"0 0 16 16",width:"13",height:"13",class:"btn-icon"},...s),Eun=()=>F5t(N5t({d:"M5.5 2 L15.5 8 L5.5 14 Z",fill:"currentColor"})),Cun=()=>F5t(O5t({x:3,y:3,width:10,height:10,fill:"currentColor"})),jee=class extends nM{files=[];servers=[];keepOpenSelector=".servers-wrap";filterId="bulb-filter";launching=new Set;dismissedDenials=new Set;pendingLaunch;openLog;#e;itemCount(){return this.rows().length}listEl(){return document.querySelector(".bulb-list")}onActivate(o){let a=this.rows()[o];a&&(a.running?window.open(a.running.url,"_blank","noopener"):this.launch(a.path))}onAttached(){this.refresh(),setInterval(()=>this.refreshServers(),800),setInterval(()=>this.refreshFiles(),3e3),window.addEventListener("tb-breakout",()=>this.refreshServers())}refresh(){return Promise.all([this.refreshServers(),this.refreshFiles()])}async refreshServers(){try{let o=await tb.server.listBreakouts(),a=o.length!==this.servers.length||o.some((d,g)=>d.pid!==this.servers[g]?.pid||d.denied!==this.servers[g]?.denied||d.predicted!==this.servers[g]?.predicted||d.trust!==this.servers[g]?.trust);this.servers=o,a&&this.update()}catch(o){console.error("[claude-bulb] server list refresh failed",o)}}async refreshFiles(){try{let o=await tb.server.listBulbFiles(),a=o.length!==this.files.length||o.some((d,g)=>d.path!==this.files[g]?.path||d.mtime!==this.files[g]?.mtime);this.files=o,a&&this.update()}catch(o){console.error("[claude-bulb] bulb list refresh failed",o)}}rows(){let o=new Map;for(let g of this.files)o.set(e6(g.path),{path:g.path,name:g.name,recent:g.mtime,trusted:g.trusted});for(let g of this.servers){if(g.pid===this.parent.ownPid)continue;let m=e6(g.file),v=Lee(g.file)||g.file,A=o.get(m)??{path:g.file,name:v,recent:0};A.running=g,A.recent=Math.max(A.recent,g.startedAt),o.set(m,A)}let a=this.filter.trim().toLowerCase(),d=[...o.values()];return a&&(d=d.filter(g=>g.name.toLowerCase().includes(a)||g.path.toLowerCase().includes(a))),d.sort((g,m)=>m.recent-g.recent)}show(){this.beginOpen(),this.highlighted=0,this.refresh(),this.update(),this.armClose(),this.focusFilter()}onClosed(){super.onClosed(),this.closeLog()}async launch(o){if(!this.files.find(d=>e6(d.path)===e6(o))?.trusted){let d;try{d=(await tb.server.predictTrustOf(o)).cap}catch(g){console.error("[claude-bulb] predictTrustOf failed",g)}if(d){this.pendingLaunch={path:o,name:this.displayName(o),cap:d},this.update();return}}await this.doLaunch(o)}async doLaunch(o,a,d=!1){let g=e6(o);this.launching.add(g),this.update();let m;try{m=(await tb.server.launchBulb(o,a)).pid}catch(v){console.error("[claude-bulb] launchBulb failed",v)}finally{this.launching.delete(g)}d&&m&&this.dismissedDenials.add(m),await this.refresh()}displayName(o){return this.files.find(d=>e6(d.path)===e6(o))?.name||Lee(o)||o}launchTrusted(){let o=this.pendingLaunch;this.pendingLaunch=void 0,o&&this.doLaunch(o.path,!0)}launchRestricted(){let o=this.pendingLaunch;this.pendingLaunch=void 0,o&&this.doLaunch(o.path,void 0,!0)}cancelLaunch(){this.pendingLaunch=void 0,this.update()}async stop(o){this.openLog?.pid===o&&this.closeLog(),this.dismissedDenials.delete(o);try{await tb.server.stopBreakout(o)}catch(a){console.error("[claude-bulb] stopBreakout failed",a)}await this.refresh()}pendingDenial(){return this.servers.find(o=>o.denied&&o.pid!==this.parent.ownPid&&!this.dismissedDenials.has(o.pid))}async elevate(o){this.dismissedDenials.add(o.pid),this.openLog?.pid===o.pid&&this.closeLog();try{await tb.server.stopBreakout(o.pid),await tb.server.launchBulb(o.file,!0)}catch(a){console.error("[claude-bulb] elevate failed",a)}await this.refresh()}dismissDenial(o){this.dismissedDenials.add(o),this.update()}async toggleTrust(o){let a=!(o.running?o.running.trust:o.trusted);try{await tb.server.setBulbTrust(o.path,a),o.running&&(this.openLog?.pid===o.running.pid&&this.closeLog(),await tb.server.stopBreakout(o.running.pid),await tb.server.launchBulb(o.path,a))}catch(d){console.error("[claude-bulb] toggleTrust failed",d)}await this.refresh()}showLog(o,a){if(this.openLog?.pid===o.pid){this.closeLog();return}this.closeLog(),this.openLog={pid:o.pid,name:a,text:"",offset:0},this.update(),setTimeout(()=>document.getElementById("bulb-console")?.focus()),this.#t(),this.#e=setInterval(()=>this.#t(),700)}closeLog(){this.#e&&(clearInterval(this.#e),this.#e=void 0),this.openLog&&(this.openLog=void 0,this.update())}async#t(){let o=this.openLog;if(o)try{let{text:a,offset:d}=await tb.server.readBulbLog(o.pid,o.offset);if(this.openLog!==o)return;a?(o.text=(o.text+a).slice(-5e4),o.offset=d,this.update()):d!==o.offset&&(o.offset=d)}catch(a){console.error("[claude-bulb] readBulbLog failed",a)}}view(){let o=this.servers.filter(m=>m.pid!==this.parent.ownPid).length;if(!(this.files.length>0)&&o===0)return Vi({class:"servers-wrap"});let d=o>0?`${o} running`:"bulbs",g=this.pendingDenial();return Vi({class:"servers-wrap"},Y0({class:"pill",title:"Launch a project bulb \xB7 stop a running one",onClick:m=>{m.stopPropagation(),this.open?this.close():this.show()}},d),this.open?this.popup():null,this.pendingLaunch?this.launchModal(this.pendingLaunch):g?this.denialModal(g):null)}trustModal(o){return Vi({class:"trust-back",onClick:a=>{a.stopPropagation(),o.onDismiss()}},Vi({class:"trust-modal",onClick:a=>a.stopPropagation()},Vi({class:"trust-modal-h"},o.heading),Vi({class:"trust-modal-b"},o.body),Vi({class:"trust-modal-warn"},o.warn),Vi({class:"trust-modal-acts"},Y0({class:"trust-no",onClick:a=>{a.stopPropagation(),o.onNo()}},o.noLabel),Y0({class:"trust-yes",onClick:a=>{a.stopPropagation(),o.onYes()}},o.yesLabel))))}launchModal(o){return this.trustModal({heading:`\u201C${o.name}\u201D will likely need access`,body:`It looks like it uses ${o.cap}, which is blocked unless you launch it Trusted. Launch Trusted to allow filesystem / AI / server.ts?`,warn:"Only trust bulbs you wrote or have read \u2014 be careful with anything off the internet.",noLabel:"Launch restricted",yesLabel:"Launch trusted",onNo:()=>this.launchRestricted(),onYes:()=>this.launchTrusted(),onDismiss:()=>this.cancelLaunch()})}denialModal(o){let a=Lee(o.file)||o.file,d=!o.predicted;return this.trustModal({heading:d?`\u201C${a}\u201D reached for access it didn't declare`:`\u201C${a}\u201D wants more access`,body:d?`It tried to use ${o.denied} at runtime, though nothing in its code obviously needed it. Relaunch it Trusted to allow filesystem / AI / server.ts?`:`It tried to use ${o.denied}, blocked while it's restricted. Relaunch it Trusted to allow filesystem / AI / server.ts?`,warn:d?"Code that reaches for capabilities it never visibly uses can be hiding something \u2014 only continue if you wrote this bulb or have read it.":"Only trust bulbs you wrote or have read \u2014 be careful with anything off the internet.",noLabel:"Keep restricted",yesLabel:"Trust & relaunch",onNo:()=>this.dismissDenial(o.pid),onYes:()=>this.elevate(o),onDismiss:()=>this.dismissDenial(o.pid)})}popup(){if(this.openLog)return this.consoleView(this.openLog);let o=this.rows();return Vi({class:"servers-pop"},Mee({target:this,prop:()=>this.filter,id:"bulb-filter",placeholder:"Filter bulbs\u2026",hasValue:!!this.filter,onKeyDown:a=>this.onFilterKey(a),onClear:()=>this.clearFilter()}),o.length===0?Vi({class:"picker-empty"},this.filter?"No match.":"No bulbs in this project yet."):Vi({class:"bulb-list"},o.map((a,d)=>this.row(a,d))))}consoleView(o){return Vi({id:"bulb-console",class:"servers-pop log-mode",tabIndex:0,onKeyDown:a=>{a.key==="Escape"&&(a.stopPropagation(),this.closeLog())}},Vi({class:"bulb-log-head"},zu({class:"bulb-log-name"},`console \xB7 ${o.name}`),Y0({class:"bulb-log-back",title:"Back to the bulb list",onClick:a=>{a.stopPropagation(),this.closeLog()}},"\u2190 bulbs")),I7({class:"bulb-log-body"},zu({class:"bulb-log-text"},o.text||"(no output yet)")))}row(o,a){let d=o.running,g=d&&this.openLog?.pid===d.pid,m=d?!!d.trust:!!o.trusted;return Vi({class:["server-row",a===this.highlighted?"active":""],onMouseEnter:()=>{this.highlighted!==a&&(this.highlighted=a,this.update())}},d?Y0({class:"server-stop",title:"Stop this server",ariaLabel:"Stop",onClick:v=>{v.stopPropagation(),this.stop(d.pid)}},Cun()):Y0({class:["bulb-launch",this.launching.has(e6(o.path))?"launching":""],title:m?"Launch (trusted \u2014 remembered)":"Launch (restricted)",ariaLabel:"Launch",onClick:v=>{v.stopPropagation(),this.launch(o.path)}},Eun()),zu({class:["server-name",d?"":"stopped"],title:`Open ${o.path}`,onClick:v=>{v.stopPropagation(),tb.server.openFile(o.path)}},o.name),d||m?this.trustToggle(o,m):zu({class:"cell-empty"}),d?tM({class:["server-logs",g?"on":""],title:"Show this server\u2019s console",onClick:v=>{v.stopPropagation(),this.showLog(d,o.name)}},"logs"):zu({class:"cell-empty"}),d?tM({class:"server-port",href:d.url,target:"_blank",rel:"noopener noreferrer",title:`Open ${d.url}`},`:${d.port}`):zu({class:"bulb-time"},Dee(o.recent)))}trustToggle(o,a){return Y0({class:["trust-toggle",a?"on":""],title:`${a?"Trusted":"Restricted"} \u2014 click to switch to ${a?"restricted":"trusted"}`+(o.running?" (stops + relaunches it)":""),onClick:d=>{d.stopPropagation(),this.toggleTrust(o)}},a?"trusted":"restricted")}};var Cye={};V_(Cye,{arrayReplaceAt:()=>Eye,asciiTrim:()=>gC,assign:()=>oM,escapeHtml:()=>n6,escapeRE:()=>can,fromCodePoint:()=>cM,has:()=>Yun,isMdAsciiPunct:()=>dC,isPunctChar:()=>o6t,isPunctCharCode:()=>hC,isSpace:()=>jo,isString:()=>Kee,isValidEntityCode:()=>Wee,isWhiteSpace:()=>fC,lib:()=>uan,normalizeReference:()=>pC,unescapeAll:()=>t6,unescapeMd:()=>tan});var Hee={};V_(Hee,{decode:()=>pF,encode:()=>Fee,format:()=>rM,parse:()=>gF});var $5t={};function Iun(s){let o=$5t[s];if(o)return o;o=$5t[s]=[];for(let a=0;a<128;a++){let d=String.fromCharCode(a);o.push(d)}for(let a=0;a<s.length;a++){let d=s.charCodeAt(a);o[d]="%"+("0"+d.toString(16).toUpperCase()).slice(-2)}return o}function Ree(s,o){typeof o!="string"&&(o=Ree.defaultChars);let a=Iun(o);return s.replace(/(%[a-f0-9]{2})+/gi,function(d){let g="";for(let m=0,v=d.length;m<v;m+=3){let A=parseInt(d.slice(m+1,m+3),16);if(A<128){g+=a[A];continue}if((A&224)===192&&m+3<v){let I=parseInt(d.slice(m+4,m+6),16);if((I&192)===128){let T=A<<6&1984|I&63;T<128?g+="\uFFFD\uFFFD":g+=String.fromCharCode(T),m+=3;continue}}if((A&240)===224&&m+6<v){let I=parseInt(d.slice(m+4,m+6),16),T=parseInt(d.slice(m+7,m+9),16);if((I&192)===128&&(T&192)===128){let B=A<<12&61440|I<<6&4032|T&63;B<2048||B>=55296&&B<=57343?g+="\uFFFD\uFFFD\uFFFD":g+=String.fromCharCode(B),m+=6;continue}}if((A&248)===240&&m+9<v){let I=parseInt(d.slice(m+4,m+6),16),T=parseInt(d.slice(m+7,m+9),16),B=parseInt(d.slice(m+10,m+12),16);if((I&192)===128&&(T&192)===128&&(B&192)===128){let L=A<<18&1835008|I<<12&258048|T<<6&4032|B&63;L<65536||L>1114111?g+="\uFFFD\uFFFD\uFFFD\uFFFD":(L-=65536,g+=String.fromCharCode(55296+(L>>10),56320+(L&1023))),m+=9;continue}}g+="\uFFFD"}return g})}Ree.defaultChars=";/?:@&=+$,#";Ree.componentChars="";var pF=Ree;var H5t={};function Sun(s){let o=H5t[s];if(o)return o;o=H5t[s]=[];for(let a=0;a<128;a++){let d=String.fromCharCode(a);/^[0-9a-z]$/i.test(d)?o.push(d):o.push("%"+("0"+a.toString(16).toUpperCase()).slice(-2))}for(let a=0;a<s.length;a++)o[s.charCodeAt(a)]=s[a];return o}function Pee(s,o,a){typeof o!="string"&&(a=o,o=Pee.defaultChars),typeof a>"u"&&(a=!0);let d=Sun(o),g="";for(let m=0,v=s.length;m<v;m++){let A=s.charCodeAt(m);if(a&&A===37&&m+2<v&&/^[0-9a-f]{2}$/i.test(s.slice(m+1,m+3))){g+=s.slice(m,m+3),m+=2;continue}if(A<128){g+=d[A];continue}if(A>=55296&&A<=57343){if(A>=55296&&A<=56319&&m+1<v){let I=s.charCodeAt(m+1);if(I>=56320&&I<=57343){g+=encodeURIComponent(s[m]+s[m+1]),m++;continue}}g+="%EF%BF%BD";continue}g+=encodeURIComponent(s[m])}return g}Pee.defaultChars=";/?:@&=+$,-_.!~*'()#";Pee.componentChars="-_.!~*'()";var Fee=Pee;function rM(s){let o="";return o+=s.protocol||"",o+=s.slashes?"//":"",o+=s.auth?s.auth+"@":"",s.hostname&&s.hostname.indexOf(":")!==-1?o+="["+s.hostname+"]":o+=s.hostname||"",o+=s.port?":"+s.port:"",o+=s.pathname||"",o+=s.search||"",o+=s.hash||"",o}function $ee(){this.protocol=null,this.slashes=null,this.auth=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.pathname=null}var Tun=/^([a-z0-9.+-]+:)/i,_un=/:[0-9]*$/,Mun=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,Dun=["<",">",'"',"`"," ","\r",`
|
|
28
|
+
Hint: use a get-only property or a private field (_ or #) for back references.`)}o.add(this.component)}childrenKeys(){return this.keys.filter(o=>this.component[o]instanceof El)}childByKey(o){if(!this.keys.includes(o))return;let a=this.component[o];return a instanceof El?a:void 0}childKey(o){return this.keys.find(a=>this.component[a]===o)}qualify(o){return`${kee(o)}-${this._componentId}`}};vs(M5t,"_globalComponentId",1);var Aun=M5t,vun=new Map([[Date,{toJSON:s=>s instanceof Date?s.toISOString():s,fromJSON:s=>{if(s==null)return s;let o=s instanceof Date?s:new Date(s);return isNaN(o.getTime())?void 0:o}}]]),fye=s=>vun.get(s),yun=class{constructor(s){this.component=s,vs(this,"fromJSON",(o,a)=>{if(!o)return a;let d=fye(o);if(d?.fromJSON)return d.fromJSON(a);let g=new o;return g instanceof El&&g.serializer.deserializeInternal(a),g})}get keys(){let s=this.component.serializerMap;return this.component.ctx.keys.filter(o=>s[o]!==null)}serialize(){let s={},o=this.component.serializerMap;for(let a of this.keys){let d=this.component[a];if(d instanceof El)s[a]=d.serializer.serialize();else if(Array.isArray(d))s[a]=d.map(g=>{if(g instanceof El)return g.serializer.serialize();let m=g?.constructor?fye(g.constructor):void 0;return m?.toJSON?m.toJSON(g):x5t(g)});else if(k5t(d)||_ee(d))s[a]=d;else if(a in o){let g=fye(o[a]);s[a]=g?.toJSON?g.toJSON(d):x5t(d)}}return s}deserialize(s){this.deserializeInternal(s),this.component.update({cause:"serializer"})}deserializeInternal(s){if(!s)return;let o=this.component.serializerMap,a=new Set([...this.component.ctx.keys,...Object.keys(o)]),d=this.component;for(let[g,m]of Object.entries(s)){if(o[g]===null||!a.has(g))continue;let v=o[g],A=d[g];if(v){if(Array.isArray(v)&&Array.isArray(m)){let I=v[0];d[g]=m.map((T,B)=>{let L=A?.[B];return L instanceof El?(L.serializer.deserializeInternal(T),L):this.fromJSON(I,T)});continue}if(!Array.isArray(v)&&!Array.isArray(m)){A instanceof El?(A.serializer.deserializeInternal(m),d[g]=A):d[g]=this.fromJSON(v,m);continue}d[g]=m;continue}if(A instanceof El){A.serializer.deserializeInternal(m);continue}if(Array.isArray(A)&&Array.isArray(m)){if(!v){d[g]=m;continue}let I=Math.min(A.length,m.length);for(let T=0;T<I;T++){let B=A[T],L=m[T];B instanceof El?B.serializer.deserializeInternal(L):_ee(B)&&_ee(L)?Object.assign(B,L):A[T]=L}continue}(k5t(m)||_ee(m)||Array.isArray(m))&&(d[g]=m)}}},k5t=s=>s==null||typeof s!="object"&&typeof s!="function",_ee=s=>{let o=s&&typeof s=="object"?Object.getPrototypeOf(s):null;return o===Object.prototype||o===null},x5t=s=>JSON.parse(JSON.stringify(s)),El=class{constructor(){vs(this,"ctx",new Aun(this)),vs(this,"serializer",new yun(this)),vs(this,"serializerMap",{}),Bvt(this,["ctx","serializer"])}view(...s){return Vi(this.constructor.name)}update(s){this.ctx.update(s)}onAttached(){}onUpdated(s){}onRendered(){}async onValidate(){return[]}async onNavigate(s,o){}onNavigated(){}onDeserialized(){}},B5t=(s,o)=>s[kee(o)],kun=(s,o,a)=>{let d=kee(o);a!=B5t(s,o)&&(s[d]=a,s.update({cause:"input",key:d,value:a}))};function xun(s,o){return{value:String(B5t(s,o)??""),onInput:a=>kun(s,o,a.target.value)}}function L5t(s){let{id:o,target:a,prop:d,attrs:g}=s;return hun({type:"text",id:o,...g,...xun(a,d)})}function N5t(...s){return h3("path",...s)}function O5t(...s){return h3("rect",...s)}function j5t(...s){return h3("svg",...s)}function Mee(s){return Vi({class:"bulb-filter-control"},L5t({target:s.target,prop:s.prop,id:s.id,attrs:{class:"bulb-filter",placeholder:s.placeholder,ariaLabel:s.placeholder,onKeyDown:s.onKeyDown}}),s.hasValue?Y0({class:"bulb-filter-clear",type:"button",title:"Clear filter",ariaLabel:"Clear filter",onClick:o=>{o.stopPropagation(),s.onClear()}},"\xD7"):null)}function R5t(s,o){let a=!0,d=g=>{g.target?.closest(s)||o()};return setTimeout(()=>{a&&document.addEventListener("click",d)},0),()=>{a=!1,document.removeEventListener("click",d)}}var pye=class extends El{open=!1;#e;get parent(){return this.ctx.parent}beginOpen(){this.parent.closePopups(this),this.open=!0}armClose(){this.#e?.(),this.#e=R5t(this.keepOpenSelector,()=>this.close())}close(){this.#e?.(),this.#e=void 0,this.open&&(this.open=!1,this.onClosed(),this.update())}onClosed(){}},nM=class extends pye{filter="";highlighted=0;onClosed(){this.filter="",this.highlighted=0}focusFilter(){setTimeout(()=>document.getElementById(this.filterId)?.focus())}clearFilter(){this.filter="",this.highlighted=0,this.update(),this.focusFilter()}moveHighlight(o){let a=this.itemCount();a&&(this.highlighted=Math.max(0,Math.min(this.highlighted+o,a-1)),this.update(),setTimeout(()=>this.listEl()?.children[this.highlighted]?.scrollIntoView({block:"nearest"})))}activateHighlighted(){let o=this.itemCount();o&&this.onActivate(Math.max(0,Math.min(this.highlighted,o-1)))}onFilterKey(o){o.key==="Escape"?this.close():o.key==="ArrowDown"?(o.preventDefault(),this.moveHighlight(1)):o.key==="ArrowUp"?(o.preventDefault(),this.moveHighlight(-1)):o.key==="Enter"?(o.preventDefault(),this.activateHighlighted()):this.highlighted=0}};var Gd=s=>typeof s=="string"?s:void 0;var gye=s=>`turn-${s%5}`;function Dee(s){let o=Math.max(0,Date.now()-s);return o<6e4?"now":o<36e5?`${Math.floor(o/6e4)}m`:o<864e5?`${Math.floor(o/36e5)}h`:o<7*864e5?`${Math.floor(o/864e5)}d`:new Date(s).toLocaleDateString()}function P5t(s){return s<1e3?`${s}`:s<1e4?`${(s/1e3).toFixed(1)}k`:s<1e6?`${Math.round(s/1e3)}k`:`${(s/1e6).toFixed(1)}M`}function Bee(s,o){return s.length>o?s.slice(0,o).trimEnd()+"\u2026":s}function e6(s){return s.replace(/\\/g,"/").toLowerCase()}function bye(s){return s.replace(/[/\\]+$/,"").split(/[/\\]/).pop()??""}function Lee(s){return bye(s).replace(/\.bulb\.md$/,"")}var Nee=class extends nM{sessions=[];keepOpenSelector=".sid-wrap";filterId="session-filter";itemCount(){return this.filtered().length}listEl(){return document.getElementById("session-list")}onActivate(o){let a=this.filtered()[o];a&&this.pick(a.sessionId)}filtered(){let o=this.filter.trim().toLowerCase();return o?this.sessions.filter(a=>a.preview.toLowerCase().includes(o)):this.sessions}currentIndex(){let a=this.filtered().findIndex(d=>d.sessionId===this.parent.sessionId);return a<0?0:a}onAttached(){tb.server.listSessions().then(o=>{this.sessions=o,this.parent.updateTitle(),this.update()}).catch(()=>{})}currentPreview(){return this.sessions.find(o=>o.sessionId===this.parent.sessionId)?.preview?.trim()??""}async show(){this.beginOpen(),this.highlighted=this.currentIndex(),this.update(),this.focusFilter();try{this.sessions=await tb.server.listSessions(),this.highlighted=this.currentIndex(),this.parent.updateTitle(),this.update()}catch(o){console.error("[mirror] listSessions failed",o)}this.armClose()}async pick(o){this.close(),this.parent.messageList.stickToBottomNextRender(),await tb.server.attach(o)}view(){let o=this.parent;if(!o.sessionId)return Vi({class:"sid-wrap"});let a=this.currentPreview()||"current",d=Bee(a,25),g=`${o.cwd}
|
|
29
|
+
Session: ${o.sessionId}`;return Vi({class:"sid-wrap"},Y0({class:"pill",title:g,onClick:m=>{m.stopPropagation(),this.open?this.close():this.show()}},d),this.open?this.picker():null)}picker(){let o=this.filtered();return Vi({class:"picker"},Mee({target:this,prop:()=>this.filter,id:"session-filter",placeholder:"Filter sessions\u2026",hasValue:!!this.filter,onKeyDown:a=>this.onFilterKey(a),onClear:()=>this.clearFilter()}),o.length===0?Vi({class:"picker-empty"},this.filter?"No match.":"No sessions yet \u2014 start one in your terminal."):Vi({id:"session-list",class:"picker-list"},o.map((a,d)=>this.pickerRow(a,d))))}pickerRow(o,a){let d=o.sessionId===this.parent.sessionId;return Vi({class:["picker-row",a===this.highlighted?"active":"",d?"current":""],onMouseEnter:()=>{this.highlighted!==a&&(this.highlighted=a,this.update())},onClick:()=>this.pick(o.sessionId)},zu({class:"picker-dot"}),zu({class:"picker-preview"},o.preview||"(no preview)"),zu({class:"picker-time"},Dee(o.mtime)))}};var Oee=class extends El{get parent(){return this.ctx.parent}view(){let o=this.parent.tokens,a=o.in+o.out+o.cached+o.cacheCreate;return a<=0?zu({class:"token-wrap"}):zu({class:"token-wrap"},zu({class:"token"},`${P5t(a)} tokens`))}};var F5t=(...s)=>j5t({viewBox:"0 0 16 16",width:"13",height:"13",class:"btn-icon"},...s),Eun=()=>F5t(N5t({d:"M5.5 2 L15.5 8 L5.5 14 Z",fill:"currentColor"})),Cun=()=>F5t(O5t({x:3,y:3,width:10,height:10,fill:"currentColor"})),jee=class extends nM{files=[];servers=[];keepOpenSelector=".servers-wrap";filterId="bulb-filter";launching=new Set;dismissedDenials=new Set;pendingLaunch;openLog;#e;itemCount(){return this.rows().length}listEl(){return document.querySelector(".bulb-list")}onActivate(o){let a=this.rows()[o];a&&(a.running?window.open(a.running.url,"_blank","noopener"):this.launch(a.path))}onAttached(){this.refresh(),setInterval(()=>this.refreshServers(),800),setInterval(()=>this.refreshFiles(),3e3),window.addEventListener("tb-breakout",()=>this.refreshServers())}refresh(){return Promise.all([this.refreshServers(),this.refreshFiles()])}async refreshServers(){try{let o=await tb.server.listBreakouts(),a=o.length!==this.servers.length||o.some((d,g)=>d.pid!==this.servers[g]?.pid||d.denied!==this.servers[g]?.denied||d.predicted!==this.servers[g]?.predicted||d.trust!==this.servers[g]?.trust);this.servers=o,a&&this.update()}catch(o){console.error("[mirror] server list refresh failed",o)}}async refreshFiles(){try{let o=await tb.server.listBulbFiles(),a=o.length!==this.files.length||o.some((d,g)=>d.path!==this.files[g]?.path||d.mtime!==this.files[g]?.mtime);this.files=o,a&&this.update()}catch(o){console.error("[mirror] bulb list refresh failed",o)}}rows(){let o=new Map;for(let g of this.files)o.set(e6(g.path),{path:g.path,name:g.name,recent:g.mtime,trusted:g.trusted});for(let g of this.servers){if(g.pid===this.parent.ownPid)continue;let m=e6(g.file),v=Lee(g.file)||g.file,A=o.get(m)??{path:g.file,name:v,recent:0};A.running=g,A.recent=Math.max(A.recent,g.startedAt),o.set(m,A)}let a=this.filter.trim().toLowerCase(),d=[...o.values()];return a&&(d=d.filter(g=>g.name.toLowerCase().includes(a)||g.path.toLowerCase().includes(a))),d.sort((g,m)=>m.recent-g.recent)}show(){this.beginOpen(),this.highlighted=0,this.refresh(),this.update(),this.armClose(),this.focusFilter()}onClosed(){super.onClosed(),this.closeLog()}async launch(o){if(!this.files.find(d=>e6(d.path)===e6(o))?.trusted){let d;try{d=(await tb.server.predictTrustOf(o)).cap}catch(g){console.error("[mirror] predictTrustOf failed",g)}if(d){this.pendingLaunch={path:o,name:this.displayName(o),cap:d},this.update();return}}await this.doLaunch(o)}async doLaunch(o,a,d=!1){let g=e6(o);this.launching.add(g),this.update();let m;try{m=(await tb.server.launchBulb(o,a)).pid}catch(v){console.error("[mirror] launchBulb failed",v)}finally{this.launching.delete(g)}d&&m&&this.dismissedDenials.add(m),await this.refresh()}displayName(o){return this.files.find(d=>e6(d.path)===e6(o))?.name||Lee(o)||o}launchTrusted(){let o=this.pendingLaunch;this.pendingLaunch=void 0,o&&this.doLaunch(o.path,!0)}launchRestricted(){let o=this.pendingLaunch;this.pendingLaunch=void 0,o&&this.doLaunch(o.path,void 0,!0)}cancelLaunch(){this.pendingLaunch=void 0,this.update()}async stop(o){this.openLog?.pid===o&&this.closeLog(),this.dismissedDenials.delete(o);try{await tb.server.stopBreakout(o)}catch(a){console.error("[mirror] stopBreakout failed",a)}await this.refresh()}pendingDenial(){return this.servers.find(o=>o.denied&&o.pid!==this.parent.ownPid&&!this.dismissedDenials.has(o.pid))}async elevate(o){this.dismissedDenials.add(o.pid),this.openLog?.pid===o.pid&&this.closeLog();try{await tb.server.stopBreakout(o.pid),await tb.server.launchBulb(o.file,!0)}catch(a){console.error("[mirror] elevate failed",a)}await this.refresh()}dismissDenial(o){this.dismissedDenials.add(o),this.update()}async toggleTrust(o){let a=!(o.running?o.running.trust:o.trusted);try{await tb.server.setBulbTrust(o.path,a),o.running&&(this.openLog?.pid===o.running.pid&&this.closeLog(),await tb.server.stopBreakout(o.running.pid),await tb.server.launchBulb(o.path,a))}catch(d){console.error("[mirror] toggleTrust failed",d)}await this.refresh()}showLog(o,a){if(this.openLog?.pid===o.pid){this.closeLog();return}this.closeLog(),this.openLog={pid:o.pid,name:a,text:"",offset:0},this.update(),setTimeout(()=>document.getElementById("bulb-console")?.focus()),this.#t(),this.#e=setInterval(()=>this.#t(),700)}closeLog(){this.#e&&(clearInterval(this.#e),this.#e=void 0),this.openLog&&(this.openLog=void 0,this.update())}async#t(){let o=this.openLog;if(o)try{let{text:a,offset:d}=await tb.server.readBulbLog(o.pid,o.offset);if(this.openLog!==o)return;a?(o.text=(o.text+a).slice(-5e4),o.offset=d,this.update()):d!==o.offset&&(o.offset=d)}catch(a){console.error("[mirror] readBulbLog failed",a)}}view(){let o=this.servers.filter(m=>m.pid!==this.parent.ownPid).length;if(!(this.files.length>0)&&o===0)return Vi({class:"servers-wrap"});let d=o>0?`${o} running`:"bulbs",g=this.pendingDenial();return Vi({class:"servers-wrap"},Y0({class:"pill",title:"Launch a project bulb \xB7 stop a running one",onClick:m=>{m.stopPropagation(),this.open?this.close():this.show()}},d),this.open?this.popup():null,this.pendingLaunch?this.launchModal(this.pendingLaunch):g?this.denialModal(g):null)}trustModal(o){return Vi({class:"trust-back",onClick:a=>{a.stopPropagation(),o.onDismiss()}},Vi({class:"trust-modal",onClick:a=>a.stopPropagation()},Vi({class:"trust-modal-h"},o.heading),Vi({class:"trust-modal-b"},o.body),Vi({class:"trust-modal-warn"},o.warn),Vi({class:"trust-modal-acts"},Y0({class:"trust-no",onClick:a=>{a.stopPropagation(),o.onNo()}},o.noLabel),Y0({class:"trust-yes",onClick:a=>{a.stopPropagation(),o.onYes()}},o.yesLabel))))}launchModal(o){return this.trustModal({heading:`\u201C${o.name}\u201D will likely need access`,body:`It looks like it uses ${o.cap}, which is blocked unless you launch it Trusted. Launch Trusted to allow filesystem / AI / server.ts?`,warn:"Only trust bulbs you wrote or have read \u2014 be careful with anything off the internet.",noLabel:"Launch restricted",yesLabel:"Launch trusted",onNo:()=>this.launchRestricted(),onYes:()=>this.launchTrusted(),onDismiss:()=>this.cancelLaunch()})}denialModal(o){let a=Lee(o.file)||o.file,d=!o.predicted;return this.trustModal({heading:d?`\u201C${a}\u201D reached for access it didn't declare`:`\u201C${a}\u201D wants more access`,body:d?`It tried to use ${o.denied} at runtime, though nothing in its code obviously needed it. Relaunch it Trusted to allow filesystem / AI / server.ts?`:`It tried to use ${o.denied}, blocked while it's restricted. Relaunch it Trusted to allow filesystem / AI / server.ts?`,warn:d?"Code that reaches for capabilities it never visibly uses can be hiding something \u2014 only continue if you wrote this bulb or have read it.":"Only trust bulbs you wrote or have read \u2014 be careful with anything off the internet.",noLabel:"Keep restricted",yesLabel:"Trust & relaunch",onNo:()=>this.dismissDenial(o.pid),onYes:()=>this.elevate(o),onDismiss:()=>this.dismissDenial(o.pid)})}popup(){if(this.openLog)return this.consoleView(this.openLog);let o=this.rows();return Vi({class:"servers-pop"},Mee({target:this,prop:()=>this.filter,id:"bulb-filter",placeholder:"Filter bulbs\u2026",hasValue:!!this.filter,onKeyDown:a=>this.onFilterKey(a),onClear:()=>this.clearFilter()}),o.length===0?Vi({class:"picker-empty"},this.filter?"No match.":"No bulbs in this project yet."):Vi({class:"bulb-list"},o.map((a,d)=>this.row(a,d))))}consoleView(o){return Vi({id:"bulb-console",class:"servers-pop log-mode",tabIndex:0,onKeyDown:a=>{a.key==="Escape"&&(a.stopPropagation(),this.closeLog())}},Vi({class:"bulb-log-head"},zu({class:"bulb-log-name"},`console \xB7 ${o.name}`),Y0({class:"bulb-log-back",title:"Back to the bulb list",onClick:a=>{a.stopPropagation(),this.closeLog()}},"\u2190 bulbs")),I7({class:"bulb-log-body"},zu({class:"bulb-log-text"},o.text||"(no output yet)")))}row(o,a){let d=o.running,g=d&&this.openLog?.pid===d.pid,m=d?!!d.trust:!!o.trusted;return Vi({class:["server-row",a===this.highlighted?"active":""],onMouseEnter:()=>{this.highlighted!==a&&(this.highlighted=a,this.update())}},d?Y0({class:"server-stop",title:"Stop this server",ariaLabel:"Stop",onClick:v=>{v.stopPropagation(),this.stop(d.pid)}},Cun()):Y0({class:["bulb-launch",this.launching.has(e6(o.path))?"launching":""],title:m?"Launch (trusted \u2014 remembered)":"Launch (restricted)",ariaLabel:"Launch",onClick:v=>{v.stopPropagation(),this.launch(o.path)}},Eun()),zu({class:["server-name",d?"":"stopped"],title:`Open ${o.path}`,onClick:v=>{v.stopPropagation(),tb.server.openFile(o.path)}},o.name),d||m?this.trustToggle(o,m):zu({class:"cell-empty"}),d?tM({class:["server-logs",g?"on":""],title:"Show this server\u2019s console",onClick:v=>{v.stopPropagation(),this.showLog(d,o.name)}},"logs"):zu({class:"cell-empty"}),d?tM({class:"server-port",href:d.url,target:"_blank",rel:"noopener noreferrer",title:`Open ${d.url}`},`:${d.port}`):zu({class:"bulb-time"},Dee(o.recent)))}trustToggle(o,a){return Y0({class:["trust-toggle",a?"on":""],title:`${a?"Trusted":"Restricted"} \u2014 click to switch to ${a?"restricted":"trusted"}`+(o.running?" (stops + relaunches it)":""),onClick:d=>{d.stopPropagation(),this.toggleTrust(o)}},a?"trusted":"restricted")}};var Cye={};V_(Cye,{arrayReplaceAt:()=>Eye,asciiTrim:()=>gC,assign:()=>oM,escapeHtml:()=>n6,escapeRE:()=>can,fromCodePoint:()=>cM,has:()=>Yun,isMdAsciiPunct:()=>dC,isPunctChar:()=>o6t,isPunctCharCode:()=>hC,isSpace:()=>jo,isString:()=>Kee,isValidEntityCode:()=>Wee,isWhiteSpace:()=>fC,lib:()=>uan,normalizeReference:()=>pC,unescapeAll:()=>t6,unescapeMd:()=>tan});var Hee={};V_(Hee,{decode:()=>pF,encode:()=>Fee,format:()=>rM,parse:()=>gF});var $5t={};function Iun(s){let o=$5t[s];if(o)return o;o=$5t[s]=[];for(let a=0;a<128;a++){let d=String.fromCharCode(a);o.push(d)}for(let a=0;a<s.length;a++){let d=s.charCodeAt(a);o[d]="%"+("0"+d.toString(16).toUpperCase()).slice(-2)}return o}function Ree(s,o){typeof o!="string"&&(o=Ree.defaultChars);let a=Iun(o);return s.replace(/(%[a-f0-9]{2})+/gi,function(d){let g="";for(let m=0,v=d.length;m<v;m+=3){let A=parseInt(d.slice(m+1,m+3),16);if(A<128){g+=a[A];continue}if((A&224)===192&&m+3<v){let I=parseInt(d.slice(m+4,m+6),16);if((I&192)===128){let T=A<<6&1984|I&63;T<128?g+="\uFFFD\uFFFD":g+=String.fromCharCode(T),m+=3;continue}}if((A&240)===224&&m+6<v){let I=parseInt(d.slice(m+4,m+6),16),T=parseInt(d.slice(m+7,m+9),16);if((I&192)===128&&(T&192)===128){let B=A<<12&61440|I<<6&4032|T&63;B<2048||B>=55296&&B<=57343?g+="\uFFFD\uFFFD\uFFFD":g+=String.fromCharCode(B),m+=6;continue}}if((A&248)===240&&m+9<v){let I=parseInt(d.slice(m+4,m+6),16),T=parseInt(d.slice(m+7,m+9),16),B=parseInt(d.slice(m+10,m+12),16);if((I&192)===128&&(T&192)===128&&(B&192)===128){let L=A<<18&1835008|I<<12&258048|T<<6&4032|B&63;L<65536||L>1114111?g+="\uFFFD\uFFFD\uFFFD\uFFFD":(L-=65536,g+=String.fromCharCode(55296+(L>>10),56320+(L&1023))),m+=9;continue}}g+="\uFFFD"}return g})}Ree.defaultChars=";/?:@&=+$,#";Ree.componentChars="";var pF=Ree;var H5t={};function Sun(s){let o=H5t[s];if(o)return o;o=H5t[s]=[];for(let a=0;a<128;a++){let d=String.fromCharCode(a);/^[0-9a-z]$/i.test(d)?o.push(d):o.push("%"+("0"+a.toString(16).toUpperCase()).slice(-2))}for(let a=0;a<s.length;a++)o[s.charCodeAt(a)]=s[a];return o}function Pee(s,o,a){typeof o!="string"&&(a=o,o=Pee.defaultChars),typeof a>"u"&&(a=!0);let d=Sun(o),g="";for(let m=0,v=s.length;m<v;m++){let A=s.charCodeAt(m);if(a&&A===37&&m+2<v&&/^[0-9a-f]{2}$/i.test(s.slice(m+1,m+3))){g+=s.slice(m,m+3),m+=2;continue}if(A<128){g+=d[A];continue}if(A>=55296&&A<=57343){if(A>=55296&&A<=56319&&m+1<v){let I=s.charCodeAt(m+1);if(I>=56320&&I<=57343){g+=encodeURIComponent(s[m]+s[m+1]),m++;continue}}g+="%EF%BF%BD";continue}g+=encodeURIComponent(s[m])}return g}Pee.defaultChars=";/?:@&=+$,-_.!~*'()#";Pee.componentChars="-_.!~*'()";var Fee=Pee;function rM(s){let o="";return o+=s.protocol||"",o+=s.slashes?"//":"",o+=s.auth?s.auth+"@":"",s.hostname&&s.hostname.indexOf(":")!==-1?o+="["+s.hostname+"]":o+=s.hostname||"",o+=s.port?":"+s.port:"",o+=s.pathname||"",o+=s.search||"",o+=s.hash||"",o}function $ee(){this.protocol=null,this.slashes=null,this.auth=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.pathname=null}var Tun=/^([a-z0-9.+-]+:)/i,_un=/:[0-9]*$/,Mun=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,Dun=["<",">",'"',"`"," ","\r",`
|
|
30
30
|
`," "],Bun=["{","}","|","\\","^","`"].concat(Dun),Lun=["'"].concat(Bun),Q5t=["%","/","?",";","#"].concat(Lun),G5t=["/","?","#"],Nun=255,q5t=/^[+a-z0-9A-Z_-]{0,63}$/,Oun=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,J5t={javascript:!0,"javascript:":!0},U5t={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0};function jun(s,o){if(s&&s instanceof $ee)return s;let a=new $ee;return a.parse(s,o),a}$ee.prototype.parse=function(s,o){let a,d,g,m=s;if(m=m.trim(),!o&&s.split("#").length===1){let T=Mun.exec(m);if(T)return this.pathname=T[1],T[2]&&(this.search=T[2]),this}let v=Tun.exec(m);if(v&&(v=v[0],a=v.toLowerCase(),this.protocol=v,m=m.substr(v.length)),(o||v||m.match(/^\/\/[^@\/]+@[^@\/]+/))&&(g=m.substr(0,2)==="//",g&&!(v&&J5t[v])&&(m=m.substr(2),this.slashes=!0)),!J5t[v]&&(g||v&&!U5t[v])){let T=-1;for(let U=0;U<G5t.length;U++)d=m.indexOf(G5t[U]),d!==-1&&(T===-1||d<T)&&(T=d);let B,L;T===-1?L=m.lastIndexOf("@"):L=m.lastIndexOf("@",T),L!==-1&&(B=m.slice(0,L),m=m.slice(L+1),this.auth=B),T=-1;for(let U=0;U<Q5t.length;U++)d=m.indexOf(Q5t[U]),d!==-1&&(T===-1||d<T)&&(T=d);T===-1&&(T=m.length),m[T-1]===":"&&T--;let R=m.slice(0,T);m=m.slice(T),this.parseHost(R),this.hostname=this.hostname||"";let Q=this.hostname[0]==="["&&this.hostname[this.hostname.length-1]==="]";if(!Q){let U=this.hostname.split(/\./);for(let W=0,ne=U.length;W<ne;W++){let he=U[W];if(he&&!he.match(q5t)){let Ee="";for(let Oe=0,ie=he.length;Oe<ie;Oe++)he.charCodeAt(Oe)>127?Ee+="x":Ee+=he[Oe];if(!Ee.match(q5t)){let Oe=U.slice(0,W),ie=U.slice(W+1),Ie=he.match(Oun);Ie&&(Oe.push(Ie[1]),ie.unshift(Ie[2])),ie.length&&(m=ie.join(".")+m),this.hostname=Oe.join(".");break}}}}this.hostname.length>Nun&&(this.hostname=""),Q&&(this.hostname=this.hostname.substr(1,this.hostname.length-2))}let A=m.indexOf("#");A!==-1&&(this.hash=m.substr(A),m=m.slice(0,A));let I=m.indexOf("?");return I!==-1&&(this.search=m.substr(I),m=m.slice(0,I)),m&&(this.pathname=m),U5t[a]&&this.hostname&&!this.pathname&&(this.pathname=""),this};$ee.prototype.parseHost=function(s){let o=_un.exec(s);o&&(o=o[0],o!==":"&&(this.port=o.substr(1)),s=s.substr(0,s.length-o.length)),s&&(this.hostname=s)};var gF=jun;var mye={};V_(mye,{Any:()=>Qee,Cc:()=>Gee,Cf:()=>z5t,P:()=>iM,S:()=>qee,Z:()=>Jee});var Qee=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;var Gee=/[\0-\x1F\x7F-\x9F]/;var z5t=/[\xAD\u0600-\u0605\u061C\u06DD\u070F\u0890\u0891\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD80D[\uDC30-\uDC3F]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/;var iM=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061D-\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1B7D\u1B7E\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52-\u2E5D\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDEAD\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3E]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDE97-\uDE9A\uDFE2]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD83A[\uDD5E\uDD5F]/;var qee=/[\$\+<->\^`\|~\xA2-\xA6\xA8\xA9\xAC\xAE-\xB1\xB4\xB8\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0384\u0385\u03F6\u0482\u058D-\u058F\u0606-\u0608\u060B\u060E\u060F\u06DE\u06E9\u06FD\u06FE\u07F6\u07FE\u07FF\u0888\u09F2\u09F3\u09FA\u09FB\u0AF1\u0B70\u0BF3-\u0BFA\u0C7F\u0D4F\u0D79\u0E3F\u0F01-\u0F03\u0F13\u0F15-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE\u0FCF\u0FD5-\u0FD8\u109E\u109F\u1390-\u1399\u166D\u17DB\u1940\u19DE-\u19FF\u1B61-\u1B6A\u1B74-\u1B7C\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2044\u2052\u207A-\u207C\u208A-\u208C\u20A0-\u20C0\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2307\u230C-\u2328\u232B-\u2426\u2440-\u244A\u249C-\u24E9\u2500-\u2767\u2794-\u27C4\u27C7-\u27E5\u27F0-\u2982\u2999-\u29D7\u29DC-\u29FB\u29FE-\u2B73\u2B76-\u2B95\u2B97-\u2BFF\u2CE5-\u2CEA\u2E50\u2E51\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3004\u3012\u3013\u3020\u3036\u3037\u303E\u303F\u309B\u309C\u3190\u3191\u3196-\u319F\u31C0-\u31E3\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uAA77-\uAA79\uAB5B\uAB6A\uAB6B\uFB29\uFBB2-\uFBC2\uFD40-\uFD4F\uFDCF\uFDFC-\uFDFF\uFE62\uFE64-\uFE66\uFE69\uFF04\uFF0B\uFF1C-\uFF1E\uFF3E\uFF40\uFF5C\uFF5E\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC]|\uD802[\uDC77\uDC78\uDEC8]|\uD805\uDF3F|\uD807[\uDFD5-\uDFF1]|\uD81A[\uDF3C-\uDF3F\uDF45]|\uD82F\uDC9C|\uD833[\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85\uDE86]|\uD838[\uDD4F\uDEFF]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED7\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDF76\uDF7B-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0\uDCB1\uDD00-\uDE53\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC5\uDECE-\uDEDB\uDEE0-\uDEE8\uDEF0-\uDEF8\uDF00-\uDF92\uDF94-\uDFCA]/;var Jee=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/;var K5t=new Uint16Array('\u1D41<\xD5\u0131\u028A\u049D\u057B\u05D0\u0675\u06DE\u07A2\u07D6\u080F\u0A4A\u0A91\u0DA1\u0E6D\u0F09\u0F26\u10CA\u1228\u12E1\u1415\u149D\u14C3\u14DF\u1525\0\0\0\0\0\0\u156B\u16CD\u198D\u1C12\u1DDD\u1F7E\u2060\u21B0\u228D\u23C0\u23FB\u2442\u2824\u2912\u2D08\u2E48\u2FCE\u3016\u32BA\u3639\u37AC\u38FE\u3A28\u3A71\u3AE0\u3B2E\u0800EMabcfglmnoprstu\\bfms\x7F\x84\x8B\x90\x95\x98\xA6\xB3\xB9\xC8\xCFlig\u803B\xC6\u40C6P\u803B&\u4026cute\u803B\xC1\u40C1reve;\u4102\u0100iyx}rc\u803B\xC2\u40C2;\u4410r;\uC000\u{1D504}rave\u803B\xC0\u40C0pha;\u4391acr;\u4100d;\u6A53\u0100gp\x9D\xA1on;\u4104f;\uC000\u{1D538}plyFunction;\u6061ing\u803B\xC5\u40C5\u0100cs\xBE\xC3r;\uC000\u{1D49C}ign;\u6254ilde\u803B\xC3\u40C3ml\u803B\xC4\u40C4\u0400aceforsu\xE5\xFB\xFE\u0117\u011C\u0122\u0127\u012A\u0100cr\xEA\xF2kslash;\u6216\u0176\xF6\xF8;\u6AE7ed;\u6306y;\u4411\u0180crt\u0105\u010B\u0114ause;\u6235noullis;\u612Ca;\u4392r;\uC000\u{1D505}pf;\uC000\u{1D539}eve;\u42D8c\xF2\u0113mpeq;\u624E\u0700HOacdefhilorsu\u014D\u0151\u0156\u0180\u019E\u01A2\u01B5\u01B7\u01BA\u01DC\u0215\u0273\u0278\u027Ecy;\u4427PY\u803B\xA9\u40A9\u0180cpy\u015D\u0162\u017Aute;\u4106\u0100;i\u0167\u0168\u62D2talDifferentialD;\u6145leys;\u612D\u0200aeio\u0189\u018E\u0194\u0198ron;\u410Cdil\u803B\xC7\u40C7rc;\u4108nint;\u6230ot;\u410A\u0100dn\u01A7\u01ADilla;\u40B8terDot;\u40B7\xF2\u017Fi;\u43A7rcle\u0200DMPT\u01C7\u01CB\u01D1\u01D6ot;\u6299inus;\u6296lus;\u6295imes;\u6297o\u0100cs\u01E2\u01F8kwiseContourIntegral;\u6232eCurly\u0100DQ\u0203\u020FoubleQuote;\u601Duote;\u6019\u0200lnpu\u021E\u0228\u0247\u0255on\u0100;e\u0225\u0226\u6237;\u6A74\u0180git\u022F\u0236\u023Aruent;\u6261nt;\u622FourIntegral;\u622E\u0100fr\u024C\u024E;\u6102oduct;\u6210nterClockwiseContourIntegral;\u6233oss;\u6A2Fcr;\uC000\u{1D49E}p\u0100;C\u0284\u0285\u62D3ap;\u624D\u0580DJSZacefios\u02A0\u02AC\u02B0\u02B4\u02B8\u02CB\u02D7\u02E1\u02E6\u0333\u048D\u0100;o\u0179\u02A5trahd;\u6911cy;\u4402cy;\u4405cy;\u440F\u0180grs\u02BF\u02C4\u02C7ger;\u6021r;\u61A1hv;\u6AE4\u0100ay\u02D0\u02D5ron;\u410E;\u4414l\u0100;t\u02DD\u02DE\u6207a;\u4394r;\uC000\u{1D507}\u0100af\u02EB\u0327\u0100cm\u02F0\u0322ritical\u0200ADGT\u0300\u0306\u0316\u031Ccute;\u40B4o\u0174\u030B\u030D;\u42D9bleAcute;\u42DDrave;\u4060ilde;\u42DCond;\u62C4ferentialD;\u6146\u0470\u033D\0\0\0\u0342\u0354\0\u0405f;\uC000\u{1D53B}\u0180;DE\u0348\u0349\u034D\u40A8ot;\u60DCqual;\u6250ble\u0300CDLRUV\u0363\u0372\u0382\u03CF\u03E2\u03F8ontourIntegra\xEC\u0239o\u0274\u0379\0\0\u037B\xBB\u0349nArrow;\u61D3\u0100eo\u0387\u03A4ft\u0180ART\u0390\u0396\u03A1rrow;\u61D0ightArrow;\u61D4e\xE5\u02CAng\u0100LR\u03AB\u03C4eft\u0100AR\u03B3\u03B9rrow;\u67F8ightArrow;\u67FAightArrow;\u67F9ight\u0100AT\u03D8\u03DErrow;\u61D2ee;\u62A8p\u0241\u03E9\0\0\u03EFrrow;\u61D1ownArrow;\u61D5erticalBar;\u6225n\u0300ABLRTa\u0412\u042A\u0430\u045E\u047F\u037Crrow\u0180;BU\u041D\u041E\u0422\u6193ar;\u6913pArrow;\u61F5reve;\u4311eft\u02D2\u043A\0\u0446\0\u0450ightVector;\u6950eeVector;\u695Eector\u0100;B\u0459\u045A\u61BDar;\u6956ight\u01D4\u0467\0\u0471eeVector;\u695Fector\u0100;B\u047A\u047B\u61C1ar;\u6957ee\u0100;A\u0486\u0487\u62A4rrow;\u61A7\u0100ct\u0492\u0497r;\uC000\u{1D49F}rok;\u4110\u0800NTacdfglmopqstux\u04BD\u04C0\u04C4\u04CB\u04DE\u04E2\u04E7\u04EE\u04F5\u0521\u052F\u0536\u0552\u055D\u0560\u0565G;\u414AH\u803B\xD0\u40D0cute\u803B\xC9\u40C9\u0180aiy\u04D2\u04D7\u04DCron;\u411Arc\u803B\xCA\u40CA;\u442Dot;\u4116r;\uC000\u{1D508}rave\u803B\xC8\u40C8ement;\u6208\u0100ap\u04FA\u04FEcr;\u4112ty\u0253\u0506\0\0\u0512mallSquare;\u65FBerySmallSquare;\u65AB\u0100gp\u0526\u052Aon;\u4118f;\uC000\u{1D53C}silon;\u4395u\u0100ai\u053C\u0549l\u0100;T\u0542\u0543\u6A75ilde;\u6242librium;\u61CC\u0100ci\u0557\u055Ar;\u6130m;\u6A73a;\u4397ml\u803B\xCB\u40CB\u0100ip\u056A\u056Fsts;\u6203onentialE;\u6147\u0280cfios\u0585\u0588\u058D\u05B2\u05CCy;\u4424r;\uC000\u{1D509}lled\u0253\u0597\0\0\u05A3mallSquare;\u65FCerySmallSquare;\u65AA\u0370\u05BA\0\u05BF\0\0\u05C4f;\uC000\u{1D53D}All;\u6200riertrf;\u6131c\xF2\u05CB\u0600JTabcdfgorst\u05E8\u05EC\u05EF\u05FA\u0600\u0612\u0616\u061B\u061D\u0623\u066C\u0672cy;\u4403\u803B>\u403Emma\u0100;d\u05F7\u05F8\u4393;\u43DCreve;\u411E\u0180eiy\u0607\u060C\u0610dil;\u4122rc;\u411C;\u4413ot;\u4120r;\uC000\u{1D50A};\u62D9pf;\uC000\u{1D53E}eater\u0300EFGLST\u0635\u0644\u064E\u0656\u065B\u0666qual\u0100;L\u063E\u063F\u6265ess;\u62DBullEqual;\u6267reater;\u6AA2ess;\u6277lantEqual;\u6A7Eilde;\u6273cr;\uC000\u{1D4A2};\u626B\u0400Aacfiosu\u0685\u068B\u0696\u069B\u069E\u06AA\u06BE\u06CARDcy;\u442A\u0100ct\u0690\u0694ek;\u42C7;\u405Eirc;\u4124r;\u610ClbertSpace;\u610B\u01F0\u06AF\0\u06B2f;\u610DizontalLine;\u6500\u0100ct\u06C3\u06C5\xF2\u06A9rok;\u4126mp\u0144\u06D0\u06D8ownHum\xF0\u012Fqual;\u624F\u0700EJOacdfgmnostu\u06FA\u06FE\u0703\u0707\u070E\u071A\u071E\u0721\u0728\u0744\u0778\u078B\u078F\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803B\xCD\u40CD\u0100iy\u0713\u0718rc\u803B\xCE\u40CE;\u4418ot;\u4130r;\u6111rave\u803B\xCC\u40CC\u0180;ap\u0720\u072F\u073F\u0100cg\u0734\u0737r;\u412AinaryI;\u6148lie\xF3\u03DD\u01F4\u0749\0\u0762\u0100;e\u074D\u074E\u622C\u0100gr\u0753\u0758ral;\u622Bsection;\u62C2isible\u0100CT\u076C\u0772omma;\u6063imes;\u6062\u0180gpt\u077F\u0783\u0788on;\u412Ef;\uC000\u{1D540}a;\u4399cr;\u6110ilde;\u4128\u01EB\u079A\0\u079Ecy;\u4406l\u803B\xCF\u40CF\u0280cfosu\u07AC\u07B7\u07BC\u07C2\u07D0\u0100iy\u07B1\u07B5rc;\u4134;\u4419r;\uC000\u{1D50D}pf;\uC000\u{1D541}\u01E3\u07C7\0\u07CCr;\uC000\u{1D4A5}rcy;\u4408kcy;\u4404\u0380HJacfos\u07E4\u07E8\u07EC\u07F1\u07FD\u0802\u0808cy;\u4425cy;\u440Cppa;\u439A\u0100ey\u07F6\u07FBdil;\u4136;\u441Ar;\uC000\u{1D50E}pf;\uC000\u{1D542}cr;\uC000\u{1D4A6}\u0580JTaceflmost\u0825\u0829\u082C\u0850\u0863\u09B3\u09B8\u09C7\u09CD\u0A37\u0A47cy;\u4409\u803B<\u403C\u0280cmnpr\u0837\u083C\u0841\u0844\u084Dute;\u4139bda;\u439Bg;\u67EAlacetrf;\u6112r;\u619E\u0180aey\u0857\u085C\u0861ron;\u413Ddil;\u413B;\u441B\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087E\u08A9\u08B1\u08E0\u08E6\u08FC\u092F\u095B\u0390\u096A\u0100nr\u0883\u088FgleBracket;\u67E8row\u0180;BR\u0899\u089A\u089E\u6190ar;\u61E4ightArrow;\u61C6eiling;\u6308o\u01F5\u08B7\0\u08C3bleBracket;\u67E6n\u01D4\u08C8\0\u08D2eeVector;\u6961ector\u0100;B\u08DB\u08DC\u61C3ar;\u6959loor;\u630Aight\u0100AV\u08EF\u08F5rrow;\u6194ector;\u694E\u0100er\u0901\u0917e\u0180;AV\u0909\u090A\u0910\u62A3rrow;\u61A4ector;\u695Aiangle\u0180;BE\u0924\u0925\u0929\u62B2ar;\u69CFqual;\u62B4p\u0180DTV\u0937\u0942\u094CownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61BFar;\u6958ector\u0100;B\u0965\u0966\u61BCar;\u6952ight\xE1\u039Cs\u0300EFGLST\u097E\u098B\u0995\u099D\u09A2\u09ADqualGreater;\u62DAullEqual;\u6266reater;\u6276ess;\u6AA1lantEqual;\u6A7Dilde;\u6272r;\uC000\u{1D50F}\u0100;e\u09BD\u09BE\u62D8ftarrow;\u61DAidot;\u413F\u0180npw\u09D4\u0A16\u0A1Bg\u0200LRlr\u09DE\u09F7\u0A02\u0A10eft\u0100AR\u09E6\u09ECrrow;\u67F5ightArrow;\u67F7ightArrow;\u67F6eft\u0100ar\u03B3\u0A0Aight\xE1\u03BFight\xE1\u03CAf;\uC000\u{1D543}er\u0100LR\u0A22\u0A2CeftArrow;\u6199ightArrow;\u6198\u0180cht\u0A3E\u0A40\u0A42\xF2\u084C;\u61B0rok;\u4141;\u626A\u0400acefiosu\u0A5A\u0A5D\u0A60\u0A77\u0A7C\u0A85\u0A8B\u0A8Ep;\u6905y;\u441C\u0100dl\u0A65\u0A6FiumSpace;\u605Flintrf;\u6133r;\uC000\u{1D510}nusPlus;\u6213pf;\uC000\u{1D544}c\xF2\u0A76;\u439C\u0480Jacefostu\u0AA3\u0AA7\u0AAD\u0AC0\u0B14\u0B19\u0D91\u0D97\u0D9Ecy;\u440Acute;\u4143\u0180aey\u0AB4\u0AB9\u0ABEron;\u4147dil;\u4145;\u441D\u0180gsw\u0AC7\u0AF0\u0B0Eative\u0180MTV\u0AD3\u0ADF\u0AE8ediumSpace;\u600Bhi\u0100cn\u0AE6\u0AD8\xEB\u0AD9eryThi\xEE\u0AD9ted\u0100GL\u0AF8\u0B06reaterGreate\xF2\u0673essLes\xF3\u0A48Line;\u400Ar;\uC000\u{1D511}\u0200Bnpt\u0B22\u0B28\u0B37\u0B3Areak;\u6060BreakingSpace;\u40A0f;\u6115\u0680;CDEGHLNPRSTV\u0B55\u0B56\u0B6A\u0B7C\u0BA1\u0BEB\u0C04\u0C5E\u0C84\u0CA6\u0CD8\u0D61\u0D85\u6AEC\u0100ou\u0B5B\u0B64ngruent;\u6262pCap;\u626DoubleVerticalBar;\u6226\u0180lqx\u0B83\u0B8A\u0B9Bement;\u6209ual\u0100;T\u0B92\u0B93\u6260ilde;\uC000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0BB6\u0BB7\u0BBD\u0BC9\u0BD3\u0BD8\u0BE5\u626Fqual;\u6271ullEqual;\uC000\u2267\u0338reater;\uC000\u226B\u0338ess;\u6279lantEqual;\uC000\u2A7E\u0338ilde;\u6275ump\u0144\u0BF2\u0BFDownHump;\uC000\u224E\u0338qual;\uC000\u224F\u0338e\u0100fs\u0C0A\u0C27tTriangle\u0180;BE\u0C1A\u0C1B\u0C21\u62EAar;\uC000\u29CF\u0338qual;\u62ECs\u0300;EGLST\u0C35\u0C36\u0C3C\u0C44\u0C4B\u0C58\u626Equal;\u6270reater;\u6278ess;\uC000\u226A\u0338lantEqual;\uC000\u2A7D\u0338ilde;\u6274ested\u0100GL\u0C68\u0C79reaterGreater;\uC000\u2AA2\u0338essLess;\uC000\u2AA1\u0338recedes\u0180;ES\u0C92\u0C93\u0C9B\u6280qual;\uC000\u2AAF\u0338lantEqual;\u62E0\u0100ei\u0CAB\u0CB9verseElement;\u620CghtTriangle\u0180;BE\u0CCB\u0CCC\u0CD2\u62EBar;\uC000\u29D0\u0338qual;\u62ED\u0100qu\u0CDD\u0D0CuareSu\u0100bp\u0CE8\u0CF9set\u0100;E\u0CF0\u0CF3\uC000\u228F\u0338qual;\u62E2erset\u0100;E\u0D03\u0D06\uC000\u2290\u0338qual;\u62E3\u0180bcp\u0D13\u0D24\u0D4Eset\u0100;E\u0D1B\u0D1E\uC000\u2282\u20D2qual;\u6288ceeds\u0200;EST\u0D32\u0D33\u0D3B\u0D46\u6281qual;\uC000\u2AB0\u0338lantEqual;\u62E1ilde;\uC000\u227F\u0338erset\u0100;E\u0D58\u0D5B\uC000\u2283\u20D2qual;\u6289ilde\u0200;EFT\u0D6E\u0D6F\u0D75\u0D7F\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uC000\u{1D4A9}ilde\u803B\xD1\u40D1;\u439D\u0700Eacdfgmoprstuv\u0DBD\u0DC2\u0DC9\u0DD5\u0DDB\u0DE0\u0DE7\u0DFC\u0E02\u0E20\u0E22\u0E32\u0E3F\u0E44lig;\u4152cute\u803B\xD3\u40D3\u0100iy\u0DCE\u0DD3rc\u803B\xD4\u40D4;\u441Eblac;\u4150r;\uC000\u{1D512}rave\u803B\xD2\u40D2\u0180aei\u0DEE\u0DF2\u0DF6cr;\u414Cga;\u43A9cron;\u439Fpf;\uC000\u{1D546}enCurly\u0100DQ\u0E0E\u0E1AoubleQuote;\u601Cuote;\u6018;\u6A54\u0100cl\u0E27\u0E2Cr;\uC000\u{1D4AA}ash\u803B\xD8\u40D8i\u016C\u0E37\u0E3Cde\u803B\xD5\u40D5es;\u6A37ml\u803B\xD6\u40D6er\u0100BP\u0E4B\u0E60\u0100ar\u0E50\u0E53r;\u603Eac\u0100ek\u0E5A\u0E5C;\u63DEet;\u63B4arenthesis;\u63DC\u0480acfhilors\u0E7F\u0E87\u0E8A\u0E8F\u0E92\u0E94\u0E9D\u0EB0\u0EFCrtialD;\u6202y;\u441Fr;\uC000\u{1D513}i;\u43A6;\u43A0usMinus;\u40B1\u0100ip\u0EA2\u0EADncareplan\xE5\u069Df;\u6119\u0200;eio\u0EB9\u0EBA\u0EE0\u0EE4\u6ABBcedes\u0200;EST\u0EC8\u0EC9\u0ECF\u0EDA\u627Aqual;\u6AAFlantEqual;\u627Cilde;\u627Eme;\u6033\u0100dp\u0EE9\u0EEEuct;\u620Fortion\u0100;a\u0225\u0EF9l;\u621D\u0100ci\u0F01\u0F06r;\uC000\u{1D4AB};\u43A8\u0200Ufos\u0F11\u0F16\u0F1B\u0F1FOT\u803B"\u4022r;\uC000\u{1D514}pf;\u611Acr;\uC000\u{1D4AC}\u0600BEacefhiorsu\u0F3E\u0F43\u0F47\u0F60\u0F73\u0FA7\u0FAA\u0FAD\u1096\u10A9\u10B4\u10BEarr;\u6910G\u803B\xAE\u40AE\u0180cnr\u0F4E\u0F53\u0F56ute;\u4154g;\u67EBr\u0100;t\u0F5C\u0F5D\u61A0l;\u6916\u0180aey\u0F67\u0F6C\u0F71ron;\u4158dil;\u4156;\u4420\u0100;v\u0F78\u0F79\u611Cerse\u0100EU\u0F82\u0F99\u0100lq\u0F87\u0F8Eement;\u620Builibrium;\u61CBpEquilibrium;\u696Fr\xBB\u0F79o;\u43A1ght\u0400ACDFTUVa\u0FC1\u0FEB\u0FF3\u1022\u1028\u105B\u1087\u03D8\u0100nr\u0FC6\u0FD2gleBracket;\u67E9row\u0180;BL\u0FDC\u0FDD\u0FE1\u6192ar;\u61E5eftArrow;\u61C4eiling;\u6309o\u01F5\u0FF9\0\u1005bleBracket;\u67E7n\u01D4\u100A\0\u1014eeVector;\u695Dector\u0100;B\u101D\u101E\u61C2ar;\u6955loor;\u630B\u0100er\u102D\u1043e\u0180;AV\u1035\u1036\u103C\u62A2rrow;\u61A6ector;\u695Biangle\u0180;BE\u1050\u1051\u1055\u62B3ar;\u69D0qual;\u62B5p\u0180DTV\u1063\u106E\u1078ownVector;\u694FeeVector;\u695Cector\u0100;B\u1082\u1083\u61BEar;\u6954ector\u0100;B\u1091\u1092\u61C0ar;\u6953\u0100pu\u109B\u109Ef;\u611DndImplies;\u6970ightarrow;\u61DB\u0100ch\u10B9\u10BCr;\u611B;\u61B1leDelayed;\u69F4\u0680HOacfhimoqstu\u10E4\u10F1\u10F7\u10FD\u1119\u111E\u1151\u1156\u1161\u1167\u11B5\u11BB\u11BF\u0100Cc\u10E9\u10EEHcy;\u4429y;\u4428FTcy;\u442Ccute;\u415A\u0280;aeiy\u1108\u1109\u110E\u1113\u1117\u6ABCron;\u4160dil;\u415Erc;\u415C;\u4421r;\uC000\u{1D516}ort\u0200DLRU\u112A\u1134\u113E\u1149ownArrow\xBB\u041EeftArrow\xBB\u089AightArrow\xBB\u0FDDpArrow;\u6191gma;\u43A3allCircle;\u6218pf;\uC000\u{1D54A}\u0272\u116D\0\0\u1170t;\u621Aare\u0200;ISU\u117B\u117C\u1189\u11AF\u65A1ntersection;\u6293u\u0100bp\u118F\u119Eset\u0100;E\u1197\u1198\u628Fqual;\u6291erset\u0100;E\u11A8\u11A9\u6290qual;\u6292nion;\u6294cr;\uC000\u{1D4AE}ar;\u62C6\u0200bcmp\u11C8\u11DB\u1209\u120B\u0100;s\u11CD\u11CE\u62D0et\u0100;E\u11CD\u11D5qual;\u6286\u0100ch\u11E0\u1205eeds\u0200;EST\u11ED\u11EE\u11F4\u11FF\u627Bqual;\u6AB0lantEqual;\u627Dilde;\u627FTh\xE1\u0F8C;\u6211\u0180;es\u1212\u1213\u1223\u62D1rset\u0100;E\u121C\u121D\u6283qual;\u6287et\xBB\u1213\u0580HRSacfhiors\u123E\u1244\u1249\u1255\u125E\u1271\u1276\u129F\u12C2\u12C8\u12D1ORN\u803B\xDE\u40DEADE;\u6122\u0100Hc\u124E\u1252cy;\u440By;\u4426\u0100bu\u125A\u125C;\u4009;\u43A4\u0180aey\u1265\u126A\u126Fron;\u4164dil;\u4162;\u4422r;\uC000\u{1D517}\u0100ei\u127B\u1289\u01F2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128E\u1298kSpace;\uC000\u205F\u200ASpace;\u6009lde\u0200;EFT\u12AB\u12AC\u12B2\u12BC\u623Cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uC000\u{1D54B}ipleDot;\u60DB\u0100ct\u12D6\u12DBr;\uC000\u{1D4AF}rok;\u4166\u0AE1\u12F7\u130E\u131A\u1326\0\u132C\u1331\0\0\0\0\0\u1338\u133D\u1377\u1385\0\u13FF\u1404\u140A\u1410\u0100cr\u12FB\u1301ute\u803B\xDA\u40DAr\u0100;o\u1307\u1308\u619Fcir;\u6949r\u01E3\u1313\0\u1316y;\u440Eve;\u416C\u0100iy\u131E\u1323rc\u803B\xDB\u40DB;\u4423blac;\u4170r;\uC000\u{1D518}rave\u803B\xD9\u40D9acr;\u416A\u0100di\u1341\u1369er\u0100BP\u1348\u135D\u0100ar\u134D\u1350r;\u405Fac\u0100ek\u1357\u1359;\u63DFet;\u63B5arenthesis;\u63DDon\u0100;P\u1370\u1371\u62C3lus;\u628E\u0100gp\u137B\u137Fon;\u4172f;\uC000\u{1D54C}\u0400ADETadps\u1395\u13AE\u13B8\u13C4\u03E8\u13D2\u13D7\u13F3rrow\u0180;BD\u1150\u13A0\u13A4ar;\u6912ownArrow;\u61C5ownArrow;\u6195quilibrium;\u696Eee\u0100;A\u13CB\u13CC\u62A5rrow;\u61A5own\xE1\u03F3er\u0100LR\u13DE\u13E8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13F9\u13FA\u43D2on;\u43A5ing;\u416Ecr;\uC000\u{1D4B0}ilde;\u4168ml\u803B\xDC\u40DC\u0480Dbcdefosv\u1427\u142C\u1430\u1433\u143E\u1485\u148A\u1490\u1496ash;\u62ABar;\u6AEBy;\u4412ash\u0100;l\u143B\u143C\u62A9;\u6AE6\u0100er\u1443\u1445;\u62C1\u0180bty\u144C\u1450\u147Aar;\u6016\u0100;i\u144F\u1455cal\u0200BLST\u1461\u1465\u146A\u1474ar;\u6223ine;\u407Ceparator;\u6758ilde;\u6240ThinSpace;\u600Ar;\uC000\u{1D519}pf;\uC000\u{1D54D}cr;\uC000\u{1D4B1}dash;\u62AA\u0280cefos\u14A7\u14AC\u14B1\u14B6\u14BCirc;\u4174dge;\u62C0r;\uC000\u{1D51A}pf;\uC000\u{1D54E}cr;\uC000\u{1D4B2}\u0200fios\u14CB\u14D0\u14D2\u14D8r;\uC000\u{1D51B};\u439Epf;\uC000\u{1D54F}cr;\uC000\u{1D4B3}\u0480AIUacfosu\u14F1\u14F5\u14F9\u14FD\u1504\u150F\u1514\u151A\u1520cy;\u442Fcy;\u4407cy;\u442Ecute\u803B\xDD\u40DD\u0100iy\u1509\u150Drc;\u4176;\u442Br;\uC000\u{1D51C}pf;\uC000\u{1D550}cr;\uC000\u{1D4B4}ml;\u4178\u0400Hacdefos\u1535\u1539\u153F\u154B\u154F\u155D\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417D;\u4417ot;\u417B\u01F2\u1554\0\u155BoWidt\xE8\u0AD9a;\u4396r;\u6128pf;\u6124cr;\uC000\u{1D4B5}\u0BE1\u1583\u158A\u1590\0\u15B0\u15B6\u15BF\0\0\0\0\u15C6\u15DB\u15EB\u165F\u166D\0\u1695\u169B\u16B2\u16B9\0\u16BEcute\u803B\xE1\u40E1reve;\u4103\u0300;Ediuy\u159C\u159D\u15A1\u15A3\u15A8\u15AD\u623E;\uC000\u223E\u0333;\u623Frc\u803B\xE2\u40E2te\u80BB\xB4\u0306;\u4430lig\u803B\xE6\u40E6\u0100;r\xB2\u15BA;\uC000\u{1D51E}rave\u803B\xE0\u40E0\u0100ep\u15CA\u15D6\u0100fp\u15CF\u15D4sym;\u6135\xE8\u15D3ha;\u43B1\u0100ap\u15DFc\u0100cl\u15E4\u15E7r;\u4101g;\u6A3F\u0264\u15F0\0\0\u160A\u0280;adsv\u15FA\u15FB\u15FF\u1601\u1607\u6227nd;\u6A55;\u6A5Clope;\u6A58;\u6A5A\u0380;elmrsz\u1618\u1619\u161B\u161E\u163F\u164F\u1659\u6220;\u69A4e\xBB\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163A\u163C\u163E;\u69A8;\u69A9;\u69AA;\u69AB;\u69AC;\u69AD;\u69AE;\u69AFt\u0100;v\u1645\u1646\u621Fb\u0100;d\u164C\u164D\u62BE;\u699D\u0100pt\u1654\u1657h;\u6222\xBB\xB9arr;\u637C\u0100gp\u1663\u1667on;\u4105f;\uC000\u{1D552}\u0380;Eaeiop\u12C1\u167B\u167D\u1682\u1684\u1687\u168A;\u6A70cir;\u6A6F;\u624Ad;\u624Bs;\u4027rox\u0100;e\u12C1\u1692\xF1\u1683ing\u803B\xE5\u40E5\u0180cty\u16A1\u16A6\u16A8r;\uC000\u{1D4B6};\u402Amp\u0100;e\u12C1\u16AF\xF1\u0288ilde\u803B\xE3\u40E3ml\u803B\xE4\u40E4\u0100ci\u16C2\u16C8onin\xF4\u0272nt;\u6A11\u0800Nabcdefiklnoprsu\u16ED\u16F1\u1730\u173C\u1743\u1748\u1778\u177D\u17E0\u17E6\u1839\u1850\u170D\u193D\u1948\u1970ot;\u6AED\u0100cr\u16F6\u171Ek\u0200ceps\u1700\u1705\u170D\u1713ong;\u624Cpsilon;\u43F6rime;\u6035im\u0100;e\u171A\u171B\u623Dq;\u62CD\u0176\u1722\u1726ee;\u62BDed\u0100;g\u172C\u172D\u6305e\xBB\u172Drk\u0100;t\u135C\u1737brk;\u63B6\u0100oy\u1701\u1741;\u4431quo;\u601E\u0280cmprt\u1753\u175B\u1761\u1764\u1768aus\u0100;e\u010A\u0109ptyv;\u69B0s\xE9\u170Cno\xF5\u0113\u0180ahw\u176F\u1771\u1773;\u43B2;\u6136een;\u626Cr;\uC000\u{1D51F}g\u0380costuvw\u178D\u179D\u17B3\u17C1\u17D5\u17DB\u17DE\u0180aiu\u1794\u1796\u179A\xF0\u0760rc;\u65EFp\xBB\u1371\u0180dpt\u17A4\u17A8\u17ADot;\u6A00lus;\u6A01imes;\u6A02\u0271\u17B9\0\0\u17BEcup;\u6A06ar;\u6605riangle\u0100du\u17CD\u17D2own;\u65BDp;\u65B3plus;\u6A04e\xE5\u1444\xE5\u14ADarow;\u690D\u0180ako\u17ED\u1826\u1835\u0100cn\u17F2\u1823k\u0180lst\u17FA\u05AB\u1802ozenge;\u69EBriangle\u0200;dlr\u1812\u1813\u1818\u181D\u65B4own;\u65BEeft;\u65C2ight;\u65B8k;\u6423\u01B1\u182B\0\u1833\u01B2\u182F\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183E\u184D\u0100;q\u1843\u1846\uC000=\u20E5uiv;\uC000\u2261\u20E5t;\u6310\u0200ptwx\u1859\u185E\u1867\u186Cf;\uC000\u{1D553}\u0100;t\u13CB\u1863om\xBB\u13CCtie;\u62C8\u0600DHUVbdhmptuv\u1885\u1896\u18AA\u18BB\u18D7\u18DB\u18EC\u18FF\u1905\u190A\u1910\u1921\u0200LRlr\u188E\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18A1\u18A2\u18A4\u18A6\u18A8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18B3\u18B5\u18B7\u18B9;\u655D;\u655A;\u655C;\u6559\u0380;HLRhlr\u18CA\u18CB\u18CD\u18CF\u18D1\u18D3\u18D5\u6551;\u656C;\u6563;\u6560;\u656B;\u6562;\u655Fox;\u69C9\u0200LRlr\u18E4\u18E6\u18E8\u18EA;\u6555;\u6552;\u6510;\u650C\u0280;DUdu\u06BD\u18F7\u18F9\u18FB\u18FD;\u6565;\u6568;\u652C;\u6534inus;\u629Flus;\u629Eimes;\u62A0\u0200LRlr\u1919\u191B\u191D\u191F;\u655B;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193B\u6502;\u656A;\u6561;\u655E;\u653C;\u6524;\u651C\u0100ev\u0123\u1942bar\u803B\xA6\u40A6\u0200ceio\u1951\u1956\u195A\u1960r;\uC000\u{1D4B7}mi;\u604Fm\u0100;e\u171A\u171Cl\u0180;bh\u1968\u1969\u196B\u405C;\u69C5sub;\u67C8\u016C\u1974\u197El\u0100;e\u1979\u197A\u6022t\xBB\u197Ap\u0180;Ee\u012F\u1985\u1987;\u6AAE\u0100;q\u06DC\u06DB\u0CE1\u19A7\0\u19E8\u1A11\u1A15\u1A32\0\u1A37\u1A50\0\0\u1AB4\0\0\u1AC1\0\0\u1B21\u1B2E\u1B4D\u1B52\0\u1BFD\0\u1C0C\u0180cpr\u19AD\u19B2\u19DDute;\u4107\u0300;abcds\u19BF\u19C0\u19C4\u19CA\u19D5\u19D9\u6229nd;\u6A44rcup;\u6A49\u0100au\u19CF\u19D2p;\u6A4Bp;\u6A47ot;\u6A40;\uC000\u2229\uFE00\u0100eo\u19E2\u19E5t;\u6041\xEE\u0693\u0200aeiu\u19F0\u19FB\u1A01\u1A05\u01F0\u19F5\0\u19F8s;\u6A4Don;\u410Ddil\u803B\xE7\u40E7rc;\u4109ps\u0100;s\u1A0C\u1A0D\u6A4Cm;\u6A50ot;\u410B\u0180dmn\u1A1B\u1A20\u1A26il\u80BB\xB8\u01ADptyv;\u69B2t\u8100\xA2;e\u1A2D\u1A2E\u40A2r\xE4\u01B2r;\uC000\u{1D520}\u0180cei\u1A3D\u1A40\u1A4Dy;\u4447ck\u0100;m\u1A47\u1A48\u6713ark\xBB\u1A48;\u43C7r\u0380;Ecefms\u1A5F\u1A60\u1A62\u1A6B\u1AA4\u1AAA\u1AAE\u65CB;\u69C3\u0180;el\u1A69\u1A6A\u1A6D\u42C6q;\u6257e\u0261\u1A74\0\0\u1A88rrow\u0100lr\u1A7C\u1A81eft;\u61BAight;\u61BB\u0280RSacd\u1A92\u1A94\u1A96\u1A9A\u1A9F\xBB\u0F47;\u64C8st;\u629Birc;\u629Aash;\u629Dnint;\u6A10id;\u6AEFcir;\u69C2ubs\u0100;u\u1ABB\u1ABC\u6663it\xBB\u1ABC\u02EC\u1AC7\u1AD4\u1AFA\0\u1B0Aon\u0100;e\u1ACD\u1ACE\u403A\u0100;q\xC7\xC6\u026D\u1AD9\0\0\u1AE2a\u0100;t\u1ADE\u1ADF\u402C;\u4040\u0180;fl\u1AE8\u1AE9\u1AEB\u6201\xEE\u1160e\u0100mx\u1AF1\u1AF6ent\xBB\u1AE9e\xF3\u024D\u01E7\u1AFE\0\u1B07\u0100;d\u12BB\u1B02ot;\u6A6Dn\xF4\u0246\u0180fry\u1B10\u1B14\u1B17;\uC000\u{1D554}o\xE4\u0254\u8100\xA9;s\u0155\u1B1Dr;\u6117\u0100ao\u1B25\u1B29rr;\u61B5ss;\u6717\u0100cu\u1B32\u1B37r;\uC000\u{1D4B8}\u0100bp\u1B3C\u1B44\u0100;e\u1B41\u1B42\u6ACF;\u6AD1\u0100;e\u1B49\u1B4A\u6AD0;\u6AD2dot;\u62EF\u0380delprvw\u1B60\u1B6C\u1B77\u1B82\u1BAC\u1BD4\u1BF9arr\u0100lr\u1B68\u1B6A;\u6938;\u6935\u0270\u1B72\0\0\u1B75r;\u62DEc;\u62DFarr\u0100;p\u1B7F\u1B80\u61B6;\u693D\u0300;bcdos\u1B8F\u1B90\u1B96\u1BA1\u1BA5\u1BA8\u622Arcap;\u6A48\u0100au\u1B9B\u1B9Ep;\u6A46p;\u6A4Aot;\u628Dr;\u6A45;\uC000\u222A\uFE00\u0200alrv\u1BB5\u1BBF\u1BDE\u1BE3rr\u0100;m\u1BBC\u1BBD\u61B7;\u693Cy\u0180evw\u1BC7\u1BD4\u1BD8q\u0270\u1BCE\0\0\u1BD2re\xE3\u1B73u\xE3\u1B75ee;\u62CEedge;\u62CFen\u803B\xA4\u40A4earrow\u0100lr\u1BEE\u1BF3eft\xBB\u1B80ight\xBB\u1BBDe\xE4\u1BDD\u0100ci\u1C01\u1C07onin\xF4\u01F7nt;\u6231lcty;\u632D\u0980AHabcdefhijlorstuwz\u1C38\u1C3B\u1C3F\u1C5D\u1C69\u1C75\u1C8A\u1C9E\u1CAC\u1CB7\u1CFB\u1CFF\u1D0D\u1D7B\u1D91\u1DAB\u1DBB\u1DC6\u1DCDr\xF2\u0381ar;\u6965\u0200glrs\u1C48\u1C4D\u1C52\u1C54ger;\u6020eth;\u6138\xF2\u1133h\u0100;v\u1C5A\u1C5B\u6010\xBB\u090A\u016B\u1C61\u1C67arow;\u690Fa\xE3\u0315\u0100ay\u1C6E\u1C73ron;\u410F;\u4434\u0180;ao\u0332\u1C7C\u1C84\u0100gr\u02BF\u1C81r;\u61CAtseq;\u6A77\u0180glm\u1C91\u1C94\u1C98\u803B\xB0\u40B0ta;\u43B4ptyv;\u69B1\u0100ir\u1CA3\u1CA8sht;\u697F;\uC000\u{1D521}ar\u0100lr\u1CB3\u1CB5\xBB\u08DC\xBB\u101E\u0280aegsv\u1CC2\u0378\u1CD6\u1CDC\u1CE0m\u0180;os\u0326\u1CCA\u1CD4nd\u0100;s\u0326\u1CD1uit;\u6666amma;\u43DDin;\u62F2\u0180;io\u1CE7\u1CE8\u1CF8\u40F7de\u8100\xF7;o\u1CE7\u1CF0ntimes;\u62C7n\xF8\u1CF7cy;\u4452c\u026F\u1D06\0\0\u1D0Arn;\u631Eop;\u630D\u0280lptuw\u1D18\u1D1D\u1D22\u1D49\u1D55lar;\u4024f;\uC000\u{1D555}\u0280;emps\u030B\u1D2D\u1D37\u1D3D\u1D42q\u0100;d\u0352\u1D33ot;\u6251inus;\u6238lus;\u6214quare;\u62A1blebarwedg\xE5\xFAn\u0180adh\u112E\u1D5D\u1D67ownarrow\xF3\u1C83arpoon\u0100lr\u1D72\u1D76ef\xF4\u1CB4igh\xF4\u1CB6\u0162\u1D7F\u1D85karo\xF7\u0F42\u026F\u1D8A\0\0\u1D8Ern;\u631Fop;\u630C\u0180cot\u1D98\u1DA3\u1DA6\u0100ry\u1D9D\u1DA1;\uC000\u{1D4B9};\u4455l;\u69F6rok;\u4111\u0100dr\u1DB0\u1DB4ot;\u62F1i\u0100;f\u1DBA\u1816\u65BF\u0100ah\u1DC0\u1DC3r\xF2\u0429a\xF2\u0FA6angle;\u69A6\u0100ci\u1DD2\u1DD5y;\u445Fgrarr;\u67FF\u0900Dacdefglmnopqrstux\u1E01\u1E09\u1E19\u1E38\u0578\u1E3C\u1E49\u1E61\u1E7E\u1EA5\u1EAF\u1EBD\u1EE1\u1F2A\u1F37\u1F44\u1F4E\u1F5A\u0100Do\u1E06\u1D34o\xF4\u1C89\u0100cs\u1E0E\u1E14ute\u803B\xE9\u40E9ter;\u6A6E\u0200aioy\u1E22\u1E27\u1E31\u1E36ron;\u411Br\u0100;c\u1E2D\u1E2E\u6256\u803B\xEA\u40EAlon;\u6255;\u444Dot;\u4117\u0100Dr\u1E41\u1E45ot;\u6252;\uC000\u{1D522}\u0180;rs\u1E50\u1E51\u1E57\u6A9Aave\u803B\xE8\u40E8\u0100;d\u1E5C\u1E5D\u6A96ot;\u6A98\u0200;ils\u1E6A\u1E6B\u1E72\u1E74\u6A99nters;\u63E7;\u6113\u0100;d\u1E79\u1E7A\u6A95ot;\u6A97\u0180aps\u1E85\u1E89\u1E97cr;\u4113ty\u0180;sv\u1E92\u1E93\u1E95\u6205et\xBB\u1E93p\u01001;\u1E9D\u1EA4\u0133\u1EA1\u1EA3;\u6004;\u6005\u6003\u0100gs\u1EAA\u1EAC;\u414Bp;\u6002\u0100gp\u1EB4\u1EB8on;\u4119f;\uC000\u{1D556}\u0180als\u1EC4\u1ECE\u1ED2r\u0100;s\u1ECA\u1ECB\u62D5l;\u69E3us;\u6A71i\u0180;lv\u1EDA\u1EDB\u1EDF\u43B5on\xBB\u1EDB;\u43F5\u0200csuv\u1EEA\u1EF3\u1F0B\u1F23\u0100io\u1EEF\u1E31rc\xBB\u1E2E\u0269\u1EF9\0\0\u1EFB\xED\u0548ant\u0100gl\u1F02\u1F06tr\xBB\u1E5Dess\xBB\u1E7A\u0180aei\u1F12\u1F16\u1F1Als;\u403Dst;\u625Fv\u0100;D\u0235\u1F20D;\u6A78parsl;\u69E5\u0100Da\u1F2F\u1F33ot;\u6253rr;\u6971\u0180cdi\u1F3E\u1F41\u1EF8r;\u612Fo\xF4\u0352\u0100ah\u1F49\u1F4B;\u43B7\u803B\xF0\u40F0\u0100mr\u1F53\u1F57l\u803B\xEB\u40EBo;\u60AC\u0180cip\u1F61\u1F64\u1F67l;\u4021s\xF4\u056E\u0100eo\u1F6C\u1F74ctatio\xEE\u0559nential\xE5\u0579\u09E1\u1F92\0\u1F9E\0\u1FA1\u1FA7\0\0\u1FC6\u1FCC\0\u1FD3\0\u1FE6\u1FEA\u2000\0\u2008\u205Allingdotse\xF1\u1E44y;\u4444male;\u6640\u0180ilr\u1FAD\u1FB3\u1FC1lig;\u8000\uFB03\u0269\u1FB9\0\0\u1FBDg;\u8000\uFB00ig;\u8000\uFB04;\uC000\u{1D523}lig;\u8000\uFB01lig;\uC000fj\u0180alt\u1FD9\u1FDC\u1FE1t;\u666Dig;\u8000\uFB02ns;\u65B1of;\u4192\u01F0\u1FEE\0\u1FF3f;\uC000\u{1D557}\u0100ak\u05BF\u1FF7\u0100;v\u1FFC\u1FFD\u62D4;\u6AD9artint;\u6A0D\u0100ao\u200C\u2055\u0100cs\u2011\u2052\u03B1\u201A\u2030\u2038\u2045\u2048\0\u2050\u03B2\u2022\u2025\u2027\u202A\u202C\0\u202E\u803B\xBD\u40BD;\u6153\u803B\xBC\u40BC;\u6155;\u6159;\u615B\u01B3\u2034\0\u2036;\u6154;\u6156\u02B4\u203E\u2041\0\0\u2043\u803B\xBE\u40BE;\u6157;\u615C5;\u6158\u01B6\u204C\0\u204E;\u615A;\u615D8;\u615El;\u6044wn;\u6322cr;\uC000\u{1D4BB}\u0880Eabcdefgijlnorstv\u2082\u2089\u209F\u20A5\u20B0\u20B4\u20F0\u20F5\u20FA\u20FF\u2103\u2112\u2138\u0317\u213E\u2152\u219E\u0100;l\u064D\u2087;\u6A8C\u0180cmp\u2090\u2095\u209Dute;\u41F5ma\u0100;d\u209C\u1CDA\u43B3;\u6A86reve;\u411F\u0100iy\u20AA\u20AErc;\u411D;\u4433ot;\u4121\u0200;lqs\u063E\u0642\u20BD\u20C9\u0180;qs\u063E\u064C\u20C4lan\xF4\u0665\u0200;cdl\u0665\u20D2\u20D5\u20E5c;\u6AA9ot\u0100;o\u20DC\u20DD\u6A80\u0100;l\u20E2\u20E3\u6A82;\u6A84\u0100;e\u20EA\u20ED\uC000\u22DB\uFE00s;\u6A94r;\uC000\u{1D524}\u0100;g\u0673\u061Bmel;\u6137cy;\u4453\u0200;Eaj\u065A\u210C\u210E\u2110;\u6A92;\u6AA5;\u6AA4\u0200Eaes\u211B\u211D\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6A8Arox\xBB\u2124\u0100;q\u212E\u212F\u6A88\u0100;q\u212E\u211Bim;\u62E7pf;\uC000\u{1D558}\u0100ci\u2143\u2146r;\u610Am\u0180;el\u066B\u214E\u2150;\u6A8E;\u6A90\u8300>;cdlqr\u05EE\u2160\u216A\u216E\u2173\u2179\u0100ci\u2165\u2167;\u6AA7r;\u6A7Aot;\u62D7Par;\u6995uest;\u6A7C\u0280adels\u2184\u216A\u2190\u0656\u219B\u01F0\u2189\0\u218Epro\xF8\u209Er;\u6978q\u0100lq\u063F\u2196les\xF3\u2088i\xED\u066B\u0100en\u21A3\u21ADrtneqq;\uC000\u2269\uFE00\xC5\u21AA\u0500Aabcefkosy\u21C4\u21C7\u21F1\u21F5\u21FA\u2218\u221D\u222F\u2268\u227Dr\xF2\u03A0\u0200ilmr\u21D0\u21D4\u21D7\u21DBrs\xF0\u1484f\xBB\u2024il\xF4\u06A9\u0100dr\u21E0\u21E4cy;\u444A\u0180;cw\u08F4\u21EB\u21EFir;\u6948;\u61ADar;\u610Firc;\u4125\u0180alr\u2201\u220E\u2213rts\u0100;u\u2209\u220A\u6665it\xBB\u220Alip;\u6026con;\u62B9r;\uC000\u{1D525}s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223A\u223E\u2243\u225E\u2263rr;\u61FFtht;\u623Bk\u0100lr\u2249\u2253eftarrow;\u61A9ightarrow;\u61AAf;\uC000\u{1D559}bar;\u6015\u0180clt\u226F\u2274\u2278r;\uC000\u{1D4BD}as\xE8\u21F4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xBB\u1C5B\u0AE1\u22A3\0\u22AA\0\u22B8\u22C5\u22CE\0\u22D5\u22F3\0\0\u22F8\u2322\u2367\u2362\u237F\0\u2386\u23AA\u23B4cute\u803B\xED\u40ED\u0180;iy\u0771\u22B0\u22B5rc\u803B\xEE\u40EE;\u4438\u0100cx\u22BC\u22BFy;\u4435cl\u803B\xA1\u40A1\u0100fr\u039F\u22C9;\uC000\u{1D526}rave\u803B\xEC\u40EC\u0200;ino\u073E\u22DD\u22E9\u22EE\u0100in\u22E2\u22E6nt;\u6A0Ct;\u622Dfin;\u69DCta;\u6129lig;\u4133\u0180aop\u22FE\u231A\u231D\u0180cgt\u2305\u2308\u2317r;\u412B\u0180elp\u071F\u230F\u2313in\xE5\u078Ear\xF4\u0720h;\u4131f;\u62B7ed;\u41B5\u0280;cfot\u04F4\u232C\u2331\u233D\u2341are;\u6105in\u0100;t\u2338\u2339\u621Eie;\u69DDdo\xF4\u2319\u0280;celp\u0757\u234C\u2350\u235B\u2361al;\u62BA\u0100gr\u2355\u2359er\xF3\u1563\xE3\u234Darhk;\u6A17rod;\u6A3C\u0200cgpt\u236F\u2372\u2376\u237By;\u4451on;\u412Ff;\uC000\u{1D55A}a;\u43B9uest\u803B\xBF\u40BF\u0100ci\u238A\u238Fr;\uC000\u{1D4BE}n\u0280;Edsv\u04F4\u239B\u239D\u23A1\u04F3;\u62F9ot;\u62F5\u0100;v\u23A6\u23A7\u62F4;\u62F3\u0100;i\u0777\u23AElde;\u4129\u01EB\u23B8\0\u23BCcy;\u4456l\u803B\xEF\u40EF\u0300cfmosu\u23CC\u23D7\u23DC\u23E1\u23E7\u23F5\u0100iy\u23D1\u23D5rc;\u4135;\u4439r;\uC000\u{1D527}ath;\u4237pf;\uC000\u{1D55B}\u01E3\u23EC\0\u23F1r;\uC000\u{1D4BF}rcy;\u4458kcy;\u4454\u0400acfghjos\u240B\u2416\u2422\u2427\u242D\u2431\u2435\u243Bppa\u0100;v\u2413\u2414\u43BA;\u43F0\u0100ey\u241B\u2420dil;\u4137;\u443Ar;\uC000\u{1D528}reen;\u4138cy;\u4445cy;\u445Cpf;\uC000\u{1D55C}cr;\uC000\u{1D4C0}\u0B80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248D\u2491\u250E\u253D\u255A\u2580\u264E\u265E\u2665\u2679\u267D\u269A\u26B2\u26D8\u275D\u2768\u278B\u27C0\u2801\u2812\u0180art\u2477\u247A\u247Cr\xF2\u09C6\xF2\u0395ail;\u691Barr;\u690E\u0100;g\u0994\u248B;\u6A8Bar;\u6962\u0963\u24A5\0\u24AA\0\u24B1\0\0\0\0\0\u24B5\u24BA\0\u24C6\u24C8\u24CD\0\u24F9ute;\u413Amptyv;\u69B4ra\xEE\u084Cbda;\u43BBg\u0180;dl\u088E\u24C1\u24C3;\u6991\xE5\u088E;\u6A85uo\u803B\xAB\u40ABr\u0400;bfhlpst\u0899\u24DE\u24E6\u24E9\u24EB\u24EE\u24F1\u24F5\u0100;f\u089D\u24E3s;\u691Fs;\u691D\xEB\u2252p;\u61ABl;\u6939im;\u6973l;\u61A2\u0180;ae\u24FF\u2500\u2504\u6AABil;\u6919\u0100;s\u2509\u250A\u6AAD;\uC000\u2AAD\uFE00\u0180abr\u2515\u2519\u251Drr;\u690Crk;\u6772\u0100ak\u2522\u252Cc\u0100ek\u2528\u252A;\u407B;\u405B\u0100es\u2531\u2533;\u698Bl\u0100du\u2539\u253B;\u698F;\u698D\u0200aeuy\u2546\u254B\u2556\u2558ron;\u413E\u0100di\u2550\u2554il;\u413C\xEC\u08B0\xE2\u2529;\u443B\u0200cqrs\u2563\u2566\u256D\u257Da;\u6936uo\u0100;r\u0E19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694Bh;\u61B2\u0280;fgqs\u258B\u258C\u0989\u25F3\u25FF\u6264t\u0280ahlrt\u2598\u25A4\u25B7\u25C2\u25E8rrow\u0100;t\u0899\u25A1a\xE9\u24F6arpoon\u0100du\u25AF\u25B4own\xBB\u045Ap\xBB\u0966eftarrows;\u61C7ight\u0180ahs\u25CD\u25D6\u25DErrow\u0100;s\u08F4\u08A7arpoon\xF3\u0F98quigarro\xF7\u21F0hreetimes;\u62CB\u0180;qs\u258B\u0993\u25FAlan\xF4\u09AC\u0280;cdgs\u09AC\u260A\u260D\u261D\u2628c;\u6AA8ot\u0100;o\u2614\u2615\u6A7F\u0100;r\u261A\u261B\u6A81;\u6A83\u0100;e\u2622\u2625\uC000\u22DA\uFE00s;\u6A93\u0280adegs\u2633\u2639\u263D\u2649\u264Bppro\xF8\u24C6ot;\u62D6q\u0100gq\u2643\u2645\xF4\u0989gt\xF2\u248C\xF4\u099Bi\xED\u09B2\u0180ilr\u2655\u08E1\u265Asht;\u697C;\uC000\u{1D529}\u0100;E\u099C\u2663;\u6A91\u0161\u2669\u2676r\u0100du\u25B2\u266E\u0100;l\u0965\u2673;\u696Alk;\u6584cy;\u4459\u0280;acht\u0A48\u2688\u268B\u2691\u2696r\xF2\u25C1orne\xF2\u1D08ard;\u696Bri;\u65FA\u0100io\u269F\u26A4dot;\u4140ust\u0100;a\u26AC\u26AD\u63B0che\xBB\u26AD\u0200Eaes\u26BB\u26BD\u26C9\u26D4;\u6268p\u0100;p\u26C3\u26C4\u6A89rox\xBB\u26C4\u0100;q\u26CE\u26CF\u6A87\u0100;q\u26CE\u26BBim;\u62E6\u0400abnoptwz\u26E9\u26F4\u26F7\u271A\u272F\u2741\u2747\u2750\u0100nr\u26EE\u26F1g;\u67ECr;\u61FDr\xEB\u08C1g\u0180lmr\u26FF\u270D\u2714eft\u0100ar\u09E6\u2707ight\xE1\u09F2apsto;\u67FCight\xE1\u09FDparrow\u0100lr\u2725\u2729ef\xF4\u24EDight;\u61AC\u0180afl\u2736\u2739\u273Dr;\u6985;\uC000\u{1D55D}us;\u6A2Dimes;\u6A34\u0161\u274B\u274Fst;\u6217\xE1\u134E\u0180;ef\u2757\u2758\u1800\u65CAnge\xBB\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277C\u2785\u2787r\xF2\u08A8orne\xF2\u1D8Car\u0100;d\u0F98\u2783;\u696D;\u600Eri;\u62BF\u0300achiqt\u2798\u279D\u0A40\u27A2\u27AE\u27BBquo;\u6039r;\uC000\u{1D4C1}m\u0180;eg\u09B2\u27AA\u27AC;\u6A8D;\u6A8F\u0100bu\u252A\u27B3o\u0100;r\u0E1F\u27B9;\u601Arok;\u4142\u8400<;cdhilqr\u082B\u27D2\u2639\u27DC\u27E0\u27E5\u27EA\u27F0\u0100ci\u27D7\u27D9;\u6AA6r;\u6A79re\xE5\u25F2mes;\u62C9arr;\u6976uest;\u6A7B\u0100Pi\u27F5\u27F9ar;\u6996\u0180;ef\u2800\u092D\u181B\u65C3r\u0100du\u2807\u280Dshar;\u694Ahar;\u6966\u0100en\u2817\u2821rtneqq;\uC000\u2268\uFE00\xC5\u281E\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288E\u2893\u28A0\u28A5\u28A8\u28DA\u28E2\u28E4\u0A83\u28F3\u2902Dot;\u623A\u0200clpr\u284E\u2852\u2863\u287Dr\u803B\xAF\u40AF\u0100et\u2857\u2859;\u6642\u0100;e\u285E\u285F\u6720se\xBB\u285F\u0100;s\u103B\u2868to\u0200;dlu\u103B\u2873\u2877\u287Bow\xEE\u048Cef\xF4\u090F\xF0\u13D1ker;\u65AE\u0100oy\u2887\u288Cmma;\u6A29;\u443Cash;\u6014asuredangle\xBB\u1626r;\uC000\u{1D52A}o;\u6127\u0180cdn\u28AF\u28B4\u28C9ro\u803B\xB5\u40B5\u0200;acd\u1464\u28BD\u28C0\u28C4s\xF4\u16A7ir;\u6AF0ot\u80BB\xB7\u01B5us\u0180;bd\u28D2\u1903\u28D3\u6212\u0100;u\u1D3C\u28D8;\u6A2A\u0163\u28DE\u28E1p;\u6ADB\xF2\u2212\xF0\u0A81\u0100dp\u28E9\u28EEels;\u62A7f;\uC000\u{1D55E}\u0100ct\u28F8\u28FDr;\uC000\u{1D4C2}pos\xBB\u159D\u0180;lm\u2909\u290A\u290D\u43BCtimap;\u62B8\u0C00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297E\u2989\u2998\u29DA\u29E9\u2A15\u2A1A\u2A58\u2A5D\u2A83\u2A95\u2AA4\u2AA8\u2B04\u2B07\u2B44\u2B7F\u2BAE\u2C34\u2C67\u2C7C\u2CE9\u0100gt\u2947\u294B;\uC000\u22D9\u0338\u0100;v\u2950\u0BCF\uC000\u226B\u20D2\u0180elt\u295A\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61CDightarrow;\u61CE;\uC000\u22D8\u0338\u0100;v\u297B\u0C47\uC000\u226A\u20D2ightarrow;\u61CF\u0100Dd\u298E\u2993ash;\u62AFash;\u62AE\u0280bcnpt\u29A3\u29A7\u29AC\u29B1\u29CCla\xBB\u02DEute;\u4144g;\uC000\u2220\u20D2\u0280;Eiop\u0D84\u29BC\u29C0\u29C5\u29C8;\uC000\u2A70\u0338d;\uC000\u224B\u0338s;\u4149ro\xF8\u0D84ur\u0100;a\u29D3\u29D4\u666El\u0100;s\u29D3\u0B38\u01F3\u29DF\0\u29E3p\u80BB\xA0\u0B37mp\u0100;e\u0BF9\u0C00\u0280aeouy\u29F4\u29FE\u2A03\u2A10\u2A13\u01F0\u29F9\0\u29FB;\u6A43on;\u4148dil;\u4146ng\u0100;d\u0D7E\u2A0Aot;\uC000\u2A6D\u0338p;\u6A42;\u443Dash;\u6013\u0380;Aadqsx\u0B92\u2A29\u2A2D\u2A3B\u2A41\u2A45\u2A50rr;\u61D7r\u0100hr\u2A33\u2A36k;\u6924\u0100;o\u13F2\u13F0ot;\uC000\u2250\u0338ui\xF6\u0B63\u0100ei\u2A4A\u2A4Ear;\u6928\xED\u0B98ist\u0100;s\u0BA0\u0B9Fr;\uC000\u{1D52B}\u0200Eest\u0BC5\u2A66\u2A79\u2A7C\u0180;qs\u0BBC\u2A6D\u0BE1\u0180;qs\u0BBC\u0BC5\u2A74lan\xF4\u0BE2i\xED\u0BEA\u0100;r\u0BB6\u2A81\xBB\u0BB7\u0180Aap\u2A8A\u2A8D\u2A91r\xF2\u2971rr;\u61AEar;\u6AF2\u0180;sv\u0F8D\u2A9C\u0F8C\u0100;d\u2AA1\u2AA2\u62FC;\u62FAcy;\u445A\u0380AEadest\u2AB7\u2ABA\u2ABE\u2AC2\u2AC5\u2AF6\u2AF9r\xF2\u2966;\uC000\u2266\u0338rr;\u619Ar;\u6025\u0200;fqs\u0C3B\u2ACE\u2AE3\u2AEFt\u0100ar\u2AD4\u2AD9rro\xF7\u2AC1ightarro\xF7\u2A90\u0180;qs\u0C3B\u2ABA\u2AEAlan\xF4\u0C55\u0100;s\u0C55\u2AF4\xBB\u0C36i\xED\u0C5D\u0100;r\u0C35\u2AFEi\u0100;e\u0C1A\u0C25i\xE4\u0D90\u0100pt\u2B0C\u2B11f;\uC000\u{1D55F}\u8180\xAC;in\u2B19\u2B1A\u2B36\u40ACn\u0200;Edv\u0B89\u2B24\u2B28\u2B2E;\uC000\u22F9\u0338ot;\uC000\u22F5\u0338\u01E1\u0B89\u2B33\u2B35;\u62F7;\u62F6i\u0100;v\u0CB8\u2B3C\u01E1\u0CB8\u2B41\u2B43;\u62FE;\u62FD\u0180aor\u2B4B\u2B63\u2B69r\u0200;ast\u0B7B\u2B55\u2B5A\u2B5Flle\xEC\u0B7Bl;\uC000\u2AFD\u20E5;\uC000\u2202\u0338lint;\u6A14\u0180;ce\u0C92\u2B70\u2B73u\xE5\u0CA5\u0100;c\u0C98\u2B78\u0100;e\u0C92\u2B7D\xF1\u0C98\u0200Aait\u2B88\u2B8B\u2B9D\u2BA7r\xF2\u2988rr\u0180;cw\u2B94\u2B95\u2B99\u619B;\uC000\u2933\u0338;\uC000\u219D\u0338ghtarrow\xBB\u2B95ri\u0100;e\u0CCB\u0CD6\u0380chimpqu\u2BBD\u2BCD\u2BD9\u2B04\u0B78\u2BE4\u2BEF\u0200;cer\u0D32\u2BC6\u0D37\u2BC9u\xE5\u0D45;\uC000\u{1D4C3}ort\u026D\u2B05\0\0\u2BD6ar\xE1\u2B56m\u0100;e\u0D6E\u2BDF\u0100;q\u0D74\u0D73su\u0100bp\u2BEB\u2BED\xE5\u0CF8\xE5\u0D0B\u0180bcp\u2BF6\u2C11\u2C19\u0200;Ees\u2BFF\u2C00\u0D22\u2C04\u6284;\uC000\u2AC5\u0338et\u0100;e\u0D1B\u2C0Bq\u0100;q\u0D23\u2C00c\u0100;e\u0D32\u2C17\xF1\u0D38\u0200;Ees\u2C22\u2C23\u0D5F\u2C27\u6285;\uC000\u2AC6\u0338et\u0100;e\u0D58\u2C2Eq\u0100;q\u0D60\u2C23\u0200gilr\u2C3D\u2C3F\u2C45\u2C47\xEC\u0BD7lde\u803B\xF1\u40F1\xE7\u0C43iangle\u0100lr\u2C52\u2C5Ceft\u0100;e\u0C1A\u2C5A\xF1\u0C26ight\u0100;e\u0CCB\u2C65\xF1\u0CD7\u0100;m\u2C6C\u2C6D\u43BD\u0180;es\u2C74\u2C75\u2C79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2C8F\u2C94\u2C99\u2C9E\u2CA3\u2CB0\u2CB6\u2CD3\u2CE3ash;\u62ADarr;\u6904p;\uC000\u224D\u20D2ash;\u62AC\u0100et\u2CA8\u2CAC;\uC000\u2265\u20D2;\uC000>\u20D2nfin;\u69DE\u0180Aet\u2CBD\u2CC1\u2CC5rr;\u6902;\uC000\u2264\u20D2\u0100;r\u2CCA\u2CCD\uC000<\u20D2ie;\uC000\u22B4\u20D2\u0100At\u2CD8\u2CDCrr;\u6903rie;\uC000\u22B5\u20D2im;\uC000\u223C\u20D2\u0180Aan\u2CF0\u2CF4\u2D02rr;\u61D6r\u0100hr\u2CFA\u2CFDk;\u6923\u0100;o\u13E7\u13E5ear;\u6927\u1253\u1A95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2D2D\0\u2D38\u2D48\u2D60\u2D65\u2D72\u2D84\u1B07\0\0\u2D8D\u2DAB\0\u2DC8\u2DCE\0\u2DDC\u2E19\u2E2B\u2E3E\u2E43\u0100cs\u2D31\u1A97ute\u803B\xF3\u40F3\u0100iy\u2D3C\u2D45r\u0100;c\u1A9E\u2D42\u803B\xF4\u40F4;\u443E\u0280abios\u1AA0\u2D52\u2D57\u01C8\u2D5Alac;\u4151v;\u6A38old;\u69BClig;\u4153\u0100cr\u2D69\u2D6Dir;\u69BF;\uC000\u{1D52C}\u036F\u2D79\0\0\u2D7C\0\u2D82n;\u42DBave\u803B\xF2\u40F2;\u69C1\u0100bm\u2D88\u0DF4ar;\u69B5\u0200acit\u2D95\u2D98\u2DA5\u2DA8r\xF2\u1A80\u0100ir\u2D9D\u2DA0r;\u69BEoss;\u69BBn\xE5\u0E52;\u69C0\u0180aei\u2DB1\u2DB5\u2DB9cr;\u414Dga;\u43C9\u0180cdn\u2DC0\u2DC5\u01CDron;\u43BF;\u69B6pf;\uC000\u{1D560}\u0180ael\u2DD4\u2DD7\u01D2r;\u69B7rp;\u69B9\u0380;adiosv\u2DEA\u2DEB\u2DEE\u2E08\u2E0D\u2E10\u2E16\u6228r\xF2\u1A86\u0200;efm\u2DF7\u2DF8\u2E02\u2E05\u6A5Dr\u0100;o\u2DFE\u2DFF\u6134f\xBB\u2DFF\u803B\xAA\u40AA\u803B\xBA\u40BAgof;\u62B6r;\u6A56lope;\u6A57;\u6A5B\u0180clo\u2E1F\u2E21\u2E27\xF2\u2E01ash\u803B\xF8\u40F8l;\u6298i\u016C\u2E2F\u2E34de\u803B\xF5\u40F5es\u0100;a\u01DB\u2E3As;\u6A36ml\u803B\xF6\u40F6bar;\u633D\u0AE1\u2E5E\0\u2E7D\0\u2E80\u2E9D\0\u2EA2\u2EB9\0\0\u2ECB\u0E9C\0\u2F13\0\0\u2F2B\u2FBC\0\u2FC8r\u0200;ast\u0403\u2E67\u2E72\u0E85\u8100\xB6;l\u2E6D\u2E6E\u40B6le\xEC\u0403\u0269\u2E78\0\0\u2E7Bm;\u6AF3;\u6AFDy;\u443Fr\u0280cimpt\u2E8B\u2E8F\u2E93\u1865\u2E97nt;\u4025od;\u402Eil;\u6030enk;\u6031r;\uC000\u{1D52D}\u0180imo\u2EA8\u2EB0\u2EB4\u0100;v\u2EAD\u2EAE\u43C6;\u43D5ma\xF4\u0A76ne;\u660E\u0180;tv\u2EBF\u2EC0\u2EC8\u43C0chfork\xBB\u1FFD;\u43D6\u0100au\u2ECF\u2EDFn\u0100ck\u2ED5\u2EDDk\u0100;h\u21F4\u2EDB;\u610E\xF6\u21F4s\u0480;abcdemst\u2EF3\u2EF4\u1908\u2EF9\u2EFD\u2F04\u2F06\u2F0A\u2F0E\u402Bcir;\u6A23ir;\u6A22\u0100ou\u1D40\u2F02;\u6A25;\u6A72n\u80BB\xB1\u0E9Dim;\u6A26wo;\u6A27\u0180ipu\u2F19\u2F20\u2F25ntint;\u6A15f;\uC000\u{1D561}nd\u803B\xA3\u40A3\u0500;Eaceinosu\u0EC8\u2F3F\u2F41\u2F44\u2F47\u2F81\u2F89\u2F92\u2F7E\u2FB6;\u6AB3p;\u6AB7u\xE5\u0ED9\u0100;c\u0ECE\u2F4C\u0300;acens\u0EC8\u2F59\u2F5F\u2F66\u2F68\u2F7Eppro\xF8\u2F43urlye\xF1\u0ED9\xF1\u0ECE\u0180aes\u2F6F\u2F76\u2F7Approx;\u6AB9qq;\u6AB5im;\u62E8i\xED\u0EDFme\u0100;s\u2F88\u0EAE\u6032\u0180Eas\u2F78\u2F90\u2F7A\xF0\u2F75\u0180dfp\u0EEC\u2F99\u2FAF\u0180als\u2FA0\u2FA5\u2FAAlar;\u632Eine;\u6312urf;\u6313\u0100;t\u0EFB\u2FB4\xEF\u0EFBrel;\u62B0\u0100ci\u2FC0\u2FC5r;\uC000\u{1D4C5};\u43C8ncsp;\u6008\u0300fiopsu\u2FDA\u22E2\u2FDF\u2FE5\u2FEB\u2FF1r;\uC000\u{1D52E}pf;\uC000\u{1D562}rime;\u6057cr;\uC000\u{1D4C6}\u0180aeo\u2FF8\u3009\u3013t\u0100ei\u2FFE\u3005rnion\xF3\u06B0nt;\u6A16st\u0100;e\u3010\u3011\u403F\xF1\u1F19\xF4\u0F14\u0A80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30E0\u310E\u312B\u3147\u3162\u3172\u318E\u3206\u3215\u3224\u3229\u3258\u326E\u3272\u3290\u32B0\u32B7\u0180art\u3047\u304A\u304Cr\xF2\u10B3\xF2\u03DDail;\u691Car\xF2\u1C65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307F\u308F\u3094\u30CC\u0100eu\u306D\u3071;\uC000\u223D\u0331te;\u4155i\xE3\u116Emptyv;\u69B3g\u0200;del\u0FD1\u3089\u308B\u308D;\u6992;\u69A5\xE5\u0FD1uo\u803B\xBB\u40BBr\u0580;abcfhlpstw\u0FDC\u30AC\u30AF\u30B7\u30B9\u30BC\u30BE\u30C0\u30C3\u30C7\u30CAp;\u6975\u0100;f\u0FE0\u30B4s;\u6920;\u6933s;\u691E\xEB\u225D\xF0\u272El;\u6945im;\u6974l;\u61A3;\u619D\u0100ai\u30D1\u30D5il;\u691Ao\u0100;n\u30DB\u30DC\u6236al\xF3\u0F1E\u0180abr\u30E7\u30EA\u30EEr\xF2\u17E5rk;\u6773\u0100ak\u30F3\u30FDc\u0100ek\u30F9\u30FB;\u407D;\u405D\u0100es\u3102\u3104;\u698Cl\u0100du\u310A\u310C;\u698E;\u6990\u0200aeuy\u3117\u311C\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xEC\u0FF2\xE2\u30FA;\u4440\u0200clqs\u3134\u3137\u313D\u3144a;\u6937dhar;\u6969uo\u0100;r\u020E\u020Dh;\u61B3\u0180acg\u314E\u315F\u0F44l\u0200;ips\u0F78\u3158\u315B\u109Cn\xE5\u10BBar\xF4\u0FA9t;\u65AD\u0180ilr\u3169\u1023\u316Esht;\u697D;\uC000\u{1D52F}\u0100ao\u3177\u3186r\u0100du\u317D\u317F\xBB\u047B\u0100;l\u1091\u3184;\u696C\u0100;v\u318B\u318C\u43C1;\u43F1\u0180gns\u3195\u31F9\u31FCht\u0300ahlrst\u31A4\u31B0\u31C2\u31D8\u31E4\u31EErrow\u0100;t\u0FDC\u31ADa\xE9\u30C8arpoon\u0100du\u31BB\u31BFow\xEE\u317Ep\xBB\u1092eft\u0100ah\u31CA\u31D0rrow\xF3\u0FEAarpoon\xF3\u0551ightarrows;\u61C9quigarro\xF7\u30CBhreetimes;\u62CCg;\u42DAingdotse\xF1\u1F32\u0180ahm\u320D\u3210\u3213r\xF2\u0FEAa\xF2\u0551;\u600Foust\u0100;a\u321E\u321F\u63B1che\xBB\u321Fmid;\u6AEE\u0200abpt\u3232\u323D\u3240\u3252\u0100nr\u3237\u323Ag;\u67EDr;\u61FEr\xEB\u1003\u0180afl\u3247\u324A\u324Er;\u6986;\uC000\u{1D563}us;\u6A2Eimes;\u6A35\u0100ap\u325D\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6A12ar\xF2\u31E3\u0200achq\u327B\u3280\u10BC\u3285quo;\u603Ar;\uC000\u{1D4C7}\u0100bu\u30FB\u328Ao\u0100;r\u0214\u0213\u0180hir\u3297\u329B\u32A0re\xE5\u31F8mes;\u62CAi\u0200;efl\u32AA\u1059\u1821\u32AB\u65B9tri;\u69CEluhar;\u6968;\u611E\u0D61\u32D5\u32DB\u32DF\u332C\u3338\u3371\0\u337A\u33A4\0\0\u33EC\u33F0\0\u3428\u3448\u345A\u34AD\u34B1\u34CA\u34F1\0\u3616\0\0\u3633cute;\u415Bqu\xEF\u27BA\u0500;Eaceinpsy\u11ED\u32F3\u32F5\u32FF\u3302\u330B\u330F\u331F\u3326\u3329;\u6AB4\u01F0\u32FA\0\u32FC;\u6AB8on;\u4161u\xE5\u11FE\u0100;d\u11F3\u3307il;\u415Frc;\u415D\u0180Eas\u3316\u3318\u331B;\u6AB6p;\u6ABAim;\u62E9olint;\u6A13i\xED\u1204;\u4441ot\u0180;be\u3334\u1D47\u3335\u62C5;\u6A66\u0380Aacmstx\u3346\u334A\u3357\u335B\u335E\u3363\u336Drr;\u61D8r\u0100hr\u3350\u3352\xEB\u2228\u0100;o\u0A36\u0A34t\u803B\xA7\u40A7i;\u403Bwar;\u6929m\u0100in\u3369\xF0nu\xF3\xF1t;\u6736r\u0100;o\u3376\u2055\uC000\u{1D530}\u0200acoy\u3382\u3386\u3391\u33A0rp;\u666F\u0100hy\u338B\u338Fcy;\u4449;\u4448rt\u026D\u3399\0\0\u339Ci\xE4\u1464ara\xEC\u2E6F\u803B\xAD\u40AD\u0100gm\u33A8\u33B4ma\u0180;fv\u33B1\u33B2\u33B2\u43C3;\u43C2\u0400;deglnpr\u12AB\u33C5\u33C9\u33CE\u33D6\u33DE\u33E1\u33E6ot;\u6A6A\u0100;q\u12B1\u12B0\u0100;E\u33D3\u33D4\u6A9E;\u6AA0\u0100;E\u33DB\u33DC\u6A9D;\u6A9Fe;\u6246lus;\u6A24arr;\u6972ar\xF2\u113D\u0200aeit\u33F8\u3408\u340F\u3417\u0100ls\u33FD\u3404lsetm\xE9\u336Ahp;\u6A33parsl;\u69E4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341C\u341D\u6AAA\u0100;s\u3422\u3423\u6AAC;\uC000\u2AAC\uFE00\u0180flp\u342E\u3433\u3442tcy;\u444C\u0100;b\u3438\u3439\u402F\u0100;a\u343E\u343F\u69C4r;\u633Ff;\uC000\u{1D564}a\u0100dr\u344D\u0402es\u0100;u\u3454\u3455\u6660it\xBB\u3455\u0180csu\u3460\u3479\u349F\u0100au\u3465\u346Fp\u0100;s\u1188\u346B;\uC000\u2293\uFE00p\u0100;s\u11B4\u3475;\uC000\u2294\uFE00u\u0100bp\u347F\u348F\u0180;es\u1197\u119C\u3486et\u0100;e\u1197\u348D\xF1\u119D\u0180;es\u11A8\u11AD\u3496et\u0100;e\u11A8\u349D\xF1\u11AE\u0180;af\u117B\u34A6\u05B0r\u0165\u34AB\u05B1\xBB\u117Car\xF2\u1148\u0200cemt\u34B9\u34BE\u34C2\u34C5r;\uC000\u{1D4C8}tm\xEE\xF1i\xEC\u3415ar\xE6\u11BE\u0100ar\u34CE\u34D5r\u0100;f\u34D4\u17BF\u6606\u0100an\u34DA\u34EDight\u0100ep\u34E3\u34EApsilo\xEE\u1EE0h\xE9\u2EAFs\xBB\u2852\u0280bcmnp\u34FB\u355E\u1209\u358B\u358E\u0480;Edemnprs\u350E\u350F\u3511\u3515\u351E\u3523\u352C\u3531\u3536\u6282;\u6AC5ot;\u6ABD\u0100;d\u11DA\u351Aot;\u6AC3ult;\u6AC1\u0100Ee\u3528\u352A;\u6ACB;\u628Alus;\u6ABFarr;\u6979\u0180eiu\u353D\u3552\u3555t\u0180;en\u350E\u3545\u354Bq\u0100;q\u11DA\u350Feq\u0100;q\u352B\u3528m;\u6AC7\u0100bp\u355A\u355C;\u6AD5;\u6AD3c\u0300;acens\u11ED\u356C\u3572\u3579\u357B\u3326ppro\xF8\u32FAurlye\xF1\u11FE\xF1\u11F3\u0180aes\u3582\u3588\u331Bppro\xF8\u331Aq\xF1\u3317g;\u666A\u0680123;Edehlmnps\u35A9\u35AC\u35AF\u121C\u35B2\u35B4\u35C0\u35C9\u35D5\u35DA\u35DF\u35E8\u35ED\u803B\xB9\u40B9\u803B\xB2\u40B2\u803B\xB3\u40B3;\u6AC6\u0100os\u35B9\u35BCt;\u6ABEub;\u6AD8\u0100;d\u1222\u35C5ot;\u6AC4s\u0100ou\u35CF\u35D2l;\u67C9b;\u6AD7arr;\u697Bult;\u6AC2\u0100Ee\u35E4\u35E6;\u6ACC;\u628Blus;\u6AC0\u0180eiu\u35F4\u3609\u360Ct\u0180;en\u121C\u35FC\u3602q\u0100;q\u1222\u35B2eq\u0100;q\u35E7\u35E4m;\u6AC8\u0100bp\u3611\u3613;\u6AD4;\u6AD6\u0180Aan\u361C\u3620\u362Drr;\u61D9r\u0100hr\u3626\u3628\xEB\u222E\u0100;o\u0A2B\u0A29war;\u692Alig\u803B\xDF\u40DF\u0BE1\u3651\u365D\u3660\u12CE\u3673\u3679\0\u367E\u36C2\0\0\0\0\0\u36DB\u3703\0\u3709\u376C\0\0\0\u3787\u0272\u3656\0\0\u365Bget;\u6316;\u43C4r\xEB\u0E5F\u0180aey\u3666\u366B\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uC000\u{1D531}\u0200eiko\u3686\u369D\u36B5\u36BC\u01F2\u368B\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369B\u43B8ym;\u43D1\u0100cn\u36A2\u36B2k\u0100as\u36A8\u36AEppro\xF8\u12C1im\xBB\u12ACs\xF0\u129E\u0100as\u36BA\u36AE\xF0\u12C1rn\u803B\xFE\u40FE\u01EC\u031F\u36C6\u22E7es\u8180\xD7;bd\u36CF\u36D0\u36D8\u40D7\u0100;a\u190F\u36D5r;\u6A31;\u6A30\u0180eps\u36E1\u36E3\u3700\xE1\u2A4D\u0200;bcf\u0486\u36EC\u36F0\u36F4ot;\u6336ir;\u6AF1\u0100;o\u36F9\u36FC\uC000\u{1D565}rk;\u6ADA\xE1\u3362rime;\u6034\u0180aip\u370F\u3712\u3764d\xE5\u1248\u0380adempst\u3721\u374D\u3740\u3751\u3757\u375C\u375Fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65B5own\xBB\u1DBBeft\u0100;e\u2800\u373E\xF1\u092E;\u625Cight\u0100;e\u32AA\u374B\xF1\u105Aot;\u65ECinus;\u6A3Alus;\u6A39b;\u69CDime;\u6A3Bezium;\u63E2\u0180cht\u3772\u377D\u3781\u0100ry\u3777\u377B;\uC000\u{1D4C9};\u4446cy;\u445Brok;\u4167\u0100io\u378B\u378Ex\xF4\u1777head\u0100lr\u3797\u37A0eftarro\xF7\u084Fightarrow\xBB\u0F5D\u0900AHabcdfghlmoprstuw\u37D0\u37D3\u37D7\u37E4\u37F0\u37FC\u380E\u381C\u3823\u3834\u3851\u385D\u386B\u38A9\u38CC\u38D2\u38EA\u38F6r\xF2\u03EDar;\u6963\u0100cr\u37DC\u37E2ute\u803B\xFA\u40FA\xF2\u1150r\u01E3\u37EA\0\u37EDy;\u445Eve;\u416D\u0100iy\u37F5\u37FArc\u803B\xFB\u40FB;\u4443\u0180abh\u3803\u3806\u380Br\xF2\u13ADlac;\u4171a\xF2\u13C3\u0100ir\u3813\u3818sht;\u697E;\uC000\u{1D532}rave\u803B\xF9\u40F9\u0161\u3827\u3831r\u0100lr\u382C\u382E\xBB\u0957\xBB\u1083lk;\u6580\u0100ct\u3839\u384D\u026F\u383F\0\0\u384Arn\u0100;e\u3845\u3846\u631Cr\xBB\u3846op;\u630Fri;\u65F8\u0100al\u3856\u385Acr;\u416B\u80BB\xA8\u0349\u0100gp\u3862\u3866on;\u4173f;\uC000\u{1D566}\u0300adhlsu\u114B\u3878\u387D\u1372\u3891\u38A0own\xE1\u13B3arpoon\u0100lr\u3888\u388Cef\xF4\u382Digh\xF4\u382Fi\u0180;hl\u3899\u389A\u389C\u43C5\xBB\u13FAon\xBB\u389Aparrows;\u61C8\u0180cit\u38B0\u38C4\u38C8\u026F\u38B6\0\0\u38C1rn\u0100;e\u38BC\u38BD\u631Dr\xBB\u38BDop;\u630Eng;\u416Fri;\u65F9cr;\uC000\u{1D4CA}\u0180dir\u38D9\u38DD\u38E2ot;\u62F0lde;\u4169i\u0100;f\u3730\u38E8\xBB\u1813\u0100am\u38EF\u38F2r\xF2\u38A8l\u803B\xFC\u40FCangle;\u69A7\u0780ABDacdeflnoprsz\u391C\u391F\u3929\u392D\u39B5\u39B8\u39BD\u39DF\u39E4\u39E8\u39F3\u39F9\u39FD\u3A01\u3A20r\xF2\u03F7ar\u0100;v\u3926\u3927\u6AE8;\u6AE9as\xE8\u03E1\u0100nr\u3932\u3937grt;\u699C\u0380eknprst\u34E3\u3946\u394B\u3952\u395D\u3964\u3996app\xE1\u2415othin\xE7\u1E96\u0180hir\u34EB\u2EC8\u3959op\xF4\u2FB5\u0100;h\u13B7\u3962\xEF\u318D\u0100iu\u3969\u396Dgm\xE1\u33B3\u0100bp\u3972\u3984setneq\u0100;q\u397D\u3980\uC000\u228A\uFE00;\uC000\u2ACB\uFE00setneq\u0100;q\u398F\u3992\uC000\u228B\uFE00;\uC000\u2ACC\uFE00\u0100hr\u399B\u399Fet\xE1\u369Ciangle\u0100lr\u39AA\u39AFeft\xBB\u0925ight\xBB\u1051y;\u4432ash\xBB\u1036\u0180elr\u39C4\u39D2\u39D7\u0180;be\u2DEA\u39CB\u39CFar;\u62BBq;\u625Alip;\u62EE\u0100bt\u39DC\u1468a\xF2\u1469r;\uC000\u{1D533}tr\xE9\u39AEsu\u0100bp\u39EF\u39F1\xBB\u0D1C\xBB\u0D59pf;\uC000\u{1D567}ro\xF0\u0EFBtr\xE9\u39B4\u0100cu\u3A06\u3A0Br;\uC000\u{1D4CB}\u0100bp\u3A10\u3A18n\u0100Ee\u3980\u3A16\xBB\u397En\u0100Ee\u3992\u3A1E\xBB\u3990igzag;\u699A\u0380cefoprs\u3A36\u3A3B\u3A56\u3A5B\u3A54\u3A61\u3A6Airc;\u4175\u0100di\u3A40\u3A51\u0100bg\u3A45\u3A49ar;\u6A5Fe\u0100;q\u15FA\u3A4F;\u6259erp;\u6118r;\uC000\u{1D534}pf;\uC000\u{1D568}\u0100;e\u1479\u3A66at\xE8\u1479cr;\uC000\u{1D4CC}\u0AE3\u178E\u3A87\0\u3A8B\0\u3A90\u3A9B\0\0\u3A9D\u3AA8\u3AAB\u3AAF\0\0\u3AC3\u3ACE\0\u3AD8\u17DC\u17DFtr\xE9\u17D1r;\uC000\u{1D535}\u0100Aa\u3A94\u3A97r\xF2\u03C3r\xF2\u09F6;\u43BE\u0100Aa\u3AA1\u3AA4r\xF2\u03B8r\xF2\u09EBa\xF0\u2713is;\u62FB\u0180dpt\u17A4\u3AB5\u3ABE\u0100fl\u3ABA\u17A9;\uC000\u{1D569}im\xE5\u17B2\u0100Aa\u3AC7\u3ACAr\xF2\u03CEr\xF2\u0A01\u0100cq\u3AD2\u17B8r;\uC000\u{1D4CD}\u0100pt\u17D6\u3ADCr\xE9\u17D4\u0400acefiosu\u3AF0\u3AFD\u3B08\u3B0C\u3B11\u3B15\u3B1B\u3B21c\u0100uy\u3AF6\u3AFBte\u803B\xFD\u40FD;\u444F\u0100iy\u3B02\u3B06rc;\u4177;\u444Bn\u803B\xA5\u40A5r;\uC000\u{1D536}cy;\u4457pf;\uC000\u{1D56A}cr;\uC000\u{1D4CE}\u0100cm\u3B26\u3B29y;\u444El\u803B\xFF\u40FF\u0500acdefhiosw\u3B42\u3B48\u3B54\u3B58\u3B64\u3B69\u3B6D\u3B74\u3B7A\u3B80cute;\u417A\u0100ay\u3B4D\u3B52ron;\u417E;\u4437ot;\u417C\u0100et\u3B5D\u3B61tr\xE6\u155Fa;\u43B6r;\uC000\u{1D537}cy;\u4436grarr;\u61DDpf;\uC000\u{1D56B}cr;\uC000\u{1D4CF}\u0100jn\u3B85\u3B87;\u600Dj;\u600C'.split("").map(s=>s.charCodeAt(0)));var W5t=new Uint16Array("\u0200aglq \x1B\u026D\0\0p;\u4026os;\u4027t;\u403Et;\u403Cuot;\u4022".split("").map(s=>s.charCodeAt(0)));var wye,Run=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),Aye=(wye=String.fromCodePoint)!==null&&wye!==void 0?wye:function(s){let o="";return s>65535&&(s-=65536,o+=String.fromCharCode(s>>>10&1023|55296),s=56320|s&1023),o+=String.fromCharCode(s),o};function vye(s){var o;return s>=55296&&s<=57343||s>1114111?65533:(o=Run.get(s))!==null&&o!==void 0?o:s}var A0;(function(s){s[s.NUM=35]="NUM",s[s.SEMI=59]="SEMI",s[s.EQUALS=61]="EQUALS",s[s.ZERO=48]="ZERO",s[s.NINE=57]="NINE",s[s.LOWER_A=97]="LOWER_A",s[s.LOWER_F=102]="LOWER_F",s[s.LOWER_X=120]="LOWER_X",s[s.LOWER_Z=122]="LOWER_Z",s[s.UPPER_A=65]="UPPER_A",s[s.UPPER_F=70]="UPPER_F",s[s.UPPER_Z=90]="UPPER_Z"})(A0||(A0={}));var Pun=32,S7;(function(s){s[s.VALUE_LENGTH=49152]="VALUE_LENGTH",s[s.BRANCH_LENGTH=16256]="BRANCH_LENGTH",s[s.JUMP_TABLE=127]="JUMP_TABLE"})(S7||(S7={}));function yye(s){return s>=A0.ZERO&&s<=A0.NINE}function Fun(s){return s>=A0.UPPER_A&&s<=A0.UPPER_F||s>=A0.LOWER_A&&s<=A0.LOWER_F}function $un(s){return s>=A0.UPPER_A&&s<=A0.UPPER_Z||s>=A0.LOWER_A&&s<=A0.LOWER_Z||yye(s)}function Hun(s){return s===A0.EQUALS||$un(s)}var w0;(function(s){s[s.EntityStart=0]="EntityStart",s[s.NumericStart=1]="NumericStart",s[s.NumericDecimal=2]="NumericDecimal",s[s.NumericHex=3]="NumericHex",s[s.NamedEntity=4]="NamedEntity"})(w0||(w0={}));var d3;(function(s){s[s.Legacy=0]="Legacy",s[s.Strict=1]="Strict",s[s.Attribute=2]="Attribute"})(d3||(d3={}));var Uee=class{constructor(o,a,d){this.decodeTree=o,this.emitCodePoint=a,this.errors=d,this.state=w0.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=d3.Strict}startEntity(o){this.decodeMode=o,this.state=w0.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(o,a){switch(this.state){case w0.EntityStart:return o.charCodeAt(a)===A0.NUM?(this.state=w0.NumericStart,this.consumed+=1,this.stateNumericStart(o,a+1)):(this.state=w0.NamedEntity,this.stateNamedEntity(o,a));case w0.NumericStart:return this.stateNumericStart(o,a);case w0.NumericDecimal:return this.stateNumericDecimal(o,a);case w0.NumericHex:return this.stateNumericHex(o,a);case w0.NamedEntity:return this.stateNamedEntity(o,a)}}stateNumericStart(o,a){return a>=o.length?-1:(o.charCodeAt(a)|Pun)===A0.LOWER_X?(this.state=w0.NumericHex,this.consumed+=1,this.stateNumericHex(o,a+1)):(this.state=w0.NumericDecimal,this.stateNumericDecimal(o,a))}addToNumericResult(o,a,d,g){if(a!==d){let m=d-a;this.result=this.result*Math.pow(g,m)+parseInt(o.substr(a,m),g),this.consumed+=m}}stateNumericHex(o,a){let d=a;for(;a<o.length;){let g=o.charCodeAt(a);if(yye(g)||Fun(g))a+=1;else return this.addToNumericResult(o,d,a,16),this.emitNumericEntity(g,3)}return this.addToNumericResult(o,d,a,16),-1}stateNumericDecimal(o,a){let d=a;for(;a<o.length;){let g=o.charCodeAt(a);if(yye(g))a+=1;else return this.addToNumericResult(o,d,a,10),this.emitNumericEntity(g,2)}return this.addToNumericResult(o,d,a,10),-1}emitNumericEntity(o,a){var d;if(this.consumed<=a)return(d=this.errors)===null||d===void 0||d.absenceOfDigitsInNumericCharacterReference(this.consumed),0;if(o===A0.SEMI)this.consumed+=1;else if(this.decodeMode===d3.Strict)return 0;return this.emitCodePoint(vye(this.result),this.consumed),this.errors&&(o!==A0.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(o,a){let{decodeTree:d}=this,g=d[this.treeIndex],m=(g&S7.VALUE_LENGTH)>>14;for(;a<o.length;a++,this.excess++){let v=o.charCodeAt(a);if(this.treeIndex=Qun(d,g,this.treeIndex+Math.max(1,m),v),this.treeIndex<0)return this.result===0||this.decodeMode===d3.Attribute&&(m===0||Hun(v))?0:this.emitNotTerminatedNamedEntity();if(g=d[this.treeIndex],m=(g&S7.VALUE_LENGTH)>>14,m!==0){if(v===A0.SEMI)return this.emitNamedEntityData(this.treeIndex,m,this.consumed+this.excess);this.decodeMode!==d3.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var o;let{result:a,decodeTree:d}=this,g=(d[a]&S7.VALUE_LENGTH)>>14;return this.emitNamedEntityData(a,g,this.consumed),(o=this.errors)===null||o===void 0||o.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(o,a,d){let{decodeTree:g}=this;return this.emitCodePoint(a===1?g[o]&~S7.VALUE_LENGTH:g[o+1],d),a===3&&this.emitCodePoint(g[o+2],d),d}end(){var o;switch(this.state){case w0.NamedEntity:return this.result!==0&&(this.decodeMode!==d3.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case w0.NumericDecimal:return this.emitNumericEntity(0,2);case w0.NumericHex:return this.emitNumericEntity(0,3);case w0.NumericStart:return(o=this.errors)===null||o===void 0||o.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case w0.EntityStart:return 0}}};function Y5t(s){let o="",a=new Uee(s,d=>o+=Aye(d));return function(g,m){let v=0,A=0;for(;(A=g.indexOf("&",A))>=0;){o+=g.slice(v,A),a.startEntity(m);let T=a.write(g,A+1);if(T<0){v=A+a.end();break}v=A+T,A=T===0?v+1:v}let I=o+g.slice(v);return o="",I}}function Qun(s,o,a,d){let g=(o&S7.BRANCH_LENGTH)>>7,m=o&S7.JUMP_TABLE;if(g===0)return m!==0&&d===m?a:-1;if(m){let I=d-m;return I<0||I>=g?-1:s[a+I]-1}let v=a,A=v+g-1;for(;v<=A;){let I=v+A>>>1,T=s[I];if(T<d)v=I+1;else if(T>d)A=I-1;else return s[I+g]}return-1}var X5t=Y5t(K5t),Hzn=Y5t(W5t);function sM(s,o=d3.Legacy){return X5t(s,o)}function bF(s){return X5t(s,d3.Strict)}function zee(s){for(let o=1;o<s.length;o++)s[o][0]+=s[o-1][0]+1;return s}var Gun=new Map(zee([[9,"	"],[0,"
"],[22,"!"],[0,"""],[0,"#"],[0,"$"],[0,"%"],[0,"&"],[0,"'"],[0,"("],[0,")"],[0,"*"],[0,"+"],[0,","],[1,"."],[0,"/"],[10,":"],[0,";"],[0,{v:"<",n:8402,o:"<⃒"}],[0,{v:"=",n:8421,o:"=⃥"}],[0,{v:">",n:8402,o:">⃒"}],[0,"?"],[0,"@"],[26,"["],[0,"\"],[0,"]"],[0,"^"],[0,"_"],[0,"`"],[5,{n:106,o:"fj"}],[20,"{"],[0,"|"],[0,"}"],[34," "],[0,"¡"],[0,"¢"],[0,"£"],[0,"¤"],[0,"¥"],[0,"¦"],[0,"§"],[0,"¨"],[0,"©"],[0,"ª"],[0,"«"],[0,"¬"],[0,"­"],[0,"®"],[0,"¯"],[0,"°"],[0,"±"],[0,"²"],[0,"³"],[0,"´"],[0,"µ"],[0,"¶"],[0,"·"],[0,"¸"],[0,"¹"],[0,"º"],[0,"»"],[0,"¼"],[0,"½"],[0,"¾"],[0,"¿"],[0,"À"],[0,"Á"],[0,"Â"],[0,"Ã"],[0,"Ä"],[0,"Å"],[0,"Æ"],[0,"Ç"],[0,"È"],[0,"É"],[0,"Ê"],[0,"Ë"],[0,"Ì"],[0,"Í"],[0,"Î"],[0,"Ï"],[0,"Ð"],[0,"Ñ"],[0,"Ò"],[0,"Ó"],[0,"Ô"],[0,"Õ"],[0,"Ö"],[0,"×"],[0,"Ø"],[0,"Ù"],[0,"Ú"],[0,"Û"],[0,"Ü"],[0,"Ý"],[0,"Þ"],[0,"ß"],[0,"à"],[0,"á"],[0,"â"],[0,"ã"],[0,"ä"],[0,"å"],[0,"æ"],[0,"ç"],[0,"è"],[0,"é"],[0,"ê"],[0,"ë"],[0,"ì"],[0,"í"],[0,"î"],[0,"ï"],[0,"ð"],[0,"ñ"],[0,"ò"],[0,"ó"],[0,"ô"],[0,"õ"],[0,"ö"],[0,"÷"],[0,"ø"],[0,"ù"],[0,"ú"],[0,"û"],[0,"ü"],[0,"ý"],[0,"þ"],[0,"ÿ"],[0,"Ā"],[0,"ā"],[0,"Ă"],[0,"ă"],[0,"Ą"],[0,"ą"],[0,"Ć"],[0,"ć"],[0,"Ĉ"],[0,"ĉ"],[0,"Ċ"],[0,"ċ"],[0,"Č"],[0,"č"],[0,"Ď"],[0,"ď"],[0,"Đ"],[0,"đ"],[0,"Ē"],[0,"ē"],[2,"Ė"],[0,"ė"],[0,"Ę"],[0,"ę"],[0,"Ě"],[0,"ě"],[0,"Ĝ"],[0,"ĝ"],[0,"Ğ"],[0,"ğ"],[0,"Ġ"],[0,"ġ"],[0,"Ģ"],[1,"Ĥ"],[0,"ĥ"],[0,"Ħ"],[0,"ħ"],[0,"Ĩ"],[0,"ĩ"],[0,"Ī"],[0,"ī"],[2,"Į"],[0,"į"],[0,"İ"],[0,"ı"],[0,"IJ"],[0,"ij"],[0,"Ĵ"],[0,"ĵ"],[0,"Ķ"],[0,"ķ"],[0,"ĸ"],[0,"Ĺ"],[0,"ĺ"],[0,"Ļ"],[0,"ļ"],[0,"Ľ"],[0,"ľ"],[0,"Ŀ"],[0,"ŀ"],[0,"Ł"],[0,"ł"],[0,"Ń"],[0,"ń"],[0,"Ņ"],[0,"ņ"],[0,"Ň"],[0,"ň"],[0,"ʼn"],[0,"Ŋ"],[0,"ŋ"],[0,"Ō"],[0,"ō"],[2,"Ő"],[0,"ő"],[0,"Œ"],[0,"œ"],[0,"Ŕ"],[0,"ŕ"],[0,"Ŗ"],[0,"ŗ"],[0,"Ř"],[0,"ř"],[0,"Ś"],[0,"ś"],[0,"Ŝ"],[0,"ŝ"],[0,"Ş"],[0,"ş"],[0,"Š"],[0,"š"],[0,"Ţ"],[0,"ţ"],[0,"Ť"],[0,"ť"],[0,"Ŧ"],[0,"ŧ"],[0,"Ũ"],[0,"ũ"],[0,"Ū"],[0,"ū"],[0,"Ŭ"],[0,"ŭ"],[0,"Ů"],[0,"ů"],[0,"Ű"],[0,"ű"],[0,"Ų"],[0,"ų"],[0,"Ŵ"],[0,"ŵ"],[0,"Ŷ"],[0,"ŷ"],[0,"Ÿ"],[0,"Ź"],[0,"ź"],[0,"Ż"],[0,"ż"],[0,"Ž"],[0,"ž"],[19,"ƒ"],[34,"Ƶ"],[63,"ǵ"],[65,"ȷ"],[142,"ˆ"],[0,"ˇ"],[16,"˘"],[0,"˙"],[0,"˚"],[0,"˛"],[0,"˜"],[0,"˝"],[51,"̑"],[127,"Α"],[0,"Β"],[0,"Γ"],[0,"Δ"],[0,"Ε"],[0,"Ζ"],[0,"Η"],[0,"Θ"],[0,"Ι"],[0,"Κ"],[0,"Λ"],[0,"Μ"],[0,"Ν"],[0,"Ξ"],[0,"Ο"],[0,"Π"],[0,"Ρ"],[1,"Σ"],[0,"Τ"],[0,"Υ"],[0,"Φ"],[0,"Χ"],[0,"Ψ"],[0,"Ω"],[7,"α"],[0,"β"],[0,"γ"],[0,"δ"],[0,"ε"],[0,"ζ"],[0,"η"],[0,"θ"],[0,"ι"],[0,"κ"],[0,"λ"],[0,"μ"],[0,"ν"],[0,"ξ"],[0,"ο"],[0,"π"],[0,"ρ"],[0,"ς"],[0,"σ"],[0,"τ"],[0,"υ"],[0,"φ"],[0,"χ"],[0,"ψ"],[0,"ω"],[7,"ϑ"],[0,"ϒ"],[2,"ϕ"],[0,"ϖ"],[5,"Ϝ"],[0,"ϝ"],[18,"ϰ"],[0,"ϱ"],[3,"ϵ"],[0,"϶"],[10,"Ё"],[0,"Ђ"],[0,"Ѓ"],[0,"Є"],[0,"Ѕ"],[0,"І"],[0,"Ї"],[0,"Ј"],[0,"Љ"],[0,"Њ"],[0,"Ћ"],[0,"Ќ"],[1,"Ў"],[0,"Џ"],[0,"А"],[0,"Б"],[0,"В"],[0,"Г"],[0,"Д"],[0,"Е"],[0,"Ж"],[0,"З"],[0,"И"],[0,"Й"],[0,"К"],[0,"Л"],[0,"М"],[0,"Н"],[0,"О"],[0,"П"],[0,"Р"],[0,"С"],[0,"Т"],[0,"У"],[0,"Ф"],[0,"Х"],[0,"Ц"],[0,"Ч"],[0,"Ш"],[0,"Щ"],[0,"Ъ"],[0,"Ы"],[0,"Ь"],[0,"Э"],[0,"Ю"],[0,"Я"],[0,"а"],[0,"б"],[0,"в"],[0,"г"],[0,"д"],[0,"е"],[0,"ж"],[0,"з"],[0,"и"],[0,"й"],[0,"к"],[0,"л"],[0,"м"],[0,"н"],[0,"о"],[0,"п"],[0,"р"],[0,"с"],[0,"т"],[0,"у"],[0,"ф"],[0,"х"],[0,"ц"],[0,"ч"],[0,"ш"],[0,"щ"],[0,"ъ"],[0,"ы"],[0,"ь"],[0,"э"],[0,"ю"],[0,"я"],[1,"ё"],[0,"ђ"],[0,"ѓ"],[0,"є"],[0,"ѕ"],[0,"і"],[0,"ї"],[0,"ј"],[0,"љ"],[0,"њ"],[0,"ћ"],[0,"ќ"],[1,"ў"],[0,"џ"],[7074," "],[0," "],[0," "],[0," "],[1," "],[0," "],[0," "],[0," "],[0,"​"],[0,"‌"],[0,"‍"],[0,"‎"],[0,"‏"],[0,"‐"],[2,"–"],[0,"—"],[0,"―"],[0,"‖"],[1,"‘"],[0,"’"],[0,"‚"],[1,"“"],[0,"”"],[0,"„"],[1,"†"],[0,"‡"],[0,"•"],[2,"‥"],[0,"…"],[9,"‰"],[0,"‱"],[0,"′"],[0,"″"],[0,"‴"],[0,"‵"],[3,"‹"],[0,"›"],[3,"‾"],[2,"⁁"],[1,"⁃"],[0,"⁄"],[10,"⁏"],[7,"⁗"],[7,{v:" ",n:8202,o:"  "}],[0,"⁠"],[0,"⁡"],[0,"⁢"],[0,"⁣"],[72,"€"],[46,"⃛"],[0,"⃜"],[37,"ℂ"],[2,"℅"],[4,"ℊ"],[0,"ℋ"],[0,"ℌ"],[0,"ℍ"],[0,"ℎ"],[0,"ℏ"],[0,"ℐ"],[0,"ℑ"],[0,"ℒ"],[0,"ℓ"],[1,"ℕ"],[0,"№"],[0,"℗"],[0,"℘"],[0,"ℙ"],[0,"ℚ"],[0,"ℛ"],[0,"ℜ"],[0,"ℝ"],[0,"℞"],[3,"™"],[1,"ℤ"],[2,"℧"],[0,"ℨ"],[0,"℩"],[2,"ℬ"],[0,"ℭ"],[1,"ℯ"],[0,"ℰ"],[0,"ℱ"],[1,"ℳ"],[0,"ℴ"],[0,"ℵ"],[0,"ℶ"],[0,"ℷ"],[0,"ℸ"],[12,"ⅅ"],[0,"ⅆ"],[0,"ⅇ"],[0,"ⅈ"],[10,"⅓"],[0,"⅔"],[0,"⅕"],[0,"⅖"],[0,"⅗"],[0,"⅘"],[0,"⅙"],[0,"⅚"],[0,"⅛"],[0,"⅜"],[0,"⅝"],[0,"⅞"],[49,"←"],[0,"↑"],[0,"→"],[0,"↓"],[0,"↔"],[0,"↕"],[0,"↖"],[0,"↗"],[0,"↘"],[0,"↙"],[0,"↚"],[0,"↛"],[1,{v:"↝",n:824,o:"↝̸"}],[0,"↞"],[0,"↟"],[0,"↠"],[0,"↡"],[0,"↢"],[0,"↣"],[0,"↤"],[0,"↥"],[0,"↦"],[0,"↧"],[1,"↩"],[0,"↪"],[0,"↫"],[0,"↬"],[0,"↭"],[0,"↮"],[1,"↰"],[0,"↱"],[0,"↲"],[0,"↳"],[1,"↵"],[0,"↶"],[0,"↷"],[2,"↺"],[0,"↻"],[0,"↼"],[0,"↽"],[0,"↾"],[0,"↿"],[0,"⇀"],[0,"⇁"],[0,"⇂"],[0,"⇃"],[0,"⇄"],[0,"⇅"],[0,"⇆"],[0,"⇇"],[0,"⇈"],[0,"⇉"],[0,"⇊"],[0,"⇋"],[0,"⇌"],[0,"⇍"],[0,"⇎"],[0,"⇏"],[0,"⇐"],[0,"⇑"],[0,"⇒"],[0,"⇓"],[0,"⇔"],[0,"⇕"],[0,"⇖"],[0,"⇗"],[0,"⇘"],[0,"⇙"],[0,"⇚"],[0,"⇛"],[1,"⇝"],[6,"⇤"],[0,"⇥"],[15,"⇵"],[7,"⇽"],[0,"⇾"],[0,"⇿"],[0,"∀"],[0,"∁"],[0,{v:"∂",n:824,o:"∂̸"}],[0,"∃"],[0,"∄"],[0,"∅"],[1,"∇"],[0,"∈"],[0,"∉"],[1,"∋"],[0,"∌"],[2,"∏"],[0,"∐"],[0,"∑"],[0,"−"],[0,"∓"],[0,"∔"],[1,"∖"],[0,"∗"],[0,"∘"],[1,"√"],[2,"∝"],[0,"∞"],[0,"∟"],[0,{v:"∠",n:8402,o:"∠⃒"}],[0,"∡"],[0,"∢"],[0,"∣"],[0,"∤"],[0,"∥"],[0,"∦"],[0,"∧"],[0,"∨"],[0,{v:"∩",n:65024,o:"∩︀"}],[0,{v:"∪",n:65024,o:"∪︀"}],[0,"∫"],[0,"∬"],[0,"∭"],[0,"∮"],[0,"∯"],[0,"∰"],[0,"∱"],[0,"∲"],[0,"∳"],[0,"∴"],[0,"∵"],[0,"∶"],[0,"∷"],[0,"∸"],[1,"∺"],[0,"∻"],[0,{v:"∼",n:8402,o:"∼⃒"}],[0,{v:"∽",n:817,o:"∽̱"}],[0,{v:"∾",n:819,o:"∾̳"}],[0,"∿"],[0,"≀"],[0,"≁"],[0,{v:"≂",n:824,o:"≂̸"}],[0,"≃"],[0,"≄"],[0,"≅"],[0,"≆"],[0,"≇"],[0,"≈"],[0,"≉"],[0,"≊"],[0,{v:"≋",n:824,o:"≋̸"}],[0,"≌"],[0,{v:"≍",n:8402,o:"≍⃒"}],[0,{v:"≎",n:824,o:"≎̸"}],[0,{v:"≏",n:824,o:"≏̸"}],[0,{v:"≐",n:824,o:"≐̸"}],[0,"≑"],[0,"≒"],[0,"≓"],[0,"≔"],[0,"≕"],[0,"≖"],[0,"≗"],[1,"≙"],[0,"≚"],[1,"≜"],[2,"≟"],[0,"≠"],[0,{v:"≡",n:8421,o:"≡⃥"}],[0,"≢"],[1,{v:"≤",n:8402,o:"≤⃒"}],[0,{v:"≥",n:8402,o:"≥⃒"}],[0,{v:"≦",n:824,o:"≦̸"}],[0,{v:"≧",n:824,o:"≧̸"}],[0,{v:"≨",n:65024,o:"≨︀"}],[0,{v:"≩",n:65024,o:"≩︀"}],[0,{v:"≪",n:new Map(zee([[824,"≪̸"],[7577,"≪⃒"]]))}],[0,{v:"≫",n:new Map(zee([[824,"≫̸"],[7577,"≫⃒"]]))}],[0,"≬"],[0,"≭"],[0,"≮"],[0,"≯"],[0,"≰"],[0,"≱"],[0,"≲"],[0,"≳"],[0,"≴"],[0,"≵"],[0,"≶"],[0,"≷"],[0,"≸"],[0,"≹"],[0,"≺"],[0,"≻"],[0,"≼"],[0,"≽"],[0,"≾"],[0,{v:"≿",n:824,o:"≿̸"}],[0,"⊀"],[0,"⊁"],[0,{v:"⊂",n:8402,o:"⊂⃒"}],[0,{v:"⊃",n:8402,o:"⊃⃒"}],[0,"⊄"],[0,"⊅"],[0,"⊆"],[0,"⊇"],[0,"⊈"],[0,"⊉"],[0,{v:"⊊",n:65024,o:"⊊︀"}],[0,{v:"⊋",n:65024,o:"⊋︀"}],[1,"⊍"],[0,"⊎"],[0,{v:"⊏",n:824,o:"⊏̸"}],[0,{v:"⊐",n:824,o:"⊐̸"}],[0,"⊑"],[0,"⊒"],[0,{v:"⊓",n:65024,o:"⊓︀"}],[0,{v:"⊔",n:65024,o:"⊔︀"}],[0,"⊕"],[0,"⊖"],[0,"⊗"],[0,"⊘"],[0,"⊙"],[0,"⊚"],[0,"⊛"],[1,"⊝"],[0,"⊞"],[0,"⊟"],[0,"⊠"],[0,"⊡"],[0,"⊢"],[0,"⊣"],[0,"⊤"],[0,"⊥"],[1,"⊧"],[0,"⊨"],[0,"⊩"],[0,"⊪"],[0,"⊫"],[0,"⊬"],[0,"⊭"],[0,"⊮"],[0,"⊯"],[0,"⊰"],[1,"⊲"],[0,"⊳"],[0,{v:"⊴",n:8402,o:"⊴⃒"}],[0,{v:"⊵",n:8402,o:"⊵⃒"}],[0,"⊶"],[0,"⊷"],[0,"⊸"],[0,"⊹"],[0,"⊺"],[0,"⊻"],[1,"⊽"],[0,"⊾"],[0,"⊿"],[0,"⋀"],[0,"⋁"],[0,"⋂"],[0,"⋃"],[0,"⋄"],[0,"⋅"],[0,"⋆"],[0,"⋇"],[0,"⋈"],[0,"⋉"],[0,"⋊"],[0,"⋋"],[0,"⋌"],[0,"⋍"],[0,"⋎"],[0,"⋏"],[0,"⋐"],[0,"⋑"],[0,"⋒"],[0,"⋓"],[0,"⋔"],[0,"⋕"],[0,"⋖"],[0,"⋗"],[0,{v:"⋘",n:824,o:"⋘̸"}],[0,{v:"⋙",n:824,o:"⋙̸"}],[0,{v:"⋚",n:65024,o:"⋚︀"}],[0,{v:"⋛",n:65024,o:"⋛︀"}],[2,"⋞"],[0,"⋟"],[0,"⋠"],[0,"⋡"],[0,"⋢"],[0,"⋣"],[2,"⋦"],[0,"⋧"],[0,"⋨"],[0,"⋩"],[0,"⋪"],[0,"⋫"],[0,"⋬"],[0,"⋭"],[0,"⋮"],[0,"⋯"],[0,"⋰"],[0,"⋱"],[0,"⋲"],[0,"⋳"],[0,"⋴"],[0,{v:"⋵",n:824,o:"⋵̸"}],[0,"⋶"],[0,"⋷"],[1,{v:"⋹",n:824,o:"⋹̸"}],[0,"⋺"],[0,"⋻"],[0,"⋼"],[0,"⋽"],[0,"⋾"],[6,"⌅"],[0,"⌆"],[1,"⌈"],[0,"⌉"],[0,"⌊"],[0,"⌋"],[0,"⌌"],[0,"⌍"],[0,"⌎"],[0,"⌏"],[0,"⌐"],[1,"⌒"],[0,"⌓"],[1,"⌕"],[0,"⌖"],[5,"⌜"],[0,"⌝"],[0,"⌞"],[0,"⌟"],[2,"⌢"],[0,"⌣"],[9,"⌭"],[0,"⌮"],[7,"⌶"],[6,"⌽"],[1,"⌿"],[60,"⍼"],[51,"⎰"],[0,"⎱"],[2,"⎴"],[0,"⎵"],[0,"⎶"],[37,"⏜"],[0,"⏝"],[0,"⏞"],[0,"⏟"],[2,"⏢"],[4,"⏧"],[59,"␣"],[164,"Ⓢ"],[55,"─"],[1,"│"],[9,"┌"],[3,"┐"],[3,"└"],[3,"┘"],[3,"├"],[7,"┤"],[7,"┬"],[7,"┴"],[7,"┼"],[19,"═"],[0,"║"],[0,"╒"],[0,"╓"],[0,"╔"],[0,"╕"],[0,"╖"],[0,"╗"],[0,"╘"],[0,"╙"],[0,"╚"],[0,"╛"],[0,"╜"],[0,"╝"],[0,"╞"],[0,"╟"],[0,"╠"],[0,"╡"],[0,"╢"],[0,"╣"],[0,"╤"],[0,"╥"],[0,"╦"],[0,"╧"],[0,"╨"],[0,"╩"],[0,"╪"],[0,"╫"],[0,"╬"],[19,"▀"],[3,"▄"],[3,"█"],[8,"░"],[0,"▒"],[0,"▓"],[13,"□"],[8,"▪"],[0,"▫"],[1,"▭"],[0,"▮"],[2,"▱"],[1,"△"],[0,"▴"],[0,"▵"],[2,"▸"],[0,"▹"],[3,"▽"],[0,"▾"],[0,"▿"],[2,"◂"],[0,"◃"],[6,"◊"],[0,"○"],[32,"◬"],[2,"◯"],[8,"◸"],[0,"◹"],[0,"◺"],[0,"◻"],[0,"◼"],[8,"★"],[0,"☆"],[7,"☎"],[49,"♀"],[1,"♂"],[29,"♠"],[2,"♣"],[1,"♥"],[0,"♦"],[3,"♪"],[2,"♭"],[0,"♮"],[0,"♯"],[163,"✓"],[3,"✗"],[8,"✠"],[21,"✶"],[33,"❘"],[25,"❲"],[0,"❳"],[84,"⟈"],[0,"⟉"],[28,"⟦"],[0,"⟧"],[0,"⟨"],[0,"⟩"],[0,"⟪"],[0,"⟫"],[0,"⟬"],[0,"⟭"],[7,"⟵"],[0,"⟶"],[0,"⟷"],[0,"⟸"],[0,"⟹"],[0,"⟺"],[1,"⟼"],[2,"⟿"],[258,"⤂"],[0,"⤃"],[0,"⤄"],[0,"⤅"],[6,"⤌"],[0,"⤍"],[0,"⤎"],[0,"⤏"],[0,"⤐"],[0,"⤑"],[0,"⤒"],[0,"⤓"],[2,"⤖"],[2,"⤙"],[0,"⤚"],[0,"⤛"],[0,"⤜"],[0,"⤝"],[0,"⤞"],[0,"⤟"],[0,"⤠"],[2,"⤣"],[0,"⤤"],[0,"⤥"],[0,"⤦"],[0,"⤧"],[0,"⤨"],[0,"⤩"],[0,"⤪"],[8,{v:"⤳",n:824,o:"⤳̸"}],[1,"⤵"],[0,"⤶"],[0,"⤷"],[0,"⤸"],[0,"⤹"],[2,"⤼"],[0,"⤽"],[7,"⥅"],[2,"⥈"],[0,"⥉"],[0,"⥊"],[0,"⥋"],[2,"⥎"],[0,"⥏"],[0,"⥐"],[0,"⥑"],[0,"⥒"],[0,"⥓"],[0,"⥔"],[0,"⥕"],[0,"⥖"],[0,"⥗"],[0,"⥘"],[0,"⥙"],[0,"⥚"],[0,"⥛"],[0,"⥜"],[0,"⥝"],[0,"⥞"],[0,"⥟"],[0,"⥠"],[0,"⥡"],[0,"⥢"],[0,"⥣"],[0,"⥤"],[0,"⥥"],[0,"⥦"],[0,"⥧"],[0,"⥨"],[0,"⥩"],[0,"⥪"],[0,"⥫"],[0,"⥬"],[0,"⥭"],[0,"⥮"],[0,"⥯"],[0,"⥰"],[0,"⥱"],[0,"⥲"],[0,"⥳"],[0,"⥴"],[0,"⥵"],[0,"⥶"],[1,"⥸"],[0,"⥹"],[1,"⥻"],[0,"⥼"],[0,"⥽"],[0,"⥾"],[0,"⥿"],[5,"⦅"],[0,"⦆"],[4,"⦋"],[0,"⦌"],[0,"⦍"],[0,"⦎"],[0,"⦏"],[0,"⦐"],[0,"⦑"],[0,"⦒"],[0,"⦓"],[0,"⦔"],[0,"⦕"],[0,"⦖"],[3,"⦚"],[1,"⦜"],[0,"⦝"],[6,"⦤"],[0,"⦥"],[0,"⦦"],[0,"⦧"],[0,"⦨"],[0,"⦩"],[0,"⦪"],[0,"⦫"],[0,"⦬"],[0,"⦭"],[0,"⦮"],[0,"⦯"],[0,"⦰"],[0,"⦱"],[0,"⦲"],[0,"⦳"],[0,"⦴"],[0,"⦵"],[0,"⦶"],[0,"⦷"],[1,"⦹"],[1,"⦻"],[0,"⦼"],[1,"⦾"],[0,"⦿"],[0,"⧀"],[0,"⧁"],[0,"⧂"],[0,"⧃"],[0,"⧄"],[0,"⧅"],[3,"⧉"],[3,"⧍"],[0,"⧎"],[0,{v:"⧏",n:824,o:"⧏̸"}],[0,{v:"⧐",n:824,o:"⧐̸"}],[11,"⧜"],[0,"⧝"],[0,"⧞"],[4,"⧣"],[0,"⧤"],[0,"⧥"],[5,"⧫"],[8,"⧴"],[1,"⧶"],[9,"⨀"],[0,"⨁"],[0,"⨂"],[1,"⨄"],[1,"⨆"],[5,"⨌"],[0,"⨍"],[2,"⨐"],[0,"⨑"],[0,"⨒"],[0,"⨓"],[0,"⨔"],[0,"⨕"],[0,"⨖"],[0,"⨗"],[10,"⨢"],[0,"⨣"],[0,"⨤"],[0,"⨥"],[0,"⨦"],[0,"⨧"],[1,"⨩"],[0,"⨪"],[2,"⨭"],[0,"⨮"],[0,"⨯"],[0,"⨰"],[0,"⨱"],[1,"⨳"],[0,"⨴"],[0,"⨵"],[0,"⨶"],[0,"⨷"],[0,"⨸"],[0,"⨹"],[0,"⨺"],[0,"⨻"],[0,"⨼"],[2,"⨿"],[0,"⩀"],[1,"⩂"],[0,"⩃"],[0,"⩄"],[0,"⩅"],[0,"⩆"],[0,"⩇"],[0,"⩈"],[0,"⩉"],[0,"⩊"],[0,"⩋"],[0,"⩌"],[0,"⩍"],[2,"⩐"],[2,"⩓"],[0,"⩔"],[0,"⩕"],[0,"⩖"],[0,"⩗"],[0,"⩘"],[1,"⩚"],[0,"⩛"],[0,"⩜"],[0,"⩝"],[1,"⩟"],[6,"⩦"],[3,"⩪"],[2,{v:"⩭",n:824,o:"⩭̸"}],[0,"⩮"],[0,"⩯"],[0,{v:"⩰",n:824,o:"⩰̸"}],[0,"⩱"],[0,"⩲"],[0,"⩳"],[0,"⩴"],[0,"⩵"],[1,"⩷"],[0,"⩸"],[0,"⩹"],[0,"⩺"],[0,"⩻"],[0,"⩼"],[0,{v:"⩽",n:824,o:"⩽̸"}],[0,{v:"⩾",n:824,o:"⩾̸"}],[0,"⩿"],[0,"⪀"],[0,"⪁"],[0,"⪂"],[0,"⪃"],[0,"⪄"],[0,"⪅"],[0,"⪆"],[0,"⪇"],[0,"⪈"],[0,"⪉"],[0,"⪊"],[0,"⪋"],[0,"⪌"],[0,"⪍"],[0,"⪎"],[0,"⪏"],[0,"⪐"],[0,"⪑"],[0,"⪒"],[0,"⪓"],[0,"⪔"],[0,"⪕"],[0,"⪖"],[0,"⪗"],[0,"⪘"],[0,"⪙"],[0,"⪚"],[2,"⪝"],[0,"⪞"],[0,"⪟"],[0,"⪠"],[0,{v:"⪡",n:824,o:"⪡̸"}],[0,{v:"⪢",n:824,o:"⪢̸"}],[1,"⪤"],[0,"⪥"],[0,"⪦"],[0,"⪧"],[0,"⪨"],[0,"⪩"],[0,"⪪"],[0,"⪫"],[0,{v:"⪬",n:65024,o:"⪬︀"}],[0,{v:"⪭",n:65024,o:"⪭︀"}],[0,"⪮"],[0,{v:"⪯",n:824,o:"⪯̸"}],[0,{v:"⪰",n:824,o:"⪰̸"}],[2,"⪳"],[0,"⪴"],[0,"⪵"],[0,"⪶"],[0,"⪷"],[0,"⪸"],[0,"⪹"],[0,"⪺"],[0,"⪻"],[0,"⪼"],[0,"⪽"],[0,"⪾"],[0,"⪿"],[0,"⫀"],[0,"⫁"],[0,"⫂"],[0,"⫃"],[0,"⫄"],[0,{v:"⫅",n:824,o:"⫅̸"}],[0,{v:"⫆",n:824,o:"⫆̸"}],[0,"⫇"],[0,"⫈"],[2,{v:"⫋",n:65024,o:"⫋︀"}],[0,{v:"⫌",n:65024,o:"⫌︀"}],[2,"⫏"],[0,"⫐"],[0,"⫑"],[0,"⫒"],[0,"⫓"],[0,"⫔"],[0,"⫕"],[0,"⫖"],[0,"⫗"],[0,"⫘"],[0,"⫙"],[0,"⫚"],[0,"⫛"],[8,"⫤"],[1,"⫦"],[0,"⫧"],[0,"⫨"],[0,"⫩"],[1,"⫫"],[0,"⫬"],[0,"⫭"],[0,"⫮"],[0,"⫯"],[0,"⫰"],[0,"⫱"],[0,"⫲"],[0,"⫳"],[9,{v:"⫽",n:8421,o:"⫽⃥"}],[44343,{n:new Map(zee([[56476,"𝒜"],[1,"𝒞"],[0,"𝒟"],[2,"𝒢"],[2,"𝒥"],[0,"𝒦"],[2,"𝒩"],[0,"𝒪"],[0,"𝒫"],[0,"𝒬"],[1,"𝒮"],[0,"𝒯"],[0,"𝒰"],[0,"𝒱"],[0,"𝒲"],[0,"𝒳"],[0,"𝒴"],[0,"𝒵"],[0,"𝒶"],[0,"𝒷"],[0,"𝒸"],[0,"𝒹"],[1,"𝒻"],[1,"𝒽"],[0,"𝒾"],[0,"𝒿"],[0,"𝓀"],[0,"𝓁"],[0,"𝓂"],[0,"𝓃"],[1,"𝓅"],[0,"𝓆"],[0,"𝓇"],[0,"𝓈"],[0,"𝓉"],[0,"𝓊"],[0,"𝓋"],[0,"𝓌"],[0,"𝓍"],[0,"𝓎"],[0,"𝓏"],[52,"𝔄"],[0,"𝔅"],[1,"𝔇"],[0,"𝔈"],[0,"𝔉"],[0,"𝔊"],[2,"𝔍"],[0,"𝔎"],[0,"𝔏"],[0,"𝔐"],[0,"𝔑"],[0,"𝔒"],[0,"𝔓"],[0,"𝔔"],[1,"𝔖"],[0,"𝔗"],[0,"𝔘"],[0,"𝔙"],[0,"𝔚"],[0,"𝔛"],[0,"𝔜"],[1,"𝔞"],[0,"𝔟"],[0,"𝔠"],[0,"𝔡"],[0,"𝔢"],[0,"𝔣"],[0,"𝔤"],[0,"𝔥"],[0,"𝔦"],[0,"𝔧"],[0,"𝔨"],[0,"𝔩"],[0,"𝔪"],[0,"𝔫"],[0,"𝔬"],[0,"𝔭"],[0,"𝔮"],[0,"𝔯"],[0,"𝔰"],[0,"𝔱"],[0,"𝔲"],[0,"𝔳"],[0,"𝔴"],[0,"𝔵"],[0,"𝔶"],[0,"𝔷"],[0,"𝔸"],[0,"𝔹"],[1,"𝔻"],[0,"𝔼"],[0,"𝔽"],[0,"𝔾"],[1,"𝕀"],[0,"𝕁"],[0,"𝕂"],[0,"𝕃"],[0,"𝕄"],[1,"𝕆"],[3,"𝕊"],[0,"𝕋"],[0,"𝕌"],[0,"𝕍"],[0,"𝕎"],[0,"𝕏"],[0,"𝕐"],[1,"𝕒"],[0,"𝕓"],[0,"𝕔"],[0,"𝕕"],[0,"𝕖"],[0,"𝕗"],[0,"𝕘"],[0,"𝕙"],[0,"𝕚"],[0,"𝕛"],[0,"𝕜"],[0,"𝕝"],[0,"𝕞"],[0,"𝕟"],[0,"𝕠"],[0,"𝕡"],[0,"𝕢"],[0,"𝕣"],[0,"𝕤"],[0,"𝕥"],[0,"𝕦"],[0,"𝕧"],[0,"𝕨"],[0,"𝕩"],[0,"𝕪"],[0,"𝕫"]]))}],[8906,"ff"],[0,"fi"],[0,"fl"],[0,"ffi"],[0,"ffl"]]));var qun=new Map([[34,"""],[38,"&"],[39,"'"],[60,"<"],[62,">"]]),Jun=String.prototype.codePointAt!=null?(s,o)=>s.codePointAt(o):(s,o)=>(s.charCodeAt(o)&64512)===55296?(s.charCodeAt(o)-55296)*1024+s.charCodeAt(o+1)-56320+65536:s.charCodeAt(o);function kye(s,o){return function(d){let g,m=0,v="";for(;g=s.exec(d);)m!==g.index&&(v+=d.substring(m,g.index)),v+=o.get(g[0].charCodeAt(0)),m=g.index+1;return v+d.substring(m)}}var V5t=kye(/[&<>'"]/g,qun),Z5t=kye(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),e6t=kye(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]));var t6t;(function(s){s[s.XML=0]="XML",s[s.HTML=1]="HTML"})(t6t||(t6t={}));var n6t;(function(s){s[s.UTF8=0]="UTF8",s[s.ASCII=1]="ASCII",s[s.Extensive=2]="Extensive",s[s.Attribute=3]="Attribute",s[s.Text=4]="Text"})(n6t||(n6t={}));function Kun(s){return Object.prototype.toString.call(s)}function Kee(s){return Kun(s)==="[object String]"}var Wun=Object.prototype.hasOwnProperty;function Yun(s,o){return Wun.call(s,o)}function oM(s){return Array.prototype.slice.call(arguments,1).forEach(function(a){if(a){if(typeof a!="object")throw new TypeError(a+"must be object");Object.keys(a).forEach(function(d){s[d]=a[d]})}}),s}function Eye(s,o,a){return[].concat(s.slice(0,o),a,s.slice(o+1))}function Wee(s){return!(s>=55296&&s<=57343||s>=64976&&s<=65007||(s&65535)===65535||(s&65535)===65534||s>=0&&s<=8||s===11||s>=14&&s<=31||s>=127&&s<=159||s>1114111)}function cM(s){if(s>65535){s-=65536;let o=55296+(s>>10),a=56320+(s&1023);return String.fromCharCode(o,a)}return String.fromCharCode(s)}var s6t=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g,Xun=/&([a-z#][a-z0-9]{1,31});/gi,Vun=new RegExp(s6t.source+"|"+Xun.source,"gi"),Zun=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function ean(s,o){if(o.charCodeAt(0)===35&&Zun.test(o)){let d=o[1].toLowerCase()==="x"?parseInt(o.slice(2),16):parseInt(o.slice(1),10);return Wee(d)?cM(d):s}let a=sM(s);return a!==s?a:s}function tan(s){return s.indexOf("\\")<0?s:s.replace(s6t,"$1")}function t6(s){return s.indexOf("\\")<0&&s.indexOf("&")<0?s:s.replace(Vun,function(o,a,d){return a||ean(o,d)})}var nan=/[&<>"]/,ran=/[&<>"]/g,ian={"&":"&","<":"<",">":">",'"':"""};function san(s){return ian[s]}function n6(s){return nan.test(s)?s.replace(ran,san):s}var oan=/[.?*+^$[\]\\(){}|-]/g;function can(s){return s.replace(oan,"\\$&")}function jo(s){switch(s){case 9:case 32:return!0}return!1}function fC(s){if(s>=8192&&s<=8202)return!0;switch(s){case 9:case 10:case 11:case 12:case 13:case 32:case 160:case 5760:case 8239:case 8287:case 12288:return!0}return!1}function o6t(s){return iM.test(s)||qee.test(s)}function hC(s){return o6t(cM(s))}function dC(s){switch(s){case 33:case 34:case 35:case 36:case 37:case 38:case 39:case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 124:case 125:case 126:return!0;default:return!1}}function pC(s){return s=s.trim().replace(/\s+/g," "),"\u1E9E".toLowerCase()==="\u1E7E"&&(s=s.replace(/ẞ/g,"\xDF")),s.toLowerCase().toUpperCase()}function i6t(s){return s===32||s===9||s===10||s===13}function gC(s){let o=0;for(;o<s.length&&i6t(s.charCodeAt(o));o++);let a=s.length-1;for(;a>=o&&i6t(s.charCodeAt(a));a--);return s.slice(o,a+1)}var uan={mdurl:Hee,ucmicro:mye};var _ye={};V_(_ye,{parseLinkDestination:()=>Sye,parseLinkLabel:()=>Iye,parseLinkTitle:()=>Tye});function Iye(s,o,a){let d,g,m,v,A=s.posMax,I=s.pos;for(s.pos=o+1,d=1;s.pos<A;){if(m=s.src.charCodeAt(s.pos),m===93&&(d--,d===0)){g=!0;break}if(v=s.pos,s.md.inline.skipToken(s),m===91){if(v===s.pos-1)d++;else if(a)return s.pos=I,-1}}let T=-1;return g&&(T=s.pos),s.pos=I,T}function Sye(s,o,a){let d,g=o,m={ok:!1,pos:0,str:""};if(s.charCodeAt(g)===60){for(g++;g<a;){if(d=s.charCodeAt(g),d===10||d===60)return m;if(d===62)return m.pos=g+1,m.str=t6(s.slice(o+1,g)),m.ok=!0,m;if(d===92&&g+1<a){g+=2;continue}g++}return m}let v=0;for(;g<a&&(d=s.charCodeAt(g),!(d===32||d<32||d===127));){if(d===92&&g+1<a){if(s.charCodeAt(g+1)===32)break;g+=2;continue}if(d===40&&(v++,v>32))return m;if(d===41){if(v===0)break;v--}g++}return o===g||v!==0||(m.str=t6(s.slice(o,g)),m.pos=g,m.ok=!0),m}function Tye(s,o,a,d){let g,m=o,v={ok:!1,can_continue:!1,pos:0,str:"",marker:0};if(d)v.str=d.str,v.marker=d.marker;else{if(m>=a)return v;let A=s.charCodeAt(m);if(A!==34&&A!==39&&A!==40)return v;o++,m++,A===40&&(A=41),v.marker=A}for(;m<a;){if(g=s.charCodeAt(m),g===v.marker)return v.pos=m+1,v.str+=t6(s.slice(o,m)),v.ok=!0,v;if(g===40&&v.marker===41)return v;g===92&&m+1<a&&m++,m++}return v.can_continue=!0,v.str+=t6(s.slice(o,m)),v}var A4={};A4.code_inline=function(s,o,a,d,g){let m=s[o];return"<code"+g.renderAttrs(m)+">"+n6(m.content)+"</code>"};A4.code_block=function(s,o,a,d,g){let m=s[o];return"<pre"+g.renderAttrs(m)+"><code>"+n6(s[o].content)+`</code></pre>
|
|
31
31
|
`};A4.fence=function(s,o,a,d,g){let m=s[o],v=m.info?t6(m.info).trim():"",A="",I="";if(v){let B=v.split(/(\s+)/g);A=B[0],I=B.slice(2).join("")}let T;if(a.highlight?T=a.highlight(m.content,A,I)||n6(m.content):T=n6(m.content),T.indexOf("<pre")===0)return T+`
|
|
32
32
|
`;if(v){let B=m.attrIndex("class"),L=m.attrs?m.attrs.slice():[];B<0?L.push(["class",a.langPrefix+A]):(L[B]=L[B].slice(),L[B][1]+=" "+a.langPrefix+A);let R={attrs:L};return`<pre><code${g.renderAttrs(R)}>${T}</code></pre>
|
|
@@ -1058,9 +1058,9 @@ ${B?"globalThis.__tbEntryRan = true; /* load-failure backstop \u2014 see embedPr
|
|
|
1058
1058
|
})();
|
|
1059
1059
|
<\/script>`;function swn(s){let o={};for(let[a,d]of Object.entries(s))o[a]=d.startsWith("https://")?"/proxy/"+d:d;return o}var Y$="https://esm.sh",X$="https://cdn.jsdelivr.net/npm/",zke="https://data.jsdelivr.com/v1/package/npm/";function HEt(s){let o=(s||"").replace(/^\/+/,"").replace(/\/+$/,"");return o?o.split("/"):[]}var Pf=class s{constructor(o,a,d){let g=typeof o=="string"?s.parse(o):o;this.name=g.name,this.version=qM(a??g.version),this.subpath=qM(d??g.subpath)}static parse(o){let a=HEt(o||"");if(!a.length)return new s({name:""});if(a[0].startsWith("@")){let g=a[0],[m,v]=QEt(a[1]??""),A=qM(a.slice(2).join("/"));return new s({name:`${g}/${m}`,version:v,subpath:A})}else{let[g,m]=QEt(a[0]),v=qM(a.slice(1).join("/"));return new s({name:g,version:m,subpath:v})}}static fromUrl(o){try{let a=new URL(o),d=new URL(Y$).host,g=new URL(X$).host;if(a.host===d){let m=HEt(a.pathname.replace(/^\/v\d+\//,"/"));if(!m.length)return;let v=m[0].startsWith("@")?`${m[0]}/${m[1]??""}`:m[0];return s.parse(v)}if(a.host===g){let m=a.pathname.split("/npm/")[1];if(!m)return;let v=m.split("/")[0]||"";return s.parse(v)}return}catch{return}}static versionFromUrl(o){return s.fromUrl(o)?.version}format(){let o=this.version?`${this.name}@${this.version}`:this.name;return this.subpath?`${o}/${this.subpath}`:o}root(){return this.name}static rootOf(o){return s.parse(o).name}withVersion(o){return new s({name:this.name,version:qM(o),subpath:this.subpath})}withPreferredVersion(o,a){let d=o||a;return d?this.withVersion(d):this}static isBare(o){if(!o||o.startsWith(".")||o.startsWith("/"))return!1;let a=o.toLowerCase();return!a.startsWith("http://")&&!a.startsWith("https://")}},qM=s=>s&&s.length?s:void 0,QEt=s=>{let o=s.indexOf("@");return o<0?[s,void 0]:[s.slice(0,o),qM(s.slice(o+1))]};async function gg(s){try{return await s()}catch{return}}var V$=class{constructor(o,a){this.cache=o,this.http=a,this.esmHost=Y$,this.jsDelivrBase=X$,this.jsDelivrMeta=zke,this.pinMs=1e4,this.versionsIndexMs=1440*60*1e3,this.metaTtlMs=10080*60*1e3,this.pinCache=new Map}normalizeRelative(o){let a=o||"";return a.startsWith("./")?a.slice(2):a.replace(/^\/+/,"")}ensureLeadingDotSlash(o){return o.startsWith("./")?o:`./${o}`}baseDir(o){let a=typeof o=="string"?new Pf(o):o;return`${this.jsDelivrBase}${a.name}${a.version?`@${a.version}`:""}/`}file(o,a){return new URL(this.normalizeRelative(a),this.baseDir(o)).toString()}packageJson(o){return this.file(o,"package.json")}buildEsmUrl(o,a={}){let{target:d="es2022",bundle:g=!1,external:m}=a,v=new URLSearchParams({target:d});return g&&v.append("bundle",""),m?.length&&v.append("external",m.join(",")),`${this.esmHost}/${o}?${v.toString()}`}async pinEsmUrl(o,a="es2022"){let d=this.buildEsmUrl(o,{target:a}),g=await gg(()=>this.http.head(d));return g?.ok?g.url||d:void 0}async resolveExactVersion(o){let a=Date.now(),d=this.pinCache.get(o);if(d&&a-d.ts<this.pinMs)return d.value;let g=await this.tryResolveFromUrls([this.buildEsmUrl(o),`${this.esmHost}/${o}`]);return this.pinCache.set(o,{value:g,ts:a}),g}async tryResolveFromUrls(o){for(let a of o){let d=await gg(()=>this.http.head(a)),g=this.parseVersionFromUrl(d?.url||a);if(g)return g}}async fetchVersionsIndex(o){if(await this.cache.isNegative(o))return;let a=await this.cache.getIndex(o);if(a&&Date.now()-a.updatedAt<this.versionsIndexMs)return{versions:a.versions,distTags:a.distTags};let d=await gg(()=>this.http.getJson(`${this.jsDelivrMeta}${encodeURIComponent(o)}`));if(!d?.versions?.length){await this.cache.recordNegative(o);return}await this.cache.clearNegative(o);let g=d.distTags&&Object.keys(d.distTags).length?d.distTags:void 0;return await this.cache.setIndex(o,d.versions,g),d}parseVersionFromUrl(o){let a=Pf.fromUrl(o)?.version;return a&&/\d+\.\d+\.\d+/.test(a)?a:void 0}async fetchPackageMeta(o,a){let d=await this.cache.getMeta(o,a);if(d&&Date.now()-d.updatedAt<this.metaTtlMs){let{dependencies:B,peerDependencies:L,peerDependenciesMeta:R}=d;return{name:o,version:a,dependencies:B,peerDependencies:L,peerDependenciesMeta:R}}let g=this.packageJson(new Pf(`${o}@${a}`)),m=await gg(()=>this.http.getJson(g));if(!m)return;let v=B=>B&&Object.keys(B).length?B:void 0,A=v(m.dependencies),I=v(m.peerDependencies),T=v(m.peerDependenciesMeta);return await this.cache.setMeta(o,a,A,I,T),{name:o,version:a,dependencies:A,peerDependencies:I,peerDependenciesMeta:T}}};var GEt=s=>s.startsWith("@types/"),Z$=s=>Object.keys(s?.peerDependencies||{}).filter(o=>!GEt(o)),Kke=s=>Object.keys(s?.dependencies||{}).filter(o=>!GEt(o)),own=s=>Z$(s).filter(o=>!s?.peerDependenciesMeta?.[o]?.optional),eH=class{constructor(o){this.cdn=o}async resolve(o,a){let d=await this.fetchMeta(o),{allRoots:g,autoAddedPeers:m}=await this.expandWithPeers(d,a),v=this.computeFlags(g);return{allRoots:g,flags:v,autoAddedPeers:m}}async fetchMeta(o){return Promise.all(o.map(async({name:a,version:d})=>({name:a,version:d,meta:await this.cdn.fetchPackageMeta(a,d)})))}async expandWithPeers(o,a){let d=new Map(o.map(m=>[m.name,m])),g=[];for(let m of o)for(let v of own(m.meta))!d.has(v)&&!g.some(A=>A.name===v)&&g.push({name:v,requiredBy:m.name});for(let{name:m,requiredBy:v}of g)try{let A=await a(m),I=await this.cdn.fetchPackageMeta(m,A);d.set(m,{name:m,version:A,meta:I})}catch(A){console.warn(`[typebulb] Failed to resolve peer "${m}" for "${v}":`,A)}return{allRoots:[...d.values()],autoAddedPeers:g.filter(m=>d.has(m.name))}}computeFlags(o){let a=new Set(o.flatMap(m=>Z$(m.meta))),d=new Map;for(let m of o)for(let v of Kke(m.meta))d.set(v,(d.get(v)||0)+1);let g=new Set([...d.entries()].filter(([,m])=>m>=2).map(([m])=>m));return new Map(o.map(m=>[m.name,{isPeerRoot:a.has(m.name),hasPeers:Z$(m.meta).length>0,isSharedDep:g.has(m.name)}]))}};var tH=class{constructor(o,a,d){this.cache=o,this.cdn=a,this.semver=d}selectVersionFromIndex(o,a,d){return this.semver.selectBestVersion(o,{range:a,distTags:d})}async learnExactVersion(o){let a=await gg(()=>this.cdn.fetchVersionsIndex(o));if(a?.versions?.length){let d=this.semver.selectBestVersion(a.versions,{distTags:a.distTags});if(d)return d}return this.cdn.resolveExactVersion(o)}async resolveExactForRoot(o,a){if(!a)return this.learnExactVersion(o);let d=await this.cache.getPinnedExact(o,a);if(d){if(this.semver.isExactVersion(d))return d;console.debug("[typebulb] cached version for",o,"is not exact (",d,"); re-resolving from registry")}let g=await gg(()=>this.cdn.fetchVersionsIndex(o));if(g?.versions?.length){let v=this.selectVersionFromIndex(g.versions,a,g.distTags);if(v){if(this.semver.isExactVersion(v))return await this.cache.setPinnedExact(o,a,v),v}else{console.debug("[typebulb] refreshing version cache for",o,"(",a,"not in cached set \u2014 likely a new release)"),await this.cache.invalidateVersionsCache(o);let A=await gg(()=>this.cdn.fetchVersionsIndex(o));if(A?.versions?.length){let I=this.selectVersionFromIndex(A.versions,a,A.distTags);if(I&&this.semver.isExactVersion(I))return await this.cache.setPinnedExact(o,a,I),I}}}let m=await this.cdn.resolveExactVersion(`${o}@${a}`);if(m&&this.semver.isExactVersion(m))return await this.cache.setPinnedExact(o,a,m),m}async effectivePackage(o,a){let d=new Pf(o),g=d.root(),m=a[g],v=m?await gg(()=>this.cache.getPinnedExact(g,m))??await gg(()=>this.resolveExactForRoot(g,m)):void 0;return{effectivePackage:v?d.withVersion(v).format():o,root:g,range:m,pinned:v}}};var qEt;(function(s){s[s.Static=1]="Static",s[s.Dynamic=2]="Dynamic",s[s.ImportMeta=3]="ImportMeta",s[s.StaticSourcePhase=4]="StaticSourcePhase",s[s.DynamicSourcePhase=5]="DynamicSourcePhase",s[s.StaticDeferPhase=6]="StaticDeferPhase",s[s.DynamicDeferPhase=7]="DynamicDeferPhase"})(qEt||(qEt={}));var cwn=new Uint8Array(new Uint16Array([1]).buffer)[0]===1;function Wke(s,o="@"){if(!Au)return Yke.then((()=>Wke(s)));let a=s.length+1,d=(Au.__heap_base.value||Au.__heap_base)+4*a-Au.memory.buffer.byteLength;d>0&&Au.memory.grow(Math.ceil(d/65536));let g=Au.sa(a-1);if((cwn?awn:uwn)(s,new Uint16Array(Au.memory.buffer,g,a)),!Au.parse())throw Object.assign(new Error(`Parse error ${o}:${s.slice(0,Au.e()).split(`
|
|
1060
1060
|
`).length}:${Au.e()-s.lastIndexOf(`
|
|
1061
|
-
`,Au.e()-1)}`),{idx:Au.e()});let m=[],v=[];for(;Au.ri();){let I=Au.is(),T=Au.ie(),B=Au.it(),L=Au.ai(),R=Au.id(),Q=Au.ss(),U=Au.se(),W;Au.ip()&&(W=A(s.slice(R===-1?I-1:I,R===-1?T+1:T))),m.push({n:W,t:B,s:I,e:T,ss:Q,se:U,d:R,a:L})}for(;Au.re();){let I=Au.es(),T=Au.ee(),B=Au.els(),L=Au.ele(),R=s.slice(I,T),Q=R[0],U=B<0?void 0:s.slice(B,L),W=U?U[0]:"";v.push({s:I,e:T,ls:B,le:L,n:Q==='"'||Q==="'"?A(R):R,ln:W==='"'||W==="'"?A(U):U})}function A(I){try{return(0,eval)(I)}catch{}}return[m,v,!!Au.f(),!!Au.ms()]}function uwn(s,o){let a=s.length,d=0;for(;d<a;){let g=s.charCodeAt(d);o[d++]=(255&g)<<8|g>>>8}}function awn(s,o){let a=s.length,d=0;for(;d<a;)o[d]=s.charCodeAt(d++)}var Au,lwn=()=>{return s="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GzYCHAtBAEEAKAKwCkECajYCsAoCQAJAAkACQEEAECkiAUHhAEYNACABQfcARg0BQQAoArAKIQEMAgtBACgCsAoiAUECakHACEEKEC8NAUEGIQIMAgtBACgCsAoiAS8BAkHpAEcNACABLwEEQfQARw0AQQQhAiABLwEGQegARg0BC0EAIAFBfmo2ArAKDwtBACABIAJBAXRqNgKwCgJAQQEQKUH7AEYNAEEAIAE2ArAKDwtBACgCsAoiACECA0BBACACQQJqNgKwCgJAAkACQEEBECkiAkEiRg0AIAJBJ0cNAUEnEBpBAEEAKAKwCkECajYCsApBARApIQIMAgtBIhAaQQBBACgCsApBAmo2ArAKQQEQKSECDAELIAIQLCECCwJAIAJBOkYNAEEAIAE2ArAKDwtBAEEAKAKwCkECajYCsAoCQEEBECkiAkEiRg0AIAJBJ0YNAEEAIAE2ArAKDwsgAhAaQQBBACgCsApBAmo2ArAKAkACQEEBECkiAkEsRg0AIAJB/QBGDQFBACABNgKwCg8LQQBBACgCsApBAmo2ArAKQQEQKUH9AEYNAEEAKAKwCiECDAELC0EAKALwCSIBIAA2AhAgAUEAKAKwCkECajYCDAttAQJ/AkACQANAAkAgAEH//wNxIgFBd2oiAkEXSw0AQQEgAnRBn4CABHENAgsgAUGgAUYNASAAIQIgARAoDQJBACECQQBBACgCsAoiAEECajYCsAogAC8BAiIADQAMAgsLIAAhAgsgAkH//wNxC6sBAQR/AkACQEEAKAKwCiICLwEAIgNB4QBGDQAgASEEIAAhBQwBC0EAIAJBBGo2ArAKQQEQKSECQQAoArAKIQUCQAJAIAJBIkYNACACQSdGDQAgAhAsGkEAKAKwCiEEDAELIAIQGkEAQQAoArAKQQJqIgQ2ArAKC0EBECkhA0EAKAKwCiECCwJAIAIgBUYNACAFIARBACAAIAAgAUYiAhtBACABIAIbEAILIAMLcgEEf0EAKAKwCiEAQQAoArQKIQECQAJAA0AgAEECaiECIAAgAU8NAQJAAkAgAi8BACIDQaR/ag4CAQQACyACIQAgA0F2ag4EAgEBAgELIABBBGohAAwACwtBACACNgKwChAlQQAPC0EAIAI2ArAKQd0AC0kBA39BACEDAkAgAkUNAAJAA0AgAC0AACIEIAEtAAAiBUcNASABQQFqIQEgAEEBaiEAIAJBf2oiAg0ADAILCyAEIAVrIQMLIAMLC+wBAgBBgAgLzgEAAHgAcABvAHIAdABtAHAAbwByAHQAZgBvAHIAZQB0AGEAbwB1AHIAYwBlAHIAbwBtAHUAbgBjAHQAaQBvAG4AcwBzAGUAcgB0AHYAbwB5AGkAZQBkAGUAbABlAGMAbwBuAHQAaQBuAGkAbgBzAHQAYQBuAHQAeQBiAHIAZQBhAHIAZQB0AHUAcgBkAGUAYgB1AGcAZwBlAGEAdwBhAGkAdABoAHIAdwBoAGkAbABlAGkAZgBjAGEAdABjAGYAaQBuAGEAbABsAGUAbABzAABB0AkLEAEAAAACAAAAAAQAAEA5AAA=",typeof Buffer<"u"?Buffer.from(s,"base64"):Uint8Array.from(atob(s),(o=>o.charCodeAt(0)));var s},Yke=WebAssembly.compile(lwn()).then(WebAssembly.instantiate).then((({exports:s})=>{Au=s}));var JM=class s{constructor(o,a,d,g){this.version=o,this.cdn=a,this.peer=d,this.cache=g}extractImportsSync(o){let a=new Set;for(let d of s.importPatterns){d.lastIndex=0;for(let g of o.matchAll(d))Pf.isBare(g[1])&&a.add(g[1])}return Array.from(a)}async extractImports(o){let a=new Set,d=g=>{Pf.isBare(g)&&a.add(g)};try{await Yke;let[g]=Wke(o);g.forEach(m=>d(o.slice(m.s,m.e).trim()))}catch{return this.extractImportsSync(o)}return Array.from(a)}async buildImportMap(o,a,d){let g=(await this.extractImports(o)).filter(L=>!d?.has(Pf.rootOf(L))),m=[...new Set(g.map(Pf.rootOf))],v=await Promise.all(m.map(async L=>({name:L,version:await this.resolveVersion(L,a)}))),{allRoots:A,flags:I,autoAddedPeers:T}=await this.peer.resolve(v,L=>this.resolveVersion(L,a)),B=this.buildEntries([...g,...T.map(L=>L.name)],A,I,a);return{importMap:{imports:Object.fromEntries(B)},prefetchUrls:B.map(([,L])=>L)}}async resolveVersion(o,a){let d=a[o],g=d?`${o}@${d}`:o,m=await this.version.resolveExactForRoot(o,d);if(!m){let v=await gg(()=>this.cdn.pinEsmUrl(g));if(!v)throw new Error(`Cannot resolve ${g}: no matching version is published (the package or version may not exist, or the registry was unreachable).`);m=Pf.versionFromUrl(v),m&&d&&await gg(()=>this.cache.setPinnedExact(o,d,m))}if(!m)throw new Error(`Cannot resolve ${g}: no concrete version found.`);return m}buildEntries(o,a,d,g){let m=new Map(a.map(U=>[U.name,U])),v=U=>{let W=m.get(Pf.rootOf(U));return new Pf(U).withPreferredVersion(W.version,g[W.name]).format()},A=new Set([...d.entries()].filter(([,U])=>U.isPeerRoot||U.isSharedDep).map(([U])=>U)),I=new Set(o.filter(U=>U!==Pf.rootOf(U)).map(Pf.rootOf)),T=[],B=new Set,L=new Set(o.filter(U=>U===Pf.rootOf(U))),R=new Set;for(let U of o){let W=Pf.rootOf(U),ne=m.get(W),{isPeerRoot:he,hasPeers:Ee,isSharedDep:Oe}=d.get(W),ie=I.has(W),Ie=U!==W,kt=!(he||Oe)&&(ie||!Ee),nt=this.singletonDepsOf(ne,A),Ce=Ie&&L.has(W);Ce&&R.add(W);let Xt=Ce?[...nt,W]:nt.length?nt:void 0;T.push([U,this.cdn.buildEsmUrl(v(U),{bundle:kt,external:Xt})]),B.add(U)}let Q=new Set([...A,...R]);for(let U of Q)m.has(U)&&(B.has(U)||T.push([U,this.cdn.buildEsmUrl(v(U),{})]),T.push([`${U}/`,`${this.cdn.esmHost}/${v(U)}/`]));return T}singletonDepsOf(o,a){return[...new Set([...Z$(o.meta),...Kke(o.meta)])].filter(d=>a.has(d))}};JM.importPatterns=[/\bimport\s+(?:[^'";]*?from\s*)?['"]([^'"]+)['"]/g,/\bexport\s+[^'";]*?from\s*['"]([^'"]+)['"]/g];var eh=uC(LIt(),1),_re=class{cmp(o,a){return o===a?0:(0,eh.gt)(o,a)?1:(0,eh.gt)(a,o)?-1:0}satisfies(o,a){return!o||!o.trim()?!0:!!(0,eh.satisfies)(a,o,{includePrerelease:!0})}pickMaxSatisfying(o,a){if(!o?.length)return;let d=(0,eh.maxSatisfying)(o,a,{includePrerelease:!0});return d===null?void 0:d}pickLatest(o){return o?.length?(0,eh.rsort)(o)[0]:void 0}selectBestVersion(o,a){if(!o?.length)return;let d=a?.range?.trim()||"*",g=a?.preferStable??!0,m=a?.distTags?.latest;if(m&&o.includes(m)&&this.satisfies(d,m))return m;if(g){let A=(0,eh.maxSatisfying)(o,d,{includePrerelease:!1});if(A)return A}return(0,eh.maxSatisfying)(o,d,{includePrerelease:!0})??void 0}majorOf(o){return(0,eh.major)(o)}isPrerelease(o){return(0,eh.prerelease)(o)!==null}isExactVersion(o){return(0,eh.valid)(o)!==null}},bxe=new _re;function NIt(s,o){let a=new V$(s,o),d=new eH(a),g=new tH(s,a,bxe);return{packageService:new JM(g,a,d,s),versionResolver:g,cdnClient:a,peerResolver:d}}var OIt={async getJson(s){try{let o=await fetch(s,{redirect:"follow"});return o.ok?await o.json():void 0}catch{return}},async head(s){try{let o=await fetch(s,{method:"HEAD",redirect:"follow"});return{ok:o.ok,url:o.url}}catch{return}}};function mxe(s){let o=/^---[^\n]*\n([\s\S]*?)\n---/.exec(s),a=o?/^\s*name:\s*(.+?)\s*$/m.exec(o[1]):null;return a?a[1].replace(/^["']|["']$/g,""):void 0}function wxe(s){return s.replace(/^---[^\n]*\r?\n[\s\S]*?\r?\n---[^\n]*\r?\n?/,"").replace(/^\r?\n+/,"")}function o4n(){let s=new Map,o=new Map,a=new Set,d=new Map;return{async getPinnedExact(g,m){return s.get(`${g}@${m}`)},async setPinnedExact(g,m,v){s.set(`${g}@${m}`,v)},async getIndex(g){return o.get(g)},async setIndex(g,m,v){o.set(g,{versions:m,distTags:v,updatedAt:Date.now()})},async invalidateVersionsCache(g){o.delete(g)},async isNegative(g){return a.has(g)},async recordNegative(g){a.add(g)},async clearNegative(g){a.delete(g)},async getMeta(g,m){return d.get(`${g}@${m}`)},async setMeta(g,m,v,A,I){d.set(`${g}@${m}`,{dependencies:v,peerDependencies:A,peerDependenciesMeta:I,updatedAt:Date.now()})}}}var{packageService:c4n}=NIt(o4n(),OIt);async function u4n(s,o={}){let a=g9t(s);if(!a)return{error:"Not a valid bulb (missing `---` frontmatter or a **code.tsx** block)."};let d=ukt(a);if(d.server.trim())return{error:"Nested bulbs are client-only; a **server.ts** block is not supported."};if(!d.code.trim())return{error:"Bulb has no **code.tsx** to run."};let g=m9t(d.config),m=OEt(d.code,{jsxImportSource:g.ts?.jsxImportSource});if(m.error)return{error:`Compile error: ${m.error}`};let v;try{({importMap:v}=await c4n.buildImportMap(m.code,g.dependencies??{}))}catch(I){return{error:`Dependency resolution failed: ${I instanceof Error?I.message:String(I)}`}}return{html:$Et({name:d.name||"bulb",code:m.code,css:d.css,html:d.html,data:_9e(d.data),insight:d.insight,importMap:v,watch:!1,theme:o.theme,embedded:!0})}}function a4n(){let s=document.documentElement.getAttribute("data-theme");return s==="dark"||s==="light"?s:void 0}async function jIt(s,o={}){let{html:a,error:d}=await u4n(s,{theme:o.theme??a4n()});if(d||!a)throw new Error(d??"Bulb produced no output.");let g=o.initialHeight??320,m=o.maxHeight??1e5,v=document.createElement("iframe");v.setAttribute("sandbox","allow-scripts"),v.style.cssText=`display:block;width:100%;height:${g}px;border:0`,v.srcdoc=a;let A=I=>{if(I.source!==v.contentWindow)return;let T=I.data;!T||T.__typebulbEmbed!==!0||(T.kind==="height"&&typeof T.height=="number"&&Number.isFinite(T.height)?v.style.height=`${Math.min(m,Math.max(0,Math.ceil(T.height)))}px`:T.kind==="error"&&o.onError?.(String(T.message??"error")))};return window.addEventListener("message",A,o.signal?{signal:o.signal}:void 0),v}var Mre=class extends El{spread=!1;showingCode=!1;copied=!1;#e="";#t;#n;#i;#r;#s;#u;#l=!1;#c=!1;#a;#o="idle";constructor(o,a){super(),this.#t=o,this.#n=a,this.#i=mxe(o)}get name(){return this.#i}get key(){return this.#n}setMounted(o){o!==this.#l&&(this.#l=o,this.#f())}onAttached(){this.#f()}#f(){if(this.#l){if(this.#r||this.#c||this.#s)return;this.#c=!0,this.#a=new AbortController,jIt(this.#t,{signal:this.#a.signal,onError:o=>{this.#u=o,this.#h("runtime",o),this.update()}}).then(o=>{this.#c=!1,this.#l&&(this.#r=o,this.update())}).catch(o=>{this.#c=!1,this.#s=o instanceof Error?o.message:String(o),this.#h("compile",this.#s),this.update()})}else{if(!this.#r&&!this.#c)return;this.#a?.abort(),this.#a=void 0,this.#r=void 0,this.#u=void 0,this.update()}}#h(o,a){let d=this.#i??this.#n;tb.server.logEmbedError(d,`[embed ${d}] ${o} error: ${a}`).catch(()=>{})}dispose(){this.#a?.abort()}view(){let o=["embed","bulb-embed",this.spread?"spread":"fit",this.showingCode?"code-open":"",this.#s?"err":""],a=this.#i?`${this.#i} \u2014 `:"",d=this.#s?[`${a}could not render: ${this.#s}`]:this.#r?[this.#d(),Vi({class:"bulb-frame",key:"frame",onMounted:g=>{this.#r&&g.replaceChildren(this.#r)}}),this.showingCode?this.#m():null,this.#u?Vi({class:"bulb-err-strip",key:"err"},`\u26A0 ${a}${this.#u}`):null]:["compiling bulb\u2026"];return Vi({class:"md",key:this.#n},Vi({class:o},...d))}#d(){let o=this.#o==="done"?this.#e:"breakout \u2197";return Vi({class:"bulb-controls",key:"controls"},this.#p("bulb-view",this.spread?"fit":"spread",this.spread?"Fit into the conversation column":"Spread to the full transcript width and height",()=>{this.spread=!this.spread,this.update()}),this.#p("bulb-toggle",this.showingCode?"run":"code",this.showingCode?"Back to the running bulb":"View this bulb's source",()=>{this.showingCode=!this.showingCode,this.update()}),this.#p(["bulb-copy",this.copied?"done":""],this.copied?"copied":"copy","Copy this bulb's full source",()=>this.#g()),Y0({class:["overlay-pill","bulb-breakout",this.#o==="busy"?"launching":""],type:"button",disabled:this.#o!=="idle",title:"Save as a standalone .bulb.md and open it with typebulb",onClick:a=>{a.stopPropagation(),this.#b()}},o))}#p(o,a,d,g){let m=Array.isArray(o)?o:[o];return Y0({class:["overlay-pill",...m],type:"button",title:d,onClick:v=>{v.stopPropagation(),g()}},a)}#g(){navigator.clipboard?.writeText(this.#t),this.copied=!0,this.update(),setTimeout(()=>{this.copied=!1,this.update()},1200)}async#b(){if(this.#o==="idle"){this.#o="busy",this.update();try{let{file:o}=await tb.server.breakout(this.#t);this.#e=`launched ${o}`,window.dispatchEvent(new CustomEvent("tb-breakout"))}catch(o){this.#e="breakout failed",console.error("[claude-bulb] breakout failed",o)}this.#o="done",this.update(),setTimeout(()=>{this.#o="idle",this.update()},2500)}}#m(){return Vi({class:["bulb-code","md"],key:"code",tabIndex:0,onKeyDown:o=>{if(!((o.ctrlKey||o.metaKey)&&(o.key==="a"||o.key==="A")))return;o.preventDefault();let a=getSelection();if(!a)return;let d=document.createRange();d.selectNodeContents(o.currentTarget),a.removeAllRanges(),a.addRange(d)},onMounted:o=>{o.innerHTML=a9t.render(wxe(this.#t))}})}};function RIt(s){return s.map((o,a)=>!!o&&s[a+1]===o)}function PIt(s){let o=[];for(let a=0;a<s.length;a++)o[a]=a>0&&s[a]&&s[a]===s[a-1]?o[a-1]+1:1;return o}function l4n(s){return!s||typeof s!="object"?"":Gd(s.command)??Gd(s.file_path)??Gd(s.path)??Gd(s.pattern)??Gd(s.query)??Gd(s.url)??Gd(s.skill)??Gd(s.description)??""}var f4n=new Set(["Read","Edit","Write","MultiEdit","NotebookEdit","Glob","Grep"]),h4n=new Set(["Edit","Write","MultiEdit","NotebookEdit"]);function d4n(s,o){if(!(!f4n.has(s)||!o||typeof o!="object"))return(Gd(o.file_path)??Gd(o.path))||void 0}function p4n(s){let o=s.input??{};switch(s.name){case"Edit":return[{old:Gd(o.old_string),new:Gd(o.new_string)}];case"Write":return[{new:Gd(o.content)}];case"NotebookEdit":return[{new:Gd(o.new_source)}];case"MultiEdit":return Array.isArray(o.edits)?o.edits.map(a=>({old:a?.old_string,new:a?.new_string})):void 0;default:return}}function g4n(s){let o=new Map;for(let g of s)for(let m of g.tools)o.set(m.name,(o.get(m.name)??0)+1);let a=[...o].map(([g,m])=>m>1?`${g} \xD7${m}`:g).join(", "),d=s.length;return`${d} step${d===1?"":"s"}${a?` \xB7 ${a}`:""}`}var Dre=class extends El{messages=[];openTools=new Set;expandedTurns=new Set;expandedEmbeds=new Set;copyButtons=[];bulbEmbeds=[];scrollEl;#e=0;#t=0;#n=new Set;#i=new Map;#r=!0;get parent(){return this.ctx.parent}clear(){for(let o of this.bulbEmbeds)o.dispose();this.messages=[],this.expandedTurns.clear(),this.expandedEmbeds.clear(),this.#n=new Set,this.#i=new Map,this.copyButtons=[],this.bulbEmbeds=[]}#s(o){let a=new Xte(o);return this.copyButtons.push(a),a}#u(o){let a={...o,copy:o.text?this.#s(o.text):void 0};return this.messages.push(a),a}stickToBottomNextRender(){this.#r=!0}applyUser(o){let a=this.messages[this.messages.length-1];if(a&&a.role==="user"){a.segments=[...a.segments??[a.text],o.text],a.text=a.segments.join(`
|
|
1061
|
+
`,Au.e()-1)}`),{idx:Au.e()});let m=[],v=[];for(;Au.ri();){let I=Au.is(),T=Au.ie(),B=Au.it(),L=Au.ai(),R=Au.id(),Q=Au.ss(),U=Au.se(),W;Au.ip()&&(W=A(s.slice(R===-1?I-1:I,R===-1?T+1:T))),m.push({n:W,t:B,s:I,e:T,ss:Q,se:U,d:R,a:L})}for(;Au.re();){let I=Au.es(),T=Au.ee(),B=Au.els(),L=Au.ele(),R=s.slice(I,T),Q=R[0],U=B<0?void 0:s.slice(B,L),W=U?U[0]:"";v.push({s:I,e:T,ls:B,le:L,n:Q==='"'||Q==="'"?A(R):R,ln:W==='"'||W==="'"?A(U):U})}function A(I){try{return(0,eval)(I)}catch{}}return[m,v,!!Au.f(),!!Au.ms()]}function uwn(s,o){let a=s.length,d=0;for(;d<a;){let g=s.charCodeAt(d);o[d++]=(255&g)<<8|g>>>8}}function awn(s,o){let a=s.length,d=0;for(;d<a;)o[d]=s.charCodeAt(d++)}var Au,lwn=()=>{return s="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GzYCHAtBAEEAKAKwCkECajYCsAoCQAJAAkACQEEAECkiAUHhAEYNACABQfcARg0BQQAoArAKIQEMAgtBACgCsAoiAUECakHACEEKEC8NAUEGIQIMAgtBACgCsAoiAS8BAkHpAEcNACABLwEEQfQARw0AQQQhAiABLwEGQegARg0BC0EAIAFBfmo2ArAKDwtBACABIAJBAXRqNgKwCgJAQQEQKUH7AEYNAEEAIAE2ArAKDwtBACgCsAoiACECA0BBACACQQJqNgKwCgJAAkACQEEBECkiAkEiRg0AIAJBJ0cNAUEnEBpBAEEAKAKwCkECajYCsApBARApIQIMAgtBIhAaQQBBACgCsApBAmo2ArAKQQEQKSECDAELIAIQLCECCwJAIAJBOkYNAEEAIAE2ArAKDwtBAEEAKAKwCkECajYCsAoCQEEBECkiAkEiRg0AIAJBJ0YNAEEAIAE2ArAKDwsgAhAaQQBBACgCsApBAmo2ArAKAkACQEEBECkiAkEsRg0AIAJB/QBGDQFBACABNgKwCg8LQQBBACgCsApBAmo2ArAKQQEQKUH9AEYNAEEAKAKwCiECDAELC0EAKALwCSIBIAA2AhAgAUEAKAKwCkECajYCDAttAQJ/AkACQANAAkAgAEH//wNxIgFBd2oiAkEXSw0AQQEgAnRBn4CABHENAgsgAUGgAUYNASAAIQIgARAoDQJBACECQQBBACgCsAoiAEECajYCsAogAC8BAiIADQAMAgsLIAAhAgsgAkH//wNxC6sBAQR/AkACQEEAKAKwCiICLwEAIgNB4QBGDQAgASEEIAAhBQwBC0EAIAJBBGo2ArAKQQEQKSECQQAoArAKIQUCQAJAIAJBIkYNACACQSdGDQAgAhAsGkEAKAKwCiEEDAELIAIQGkEAQQAoArAKQQJqIgQ2ArAKC0EBECkhA0EAKAKwCiECCwJAIAIgBUYNACAFIARBACAAIAAgAUYiAhtBACABIAIbEAILIAMLcgEEf0EAKAKwCiEAQQAoArQKIQECQAJAA0AgAEECaiECIAAgAU8NAQJAAkAgAi8BACIDQaR/ag4CAQQACyACIQAgA0F2ag4EAgEBAgELIABBBGohAAwACwtBACACNgKwChAlQQAPC0EAIAI2ArAKQd0AC0kBA39BACEDAkAgAkUNAAJAA0AgAC0AACIEIAEtAAAiBUcNASABQQFqIQEgAEEBaiEAIAJBf2oiAg0ADAILCyAEIAVrIQMLIAMLC+wBAgBBgAgLzgEAAHgAcABvAHIAdABtAHAAbwByAHQAZgBvAHIAZQB0AGEAbwB1AHIAYwBlAHIAbwBtAHUAbgBjAHQAaQBvAG4AcwBzAGUAcgB0AHYAbwB5AGkAZQBkAGUAbABlAGMAbwBuAHQAaQBuAGkAbgBzAHQAYQBuAHQAeQBiAHIAZQBhAHIAZQB0AHUAcgBkAGUAYgB1AGcAZwBlAGEAdwBhAGkAdABoAHIAdwBoAGkAbABlAGkAZgBjAGEAdABjAGYAaQBuAGEAbABsAGUAbABzAABB0AkLEAEAAAACAAAAAAQAAEA5AAA=",typeof Buffer<"u"?Buffer.from(s,"base64"):Uint8Array.from(atob(s),(o=>o.charCodeAt(0)));var s},Yke=WebAssembly.compile(lwn()).then(WebAssembly.instantiate).then((({exports:s})=>{Au=s}));var JM=class s{constructor(o,a,d,g){this.version=o,this.cdn=a,this.peer=d,this.cache=g}extractImportsSync(o){let a=new Set;for(let d of s.importPatterns){d.lastIndex=0;for(let g of o.matchAll(d))Pf.isBare(g[1])&&a.add(g[1])}return Array.from(a)}async extractImports(o){let a=new Set,d=g=>{Pf.isBare(g)&&a.add(g)};try{await Yke;let[g]=Wke(o);g.forEach(m=>d(o.slice(m.s,m.e).trim()))}catch{return this.extractImportsSync(o)}return Array.from(a)}async buildImportMap(o,a,d){let g=(await this.extractImports(o)).filter(L=>!d?.has(Pf.rootOf(L))),m=[...new Set(g.map(Pf.rootOf))],v=await Promise.all(m.map(async L=>({name:L,version:await this.resolveVersion(L,a)}))),{allRoots:A,flags:I,autoAddedPeers:T}=await this.peer.resolve(v,L=>this.resolveVersion(L,a)),B=this.buildEntries([...g,...T.map(L=>L.name)],A,I,a);return{importMap:{imports:Object.fromEntries(B)},prefetchUrls:B.map(([,L])=>L)}}async resolveVersion(o,a){let d=a[o],g=d?`${o}@${d}`:o,m=await this.version.resolveExactForRoot(o,d);if(!m){let v=await gg(()=>this.cdn.pinEsmUrl(g));if(!v)throw new Error(`Cannot resolve ${g}: no matching version is published (the package or version may not exist, or the registry was unreachable).`);m=Pf.versionFromUrl(v),m&&d&&await gg(()=>this.cache.setPinnedExact(o,d,m))}if(!m)throw new Error(`Cannot resolve ${g}: no concrete version found.`);return m}buildEntries(o,a,d,g){let m=new Map(a.map(U=>[U.name,U])),v=U=>{let W=m.get(Pf.rootOf(U));return new Pf(U).withPreferredVersion(W.version,g[W.name]).format()},A=new Set([...d.entries()].filter(([,U])=>U.isPeerRoot||U.isSharedDep).map(([U])=>U)),I=new Set(o.filter(U=>U!==Pf.rootOf(U)).map(Pf.rootOf)),T=[],B=new Set,L=new Set(o.filter(U=>U===Pf.rootOf(U))),R=new Set;for(let U of o){let W=Pf.rootOf(U),ne=m.get(W),{isPeerRoot:he,hasPeers:Ee,isSharedDep:Oe}=d.get(W),ie=I.has(W),Ie=U!==W,kt=!(he||Oe)&&(ie||!Ee),nt=this.singletonDepsOf(ne,A),Ce=Ie&&L.has(W);Ce&&R.add(W);let Xt=Ce?[...nt,W]:nt.length?nt:void 0;T.push([U,this.cdn.buildEsmUrl(v(U),{bundle:kt,external:Xt})]),B.add(U)}let Q=new Set([...A,...R]);for(let U of Q)m.has(U)&&(B.has(U)||T.push([U,this.cdn.buildEsmUrl(v(U),{})]),T.push([`${U}/`,`${this.cdn.esmHost}/${v(U)}/`]));return T}singletonDepsOf(o,a){return[...new Set([...Z$(o.meta),...Kke(o.meta)])].filter(d=>a.has(d))}};JM.importPatterns=[/\bimport\s+(?:[^'";]*?from\s*)?['"]([^'"]+)['"]/g,/\bexport\s+[^'";]*?from\s*['"]([^'"]+)['"]/g];var eh=uC(LIt(),1),_re=class{cmp(o,a){return o===a?0:(0,eh.gt)(o,a)?1:(0,eh.gt)(a,o)?-1:0}satisfies(o,a){return!o||!o.trim()?!0:!!(0,eh.satisfies)(a,o,{includePrerelease:!0})}pickMaxSatisfying(o,a){if(!o?.length)return;let d=(0,eh.maxSatisfying)(o,a,{includePrerelease:!0});return d===null?void 0:d}pickLatest(o){return o?.length?(0,eh.rsort)(o)[0]:void 0}selectBestVersion(o,a){if(!o?.length)return;let d=a?.range?.trim()||"*",g=a?.preferStable??!0,m=a?.distTags?.latest;if(m&&o.includes(m)&&this.satisfies(d,m))return m;if(g){let A=(0,eh.maxSatisfying)(o,d,{includePrerelease:!1});if(A)return A}return(0,eh.maxSatisfying)(o,d,{includePrerelease:!0})??void 0}majorOf(o){return(0,eh.major)(o)}isPrerelease(o){return(0,eh.prerelease)(o)!==null}isExactVersion(o){return(0,eh.valid)(o)!==null}},bxe=new _re;function NIt(s,o){let a=new V$(s,o),d=new eH(a),g=new tH(s,a,bxe);return{packageService:new JM(g,a,d,s),versionResolver:g,cdnClient:a,peerResolver:d}}var OIt={async getJson(s){try{let o=await fetch(s,{redirect:"follow"});return o.ok?await o.json():void 0}catch{return}},async head(s){try{let o=await fetch(s,{method:"HEAD",redirect:"follow"});return{ok:o.ok,url:o.url}}catch{return}}};function mxe(s){let o=/^---[^\n]*\n([\s\S]*?)\n---/.exec(s),a=o?/^\s*name:\s*(.+?)\s*$/m.exec(o[1]):null;return a?a[1].replace(/^["']|["']$/g,""):void 0}function wxe(s){return s.replace(/^---[^\n]*\r?\n[\s\S]*?\r?\n---[^\n]*\r?\n?/,"").replace(/^\r?\n+/,"")}function o4n(){let s=new Map,o=new Map,a=new Set,d=new Map;return{async getPinnedExact(g,m){return s.get(`${g}@${m}`)},async setPinnedExact(g,m,v){s.set(`${g}@${m}`,v)},async getIndex(g){return o.get(g)},async setIndex(g,m,v){o.set(g,{versions:m,distTags:v,updatedAt:Date.now()})},async invalidateVersionsCache(g){o.delete(g)},async isNegative(g){return a.has(g)},async recordNegative(g){a.add(g)},async clearNegative(g){a.delete(g)},async getMeta(g,m){return d.get(`${g}@${m}`)},async setMeta(g,m,v,A,I){d.set(`${g}@${m}`,{dependencies:v,peerDependencies:A,peerDependenciesMeta:I,updatedAt:Date.now()})}}}var{packageService:c4n}=NIt(o4n(),OIt);async function u4n(s,o={}){let a=g9t(s);if(!a)return{error:"Not a valid bulb (missing `---` frontmatter or a **code.tsx** block)."};let d=ukt(a);if(d.server.trim())return{error:"Nested bulbs are client-only; a **server.ts** block is not supported."};if(!d.code.trim())return{error:"Bulb has no **code.tsx** to run."};let g=m9t(d.config),m=OEt(d.code,{jsxImportSource:g.ts?.jsxImportSource});if(m.error)return{error:`Compile error: ${m.error}`};let v;try{({importMap:v}=await c4n.buildImportMap(m.code,g.dependencies??{}))}catch(I){return{error:`Dependency resolution failed: ${I instanceof Error?I.message:String(I)}`}}return{html:$Et({name:d.name||"bulb",code:m.code,css:d.css,html:d.html,data:_9e(d.data),insight:d.insight,importMap:v,watch:!1,theme:o.theme,embedded:!0})}}function a4n(){let s=document.documentElement.getAttribute("data-theme");return s==="dark"||s==="light"?s:void 0}async function jIt(s,o={}){let{html:a,error:d}=await u4n(s,{theme:o.theme??a4n()});if(d||!a)throw new Error(d??"Bulb produced no output.");let g=o.initialHeight??320,m=o.maxHeight??1e5,v=document.createElement("iframe");v.setAttribute("sandbox","allow-scripts"),v.style.cssText=`display:block;width:100%;height:${g}px;border:0`,v.srcdoc=a;let A=I=>{if(I.source!==v.contentWindow)return;let T=I.data;!T||T.__typebulbEmbed!==!0||(T.kind==="height"&&typeof T.height=="number"&&Number.isFinite(T.height)?v.style.height=`${Math.min(m,Math.max(0,Math.ceil(T.height)))}px`:T.kind==="error"&&o.onError?.(String(T.message??"error")))};return window.addEventListener("message",A,o.signal?{signal:o.signal}:void 0),v}var Mre=class extends El{spread=!1;showingCode=!1;copied=!1;#e="";#t;#n;#i;#r;#s;#u;#l=!1;#c=!1;#a;#o="idle";constructor(o,a){super(),this.#t=o,this.#n=a,this.#i=mxe(o)}get name(){return this.#i}get key(){return this.#n}setMounted(o){o!==this.#l&&(this.#l=o,this.#f())}onAttached(){this.#f()}#f(){if(this.#l){if(this.#r||this.#c||this.#s)return;this.#c=!0,this.#a=new AbortController,jIt(this.#t,{signal:this.#a.signal,onError:o=>{this.#u=o,this.#h("runtime",o),this.update()}}).then(o=>{this.#c=!1,this.#l&&(this.#r=o,this.update())}).catch(o=>{this.#c=!1,this.#s=o instanceof Error?o.message:String(o),this.#h("compile",this.#s),this.update()})}else{if(!this.#r&&!this.#c)return;this.#a?.abort(),this.#a=void 0,this.#r=void 0,this.#u=void 0,this.update()}}#h(o,a){let d=this.#i??this.#n;tb.server.logEmbedError(d,`[embed ${d}] ${o} error: ${a}`).catch(()=>{})}dispose(){this.#a?.abort()}view(){let o=["embed","bulb-embed",this.spread?"spread":"fit",this.showingCode?"code-open":"",this.#s?"err":""],a=this.#i?`${this.#i} \u2014 `:"",d=this.#s?[`${a}could not render: ${this.#s}`]:this.#r?[this.#d(),Vi({class:"bulb-frame",key:"frame",onMounted:g=>{this.#r&&g.replaceChildren(this.#r)}}),this.showingCode?this.#m():null,this.#u?Vi({class:"bulb-err-strip",key:"err"},`\u26A0 ${a}${this.#u}`):null]:["compiling bulb\u2026"];return Vi({class:"md",key:this.#n},Vi({class:o},...d))}#d(){let o=this.#o==="done"?this.#e:"breakout \u2197";return Vi({class:"bulb-controls",key:"controls"},this.#p("bulb-view",this.spread?"fit":"spread",this.spread?"Fit into the conversation column":"Spread to the full transcript width and height",()=>{this.spread=!this.spread,this.update()}),this.#p("bulb-toggle",this.showingCode?"run":"code",this.showingCode?"Back to the running bulb":"View this bulb's source",()=>{this.showingCode=!this.showingCode,this.update()}),this.#p(["bulb-copy",this.copied?"done":""],this.copied?"copied":"copy","Copy this bulb's full source",()=>this.#g()),Y0({class:["overlay-pill","bulb-breakout",this.#o==="busy"?"launching":""],type:"button",disabled:this.#o!=="idle",title:"Save as a standalone .bulb.md and open it with typebulb",onClick:a=>{a.stopPropagation(),this.#b()}},o))}#p(o,a,d,g){let m=Array.isArray(o)?o:[o];return Y0({class:["overlay-pill",...m],type:"button",title:d,onClick:v=>{v.stopPropagation(),g()}},a)}#g(){navigator.clipboard?.writeText(this.#t),this.copied=!0,this.update(),setTimeout(()=>{this.copied=!1,this.update()},1200)}async#b(){if(this.#o==="idle"){this.#o="busy",this.update();try{let{file:o}=await tb.server.breakout(this.#t);this.#e=`launched ${o}`,window.dispatchEvent(new CustomEvent("tb-breakout"))}catch(o){this.#e="breakout failed",console.error("[mirror] breakout failed",o)}this.#o="done",this.update(),setTimeout(()=>{this.#o="idle",this.update()},2500)}}#m(){return Vi({class:["bulb-code","md"],key:"code",tabIndex:0,onKeyDown:o=>{if(!((o.ctrlKey||o.metaKey)&&(o.key==="a"||o.key==="A")))return;o.preventDefault();let a=getSelection();if(!a)return;let d=document.createRange();d.selectNodeContents(o.currentTarget),a.removeAllRanges(),a.addRange(d)},onMounted:o=>{o.innerHTML=a9t.render(wxe(this.#t))}})}};function RIt(s){return s.map((o,a)=>!!o&&s[a+1]===o)}function PIt(s){let o=[];for(let a=0;a<s.length;a++)o[a]=a>0&&s[a]&&s[a]===s[a-1]?o[a-1]+1:1;return o}function l4n(s){return!s||typeof s!="object"?"":Gd(s.command)??Gd(s.file_path)??Gd(s.path)??Gd(s.pattern)??Gd(s.query)??Gd(s.url)??Gd(s.skill)??Gd(s.description)??""}var f4n=new Set(["Read","Edit","Write","MultiEdit","NotebookEdit","Glob","Grep"]),h4n=new Set(["Edit","Write","MultiEdit","NotebookEdit"]);function d4n(s,o){if(!(!f4n.has(s)||!o||typeof o!="object"))return(Gd(o.file_path)??Gd(o.path))||void 0}function p4n(s){let o=s.input??{};switch(s.name){case"Edit":return[{old:Gd(o.old_string),new:Gd(o.new_string)}];case"Write":return[{new:Gd(o.content)}];case"NotebookEdit":return[{new:Gd(o.new_source)}];case"MultiEdit":return Array.isArray(o.edits)?o.edits.map(a=>({old:a?.old_string,new:a?.new_string})):void 0;default:return}}function g4n(s){let o=new Map;for(let g of s)for(let m of g.tools)o.set(m.name,(o.get(m.name)??0)+1);let a=[...o].map(([g,m])=>m>1?`${g} \xD7${m}`:g).join(", "),d=s.length;return`${d} step${d===1?"":"s"}${a?` \xB7 ${a}`:""}`}var Dre=class extends El{messages=[];openTools=new Set;expandedTurns=new Set;expandedEmbeds=new Set;copyButtons=[];bulbEmbeds=[];scrollEl;#e=0;#t=0;#n=new Set;#i=new Map;#r=!0;get parent(){return this.ctx.parent}clear(){for(let o of this.bulbEmbeds)o.dispose();this.messages=[],this.expandedTurns.clear(),this.expandedEmbeds.clear(),this.#n=new Set,this.#i=new Map,this.copyButtons=[],this.bulbEmbeds=[]}#s(o){let a=new Xte(o);return this.copyButtons.push(a),a}#u(o){let a={...o,copy:o.text?this.#s(o.text):void 0};return this.messages.push(a),a}stickToBottomNextRender(){this.#r=!0}applyUser(o){let a=this.messages[this.messages.length-1];if(a&&a.role==="user"){a.segments=[...a.segments??[a.text],o.text],a.text=a.segments.join(`
|
|
1062
1062
|
|
|
1063
|
-
`),a.copy?a.copy.setText(a.text):a.text&&(a.copy=this.#s(a.text));return}this.#u({id:++this.#e,role:"user",text:o.text,thinking:"",tools:[]})}applyAssistant(o){let a=this.#u({id:++this.#e,role:"assistant",text:o.text,thinking:o.thinking,tools:o.tools.map(d=>({...d,isError:!1}))});if(this.#l(a,o.text),this.#c(),o.live)for(let d of o.tools)h4n.has(d.name)&&this.openTools.add(d.id)}#l(o,a){let d=d9t(a);d.some(g=>g.kind==="bulb")&&(o.body=d.map(g=>{if(g.kind==="md")return g.text;let m=new Mre(g.source,`embed-${this.#t++}`);return this.bulbEmbeds.push(m),m}))}#c(){let o=this.bulbEmbeds.map(g=>g.name),a=RIt(o),d=PIt(o);this.#n=new Set(this.bulbEmbeds.filter((g,m)=>a[m])),this.#i=new Map(this.bulbEmbeds.map((g,m)=>[g,d[m]])),this.bulbEmbeds.forEach((g,m)=>g.setMounted(!a[m]||this.expandedEmbeds.has(g.key)))}#a(o){this.expandedEmbeds.has(o)?this.expandedEmbeds.delete(o):this.expandedEmbeds.add(o),this.#c(),this.update()}applyToolResult(o){let a=this.#o(o.id);a&&(a.result=o.content,a.isError=o.isError)}#o(o){return this.messages.flatMap(a=>a.tools).find(a=>a.id===o)}scrollSoon(){requestAnimationFrame(()=>{this.scrollEl&&this.#r&&(this.scrollEl.scrollTop=this.scrollEl.scrollHeight)})}onScroll(){let o=this.scrollEl;o&&(this.#r=o.scrollHeight-(o.scrollTop+o.clientHeight)<50)}view(){return Vi({class:"messages",onScroll:()=>this.onScroll(),onMounted:o=>{this.scrollEl=o}},this.parent.ready?this.renderMessages():Vi({class:"note"},"Connecting\u2026"))}renderMessages(){let o=[],a=-1;for(let d of this.messages)d.role==="user"||o.length===0?(d.role==="user"&&a++,o.push({idx:Math.max(0,a),msgs:[d]})):o[o.length-1].msgs.push(d);return o.flatMap((d,g)=>this.renderTurn(d.msgs,d.idx,g===o.length-1))}renderTurn(o,a,d){let g=o.filter(T=>T.role==="assistant");if(d||g.length<2)return o.map(T=>this.bubble(T,a));let m=this.expandedTurns.has(a),v=g.slice(0,-1),A=g[g.length-1],I=o.filter(T=>T.role==="user").map(T=>this.bubble(T,a));if(I.push(this.turnSummary(v,a,m)),m)for(let T of v)I.push(this.bubble(T,a));return I.push(this.bubble(A,a)),I}turnSummary(o,a,d){return Vi({class:["bubble","assistant",gye(a)],key:`summary-${a}`},Vi({class:"turn-summary",onClick:()=>{d?this.expandedTurns.delete(a):this.expandedTurns.add(a),this.update()}},zu({class:"tool-caret"},d?"\u25BE":"\u25B8"),zu({class:"turn-summary-text"},g4n(o))))}bubble(o,a){let d=o.role==="assistant"&&!o.text&&!o.thinking&&o.tools.length>0;return Vi({class:["bubble",o.role,d?"tools-only":"",gye(a)],key:o.id},o.thinking?I5t({class:"thinking"},S5t("thinking"),I7(o.thinking)):null,this.#f(o),o.tools.map(g=>this.tool(g)),o.copy?o.copy.view():null)}#f(o){return o.body?o.body.flatMap((a,d)=>typeof a=="string"?a.trim()?[this.#d(`md-${o.id}-${d}`,Yte(a))]:[]:this.#h(a)):o.text?this.#d(`md-${o.id}`,o.role==="user"?h9t(o):Yte(o.text)):null}#h(o){if(!this.#n.has(o))return[o.view()];let a=this.#i.get(o)??1,d=this.expandedEmbeds.has(o.key),g=Vi({class:"md",key:`fold-${o.key}`},Vi({class:"bulb-fold",onClick:()=>this.#a(o.key)},zu({class:"tool-caret"},d?"\u25BE":"\u25B8"),zu({class:"bulb-fold-text"},`${o.name??"bulb"} \u2014 Version ${a}`),zu({class:"bulb-fold-app"},"\u{1F4A1}")));return d?[g,o.view()]:[g]}#d(o,a){return Vi({class:"md",key:o,onMounted:a})}tool(o){let a=this.openTools.has(o.id),d=d4n(o.name,o.input),g=d??l4n(o.input);return Vi({class:["tool",o.isError?"err":"",a?"open":""]},Vi({class:"tool-head",onClick:()=>{a?this.openTools.delete(o.id):this.openTools.add(o.id),this.update()}},zu({class:"tool-caret"},a?"\u25BE":"\u25B8"),Vi({class:"tool-label"},zu({class:"tool-name"},o.name),g?d?tM({class:"tool-sum link",title:d,onClick:m=>{m.preventDefault(),m.stopPropagation(),tb.server.openFile(d)}},d):zu({class:"tool-sum"},g):null),o.result===void 0?zu({class:"tool-run"},"\u2026"):null),a?this.toolBody(o):null,a&&o.result!==void 0?I7({class:"tool-out"},o.result.slice(0,4e3)):null)}toolBody(o){let a=p4n(o);return a?Vi({class:"diff"},...a.flatMap((d,g)=>[a.length>1?Vi({class:"diff-step"},`edit ${g+1}/${a.length}`):null,d.old?I7({class:"diff-old"},String(d.old)):null,d.new?I7({class:"diff-new"},String(d.new)):null])):I7({class:"tool-in"},JSON.stringify(o.input,null,2))}};var Bre=class extends El{ready=!1;cwd="";sessionId="";sessionPicker=new Nee;tokenPill=new Oee;bulbsPill=new jee;messageList=new Dre;tokens={in:0,out:0,cached:0,cacheCreate:0};working=!1;ownPid=0;#e=0;#t=!1;#n=!1;onAttached(){this.#n||(this.#n=!0,this.init())}closePopups(o){this.sessionPicker!==o&&this.sessionPicker.close(),this.bulbsPill!==o&&this.bulbsPill.close()}async init(){let o=await tb.server.info();this.cwd=o.cwd,this.ownPid=o.pid??0,this.ready=!0,this.updateTitle(),this.update(),this.pump()}updateTitle(){let o=bye(this.cwd),a=this.sessionPicker.currentPreview(),d=Bee(a,40);document.title=d&&o?`${d} \u2014 ${o}`:d||(o?`Claude
|
|
1063
|
+
`),a.copy?a.copy.setText(a.text):a.text&&(a.copy=this.#s(a.text));return}this.#u({id:++this.#e,role:"user",text:o.text,thinking:"",tools:[]})}applyAssistant(o){let a=this.#u({id:++this.#e,role:"assistant",text:o.text,thinking:o.thinking,tools:o.tools.map(d=>({...d,isError:!1}))});if(this.#l(a,o.text),this.#c(),o.live)for(let d of o.tools)h4n.has(d.name)&&this.openTools.add(d.id)}#l(o,a){let d=d9t(a);d.some(g=>g.kind==="bulb")&&(o.body=d.map(g=>{if(g.kind==="md")return g.text;let m=new Mre(g.source,`embed-${this.#t++}`);return this.bulbEmbeds.push(m),m}))}#c(){let o=this.bulbEmbeds.map(g=>g.name),a=RIt(o),d=PIt(o);this.#n=new Set(this.bulbEmbeds.filter((g,m)=>a[m])),this.#i=new Map(this.bulbEmbeds.map((g,m)=>[g,d[m]])),this.bulbEmbeds.forEach((g,m)=>g.setMounted(!a[m]||this.expandedEmbeds.has(g.key)))}#a(o){this.expandedEmbeds.has(o)?this.expandedEmbeds.delete(o):this.expandedEmbeds.add(o),this.#c(),this.update()}applyToolResult(o){let a=this.#o(o.id);a&&(a.result=o.content,a.isError=o.isError)}#o(o){return this.messages.flatMap(a=>a.tools).find(a=>a.id===o)}scrollSoon(){requestAnimationFrame(()=>{this.scrollEl&&this.#r&&(this.scrollEl.scrollTop=this.scrollEl.scrollHeight)})}onScroll(){let o=this.scrollEl;o&&(this.#r=o.scrollHeight-(o.scrollTop+o.clientHeight)<50)}view(){return Vi({class:"messages",onScroll:()=>this.onScroll(),onMounted:o=>{this.scrollEl=o}},this.parent.ready?this.renderMessages():Vi({class:"note"},"Connecting\u2026"))}renderMessages(){let o=[],a=-1;for(let d of this.messages)d.role==="user"||o.length===0?(d.role==="user"&&a++,o.push({idx:Math.max(0,a),msgs:[d]})):o[o.length-1].msgs.push(d);return o.flatMap((d,g)=>this.renderTurn(d.msgs,d.idx,g===o.length-1))}renderTurn(o,a,d){let g=o.filter(T=>T.role==="assistant");if(d||g.length<2)return o.map(T=>this.bubble(T,a));let m=this.expandedTurns.has(a),v=g.slice(0,-1),A=g[g.length-1],I=o.filter(T=>T.role==="user").map(T=>this.bubble(T,a));if(I.push(this.turnSummary(v,a,m)),m)for(let T of v)I.push(this.bubble(T,a));return I.push(this.bubble(A,a)),I}turnSummary(o,a,d){return Vi({class:["bubble","assistant",gye(a)],key:`summary-${a}`},Vi({class:"turn-summary",onClick:()=>{d?this.expandedTurns.delete(a):this.expandedTurns.add(a),this.update()}},zu({class:"tool-caret"},d?"\u25BE":"\u25B8"),zu({class:"turn-summary-text"},g4n(o))))}bubble(o,a){let d=o.role==="assistant"&&!o.text&&!o.thinking&&o.tools.length>0;return Vi({class:["bubble",o.role,d?"tools-only":"",gye(a)],key:o.id},o.thinking?I5t({class:"thinking"},S5t("thinking"),I7(o.thinking)):null,this.#f(o),o.tools.map(g=>this.tool(g)),o.copy?o.copy.view():null)}#f(o){return o.body?o.body.flatMap((a,d)=>typeof a=="string"?a.trim()?[this.#d(`md-${o.id}-${d}`,Yte(a))]:[]:this.#h(a)):o.text?this.#d(`md-${o.id}`,o.role==="user"?h9t(o):Yte(o.text)):null}#h(o){if(!this.#n.has(o))return[o.view()];let a=this.#i.get(o)??1,d=this.expandedEmbeds.has(o.key),g=Vi({class:"md",key:`fold-${o.key}`},Vi({class:"bulb-fold",onClick:()=>this.#a(o.key)},zu({class:"tool-caret"},d?"\u25BE":"\u25B8"),zu({class:"bulb-fold-text"},`${o.name??"bulb"} \u2014 Version ${a}`),zu({class:"bulb-fold-app"},"\u{1F4A1}")));return d?[g,o.view()]:[g]}#d(o,a){return Vi({class:"md",key:o,onMounted:a})}tool(o){let a=this.openTools.has(o.id),d=d4n(o.name,o.input),g=d??l4n(o.input);return Vi({class:["tool",o.isError?"err":"",a?"open":""]},Vi({class:"tool-head",onClick:()=>{a?this.openTools.delete(o.id):this.openTools.add(o.id),this.update()}},zu({class:"tool-caret"},a?"\u25BE":"\u25B8"),Vi({class:"tool-label"},zu({class:"tool-name"},o.name),g?d?tM({class:"tool-sum link",title:d,onClick:m=>{m.preventDefault(),m.stopPropagation(),tb.server.openFile(d)}},d):zu({class:"tool-sum"},g):null),o.result===void 0?zu({class:"tool-run"},"\u2026"):null),a?this.toolBody(o):null,a&&o.result!==void 0?I7({class:"tool-out"},o.result.slice(0,4e3)):null)}toolBody(o){let a=p4n(o);return a?Vi({class:"diff"},...a.flatMap((d,g)=>[a.length>1?Vi({class:"diff-step"},`edit ${g+1}/${a.length}`):null,d.old?I7({class:"diff-old"},String(d.old)):null,d.new?I7({class:"diff-new"},String(d.new)):null])):I7({class:"tool-in"},JSON.stringify(o.input,null,2))}};var Bre=class extends El{ready=!1;cwd="";sessionId="";sessionPicker=new Nee;tokenPill=new Oee;bulbsPill=new jee;messageList=new Dre;tokens={in:0,out:0,cached:0,cacheCreate:0};working=!1;ownPid=0;#e=0;#t=!1;#n=!1;onAttached(){this.#n||(this.#n=!0,this.init())}closePopups(o){this.sessionPicker!==o&&this.sessionPicker.close(),this.bulbsPill!==o&&this.bulbsPill.close()}async init(){let o=await tb.server.info();this.cwd=o.cwd,this.ownPid=o.pid??0,this.ready=!0,this.updateTitle(),this.update(),this.pump()}updateTitle(){let o=bye(this.cwd),a=this.sessionPicker.currentPreview(),d=Bee(a,40);document.title=d&&o?`${d} \u2014 ${o}`:d||(o?`Claude Mirror \u2014 ${o}`:"Claude Mirror")}pump(){if(this.#t)return;this.#t=!0;let o=async()=>{try{let{events:a,cursor:d,working:g}=await tb.server.poll(this.#e);this.#e=d;for(let v of a)this.apply(v);let m=g!==this.working;this.working=g,(a.length||m)&&this.update(),a.length&&this.messageList.scrollSoon()}catch(a){console.error("[mirror] poll failed",a)}setTimeout(o,600)};o()}apply(o){switch(o.type){case"cleared":this.messageList.clear(),this.tokens={in:0,out:0,cached:0,cacheCreate:0};break;case"session":this.sessionId=o.sessionId,this.updateTitle();break;case"user":this.messageList.applyUser(o);break;case"assistant":this.messageList.applyAssistant(o);break;case"tool_result":this.messageList.applyToolResult(o);break;case"usage":this.tokens={in:o.in,out:o.out,cached:o.cached,cacheCreate:o.cacheCreate};break}}view(){return Vi({class:"app"},this.messageList.view(),this.statusbar())}statusbar(){return Vi({class:"statusbar"},Vi({class:"statusbar-actions"},this.working?Vi({class:"working"},zu({class:"working-dot"}),"working\u2026"):null,this.tokenPill.view(),this.sessionPicker.view(),this.bulbsPill.view()))}};document.title="Claude Mirror";new _5t({root:new Bre,id:"app"});
|
|
1064
1064
|
/*! Bundled license information:
|
|
1065
1065
|
|
|
1066
1066
|
dompurify/dist/purify.es.mjs:
|
package/dist/index.js
CHANGED
|
@@ -149,7 +149,7 @@ ${t.comment}`:t.comment}this.doc.range[2]=t.offset;break}default:this.errors.pus
|
|
|
149
149
|
`).trim();l&&n.push({text:l,startLine:i+1,endLine:o+1})}};for(let l=0;l<s.length;l++)s[l].trim()?(a>=2&&o>=i&&(c(),i=l),a=0,o=l):a++;return c(),n}function mo(r){return Ey(r).map(e=>e.text)}var ku=N(()=>{ho()});var Cs=N(()=>{Cr();Sa();ka();Ea();ho();ku();Rr()});function Rs(r){return{...va(r),server:r.files.get("server.ts")??""}}var go=N(()=>{Cs();Cs();Cs()});import{join as Io,resolve as ab}from"path";import{homedir as cb}from"os";function zs(){let r=process.env.TYPEBULB_SERVERS_DIR;return r?Io(r,".."):Io(cb(),".typebulb")}function Ue(){return process.env.TYPEBULB_SERVERS_DIR||Io(zs(),"servers")}function q(r){let e=ab(r);return(process.platform==="win32"?e.toLowerCase():e).replace(/\\/g,"/")}function Xu(r,e){let t=q(r),s=q(e);return t.startsWith(s.endsWith("/")?s:s+"/")?!t.includes("/node_modules/"):!1}var vr=N(()=>{});import{readFileSync as lb,writeFileSync as ub,mkdirSync as fb}from"fs";import{join as db}from"path";function Zu(){return db(zs(),"trust.json")}function _o(){try{let r=JSON.parse(lb(Zu(),"utf8"));return new Set(Array.isArray(r)?r:[])}catch{return new Set}}function pb(r){fb(zs(),{recursive:!0}),ub(Zu(),JSON.stringify([...r]))}function Je(r){return _o().has(q(r))}function mt(r,e){let t=_o(),s=q(r);(e?t.has(s):!t.has(s))||(e?t.add(s):t.delete(s),pb(t))}function Lo(){return[..._o()]}var Sr=N(()=>{vr()});function bt(r){if(r.server.trim())return"server-side code (server.ts)";let e=r.code;if(/\btb\s*\.\s*fs\b/.test(e)||e.includes("/__fs"))return"the filesystem";if(/\btb\s*\.\s*ai\b/.test(e)||e.includes("/__ai"))return"AI (your API keys)";if(/\btb\s*\.\s*server\s*\.\s*(?!log\b)\w/.test(e)||e.includes("/__api"))return"server-side code (server.ts)"}var en=N(()=>{});import{spawn as pf}from"child_process";import{readdir as _b,readFile as gf,writeFile as yf,unlink as xr,mkdir as Lb}from"fs/promises";import{mkdirSync as $b,writeFileSync as hf,appendFileSync as Mb,readFileSync as bf}from"fs";import*as ne from"path";import{fileURLToPath as Db}from"url";function Bo(r){return ne.join(Ue(),`${r}.json`)}function Er(r){return ne.join(Ue(),`${r}.log`)}function tn(r){let e=Er(r);try{$b(Ue(),{recursive:!0}),hf(e,"")}catch{return()=>{}}let t=process.stdout.write.bind(process.stdout),s=process.stderr.write.bind(process.stderr),n=0,i=!1,o=a=>{if(!i)try{let c=typeof a=="string"?Buffer.from(a,"utf8"):Buffer.from(a);if(Mb(e,c),n+=c.length,n>2*mf){let l=bf(e),f=l.subarray(Math.max(0,l.length-mf));hf(e,f),n=f.length}}catch{i=!0}};return process.stdout.write=((a,...c)=>(o(a),t(a,...c))),process.stderr.write=((a,...c)=>(o(a),s(a,...c))),()=>{process.stdout.write=t,process.stderr.write=s}}function wt(r,e=0){try{let t=bf(Er(r)),s=e>=0&&e<=t.length?e:0;return{text:t.subarray(s).toString("utf8"),offset:t.length}}catch{return{text:"",offset:0}}}function Bb(r){try{return process.kill(r,0),!0}catch(e){return e.code==="EPERM"}}async function rn(r){await Lb(Ue(),{recursive:!0}),await yf(Bo(r.pid),JSON.stringify(r))}async function wf(r,e){let t=Bo(r);try{let s=JSON.parse(await gf(t,"utf8"));if(s.denied===e)return;s.denied=e,await yf(t,JSON.stringify(s))}catch{}}async function Ar(r){await xr(Bo(r)).catch(()=>{}),await xr(Er(r)).catch(()=>{})}async function j(r){let e;try{e=await _b(Ue())}catch{return[]}let t=[];return await Promise.all(e.map(async n=>{if(!n.endsWith(".json"))return;let i=ne.join(Ue(),n),o;try{o=JSON.parse(await gf(i,"utf8"))}catch{await xr(i).catch(()=>{});return}o&&typeof o.pid=="number"&&Bb(o.pid)?t.push(o):(await xr(i).catch(()=>{}),o?.pid&&await xr(Er(o.pid)).catch(()=>{}))})),(r?t.filter(n=>n.agent==null&&Xu(n.file,r)):t).sort((n,i)=>n.startedAt-i.startedAt)}async function vt(r){try{process.kill(r,"SIGTERM")}catch{}await Ar(r)}function Fb(){return ne.join(ne.dirname(Db(import.meta.url)),"index.js")}function jb(r,e={}){return{command:process.execPath,args:[Fb(),...e.trust?["--trust"]:[],r,...e.open===!1?["--no-open"]:[]]}}async function sn(r,e={}){let t=e.cwd??process.cwd(),s=ne.resolve(t,r),n=(await j()).find(l=>l.file===s);if(n)return n;let{command:i,args:o}=jb(r,e);(process.platform==="win32"?pf("cmd",["/c","start","","/b",i,...o],{cwd:t,stdio:"ignore",windowsHide:!0}):pf(i,o,{cwd:t,detached:!0,stdio:"ignore"})).unref();let c=Date.now()+2e4;for(;Date.now()<c;){await qb(150);let l=(await j()).find(f=>f.file===s);if(l)return l}throw new Error(`Launched ${ne.basename(r)} but it did not register within 20s.`)}var mf,qb,We=N(()=>{vr();mf=1e6;qb=r=>new Promise(e=>setTimeout(e,r))});function yn(r){let e=/^---[^\n]*\n([\s\S]*?)\n---/.exec(r),t=e?/^\s*name:\s*(.+?)\s*$/m.exec(e[1]):null;return t?t[1].replace(/^["']|["']$/g,""):void 0}function Qo(r){return(yn(r)??"bulb").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||"bulb"}var Xo=N(()=>{});import{readdirSync as pw,readFileSync as hw,statSync as mw}from"fs";import{join as Yf,basename as gw}from"path";function Hf(r,e,t){if(e>8)return t;let s;try{s=pw(r,{withFileTypes:!0})}catch{return t}for(let n of s)if(n.isDirectory()){if(n.name.startsWith(".")||n.name==="node_modules")continue;Hf(Yf(r,n.name),e+1,t)}else n.isFile()&&n.name.endsWith(".bulb.md")&&t.push(Yf(r,n.name));return t}function Zo(r){return Hf(r,0,[]).map(e=>{let t=0;try{t=mw(e).mtimeMs}catch{}let s;try{s=yn(hw(e,"utf8").slice(0,1024))}catch{}return{path:e,name:s??gw(e).replace(/\.bulb\.md$/,""),mtime:t}})}var Gf=N(()=>{Xo()});import{readFile as yw}from"fs/promises";async function ea(r){try{let e=Ir(await yw(r,"utf-8"));return e?bt(Rs(e)):void 0}catch{return}}var zf=N(()=>{go();en()});import{spawn as bw}from"child_process";import{basename as ww}from"path";function vw(){return process.env.TYPEBULB_EDITOR||"code"}function kw(r,e,t){return t==null?[e]:Sw.test(ww(r))?["-g",`${e}:${t}`]:[`+${t}`,e]}function xw(r,e){let t=vw();return{command:t,args:kw(t,r,e)}}function ta(r,e){let{command:t,args:s}=xw(r,e),n=bw(t,s,{shell:!0,detached:!0,stdio:"ignore"});n.on("error",i=>console.error("[typebulb] editor launch failed:",i?.message??i)),n.unref()}var Sw,Qf=N(()=>{Sw=/^(code|code-insiders|codium|vscodium|cursor|windsurf)(\.cmd|\.exe)?$/i});var Xf=N(()=>{We();Gf();zf();Xo();Qf();Sr()});var bn,Zf=N(()=>{bn=class{#e=new Map;accept(e,t){return this.#e.get(e)===t?!1:(this.#e.set(e,t),!0)}}});var bd={};_d(bd,{attach:()=>zw,blockToMarkdown:()=>aa,breakout:()=>Xw,capText:()=>Or,info:()=>Jw,isHiddenTurn:()=>ca,launchBulb:()=>rv,listBreakouts:()=>Zw,listBulbFiles:()=>tv,listSessions:()=>Gw,logEmbedError:()=>Ww,openFile:()=>Qw,poll:()=>Kw,predictTrustOf:()=>sv,readBulbLog:()=>iv,setBulbTrust:()=>nv,stopBreakout:()=>ev});import{existsSync as Et,openSync as sd,readSync as nd,closeSync as id,statSync as ze,readdirSync as na,watchFile as Ew,unwatchFile as ed,mkdirSync as od,writeFileSync as ad,readFileSync as ia,unlinkSync as Aw,rmSync as Tw}from"fs";import{join as B}from"path";import{homedir as Pw}from"os";function cd(r){return r?.message??String(r)}function Ow(r){return r.replace(/[^a-zA-Z0-9]/g,"-")}function ld(r){let e=oa(r);if(!Et(e))return[];let t;try{t=na(e)}catch{return[]}let s=[];for(let n of t){if(!n.endsWith(".jsonl"))continue;let i=B(e,n);try{let o=ze(i);o.isFile()&&s.push({sessionId:n.slice(0,-6),file:i,mtime:o.mtimeMs})}catch{}}return s}function vn(r){return B(r,Rw)}function fd(r,e){return B(vn(r),`${e}.lock`)}function _w(r,e){try{let t=fd(r,e);if(Date.now()-ze(t).mtimeMs>=ud)return!1;try{if(parseInt(ia(t,"utf8").trim(),10)===process.pid)return!1}catch{}return!0}catch{return!1}}function dd(r,e){if(e)try{od(vn(r),{recursive:!0}),ad(fd(r,e),String(process.pid))}catch(t){console.error("[lock] claim failed:",cd(t))}}function Lw(r){try{Tw(B(r,".claude-bulb"),{recursive:!0,force:!0})}catch{}}function $w(r){let e=vn(r);if(!Et(e))return;let t;try{t=na(e)}catch{return}let s=Date.now();for(let n of t){if(!n.endsWith(".lock"))continue;let i=B(e,n);try{let o=ze(i);s-o.mtimeMs>Iw&&Aw(i)}catch{}}}function aa(r){let e=r?.type==="image"?r.source:void 0;return e?.type==="base64"&&e.data?``:""}function Or(r){return r.length>ra?r.slice(0,ra)+`
|
|
150
150
|
\u2026[${r.length-ra} more characters truncated]`:r}function sa(r){return typeof r=="string"?Or(r):Array.isArray(r)?r.map(e=>{if(typeof e=="string")return Or(e);let t=e;return typeof t?.text=="string"?Or(t.text):t?.content!=null?sa(t.content):aa(t)}).join(`
|
|
151
151
|
`):r==null?"":Or(JSON.stringify(r))}function pd(r){try{return ze(r),!1}catch(e){return e.code==="ENOENT"}}function hd(){let r=W;if(r.file&&!pd(r.file)){dd(r.cwd,r.sessionId);return}let e=Mw(r);e&&md(e)}function Mw(r){if(!r.everAttached)return Dw(r.cwd)??Bw(r.cwd,()=>!0)}function Dw(r){let e=vn(r);if(!Et(e))return;let t;try{t=na(e)}catch{return}let s;for(let i of t)if(i.endsWith(".lock"))try{let o=ze(B(e,i));if(Date.now()-o.mtimeMs>=ud||parseInt(ia(B(e,i),"utf8").trim(),10)!==process.pid)continue;(!s||o.mtimeMs>s.mtime)&&(s={sessionId:i.slice(0,-5),mtime:o.mtimeMs})}catch{}if(!s)return;let n=B(oa(r),`${s.sessionId}.jsonl`);if(!pd(n))return{sessionId:s.sessionId,file:n,mtime:s.mtime}}function Bw(r,e){return ld(r).sort((t,s)=>s.mtime-t.mtime).find(t=>!_w(r,t.sessionId)&&e(t))}function md(r){let e=W;if(e.file)try{ed(e.file)}catch{}e.file=r.file,e.sessionId=r.sessionId,e.everAttached=!0,e.partial="",e.offset=0,e.latest={in:0,out:0,cached:0,cacheCreate:0},e.entries=new Map,e.chainLastUuid=void 0,e.buffer.push({type:"cleared"}),e.buffer.push({type:"session",sessionId:r.sessionId}),dd(e.cwd,r.sessionId),td();try{ed(r.file)}catch{}Ew(r.file,{interval:200},()=>td())}function td(){let r=W;if(!r.file)return;let e;try{e=ze(r.file).size}catch{return}if(e<=r.offset)return;let t;try{t=sd(r.file,"r")}catch{return}try{let c=e-r.offset,l=Buffer.alloc(c),f=0;for(;f<c;){let u=nd(t,l,f,c-f,r.offset+f);if(!u)break;f+=u}r.offset+=f,r.partial+=l.subarray(0,f).toString("utf8")}finally{id(t)}let s,n;for(;(n=r.partial.indexOf(`
|
|
152
|
-
`))>=0;){let c=r.partial.slice(0,n);if(r.partial=r.partial.slice(n+1),!c.trim())continue;let l;try{l=JSON.parse(c)}catch{continue}l&&l.uuid&&(r.entries.set(l.uuid,l),l.isSidechain||(s=l.uuid))}if(!s)return;let i=[],o=r.entries.get(s),a=!1;for(;o;){if(i.push(o),o.uuid===r.chainLastUuid){a=!0;break}o=o.parentUuid?r.entries.get(o.parentUuid):void 0}if(a)for(let c=i.length-2;c>=0;c--)rd(i[c]);else{r.chainLastUuid!==void 0&&(r.buffer.push({type:"cleared"}),r.buffer.push({type:"session",sessionId:r.sessionId}),r.latest={in:0,out:0,cached:0,cacheCreate:0});for(let c=i.length-1;c>=0;c--)rd(i[c])}r.chainLastUuid=s}function gd(r){let e=r.trim();return!!e&&qw.some(t=>t.test(e))}function jw(r){return r.replace(Fw,"")}function wn(r){let e=jw(r).trim();return e&&!gd(e)?e:""}function yd(r){return r?.type==="text"&&typeof r.text=="string"?wn(r.text):""}function ca(r){return!!r.isSidechain||!!r.isMeta}function rd(r){try{Uw(r)}catch(e){console.error("[
|
|
152
|
+
`))>=0;){let c=r.partial.slice(0,n);if(r.partial=r.partial.slice(n+1),!c.trim())continue;let l;try{l=JSON.parse(c)}catch{continue}l&&l.uuid&&(r.entries.set(l.uuid,l),l.isSidechain||(s=l.uuid))}if(!s)return;let i=[],o=r.entries.get(s),a=!1;for(;o;){if(i.push(o),o.uuid===r.chainLastUuid){a=!0;break}o=o.parentUuid?r.entries.get(o.parentUuid):void 0}if(a)for(let c=i.length-2;c>=0;c--)rd(i[c]);else{r.chainLastUuid!==void 0&&(r.buffer.push({type:"cleared"}),r.buffer.push({type:"session",sessionId:r.sessionId}),r.latest={in:0,out:0,cached:0,cacheCreate:0});for(let c=i.length-1;c>=0;c--)rd(i[c])}r.chainLastUuid=s}function gd(r){let e=r.trim();return!!e&&qw.some(t=>t.test(e))}function jw(r){return r.replace(Fw,"")}function wn(r){let e=jw(r).trim();return e&&!gd(e)?e:""}function yd(r){return r?.type==="text"&&typeof r.text=="string"?wn(r.text):""}function ca(r){return!!r.isSidechain||!!r.isMeta}function rd(r){try{Uw(r)}catch(e){console.error("[mirror] skipped malformed entry:",cd(e))}}function Uw(r){if(ca(r))return;let e=W;if(r.type==="user"){let t=r.message?.content;if(typeof t=="string"){let s=wn(t);s&&e.buffer.push({type:"user",text:s})}else if(Array.isArray(t))for(let s of t)if(s?.type==="tool_result")e.buffer.push({type:"tool_result",id:s.tool_use_id??"",content:sa(s.content),isError:!!s.is_error});else{let n=yd(s)||aa(s);n&&e.buffer.push({type:"user",text:n})}}else if(r.type==="attachment"&&r.attachment?.type==="queued_command"){let t=wn(sa(r.attachment.prompt));t&&e.buffer.push({type:"user",text:t})}else if(r.type==="assistant"){let t=r.message?.content,s=Array.isArray(t)?t:[],n=s.filter(c=>c.type==="text").map(c=>c.text??"").filter(c=>!gd(c)).join(""),i=s.filter(c=>c.type==="thinking").map(c=>c.thinking??"").join(`
|
|
153
153
|
`),o=s.filter(c=>c.type==="tool_use").map(c=>({id:c.id??"",name:c.name??"",input:c.input??{}}));if(n||i||o.length){let c=Date.parse(r.timestamp??""),l=!isNaN(c)&&c>=e.sessionStartMs;e.buffer.push({type:"assistant",text:n,thinking:i,tools:o,live:l})}let a=r.message?.usage??r.usage;a&&(e.latest={in:a.input_tokens??0,out:a.output_tokens??0,cached:a.cache_read_input_tokens??0,cacheCreate:a.cache_creation_input_tokens??0},e.buffer.push({type:"usage",...e.latest}))}}async function Jw(){return{cwd:W.cwd,pid:process.pid}}async function Kw(r){let e=W;return hd(),{events:e.buffer.slice(r),cursor:e.buffer.length,working:Yw(e)}}async function Ww(r,e){Vw.accept(r,e)&&console.log(e)}function Yw(r){let e;for(let i of r.entries.values())(i.type==="user"||i.type==="assistant")&&(e=i);if(!e)return!1;if(e.type==="user")return!0;let s=(Array.isArray(e.message?.content)?e.message.content:[]).filter(i=>i.type==="tool_use").map(i=>i.id);if(s.length===0)return!1;let n=new Set;for(let i of r.entries.values()){let o=i.message?.content;if(Array.isArray(o))for(let a of o)a.type==="tool_result"&&a.tool_use_id&&n.add(a.tool_use_id)}return s.some(i=>i&&!n.has(i))}function Hw(r){let e;try{e=sd(r,"r")}catch{return""}try{let s=65536;try{s=ze(r).size}catch{}let n=(l,f)=>{if(f<=0)return"";let u=Buffer.alloc(f),d=nd(e,u,0,f,l);return u.subarray(0,d).toString("utf8")},i=(l,f,u)=>{let d="";for(let p of l.split(`
|
|
154
154
|
`)){if(!p.includes(`"${f}"`))continue;let g;try{g=JSON.parse(p)}catch{continue}let h=g?.[u];g?.type===f&&typeof h=="string"&&h&&(d=h)}return d},o=n(0,Math.min(65536,s)),a=s>65536?n(s-65536,65536):"",c=i(a,"custom-title","customTitle")||i(o,"custom-title","customTitle")||i(a,"ai-title","aiTitle")||i(o,"ai-title","aiTitle");if(c)return c.replace(/\s+/g," ").trim().slice(0,200);for(let l of o.split(`
|
|
155
155
|
`)){if(!l.trim())continue;let f;try{f=JSON.parse(l)}catch{continue}if(!f||ca(f)||f.type!=="user")continue;let u=f.message?.content,d="";typeof u=="string"?d=wn(u):Array.isArray(u)&&(d=u.map(yd).filter(Boolean).join(" "));let p=d.replace(/\s+/g," ").trim();if(p)return(p.replace(/^Continuing from a prior session\. Here is the summary of our work so far:\s*/i,"").trim()||p).slice(0,200)}return""}finally{id(e)}}async function Gw(){return ld(W.cwd).sort((r,e)=>e.mtime-r.mtime).map(({sessionId:r,file:e,mtime:t})=>({sessionId:r,mtime:t,preview:Hw(e)}))}async function zw(r){let e=W,t=B(oa(e.cwd),`${r}.jsonl`);return Et(t)?t===e.file?{ok:!0}:(md({sessionId:r,file:t}),{ok:!0}):{ok:!1,error:"session not found"}}async function Qw(r,e){return ta(r,e),{ok:!0}}async function Xw(r){let e=W.cwd,t=B(e,"typebulbs");od(t,{recursive:!0});let s=Qo(r),n=`${s}.bulb.md`;for(let c=2;Et(B(t,n))&&ia(B(t,n),"utf8")!==r;c++)n=`${s}-${c}.bulb.md`;let i=B(t,n);Et(i)||ad(i,r);let o=B("typebulbs",n),a=await sn(o,{cwd:e,open:!0});return{ok:!0,file:o,pid:a.pid,url:a.url}}async function Zw(){return j(W.cwd)}async function ev(r){return await vt(r),{ok:!0}}async function tv(){return Zo(W.cwd).map(r=>({...r,trusted:Je(r.path)}))}async function rv(r,e){let t=W.cwd;e!=null&&mt(r,e);let s=await sn(r,{cwd:t,open:!0,trust:e});return{ok:!0,file:s.file,pid:s.pid,url:s.url,trust:!!s.trust}}async function sv(r){return{cap:await ea(r)}}async function nv(r,e){return mt(r,e),{ok:!0}}async function iv(r,e){return wt(r,e)}var Nw,Cw,oa,Rw,ud,Iw,ra,W,qw,Fw,Vw,wd=N(()=>{Xf();Zf();Nw=".typebulb",Cw=B(Pw(),".claude","projects"),oa=r=>B(Cw,Ow(r));Rw=`${Nw}/locks`,ud=5e3,Iw=6e4;ra=5e4;W={cwd:process.cwd(),sessionId:"",sessionStartMs:Date.now(),buffer:[],partial:"",offset:0,latest:{in:0,out:0,cached:0,cacheCreate:0},everAttached:!1,entries:new Map};qw=[/\[Request interrupted by user\b/i,/\[Tool use was interrupted\]/i,/Claude Code returned an error/i,/\[ede_diagnostic\]/i,/^No response requested\.?$/i,/^<task-notification\b/i,/^<system-reminder\b/i];Fw=/<ide_[a-z_]+>[\s\S]*?<\/ide_[a-z_]+>/gi;Vw=new bn;Lw(W.cwd);$w(W.cwd);hd()});import*as Pd from"fs/promises";import*as ge from"path";import*as ua from"fs/promises";import{existsSync as Qe,readFileSync as Md}from"fs";import*as L from"path";import{pathToFileURL as Dd}from"url";import{resolve as En}from"resolve.exports";import{init as fa,parse as da}from"es-module-lexer";function pa(r,e){let t=L.join(r,"package.json");try{return JSON.parse(Md(t,"utf8"))}catch{throw new Error(`--replace package '${e}' has no readable package.json at ${t}`)}}var xn=["browser","import","default"],la=["node","import","default"];function ha(r){let e=r.indexOf("=");if(e===-1)throw new Error(`--replace must be <name>=<path> (got '${r}')`);let t=r.slice(0,e).trim(),s=r.slice(e+1).trim();if(!t)throw new Error(`--replace missing package name (got '${r}')`);if(!s)throw new Error(`--replace missing path for '${t}'`);if(t.startsWith("@"))throw new Error(`--replace does not support scoped names yet; '${t}' is scoped`);return{name:t,dir:L.resolve(s)}}async function ma(r){let{name:e,dir:t}=r;if(!Qe(t))throw new Error(`--replace path for '${e}' does not exist: ${t}`);let s=pa(t,e),n=Bd(s,e),i=L.resolve(t,n);if(!Qe(i))throw new Error(`--replace package '${e}' entry not found on disk: ${i} \u2014 did you build it (e.g. \`pnpm run build\`)?`);let o=L.dirname(i),a=`/local/${e}/${L.basename(i)}`,c=qd(s,t);return await Fd(e,i,o),{name:e,dir:t,entryAbs:i,serveDir:o,entryUrl:a,typesAbs:c}}function Bd(r,e){if(r.exports!==void 0){let s;try{s=En(r,".",{browser:!0,conditions:xn})}catch(i){throw new Error(`--replace package '${e}' "exports" does not resolve a browser entry (conditions: ${xn.join(", ")}): ${i instanceof Error?i.message:i}`)}let n=An(s);if(!n)throw new Error(`--replace package '${e}' "exports" did not resolve "." to a single file (conditions: ${xn.join(", ")}); too complex to override.`);return n}let t=r.module??r.main;if(!t)throw new Error(`--replace package '${e}' has no "exports", "module", or "main" entry to resolve.`);return t}function qd(r,e){if(r.exports!==void 0)try{let s=En(r,".",{conditions:["types"]}),n=An(s);if(n){let i=L.resolve(e,n);if(Qe(i))return i}}catch{}let t=r.types??r.typings;if(t){let s=L.resolve(e,t);if(Qe(s))return s}}function An(r){if(typeof r=="string")return r;if(Array.isArray(r))return r.find(e=>typeof e=="string")}async function Fd(r,e,t){await fa;let s=L.normalize(t),n=new Set,i=[e];for(;i.length;){let o=i.shift();if(n.has(o))continue;n.add(o);let a;try{a=await ua.readFile(o,"utf8")}catch{continue}let c,l;try{[c,,,l]=da(a,o)}catch{continue}if(o===e&&!l)throw new Error(`override package '${r}' entry is not an ES module (no import/export syntax); CommonJS or non-module entries aren't supported (esm.sh would have to transform it).`);for(let f of c){if(f.d===-2)continue;let u=f.n;if(u&&!u.startsWith("node:")){if(u.startsWith("./")||u.startsWith("../")||u.startsWith("/")){let d=jd(o,u,s);d&&!n.has(d)&&i.push(d);continue}throw new Error(`override package must ship self-contained (bundle its dependencies); ${r} externalizes '${u}'`)}}}}function jd(r,e,t){let s=e.replace(/[?#].*$/,""),n=L.resolve(L.dirname(r),s),i=[n,n+".js",n+".mjs",L.join(n,"index.js"),L.join(n,"index.mjs")];for(let o of i)if(L.normalize(o).startsWith(t)&&Qe(o))return o}function Ud(r,e,t){let s=pa(r,e),n;if(s.exports!==void 0)try{n=An(En(s,t,{conditions:la}))}catch(o){throw new Error(`--replace package '${e}' "exports" does not resolve a node entry for '${t}' (conditions: ${la.join(", ")}): ${o instanceof Error?o.message:o}`)}else t==="."&&(n=s.main??s.module);if(!n)throw new Error(`--replace package '${e}' has no node export for '${t}'.`);let i=L.resolve(r,n);if(!Qe(i))throw new Error(`--replace package '${e}' built file not found: ${i} \u2014 did you build it (e.g. \`pnpm run build\`)?`);return Dd(i).href}async function ga(r,e){await fa;let t;try{[t]=da(r)}catch{return r}let s="",n=0;for(let i of t){if(i.d!==-1)continue;let o=i.n;if(!o||o!==e.name&&!o.startsWith(e.name+"/"))continue;let a=o===e.name?".":"."+o.slice(e.name.length),c=Ud(e.dir,e.name,a);s+=r.slice(n,i.s)+c,n=i.e}return s+r.slice(n)}function ya(r){let e={subcommand:"run",file:"",port:3e3,watch:!0,open:!0,server:!1,trust:!1,noTrust:!1,follow:!1,help:!1,version:!1,callArgs:[],hasArgsFlag:!1},t=["call","check","predict","logs","stop","trust","untrust","skill","models"],s=r[0];if(s==="agent"||s?.startsWith("agent:")){e.subcommand="agent";let i=s.indexOf(":");if(i!==-1){let o=s.slice(i+1);o&&(e.agentTarget=o)}r=r.slice(1)}else s&&t.includes(s)&&(e.subcommand=s,r=r.slice(1));let n=[];for(let i=0;i<r.length;i++){let o=r[i];if(o==="--help"||o==="-h")e.help=!0;else if(o==="--version"||o==="-V")e.version=!0;else if(o==="--no-watch")e.watch=!1;else if(o==="--no-open")e.open=!1;else if(o==="--server")e.server=!0;else if(o==="--trust")e.trust=!0;else if(o==="--no-trust")e.noTrust=!0;else if(o==="--mode"){let a=r[++i];(!a||a.startsWith("-"))&&(console.error("Missing value for --mode (e.g. --mode staging)"),process.exit(1)),e.mode=a}else if(o==="--follow"||o==="-f")e.follow=!0;else if(o==="--bulbs")e.stopScope="bulbs";else if(o==="--agent")e.stopScope="agent";else if(o==="--global")e.stopScope="global";else if(o==="--lines"||o==="-n"){let a=parseInt(r[++i],10);(isNaN(a)||a<0)&&(console.error(`Invalid --lines value: ${r[i]}`),process.exit(1)),e.lines=a}else if(o==="--port"||o==="-p"){let a=r[++i],c=parseInt(a,10);isNaN(c)&&(console.error(`Invalid port: ${a}`),process.exit(1)),e.port=c}else if(o==="--replace"||o.startsWith("--replace=")){let a=o.startsWith("--replace=")?o.slice(10):r[++i]??"";try{let c=ha(a);if(e.local)throw new Error(`--replace can only be used once (got '${e.local.name}' and '${c.name}')`);e.local=c}catch(c){console.error(c instanceof Error?c.message:String(c)),process.exit(1)}}else if(o==="--args"||o.startsWith("--args=")){e.hasArgsFlag=!0;let a=o.startsWith("--args=")?o.slice(7):r[++i];a===void 0&&(console.error("Missing value for --args (a JSON array, or - to read it from stdin)"),process.exit(1)),e.argsJson=a}else o.startsWith("-")||(e.subcommand==="call"?n.push(o):e.file=o)}return e.subcommand==="call"&&(n.length<2&&(console.error("Usage: typebulb call <file> <fn> [arg\u2026]"),process.exit(1)),e.file=n[0],e.fn=n[1],e.callArgs=n.slice(2)),e}function ba(){console.log(`
|
|
@@ -1055,13 +1055,13 @@ ${dw}
|
|
|
1055
1055
|
|
|
1056
1056
|
<script type="module" src="${zo}"></script>
|
|
1057
1057
|
</body>
|
|
1058
|
-
</html>`}async function Sd(r){let e=process.cwd(),t=tn(process.pid),s=r.watch?new lv:void 0,n=ue(r.mode),i=await Promise.resolve().then(()=>(wd(),bd));Re(n,Y.join(e,"mirror"));let o=Y.dirname(cv(import.meta.url)),a=Y.join(o,"agents","claude"),c=Y.join(o,"..","agents","claude"),l=Y.join(a,"styles.css"),f=Y.join(a,"index.html"),u=()=>Wf({name:"Claude
|
|
1059
|
-
Claude
|
|
1058
|
+
</html>`}async function Sd(r){let e=process.cwd(),t=tn(process.pid),s=r.watch?new lv:void 0,n=ue(r.mode),i=await Promise.resolve().then(()=>(wd(),bd));Re(n,Y.join(e,"mirror"));let o=Y.dirname(cv(import.meta.url)),a=Y.join(o,"agents","claude"),c=Y.join(o,"..","agents","claude"),l=Y.join(a,"styles.css"),f=Y.join(a,"index.html"),u=()=>Wf({name:"Claude Mirror",styles:vd(l,"utf8"),mountHtml:vd(f,"utf8"),watch:r.watch}),d=await Pr(r.port),p=await hn({getHtml:u,basePath:e,port:d,reloadEmitter:s,getServerExports:()=>i,trusted:!0,staticAssets:{mount:`${Y.posix.dirname(zo)}/`,dir:a}}),g=`http://localhost:${d}`;await rn({pid:process.pid,port:d,url:g,file:"agent:claude",cwd:e,startedAt:Date.now(),trust:!0,agent:"claude"}),console.log(`
|
|
1059
|
+
Claude Mirror`),console.log(` ${g}`),d!==r.port&&console.log(` (port ${r.port} was busy)`),r.watch&&console.log(` Watching for changes...
|
|
1060
1060
|
`);async function h(){await(await import("esbuild")).build({entryPoints:[Y.join(c,"client","index.ts")],bundle:!0,platform:"browser",format:"esm",outfile:Y.join(a,"client.js")});for(let b of["styles.css","index.html"])ov(Y.join(c,b),Y.join(a,b))}let y;if(r.watch&&s){let m=av(c),b=!1;y=gn({dir:m?c:a,onChange:async()=>{if(!b){b=!0;try{m&&await h(),console.log(`Mirror rebuilt. Browser reloading...
|
|
1061
1061
|
`),s.emit("reload")}catch(w){console.error("Mirror rebuild failed:",w instanceof Error?w.message:w)}finally{b=!1}}}})}r.open&&await gt(g);let k=async()=>{console.log(`
|
|
1062
1062
|
Shutting down...`),p.close(),y?.(),t(),await Ar(process.pid),process.exit(0)};process.on("SIGINT",k),process.on("SIGTERM",k)}import*as kd from"path";import{EventEmitter as uv}from"events";async function xd(r,e,t,s,n){let i=ue(t),o=!1,a=async()=>{let{bulb:c,config:l}=await se(r);o||(Re(i,r,c.server),o=!0),await wr(c.server,n,s,l.dependencies)};if(console.log(`Running ${kd.basename(r)}...`),await a(),e){console.log(`Watching for changes...
|
|
1063
1063
|
`);let c=new uv;c.on("reload",async()=>{try{console.log("Re-running..."),await a()}catch(l){console.error("Error:",l)}}),mn({bulbPath:r,emitter:c})}}import{Console as fv}from"node:console";async function Ed(r,e,t,s,n){yv();let i=ue(t),{bulb:o,config:a}=await se(r);o.server||Sn("This bulb has no **server.ts** block; nothing to call."),Re(i,r,o.server);let c;try{c=await wr(o.server,n,s,a.dependencies)}catch(p){Sn(p instanceof Error?p.message:String(p))}let l=dn(c,e.fn);if(!l){let p=[...Object.keys(c).filter(g=>typeof c[g]=="function"),...Object.keys(Yo)];Sn(`Function '${e.fn}' not found. Available: ${p.length?p.join(", "):"(none)"}.`)}let f=await dv(e),u;try{u=await l(...f)}catch(p){Sn(p instanceof Error?p.stack??p.message:String(p))}let d=mv(u);d!==void 0&&await bv(d+`
|
|
1064
1064
|
`),process.exit(0)}async function dv(r){if(r.hasArgsFlag){let e=r.argsJson??"";return e==="-"&&(e=await wv()),hv(e)}return pv(r.positional)}function pv(r){return r.map(e=>{try{return JSON.parse(e)}catch{return e}})}function hv(r){let e;try{e=JSON.parse(r)}catch(t){throw new Error(`--args must be a JSON array: ${t instanceof Error?t.message:String(t)}`)}if(!Array.isArray(e))throw new Error(`--args must be a JSON array, got ${e===null?"null":typeof e}`);return e}function mv(r){if(r!==void 0)return JSON.stringify(r,gv,2)}function gv(r,e){return typeof e=="bigint"?e.toString():e}function Sn(r){process.stderr.write(r+`
|
|
1065
|
-
`),process.exit(1)}function yv(){let r=new fv(process.stderr,process.stderr);console.log=r.log.bind(r),console.info=r.info.bind(r),console.debug=r.debug.bind(r),console.dir=r.dir.bind(r)}function bv(r){return new Promise((e,t)=>{process.stdout.write(r,s=>s?t(s):e())})}async function wv(){let r=[];for await(let e of process.stdin)r.push(e);return Buffer.concat(r).toString("utf-8")}var Ad="0.13.
|
|
1065
|
+
`),process.exit(1)}function yv(){let r=new fv(process.stderr,process.stderr);console.log=r.log.bind(r),console.info=r.info.bind(r),console.debug=r.debug.bind(r),console.dir=r.dir.bind(r)}function bv(r){return new Promise((e,t)=>{process.stdout.write(r,s=>s?t(s):e())})}async function wv(){let r=[];for await(let e of process.stdin)r.push(e);return Buffer.concat(r).toString("utf-8")}var Ad="0.13.3";function Td(r,e){r||(console.error(`This bulb runs server-side Node code (server.ts), which --trust must authorize:
|
|
1066
1066
|
${e}`),process.exit(1))}async function vv(){let r=ya(process.argv.slice(2));if(r.version&&(console.log(`typebulb ${Ad}`),process.exit(0)),r.help&&(ba(),process.exit(0)),r.subcommand==="logs"){await If(r.file||void 0,{follow:r.follow,lines:r.lines});return}if(r.subcommand==="stop"){r.stopScope?await Lf(r.stopScope):await _f(r.file||void 0);return}if(r.subcommand==="skill"){await Of(Ad);return}if(r.subcommand==="models"){await Tf(r.mode);return}if(r.subcommand==="agent"){if(!r.agentTarget){await kf();return}tf(r.agentTarget)||(console.error(`Unknown agent '${r.agentTarget}'. Known: ${$o().join(", ")}.`),process.exit(1));let l=await Fo(process.cwd(),r.agentTarget);if(l){console.log(`Mirror '${r.agentTarget}' is already running for this project:
|
|
1067
1067
|
${l.url}`),r.open&&await gt(l.url);return}await Sd(r);return}if(r.subcommand==="trust"||r.subcommand==="untrust"){await df(r.file||void 0,r.subcommand==="trust");return}let e;if(!r.file||r.file==="."){let l=await Qu(process.cwd());l||(console.error("No .bulb.md file found in current directory"),process.exit(1)),e=l}else e=ge.resolve(r.file);await Pd.access(e).then(()=>!0,()=>!1)||($o().includes(r.file)&&(console.error(`To open the ${r.file} agent mirror, run: npx typebulb agent:${r.file}`),process.exit(1)),console.error(`File not found: ${e}`),process.exit(1)),e.endsWith(".bulb.md")||(console.error("File must have .bulb.md extension"),process.exit(1));let s=r.file&&r.file!=="."?r.file:ge.relative(process.cwd(),e)||ge.basename(e),n=`npx typebulb --trust ${s.includes(" ")?`"${s}"`:s}`;if(r.subcommand==="predict"){await ff(e,n);return}let i=!r.noTrust&&Je(e);i&&!r.trust&&console.log("trust: granted from memory (run `typebulb untrust` to revoke)"),r.trust=r.noTrust?!1:r.trust||i;let o;try{o=await se(e)}catch{}let a;if(r.local){o&&!(r.local.name in(o.config.dependencies??{}))&&(console.error(`--replace: '${r.local.name}' is not a dependency in this bulb's config.json; nothing to replace.`),process.exit(1)),o&&r.subcommand!=="call"&&(!o.bulb.code||r.server)&&console.warn("warning: --replace has no effect in server mode (the override is client-only).");try{a=await ma(r.local)}catch(l){console.error(l instanceof Error?l.message:String(l)),process.exit(1)}console.log(`replace: ${a.name} \u2192 ${ge.relative(process.cwd(),a.dir)||"."}`)}if(r.subcommand==="check"){await uf(e,a);return}let c=ge.dirname(e);if(r.subcommand==="call"){Td(r.trust,n),await Ed(e,{fn:r.fn,positional:r.callArgs,argsJson:r.argsJson,hasArgsFlag:r.hasArgsFlag},r.mode,a,c);return}if(o&&o.bulb.server&&(!o.bulb.code||r.server)){Td(r.trust,n),await xd(e,r.watch,r.mode,a,c);return}await Vf(e,r,n,a,c)}vv().catch(r=>{console.error("Error:",r.message),process.exit(1)});
|
package/package.json
CHANGED